@elyx-code/project-logic-tree 0.0.6076 → 0.0.6077

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,4 +1,4 @@
1
- (function(c,n){typeof exports=="object"&&typeof module<"u"?n(exports):typeof define=="function"&&define.amd?define(["exports"],n):(c=typeof globalThis<"u"?globalThis:c||self,n(c["@elyx-code/project-logic-tree"]={}))})(this,function(c){"use strict";var q7=Object.defineProperty;var J7=(c,n,L)=>n in c?q7(c,n,{enumerable:!0,configurable:!0,writable:!0,value:L}):c[n]=L;var d=(c,n,L)=>(J7(c,typeof n!="symbol"?n+"":n,L),L);var n=(r=>(r.CustomEntity="custom-entity",r.BuiltInBaseEntity="built-in-base-entity",r.Project="project",r.InstalledProject="installed-project",r.GlobalEvent="global-event",r.DataType="data-type",r.FunctionCall="function-call",r.FunctionDeclaration="function-declaration",r.ActionDescriptor="action-descriptor",r.ValueDescriptor="value-descriptor",r.ArgumentDeclaration="argument-declaration",r.InputMap="input-map",r.ReturnStatement="return-statement",r.BreakStatement="break-statement",r.ContinueStatement="continue-statement",r.ReturnDeclaration="return-declaration",r.OutputMap="output-map",r.PrimitiveEntity="primitive-entity",r.PrimitiveValue="primitive-value",r.Property="property",r.Operation="operation",r.Condition="condition",r.VariableDeclaration="variable-declaration",r.VariableInstance="variable-instance",r.Search="search",r.Loop="loop",r.InternalCall="internal-call",r.GenericReference="generic-reference",r))(n||{}),L=(r=>(r.HTTP_ENDPOINT="BUILT_IN_HTTP_ENDPOINT_ENTITY",r.RELATIONAL_DATABASE="BUILT_IN_RELATIONAL_DATABASE_ENTITY",r.PERSISTED_ENTITY="BUILT_IN_PERSISTED_ENTITY_ENTITY",r.CRON_JOB="BUILT_IN_CRON_JOB_ENTITY",r.EXECUTION="BUILT_IN_EXECUTION_ENTITY",r.KEY_VALUE_PARAM="BUILT_IN_KEY_VALUE_PARAM_ENTITY",r))(L||{}),We=(r=>(r.CurrentDateAndTime="current-date-and-time",r.Unique="unique",r.Random="random",r))(We||{}),P=(r=>(r.EntityTemplate="entity-template",r.ActionDescriptor="action-descriptor",r.String="string",r.Number="number",r.Boolean="boolean",r.Null="null",r.Enum="enum",r.JSON="json",r.Date="date",r.UUID="uuid",r.File="file",r))(P||{}),me=(r=>(r.Addition="addition",r.Subtraction="subtraction",r.Multiplication="multiplication",r.Division="division",r.Remainder="remainder",r.Exponentiation="exponentiation",r))(me||{}),K=(r=>(r.Join="string-join",r.Split="string-split",r.DeleteLast="string-delete-last",r.DeleteFirst="string-delete-first",r.DeleteIndex="string-delete-index",r.AddIndex="string-add-index",r.ReplaceFirst="string-replace-first",r.ReplaceLast="string-replace-last",r.ReplaceIndex="string-replace-index",r.ReplaceSingleMatch="string-replace-single-match",r.ReplaceAllMatches="string-replace-all-matches",r.GetIndex="string-get-index",r.GetFirst="string-get-first",r.GetLast="string-get-last",r.Append="string-append",r.Prepend="string-prepend",r))(K||{}),W=(r=>(r.Join="list-join",r.Split="list-split",r.DeleteLast="list-delete-last",r.DeleteFirst="list-delete-first",r.DeleteIndex="list-delete-index",r.AddIndex="list-add-index",r.ReplaceFirst="list-replace-first",r.ReplaceLast="list-replace-last",r.ReplaceIndex="list-replace-index",r.ReplaceSingleMatch="list-replace-single-match",r.ReplaceAllMatches="list-replace-all-matches",r.GetIndex="list-get-index",r.GetFirst="list-get-first",r.GetLast="list-get-last",r.Append="list-append",r.Prepend="list-prepend",r))(W||{}),Me=(r=>(r.Parallel="parallel",r.Sequential="sequential",r.Wait="wait",r))(Me||{}),le=(r=>(r.CreateNewInstance="create-new-instance",r.Validate="validate",r))(le||{}),nt=(r=>(r.HttpRequest="base-http-request",r))(nt||{}),Ge=(r=>(r.Equal="equal",r.NotEqual="not-equal",r.And="and",r.Or="or",r.LessThan="less-than",r.MoreThan="more-than",r.LessThanOrEqual="less-than-or-equal",r.MoreThanOrEqual="more-than-or-equal",r))(Ge||{}),Mt=(r=>(r.Empty="empty",r.NotEmpty="not-empty",r))(Mt||{}),$=(r=>(r.ManualFlow="manual-flow-loop",r.Counted="counted-loop",r.List="list-loop",r.ObjectKeys="object-keys-loop",r.ObjectValues="object-values-loop",r.String="string-loop",r))($||{}),O=(r=>(r.FixedArguments="fixed-arguments",r.FixedReturns="fixed-returns",r.ReturnedError="returned-error",r.OngoingProcessExecution="ongoing-process-execution",r.DynamicArgument="dynamic-argument-types",r.DynamicReturn="dynamic-return-types",r))(O||{}),Ke=(r=>(r.OrDataTypeGroup="or-data-type-group",r.AndDataTypeGroup="and-data-type-group",r))(Ke||{}),dn=(r=>(r.PROJECT_PUBLICATION_COMPLETED="GLOBAL_EVENT_PROJECT_PUBLICATION_COMPLETED",r))(dn||{}),Ct=(r=>(r.DeletePersistedEntity="base-delete-persisted-entity",r.SoftDeletePersistedEntity="base-soft-delete-persisted-entity",r.AbortExecution="base-abort-execution",r))(Ct||{}),Wr=(r=>(r.Error="error",r.Task="task",r.Return="return",r))(Wr||{});const Bn=[n.VariableDeclaration,n.VariableInstance,n.InputMap,n.ReturnDeclaration],xe=[n.VariableDeclaration,n.VariableInstance,n.ArgumentDeclaration,n.OutputMap],xu=[...Bn,...xe],$e=[n.VariableDeclaration,n.VariableInstance],Hr=[n.GlobalEvent],je=[n.Operation,n.FunctionCall,n.Condition,n.Search,n.VariableDeclaration,n.VariableInstance,n.InternalCall,n.Loop],Zo=[n.Operation,n.FunctionCall,n.Condition,n.Search,n.VariableDeclaration,n.VariableInstance,n.Loop],Fe=[n.FunctionDeclaration,...Hr],wn=[...je,n.ReturnStatement,n.BreakStatement,n.ContinueStatement],Ko=[...Zo,n.ReturnStatement,n.BreakStatement,n.ContinueStatement],un=[...je,...Fe],ju=[...Zo,...Fe],LA=[...wn,...Fe],GA=[...Ko,...Fe],ut=[...Fe,n.Loop],Ue=[n.ReturnStatement,n.BreakStatement,n.ContinueStatement],$A=[n.CustomEntity,n.BuiltInBaseEntity,n.Project,n.InstalledProject,n.GlobalEvent,n.DataType,n.FunctionCall,n.FunctionDeclaration,n.ActionDescriptor,n.ValueDescriptor,n.ArgumentDeclaration,n.InputMap,n.ReturnStatement,n.BreakStatement,n.ContinueStatement,n.ReturnDeclaration,n.OutputMap,n.PrimitiveEntity,n.PrimitiveValue,n.Property,n.Operation,n.Condition,n.VariableDeclaration,n.VariableInstance,n.Search,n.Loop,n.InternalCall],Xo=[n.CustomEntity,n.GlobalEvent,n.FunctionDeclaration,n.FunctionCall,n.VariableDeclaration,n.VariableInstance,n.Operation,n.Condition,n.ReturnStatement,n.BreakStatement,n.ContinueStatement,n.InstalledProject,n.Loop,n.Search],ku=[n.CustomEntity,n.FunctionDeclaration,n.ArgumentDeclaration,n.ReturnDeclaration,n.Property,n.VariableDeclaration,n.Search,n.Project,n.InstalledProject,n.ActionDescriptor,n.ValueDescriptor],Yr=[n.BuiltInBaseEntity,n.PrimitiveEntity],FA=[n.CustomEntity,n.FunctionDeclaration,n.ArgumentDeclaration,n.ReturnDeclaration,n.Property,n.VariableDeclaration,n.GlobalEvent,n.Search,n.Project,n.InstalledProject,n.ActionDescriptor,n.ValueDescriptor,n.InputMap,n.OutputMap,n.FunctionCall,n.Operation,n.Condition,n.ReturnStatement,n.BreakStatement,n.ContinueStatement,n.VariableInstance,n.PrimitiveValue,n.InternalCall];var Qo=(r=>(r.ActionOngoingProcessOutputValue="action-ongoing-process-output-value-descriptor-id",r))(Qo||{});const B={[n.PrimitiveEntity]:{[P.String]:{id:"8b5fbe15-4c2b-48c0-9fd8-e5efbe3978dc",properties:{}},[P.Boolean]:{id:"f596545d-1565-4faa-9969-d95fa5edfea4",properties:{}},[P.Number]:{id:"ecb84c29-6153-4b82-86a5-fce2b5f92002",properties:{}},[P.JSON]:{id:"b6f3c3c4-9c3d-4f9d-9e9e-1c0f6a3c8c6b",properties:{}},[P.Enum]:{id:"9542b8b4-2642-4eee-9db9-def7963a17a0",properties:{options:{id:"00ccfcae-2104-45ef-bf6c-50ddccd74286",dataType:{id:"7dd59b70-f97b-43a7-a051-fde1842ce5d6",defaultValue:{id:"enum-options-property-data-type-default-value-id"}}}}},[P.UUID]:{id:"4a6234aa-c0f6-4731-b4dd-750388029226",properties:{}},[P.Date]:{id:"dc58f38b-d574-4956-aac6-32ce9529b937",properties:{}},[P.Null]:{id:"b6f3c3c4-9c3d-4f9d-9e9e-1c0f6a3c8c6b",properties:{}}},[n.ValueDescriptor]:{"action-ongoing-process-output-value-descriptor-id":{id:"action-ongoing-process-output-value-descriptor-id",dataType:{id:"process-output-value-data-type-id"}}},[n.BuiltInBaseEntity]:{[L.KEY_VALUE_PARAM]:{id:L.KEY_VALUE_PARAM},[L.HTTP_ENDPOINT]:{id:L.HTTP_ENDPOINT,properties:{method:{id:"http-endpoint-built-in-method-property-id"},path:{id:"http-endpoint-built-in-path-property-id"},cors:{id:"http-endpoint-built-in-cors-property-id"}}},[L.PERSISTED_ENTITY]:{id:L.PERSISTED_ENTITY,properties:{database:{id:"persisted-built-in-base-entity-database-property-id"},identifier:{id:"persisted-built-in-base-entity-identifier-property-id"}}},[L.RELATIONAL_DATABASE]:{id:L.RELATIONAL_DATABASE,properties:{identifier:{id:"relational-database-built-in-base-entity-identifier-property-id"},username:{id:"relational-database-built-in-base-entity-username-property-id"},password:{id:"relational-database-built-in-base-entity-password-property-id"},minSize:{id:"relational-database-built-in-base-entity-min-size-property-id"},default:{id:"relational-database-built-in-base-entity-default-property-id"},autoscaling:{id:"relational-database-built-in-base-entity-autoscaling-property-id"}}},[L.CRON_JOB]:{id:L.CRON_JOB,properties:{expression:{id:"cron-job-built-in-base-entity-expression-property-id"}}}},[n.Operation]:{[K.Join]:{id:K.Join,inputs:{separator:{id:"join-strings-separator-input-id"},first:{id:"join-strings-first-string-input-id"},second:{id:"join-strings-second-string-input-id"},dynamicString:{id:"join-strings-dynamic-string-input-id"}},outputs:{result:{id:"join-strings-result-string-return-delaration-id"},error:{id:"join-strings-error-return-delaration-id"}}},[K.Split]:{id:K.Split,inputs:{stringValue:{id:"split-string-string-input-id"},indexLocation:{id:"split-string-index-input-id"}},outputs:{firstPartResult:{id:"split-string-first-part-result-string-return-delaration-id"},secondPartResult:{id:"split-string-second-part-result-string-return-delaration-id"},error:{id:"split-string-error-return-delaration-id"}}},[me.Addition]:{id:me.Addition,inputs:{firstSummand:{id:"number-addition-first-summand-number-input-id"},secondSummand:{id:"number-addition-second-summand-number-input-id"},dynamicSummand:{id:"number-addition-dynamic-summand-number-input-id"}},outputs:{result:{id:"number-addition-result-number-return-delaration-id"},error:{id:"number-addition-error-return-delaration-id"}}},[me.Subtraction]:{id:me.Subtraction,inputs:{minuend:{id:"number-subtraction-minuend-number-input-id"},subtrahend:{id:"number-subtraction-subtrahend-number-input-id"},dynamicSubtrahend:{id:"number-subtraction-dynamic-subtrahend-number-input-id"}},outputs:{result:{id:"number-subtraction-result-number-return-delaration-id"},error:{id:"number-subtraction-error-return-delaration-id"}}},[nt.HttpRequest]:{id:nt.HttpRequest,inputs:{url:{id:"http-request-url-input-id"},query:{id:"http-request-query-input-id"},method:{id:"http-request-method-input-id"},headers:{id:"http-request-headers-input-id"},body:{id:"http-request-body-string-input-id"}},outputs:{code:{id:"http-response-code-return-delaration-id"},body:{id:"http-response-body-return-delaration-id"},headers:{id:"http-response-headers-return-delaration-id"},error:{id:"http-request-error-return-delaration-id"}}},[le.Validate]:{id:le.Validate,inputs:{entityToMatch:{id:"validate-data-entity-to-match-input-id"},dataToValidate:{id:"validate-data-data-to-validate-input-id"}},outputs:{outputEntity:{id:"validate-data-output-entity-return-delaration-id"},error:{id:"validate-data-error-return-delaration-id"}}}},[n.Loop]:{[$.List]:{id:$.List,inputs:{list:{id:"iterate-over-list-loop-list-input-id"}},outputs:{results:{id:"iterate-over-list-loop-output-id"}},body:{id:"iterate-over-list-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-list-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-list-loop-current-value-input-id"}}}},[$.String]:{id:$.String,inputs:{string:{id:"iterate-over-string-loop-string-input-id"}},outputs:{results:{id:"iterate-over-string-loop-output-id"}},body:{id:"iterate-over-string-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-string-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-string-loop-current-value-input-id"}}}},[$.ObjectKeys]:{id:$.ObjectKeys,inputs:{object:{id:"iterate-over-object-keys-loop-object-input-id"}},outputs:{results:{id:"iterate-over-object-keys-loop-output-id"}},body:{id:"iterate-over-object-keys-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-object-keys-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-object-keys-loop-current-value-input-id"}}}},[$.ObjectValues]:{id:$.ObjectValues,inputs:{object:{id:"iterate-over-object-values-loop-object-input-id"}},outputs:{results:{id:"iterate-over-object-values-loop-output-id"}},body:{id:"iterate-over-object-values-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-object-values-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-object-values-loop-current-value-input-id"}}}},[$.ManualFlow]:{id:$.ManualFlow,inputs:{},outputs:{results:{id:"manual-flow-loop-output-id"}},body:{id:"manual-flow-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-manual-flow-loop-iteration-number-input-id"}}}},[$.Counted]:{id:$.Counted,inputs:{number:{id:"counted-loop-number-input-id"}},outputs:{results:{id:"counted-loop-output-id"}},body:{id:"counted-loop-body-descriptor-id",inputs:{iterationNumber:{id:"counted-loop-iteration-number-input-id"}}}}},[n.Condition]:{[Ge.MoreThanOrEqual]:{id:Ge.MoreThanOrEqual,inputs:{leftHand:{id:"condition-more-than-or-equal-left-hand-input-id",dataType:{id:"condition-more-than-or-equal-left-hand-data-type-id"}},rightHand:{id:"condition-more-than-or-equal-right-hand-input-id",dataType:{id:"condition-more-than-or-equal-right-hand-data-type-id"}}}},[Mt.NotEmpty]:{id:Mt.NotEmpty,inputs:{leftHand:{id:"condition-not-empty-input-id"}}}},[n.GlobalEvent]:{[dn.PROJECT_PUBLICATION_COMPLETED]:{id:dn.PROJECT_PUBLICATION_COMPLETED}}},qt=B[n.PrimitiveEntity],x={type:n.PrimitiveEntity,id:qt.string.id,description:"A string of characters.",version:1,name:P.String,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},_n={type:n.PrimitiveEntity,id:qt.boolean.id,description:"A 'true' or 'false' value.",version:1,name:P.Boolean,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},X={type:n.PrimitiveEntity,id:qt.number.id,description:"A number value.",version:1,name:P.Number,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},UA={type:n.PrimitiveEntity,id:qt.null.id,description:"An explicitly empty value.",version:1,name:P.Null,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},Xe={type:n.PrimitiveEntity,id:"730e8ea9-8498-439a-9001-b07de55aaa7d",description:"A complex data structure with any combination of properties with names and values.",version:1,name:P.JSON,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},qu={id:"c2f52f01-8f2e-490e-8083-72289c8189c1",type:n.GenericReference,entityId:"7dd59b70-f97b-43a7-a051-fde1842ce5d6",entityType:n.DataType},Ju={id:"4e803941-2e6a-4227-b803-b8877c0d7fee",type:n.GenericReference,entityId:"00ccfcae-2104-45ef-bf6c-50ddccd74286",entityType:n.Property},Wu={like:!1,inferred:!1,id:qt.enum.properties.options.dataType.id,version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:{id:qt.enum.properties.options.dataType.defaultValue.id,type:n.PrimitiveValue,version:1,name:P.JSON,autogeneration:null,value:[],valueAsType:null,parent:qu},parent:Ju},Hu={id:"a2983c4c-0286-4ef1-8b5c-5a52904d3200",type:n.GenericReference,entityId:"9542b8b4-2642-4eee-9db9-def7963a17a0",entityType:n.PrimitiveEntity},Yu={hidden:!1,required:!0,id:qt.enum.properties.options.id,name:"Options",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:Wu,description:"Options for the enum. Each option is a text value.",parent:Hu},Nn={type:n.PrimitiveEntity,id:qt.enum.id,description:"A set of text options to choose from.",version:1,name:P.Enum,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[Yu],methods:[]},pn={type:n.PrimitiveEntity,id:qt.date.id,description:"A date and time value.",version:1,name:P.Date,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},qa={type:n.PrimitiveEntity,id:qt.uuid.id,description:"A unique identifier in the form of a 36-character string.",version:1,name:P.UUID,static:!1,abstract:!1,abstractMethods:[],extends:[x],properties:[],methods:[]},el={type:n.PrimitiveEntity,id:qt.json.id,description:"A complex data structure with any combination of properties with names and values.",version:1,name:P.JSON,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},yn=B[n.Operation][me.Addition],zu={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityId:yn.inputs.firstSummand.id,entityType:n.ValueDescriptor},Zu={like:!1,inferred:!1,id:"number-addition-first-number-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:zu},Ku={type:n.GenericReference,id:"9f486db2-a983-4293-9eef-81d4fc8d2d3e",entityId:yn.inputs.secondSummand.id,entityType:n.ValueDescriptor},Xu={like:!1,inferred:!1,id:"1d4abe83-3e87-4f74-99be-c1fd8c2f8d2d",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Ku},Qu={type:n.GenericReference,id:"da5e9fe9-f18a-49e3-98e5-c1bf7b9b3153",entityId:yn.outputs.result.id,entityType:n.ValueDescriptor},ep={like:!1,inferred:!1,id:"b761acec-0755-4582-a68b-76267038bbe1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Qu},tp={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityId:me.Addition,entityType:n.ActionDescriptor},tl={id:yn.inputs.firstSummand.id,type:n.ValueDescriptor,version:1,name:"Summand",description:"The first number to add",dataType:Zu,required:!0,parentRelationType:O.FixedArguments,index:0,parent:tp},np={type:n.GenericReference,id:"c5015128-4a65-462c-9da0-1c86e83ef897",entityId:me.Addition,entityType:n.ActionDescriptor},nl={id:yn.inputs.secondSummand.id,type:n.ValueDescriptor,description:"The second number to add",version:1,name:"Summand",dataType:Xu,required:!0,parentRelationType:O.FixedArguments,index:1,parent:np},rl={type:n.GenericReference,id:"caac2bc7-c23c-4f01-9581-a515c2e4637f",entityId:me.Addition,entityType:n.ActionDescriptor},il={parentRelationType:O.FixedReturns,id:yn.outputs.result.id,type:n.ValueDescriptor,description:"The result number of the addition",version:1,name:"Result",dataType:ep,required:!0,index:0,parent:rl},rp={type:n.GenericReference,id:"number-addition-operation-error-parent-ref",entityId:me.Addition,entityType:n.ActionDescriptor},ip={parentRelationType:O.FixedReturns,id:yn.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:rp},ap={type:n.GenericReference,id:"number-addition-operation-dynamic-summand-argument-type-parent-ref",entityId:yn.inputs.dynamicSummand.id,entityType:n.ValueDescriptor},sp={like:!1,inferred:!1,id:"number-addition-operation-dynamic-summand-argument-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:ap},op={parentRelationType:O.DynamicArgument,id:yn.inputs.dynamicSummand.id,type:n.ValueDescriptor,description:"A number to add",version:1,name:"Summand",dataType:sp,required:!0,index:2,parent:rl},Ja={id:me.Addition,type:n.ActionDescriptor,description:"Sum numbers",version:1,name:me.Addition,inputs:[tl,nl,op],error:ip,outputs:[il],parent:null},hn=B[n.Operation][me.Subtraction],lp={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityId:hn.inputs.minuend.id,entityType:n.ValueDescriptor},cp={like:!1,inferred:!1,id:"number-subtraction-first-number-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:lp},dp={type:n.GenericReference,id:"9f486db2-a983-4293-9eef-81d4fc8d2d3e",entityId:hn.inputs.subtrahend.id,entityType:n.ValueDescriptor},up={like:!1,inferred:!1,id:"1d4abe83-3e87-4f74-99be-c1fd8c2f8d2d",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:dp},pp={type:n.GenericReference,id:"da5e9fe9-f18a-49e3-98e5-c1bf7b9b3153",entityId:hn.outputs.result.id,entityType:n.ValueDescriptor},yp={like:!1,inferred:!1,id:"b761acec-0755-4582-a68b-76267038bbe1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:pp},al={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityId:me.Subtraction,entityType:n.ActionDescriptor},hp={id:hn.inputs.minuend.id,type:n.ValueDescriptor,version:1,name:"Minuend",description:"Base number to substract from",dataType:cp,required:!0,parentRelationType:O.FixedArguments,index:0,parent:al},fp={type:n.GenericReference,id:"c5015128-4a65-462c-9da0-1c86e83ef897",entityId:me.Subtraction,entityType:n.ActionDescriptor},mp={id:hn.inputs.subtrahend.id,type:n.ValueDescriptor,description:"The second number to substract",version:1,name:"Subtrahend",dataType:up,required:!0,parentRelationType:O.FixedArguments,index:1,parent:fp},Tp={type:n.GenericReference,id:"caac2bc7-c23c-4f01-9581-a515c2e4637f",entityId:me.Subtraction,entityType:n.ActionDescriptor},Ep={parentRelationType:O.FixedReturns,id:hn.outputs.result.id,type:n.ValueDescriptor,description:"The result number of the subtraction",version:1,name:"Result",dataType:yp,required:!0,index:0,parent:Tp},bp={type:n.GenericReference,id:"number-subtraction-operation-error-parent-ref",entityId:me.Subtraction,entityType:n.ActionDescriptor},Rp={parentRelationType:O.FixedReturns,id:hn.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:bp},vp={type:n.GenericReference,id:"number-subtraction-operation-dynamic-subtrahend-argument-type-parent-ref",entityId:hn.inputs.dynamicSubtrahend.id,entityType:n.ValueDescriptor},gp={like:!1,inferred:!1,id:"number-subtraction-operation-dynamic-subtrahend-argument-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:vp},Ip={id:hn.inputs.dynamicSubtrahend.id,type:n.ValueDescriptor,version:1,name:"Subtrahend",description:"A number to substract",dataType:gp,required:!0,parentRelationType:O.DynamicArgument,index:2,parent:al},sl={id:me.Subtraction,type:n.ActionDescriptor,description:"Substract numbers",version:1,name:me.Subtraction,inputs:[hp,mp,Ip],error:Rp,outputs:[Ep],parent:null},Dp={[me.Addition]:Ja,[me.Subtraction]:sl},Jt=B[n.Operation][K.Join],Pp={type:n.GenericReference,id:"join-strings-first-string-argument-declaration",entityId:Jt.inputs.first.id,entityType:n.ValueDescriptor},Ap={like:!1,inferred:!1,id:"join-strings-first-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Pp},Op={type:n.GenericReference,id:"join-strings-second-string-argument-declaration",entityId:Jt.inputs.second.id,entityType:n.ValueDescriptor},Sp={like:!1,inferred:!1,id:"join-strings-second-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Op},Cp={type:n.GenericReference,id:"join-strings-result-string-return-delaration",entityId:Jt.outputs.result.id,entityType:n.ValueDescriptor},Bp={like:!1,inferred:!1,id:"join-strings-result-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Cp},wp={type:n.GenericReference,id:"join-strings-operation-first-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Wa={id:Jt.inputs.first.id,type:n.ValueDescriptor,version:1,name:"Text",description:"The first text to join to the second one. Its value will be at the beginning of the resulting text.",dataType:Ap,parentRelationType:O.FixedArguments,required:!0,index:1,parent:wp},_p={type:n.GenericReference,id:"join-strings-first-string-argument-declaration",entityId:Jt.inputs.first.id,entityType:n.ValueDescriptor},Np={type:n.GenericReference,id:"join-strings-separator-string-data-type-default-value-parent-ref",entityId:"join-strings-separator-string-data-type-id",entityType:n.DataType},Mp={type:n.PrimitiveValue,id:"join-strings-separator-string-data-type-default-value-id",version:1,name:P.String,value:"",valueAsType:null,autogeneration:null,parent:Np},Vp={like:!1,inferred:!1,id:"join-strings-separator-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:Mp,constant:!1,parent:_p},Lp={type:n.GenericReference,id:"join-strings-operation-separator-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Gp={id:Jt.inputs.separator.id,type:n.ValueDescriptor,version:1,name:"Separator",description:"The text value that will be inserted between each of the values that are joined.",dataType:Vp,parentRelationType:O.FixedArguments,required:!1,index:0,parent:Lp},$p={type:n.GenericReference,id:"join-strings-operation-second-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Ha={id:Jt.inputs.second.id,type:n.ValueDescriptor,version:1,name:"Text",description:"The second text to join to the first one. Its value will be at the end of the resulting text.",dataType:Sp,parentRelationType:O.FixedArguments,required:!0,index:2,parent:$p},Fp={type:n.GenericReference,id:"join-strings-operation-result-string-return-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},_i={parentRelationType:O.FixedReturns,id:Jt.outputs.result.id,type:n.ValueDescriptor,version:1,name:"Result",description:"The resulting text value.",dataType:Bp,required:!0,index:0,parent:Fp},Up={type:n.GenericReference,id:"join-strings-operation-error-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},xp={parentRelationType:O.FixedReturns,id:Jt.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Up},jp={type:n.GenericReference,id:"join-strings-dynamic-string-argument-declaration",entityId:Jt.inputs.dynamicString.id,entityType:n.ValueDescriptor},kp={like:!1,inferred:!1,id:"join-strings-dynamic-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:jp},qp={type:n.GenericReference,id:"join-strings-operation-dynamic-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Jp={id:Jt.inputs.dynamicString.id,type:n.ValueDescriptor,version:1,name:"Text",description:"Text to join to the previous ones. Its value will be at the end of the resulting text.",dataType:kp,parentRelationType:O.DynamicArgument,required:!0,index:3,parent:qp},Ni={id:K.Join,type:n.ActionDescriptor,version:1,name:K.Join,description:"Join text values together, to form a single resulting text value.",inputs:[Gp,Wa,Ha,Jp],outputs:[_i],error:xp,parent:null},fn=B[n.Operation][K.Split],Wp={type:n.GenericReference,id:"split-string-string-argument-declaration",entityId:fn.inputs.stringValue.id,entityType:n.ValueDescriptor},Hp={like:!1,inferred:!1,id:"split-string-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Wp},Yp={type:n.GenericReference,id:"split-string-index-argument-declaration",entityId:fn.inputs.indexLocation.id,entityType:n.ValueDescriptor},zp={like:!1,inferred:!1,id:"split-string-index-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Yp},Zp={type:n.GenericReference,id:"split-string-first-part-result-string-return-delaration",entityId:fn.outputs.firstPartResult.id,entityType:n.ValueDescriptor},Kp={like:!1,inferred:!1,id:"split-string-first-part-result-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Zp},Xp={type:n.GenericReference,id:"split-string-second-part-result-string-return-delaration",entityId:fn.outputs.secondPartResult.id,entityType:n.ValueDescriptor},Qp={like:!1,inferred:!1,id:"split-string-second-part-result-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Xp},ey={type:n.GenericReference,id:"split-string-operation-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},ty={id:fn.inputs.stringValue.id,type:n.ValueDescriptor,version:1,name:"Text value",description:"The text value that will be split into two at the given index location.",dataType:Hp,parentRelationType:O.FixedArguments,required:!0,index:0,parent:ey},ny={type:n.GenericReference,id:"split-string-operation-index-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},ry={id:fn.inputs.indexLocation.id,type:n.ValueDescriptor,version:1,name:"Index location",description:"The index location where the text will be split into two. The text at this index will be the beginning of the second text.",dataType:zp,parentRelationType:O.FixedArguments,required:!0,index:1,parent:ny},iy={type:n.GenericReference,id:"split-string-operation-second-part-result-string-return-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},xA={parentRelationType:O.FixedReturns,id:fn.outputs.secondPartResult.id,type:n.ValueDescriptor,version:1,name:"Second part",description:"The secont part of the resulting text value.",dataType:Qp,required:!0,index:1,parent:iy},ay={type:n.GenericReference,id:"split-string-operation-first-part-result-string-return-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},sy={parentRelationType:O.FixedReturns,id:fn.outputs.firstPartResult.id,type:n.ValueDescriptor,version:1,name:"First part",description:"The first part of the resulting text value.",dataType:Kp,required:!0,index:0,parent:ay},oy={type:n.GenericReference,id:"split-string-operation-error-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},ly={parentRelationType:O.FixedReturns,id:fn.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:oy},ol={id:K.Split,type:n.ActionDescriptor,version:1,name:K.Split,description:"Split a text into two, at the given index location.",inputs:[ty,ry],outputs:[sy],error:ly,parent:null},cy={[K.Join]:Ni,[K.Split]:ol};var dy=(r=>(r.FirstInputList="join-list-first-list-argument-declaration",r.SecondInputList="join-list-second-list-argument-declaration",r))(dy||{}),uy=(r=>(r.ResultList="join-list-result-list-return-delaration",r.Error="join-list-error-return-delaration",r))(uy||{});const py={type:n.GenericReference,id:"join-list-operation-first-list-argument-ref",entityId:"join-list-first-list-argument-declaration",entityType:n.ValueDescriptor},yy={like:!1,inferred:!1,id:"join-list-first-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:py},hy={type:n.GenericReference,id:"join-list-operation-second-list-argument-ref",entityId:"join-list-second-list-argument-declaration",entityType:n.ValueDescriptor},fy={like:!1,inferred:!1,id:"join-list-second-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:hy},my={type:n.GenericReference,id:"join-list-operation-result-list-return-ref",entityId:"join-list-result-list-return-delaration",entityType:n.ValueDescriptor},Ty={like:!1,inferred:!1,id:"join-list-result-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:my},Ey={type:n.GenericReference,id:"join-list-operation-first-list-argument-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},by={id:"join-list-first-list-argument-declaration",type:n.ValueDescriptor,version:1,name:"First value",description:"The first list to join to the second one. Its values will be at the beginning of the resulting list.",dataType:yy,parentRelationType:O.FixedArguments,required:!0,index:0,parent:Ey},Ry={type:n.GenericReference,id:"join-list-operation-second-list-argument-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},vy={id:"join-list-second-list-argument-declaration",type:n.ValueDescriptor,version:1,name:"Second value",description:"The second list to join to the first one. Its values will be at the end of the resulting list.",dataType:fy,parentRelationType:O.FixedArguments,required:!0,index:1,parent:Ry},gy={type:n.GenericReference,id:"join-list-operation-result-list-return-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},Iy={parentRelationType:O.FixedReturns,id:"join-list-result-list-return-delaration",type:n.ValueDescriptor,version:1,name:"Result",description:"The resulting list value.",dataType:Ty,required:!0,index:0,parent:gy},Dy={type:n.GenericReference,id:"join-list-operation-error-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},Py={parentRelationType:O.FixedReturns,id:"join-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Dy},ll={id:W.Join,type:n.ActionDescriptor,version:1,name:W.Join,description:"Join two lists together, to form a single resulting list value.",inputs:[by,vy],error:Py,outputs:[Iy],parent:null};var Ay=(r=>(r.InputList="list-to-split-argument-declaration",r.SplitIndex="split-list-index-argument-declaration",r))(Ay||{}),Oy=(r=>(r.FirstOutputList="split-list-first-output-list-return-delaration",r.SecondOutputList="split-list-second-output-list-return-delaration",r.Error="split-list-error-return-delaration",r))(Oy||{});const Sy={type:n.GenericReference,id:"split-list-operation-input-list-argument-ref",entityId:"list-to-split-argument-declaration",entityType:n.ValueDescriptor},Cy={like:!1,inferred:!1,id:"split-list-operation-input-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Sy},By={type:n.GenericReference,id:"split-list-operation-split-index-argument-ref",entityId:"split-list-index-argument-declaration",entityType:n.ValueDescriptor},wy={like:!1,inferred:!1,id:"split-list-operation-split-index-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:By},cl={type:n.GenericReference,id:"split-list-operation-first-output-list-return-ref",entityId:"split-list-first-output-list-return-delaration",entityType:n.ValueDescriptor},_y={like:!1,inferred:!1,id:"split-list-operation-first-output-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:cl},Ny={type:n.GenericReference,id:"split-list-operation-input-list-argument-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},My={id:"list-to-split-argument-declaration",type:n.ValueDescriptor,version:1,name:"List to split",description:"The list to split at the given index",dataType:Cy,parentRelationType:O.FixedArguments,required:!0,index:0,parent:Ny},Vy={type:n.GenericReference,id:"split-list-operation-split-index-argument-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},Ly={id:"split-list-index-argument-declaration",type:n.ValueDescriptor,version:1,name:"Split location",description:"The index at which to split the list. The value at this index will be the first value of the second list.",dataType:wy,parentRelationType:O.FixedArguments,required:!0,index:1,parent:Vy},Gy={type:n.GenericReference,id:"split-list-operation-first-output-list-return-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},$y={parentRelationType:O.FixedReturns,id:"split-list-first-output-list-return-delaration",type:n.ValueDescriptor,version:1,name:"First list",description:"The list of values up to the split index",dataType:_y,required:!0,index:0,parent:Gy},Fy={like:!1,inferred:!1,id:"split-list-operation-second-output-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:cl},Uy={type:n.GenericReference,id:"split-list-operation-second-output-list-return-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},xy={parentRelationType:O.FixedReturns,id:"split-list-second-output-list-return-delaration",type:n.ValueDescriptor,version:1,name:"Second list",description:"The list of values up to the split index",dataType:Fy,required:!0,index:0,parent:Uy},jy={type:n.GenericReference,id:"split-list-operation-error-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},ky={parentRelationType:O.FixedReturns,id:"split-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:jy},dl={id:W.Split,type:n.ActionDescriptor,version:1,name:W.Split,description:"Splits a given list at the given index, and returns two lists, one with the values up to the index, and the other with the values after the index",inputs:[My,Ly],outputs:[$y,xy],error:ky,parent:null};var qy=(r=>(r.InputList="get-last-in-list-input-list-argument-declaration",r))(qy||{}),Jy=(r=>(r.OutputElement="get-last-in-list-output-element-return-delaration",r.Error="get-last-in-list-error-return-delaration",r))(Jy||{});const Wy={type:n.GenericReference,id:"get-last-in-list-operation-input-list-argument-ref",entityId:"get-last-in-list-input-list-argument-declaration",entityType:n.ValueDescriptor},Hy={like:!1,inferred:!1,id:"get-last-in-list-input-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Wy},Yy={type:n.GenericReference,id:"get-last-in-list-operation-output-element-return-ref",entityId:"get-last-in-list-output-element-return-delaration",entityType:n.ValueDescriptor},zy={like:!1,inferred:!1,id:"get-last-in-list-output-element-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Yy},Zy={type:n.GenericReference,id:"get-last-in-list-operation-input-list-argument-parent-ref",entityId:W.GetLast,entityType:n.ActionDescriptor},Ky={id:"get-last-in-list-input-list-argument-declaration",type:n.ValueDescriptor,version:1,name:"List",description:"The list to get the last element from.",dataType:Hy,parentRelationType:O.FixedArguments,required:!0,index:0,parent:Zy},Xy={type:n.GenericReference,id:"get-last-in-list-operation-output-element-return-parent-ref",entityId:W.GetLast,entityType:n.ActionDescriptor},Qy={parentRelationType:O.FixedReturns,id:"get-last-in-list-output-element-return-delaration",type:n.ValueDescriptor,version:1,name:"Last element",description:"The last element of the given list.",dataType:zy,required:!0,index:0,parent:Xy},eh={type:n.GenericReference,id:"get-last-in-list-operation-error-parent-ref",entityId:W.GetLast,entityType:n.ActionDescriptor},th={parentRelationType:O.FixedReturns,id:"get-last-in-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:eh},ul={id:W.GetLast,type:n.ActionDescriptor,version:1,name:W.GetLast,description:"Outputs the last element of a given list.",inputs:[Ky],outputs:[Qy],error:th,parent:null};var nh=(r=>(r.List="append-to-list-lsit-argument-declaration",r.ElementToAppend="append-to-list-element-to-append-argument-declaration",r))(nh||{}),rh=(r=>(r.ResultList="append-to-list-result-list-return-delaration",r.Error="append-to-list-error-return-delaration",r))(rh||{});const ih={type:n.GenericReference,id:"append-to-list-operation-lsit-argument-ref",entityId:"append-to-list-lsit-argument-declaration",entityType:n.ValueDescriptor},ah={like:!1,inferred:!1,id:"append-to-list-lsit-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:ih},sh={type:n.GenericReference,id:"append-to-list-operation-second-list-argument-ref",entityId:"append-to-list-element-to-append-argument-declaration",entityType:n.ValueDescriptor},oh={like:!1,inferred:!1,id:"append-to-list-second-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:sh},lh={type:n.GenericReference,id:"append-to-list-operation-result-list-return-ref",entityId:"append-to-list-result-list-return-delaration",entityType:n.ValueDescriptor},ch={like:!1,inferred:!1,id:"append-to-list-result-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:lh},dh={type:n.GenericReference,id:"append-to-list-operation-lsit-argument-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},pl={id:"append-to-list-lsit-argument-declaration",type:n.ValueDescriptor,version:1,name:"List value",description:"The list to which the element will be appended",dataType:ah,parentRelationType:O.FixedArguments,required:!0,index:0,parent:dh},uh={type:n.GenericReference,id:"append-to-list-operation-second-list-argument-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},yl={id:"append-to-list-element-to-append-argument-declaration",type:n.ValueDescriptor,version:1,name:"Element",description:"The element that will be added at the end of the list",dataType:oh,parentRelationType:O.FixedArguments,required:!0,index:1,parent:uh},ph={type:n.GenericReference,id:"append-to-list-operation-result-list-return-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},yh={parentRelationType:O.FixedReturns,id:"append-to-list-result-list-return-delaration",type:n.ValueDescriptor,version:1,name:"Result",description:"The resulting list value.",dataType:ch,required:!0,index:0,parent:ph},hh={type:n.GenericReference,id:"append-to-list-operation-error-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},fh={parentRelationType:O.FixedReturns,id:"append-to-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:hh},Ya={id:W.Append,type:n.ActionDescriptor,version:1,name:W.Append,description:"Adds a given element to the end of a list value.",inputs:[pl,yl],error:fh,outputs:[yh],parent:null},mh={[W.Join]:ll,[W.Split]:dl,[W.GetLast]:ul,[W.Append]:Ya};var Th=(r=>(r.ListOfFunctions="parallel-execution-list-of-functions-argument-declaration",r))(Th||{}),Eh=(r=>(r.ListOfExecutionResults="parallel-execution-result-return-delaration",r.Error="parallel-execution-error-return-delaration",r))(Eh||{});const bh={id:"parallel-execution-list-of-functions-blueprint-dynamic-output-id",type:n.ValueDescriptor,version:1,name:"Any output value",description:"An output value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},Rh={id:"parallel-execution-list-of-functions-blueprint-dynamic-input-id",type:n.ValueDescriptor,version:1,name:"Any input value",description:"An input value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},vh={id:"parallel-execution-list-of-functions-blueprint-id",type:n.ActionDescriptor,version:1,name:"Action to execute",description:"An action of any type, to be executed. It can contain any number of inputs and outputs.",inputs:[Rh],outputs:[bh],error:null,parent:null},gh={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityId:"parallel-execution-list-of-functions-argument-declaration",entityType:n.ValueDescriptor},Ih={like:!1,inferred:!1,id:"parallel-execution-list-of-functions-argument-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:vh,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:gh},Dh={type:n.GenericReference,id:"da5e9fe9-f18a-49e3-98e5-c1bf7b9b3153",entityId:"parallel-execution-result-return-delaration",entityType:n.ValueDescriptor},Ph={like:!1,inferred:!1,id:"b761acec-0755-4582-a68b-76267038bbe1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Dh},Ah={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityId:Me.Parallel,entityType:n.ActionDescriptor},hl={id:"parallel-execution-list-of-functions-argument-declaration",type:n.ValueDescriptor,version:1,name:"Actions to execute",description:"A value, of a list of actions to be executed in parallel",dataType:Ih,required:!0,index:0,parent:Ah,parentRelationType:O.FixedArguments},Oh={type:n.GenericReference,id:"caac2bc7-c23c-4f01-9581-a515c2e4637f",entityId:Me.Parallel,entityType:n.ActionDescriptor},fl={id:"parallel-execution-result-return-delaration",type:n.ValueDescriptor,version:1,name:"List of execution results",description:"Each execution result, in the same order as the input list of actions. One item on this list for each executed action.",dataType:Ph,required:!0,index:0,parent:Oh,parentRelationType:O.FixedReturns},Sh={type:n.GenericReference,id:"parallel-execution-operation-error-parent-ref",entityId:Me.Parallel,entityType:n.ActionDescriptor},Ch={id:"parallel-execution-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Sh,parentRelationType:O.ReturnedError},Wt={id:Me.Parallel,type:n.ActionDescriptor,description:"Execute a list of actions in parallel",version:1,name:Me.Parallel,inputs:[hl],outputs:[fl],error:Ch,parent:null};var Bh=(r=>(r.MillisecondsNumber="wait-milliseconds-number-argument-declaration",r))(Bh||{}),wh=(r=>(r.Error="wait-operation-error-return-delaration",r))(wh||{});const _h={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityType:n.ValueDescriptor,entityId:"wait-milliseconds-number-argument-declaration"},Nh={like:!1,inferred:!1,id:"wait-milliseconds-number-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:_h},Mh={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityType:n.ActionDescriptor,entityId:Me.Wait},tr={id:"wait-milliseconds-number-argument-declaration",type:n.ValueDescriptor,version:1,name:"Milliseconds to wait",description:"The amount of milliseconds to wait before calling the next entity",dataType:Nh,required:!0,index:0,parent:Mh,parentRelationType:O.FixedArguments},Vh={type:n.GenericReference,id:"wait-operation-error-parent-ref",entityId:Me.Wait,entityType:n.ActionDescriptor},Lh={id:"wait-operation-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Vh,parentRelationType:O.ReturnedError},pt={id:Me.Wait,type:n.ActionDescriptor,description:"Wait for the given amount of milliseconds before calling the next entity",version:1,name:Me.Wait,inputs:[tr],outputs:[],error:Lh,parent:null};var Gh=(r=>(r.ListOfFunctions="sequential-execution-list-of-functions-argument-declaration",r))(Gh||{}),$h=(r=>(r.ListOfExecutionResults="sequential-execution-result-return-delaration",r.Error="sequential-execution-error-return-delaration",r))($h||{});const Fh={id:"sequential-execution-list-of-functions-blueprint-dynamic-output-id",type:n.ValueDescriptor,version:1,name:"Any output value",description:"An output value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},Uh={id:"sequential-execution-list-of-functions-blueprint-dynamic-input-id",type:n.ValueDescriptor,version:1,name:"Any input value",description:"An input value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},xh={id:"sequential-execution-list-of-functions-blueprint-id",type:n.ActionDescriptor,version:1,name:"Action to execute",description:"An action of any type, to be executed. It can contain any number of inputs and outputs.",inputs:[Uh],outputs:[Fh],error:null,parent:null},jh={type:n.GenericReference,id:"parallel-execution-list-of-functions-argument-declaration-id",entityId:"sequential-execution-list-of-functions-argument-declaration",entityType:n.ValueDescriptor},kh={like:!1,inferred:!1,id:"sequential-execution-list-of-functions-argument-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xh,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:jh},qh={type:n.GenericReference,id:"sequential-execution-list-of-execution-results-return-declaration-id",entityId:"sequential-execution-result-return-delaration",entityType:n.ValueDescriptor},Jh={like:!1,inferred:!1,id:"sequential-execution-list-of-execution-results-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:qh},Wh={type:n.GenericReference,id:"parallel-execution-operation-list-of-functions-argument-parent-ref",entityId:Me.Sequential,entityType:n.ActionDescriptor},ml={id:"sequential-execution-list-of-functions-argument-declaration",type:n.ValueDescriptor,version:1,name:"Actions to execute",description:"A value, of a list of actions to be executed in parallel",dataType:kh,required:!0,index:0,parent:Wh,parentRelationType:O.FixedArguments},Hh={type:n.GenericReference,id:"parallel-execution-operation-list-of-execution-results-return-parent-ref",entityId:Me.Sequential,entityType:n.ActionDescriptor},Tl={id:"sequential-execution-result-return-delaration",type:n.ValueDescriptor,version:1,name:"List of execution results",description:"Each execution result, in the same order as the input list of actions. One item on this list for each executed action.",dataType:Jh,required:!0,index:0,parent:Hh,parentRelationType:O.FixedReturns},Yh={type:n.GenericReference,id:"sequential-execution-operation-error-parent-ref",entityId:Me.Sequential,entityType:n.ActionDescriptor},zh={id:"sequential-execution-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Yh,parentRelationType:O.ReturnedError},mn={id:Me.Sequential,type:n.ActionDescriptor,description:"Execute a list of actions one after the other",version:1,name:Me.Sequential,inputs:[ml],outputs:[Tl],error:zh,parent:null},Zh={[Me.Parallel]:Wt,[Me.Wait]:pt,[Me.Sequential]:mn};var Kh=(r=>(r.EntityToInstanciate="entity-to-instanciate-argument-declaration",r.NewEntityData="new-entity-data-argument-declaration",r))(Kh||{}),Xh=(r=>(r.Error="create-new-instance-error-return-delaration",r))(Xh||{});const Qh={type:n.GenericReference,id:"new-entity-data-argument-declaration-parent-ref",entityId:le.CreateNewInstance,entityType:n.ActionDescriptor},ef={type:n.GenericReference,id:"new-entity-data-argument-data-type-parent-ref",entityId:"new-entity-data-argument-declaration",entityType:n.ValueDescriptor},tf={like:!1,inferred:!1,id:"new-entity-data-argument-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:ef},nf={id:"new-entity-data-argument-declaration",type:n.ValueDescriptor,version:1,name:"Data for new entity",description:"The data to be used to create the new entity, with all the required properties",dataType:tf,required:!0,parentRelationType:O.FixedArguments,index:1,parent:Qh},rf={type:n.GenericReference,id:"entity-to-instanciate-argument-declaration-ref",entityType:n.ValueDescriptor,entityId:"entity-to-instanciate-argument-declaration"},af={like:!1,inferred:!1,id:"entity-to-instanciate-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!0,isNullable:!1,defaultValue:null,constant:!1,parent:rf},sf={type:n.GenericReference,id:"create-new-instance-operation-ref",entityType:n.ActionDescriptor,entityId:le.CreateNewInstance},of={id:"entity-to-instanciate-argument-declaration",type:n.ValueDescriptor,version:1,name:"Entity to create a new copy of",description:"The entity of which a new copy will to be created",dataType:af,required:!0,parentRelationType:O.FixedArguments,index:0,parent:sf},lf={type:n.GenericReference,id:"create-new-instance-output-entity-declaration-parent-ref",entityId:le.CreateNewInstance,entityType:n.ActionDescriptor},cf={parentRelationType:O.FixedReturns,id:"create-new-instance-output-entity-declaration",type:n.ValueDescriptor,version:1,dataType:null,name:"Created entity",description:"The entity that was created",parent:lf,required:!0,index:0},df={type:n.GenericReference,id:"create-new-instance-error-parent-ref",entityId:le.CreateNewInstance,entityType:n.ActionDescriptor},uf={parentRelationType:O.FixedReturns,id:"create-new-instance-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:df},nr={id:le.CreateNewInstance,type:n.ActionDescriptor,description:"Creates a new copy of a given entity, with the given values for each property, or default values if a value is not provided",version:1,name:le.CreateNewInstance,inputs:[of,nf],outputs:[cf],error:uf,parent:null},zr=B[n.Operation][le.Validate],pf={type:n.GenericReference,id:"validate-data-operation-data-to-validate-argument-declaration-ref",entityType:n.ValueDescriptor,entityId:zr.inputs.dataToValidate.id},yf={like:!1,inferred:!1,id:"validate-data-operation-data-to-validate-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:pf},hf={type:n.GenericReference,id:"validate-data-operation-data-to-validate-argument-parent-ref",entityType:n.ActionDescriptor,entityId:le.Validate},ff={id:zr.inputs.dataToValidate.id,type:n.ValueDescriptor,version:1,name:"Data to validate",description:"The value to validate against the given entity type",dataType:yf,required:!0,parentRelationType:O.FixedArguments,index:0,parent:hf},mf={type:n.GenericReference,id:"validate-data-operation-entity-to-match-type-argument-declaration-ref",entityType:n.ValueDescriptor,entityId:zr.inputs.entityToMatch.id},Tf={like:!1,inferred:!1,id:"validate-data-operation-entity-to-match-type-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!0,isNullable:!1,defaultValue:null,constant:!1,parent:mf},Ef={type:n.GenericReference,id:"validate-data-operation-entity-to-match-type-argument-parent-ref",entityType:n.ActionDescriptor,entityId:le.Validate},bf={id:zr.inputs.entityToMatch.id,type:n.ValueDescriptor,version:1,name:"Entity to match",description:"The entity to match the data against",dataType:Tf,required:!0,index:0,parentRelationType:O.FixedArguments,parent:Ef},Rf={type:n.GenericReference,id:"validate-data-operation-output-entity-declaration-parent-ref",entityId:le.Validate,entityType:n.ActionDescriptor},vf={id:zr.outputs.outputEntity.id,type:n.ValueDescriptor,version:1,dataType:null,name:"Output value",description:"A value with the type of the entity that was validated",parent:Rf,required:!0,index:0,parentRelationType:O.FixedReturns},gf={type:n.GenericReference,id:"wait-operation-error-parent-ref",entityId:le.Validate,entityType:n.ActionDescriptor},If={id:zr.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:gf,parentRelationType:O.ReturnedError},rr={id:le.Validate,type:n.ActionDescriptor,description:"Validates the given data to see if it matches the structure of a given type/entity",version:1,name:le.Validate,inputs:[bf,ff],outputs:[vf],error:If,parent:null},Df={[le.CreateNewInstance]:nr,[le.Validate]:rr},Qe=B[n.Operation]["base-http-request"],Pf={type:n.GenericReference,id:"d87cf943-57e1-4d19-9f05-190fa8c8ebc4",entityType:n.DataType,entityId:"0deb4ef7-d739-4ddc-a4d6-50bd6fababe3"},Af={id:"http-request-url-default-value-id",type:n.PrimitiveValue,version:1,value:"https://some-url.com",name:P.String,valueAsType:null,parent:Pf,autogeneration:null},Of={type:n.GenericReference,id:"aed50d73-eab5-42ce-b00e-7f5c45a9026f",entityId:Qe.inputs.url.id,entityType:n.ValueDescriptor},Sf={like:!1,inferred:!1,id:"0deb4ef7-d739-4ddc-a4d6-50bd6fababe3",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:Af,constant:!1,parent:Of},Cf={type:n.GenericReference,id:"c3145af6-3387-464a-8887-272e483c856d",entityId:Qe.inputs.query.id,entityType:n.ValueDescriptor},Bf={like:!1,inferred:!1,id:"2a5ba737-6335-4cc4-a2c0-16dca4052fac",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Cf},wf={type:n.GenericReference,id:"075556b7-e468-48f7-8485-7159eaf389b2",entityType:n.DataType,entityId:"6df7ec2b-5dbd-44af-896b-17b314e88560"},_f={id:"http-request-method-default-value-id",type:n.PrimitiveValue,version:1,value:"GET",name:P.Enum,valueAsType:null,parent:wf,autogeneration:null},Nf={type:n.GenericReference,id:"aed647c8-a1b5-4cfc-9a3d-97887a567a80",entityId:Qe.inputs.method.id,entityType:n.ValueDescriptor},Mf={like:!1,inferred:!1,id:"6df7ec2b-5dbd-44af-896b-17b314e88560",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,asType:!1,isNullable:!1,defaultValue:_f,options:["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD","TRACE","CONNECT","CUSTOM"],constant:!1,parent:Nf},Vf={type:n.GenericReference,id:"77203dfa-d2f6-4804-9556-e1cce46228f3",entityId:Qe.inputs.headers.id,entityType:n.ValueDescriptor},Lf={like:!1,inferred:!1,id:"2c8a2a07-69c6-40ad-b5c9-f0dc4d5955ce",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Vf},Gf={type:n.GenericReference,id:"03db68a0-7ab6-4c6a-85b6-f4b95ebb53ff",entityId:Qe.inputs.body.id,entityType:n.ValueDescriptor},$f={like:!1,inferred:!1,id:"0397876c-ed54-4ee9-85a4-04fd16dad973",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Gf},Ff={type:n.GenericReference,id:"182f767f-50e8-4394-ba5f-43e78c232733",entityType:n.ValueDescriptor,entityId:Qe.outputs.code.id},Uf={like:!1,inferred:!1,id:"45e6d0bc-0c0e-4059-a7a1-6bee925d73d0",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Ff},xf={type:n.GenericReference,id:"2baaa53a-9aef-4bd1-b06d-967c17b7b627",entityType:n.DataType,entityId:"dac63bfa-640d-4f4e-ba0f-86c2401bcfbe"},jf={type:n.GenericReference,id:"69f34d6c-c686-4165-b6ff-70dae8e1778b",entityType:n.ValueDescriptor,entityId:Qe.outputs.headers.id},kf={like:!1,inferred:!1,id:"dac63bfa-640d-4f4e-ba0f-86c2401bcfbe",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"http-response-headers-default-value-id",type:n.PrimitiveValue,version:1,value:{},name:P.JSON,parent:xf,valueAsType:null,autogeneration:null},constant:!1,parent:jf},qf={type:n.GenericReference,id:"744334e0-5135-4214-85d0-809437cb620b",entityType:n.DataType,entityId:"05fc1a5d-151a-479a-9c4e-4063f3456177"},Jf={type:n.GenericReference,id:"0e0e20df-1a46-432c-ba01-fd96508a6a61",entityType:n.ValueDescriptor,entityId:Qe.outputs.body.id},Wf={like:!1,inferred:!1,id:"05fc1a5d-151a-479a-9c4e-4063f3456177",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"http-response-body-default-value-id",type:n.PrimitiveValue,version:1,value:{},name:P.JSON,parent:qf,valueAsType:null,autogeneration:null},constant:!1,parent:Jf},Hf={type:n.GenericReference,id:"26911792-f707-4bf1-b6f7-03d04a84232c",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},za={id:Qe.inputs.method.id,type:n.ValueDescriptor,description:"A single word that represents the type of request you want to make. For example: GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, TRACE, CONNECT, CUSTOM",version:1,name:"Method",dataType:Mf,required:!1,index:0,parentRelationType:O.FixedArguments,parent:Hf},Yf={type:n.GenericReference,id:"eee0c501-0ae6-4448-b914-aada76d63163",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Za={id:Qe.inputs.url.id,type:n.ValueDescriptor,description:"The base domain, or address where the request is being sent to. For example: https://some-url.com",version:1,name:"URL",dataType:Sf,required:!1,index:1,parentRelationType:O.FixedArguments,parent:Yf},zf={type:n.GenericReference,id:"670091a4-21b1-4223-ad4c-b6dada0aec49",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},El={id:Qe.inputs.query.id,type:n.ValueDescriptor,description:"A text with standarized format, without spaces that is added at the end of the URL path, after the ? character. It contains data that might be used to process the request. For example: /api/users?name=John&age=30",version:1,name:"Query Params",dataType:Bf,required:!1,index:2,parentRelationType:O.FixedArguments,parent:zf},Zf={type:n.GenericReference,id:"85aad3eb-22fe-45f9-b68c-1dc7061f41e0",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Ka={id:Qe.inputs.headers.id,type:n.ValueDescriptor,description:"A set of any properties, with names and values that represent metadata about the request, such as the server, date, content type, and more, that you want to send alongside your request data.",version:1,name:"Headers",dataType:Lf,required:!1,index:3,parent:Zf,parentRelationType:O.FixedArguments},Kf={type:n.GenericReference,id:"c3e2a4af-9b84-4574-8b30-5044ffc51776",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Xa={id:Qe.inputs.body.id,type:n.ValueDescriptor,description:"The main data payload of the request. This is the data that you want to send to the server. It could be anything, but it is usually a JSON data structure or a text value.",version:1,name:"Body",dataType:$f,required:!1,index:4,parentRelationType:O.FixedArguments,parent:Kf},Xf={type:n.GenericReference,id:"92e04dc7-2145-4a31-908e-03810f7235e8",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Qa={id:Qe.outputs.code.id,type:n.ValueDescriptor,description:'A standardized status code of the response. It is a 3-digit number that represents the response status. For example, 200 means "OK", 404 means "Not Found", and 500 means "Internal Server Error".',version:1,name:"Code",dataType:Uf,required:!0,index:0,parentRelationType:O.FixedReturns,parent:Xf},Qf={type:n.GenericReference,id:"86aca556-bbf1-4679-9909-31db61b288e2",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},es={parentRelationType:O.FixedReturns,id:Qe.outputs.headers.id,type:n.ValueDescriptor,description:"A set of any properties, with names and value that the server sent back to you. It represents metadata about the response, such as the server, date, content type, and more.",version:1,name:"Headers",dataType:kf,required:!0,index:1,parent:Qf},em={type:n.GenericReference,id:"ccf3d1be-04e4-4d03-99fd-5bc1e1919f90",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},ts={parentRelationType:O.FixedReturns,id:Qe.outputs.body.id,type:n.ValueDescriptor,description:"The main data payload of the response. This is the data that the server sent back to you. It could be anything, but it is usually a JSON data structure or a text value.",version:1,name:"Body",dataType:Wf,required:!0,index:2,parent:em},tm={type:n.GenericReference,id:"21487ffc-82b9-473d-bc19-6e7d7c480ed7",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},nm={type:n.GenericReference,id:"ad69861b-32f7-4461-b7f7-aa84a82578d9",entityType:n.ValueDescriptor,entityId:Qe.outputs.error.id},rm={like:!1,inferred:!1,id:"5da68b15-57bc-40c1-b79f-a9075e0f22c1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,isList:!1,asType:!1,isNullable:!1,constant:!1,defaultValue:null,parent:nm},bl={parentRelationType:O.ReturnedError,id:Qe.outputs.error.id,type:n.ValueDescriptor,description:"Http request error, if any. Contains a payload describing what went wrong.",version:1,name:"Error",dataType:rm,required:!0,index:0,parent:tm},Mi={type:n.ActionDescriptor,id:nt.HttpRequest,name:nt.HttpRequest,description:"Make an HTTP request, out to the internet, to a given URL with the specified method, query parameters, headers, and body.",version:1,inputs:[za,Za,El,Ka,Xa],outputs:[Qa,es,ts],error:bl,parent:null},im={[nt.HttpRequest]:Mi},jA={...cy,...Dp,...mh,...Zh,...Df,...im},kA=B[n.Loop]["manual-flow-loop"],am={id:"manual-flow-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ManualFlow,entityType:n.ActionDescriptor},sm={id:kA.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:am,parentRelationType:O.DynamicReturn},Rl={id:$.ManualFlow,type:n.ActionDescriptor,version:1,name:$.ManualFlow,description:"A loop that is manually controlled by the continue and break statements. It runs until the break statement is called, and it can skip to the next iteration with the continue statement.",inputs:[],outputs:[sm],error:null,parent:null},Vi=B[n.Loop]["manual-flow-loop"],om={id:"manual-flow-loop-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"manual-flow-loop-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},lm={like:!1,inferred:!1,id:"manual-flow-loop-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:om},cm={id:"manual-flow-loop-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:Vi.body.id,entityType:n.ActionDescriptor},vl={id:Vi.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the manual flow loop. Keeps track of the number of iterations that have been executed.",dataType:lm,required:!0,index:0,parentRelationType:O.FixedArguments,parent:cm},dm={id:"manual-flow-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:Vi.body.id,entityType:n.ActionDescriptor},um={id:"manual-flow-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:1,parentRelationType:O.DynamicArgument,parent:dm},pm={id:"manual-flow-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:Vi.body.id,entityType:n.ActionDescriptor},ym={id:"manual-flow-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:pm},gl={id:Vi.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the manual flow loop.",inputs:[vl,um],outputs:[ym],error:null,parent:null},hm=B[n.Loop]["list-loop"],fm={id:"iterate-over-list-loop-list-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-list-loop-list-argument-declaration-id",entityType:n.ValueDescriptor},mm={like:!1,inferred:!1,id:"iterate-over-list-loop-list-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!0,isNullable:!1,constant:!1,entity:null,asType:!1,defaultValue:null,parent:fm},Tm={id:"iterate-over-list-loop-list-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.List,entityType:n.ActionDescriptor},Em={id:hm.inputs.list.id,type:n.ValueDescriptor,version:1,name:"List",description:"The list to iterate over",required:!0,dataType:mm,index:0,parent:Tm,parentRelationType:O.FixedArguments},bm={id:"iterate-over-list-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.List,entityType:n.ActionDescriptor},Rm={id:hm.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:bm,parentRelationType:O.DynamicReturn},ir={id:$.List,type:n.ActionDescriptor,version:1,name:$.List,description:"Iterates over a list of entities",inputs:[Em],outputs:[Rm],error:null,parent:null},ar=B[n.Loop]["list-loop"],vm={id:"iterate-over-list-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-list-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},gm={like:!1,inferred:!1,id:"iterate-over-list-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:null,asType:!1,defaultValue:null,parent:vm},Im={id:"iterate-over-list-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},ns={id:ar.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the list that is being iterated over. This value is passed to the child actions.",dataType:gm,required:!0,index:1,parentRelationType:O.FixedArguments,parent:Im},Dm={id:"iterate-over-list-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-list-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},Pm={like:!1,inferred:!1,id:"iterate-over-list-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:Dm},Am={id:"iterate-over-list-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},Om={id:ar.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the list loop. Keeps track of the number of iterations that have been executed.",dataType:Pm,required:!0,index:0,parentRelationType:O.FixedArguments,parent:Am},Sm={id:"iterate-over-list-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},Cm={id:"iterate-over-list-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:Sm},Bm={id:"iterate-over-list-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},wm={id:"iterate-over-list-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:Bm},rs={id:ar.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the list loop.",inputs:[Om,ns,Cm],outputs:[wm],error:null,parent:null},_m=B[n.Loop]["string-loop"],Nm={id:"iterate-over-string-loop-string-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-string-loop-string-argument-declaration-id",entityType:n.ValueDescriptor},Mm={like:!1,inferred:!1,id:"iterate-over-string-loop-string-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:Nm},Vm={id:"iterate-over-string-loop-string-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.String,entityType:n.ActionDescriptor},Lm={id:_m.inputs.string.id,type:n.ValueDescriptor,version:1,name:"Texts",description:"The text to iterate over the characters of",required:!0,dataType:Mm,index:0,parent:Vm,parentRelationType:O.FixedArguments},Gm={id:"iterate-over-string-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.String,entityType:n.ActionDescriptor},$m={id:_m.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:Gm,parentRelationType:O.DynamicReturn},is={id:$.String,type:n.ActionDescriptor,version:1,name:$.String,description:"Iterates over a string of entities",inputs:[Lm],outputs:[$m],error:null,parent:null},sr=B[n.Loop]["string-loop"],Fm={id:"iterate-over-string-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-string-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},Um={like:!1,inferred:!1,id:"iterate-over-string-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:Fm},xm={id:"iterate-over-string-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Il={id:sr.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the string that is being iterated over. This value is passed to the child actions.",dataType:Um,required:!0,index:1,parentRelationType:O.FixedArguments,parent:xm},jm={id:"iterate-over-string-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-string-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},km={like:!1,inferred:!1,id:"iterate-over-string-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:jm},qm={id:"iterate-over-string-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Dl={id:sr.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the string loop. Keeps track of the number of iterations that have been executed.",dataType:km,required:!0,index:0,parentRelationType:O.FixedArguments,parent:qm},Jm={id:"iterate-over-string-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Wm={id:"iterate-over-string-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:Jm},Hm={id:"iterate-over-string-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Ym={id:"iterate-over-string-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:Hm},Pl={id:sr.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the string loop.",inputs:[Dl,Il,Wm],outputs:[Ym],error:null,parent:null},zm=B[n.Loop]["object-keys-loop"],Zm={id:"iterate-over-object-keys-loop-object-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-keys-loop-object-argument-declaration-id",entityType:n.ValueDescriptor},Km={like:!1,inferred:!1,id:"iterate-over-object-keys-loop-object-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:null,parent:Zm},Xm={id:"iterate-over-object-keys-loop-object-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectKeys,entityType:n.ActionDescriptor},Qm={id:zm.inputs.object.id,type:n.ValueDescriptor,version:1,name:"Object",description:"The object to iterate over",required:!0,dataType:Km,index:0,parent:Xm,parentRelationType:O.FixedArguments},eT={id:"iterate-over-object-keys-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectKeys,entityType:n.ActionDescriptor},tT={id:zm.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:eT,parentRelationType:O.DynamicReturn},Li={id:$.ObjectKeys,type:n.ActionDescriptor,version:1,name:$.ObjectKeys,description:"Iterates over a object of entities",inputs:[Qm],outputs:[tT],error:null,parent:null},or=B[n.Loop]["object-keys-loop"],nT={id:"iterate-over-object-keys-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-keys-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},rT={like:!1,inferred:!1,id:"iterate-over-object-keys-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:nT},iT={id:"iterate-over-object-keys-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},Al={id:or.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the object-keys that is being iterated over. This value is passed to the child actions.",dataType:rT,required:!0,index:1,parentRelationType:O.FixedArguments,parent:iT},aT={id:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},sT={like:!1,inferred:!1,id:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:aT},oT={id:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},lT={id:or.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the object-keys loop. Keeps track of the number of iterations that have been executed.",dataType:sT,required:!0,index:0,parentRelationType:O.FixedArguments,parent:oT},cT={id:"iterate-over-object-keys-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},dT={id:"iterate-over-object-keys-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:cT},uT={id:"iterate-over-object-keys-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},pT={id:"iterate-over-object-keys-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:uT},yT={id:or.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the object-keys loop.",inputs:[lT,Al,dT],outputs:[pT],error:null,parent:null},hT=B[n.Loop]["object-values-loop"],fT={id:"iterate-over-object-values-loop-object-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-values-loop-object-argument-declaration-id",entityType:n.ValueDescriptor},mT={like:!1,inferred:!1,id:"iterate-over-object-values-loop-object-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:null,parent:fT},TT={id:"iterate-over-object-values-loop-object-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectValues,entityType:n.ActionDescriptor},ET={id:hT.inputs.object.id,type:n.ValueDescriptor,version:1,name:"Object",description:"The object to iterate over",required:!0,dataType:mT,index:0,parent:TT,parentRelationType:O.FixedArguments},bT={id:"iterate-over-object-values-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectValues,entityType:n.ActionDescriptor},RT={id:hT.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:bT,parentRelationType:O.DynamicReturn},Gi={id:$.ObjectValues,type:n.ActionDescriptor,version:1,name:$.ObjectValues,description:"Iterates over a object of entities",inputs:[ET],outputs:[RT],error:null,parent:null},lr=B[n.Loop]["object-values-loop"],vT={id:"iterate-over-object-values-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-values-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},gT={id:"iterate-over-object-values-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:null,isNullable:!1,constant:!1,entity:null,asType:null,like:!1,inferred:!1,defaultValue:null,parent:vT},IT={id:"iterate-over-object-values-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},Ol={id:lr.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the object-values that is being iterated over. This value is passed to the child actions.",dataType:gT,required:!0,index:1,parentRelationType:O.FixedArguments,parent:IT},DT={id:"iterate-over-object-values-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-values-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},PT={like:!1,inferred:!1,id:"iterate-over-object-values-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:DT},AT={id:"iterate-over-object-values-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},OT={id:lr.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the object-values loop. Keeps track of the number of iterations that have been executed.",dataType:PT,required:!0,index:0,parentRelationType:O.FixedArguments,parent:AT},ST={id:"iterate-over-object-values-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},CT={id:"iterate-over-object-values-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:ST},BT={id:"iterate-over-object-values-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},wT={id:"iterate-over-object-values-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:BT},_T={id:lr.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the object-values loop.",inputs:[OT,Ol,CT],outputs:[wT],error:null,parent:null},NT=B[n.Loop]["counted-loop"],MT={id:"counted-loop-string-argument-declaration-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"counted-loop-string-argument-declaration-data-type-id",entityType:n.DataType},VT={id:"counted-loop-string-argument-declaration-data-type-default-value-id",type:n.PrimitiveValue,name:P.Number,version:1,value:5,valueAsType:null,autogeneration:null,parent:MT},LT={id:"counted-loop-string-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"counted-loop-string-argument-declaration-id",entityType:n.ValueDescriptor},GT={like:!1,inferred:!1,id:"counted-loop-string-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:VT,parent:LT},$T={id:"counted-loop-string-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.Counted,entityType:n.ActionDescriptor},FT={id:NT.inputs.number.id,type:n.ValueDescriptor,version:1,name:"Number of iterations",description:"The number of iterations to perform",required:!0,dataType:GT,index:0,parent:$T,parentRelationType:O.FixedArguments},UT={id:"counted-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.Counted,entityType:n.ActionDescriptor},xT={id:NT.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:UT,parentRelationType:O.DynamicReturn},as={id:$.Counted,type:n.ActionDescriptor,version:1,name:$.Counted,description:"Iterates a given number of times",inputs:[FT],outputs:[xT],error:null,parent:null},$i=B[n.Loop]["counted-loop"],jT={id:"counted-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"counted-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},kT={like:!1,inferred:!1,id:"counted-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:jT},qT={id:"counted-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:$i.body.id,entityType:n.ActionDescriptor},Sl={id:$i.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the string loop. Keeps track of the number of iterations that have been executed.",dataType:kT,required:!0,index:0,parentRelationType:O.FixedArguments,parent:qT},JT={id:"counted-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:$i.body.id,entityType:n.ActionDescriptor},WT={id:"counted-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:1,parentRelationType:O.DynamicArgument,parent:JT},HT={id:"counted-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:$i.body.id,entityType:n.ActionDescriptor},YT={id:"counted-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:HT},Cl={id:$i.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the string loop.",inputs:[Sl,WT],outputs:[YT],error:null,parent:null},ss=B[n.BuiltInBaseEntity][L.KEY_VALUE_PARAM],qA={id:"key-value-param-built-in-base-entity-name-property-data-type-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-name-property-data-type",entityType:n.DataType},zT={id:"key-value-param-built-in-base-entity-name-property-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-name-property",entityType:n.Property},JA={like:!1,inferred:!1,id:"key-value-param-built-in-base-entity-name-property-data-type",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:zT},ZT={id:"key-value-param-built-in-base-entity-name-property-parent-ref",type:n.GenericReference,entityId:ss.id,entityType:n.BuiltInBaseEntity},KT={hidden:!1,required:!0,id:"key-value-param-built-in-base-entity-name-property",name:"Parameter name",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:JA,description:"The name of the path parameter",parent:ZT},WA={id:"key-value-param-built-in-base-entity-value-property-data-type-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-value-property-data-type",entityType:n.DataType},XT={id:"key-value-param-built-in-base-entity-value-property-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-value-property",entityType:n.Property},HA={like:!1,inferred:!1,id:"key-value-param-built-in-base-entity-value-property-data-type",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:XT},QT={id:"key-value-param-built-in-base-entity-value-property-parent-ref",type:n.GenericReference,entityId:ss.id,entityType:n.BuiltInBaseEntity},eE={hidden:!1,required:!0,id:"key-value-param-built-in-base-entity-value-property",name:"Parameter Value",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:1,dataType:HA,description:"The value of the path parameter",parent:QT},os={id:ss.id,version:1,description:'An entity with a "name" and "value" property representing a breakdown of a key-value pair.',name:ss.id,type:n.BuiltInBaseEntity,abstract:!1,static:!1,interactive:!0,properties:[KT,eE],abstractMethods:[],methods:[],extends:[]},Fi=B[n.BuiltInBaseEntity][L.HTTP_ENDPOINT].properties,tE={id:"endpointBuiltInCorsPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointBuiltInCorsPropertyDataType"},nE={id:"endpointBuiltInCorsPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:Fi.cors.id},rE={like:!1,inferred:!1,id:"endpointBuiltInCorsPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"endpointBuiltInCorsPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:["*"],parent:tE,autogeneration:null,valueAsType:null},parent:nE},iE={id:"endpointBuiltInBaseEntityRef",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},aE={hidden:!0,required:!0,id:Fi.cors.id,name:"Allowed origins",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:0,dataType:rE,description:"The origins that are allowed to access this endpoint, use * for all origins, or http://example.com/* to be as specific as you need.",parent:iE},sE={id:"endpointBuiltInPathPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointBuiltInPathPropertyDataType"},oE={id:"endpointBuiltInPathPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:Fi.path.id},lE={like:!1,inferred:!1,id:"endpointBuiltInPathPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"endpointBuiltInPathPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.String,value:"/",parent:sE,autogeneration:null,valueAsType:null},parent:oE},cE={id:"endpointBuiltInBaseEntityRefTwo",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},Bl={hidden:!1,required:!0,id:Fi.path.id,name:"Path",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:1,dataType:lE,description:"Path to the endpoint, for example /api/users, or /api/users/{id}, or /api/users/{id}/:name. The path can contain parameters, which are defined by curly braces, and will be passed to the endpoint event as variables with the same name.",parent:cE},dE={id:"endpointBuiltInMethodPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointBuiltInMethodPropertyDataType"},uE={id:"endpointBuiltInMethodPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:"endpointBuiltInMethodProperty"},pE={like:!1,inferred:!1,id:"endpointBuiltInMethodPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:Nn,isList:!0,isNullable:!1,constant:!0,asType:!1,defaultValue:{id:"endpointBuiltInMethodPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,value:"GET",name:P.Enum,parent:dE,autogeneration:null,valueAsType:null},options:["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD","TRACE","CONNECT","CUSTOM"],parent:uE},yE={id:"endpointBuiltInBaseEntityRefThree",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},wl={hidden:!1,required:!0,id:Fi.method.id,name:"Method",version:1,type:n.Property,private:!1,index:2,implements:null,abstract:!0,static:!0,dataType:pE,description:"The HTTP method that this endpoint will respond to, for example GET, POST, PUT, DELETE, etc.",parent:yE},hE={id:"endpointRequestHeadersVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointRequestHeadersVariableDataType"},fE={id:"endpointRequestHeadersArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointRequestHeadersArgumentDeclaration"},mE={like:!1,inferred:!1,id:"endpointRequestHeadersVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"endpointRequestHeadersVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:hE,autogeneration:null,valueAsType:null},parent:fE},TE={id:"endpointRequestBodyArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointRequestBodyArgumentDeclaration"},EE={like:!1,inferred:!1,id:"endpointRequestBodyVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:TE},bE={id:"endpointRequestQueryParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointRequestQueryParamsVariableDataType"},RE={id:"endpointRequestQueryParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointRequestQueryParamsArgumentDeclaration"},vE={like:!1,inferred:!1,id:"endpointRequestQueryParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,asType:!1,entity:os,defaultValue:{id:"endpointRequestQueryParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:[],parent:bE,autogeneration:null,valueAsType:null},parent:RE},gE={id:"endpointPathParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointPathParamsVariableDataType"},IE={id:"endpointPathParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointPathParamsArgumentDeclaration"},DE={like:!1,inferred:!1,id:"endpointPathParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:os,asType:!1,defaultValue:{id:"endpointPathParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:[],parent:gE,autogeneration:null,valueAsType:null},parent:IE},PE={id:"endpointReachedTriggerActionDescriptorRef",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},_l={id:"endpointRequestHeadersArgumentDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the request.",type:n.ValueDescriptor,name:"Request headers",dataType:mE,required:!0,index:0,parentRelationType:O.FixedArguments,parent:PE},AE={id:"endpointReachedTriggerActionDescriptorRefTwo",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},Nl={id:"endpointPathParamsArgumentDeclaration",type:n.ValueDescriptor,description:"A standarized text, without spaces that is added at the end of the domain and routes the request to a specific resource within the target server. For example: /api/users/123, /api/users/123/:name, /api/users/123/:name/:age.",version:1,name:"Path parameters",dataType:DE,required:!0,index:1,parentRelationType:O.FixedArguments,parent:AE},OE={id:"endpointReachedTriggerActionDescriptorRefThree",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},Ml={id:"endpointRequestQueryParamsArgumentDeclaration",version:1,description:"A text with standarized format, without spaces that is added at the end of the URL path, after the ? character. It contains data that might be used to process the request. For example: /api/users?name=John&age=30",type:n.ValueDescriptor,name:"Request query params",dataType:vE,required:!0,index:2,parentRelationType:O.FixedArguments,parent:OE},SE={id:"endpointReachedTriggerActionDescriptorRefFour",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},Vl={id:"endpointRequestBodyArgumentDeclaration",version:1,description:"The main data payload of the request.",type:n.ValueDescriptor,name:"Request body",dataType:EE,index:3,required:!0,parentRelationType:O.FixedArguments,parent:SE},CE={id:"endpointResponseCodeReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"endpointResponseCodeReturnDeclaration"},BE={like:!1,inferred:!1,id:"9ba575b0-6f8e-436d-a3de-3b843622aa17",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:CE},wE={id:"endpointReturnStatementRef",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReturnStatement"},Ll={id:"endpointResponseCodeReturnDeclaration",version:1,description:"A standarized number that represents the status of the response. 200 for OK, 404 for not found, 500 for server error, etc.",type:n.ValueDescriptor,name:"Response code",dataType:BE,required:!0,index:0,parentRelationType:O.FixedReturns,parent:wE},_E={id:"endpointResponseHeadersDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointResponseHeadersDataType"},NE={id:"endpointResponseHeadersReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"endpointResponseHeadersReturnDeclaration"},ME={like:!1,inferred:!1,id:"endpointResponseHeadersDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"endpointResponseHeadersDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:_E,autogeneration:null,valueAsType:null},parent:NE},VE={id:"endpointReturnStatementRefTwo",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReturnStatement"},Gl={id:"endpointResponseHeadersReturnDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the response.",type:n.ValueDescriptor,name:"Response headers",dataType:ME,required:!1,index:1,parentRelationType:O.FixedReturns,parent:VE},LE={id:"endpointResponseBodyReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"endpointResponseBodyReturnDeclaration"},GE={like:!1,inferred:!1,id:"endpointResponseBodyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:LE},$E={id:"endpointReturnStatementRefThree",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReturnStatement"},$l={id:"endpointResponseBodyReturnDeclaration",version:1,description:"The main data payload of the response.",type:n.ValueDescriptor,name:"Response body",dataType:GE,required:!1,index:2,parentRelationType:O.FixedReturns,parent:$E},FE={id:"endpointBuiltInBaseEntityRefFour",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},Fl={id:"endpointReachedTriggerActionDescriptor",type:n.ActionDescriptor,version:1,name:"Endpoint reached",description:"Fired when the endpoint is reached.",inputs:[_l,Nl,Ml,Vl],outputs:[Ll,Gl,$l],error:null,parent:FE},ls={id:L.HTTP_ENDPOINT,version:1,description:"An HTTP endpoint that can be reached by a client from the internet.",name:L.HTTP_ENDPOINT,type:n.BuiltInBaseEntity,interactive:!1,abstract:!0,static:!0,properties:[aE,Bl,wl],abstractMethods:[Fl],extends:[],methods:[]},Vt=B[n.BuiltInBaseEntity].BUILT_IN_RELATIONAL_DATABASE_ENTITY,UE={id:"relational-database-built-in-base-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-identifier-property-data-type-id",entityType:n.DataType},xE={id:"relational-database-built-in-base-entity-identifier-property-ref-id",type:n.GenericReference,entityId:Vt.properties.identifier.id,entityType:n.Property},YA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-identifier-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:null,parent:UE,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:xE},Zr={id:"relational-database-built-in-base-entity-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},cs={hidden:!1,required:!0,id:Vt.properties.identifier.id,name:"Identifier name",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:0,dataType:YA,description:"The name of the main database inside of the server instance where the data will be stored.",parent:Zr},zA={id:"relational-database-built-in-base-entity-username-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-username-property-data-type-idd",entityType:n.DataType},jE={id:"relational-database-built-in-base-entity-username-property-ref-id",type:n.GenericReference,entityId:Vt.properties.username.id,entityType:n.Property},ZA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-username-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-username-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"postgres",parent:{id:"relational-database-built-in-base-entity-username-property-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-username-property-data-type-id",entityType:n.DataType},autogeneration:null,valueAsType:null},parent:jE},ds={hidden:!1,required:!0,id:Vt.properties.username.id,name:"Username",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:1,dataType:ZA,description:"The username that will be used to connect to the database.",parent:Zr},KA={id:"relational-database-built-in-base-entity-password-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-password-property-data-type-id",entityType:n.DataType},kE={id:"relational-database-built-in-base-entity-password-property-ref-id",type:n.GenericReference,entityId:Vt.properties.password.id,entityType:n.Property},XA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-password-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:kE},us={hidden:!1,required:!0,id:Vt.properties.password.id,name:"Password",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:2,dataType:XA,description:"The password that will be used to connect to the database.",parent:Zr},qE={id:"relational-database-built-in-base-entity-min-size-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-min-size-property-data-type-id",entityType:n.DataType},JE={id:"relational-database-built-in-base-entity-min-size-property-ref-id",type:n.GenericReference,entityId:Vt.properties.minSize.id,entityType:n.Property},QA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-min-size-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-min-size-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:6,parent:qE,autogeneration:null,valueAsType:null},parent:JE},ps={hidden:!0,required:!0,id:Vt.properties.minSize.id,name:"Minimum GB size",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:3,dataType:QA,description:"The minimum size of the database in GB.",parent:Zr},WE={id:"relational-database-built-in-base-entity-default-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-default-property-data-type-id",entityType:n.DataType},HE={id:"relational-database-built-in-base-entity-default-property-ref-id",type:n.GenericReference,entityId:Vt.properties.default.id,entityType:n.Property},eO={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-default-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:_n,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-default-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!1,parent:WE,autogeneration:null,valueAsType:null},parent:HE},Ul={hidden:!0,required:!0,id:Vt.properties.default.id,name:"Default",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:4,dataType:eO,description:"If true, this database will be the default database for the server instance and all the new entities.",parent:Zr},YE={id:"relational-database-built-in-base-entity-autoscaling-property-ref-id",type:n.GenericReference,entityId:Vt.properties.autoscaling.id,entityType:n.Property},zE={id:"relational-database-built-in-base-entity-autoscaling-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-autoscaling-property-data-type-id",entityType:n.DataType},tO={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-autoscaling-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:_n,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-autoscaling-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!1,parent:zE,autogeneration:null,valueAsType:null},parent:YE},ZE={id:"relational-database-built-in-base-entity-autoscaling-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},xl={hidden:!0,required:!0,id:Vt.properties.autoscaling.id,name:"Auto-scaling",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:4,dataType:tO,description:"If true, this database will automatically scale up or down in memory size, based on the usage.",parent:ZE},Mn={id:L.RELATIONAL_DATABASE,version:1,description:"This entity provisions a relational database in the cloud.",name:L.RELATIONAL_DATABASE,type:n.BuiltInBaseEntity,abstract:!0,static:!0,interactive:!1,properties:[cs,ds,us,ps,Ul,xl],abstractMethods:[],methods:[],extends:[]},KE={type:n.GenericReference,entityId:"persisted-built-in-base-entity-ref-id",entityType:n.BuiltInBaseEntity,id:Ct.DeletePersistedEntity},jl={type:n.FunctionDeclaration,id:Ct.DeletePersistedEntity,name:Ct.DeletePersistedEntity,description:"Permanently deletes the current copy of an entity from the database",version:1,parent:KE,inputs:[],calls:[],implements:null,collapsed:!1,returnStatements:[],index:0,private:!1,x:0,y:0},XE={type:n.GenericReference,entityId:"persisted-built-in-base-entity-ref-id",entityType:n.BuiltInBaseEntity,id:Ct.SoftDeletePersistedEntity},QE={type:n.FunctionDeclaration,id:Ct.SoftDeletePersistedEntity,name:Ct.SoftDeletePersistedEntity,description:"Designates the entity as deleted, but does not remove it from the database.",version:1,parent:XE,inputs:[],calls:[],implements:null,collapsed:!1,returnStatements:[],index:0,private:!1,x:0,y:0},eb=B[n.BuiltInBaseEntity][L.PERSISTED_ENTITY].properties,nO={id:"persisted-built-in-base-entity-database-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-database-property-data-type-id",entityType:n.DataType},tb={id:"persisted-built-in-base-entity-database-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-database-property-id",entityType:n.Property},rO={like:!1,inferred:!1,id:"persisted-built-in-base-entity-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:Mn,asType:!1,defaultValue:null,parent:tb},nb={id:"persisted-built-in-base-entity-database-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},Ui={hidden:!0,required:!0,id:eb.database.id,name:"Database",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:0,dataType:rO,description:"The database that the entity belongs to.",parent:nb},rb={id:"persisted-built-in-base-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-identifier-property-data-type-id",entityType:n.DataType},ib={id:"persisted-built-in-base-entity-identifier-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-identifier-property-id",entityType:n.Property},iO={like:!1,inferred:!1,id:"persisted-built-in-base-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:qa,asType:!1,defaultValue:{id:"persisted-built-in-base-entity-identifier-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.UUID,value:null,parent:rb,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:ib},ab={id:"persisted-built-in-base-entity-identifier-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},sb={hidden:!1,required:!0,id:eb.identifier.id,name:"Identifier",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:iO,description:"Auto-generated unique identifier for the entity, can be used to identify the entity among other entities of the same type.",parent:ab},aO={id:"persisted-built-in-base-entity-deleted-at-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-deleted-at-property-data-type-id",entityType:n.DataType},ob={id:"persisted-built-in-base-entity-deleted-at-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-deleted-at-property-id",entityType:n.Property},lb={like:!1,inferred:!1,id:"persisted-built-in-base-entity-deleted-at-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!0,constant:!1,entity:pn,asType:!1,defaultValue:null,parent:ob},cb={id:"persisted-built-in-base-entity-deleted-at-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},db={hidden:!1,required:!0,id:"persisted-built-in-base-entity-deleted-at-property-id",name:"Deleted at",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:lb,description:"The date and time when the entity was deleted.",parent:cb},sO={id:"persisted-built-in-base-entity-created-at-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-created-at-property-data-type-id",entityType:n.DataType},ub={id:"persisted-built-in-base-entity-created-at-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-created-at-property-id",entityType:n.Property},pb={like:!1,inferred:!1,id:"persisted-built-in-base-entity-created-at-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:pn,asType:!1,defaultValue:null,parent:ub},yb={id:"persisted-built-in-base-entity-created-at-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},hb={hidden:!1,required:!0,id:"persisted-built-in-base-entity-created-at-property-id",name:"Created at",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:pb,description:"The date and time when the entity was created.",parent:yb},oO={id:"persisted-built-in-base-entity-updated-at-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-updated-at-property-data-type-id",entityType:n.DataType},fb={id:"persisted-built-in-base-entity-updated-at-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-updated-at-property-id",entityType:n.Property},mb={like:!1,inferred:!1,id:"persisted-built-in-base-entity-updated-at-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:pn,asType:!1,defaultValue:null,parent:fb},Tb={id:"persisted-built-in-base-entity-updated-at-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},Eb={hidden:!1,required:!0,id:"persisted-built-in-base-entity-updated-at-property-id",name:"Updated at",version:1,type:n.Property,private:!1,implements:null,abstract:!1,static:!1,index:0,dataType:mb,description:"The date and time when the entity was last updated.",parent:Tb},ke={id:L.PERSISTED_ENTITY,version:1,description:"An entity that is permanently stored in the database and can be accessed at any point.",name:L.PERSISTED_ENTITY,type:n.BuiltInBaseEntity,abstract:!0,static:!1,interactive:!0,abstractMethods:[],properties:[Ui,sb,db,hb,Eb],methods:[jl,QE],extends:[]},bb={id:"cron-job-triggered-function-declaration-blueprint-parent-ref-id",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},kl={id:"cron-job-triggered-function-declaration-blueprint-id",name:"Cron job triggered",version:1,type:n.ActionDescriptor,description:"Executed when the cron job is triggered",inputs:[],error:null,outputs:[],parent:bb},Rb=B[n.BuiltInBaseEntity].BUILT_IN_CRON_JOB_ENTITY,lO={id:"cron-job-built-in-base-entity-expression-property-data-type-ref",type:n.GenericReference,entityId:"cron-job-built-in-base-entity-expression-property-data-type",entityType:n.DataType},vb={id:"cron-job-built-in-base-entity-expression-property-ref",type:n.GenericReference,entityId:Rb.properties.expression.id,entityType:n.Property},cO={like:!1,inferred:!1,id:"cron-job-built-in-base-entity-expression-property-data-type",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:vb},gb={id:"cron-job-built-in-base-entity-ref",type:n.GenericReference,entityId:L.CRON_JOB,entityType:n.BuiltInBaseEntity},Ib={hidden:!1,required:!0,id:Rb.properties.expression.id,name:"Cron expression",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:0,dataType:cO,description:"The cron-job expression that defines when the cron-job job should be triggered. The expression should be in the format of a cron-job expression.",parent:gb},ql={id:L.CRON_JOB,version:1,description:"This entity represents a scheduled trigger. The action on this entity will be executed one the time set by the cron-job expression is reached.",name:L.CRON_JOB,type:n.BuiltInBaseEntity,abstract:!0,static:!0,interactive:!1,properties:[Ib],methods:[],abstractMethods:[kl],extends:[]},Db={type:n.GenericReference,id:"execution-built-in-entity-abort-method-parent-ref-id",entityType:n.BuiltInBaseEntity,entityId:"execution-built-in-entity-id"},Jl={id:"execution-built-in-entity-abort-method-id",type:n.FunctionDeclaration,version:1,name:Ct.AbortExecution,description:"Aborts the execution of the entity",inputs:[],returnStatements:[],calls:[],implements:null,private:!1,collapsed:!1,index:null,x:0,y:0,parent:Db},Wl={id:L.EXECUTION,type:n.BuiltInBaseEntity,version:1,name:L.EXECUTION,description:"A reference to an ongoing execution of any entity that can be called. Eg: Operations, custom trigger calls, etc.",static:!1,abstract:!1,interactive:!0,extends:[],properties:[],methods:[Jl],abstractMethods:[]},dO=B[n.Condition]["not-empty"],Pb={type:n.GenericReference,id:"not-empty-condition-ref",entityType:n.ActionDescriptor,entityId:Mt.NotEmpty},Ab={id:dO.inputs.leftHand.id,type:n.ValueDescriptor,version:1,name:"Value",description:"The value to check if it is not empty",dataType:null,required:!0,parentRelationType:O.FixedArguments,index:0,parent:Pb},cr={type:n.ActionDescriptor,id:Mt.NotEmpty,version:1,name:Mt.NotEmpty,description:"Checks if the value is not empty",parent:null,inputs:[Ab],outputs:[],error:null},Ob={[Mt.NotEmpty]:cr},Kr=B[n.Condition]["more-than-or-equal"],Sb={type:n.GenericReference,id:"more-than-or-equal-condition-left-hand-argument-data-type-parent-ref",entityType:n.ValueDescriptor,entityId:Kr.inputs.leftHand.id},Cb={type:n.DataType,id:Kr.inputs.leftHand.dataType.id,version:1,entity:X,defaultValue:null,like:!1,isList:!1,inferred:!1,andChildrenGroup:null,orChildrenGroup:null,isNullable:!1,constant:!1,asType:!1,parent:Sb},Bb={type:n.GenericReference,id:"more-than-or-equal-condition-left-hand-argument-parent-ref",entityType:n.ActionDescriptor,entityId:Ge.MoreThanOrEqual},wb={id:Kr.inputs.leftHand.id,type:n.ValueDescriptor,version:1,name:"First value",description:"The first value to compare",dataType:Cb,required:!0,parentRelationType:O.FixedArguments,index:0,parent:Bb},_b={type:n.GenericReference,id:"more-than-or-equal-condition-right-hand-argument-data-type-parent-ref",entityType:n.ValueDescriptor,entityId:Kr.inputs.rightHand.id},Nb={type:n.DataType,id:Kr.inputs.rightHand.dataType.id,version:1,entity:X,defaultValue:null,like:!1,isList:!1,inferred:!1,andChildrenGroup:null,orChildrenGroup:null,isNullable:!1,constant:!1,asType:!1,parent:_b},Mb={type:n.GenericReference,id:"more-than-or-equal-condition-right-hand-argument-parent-ref",entityType:n.ActionDescriptor,entityId:Ge.MoreThanOrEqual},Vb={id:Kr.inputs.rightHand.id,type:n.ValueDescriptor,version:1,name:"Second value",description:"The second value to compare",dataType:Nb,required:!0,parentRelationType:O.FixedArguments,index:1,parent:Mb},Xr={type:n.ActionDescriptor,id:Ge.MoreThanOrEqual,version:1,name:Ge.MoreThanOrEqual,description:"Checks if the value is not empty",parent:null,inputs:[wb,Vb],outputs:[],error:null},Lb={[Ge.MoreThanOrEqual]:Xr},uO={...Ob,...Lb},ys={type:n.ActionDescriptor,id:dn.PROJECT_PUBLICATION_COMPLETED,version:1,name:dn.PROJECT_PUBLICATION_COMPLETED,description:"The event that is triggered when the project has completed its publication and all its code and resurces are now deployed and ready to be used by the users",parent:null,inputs:[],outputs:[],error:null},pO={[dn.PROJECT_PUBLICATION_COMPLETED]:ys},Hl=B[n.ValueDescriptor][Qo.ActionOngoingProcessOutputValue],Gb={type:n.GenericReference,id:"182f767f-50e8-4394-ba5f-43e78c232733",entityType:n.ValueDescriptor,entityId:Hl.id},$b={like:!1,inferred:!1,id:Hl.dataType.id,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Wl,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Gb},Yl={id:Hl.id,type:n.ValueDescriptor,description:"A value that represents the ongoing process of the parent action",version:1,name:"Process",dataType:$b,required:!0,index:0,parent:null,parentRelationType:O.OngoingProcessExecution};var ne;(function(r){r.assertEqual=a=>a;function e(a){}r.assertIs=e;function t(a){throw new Error}r.assertNever=t,r.arrayToEnum=a=>{const s={};for(const o of a)s[o]=o;return s},r.getValidEnumValues=a=>{const s=r.objectKeys(a).filter(l=>typeof a[a[l]]!="number"),o={};for(const l of s)o[l]=a[l];return r.objectValues(o)},r.objectValues=a=>r.objectKeys(a).map(function(s){return a[s]}),r.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const s=[];for(const o in a)Object.prototype.hasOwnProperty.call(a,o)&&s.push(o);return s},r.find=(a,s)=>{for(const o of a)if(s(o))return o},r.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&isFinite(a)&&Math.floor(a)===a;function i(a,s=" | "){return a.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}r.joinValues=i,r.jsonStringifyReplacer=(a,s)=>typeof s=="bigint"?s.toString():s})(ne||(ne={}));var zl;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(zl||(zl={}));const G=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Vn=r=>{switch(typeof r){case"undefined":return G.undefined;case"string":return G.string;case"number":return isNaN(r)?G.nan:G.number;case"boolean":return G.boolean;case"function":return G.function;case"bigint":return G.bigint;case"symbol":return G.symbol;case"object":return Array.isArray(r)?G.array:r===null?G.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?G.promise:typeof Map<"u"&&r instanceof Map?G.map:typeof Set<"u"&&r instanceof Set?G.set:typeof Date<"u"&&r instanceof Date?G.date:G.object;default:return G.unknown}},w=ne.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"]),yO=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:");class It extends Error{constructor(e){super(),this.issues=[],this.addIssue=i=>{this.issues=[...this.issues,i]},this.addIssues=(i=[])=>{this.issues=[...this.issues,...i]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(s){return s.message},i={_errors:[]},a=s=>{for(const o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(a);else if(o.code==="invalid_return_type")a(o.returnTypeError);else if(o.code==="invalid_arguments")a(o.argumentsError);else if(o.path.length===0)i._errors.push(t(o));else{let l=i,p=0;for(;p<o.path.length;){const y=o.path[p];p===o.path.length-1?(l[y]=l[y]||{_errors:[]},l[y]._errors.push(t(o))):l[y]=l[y]||{_errors:[]},l=l[y],p++}}};return a(this),i}static assert(e){if(!(e instanceof It))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ne.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},i=[];for(const a of this.issues)a.path.length>0?(t[a.path[0]]=t[a.path[0]]||[],t[a.path[0]].push(e(a))):i.push(e(a));return{formErrors:i,fieldErrors:t}}get formErrors(){return this.flatten()}}It.create=r=>new It(r);const Qr=(r,e)=>{let t;switch(r.code){case w.invalid_type:r.received===G.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case w.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,ne.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:t=`Unrecognized key(s) in object: ${ne.joinValues(r.keys,", ")}`;break;case w.invalid_union:t="Invalid input";break;case w.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${ne.joinValues(r.options)}`;break;case w.invalid_enum_value:t=`Invalid enum value. Expected ${ne.joinValues(r.options)}, received '${r.received}'`;break;case w.invalid_arguments:t="Invalid function arguments";break;case w.invalid_return_type:t="Invalid function return type";break;case w.invalid_date:t="Invalid date";break;case w.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:ne.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case w.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case w.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case w.custom:t="Invalid input";break;case w.invalid_intersection_types:t="Intersection results could not be merged";break;case w.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case w.not_finite:t="Number must be finite";break;default:t=e.defaultError,ne.assertNever(r)}return{message:t}};let Fb=Qr;function hO(r){Fb=r}function hs(){return Fb}const fs=r=>{const{data:e,path:t,errorMaps:i,issueData:a}=r,s=[...t,...a.path||[]],o={...a,path:s};if(a.message!==void 0)return{...a,path:s,message:a.message};let l="";const p=i.filter(y=>!!y).slice().reverse();for(const y of p)l=y(o,{data:e,defaultError:l}).message;return{...a,path:s,message:l}},fO=[];function V(r,e){const t=hs(),i=fs({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===Qr?void 0:Qr].filter(a=>!!a)});r.common.issues.push(i)}class it{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const i=[];for(const a of t){if(a.status==="aborted")return J;a.status==="dirty"&&e.dirty(),i.push(a.value)}return{status:e.value,value:i}}static async mergeObjectAsync(e,t){const i=[];for(const a of t){const s=await a.key,o=await a.value;i.push({key:s,value:o})}return it.mergeObjectSync(e,i)}static mergeObjectSync(e,t){const i={};for(const a of t){const{key:s,value:o}=a;if(s.status==="aborted"||o.status==="aborted")return J;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||a.alwaysSet)&&(i[s.value]=o.value)}return{status:e.value,value:i}}}const J=Object.freeze({status:"aborted"}),ei=r=>({status:"dirty",value:r}),yt=r=>({status:"valid",value:r}),Zl=r=>r.status==="aborted",Kl=r=>r.status==="dirty",xi=r=>r.status==="valid",ji=r=>typeof Promise<"u"&&r instanceof Promise;function ms(r,e,t,i){if(t==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?i:t==="a"?i.call(r):i?i.value:e.get(r)}function Ub(r,e,t,i,a){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?a.call(r,t):a?a.value=t:e.set(r,t),t}typeof SuppressedError=="function"&&SuppressedError;var j;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(j||(j={}));var ki,qi;class Xt{constructor(e,t,i,a){this._cachedPath=[],this.parent=e,this.data=t,this._path=i,this._key=a}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const xb=(r,e)=>{if(xi(e))return{success:!0,data:e.value};if(!r.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 It(r.common.issues);return this._error=t,this._error}}};function Z(r){if(!r)return{};const{errorMap:e,invalid_type_error:t,required_error:i,description:a}=r;if(e&&(t||i))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(o,l)=>{var p,y;const{message:h}=r;return o.code==="invalid_enum_value"?{message:h??l.defaultError}:typeof l.data>"u"?{message:(p=h??i)!==null&&p!==void 0?p:l.defaultError}:o.code!=="invalid_type"?{message:l.defaultError}:{message:(y=h??t)!==null&&y!==void 0?y:l.defaultError}},description:a}}class Q{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Vn(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Vn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new it,ctx:{common:e.parent.common,data:e.data,parsedType:Vn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(ji(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 i=this.safeParse(e,t);if(i.success)return i.data;throw i.error}safeParse(e,t){var i;const a={common:{issues:[],async:(i=t==null?void 0:t.async)!==null&&i!==void 0?i:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Vn(e)},s=this._parseSync({data:e,path:a.path,parent:a});return xb(a,s)}async parseAsync(e,t){const i=await this.safeParseAsync(e,t);if(i.success)return i.data;throw i.error}async safeParseAsync(e,t){const i={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:Vn(e)},a=this._parse({data:e,path:i.path,parent:i}),s=await(ji(a)?a:Promise.resolve(a));return xb(i,s)}refine(e,t){const i=a=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(a):t;return this._refinement((a,s)=>{const o=e(a),l=()=>s.addIssue({code:w.custom,...i(a)});return typeof Promise<"u"&&o instanceof Promise?o.then(p=>p?!0:(l(),!1)):o?!0:(l(),!1)})}refinement(e,t){return this._refinement((i,a)=>e(i)?!0:(a.addIssue(typeof t=="function"?t(i,a):t),!1))}_refinement(e){return new zt({schema:this,typeName:q.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return en.create(this,this._def)}nullable(){return Fn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Yt.create(this,this._def)}promise(){return ii.create(this,this._def)}or(e){return Yi.create([this,e],this._def)}and(e){return zi.create(this,e,this._def)}transform(e){return new zt({...Z(this._def),schema:this,typeName:q.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new ea({...Z(this._def),innerType:this,defaultValue:t,typeName:q.ZodDefault})}brand(){return new ec({typeName:q.ZodBranded,type:this,...Z(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new ta({...Z(this._def),innerType:this,catchValue:t,typeName:q.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return na.create(this,e)}readonly(){return ra.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const mO=/^c[^\s-]{8,}$/i,TO=/^[0-9a-z]+$/,EO=/^[0-9A-HJKMNP-TV-Z]{26}$/,bO=/^[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,RO=/^[a-z0-9_-]{21}$/i,vO=/^[-+]?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)?)??$/,gO=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,IO="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Xl;const DO=/^(?:(?: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])$/,PO=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,AO=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,jb="((\\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])))",OO=new RegExp(`^${jb}$`);function kb(r){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`),e}function SO(r){return new RegExp(`^${kb(r)}$`)}function qb(r){let e=`${jb}T${kb(r)}`;const t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function CO(r,e){return!!((e==="v4"||!e)&&DO.test(r)||(e==="v6"||!e)&&PO.test(r))}class Ht extends Q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==G.string){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.string,received:s.parsedType}),J}const i=new it;let a;for(const s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),i.dirty());else if(s.kind==="max")e.data.length>s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),i.dirty());else if(s.kind==="length"){const o=e.data.length>s.value,l=e.data.length<s.value;(o||l)&&(a=this._getOrReturnCtx(e,a),o?V(a,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):l&&V(a,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),i.dirty())}else if(s.kind==="email")gO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"email",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="emoji")Xl||(Xl=new RegExp(IO,"u")),Xl.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"emoji",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="uuid")bO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"uuid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="nanoid")RO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"nanoid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="cuid")mO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"cuid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="cuid2")TO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"cuid2",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="ulid")EO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"ulid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),V(a,{validation:"url",code:w.invalid_string,message:s.message}),i.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"regex",code:w.invalid_string,message:s.message}),i.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),i.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:{startsWith:s.value},message:s.message}),i.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:{endsWith:s.value},message:s.message}),i.dirty()):s.kind==="datetime"?qb(s).test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:"datetime",message:s.message}),i.dirty()):s.kind==="date"?OO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:"date",message:s.message}),i.dirty()):s.kind==="time"?SO(s).test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:"time",message:s.message}),i.dirty()):s.kind==="duration"?vO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"duration",code:w.invalid_string,message:s.message}),i.dirty()):s.kind==="ip"?CO(e.data,s.version)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"ip",code:w.invalid_string,message:s.message}),i.dirty()):s.kind==="base64"?AO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"base64",code:w.invalid_string,message:s.message}),i.dirty()):ne.assertNever(s);return{status:i.value,value:e.data}}_regex(e,t,i){return this.refinement(a=>e.test(a),{validation:t,code:w.invalid_string,...j.errToObj(i)})}_addCheck(e){return new Ht({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...j.errToObj(e)})}url(e){return this._addCheck({kind:"url",...j.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...j.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...j.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...j.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...j.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...j.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...j.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...j.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...j.errToObj(e)})}datetime(e){var t,i;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:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(i=e==null?void 0:e.local)!==null&&i!==void 0?i:!1,...j.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,...j.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...j.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...j.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...j.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...j.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...j.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...j.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...j.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...j.errToObj(t)})}nonempty(e){return this.min(1,j.errToObj(e))}trim(){return new Ht({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Ht({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Ht({...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 isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}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}}Ht.create=r=>{var e;return new Ht({checks:[],typeName:q.ZodString,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...Z(r)})};function BO(r,e){const t=(r.toString().split(".")[1]||"").length,i=(e.toString().split(".")[1]||"").length,a=t>i?t:i,s=parseInt(r.toFixed(a).replace(".","")),o=parseInt(e.toFixed(a).replace(".",""));return s%o/Math.pow(10,a)}class Ln extends Q{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)!==G.number){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.number,received:s.parsedType}),J}let i;const a=new it;for(const s of this._def.checks)s.kind==="int"?ne.isInteger(e.data)||(i=this._getOrReturnCtx(e,i),V(i,{code:w.invalid_type,expected:"integer",received:"float",message:s.message}),a.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="multipleOf"?BO(e.data,s.value)!==0&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(i=this._getOrReturnCtx(e,i),V(i,{code:w.not_finite,message:s.message}),a.dirty()):ne.assertNever(s);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,j.toString(t))}gt(e,t){return this.setLimit("min",e,!1,j.toString(t))}lte(e,t){return this.setLimit("max",e,!0,j.toString(t))}lt(e,t){return this.setLimit("max",e,!1,j.toString(t))}setLimit(e,t,i,a){return new Ln({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:i,message:j.toString(a)}]})}_addCheck(e){return new Ln({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:j.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:j.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:j.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:j.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:j.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:j.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"&&ne.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const i of this._def.checks){if(i.kind==="finite"||i.kind==="int"||i.kind==="multipleOf")return!0;i.kind==="min"?(t===null||i.value>t)&&(t=i.value):i.kind==="max"&&(e===null||i.value<e)&&(e=i.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Ln.create=r=>new Ln({checks:[],typeName:q.ZodNumber,coerce:(r==null?void 0:r.coerce)||!1,...Z(r)});class Gn extends Q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==G.bigint){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.bigint,received:s.parsedType}),J}let i;const a=new it;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):ne.assertNever(s);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,j.toString(t))}gt(e,t){return this.setLimit("min",e,!1,j.toString(t))}lte(e,t){return this.setLimit("max",e,!0,j.toString(t))}lt(e,t){return this.setLimit("max",e,!1,j.toString(t))}setLimit(e,t,i,a){return new Gn({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:i,message:j.toString(a)}]})}_addCheck(e){return new Gn({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:j.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:j.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}}Gn.create=r=>{var e;return new Gn({checks:[],typeName:q.ZodBigInt,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...Z(r)})};class Ji extends Q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==G.boolean){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.boolean,received:i.parsedType}),J}return yt(e.data)}}Ji.create=r=>new Ji({typeName:q.ZodBoolean,coerce:(r==null?void 0:r.coerce)||!1,...Z(r)});class dr extends Q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==G.date){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.date,received:s.parsedType}),J}if(isNaN(e.data.getTime())){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_date}),J}const i=new it;let a;for(const s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),i.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),i.dirty()):ne.assertNever(s);return{status:i.value,value:new Date(e.data.getTime())}}_addCheck(e){return new dr({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:j.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:j.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}}dr.create=r=>new dr({checks:[],coerce:(r==null?void 0:r.coerce)||!1,typeName:q.ZodDate,...Z(r)});class Ts extends Q{_parse(e){if(this._getType(e)!==G.symbol){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.symbol,received:i.parsedType}),J}return yt(e.data)}}Ts.create=r=>new Ts({typeName:q.ZodSymbol,...Z(r)});class Wi extends Q{_parse(e){if(this._getType(e)!==G.undefined){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.undefined,received:i.parsedType}),J}return yt(e.data)}}Wi.create=r=>new Wi({typeName:q.ZodUndefined,...Z(r)});class Hi extends Q{_parse(e){if(this._getType(e)!==G.null){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.null,received:i.parsedType}),J}return yt(e.data)}}Hi.create=r=>new Hi({typeName:q.ZodNull,...Z(r)});class ti extends Q{constructor(){super(...arguments),this._any=!0}_parse(e){return yt(e.data)}}ti.create=r=>new ti({typeName:q.ZodAny,...Z(r)});class ur extends Q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return yt(e.data)}}ur.create=r=>new ur({typeName:q.ZodUnknown,...Z(r)});class Tn extends Q{_parse(e){const t=this._getOrReturnCtx(e);return V(t,{code:w.invalid_type,expected:G.never,received:t.parsedType}),J}}Tn.create=r=>new Tn({typeName:q.ZodNever,...Z(r)});class Es extends Q{_parse(e){if(this._getType(e)!==G.undefined){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.void,received:i.parsedType}),J}return yt(e.data)}}Es.create=r=>new Es({typeName:q.ZodVoid,...Z(r)});class Yt extends Q{_parse(e){const{ctx:t,status:i}=this._processInputParams(e),a=this._def;if(t.parsedType!==G.array)return V(t,{code:w.invalid_type,expected:G.array,received:t.parsedType}),J;if(a.exactLength!==null){const o=t.data.length>a.exactLength.value,l=t.data.length<a.exactLength.value;(o||l)&&(V(t,{code:o?w.too_big:w.too_small,minimum:l?a.exactLength.value:void 0,maximum:o?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),i.dirty())}if(a.minLength!==null&&t.data.length<a.minLength.value&&(V(t,{code:w.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),i.dirty()),a.maxLength!==null&&t.data.length>a.maxLength.value&&(V(t,{code:w.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),i.dirty()),t.common.async)return Promise.all([...t.data].map((o,l)=>a.type._parseAsync(new Xt(t,o,t.path,l)))).then(o=>it.mergeArray(i,o));const s=[...t.data].map((o,l)=>a.type._parseSync(new Xt(t,o,t.path,l)));return it.mergeArray(i,s)}get element(){return this._def.type}min(e,t){return new Yt({...this._def,minLength:{value:e,message:j.toString(t)}})}max(e,t){return new Yt({...this._def,maxLength:{value:e,message:j.toString(t)}})}length(e,t){return new Yt({...this._def,exactLength:{value:e,message:j.toString(t)}})}nonempty(e){return this.min(1,e)}}Yt.create=(r,e)=>new Yt({type:r,minLength:null,maxLength:null,exactLength:null,typeName:q.ZodArray,...Z(e)});function ni(r){if(r instanceof qe){const e={};for(const t in r.shape){const i=r.shape[t];e[t]=en.create(ni(i))}return new qe({...r._def,shape:()=>e})}else return r instanceof Yt?new Yt({...r._def,type:ni(r.element)}):r instanceof en?en.create(ni(r.unwrap())):r instanceof Fn?Fn.create(ni(r.unwrap())):r instanceof Qt?Qt.create(r.items.map(e=>ni(e))):r}class qe extends Q{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=ne.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==G.object){const y=this._getOrReturnCtx(e);return V(y,{code:w.invalid_type,expected:G.object,received:y.parsedType}),J}const{status:i,ctx:a}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),l=[];if(!(this._def.catchall instanceof Tn&&this._def.unknownKeys==="strip"))for(const y in a.data)o.includes(y)||l.push(y);const p=[];for(const y of o){const h=s[y],m=a.data[y];p.push({key:{status:"valid",value:y},value:h._parse(new Xt(a,m,a.path,y)),alwaysSet:y in a.data})}if(this._def.catchall instanceof Tn){const y=this._def.unknownKeys;if(y==="passthrough")for(const h of l)p.push({key:{status:"valid",value:h},value:{status:"valid",value:a.data[h]}});else if(y==="strict")l.length>0&&(V(a,{code:w.unrecognized_keys,keys:l}),i.dirty());else if(y!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const y=this._def.catchall;for(const h of l){const m=a.data[h];p.push({key:{status:"valid",value:h},value:y._parse(new Xt(a,m,a.path,h)),alwaysSet:h in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const y=[];for(const h of p){const m=await h.key,R=await h.value;y.push({key:m,value:R,alwaysSet:h.alwaysSet})}return y}).then(y=>it.mergeObjectSync(i,y)):it.mergeObjectSync(i,p)}get shape(){return this._def.shape()}strict(e){return j.errToObj,new qe({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,i)=>{var a,s,o,l;const p=(o=(s=(a=this._def).errorMap)===null||s===void 0?void 0:s.call(a,t,i).message)!==null&&o!==void 0?o:i.defaultError;return t.code==="unrecognized_keys"?{message:(l=j.errToObj(e).message)!==null&&l!==void 0?l:p}:{message:p}}}:{}})}strip(){return new qe({...this._def,unknownKeys:"strip"})}passthrough(){return new qe({...this._def,unknownKeys:"passthrough"})}extend(e){return new qe({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new qe({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:q.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new qe({...this._def,catchall:e})}pick(e){const t={};return ne.objectKeys(e).forEach(i=>{e[i]&&this.shape[i]&&(t[i]=this.shape[i])}),new qe({...this._def,shape:()=>t})}omit(e){const t={};return ne.objectKeys(this.shape).forEach(i=>{e[i]||(t[i]=this.shape[i])}),new qe({...this._def,shape:()=>t})}deepPartial(){return ni(this)}partial(e){const t={};return ne.objectKeys(this.shape).forEach(i=>{const a=this.shape[i];e&&!e[i]?t[i]=a:t[i]=a.optional()}),new qe({...this._def,shape:()=>t})}required(e){const t={};return ne.objectKeys(this.shape).forEach(i=>{if(e&&!e[i])t[i]=this.shape[i];else{let s=this.shape[i];for(;s instanceof en;)s=s._def.innerType;t[i]=s}}),new qe({...this._def,shape:()=>t})}keyof(){return Jb(ne.objectKeys(this.shape))}}qe.create=(r,e)=>new qe({shape:()=>r,unknownKeys:"strip",catchall:Tn.create(),typeName:q.ZodObject,...Z(e)}),qe.strictCreate=(r,e)=>new qe({shape:()=>r,unknownKeys:"strict",catchall:Tn.create(),typeName:q.ZodObject,...Z(e)}),qe.lazycreate=(r,e)=>new qe({shape:r,unknownKeys:"strip",catchall:Tn.create(),typeName:q.ZodObject,...Z(e)});class Yi extends Q{_parse(e){const{ctx:t}=this._processInputParams(e),i=this._def.options;function a(s){for(const l of s)if(l.result.status==="valid")return l.result;for(const l of s)if(l.result.status==="dirty")return t.common.issues.push(...l.ctx.common.issues),l.result;const o=s.map(l=>new It(l.ctx.common.issues));return V(t,{code:w.invalid_union,unionErrors:o}),J}if(t.common.async)return Promise.all(i.map(async s=>{const o={...t,common:{...t.common,issues:[]},parent:null};return{result:await s._parseAsync({data:t.data,path:t.path,parent:o}),ctx:o}})).then(a);{let s;const o=[];for(const p of i){const y={...t,common:{...t.common,issues:[]},parent:null},h=p._parseSync({data:t.data,path:t.path,parent:y});if(h.status==="valid")return h;h.status==="dirty"&&!s&&(s={result:h,ctx:y}),y.common.issues.length&&o.push(y.common.issues)}if(s)return t.common.issues.push(...s.ctx.common.issues),s.result;const l=o.map(p=>new It(p));return V(t,{code:w.invalid_union,unionErrors:l}),J}}get options(){return this._def.options}}Yi.create=(r,e)=>new Yi({options:r,typeName:q.ZodUnion,...Z(e)});const En=r=>r instanceof Ki?En(r.schema):r instanceof zt?En(r.innerType()):r instanceof Xi?[r.value]:r instanceof $n?r.options:r instanceof Qi?ne.objectValues(r.enum):r instanceof ea?En(r._def.innerType):r instanceof Wi?[void 0]:r instanceof Hi?[null]:r instanceof en?[void 0,...En(r.unwrap())]:r instanceof Fn?[null,...En(r.unwrap())]:r instanceof ec||r instanceof ra?En(r.unwrap()):r instanceof ta?En(r._def.innerType):[];class bs extends Q{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.object)return V(t,{code:w.invalid_type,expected:G.object,received:t.parsedType}),J;const i=this.discriminator,a=t.data[i],s=this.optionsMap.get(a);return s?t.common.async?s._parseAsync({data:t.data,path:t.path,parent:t}):s._parseSync({data:t.data,path:t.path,parent:t}):(V(t,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[i]}),J)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,i){const a=new Map;for(const s of t){const o=En(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const l of o){if(a.has(l))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(l)}`);a.set(l,s)}}return new bs({typeName:q.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:a,...Z(i)})}}function Ql(r,e){const t=Vn(r),i=Vn(e);if(r===e)return{valid:!0,data:r};if(t===G.object&&i===G.object){const a=ne.objectKeys(e),s=ne.objectKeys(r).filter(l=>a.indexOf(l)!==-1),o={...r,...e};for(const l of s){const p=Ql(r[l],e[l]);if(!p.valid)return{valid:!1};o[l]=p.data}return{valid:!0,data:o}}else if(t===G.array&&i===G.array){if(r.length!==e.length)return{valid:!1};const a=[];for(let s=0;s<r.length;s++){const o=r[s],l=e[s],p=Ql(o,l);if(!p.valid)return{valid:!1};a.push(p.data)}return{valid:!0,data:a}}else return t===G.date&&i===G.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}class zi extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e),a=(s,o)=>{if(Zl(s)||Zl(o))return J;const l=Ql(s.value,o.value);return l.valid?((Kl(s)||Kl(o))&&t.dirty(),{status:t.value,value:l.data}):(V(i,{code:w.invalid_intersection_types}),J)};return i.common.async?Promise.all([this._def.left._parseAsync({data:i.data,path:i.path,parent:i}),this._def.right._parseAsync({data:i.data,path:i.path,parent:i})]).then(([s,o])=>a(s,o)):a(this._def.left._parseSync({data:i.data,path:i.path,parent:i}),this._def.right._parseSync({data:i.data,path:i.path,parent:i}))}}zi.create=(r,e,t)=>new zi({left:r,right:e,typeName:q.ZodIntersection,...Z(t)});class Qt extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.array)return V(i,{code:w.invalid_type,expected:G.array,received:i.parsedType}),J;if(i.data.length<this._def.items.length)return V(i,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),J;!this._def.rest&&i.data.length>this._def.items.length&&(V(i,{code:w.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const s=[...i.data].map((o,l)=>{const p=this._def.items[l]||this._def.rest;return p?p._parse(new Xt(i,o,i.path,l)):null}).filter(o=>!!o);return i.common.async?Promise.all(s).then(o=>it.mergeArray(t,o)):it.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new Qt({...this._def,rest:e})}}Qt.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Qt({items:r,typeName:q.ZodTuple,rest:null,...Z(e)})};class Zi extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.object)return V(i,{code:w.invalid_type,expected:G.object,received:i.parsedType}),J;const a=[],s=this._def.keyType,o=this._def.valueType;for(const l in i.data)a.push({key:s._parse(new Xt(i,l,i.path,l)),value:o._parse(new Xt(i,i.data[l],i.path,l)),alwaysSet:l in i.data});return i.common.async?it.mergeObjectAsync(t,a):it.mergeObjectSync(t,a)}get element(){return this._def.valueType}static create(e,t,i){return t instanceof Q?new Zi({keyType:e,valueType:t,typeName:q.ZodRecord,...Z(i)}):new Zi({keyType:Ht.create(),valueType:e,typeName:q.ZodRecord,...Z(t)})}}class Rs extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.map)return V(i,{code:w.invalid_type,expected:G.map,received:i.parsedType}),J;const a=this._def.keyType,s=this._def.valueType,o=[...i.data.entries()].map(([l,p],y)=>({key:a._parse(new Xt(i,l,i.path,[y,"key"])),value:s._parse(new Xt(i,p,i.path,[y,"value"]))}));if(i.common.async){const l=new Map;return Promise.resolve().then(async()=>{for(const p of o){const y=await p.key,h=await p.value;if(y.status==="aborted"||h.status==="aborted")return J;(y.status==="dirty"||h.status==="dirty")&&t.dirty(),l.set(y.value,h.value)}return{status:t.value,value:l}})}else{const l=new Map;for(const p of o){const y=p.key,h=p.value;if(y.status==="aborted"||h.status==="aborted")return J;(y.status==="dirty"||h.status==="dirty")&&t.dirty(),l.set(y.value,h.value)}return{status:t.value,value:l}}}}Rs.create=(r,e,t)=>new Rs({valueType:e,keyType:r,typeName:q.ZodMap,...Z(t)});class pr extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.set)return V(i,{code:w.invalid_type,expected:G.set,received:i.parsedType}),J;const a=this._def;a.minSize!==null&&i.data.size<a.minSize.value&&(V(i,{code:w.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),t.dirty()),a.maxSize!==null&&i.data.size>a.maxSize.value&&(V(i,{code:w.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),t.dirty());const s=this._def.valueType;function o(p){const y=new Set;for(const h of p){if(h.status==="aborted")return J;h.status==="dirty"&&t.dirty(),y.add(h.value)}return{status:t.value,value:y}}const l=[...i.data.values()].map((p,y)=>s._parse(new Xt(i,p,i.path,y)));return i.common.async?Promise.all(l).then(p=>o(p)):o(l)}min(e,t){return new pr({...this._def,minSize:{value:e,message:j.toString(t)}})}max(e,t){return new pr({...this._def,maxSize:{value:e,message:j.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}pr.create=(r,e)=>new pr({valueType:r,minSize:null,maxSize:null,typeName:q.ZodSet,...Z(e)});class ri extends Q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.function)return V(t,{code:w.invalid_type,expected:G.function,received:t.parsedType}),J;function i(l,p){return fs({data:l,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,hs(),Qr].filter(y=>!!y),issueData:{code:w.invalid_arguments,argumentsError:p}})}function a(l,p){return fs({data:l,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,hs(),Qr].filter(y=>!!y),issueData:{code:w.invalid_return_type,returnTypeError:p}})}const s={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof ii){const l=this;return yt(async function(...p){const y=new It([]),h=await l._def.args.parseAsync(p,s).catch(g=>{throw y.addIssue(i(p,g)),y}),m=await Reflect.apply(o,this,h);return await l._def.returns._def.type.parseAsync(m,s).catch(g=>{throw y.addIssue(a(m,g)),y})})}else{const l=this;return yt(function(...p){const y=l._def.args.safeParse(p,s);if(!y.success)throw new It([i(p,y.error)]);const h=Reflect.apply(o,this,y.data),m=l._def.returns.safeParse(h,s);if(!m.success)throw new It([a(h,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new ri({...this._def,args:Qt.create(e).rest(ur.create())})}returns(e){return new ri({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,i){return new ri({args:e||Qt.create([]).rest(ur.create()),returns:t||ur.create(),typeName:q.ZodFunction,...Z(i)})}}class Ki extends Q{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})}}Ki.create=(r,e)=>new Ki({getter:r,typeName:q.ZodLazy,...Z(e)});class Xi extends Q{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return V(t,{received:t.data,code:w.invalid_literal,expected:this._def.value}),J}return{status:"valid",value:e.data}}get value(){return this._def.value}}Xi.create=(r,e)=>new Xi({value:r,typeName:q.ZodLiteral,...Z(e)});function Jb(r,e){return new $n({values:r,typeName:q.ZodEnum,...Z(e)})}class $n extends Q{constructor(){super(...arguments),ki.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),i=this._def.values;return V(t,{expected:ne.joinValues(i),received:t.parsedType,code:w.invalid_type}),J}if(ms(this,ki,"f")||Ub(this,ki,new Set(this._def.values),"f"),!ms(this,ki,"f").has(e.data)){const t=this._getOrReturnCtx(e),i=this._def.values;return V(t,{received:t.data,code:w.invalid_enum_value,options:i}),J}return yt(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 $n.create(e,{...this._def,...t})}exclude(e,t=this._def){return $n.create(this.options.filter(i=>!e.includes(i)),{...this._def,...t})}}ki=new WeakMap,$n.create=Jb;class Qi extends Q{constructor(){super(...arguments),qi.set(this,void 0)}_parse(e){const t=ne.getValidEnumValues(this._def.values),i=this._getOrReturnCtx(e);if(i.parsedType!==G.string&&i.parsedType!==G.number){const a=ne.objectValues(t);return V(i,{expected:ne.joinValues(a),received:i.parsedType,code:w.invalid_type}),J}if(ms(this,qi,"f")||Ub(this,qi,new Set(ne.getValidEnumValues(this._def.values)),"f"),!ms(this,qi,"f").has(e.data)){const a=ne.objectValues(t);return V(i,{received:i.data,code:w.invalid_enum_value,options:a}),J}return yt(e.data)}get enum(){return this._def.values}}qi=new WeakMap,Qi.create=(r,e)=>new Qi({values:r,typeName:q.ZodNativeEnum,...Z(e)});class ii extends Q{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.promise&&t.common.async===!1)return V(t,{code:w.invalid_type,expected:G.promise,received:t.parsedType}),J;const i=t.parsedType===G.promise?t.data:Promise.resolve(t.data);return yt(i.then(a=>this._def.type.parseAsync(a,{path:t.path,errorMap:t.common.contextualErrorMap})))}}ii.create=(r,e)=>new ii({type:r,typeName:q.ZodPromise,...Z(e)});class zt extends Q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:i}=this._processInputParams(e),a=this._def.effect||null,s={addIssue:o=>{V(i,o),o.fatal?t.abort():t.dirty()},get path(){return i.path}};if(s.addIssue=s.addIssue.bind(s),a.type==="preprocess"){const o=a.transform(i.data,s);if(i.common.async)return Promise.resolve(o).then(async l=>{if(t.value==="aborted")return J;const p=await this._def.schema._parseAsync({data:l,path:i.path,parent:i});return p.status==="aborted"?J:p.status==="dirty"||t.value==="dirty"?ei(p.value):p});{if(t.value==="aborted")return J;const l=this._def.schema._parseSync({data:o,path:i.path,parent:i});return l.status==="aborted"?J:l.status==="dirty"||t.value==="dirty"?ei(l.value):l}}if(a.type==="refinement"){const o=l=>{const p=a.refinement(l,s);if(i.common.async)return Promise.resolve(p);if(p instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return l};if(i.common.async===!1){const l=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});return l.status==="aborted"?J:(l.status==="dirty"&&t.dirty(),o(l.value),{status:t.value,value:l.value})}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(l=>l.status==="aborted"?J:(l.status==="dirty"&&t.dirty(),o(l.value).then(()=>({status:t.value,value:l.value}))))}if(a.type==="transform")if(i.common.async===!1){const o=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});if(!xi(o))return o;const l=a.transform(o.value,s);if(l instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:l}}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(o=>xi(o)?Promise.resolve(a.transform(o.value,s)).then(l=>({status:t.value,value:l})):o);ne.assertNever(a)}}zt.create=(r,e,t)=>new zt({schema:r,typeName:q.ZodEffects,effect:e,...Z(t)}),zt.createWithPreprocess=(r,e,t)=>new zt({schema:e,effect:{type:"preprocess",transform:r},typeName:q.ZodEffects,...Z(t)});class en extends Q{_parse(e){return this._getType(e)===G.undefined?yt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}en.create=(r,e)=>new en({innerType:r,typeName:q.ZodOptional,...Z(e)});class Fn extends Q{_parse(e){return this._getType(e)===G.null?yt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Fn.create=(r,e)=>new Fn({innerType:r,typeName:q.ZodNullable,...Z(e)});class ea extends Q{_parse(e){const{ctx:t}=this._processInputParams(e);let i=t.data;return t.parsedType===G.undefined&&(i=this._def.defaultValue()),this._def.innerType._parse({data:i,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}ea.create=(r,e)=>new ea({innerType:r,typeName:q.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});class ta extends Q{_parse(e){const{ctx:t}=this._processInputParams(e),i={...t,common:{...t.common,issues:[]}},a=this._def.innerType._parse({data:i.data,path:i.path,parent:{...i}});return ji(a)?a.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new It(i.common.issues)},input:i.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new It(i.common.issues)},input:i.data})}}removeCatch(){return this._def.innerType}}ta.create=(r,e)=>new ta({innerType:r,typeName:q.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Z(e)});class vs extends Q{_parse(e){if(this._getType(e)!==G.nan){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.nan,received:i.parsedType}),J}return{status:"valid",value:e.data}}}vs.create=r=>new vs({typeName:q.ZodNaN,...Z(r)});const wO=Symbol("zod_brand");class ec extends Q{_parse(e){const{ctx:t}=this._processInputParams(e),i=t.data;return this._def.type._parse({data:i,path:t.path,parent:t})}unwrap(){return this._def.type}}class na extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:i.data,path:i.path,parent:i});return s.status==="aborted"?J:s.status==="dirty"?(t.dirty(),ei(s.value)):this._def.out._parseAsync({data:s.value,path:i.path,parent:i})})();{const a=this._def.in._parseSync({data:i.data,path:i.path,parent:i});return a.status==="aborted"?J:a.status==="dirty"?(t.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:i.path,parent:i})}}static create(e,t){return new na({in:e,out:t,typeName:q.ZodPipeline})}}class ra extends Q{_parse(e){const t=this._def.innerType._parse(e),i=a=>(xi(a)&&(a.value=Object.freeze(a.value)),a);return ji(t)?t.then(a=>i(a)):i(t)}unwrap(){return this._def.innerType}}ra.create=(r,e)=>new ra({innerType:r,typeName:q.ZodReadonly,...Z(e)});function Wb(r,e={},t){return r?ti.create().superRefine((i,a)=>{var s,o;if(!r(i)){const l=typeof e=="function"?e(i):typeof e=="string"?{message:e}:e,p=(o=(s=l.fatal)!==null&&s!==void 0?s:t)!==null&&o!==void 0?o:!0,y=typeof l=="string"?{message:l}:l;a.addIssue({code:"custom",...y,fatal:p})}}):ti.create()}const _O={object:qe.lazycreate};var q;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(q||(q={}));const NO=(r,e={message:`Input not instance of ${r.name}`})=>Wb(t=>t instanceof r,e),gs=Ht.create,tc=Ln.create,MO=vs.create,VO=Gn.create,nc=Ji.create,Hb=dr.create,LO=Ts.create,GO=Wi.create,Yb=Hi.create,$O=ti.create,Is=ur.create,FO=Tn.create,UO=Es.create,xO=Yt.create,zb=qe.create,jO=qe.strictCreate,kO=Yi.create,qO=bs.create,JO=zi.create,WO=Qt.create,Zb=Zi.create,HO=Rs.create,YO=pr.create,zO=ri.create,ZO=Ki.create,KO=Xi.create,Kb=$n.create,XO=Qi.create,QO=ii.create,Xb=zt.create,eS=en.create,tS=Fn.create,nS=zt.createWithPreprocess,rS=na.create;var u=Object.freeze({__proto__:null,defaultErrorMap:Qr,setErrorMap:hO,getErrorMap:hs,makeIssue:fs,EMPTY_PATH:fO,addIssueToContext:V,ParseStatus:it,INVALID:J,DIRTY:ei,OK:yt,isAborted:Zl,isDirty:Kl,isValid:xi,isAsync:ji,get util(){return ne},get objectUtil(){return zl},ZodParsedType:G,getParsedType:Vn,ZodType:Q,datetimeRegex:qb,ZodString:Ht,ZodNumber:Ln,ZodBigInt:Gn,ZodBoolean:Ji,ZodDate:dr,ZodSymbol:Ts,ZodUndefined:Wi,ZodNull:Hi,ZodAny:ti,ZodUnknown:ur,ZodNever:Tn,ZodVoid:Es,ZodArray:Yt,ZodObject:qe,ZodUnion:Yi,ZodDiscriminatedUnion:bs,ZodIntersection:zi,ZodTuple:Qt,ZodRecord:Zi,ZodMap:Rs,ZodSet:pr,ZodFunction:ri,ZodLazy:Ki,ZodLiteral:Xi,ZodEnum:$n,ZodNativeEnum:Qi,ZodPromise:ii,ZodEffects:zt,ZodTransformer:zt,ZodOptional:en,ZodNullable:Fn,ZodDefault:ea,ZodCatch:ta,ZodNaN:vs,BRAND:wO,ZodBranded:ec,ZodPipeline:na,ZodReadonly:ra,custom:Wb,Schema:Q,ZodSchema:Q,late:_O,get ZodFirstPartyTypeKind(){return q},coerce:{string:r=>Ht.create({...r,coerce:!0}),number:r=>Ln.create({...r,coerce:!0}),boolean:r=>Ji.create({...r,coerce:!0}),bigint:r=>Gn.create({...r,coerce:!0}),date:r=>dr.create({...r,coerce:!0})},any:$O,array:xO,bigint:VO,boolean:nc,date:Hb,discriminatedUnion:qO,effect:Xb,enum:Kb,function:zO,instanceof:NO,intersection:JO,lazy:ZO,literal:KO,map:HO,nan:MO,nativeEnum:XO,never:FO,null:Yb,nullable:tS,number:tc,object:zb,oboolean:()=>nc().optional(),onumber:()=>tc().optional(),optional:eS,ostring:()=>gs().optional(),pipeline:rS,preprocess:nS,promise:QO,record:Zb,set:YO,strictObject:jO,string:gs,symbol:LO,transformer:Xb,tuple:WO,undefined:GO,union:kO,unknown:Is,void:UO,NEVER:J,ZodIssueCode:w,quotelessJson:yO,ZodError:It});function Qb(r){var a,s,o;if(!(r!=null&&r.dataType))return Is();const e=r.dataType.isNullable||!1,t=r.dataType.isList||!1;let i=Is();if(((a=r.dataType.entity)==null?void 0:a.type)===n.PrimitiveEntity)switch(r.dataType.entity.name){case P.String:i=gs();break;case P.JSON:i=Zb(Is());break;case P.Number:i=tc();break;case P.Boolean:i=nc();break;case P.Date:i=Hb();break;case P.Enum:{const l=r.dataType.options||[];if(l.length===0)throw new Error(`Enum property ${r.name} has no options`);i=Kb(l);break}case P.Null:i=Yb();break;case P.UUID:i=gs().uuid();break}else if(((s=r.dataType.entity)==null?void 0:s.type)===n.CustomEntity)i=eR(r.dataType.entity);else throw new Error(`Unsupported data type validation: ${(o=r.dataType.entity)==null?void 0:o.type}`);return e&&(i=i.nullable()),t&&(i=i.array()),i}function eR(r){const e=zb({});for(const t of r.properties){const i=Qb(t);e.shape[t.name]=i}return e}function tR(r){const e=r.rangeStart;return new Date(e.getTime()+Math.random()*(Date.now()-e.getTime()))}function nR(r){const e=r.rangeEnd;return new Date(Math.random()*e.getTime())}function rR(r){const e=r.rangeStart,t=r.rangeEnd;return new Date(e.getTime()+Math.random()*(t.getTime()-e.getTime()))}function iR(r){return r.rangeStart&&r.rangeEnd?rR(r):r.rangeStart?tR(r):r.rangeEnd?nR(r):new Date}function iS(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var aR={},Ds={},Ps={};Object.defineProperty(Ps,"__esModule",{value:!0}),Ps.default=sS;let As;const aS=new Uint8Array(16);function sS(){if(!As&&(As=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!As))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return As(aS)}var Un={},yr={},Os={};Object.defineProperty(Os,"__esModule",{value:!0}),Os.default=void 0;var oS=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;Os.default=oS,Object.defineProperty(yr,"__esModule",{value:!0}),yr.default=void 0;var lS=cS(Os);function cS(r){return r&&r.__esModule?r:{default:r}}function dS(r){return typeof r=="string"&&lS.default.test(r)}var uS=dS;yr.default=uS,Object.defineProperty(Un,"__esModule",{value:!0}),Un.default=void 0,Un.unsafeStringify=sR;var pS=yS(yr);function yS(r){return r&&r.__esModule?r:{default:r}}const rt=[];for(let r=0;r<256;++r)rt.push((r+256).toString(16).slice(1));function sR(r,e=0){return rt[r[e+0]]+rt[r[e+1]]+rt[r[e+2]]+rt[r[e+3]]+"-"+rt[r[e+4]]+rt[r[e+5]]+"-"+rt[r[e+6]]+rt[r[e+7]]+"-"+rt[r[e+8]]+rt[r[e+9]]+"-"+rt[r[e+10]]+rt[r[e+11]]+rt[r[e+12]]+rt[r[e+13]]+rt[r[e+14]]+rt[r[e+15]]}function hS(r,e=0){const t=sR(r,e);if(!(0,pS.default)(t))throw TypeError("Stringified UUID is invalid");return t}var fS=hS;Un.default=fS,Object.defineProperty(Ds,"__esModule",{value:!0}),Ds.default=void 0;var mS=ES(Ps),TS=Un;function ES(r){return r&&r.__esModule?r:{default:r}}let oR,rc,ic=0,ac=0;function bS(r,e,t){let i=e&&t||0;const a=e||new Array(16);r=r||{};let s=r.node||oR,o=r.clockseq!==void 0?r.clockseq:rc;if(s==null||o==null){const R=r.random||(r.rng||mS.default)();s==null&&(s=oR=[R[0]|1,R[1],R[2],R[3],R[4],R[5]]),o==null&&(o=rc=(R[6]<<8|R[7])&16383)}let l=r.msecs!==void 0?r.msecs:Date.now(),p=r.nsecs!==void 0?r.nsecs:ac+1;const y=l-ic+(p-ac)/1e4;if(y<0&&r.clockseq===void 0&&(o=o+1&16383),(y<0||l>ic)&&r.nsecs===void 0&&(p=0),p>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");ic=l,ac=p,rc=o,l+=122192928e5;const h=((l&268435455)*1e4+p)%4294967296;a[i++]=h>>>24&255,a[i++]=h>>>16&255,a[i++]=h>>>8&255,a[i++]=h&255;const m=l/4294967296*1e4&268435455;a[i++]=m>>>8&255,a[i++]=m&255,a[i++]=m>>>24&15|16,a[i++]=m>>>16&255,a[i++]=o>>>8|128,a[i++]=o&255;for(let R=0;R<6;++R)a[i+R]=s[R];return e||(0,TS.unsafeStringify)(a)}var RS=bS;Ds.default=RS;var Ss={},xn={},ia={};Object.defineProperty(ia,"__esModule",{value:!0}),ia.default=void 0;var vS=gS(yr);function gS(r){return r&&r.__esModule?r:{default:r}}function IS(r){if(!(0,vS.default)(r))throw TypeError("Invalid UUID");let e;const t=new Uint8Array(16);return t[0]=(e=parseInt(r.slice(0,8),16))>>>24,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=e&255,t[4]=(e=parseInt(r.slice(9,13),16))>>>8,t[5]=e&255,t[6]=(e=parseInt(r.slice(14,18),16))>>>8,t[7]=e&255,t[8]=(e=parseInt(r.slice(19,23),16))>>>8,t[9]=e&255,t[10]=(e=parseInt(r.slice(24,36),16))/1099511627776&255,t[11]=e/4294967296&255,t[12]=e>>>24&255,t[13]=e>>>16&255,t[14]=e>>>8&255,t[15]=e&255,t}var DS=IS;ia.default=DS,Object.defineProperty(xn,"__esModule",{value:!0}),xn.URL=xn.DNS=void 0,xn.default=CS;var PS=Un,AS=OS(ia);function OS(r){return r&&r.__esModule?r:{default:r}}function SS(r){r=unescape(encodeURIComponent(r));const e=[];for(let t=0;t<r.length;++t)e.push(r.charCodeAt(t));return e}const lR="6ba7b810-9dad-11d1-80b4-00c04fd430c8";xn.DNS=lR;const cR="6ba7b811-9dad-11d1-80b4-00c04fd430c8";xn.URL=cR;function CS(r,e,t){function i(a,s,o,l){var p;if(typeof a=="string"&&(a=SS(a)),typeof s=="string"&&(s=(0,AS.default)(s)),((p=s)===null||p===void 0?void 0:p.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let y=new Uint8Array(16+a.length);if(y.set(s),y.set(a,s.length),y=t(y),y[6]=y[6]&15|e,y[8]=y[8]&63|128,o){l=l||0;for(let h=0;h<16;++h)o[l+h]=y[h];return o}return(0,PS.unsafeStringify)(y)}try{i.name=r}catch{}return i.DNS=lR,i.URL=cR,i}var Cs={};Object.defineProperty(Cs,"__esModule",{value:!0}),Cs.default=void 0;function BS(r){if(typeof r=="string"){const e=unescape(encodeURIComponent(r));r=new Uint8Array(e.length);for(let t=0;t<e.length;++t)r[t]=e.charCodeAt(t)}return wS(_S(NS(r),r.length*8))}function wS(r){const e=[],t=r.length*32,i="0123456789abcdef";for(let a=0;a<t;a+=8){const s=r[a>>5]>>>a%32&255,o=parseInt(i.charAt(s>>>4&15)+i.charAt(s&15),16);e.push(o)}return e}function dR(r){return(r+64>>>9<<4)+14+1}function _S(r,e){r[e>>5]|=128<<e%32,r[dR(e)-1]=e;let t=1732584193,i=-271733879,a=-1732584194,s=271733878;for(let o=0;o<r.length;o+=16){const l=t,p=i,y=a,h=s;t=at(t,i,a,s,r[o],7,-680876936),s=at(s,t,i,a,r[o+1],12,-389564586),a=at(a,s,t,i,r[o+2],17,606105819),i=at(i,a,s,t,r[o+3],22,-1044525330),t=at(t,i,a,s,r[o+4],7,-176418897),s=at(s,t,i,a,r[o+5],12,1200080426),a=at(a,s,t,i,r[o+6],17,-1473231341),i=at(i,a,s,t,r[o+7],22,-45705983),t=at(t,i,a,s,r[o+8],7,1770035416),s=at(s,t,i,a,r[o+9],12,-1958414417),a=at(a,s,t,i,r[o+10],17,-42063),i=at(i,a,s,t,r[o+11],22,-1990404162),t=at(t,i,a,s,r[o+12],7,1804603682),s=at(s,t,i,a,r[o+13],12,-40341101),a=at(a,s,t,i,r[o+14],17,-1502002290),i=at(i,a,s,t,r[o+15],22,1236535329),t=st(t,i,a,s,r[o+1],5,-165796510),s=st(s,t,i,a,r[o+6],9,-1069501632),a=st(a,s,t,i,r[o+11],14,643717713),i=st(i,a,s,t,r[o],20,-373897302),t=st(t,i,a,s,r[o+5],5,-701558691),s=st(s,t,i,a,r[o+10],9,38016083),a=st(a,s,t,i,r[o+15],14,-660478335),i=st(i,a,s,t,r[o+4],20,-405537848),t=st(t,i,a,s,r[o+9],5,568446438),s=st(s,t,i,a,r[o+14],9,-1019803690),a=st(a,s,t,i,r[o+3],14,-187363961),i=st(i,a,s,t,r[o+8],20,1163531501),t=st(t,i,a,s,r[o+13],5,-1444681467),s=st(s,t,i,a,r[o+2],9,-51403784),a=st(a,s,t,i,r[o+7],14,1735328473),i=st(i,a,s,t,r[o+12],20,-1926607734),t=ot(t,i,a,s,r[o+5],4,-378558),s=ot(s,t,i,a,r[o+8],11,-2022574463),a=ot(a,s,t,i,r[o+11],16,1839030562),i=ot(i,a,s,t,r[o+14],23,-35309556),t=ot(t,i,a,s,r[o+1],4,-1530992060),s=ot(s,t,i,a,r[o+4],11,1272893353),a=ot(a,s,t,i,r[o+7],16,-155497632),i=ot(i,a,s,t,r[o+10],23,-1094730640),t=ot(t,i,a,s,r[o+13],4,681279174),s=ot(s,t,i,a,r[o],11,-358537222),a=ot(a,s,t,i,r[o+3],16,-722521979),i=ot(i,a,s,t,r[o+6],23,76029189),t=ot(t,i,a,s,r[o+9],4,-640364487),s=ot(s,t,i,a,r[o+12],11,-421815835),a=ot(a,s,t,i,r[o+15],16,530742520),i=ot(i,a,s,t,r[o+2],23,-995338651),t=lt(t,i,a,s,r[o],6,-198630844),s=lt(s,t,i,a,r[o+7],10,1126891415),a=lt(a,s,t,i,r[o+14],15,-1416354905),i=lt(i,a,s,t,r[o+5],21,-57434055),t=lt(t,i,a,s,r[o+12],6,1700485571),s=lt(s,t,i,a,r[o+3],10,-1894986606),a=lt(a,s,t,i,r[o+10],15,-1051523),i=lt(i,a,s,t,r[o+1],21,-2054922799),t=lt(t,i,a,s,r[o+8],6,1873313359),s=lt(s,t,i,a,r[o+15],10,-30611744),a=lt(a,s,t,i,r[o+6],15,-1560198380),i=lt(i,a,s,t,r[o+13],21,1309151649),t=lt(t,i,a,s,r[o+4],6,-145523070),s=lt(s,t,i,a,r[o+11],10,-1120210379),a=lt(a,s,t,i,r[o+2],15,718787259),i=lt(i,a,s,t,r[o+9],21,-343485551),t=jn(t,l),i=jn(i,p),a=jn(a,y),s=jn(s,h)}return[t,i,a,s]}function NS(r){if(r.length===0)return[];const e=r.length*8,t=new Uint32Array(dR(e));for(let i=0;i<e;i+=8)t[i>>5]|=(r[i/8]&255)<<i%32;return t}function jn(r,e){const t=(r&65535)+(e&65535);return(r>>16)+(e>>16)+(t>>16)<<16|t&65535}function MS(r,e){return r<<e|r>>>32-e}function Bs(r,e,t,i,a,s){return jn(MS(jn(jn(e,r),jn(i,s)),a),t)}function at(r,e,t,i,a,s,o){return Bs(e&t|~e&i,r,e,a,s,o)}function st(r,e,t,i,a,s,o){return Bs(e&i|t&~i,r,e,a,s,o)}function ot(r,e,t,i,a,s,o){return Bs(e^t^i,r,e,a,s,o)}function lt(r,e,t,i,a,s,o){return Bs(t^(e|~i),r,e,a,s,o)}var VS=BS;Cs.default=VS,Object.defineProperty(Ss,"__esModule",{value:!0}),Ss.default=void 0;var LS=uR(xn),GS=uR(Cs);function uR(r){return r&&r.__esModule?r:{default:r}}var $S=(0,LS.default)("v3",48,GS.default);Ss.default=$S;var ws={},_s={};Object.defineProperty(_s,"__esModule",{value:!0}),_s.default=void 0;var FS={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};_s.default=FS,Object.defineProperty(ws,"__esModule",{value:!0}),ws.default=void 0;var pR=yR(_s),US=yR(Ps),xS=Un;function yR(r){return r&&r.__esModule?r:{default:r}}function jS(r,e,t){if(pR.default.randomUUID&&!e&&!r)return pR.default.randomUUID();r=r||{};const i=r.random||(r.rng||US.default)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,e){t=t||0;for(let a=0;a<16;++a)e[t+a]=i[a];return e}return(0,xS.unsafeStringify)(i)}var kS=jS;ws.default=kS;var Ns={},Ms={};Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.default=void 0;function qS(r,e,t,i){switch(r){case 0:return e&t^~e&i;case 1:return e^t^i;case 2:return e&t^e&i^t&i;case 3:return e^t^i}}function sc(r,e){return r<<e|r>>>32-e}function JS(r){const e=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof r=="string"){const o=unescape(encodeURIComponent(r));r=[];for(let l=0;l<o.length;++l)r.push(o.charCodeAt(l))}else Array.isArray(r)||(r=Array.prototype.slice.call(r));r.push(128);const i=r.length/4+2,a=Math.ceil(i/16),s=new Array(a);for(let o=0;o<a;++o){const l=new Uint32Array(16);for(let p=0;p<16;++p)l[p]=r[o*64+p*4]<<24|r[o*64+p*4+1]<<16|r[o*64+p*4+2]<<8|r[o*64+p*4+3];s[o]=l}s[a-1][14]=(r.length-1)*8/Math.pow(2,32),s[a-1][14]=Math.floor(s[a-1][14]),s[a-1][15]=(r.length-1)*8&4294967295;for(let o=0;o<a;++o){const l=new Uint32Array(80);for(let g=0;g<16;++g)l[g]=s[o][g];for(let g=16;g<80;++g)l[g]=sc(l[g-3]^l[g-8]^l[g-14]^l[g-16],1);let p=t[0],y=t[1],h=t[2],m=t[3],R=t[4];for(let g=0;g<80;++g){const D=Math.floor(g/20),A=sc(p,5)+qS(D,y,h,m)+R+e[D]+l[g]>>>0;R=m,m=h,h=sc(y,30)>>>0,y=p,p=A}t[0]=t[0]+p>>>0,t[1]=t[1]+y>>>0,t[2]=t[2]+h>>>0,t[3]=t[3]+m>>>0,t[4]=t[4]+R>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,t[0]&255,t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,t[1]&255,t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,t[2]&255,t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,t[3]&255,t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,t[4]&255]}var WS=JS;Ms.default=WS,Object.defineProperty(Ns,"__esModule",{value:!0}),Ns.default=void 0;var HS=hR(xn),YS=hR(Ms);function hR(r){return r&&r.__esModule?r:{default:r}}var zS=(0,HS.default)("v5",80,YS.default);Ns.default=zS;var Vs={};Object.defineProperty(Vs,"__esModule",{value:!0}),Vs.default=void 0;var ZS="00000000-0000-0000-0000-000000000000";Vs.default=ZS;var Ls={};Object.defineProperty(Ls,"__esModule",{value:!0}),Ls.default=void 0;var KS=XS(yr);function XS(r){return r&&r.__esModule?r:{default:r}}function QS(r){if(!(0,KS.default)(r))throw TypeError("Invalid UUID");return parseInt(r.slice(14,15),16)}var eC=QS;Ls.default=eC,function(r){Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"NIL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(r,"parse",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(r,"stringify",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(r,"v1",{enumerable:!0,get:function(){return e.default}}),Object.defineProperty(r,"v3",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(r,"v4",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(r,"v5",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(r,"validate",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(r,"version",{enumerable:!0,get:function(){return o.default}});var e=h(Ds),t=h(Ss),i=h(ws),a=h(Ns),s=h(Vs),o=h(Ls),l=h(yr),p=h(Un),y=h(ia);function h(m){return m&&m.__esModule?m:{default:m}}}(aR);function oc(r,e){if(!r||!e||!r.length||!e.length)throw new Error("Bad alphabet");this.srcAlphabet=r,this.dstAlphabet=e}oc.prototype.convert=function(r){var e,t,i,a={},s=this.srcAlphabet.length,o=this.dstAlphabet.length,l=r.length,p=typeof r=="string"?"":[];if(!this.isValid(r))throw new Error('Number "'+r+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return r;for(e=0;e<l;e++)a[e]=this.srcAlphabet.indexOf(r[e]);do{for(t=0,i=0,e=0;e<l;e++)t=t*s+a[e],t>=o?(a[i++]=parseInt(t/o,10),t=t%o):i>0&&(a[i++]=0);l=i,p=this.dstAlphabet.slice(t,t+1).concat(p)}while(i!==0);return p},oc.prototype.isValid=function(r){for(var e=0;e<r.length;++e)if(this.srcAlphabet.indexOf(r[e])===-1)return!1;return!0};var tC=oc,nC=tC;function aa(r,e){var t=new nC(r,e);return function(i){return t.convert(i)}}aa.BIN="01",aa.OCT="01234567",aa.DEC="0123456789",aa.HEX="0123456789abcdef";var rC=aa;const{v4:lc,validate:iC}=aR,Gs=rC,cc={cookieBase90:"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+-./:<=>?@[]^_`{|}~",flickrBase58:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",uuid25Base36:"0123456789abcdefghijklmnopqrstuvwxyz"},aC={consistentLength:!0};let dc;const fR=(r,e,t)=>{const i=e(r.toLowerCase().replace(/-/g,""));return!t||!t.consistentLength?i:i.padStart(t.shortIdLength,t.paddingChar)},mR=(r,e)=>{const i=e(r).padStart(32,"0").match(/(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})/);return[i[1],i[2],i[3],i[4],i[5]].join("-")},sC=r=>Math.ceil(Math.log(2**128)/Math.log(r));var oC=(()=>{const r=(e,t)=>{const i=e||cc.flickrBase58,a={...aC,...t};if([...new Set(Array.from(i))].length!==i.length)throw new Error("The provided Alphabet has duplicate characters resulting in unreliable results");const s=sC(i.length),o={shortIdLength:s,consistentLength:a.consistentLength,paddingChar:i[0]},l=Gs(Gs.HEX,i),p=Gs(i,Gs.HEX),y=()=>fR(lc(),l,o),m={alphabet:i,fromUUID:R=>fR(R,l,o),maxLength:s,generate:y,new:y,toUUID:R=>mR(R,p),uuid:lc,validate:(R,g=!1)=>{if(!R||typeof R!="string")return!1;const D=a.consistentLength?R.length===s:R.length<=s,A=R.split("").every(I=>i.includes(I));return g===!1?D&&A:D&&A&&iC(mR(R,p))}};return Object.freeze(m),m};return r.constants=cc,r.uuid=lc,r.generate=()=>(dc||(dc=r(cc.flickrBase58).generate),dc()),r})();const $s=iS(oC);function TR(){return $s().uuid()}function ER(r){return r.rangeStart+Math.random()}function bR(r){const e=r.rangeEnd;return Math.random()*e}function RR(r){const e=r.rangeStart,t=r.rangeEnd;return Math.random()*(t-e)+e}function vR(r){return r.rangeStart&&r.rangeEnd?RR(r):r.rangeStart?ER(r):r.rangeEnd?bR(r):Math.random()}function gR(r){const e=r.rangeStart;return Math.random().toString(36).substring(e)}function IR(r){const e=r.rangeEnd;return Math.random().toString(36).substring(0,e)}function DR(r){const e=r.rangeStart,t=r.rangeEnd;return Math.random().toString(36).substring(e,t)}function PR(r){return r.rangeStart&&r.rangeEnd?DR(r):r.rangeStart?gR(r):r.rangeEnd?IR(r):Math.random().toString(36)}function AR(r){return Math.random()>=.5}function lC(r){if(!r||!r.autogeneration)return null;switch(r.autogeneration.type){case We.CurrentDateAndTime:if(r.name===P.Date)return new Date;case We.Random:{if(r.name===P.Date)return iR(r.autogeneration);if(r.name===P.Number)return vR(r.autogeneration);if(r.name===P.String)return PR(r.autogeneration);if(r.name===P.Boolean)return AR(r.autogeneration)}case We.Unique:if(r.name===P.UUID)return TR();default:throw new Error(`Generating a ${r.autogeneration.type} value for a ${r.name} is not supported`)}}const H="e7eb5382-3d99-44fd-972a-b8b1e819f6be",uc="global-user-variable-id",OR="last-executed-timestamp-variable-id",cC={id:"alternative-relational-database-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-identifier-property-data-type-id",entityType:n.DataType},dC={id:"alternative-relational-database-entity-identifier-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-identifier-property-id",entityType:n.Property},uC={like:!1,inferred:!1,id:"alternative-relational-database-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"alternative-relational-database-entity-identifier-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:null,parent:cC,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:dC},Fs={id:"alternative-relational-database-entity-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},pC={hidden:!1,required:!0,id:"alternative-relational-database-entity-identifier-property-id",name:"Identifier name",version:1,type:n.Property,private:!1,abstract:!1,implements:cs,static:!0,index:0,dataType:uC,description:"The name of the main database inside of the server instance where the data will be stored.",parent:Fs};n.GenericReference,n.DataType;const yC={id:"alternative-relational-database-entity-username-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-username-property-id",entityType:n.Property},hC={like:!1,inferred:!1,id:"alternative-relational-database-entity-username-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:yC},fC={hidden:!1,required:!0,id:"alternative-relational-database-entity-username-property-id",name:"Username",version:1,type:n.Property,private:!1,abstract:!1,implements:ds,static:!0,index:1,dataType:hC,description:"The username that will be used to connect to the database.",parent:Fs};n.GenericReference,n.DataType;const mC={id:"alternative-relational-database-entity-password-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-password-property-id",entityType:n.Property},TC={like:!1,inferred:!1,id:"alternative-relational-database-entity-password-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:mC},EC={hidden:!1,required:!0,id:"alternative-relational-database-entity-password-property-id",name:"Password",version:1,type:n.Property,private:!1,abstract:!1,implements:us,static:!0,index:2,dataType:TC,description:"The password that will be used to connect to the database.",parent:Fs},bC={id:"alternative-relational-database-entity-min-size-property-data-type-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-min-size-property-data-type-id",entityType:n.DataType},RC={id:"alternative-relational-database-entity-min-size-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-min-size-property-id",entityType:n.Property},vC={like:!1,inferred:!1,id:"alternative-relational-database-entity-min-size-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"alternative-relational-database-entity-min-size-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:6,parent:bC,autogeneration:null,valueAsType:null},parent:RC},gC={hidden:!1,required:!0,id:"alternative-relational-database-entity-min-size-property-id",name:"Minimum GB size",version:1,type:n.Property,private:!1,abstract:!1,implements:ps,static:!0,index:3,dataType:vC,description:"The minimum size of the database in GB.",parent:Fs},IC={id:"alternative-relational-database-entity-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},SR={id:"alternative-relational-database-entity-id",type:n.CustomEntity,version:1,name:"Alternative relational Database",description:"A database that permanently stores the persisted entities attached to it.",abstract:!1,static:!0,properties:[pC,fC,EC,gC],methods:[],abstractMethods:[],extends:[],implements:[Mn],x:0,y:0,parent:IC},DC={id:"animal-prototype-database-property-ref-id",type:n.GenericReference,entityId:"animal-prototype-database-property-id",entityType:n.Property},PC={id:"animal-prototype-database-property-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"animal-prototype-database-property-data-type-default-value-id",entityType:n.DataType},AC={like:!1,inferred:!1,id:"animal-prototype-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:Mn,asType:!1,defaultValue:{id:"animal-prototype-database-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.EntityTemplate,valueAsType:SR,autogeneration:null,parent:PC},parent:DC},OC={id:"animal-prototype-database-property-parent-ref-id",type:n.GenericReference,entityId:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",entityType:n.CustomEntity},SC={hidden:!1,required:!0,id:"animal-prototype-database-property-id",name:"Database",version:1,type:n.Property,private:!1,abstract:!1,implements:Ui,static:!0,index:0,dataType:AC,description:"The database that the entity belongs to.",parent:OC},CC={type:n.GenericReference,id:"291e4d4f-01d8-40a0-90dc-5f1ac6636e9b",entityType:n.Property,entityId:"5cb617b0-92be-4dbe-a007-49093368d94f"},BC={like:!1,inferred:!1,id:"c1930577-9e79-48a6-8905-be24611015c1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:CC},wC={type:n.GenericReference,id:"e2b9e456-f2b3-4dc7-85a2-fbb68ed0c9c7",entityType:n.CustomEntity,entityId:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},_C={hidden:!1,required:!0,type:n.Property,id:"5cb617b0-92be-4dbe-a007-49093368d94f",version:1,name:"Name",description:"The name of the animal",implements:null,static:!1,private:!1,index:0,dataType:BC,abstract:!1,parent:wC},NC={type:n.GenericReference,id:"abc565de-4c83-4936-bc48-4013bef213b8",entityType:n.Project,entityId:H},MC={type:n.CustomEntity,id:"83eaa847-e62b-4192-84fb-3d8d6f5ea970",version:1,name:"Animal",description:"A living creature that is not human",abstract:!1,static:!1,abstractMethods:[],properties:[SC,_C],methods:[],extends:[],implements:[ke],x:0,y:0,parent:NC},VC={id:"default-relational-database-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-identifier-property-data-type-id",entityType:n.DataType},LC={id:"default-relational-database-entity-identifier-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-identifier-property-id",entityType:n.Property},GC={like:!1,inferred:!1,id:"default-relational-database-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"default-relational-database-entity-identifier-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"main",parent:VC,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:LC},ai={id:"default-relational-database-entity-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},$C={hidden:!1,required:!0,id:"default-relational-database-entity-identifier-property-id",name:"Identifier name",version:1,type:n.Property,private:!1,abstract:!1,implements:cs,static:!0,index:0,dataType:GC,description:"The name of the main database inside of the server instance where the data will be stored.",parent:ai};n.GenericReference,n.DataType;const FC={id:"default-relational-database-entity-username-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-username-property-id",entityType:n.Property},UC={id:"default-relational-database-entity-username-property-default-value-parent-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-username-property-data-type-id",entityType:n.DataType},xC={like:!1,inferred:!1,id:"default-relational-database-entity-username-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"default-relational-database-entity-username-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"root",parent:UC,autogeneration:null,valueAsType:null},parent:FC},jC={hidden:!1,required:!0,id:"default-relational-database-entity-username-property-id",name:"Username",version:1,type:n.Property,private:!1,abstract:!1,implements:ds,static:!0,index:1,dataType:xC,description:"The username that will be used to connect to the database.",parent:ai};n.GenericReference,n.DataType;const kC={id:"default-relational-database-entity-password-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-password-property-id",entityType:n.Property},qC={id:"default-relational-database-entity-password-property-default-value-parent-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-password-property-data-type-id",entityType:n.DataType},JC={like:!1,inferred:!1,id:"default-relational-database-entity-password-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"default-relational-database-entity-password-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"password",parent:qC,autogeneration:null,valueAsType:null},parent:kC},WC={hidden:!1,required:!0,id:"default-relational-database-entity-password-property-id",name:"Password",version:1,type:n.Property,private:!1,abstract:!1,implements:us,static:!0,index:2,dataType:JC,description:"The password that will be used to connect to the database.",parent:ai},HC={id:"default-relational-database-entity-min-size-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-min-size-property-data-type-id",entityType:n.DataType},YC={id:"default-relational-database-entity-min-size-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-min-size-property-id",entityType:n.Property},zC={like:!1,inferred:!1,id:"default-relational-database-entity-min-size-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"default-relational-database-entity-min-size-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:6,parent:HC,autogeneration:null,valueAsType:null},parent:YC},ZC={hidden:!1,required:!0,id:"default-relational-database-entity-min-size-property-id",name:"Minimum GB size",version:1,type:n.Property,private:!1,abstract:!1,implements:ps,static:!0,index:3,dataType:zC,description:"The minimum size of the database in GB.",parent:ai},KC={id:"default-relational-database-entity-default-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-default-property-data-type-id",entityType:n.DataType},XC={id:"default-relational-database-entity-default-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-default-property-id",entityType:n.Property},QC={like:!1,inferred:!1,id:"default-relational-database-entity-default-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"default-relational-database-entity-default-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!0,parent:KC,autogeneration:null,valueAsType:null},parent:XC},eB={hidden:!0,required:!0,id:"default-relational-database-entity-default-property-id",name:"Default",version:1,type:n.Property,private:!1,abstract:!1,implements:Ul,static:!0,index:4,dataType:QC,description:"Whether this database is automatically picked by other entities as the default database.",parent:ai},tB={id:"default-relational-database-entity-autoscaling-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-autoscaling-property-data-type-id",entityType:n.DataType},nB={id:"default-relational-database-entity-autoscaling-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-autoscaling-property-id",entityType:n.Property},rB={like:!1,inferred:!1,id:"default-relational-database-entity-autoscaling-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"default-relational-database-entity-autoscaling-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!0,parent:tB,autogeneration:null,valueAsType:null},parent:nB},iB={hidden:!1,required:!0,id:"default-relational-database-entity-autoscaling-property-id",name:"Auto-scaling",version:1,type:n.Property,private:!1,abstract:!1,implements:xl,static:!0,index:5,dataType:rB,description:"If true, this database will automatically scale up or down in memory size, based on the usage.s",parent:ai},aB={id:"default-relational-database-entity-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},pc={id:"default-relational-database-entity-id",type:n.CustomEntity,version:1,name:"Relational Database",description:"A database that permanently stores the persisted entities attached to it.",abstract:!1,static:!0,properties:[eB,iB,$C,jC,WC,ZC],methods:[],abstractMethods:[],extends:[],implements:[Mn],x:0,y:0,parent:aB},sB={id:"user-prototype-database-property-data-type-ref-id",type:n.GenericReference,entityId:"user-prototype-database-property-data-type-id",entityType:n.DataType},oB={id:"user-prototype-database-property-ref-id",type:n.GenericReference,entityId:"user-prototype-database-property-id",entityType:n.Property},lB={like:!1,inferred:!1,id:"user-prototype-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:Mn,asType:!1,defaultValue:{id:"user-prototype-database-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.EntityTemplate,valueAsType:pc,autogeneration:null,parent:sB},parent:oB},cB={id:"user-prototype-database-property-parent-ref-id",type:n.GenericReference,entityId:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",entityType:n.CustomEntity},dB={hidden:!1,required:!0,id:"user-prototype-database-property-id",name:"Database",version:1,type:n.Property,private:!1,abstract:!1,implements:Ui,static:!0,index:0,dataType:lB,description:"The database that the entity belongs to.",parent:cB},uB={type:n.GenericReference,id:"user-prototype-parent-ref-id",entityType:n.Project,entityId:H},yc={type:n.CustomEntity,id:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",version:1,name:"User",description:"A user of the application",implements:[ke],abstract:!1,static:!1,abstractMethods:[],extends:[],properties:[dB],methods:[],x:0,y:0,parent:uB},pB={type:n.GenericReference,id:"person-date-of-birth-property-data-type-parent-ref-id",entityType:n.Property,entityId:"person-date-of-birth-property-id"},yB={like:!1,inferred:!1,id:"person-date-of-birth-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:pn,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:pB},hB={type:n.GenericReference,id:"person-date-of-birth-property-parent-ref-id",entityType:n.CustomEntity,entityId:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},fB={hidden:!1,required:!0,type:n.Property,id:"person-date-of-birth-property-id",version:1,name:"Date of birth",description:"The date of birth of the person",implements:null,private:!1,static:!1,index:0,dataType:yB,abstract:!1,parent:hB},mB={type:n.GenericReference,id:"a2867827-2f8e-4c25-b18b-d91857d7f24e",entityType:n.Property,entityId:"cacfec92-46c3-4fca-a1d9-fd1ba94d78c7"},TB={like:!1,inferred:!1,id:"1d49f41b-17b9-4f48-87aa-3ce43498e5a9",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:mB},EB={type:n.GenericReference,id:"01cbe760-40a9-4f49-8e3d-194d2f57cb1e",entityType:n.CustomEntity,entityId:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},bB={hidden:!1,required:!0,type:n.Property,id:"cacfec92-46c3-4fca-a1d9-fd1ba94d78c7",version:1,name:"Name",description:"The name of the person",implements:null,private:!1,static:!1,index:0,dataType:TB,abstract:!1,parent:EB},RB={type:n.GenericReference,id:"3542b22a-3a2f-41c6-876e-24c885572498",entityType:n.Project,entityId:H},ht={type:n.CustomEntity,id:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416",version:1,name:"Person",description:"A entity to store more information about a person than the user entity does, to split the responsibilities and keep it the logic clean.",properties:[bB,fB],abstract:!1,static:!1,abstractMethods:[],methods:[],implements:[],extends:[yc],x:0,y:0,parent:RB},vB={type:n.GenericReference,id:"b59c80b7-b2e9-41e9-abcd-7c5652835efc",entityType:n.FunctionDeclaration,entityId:"36f29f96-c001-4b9a-b49c-83eff406a060"},gB={type:n.GenericReference,id:"1190b5a2-f25e-46db-884d-8a3dd1a44d94",entityType:n.ReturnStatement,entityId:"3ebc4342-c9e8-42e7-a61c-7937081e1d2e"},IB={type:n.GenericReference,id:"36c63126-7814-496f-a6cc-48662c2aabae",entityType:n.ArgumentDeclaration,entityId:"500dee3a-3435-4453-9699-0d053f646523"},DB={type:n.GenericReference,id:"c567e55d-ec12-4e4e-958e-f07522892b4b",entityType:n.ReturnDeclaration,entityId:"9e070523-7e07-4100-8637-960a187f5f14"},PB={like:!1,inferred:!1,id:"3973c5a1-f0d8-49a0-a9a9-a0009bf3f0d8",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:DB},hc={isError:!1,id:"9e070523-7e07-4100-8637-960a187f5f14",type:n.ReturnDeclaration,version:1,name:"Output Account Owner",description:null,dataType:PB,implements:null,readsValue:IB,required:!0,index:0,parent:gB},AB={type:n.GenericReference,id:"567d923c-20da-4c1e-956d-962ea30c6d0b",entityType:n.FunctionDeclaration,entityId:"36f29f96-c001-4b9a-b49c-83eff406a060"},OB={type:n.GenericReference,id:"da85e620-59f3-42ab-88c8-b38d33c2c833",entityType:n.FunctionDeclaration,entityId:"36f29f96-c001-4b9a-b49c-83eff406a060"},CR={type:n.ReturnStatement,id:"3ebc4342-c9e8-42e7-a61c-7937081e1d2e",version:1,outputs:[hc],calledByError:[],calledByEntry:[AB],calledBySuccess:[],throws:null,x:0,y:0,parent:OB},SB={type:n.GenericReference,id:"1c806bb7-4c25-4bad-963b-93dfbb7c8304",entityType:n.ArgumentDeclaration,entityId:"500dee3a-3435-4453-9699-0d053f646523"},CB={like:!1,inferred:!1,id:"d90fcc18-642b-433c-8fcb-4094b9031cd5",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:SB},BR={id:"500dee3a-3435-4453-9699-0d053f646523",type:n.ArgumentDeclaration,version:1,name:"New Account Owner",description:null,dataType:CB,implements:null,required:!0,writesValues:[hc],index:0,parent:vB},BB={type:n.GenericReference,id:"83dceb60-f3c4-4085-824c-85f2003bfd27",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},wR={type:n.FunctionDeclaration,id:"36f29f96-c001-4b9a-b49c-83eff406a060",version:1,name:"Change owner of bank account",description:null,implements:null,inputs:[BR],calls:[CR],returnStatements:[CR],index:0,collapsed:!1,private:!1,x:0,y:0,parent:BB},wB={type:n.GenericReference,id:"adbaf302-ffa9-49b6-a3c6-83f9a75068e3",entityType:n.VariableDeclaration,entityId:"8e36a476-766e-4cc2-a8a7-27a07dfb5a4b"},_B={like:!1,inferred:!1,id:"79ee04aa-1ba4-4ae9-a406-ed45e5b03f7f",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:wB},NB={type:n.GenericReference,id:"55e212d1-f0ec-4bb6-acbe-60f741367daf",entityType:n.OutputMap,entityId:"dc9ddb8f-02a0-4a43-aea6-270ec7b7f8a4"},MB={type:n.GenericReference,id:"944e1171-3d9b-4559-9386-1d4974b15962",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},VB={id:"8e36a476-766e-4cc2-a8a7-27a07dfb5a4b",type:n.VariableDeclaration,version:1,name:"Output Account Owner",description:null,dataType:_B,readsValue:NB,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:MB},LB={type:n.GenericReference,id:"b89ebc83-52cf-4447-a5ae-62241f713079",entityType:n.FunctionCall,entityId:"78f6dba8-bed8-44cd-8b0f-6dcc787d1e1e"},GB={id:"dc9ddb8f-02a0-4a43-aea6-270ec7b7f8a4",type:n.OutputMap,version:1,declaration:hc,writesValues:[VB],index:0,parent:LB},$B={type:n.GenericReference,id:"c1b9e125-1aad-48b7-9687-95c57a6bc10d",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},FB={type:n.GenericReference,id:"d2deaa02-e164-4425-905c-6dee47eb4eac",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},UB={type:n.GenericReference,id:"1109a655-ac62-4110-a933-42a72106f4f0",entityType:n.VariableDeclaration,entityId:"8bea6986-8da2-487b-905d-2fb962db6728"},xB={like:!1,inferred:!1,id:"7d9a1307-512e-42ec-9797-2f7229796b97",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:UB},jB={type:n.GenericReference,id:"bb61ebf7-57b3-4d14-905d-82ec907205b5",entityType:n.ArgumentDeclaration,entityId:"38f6b236-98ac-47b0-ab9c-d2f9610137b9"},kB={type:n.GenericReference,id:"6b8c7bf2-9fc8-4ea4-9ec0-f41679d513b1",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},qB={type:n.GenericReference,id:"6163d1a1-7a94-49b1-95bb-aecd8d6d335c",entityType:n.FunctionCall,entityId:"78f6dba8-bed8-44cd-8b0f-6dcc787d1e1e"},JB={type:n.GenericReference,id:"1f900f62-4bd2-4246-94aa-b8f5aad384fd",entityType:n.VariableDeclaration,entityId:"8bea6986-8da2-487b-905d-2fb962db6728"},_R={id:"be8538be-e6f9-4b94-9314-a546003ebaa0",type:n.InputMap,version:1,declaration:BR,name:null,description:null,readsValue:JB,defaultValue:null,index:0,parent:qB},WB={type:n.VariableDeclaration,id:"8bea6986-8da2-487b-905d-2fb962db6728",version:1,name:"Changed Account Owner",description:null,dataType:xB,readsValue:jB,writesValues:[_R],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:kB},HB={type:n.FunctionCall,id:"78f6dba8-bed8-44cd-8b0f-6dcc787d1e1e",version:1,declaration:wR,inputs:[_R],outputs:[GB],process:null,successCalls:[],errorCalls:[],calledByError:[],calledByEntry:[$B],calledBySuccess:[],parent:FB,error:null,x:0,y:0},YB={type:n.GenericReference,id:"2d47aba1-a918-46a7-8db7-78809928654a",entityType:n.ArgumentDeclaration,entityId:"38f6b236-98ac-47b0-ab9c-d2f9610137b9"},zB={like:!1,inferred:!1,id:"5583766c-e9a5-484c-8f43-f4b0a6a1876c",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:YB},ZB={type:n.GenericReference,id:"3e2a81e4-55b2-49f5-94eb-39135e95c3d7",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},KB={id:"38f6b236-98ac-47b0-ab9c-d2f9610137b9",type:n.ArgumentDeclaration,version:1,description:null,name:"New Company Owner",dataType:zB,implements:null,required:!0,index:0,writesValues:[WB],parent:ZB},XB={type:n.GenericReference,id:"30291b01-1b94-4d03-b434-dec122c2bc7d",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},QB={type:n.FunctionDeclaration,id:"15ee556d-681f-47de-a31f-16d4ba73cc4e",version:1,description:null,name:"Change Account Owner",inputs:[KB],collapsed:!0,returnStatements:[],calls:[HB],private:!1,index:0,implements:null,x:0,y:0,parent:XB},ew={type:n.GenericReference,id:"72c7ac0a-886e-4e10-b7ed-2f5a819a0233",entityType:n.Property,entityId:"b8f4656a-2b77-43ab-af51-7c32ddede044"},tw={like:!1,inferred:!1,id:"c09dd282-73f6-4077-a467-b66db20b9fc6",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:ew},nw={type:n.GenericReference,id:"8a950024-512c-4580-81db-a705410aeb99",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},rw={hidden:!1,required:!0,type:n.Property,id:"b8f4656a-2b77-43ab-af51-7c32ddede044",version:1,name:"Account number",description:null,private:!0,implements:null,static:!1,index:0,dataType:tw,abstract:!1,parent:nw},iw={type:n.GenericReference,id:"b6704b6c-c3bd-49d0-8ebc-82d03e726cbb",entityType:n.Property,entityId:"733d06a6-b8c5-44f3-a1f7-a8c9bd9e44ea"},aw={like:!1,inferred:!1,id:"c03e0b0a-88ab-401a-8833-4806738bdc37",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:iw},sw={type:n.GenericReference,id:"1ef999a7-e9ed-406a-866e-e58277fc985b",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},ow={hidden:!1,required:!0,type:n.Property,id:"733d06a6-b8c5-44f3-a1f7-a8c9bd9e44ea",version:1,description:null,name:"Account Owner",index:1,dataType:aw,implements:null,static:!1,private:!0,abstract:!1,parent:sw},lw={type:n.GenericReference,id:"d41d7f41-98b8-4f67-be92-c349fdda5156",entityType:n.Project,entityId:H},si={type:n.CustomEntity,id:"506946aa-30da-48e6-918f-ffd9eac58813",version:1,name:"Bank Account",description:null,abstract:!1,static:!1,abstractMethods:[],properties:[rw,ow],methods:[wR,QB],extends:[],implements:[ke],x:0,y:0,parent:lw},sa="bitcoin-api-response-id",NR="time-property-id",MR="disclaimer-property-id",VR="chart-name-property-id",LR="bpi-property-id",Us="bpi-entity-id",GR="usd-property-id",$R="gbp-property-id",FR="eur-property-id",oi="currency-entity-id",UR="currency-code-property-id",xR="currency-symbol-property-id",jR="currency-rate-property-id",kR="currency-description-property-id",qR="currency-rate-number-property-id",cw={type:n.GenericReference,id:"code-property-data-type-parent-ref-id",entityType:n.Property,entityId:UR},dw={like:!1,inferred:!1,id:"code-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,asType:!1,isNullable:!1,defaultValue:null,options:["USD","GBP","EUR"],constant:!1,parent:cw},uw={type:n.GenericReference,id:"code-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},pw={hidden:!1,required:!0,type:n.Property,id:UR,version:1,name:"code",description:null,dataType:dw,index:0,implements:null,static:!1,private:!1,abstract:!1,parent:uw},yw={type:n.GenericReference,id:"symbol-property-data-type-parent-ref-id",entityType:n.Property,entityId:xR},hw={like:!1,inferred:!1,id:"symbol-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,asType:!1,isNullable:!1,defaultValue:null,options:["&#36;","&pound;","&euro;"],constant:!1,parent:yw},fw={type:n.GenericReference,id:"symbol-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},mw={hidden:!1,required:!0,type:n.Property,id:xR,version:1,name:"symbol",description:null,index:0,dataType:hw,implements:null,static:!1,private:!1,abstract:!1,parent:fw},Tw={type:n.GenericReference,id:"rate-property-data-type-parent-ref-id",entityType:n.Property,entityId:jR},Ew={like:!1,inferred:!1,id:"rate-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Tw},bw={type:n.GenericReference,id:"rate-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},Rw={hidden:!1,required:!0,type:n.Property,id:jR,version:1,name:"rate",description:null,index:0,dataType:Ew,implements:null,static:!1,private:!1,abstract:!1,parent:bw},vw={type:n.GenericReference,id:"description-property-data-type-parent-ref-id",entityType:n.Property,entityId:kR},gw={like:!1,inferred:!1,id:"description-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:vw},Iw={type:n.GenericReference,id:"description-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},Dw={hidden:!1,required:!0,type:n.Property,id:kR,version:1,name:"description",description:null,dataType:gw,implements:null,static:!1,index:0,private:!1,abstract:!1,parent:Iw},Pw={type:n.GenericReference,id:"rate-number-property-data-type-parent-ref-id",entityType:n.Property,entityId:qR},Aw={like:!1,inferred:!1,id:"rate-number-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Pw},Ow={type:n.GenericReference,id:"rate-number-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},Sw={hidden:!1,required:!0,type:n.Property,id:qR,version:1,name:"rate_float",description:null,dataType:Aw,implements:null,static:!1,index:0,private:!1,abstract:!1,parent:Ow},Cw={type:n.GenericReference,id:"currency-prototype-parent-ref-id",entityType:n.Project,entityId:H},xs={type:n.CustomEntity,id:oi,version:1,name:"Currency",description:"This entity describes a currency in the Bitcoin Price Index.",properties:[pw,mw,Rw,Dw,Sw],static:!1,abstract:!1,abstractMethods:[],methods:[],extends:[],implements:[],x:0,y:0,parent:Cw},Bw={type:n.GenericReference,id:"usd-property-data-type-parent-ref-id",entityType:n.Property,entityId:GR},ww={like:!1,inferred:!1,id:"usd-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xs,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Bw},_w={type:n.GenericReference,id:"usd-property-parent-ref-id",entityType:n.CustomEntity,entityId:Us},Nw={hidden:!1,required:!0,id:GR,type:n.Property,version:1,name:"USD",description:null,index:0,dataType:ww,implements:null,static:!1,private:!1,abstract:!1,parent:_w},Mw={type:n.GenericReference,id:"gbp-property-data-type-parent-ref-id",entityType:n.Property,entityId:$R},Vw={like:!1,inferred:!1,id:"gbp-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xs,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Mw},Lw={type:n.GenericReference,id:"gbp-property-parent-ref-id",entityType:n.CustomEntity,entityId:Us},Gw={hidden:!1,required:!0,id:$R,type:n.Property,version:1,name:"GBP",description:null,index:0,dataType:Vw,implements:null,static:!1,private:!1,abstract:!1,parent:Lw},$w={type:n.GenericReference,id:"eur-property-data-type-parent-ref-id",entityType:n.Property,entityId:FR},Fw={like:!1,inferred:!1,id:"eur-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xs,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:$w},Uw={type:n.GenericReference,id:"eur-property-parent-ref-id",entityType:n.CustomEntity,entityId:Us},xw={hidden:!1,required:!0,id:FR,type:n.Property,version:1,name:"EUR",description:null,implements:null,static:!1,index:0,dataType:Fw,private:!1,abstract:!1,parent:Uw},jw={type:n.GenericReference,id:"bpi-prototype-parent-ref-id",entityType:n.Project,entityId:H},JR={type:n.CustomEntity,id:Us,version:1,name:"BPI",description:"The Bitcoin Price Index",properties:[Nw,Gw,xw],abstract:!1,static:!1,abstractMethods:[],methods:[],extends:[],implements:[],x:0,y:0,parent:jw},kw={type:n.GenericReference,id:"time-property-data-type-parent-ref-id",entityType:n.Property,entityId:NR},qw={like:!1,inferred:!1,id:"time-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:el,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:kw},Jw={type:n.GenericReference,id:"time-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},Ww={hidden:!1,required:!0,type:n.Property,id:NR,version:1,name:"time",description:null,index:0,dataType:qw,implements:null,static:!1,private:!1,abstract:!1,parent:Jw},Hw={type:n.GenericReference,id:"disclaimer-property-data-type-parent-ref-id",entityType:n.Property,entityId:MR},Yw={like:!1,inferred:!1,id:"disclaimer-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Hw},zw={type:n.GenericReference,id:"disclaimer-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},Zw={hidden:!1,required:!0,type:n.Property,id:MR,version:1,name:"disclaimer",description:null,index:0,dataType:Yw,implements:null,static:!1,private:!1,abstract:!1,parent:zw},Kw={type:n.GenericReference,id:"chart-name-property-data-type-parent-ref-id",entityType:n.Property,entityId:VR},Xw={like:!1,inferred:!1,id:"chart-name-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Kw},Qw={type:n.GenericReference,id:"chart-name-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},e_={hidden:!1,required:!0,type:n.Property,id:VR,version:1,name:"chartName",description:null,index:0,dataType:Xw,implements:null,static:!1,private:!1,abstract:!1,parent:Qw},t_={type:n.GenericReference,id:"bpi-property-data-type-parent-ref-id",entityType:n.Property,entityId:LR},n_={like:!1,inferred:!1,id:"bpi-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:JR,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:t_},r_={type:n.GenericReference,id:"bpi-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},i_={hidden:!1,required:!0,type:n.Property,id:LR,version:1,name:"bpi",description:null,implements:null,index:0,dataType:n_,static:!1,private:!1,abstract:!1,parent:r_},a_={type:n.GenericReference,id:"bitcoin-api-response-parent-ref-id",entityType:n.Project,entityId:H},WR={type:n.CustomEntity,id:sa,version:1,name:"Bitcoin API Response type",description:"The type of the data structure response from the Bitcoin API call",properties:[Ww,Zw,e_,i_],abstract:!1,static:!1,abstractMethods:[],methods:[],extends:[],implements:[],x:0,y:0,parent:a_},s_={type:n.GenericReference,id:"eefa0147-f873-484b-b4f3-9e6493aab183",entityType:n.ArgumentDeclaration,entityId:"f2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},o_={like:!1,inferred:!1,id:"b9f35112-dcb2-4b7c-8fb9-f196b3fa37f9",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:s_},l_={type:n.GenericReference,id:"128770d6-5e3a-4aff-bca0-ad1f32ebefa8",entityType:n.ReturnStatement,entityId:"e4e05975-c277-471a-b869-f0aed316045c"},c_={type:n.GenericReference,id:"0be84bf9-6421-42b9-980f-6a03f30cb809",entityType:n.ReturnDeclaration,entityId:"a1ec31f0-25ca-42ac-a4c4-c9ec2255f55b"},d_={like:!1,inferred:!1,id:"43daa02a-237b-4b7c-a6e9-2b8c167f6e22",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:c_},u_={type:n.GenericReference,id:"ad380383-4a47-43da-968e-75a2d603b230",entityType:n.ArgumentDeclaration,entityId:"f2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},HR={isError:!1,id:"a1ec31f0-25ca-42ac-a4c4-c9ec2255f55b",type:n.ReturnDeclaration,version:1,name:"New Company Owner",description:"The new owner of the company",implements:null,dataType:d_,readsValue:u_,required:!0,index:0,parent:l_},p_={type:n.GenericReference,id:"4f24dc27-59a1-49bf-abcc-7d72b00926e4",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},y_={id:"f2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a",type:n.ArgumentDeclaration,version:1,name:"New Company Owner",description:null,implements:null,dataType:o_,writesValues:[HR],required:!0,index:0,parent:p_},h_={type:n.GenericReference,id:"5c9a02f0-d2cf-4efc-828e-467f33a74dd3",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},f_={type:n.GenericReference,id:"2ff8f3da-e0c5-4f0f-b688-2c051c588786",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},m_={type:n.GenericReference,id:"195ae28c-159b-42de-80b1-2ebb8be3619f",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},YR={type:n.ReturnStatement,id:"e4e05975-c277-471a-b869-f0aed316045c",version:1,outputs:[HR],calledByError:[],calledByEntry:[f_],calledBySuccess:[],throws:null,x:0,y:0,parent:m_},T_={type:n.FunctionDeclaration,id:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4",version:1,name:"Change owner of company",description:"Change the owner of the company to a new person",inputs:[y_],calls:[YR],index:0,collapsed:!1,implements:null,returnStatements:[YR],private:!1,x:0,y:0,parent:h_},E_={type:n.GenericReference,id:"e691026f-6db0-43ec-93cd-805ae7d713e3",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},b_={type:n.GenericReference,id:"29c4e3e0-1b66-4075-b559-45b27c5cf356",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},R_={type:n.GenericReference,id:"b1289358-b185-455d-8f58-7791b15cd52a",entityType:n.ReturnStatement,entityId:"9690cd1d-ea35-4e83-823d-0c7310265fee"},v_={type:n.GenericReference,id:"d847bb49-8789-4550-bb2d-e2d551993b28",entityType:n.VariableDeclaration,entityId:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a"},g_={type:n.GenericReference,id:"06535500-c37c-4915-8398-1d4e184fa5e7",entityType:n.ReturnDeclaration,entityId:"e7a35277-a0c4-46d5-aca2-bddd0c26e931"},I_={like:!1,inferred:!1,id:"d358dd91-35f7-4095-b728-3fb3c71dbc05",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:_n,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:g_},fc={isError:!1,id:"e7a35277-a0c4-46d5-aca2-bddd0c26e931",type:n.ReturnDeclaration,version:1,name:"Is name registered",description:"Whether the company name is already registered",dataType:I_,implements:null,readsValue:v_,required:!0,index:0,parent:R_},D_={type:n.GenericReference,id:"gov-company-registry-return-statement-called-by-success-ref-id",entityType:n.VariableDeclaration,entityId:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a"},mc={type:n.ReturnStatement,id:"9690cd1d-ea35-4e83-823d-0c7310265fee",version:1,outputs:[fc],calledByError:[],calledByEntry:[],calledBySuccess:[E_,D_],throws:null,x:0,y:0,parent:b_},P_={type:n.GenericReference,id:"b3126414-4c9b-495f-901e-59f5073c8d67",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},A_={type:n.GenericReference,id:"35115c48-618b-411b-a290-d746d22fdd10",entityType:n.VariableDeclaration,entityId:"83e12ebb-c958-4dee-b750-8ab9930f0f4e"},zR={id:"a0e7b4e5-2f5f-4d4c-8f5c-1e1f1e1a1b1a",type:n.InputMap,version:1,declaration:El,name:null,description:null,readsValue:A_,defaultValue:null,parent:P_,index:2},O_={type:n.GenericReference,id:"14f46eae-04a5-47d1-9c7f-28fb09b84d1d",entityType:n.VariableDeclaration,entityId:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a"},S_={like:!1,inferred:!1,id:"990bd5d1-07ea-4253-acc1-d03bedd22a38",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:_n,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:O_},C_={type:n.GenericReference,id:"e4c3542a-8fb0-4b72-8d6e-3fdff812dd67",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},B_={type:n.GenericReference,id:"825f9f60-22a8-4cc6-9055-d7333f8e92f4",entityType:n.OutputMap,entityId:"8f30d787-9459-4d8d-98a2-b46fbc2006d5"},w_={type:n.GenericReference,id:"is-company-name-registered-var-called-by-ref",entityType:n.Operation,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},ZR={type:n.VariableDeclaration,id:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a",version:1,name:"Is name registered",description:"Whether the company name is registered with the government company registry",dataType:S_,readsValue:B_,writesValues:[fc],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[w_],successCalls:[mc],errorCalls:[],internalCalls:[],x:0,y:0,parent:C_},__={type:n.GenericReference,id:"1aba021e-48ef-44ac-93d0-eaecac5895da",entityType:n.InputMap,entityId:"c3c8d6c1-3e0d-4e6c-9f9c-6b8c7d7f8e9a"},N_={type:n.GenericReference,id:"dffae7e0-0a5c-4c14-8ed2-8d680b4c4c86",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},M_={type:n.InputMap,id:"c3c8d6c1-3e0d-4e6c-9f9c-6b8c7d7f8e9a",version:1,declaration:Za,name:null,description:null,readsValue:null,defaultValue:{id:"gov-http-request-url-argument-default-value-id",type:n.PrimitiveValue,version:1,value:"https://api.publicapis.org/entries",name:P.String,valueAsType:null,parent:__,autogeneration:null},index:1,parent:N_},V_={type:n.GenericReference,id:"64ae61f5-ace7-401b-926d-25f852daa60e",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},L_={id:"8f30d787-9459-4d8d-98a2-b46fbc2006d5",type:n.OutputMap,version:1,declaration:ts,index:2,writesValues:[ZR],parent:V_},G_={type:n.GenericReference,id:"62a1a086-caea-4270-9c9f-a1695503e745",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},$_={id:"48cf7654-8f3e-4fcd-abc6-740876c310a0",type:n.InputMap,version:1,declaration:za,name:null,description:null,readsValue:null,index:0,defaultValue:null,parent:G_},F_={type:n.GenericReference,id:"b0c9c79f-f525-428d-99e7-087d3237ad62",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},U_={id:"2c1dc406-4b71-4023-87b2-abede3a111d2",type:n.InputMap,version:1,name:null,description:null,declaration:Ka,index:3,readsValue:null,defaultValue:null,parent:F_},x_={type:n.GenericReference,id:"9887d6c9-d75b-4c97-b722-e2e60945ea20",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},j_={id:"3fef94b2-0278-43ae-b0c5-bc7083f0a111",type:n.InputMap,version:1,declaration:Xa,name:null,description:null,readsValue:null,index:4,defaultValue:null,parent:x_},k_={type:n.GenericReference,id:"561275b6-5056-45d8-bf7d-8abaa4645593",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},q_={id:"3efe20a7-4d63-411e-89ef-63e277f48d66",type:n.OutputMap,version:1,declaration:es,index:1,writesValues:[],parent:k_},J_={type:n.GenericReference,id:"3170ccc2-13de-4bfc-802a-a643be41cd42",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},W_={id:"40d34323-d7e6-440a-8016-67c05a3b66dd",type:n.OutputMap,version:1,declaration:Qa,index:0,writesValues:[],parent:J_},H_={type:n.GenericReference,id:"7432fa82-f574-4c54-a8fa-4cc4376da3d5",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},Y_={type:n.GenericReference,id:"8f518502-9eea-462c-8753-8bc3bf3e29a9",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},z_={type:n.GenericReference,id:"123b8f18-79d9-4166-a5f6-78ec4b461680",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},Z_={type:n.GenericReference,id:"e691026f-6db0-43ec-93cd-805ae7d713e3",entityType:n.FunctionCall,entityId:"abb5d456-ee85-4800-bdd9-d409415f60d7"},K_={type:n.GenericReference,id:"a375eedf-4811-41aa-a998-4897c69c46b9",entityType:n.ReturnDeclaration,entityId:"024a9b77-c1cd-4b67-b3ba-1935046b590d"},X_={like:!1,inferred:!1,id:"767cc5ed-20ec-4fd1-89b1-c8d19daa87d1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:K_},Q_={type:n.GenericReference,id:"e64b0c23-129d-4d74-8ab4-eec60e1e5b9b",entityType:n.ReturnStatement,entityId:"ea444a9e-6a5b-4138-b81f-0d5618c3c6f3"},KR={isError:!0,id:"024a9b77-c1cd-4b67-b3ba-1935046b590d",type:n.ReturnDeclaration,version:1,name:"Error",description:"The error that occurred during the HTTP request to the government company registry",dataType:X_,implements:null,required:!0,readsValue:null,index:0,parent:Q_},eN={type:n.ReturnStatement,id:"ea444a9e-6a5b-4138-b81f-0d5618c3c6f3",version:1,outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[Z_],throws:KR,x:0,y:0,parent:z_},tN={type:n.GenericReference,id:"323814fb-9723-49ef-bbba-f882384f18e4",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},nN={id:"2f63f7ba-0ff0-458a-92bc-65d1dd4df8c3",type:n.OutputMap,declaration:bl,version:1,writesValues:[KR],index:0,parentRelationType:Wr.Error,parent:tN},rN={type:n.Operation,id:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7",version:1,declaration:Mi,inputs:[$_,M_,zR,U_,j_],outputs:[W_,q_,L_],process:null,calledByError:[],calledByEntry:[H_],calledBySuccess:[],successCalls:[mc,ZR],errorCalls:[eN],error:nN,x:0,y:0,parent:Y_},iN={type:n.GenericReference,id:"597b8aa2-f6f2-4f7d-bbb9-b703d02de96a",entityType:n.InputMap,entityId:"b0e7b4e5-2f5f-4d4c-8f5c-1e1f1e1a1b1a"},aN={type:n.GenericReference,id:"546d99b3-28c4-4186-93a0-ac53c1565e07",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},sN={id:"b0e7b4e5-2f5f-4d4c-8f5c-1e1f1e1a1b1a",type:n.InputMap,version:1,declaration:Wa,name:null,description:null,readsValue:null,defaultValue:{id:"base-query-string-map-default-value-id",type:n.PrimitiveValue,version:1,value:"?name=",name:P.String,parent:iN,valueAsType:null,autogeneration:null},index:0,parent:aN},oN={type:n.GenericReference,id:"6a56fb22-82e1-47c9-bf85-41c4e5986c74",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},lN={type:n.GenericReference,id:"191c6a6d-9bcb-441e-bf98-de0da96f5f3a",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},cN={type:n.GenericReference,id:"d8fcbb76-dae2-40cf-847a-02364721b387",entityType:n.VariableDeclaration,entityId:"83e12ebb-c958-4dee-b750-8ab9930f0f4e"},dN={like:!1,inferred:!1,id:"6a70c42b-024a-47c6-8a9d-af52be9c9b9a",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:cN},uN={type:n.GenericReference,id:"2282e2c0-ed9e-4c7b-86fc-1a364fa0fdb8",entityType:n.OutputMap,entityId:"f6c22cf8-63e4-4b2d-b649-b5ab884cf9a5"},pN={type:n.GenericReference,id:"assembled-query-string-called-by-ref",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},XR={type:n.VariableDeclaration,id:"83e12ebb-c958-4dee-b750-8ab9930f0f4e",version:1,name:"Query string",description:"The final, assembled query string that will be used in the HTTP request to the government company registry",dataType:dN,readsValue:uN,writesValues:[zR],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[pN],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:lN},yN={id:"f6c22cf8-63e4-4b2d-b649-b5ab884cf9a5",type:n.OutputMap,version:1,writesValues:[XR],declaration:_i,index:0,parent:oN},hN={type:n.GenericReference,id:"a1b48e7c-0301-4747-b4dd-b5af79956f7f",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},fN={type:n.GenericReference,id:"487c9235-be95-4c96-b9b5-2714b374a277",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},mN={type:n.GenericReference,id:"f6471f4f-b269-46fa-80ec-885e87a449c2",entityId:"a4106e8e-ec4f-4633-a636-09ae73135f69",entityType:n.ArgumentDeclaration},TN={type:n.GenericReference,id:"62b4afb0-6c21-4b0f-abd3-cebef7b17c28",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},QR={id:"08f36e2b-bad2-425c-8129-93560bec8488",version:1,type:n.InputMap,declaration:Ha,name:null,description:null,readsValue:mN,defaultValue:null,index:1,parent:TN},EN={type:n.Operation,id:"8f2094c0-e27e-465e-9280-112da0de9019",declaration:Ni,version:1,inputs:[QR,sN],outputs:[yN],process:null,calledByError:[],calledByEntry:[hN],calledBySuccess:[],successCalls:[XR],errorCalls:[],error:null,x:0,y:0,parent:fN},bN={type:n.GenericReference,id:"c2e0e9b4-aa46-4974-bf8a-886b737b12fb",entityType:n.ArgumentDeclaration,entityId:"a4106e8e-ec4f-4633-a636-09ae73135f69"},RN={like:!1,inferred:!1,id:"a4279518-3bf3-44b7-a2ac-65142ca37f1c",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:bN},vN={type:n.GenericReference,id:"dc273f24-164b-4943-82f9-589b237141e2",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},ev={id:"a4106e8e-ec4f-4633-a636-09ae73135f69",type:n.ArgumentDeclaration,version:1,name:"Company Name to check",description:"The name of the company to check in the government registry",dataType:RN,implements:null,required:!1,writesValues:[QR],index:0,parent:vN},gN={type:n.GenericReference,id:"2178a10c-1cc0-4dad-97c3-0941be6c9738",entityType:n.Project,entityId:H},tv={type:n.FunctionDeclaration,id:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d",version:1,name:"Check Gov Company Registry availability",description:"Check whether the company name is already registered in the government company registry, or it is available for a new company to use.",inputs:[ev],calls:[EN,rN],returnStatements:[mc],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:gN},IN={type:n.GenericReference,id:"4d66c53c-f0f7-496a-9955-1e6c8533c5e0",entityType:n.Condition,entityId:"a8f4b0f2-5e5e-4e8f-9d7b-1b5b9b6e9a4b"},DN={type:n.GenericReference,id:"6fa0c8e0-d104-4b4d-a035-d4f6e0c49f09",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},PN={type:n.GenericReference,id:"146408d5-5336-4877-941a-777dd5871926",entityType:n.ArgumentDeclaration,entityId:"c6cf620c-1eee-4919-8578-1a0b6c088551"},AN={type:n.GenericReference,id:"34ae8f8c-548d-4654-984a-6f36affdaf49",entityType:n.FunctionCall,entityId:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},nv={id:"69b1215d-9ebf-4274-b9cb-d4a5888f5122",version:1,type:n.InputMap,declaration:ev,name:null,description:null,readsValue:PN,defaultValue:null,index:0,parent:AN},ON={type:n.GenericReference,id:"07540a94-dda1-40b3-8452-f209bdc87b88",entityType:n.FunctionCall,entityId:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},SN={type:n.GenericReference,id:"eaddf12a-a995-429e-90a0-13bf06efeb28",entityType:n.VariableDeclaration,entityId:"faaf3bf6-917d-40d7-aee6-5164f6646c4b"},CN={like:!1,inferred:!1,id:"7fdaf943-3ffb-48e0-b766-b86cc24090cf",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:_n,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:SN},BN={type:n.GenericReference,id:"030fb5c5-af4d-4c85-8cf0-e99edd50d2bd",entityType:n.OutputMap,entityId:"c1ec31f0-25ca-42ac-a4c4-c9ec2255f55b"},wN={type:n.GenericReference,id:"a8b618e9-c68c-48c1-8bd6-ef47c87d699e",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},_N={type:n.GenericReference,id:"is-company-name-valid-var-called-by-ref",entityType:n.FunctionCall,entityId:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},rv={type:n.VariableDeclaration,id:"faaf3bf6-917d-40d7-aee6-5164f6646c4b",version:1,name:"Is name valid",description:"Whether the company name is valid",dataType:CN,readsValue:BN,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[_N],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:wN},NN={id:"c1ec31f0-25ca-42ac-a4c4-c9ec2255f55b",type:n.OutputMap,version:1,declaration:fc,writesValues:[rv],index:0,parent:ON},MN={type:n.FunctionCall,id:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a",version:1,declaration:tv,inputs:[nv],outputs:[NN],calledByError:[],calledByEntry:[],process:null,calledBySuccess:[IN],successCalls:[rv],errorCalls:[],error:null,x:0,y:0,parent:DN},VN={type:n.GenericReference,id:"9d0b87b4-bfed-4e02-9e84-6831c21feae2",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},LN={type:n.GenericReference,id:"74345f4f-e80d-48be-adff-d12fcea25bec",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},GN={type:n.GenericReference,id:"b39279ea-969a-4efb-a9ec-353bfd13db65",entityType:n.ArgumentDeclaration,entityId:"c6cf620c-1eee-4919-8578-1a0b6c088551"},$N={type:n.GenericReference,id:"549db613-f225-4c5b-9634-7d096717f0ff",entityType:n.Condition,entityId:"a8f4b0f2-5e5e-4e8f-9d7b-1b5b9b6e9a4b"},iv={id:"358e242c-7448-442e-ab8b-fd7fa119ea71",version:1,type:n.InputMap,declaration:cr.inputs[0],name:null,description:null,readsValue:GN,defaultValue:null,index:0,parent:$N},FN={type:n.Condition,id:"a8f4b0f2-5e5e-4e8f-9d7b-1b5b9b6e9a4b",version:1,declaration:cr,inputs:[iv],calledByError:[],calledByEntry:[VN],calledBySuccess:[],successCalls:[MN],errorCalls:[],x:0,y:0,parent:LN},UN={type:n.GenericReference,id:"43ba1e25-f805-488f-8ae8-c58bb6215b2f",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},xN={type:n.GenericReference,id:"eb091bed-507f-4a1e-93b5-7cd2fccfe002",entityType:n.VariableDeclaration,entityId:"9c928995-0dd5-4f97-9962-56b343bc8a45"},jN={like:!1,inferred:!1,id:"d64152ea-831f-4426-9506-a39bfa170513",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:si,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:xN},kN={type:n.GenericReference,id:"7e79c29f-f7bd-441a-a77e-c627604dae94",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},qN={type:n.GenericReference,id:"8995ce5f-d5cf-4341-a8b1-5c046cc78b89",entityType:n.ArgumentDeclaration,entityId:"7ed0f7bb-2df0-44e2-b0b3-0709dcca8071"},JN={type:n.GenericReference,id:"new-company-bank-account-var-decl-1-called-by-ref",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},av={type:n.VariableDeclaration,id:"9c928995-0dd5-4f97-9962-56b343bc8a45",version:1,name:"New bank account",description:"The new entity value representing the new bank account of the company",dataType:jN,readsValue:qN,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[JN],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:kN},WN={type:n.GenericReference,id:"9a4887bf-d50d-43e4-bdd5-a5262f65f04b",entityType:n.ArgumentDeclaration,entityId:"7ed0f7bb-2df0-44e2-b0b3-0709dcca8071"},HN={like:!1,inferred:!1,id:"ae148c06-3143-49e9-9614-c3aca3f6fa7b",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:si,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:WN},YN={id:"7ed0f7bb-2df0-44e2-b0b3-0709dcca8071",type:n.ArgumentDeclaration,version:1,name:"New bank account",description:"The new bank account of the company",dataType:HN,implements:null,required:!0,index:1,writesValues:[av],parent:UN},zN={type:n.GenericReference,id:"caec9cf8-3133-48d4-a390-114fa71b2933",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},ZN={type:n.GenericReference,id:"cebcbad8-ca87-4c4b-be8a-312293d49892",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},KN={type:n.GenericReference,id:"7b8ccfe5-f9cd-4776-a19b-80c689bbe3df",entityType:n.ArgumentDeclaration,entityId:"c6cf620c-1eee-4919-8578-1a0b6c088551"},XN={like:!1,inferred:!1,id:"2a6b4703-ac8d-4d25-8abd-48a115577fec",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:KN},QN={id:"c6cf620c-1eee-4919-8578-1a0b6c088551",type:n.ArgumentDeclaration,version:1,name:"New company name",description:null,dataType:XN,implements:null,required:!0,index:0,writesValues:[iv,nv],parent:ZN},eM={type:n.FunctionDeclaration,id:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84",version:1,name:"Company changed event",description:"The event that is triggered when a company is changed",returnStatements:[],collapsed:!1,inputs:[QN,YN],calls:[FN,av],index:1,private:!1,implements:null,x:0,y:0,parent:zN},tM={type:n.GenericReference,id:"employee-manager-property-data-type-entity-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},nM={type:n.GenericReference,id:"employee-manager-property-data-type-parent-ref-id",entityType:n.Property,entityId:"employee-manager-property-id"},rM={like:!1,inferred:!1,id:"employee-manager-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:tM,isList:!1,isNullable:!0,asType:!1,defaultValue:null,constant:!1,parent:nM},iM={type:n.GenericReference,id:"employee-manager-property-parent-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},aM={hidden:!1,required:!0,type:n.Property,id:"employee-manager-property-id",version:1,name:"Manager",description:"The manager of the employee",index:0,implements:null,private:!1,static:!1,dataType:rM,abstract:!1,parent:iM},sM={type:n.GenericReference,id:"employee-start-date-property-data-type-parent-ref-id",entityType:n.Property,entityId:"employee-start-date-property-id"},oM={like:!1,inferred:!1,id:"employee-start-date-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:pn,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:sM},lM={type:n.GenericReference,id:"employee-start-date-property-parent-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},cM={hidden:!1,required:!0,type:n.Property,id:"employee-start-date-property-id",version:1,name:"Start date",description:"The date the employee started working in the company",index:0,private:!1,static:!1,implements:null,dataType:oM,abstract:!1,parent:lM},dM={type:n.GenericReference,id:"employee-department-property-ref-id",entityType:n.Property,entityId:"employee-department-property-id"},uM={like:!1,inferred:!1,id:"employee-department-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,isNullable:!1,asType:!1,options:["Human Resources","Finance","IT","Sales","Marketing","Customer Service","Logistics","Product"],defaultValue:null,constant:!1,parent:dM},pM={type:n.GenericReference,id:"employee-department-property-parent-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},yM={hidden:!1,required:!0,type:n.Property,id:"employee-department-property-id",version:1,name:"Department",description:"The department the employee works in, from a list of departments in the company",index:0,implements:null,static:!1,private:!1,dataType:uM,abstract:!1,parent:pM},hM={type:n.GenericReference,id:"employee-prototype-parent-ref-id",entityType:n.Project,entityId:H},Lt={type:n.CustomEntity,id:"employee-entity-id",version:1,name:"Employee",description:"A entity that represents an employee in the company",properties:[yM,cM,aM],abstract:!1,static:!1,abstractMethods:[],methods:[],implements:[],extends:[ht],x:0,y:0,parent:hM},fM={type:n.GenericReference,id:"dec8fbfe-9124-41fd-9f1c-5b2f07cfd6ba",entityType:n.Property,entityId:"4f52d044-f3dd-4bdf-927e-637c3b92e8bd"},mM={like:!1,inferred:!1,id:"bc0b8979-6c43-4d47-a712-6742b89e3c00",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:fM},TM={type:n.GenericReference,id:"4f8c0a05-466e-4672-b4c4-6bd408c0be9a",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},EM={hidden:!1,required:!0,type:n.Property,id:"4f52d044-f3dd-4bdf-927e-637c3b92e8bd",version:1,name:"Company Name",private:!1,static:!1,description:"The name of the company",index:0,implements:null,dataType:mM,abstract:!1,parent:TM},bM={type:n.GenericReference,id:"95173fe0-a6e6-443c-94f3-f7c5cf171fcf",entityType:n.Property,entityId:"80c86e1b-caca-4ba5-9b1f-38f72d10e4a3"},RM={like:!1,inferred:!1,id:"ddbb6f5c-0cf4-41fb-83b3-b6c47c0e338d",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:si,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:bM},vM={type:n.GenericReference,id:"6a9a0b72-a05d-4169-b3f3-5afb01e8d0df",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},Tc={hidden:!1,required:!0,type:n.Property,id:"80c86e1b-caca-4ba5-9b1f-38f72d10e4a3",version:1,name:"Bank account",description:"The bank account of the company",index:1,implements:null,static:!1,private:!1,dataType:RM,abstract:!1,parent:vM},gM={type:n.GenericReference,id:"62892cc6-d227-4088-90d3-ae7c15ed4af4",entityType:n.Property,entityId:"19a31727-1fba-40a5-be25-18e0f149d5cb"},IM={like:!1,inferred:!1,id:"1f7629df-dc29-4c89-8369-c6d043e97a9e",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:gM},DM={type:n.GenericReference,id:"89384206-fd5a-4f0a-849c-f777473e5773",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},PM={hidden:!1,required:!0,type:n.Property,id:"19a31727-1fba-40a5-be25-18e0f149d5cb",version:1,name:"Company Owner",description:"The person that owns the company",index:2,static:!1,implements:null,dataType:IM,private:!0,abstract:!1,parent:DM},AM={type:n.GenericReference,id:"4d2ffb6c-5f38-436e-8339-fb9878ac2b5e",entityType:n.Property,entityId:"f8310850-a87e-405c-b182-4f1d5fa49240"},OM={like:!1,inferred:!1,id:"ad44250b-40c2-48f7-a480-381fa938f562",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,isList:!0,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:AM},SM={type:n.GenericReference,id:"aa5d4eee-6fac-4e72-bf21-9c8750024541",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},CM={hidden:!1,required:!0,type:n.Property,id:"f8310850-a87e-405c-b182-4f1d5fa49240",version:1,name:"Employees",description:null,index:3,dataType:OM,implements:null,private:!0,static:!1,abstract:!1,parent:SM},BM={type:n.GenericReference,id:"e3c03b6b-2ea0-4d99-865d-5e6a348672d0",entityType:n.Project,entityId:H},Gt={type:n.CustomEntity,id:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d",version:1,name:"Company",description:null,properties:[EM,Tc,PM,CM],static:!1,abstract:!1,abstractMethods:[],methods:[T_,eM],extends:[],implements:[ke],x:0,y:0,parent:BM},wM={type:n.GenericReference,id:"ffcad334-138d-4b67-8fb3-5f0e6f5fefbd",entityType:n.Project,entityId:H},Ec={type:n.FunctionDeclaration,id:"0f89260c-8c58-4639-8629-d9ea5ab40ba7",version:1,name:"Show popup",description:null,inputs:[],calls:[],returnStatements:[],implements:null,collapsed:!1,private:!1,index:null,x:0,y:0,parent:wM};n.GenericReference,n.DataType;const _M={id:"cron-job-entity-expression-property-ref-id",type:n.GenericReference,entityId:"cron-job-entity-expression-property-id",entityType:n.Property},NM={like:!1,inferred:!1,id:"cron-job-entity-expression-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:_M},MM={id:"cron-job-entity-ref-id",type:n.GenericReference,entityId:"cron-job-entity-id",entityType:n.CustomEntity},VM={hidden:!1,required:!0,id:"cron-job-entity-expression-property-id",type:n.Property,version:1,name:"Cron expression",description:"The cron expression that defines when the cron job should be triggered",dataType:NM,implements:null,static:!0,private:!1,abstract:!1,index:0,parent:MM},LM={id:"cron-job-entity-trigger-show-popup-func-call-called-by-ref-one-id",type:n.GenericReference,entityId:"show-popup-func-decl-id",entityType:n.FunctionDeclaration},GM={id:"cron-job-entity-trigger-show-popup-func-call-parent-ref-id",type:n.GenericReference,entityId:"cron-job-entity-trigger-func-decl-id",entityType:n.FunctionDeclaration},$M={id:"cron-job-entity-trigger-show-popup-func-call-id",version:1,type:n.FunctionCall,declaration:Ec,inputs:[],outputs:[],process:null,successCalls:[],calledByError:[],calledByEntry:[LM],calledBySuccess:[],errorCalls:[],error:null,x:0,y:0,parent:GM},FM={id:"cron-job-entity-trigger-func-decl-parent-ref-id",type:n.GenericReference,entityId:"cron-job-entity-id",entityType:n.CustomEntity},UM={id:"cron-job-entity-trigger-func-decl-id",version:1,type:n.FunctionDeclaration,name:"Scheduled trigger",description:"The function that is called when the cron job is triggered",inputs:[],private:!1,implements:kl,calls:[$M],collapsed:!1,returnStatements:[],index:0,x:0,y:0,parent:FM},xM={id:"cron-job-entity-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},jM={id:"cron-job-entity-id",version:1,type:n.CustomEntity,name:"Run at 12pm on Christmas day",description:"A cron job that runs at 12pm on Christmas day",properties:[VM],static:!0,abstract:!1,abstractMethods:[],extends:[ql],implements:[],methods:[UM],x:0,y:0,parent:xM},kM={type:n.GenericReference,id:"52dbd85c-48b1-462a-8205-2437d6fb1cb4",entityType:n.Project,entityId:H},qM={type:n.CustomEntity,id:"6f0908c2-09c6-4a8b-8f43-d2467fe6fb39",version:1,name:"Get bank all bank accounts",description:null,properties:[],static:!0,abstract:!1,abstractMethods:[],methods:[],extends:[],implements:[ls],x:0,y:0,parent:kM},sv="f558fbf8-67de-4545-9804-6ae621e0b2d4",JM={id:"getCompanyByIdEndpointPathParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointPathParamsVariableDataType"},WM={id:"getCompanyByIdEndpointPathParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointPathParamsArgumentDeclaration"},HM={like:!1,inferred:!1,id:"getCompanyByIdEndpointPathParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:{id:"getCompanyByIdEndpointPathParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:JM,autogeneration:null,valueAsType:null},parent:WM},YM={id:"getCompanyByIdEndpointReachedEntityEventRef",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},zM={id:"getCompanyByIdEndpointRequestHeadersVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointRequestHeadersVariableDataType"},ZM={id:"getCompanyByIdEndpointRequestHeadersArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointRequestHeadersArgumentDeclaration"},KM={like:!1,inferred:!1,id:"getCompanyByIdEndpointRequestHeadersVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"getCompanyByIdEndpointRequestHeadersVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:zM,autogeneration:null,valueAsType:null},parent:ZM},XM={id:"getCompanyByIdEndpointRequestHeadersArgumentDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the request.",type:n.ArgumentDeclaration,writesValues:[],name:"Request headers",dataType:KM,implements:_l,required:!0,index:0,parent:YM},QM={id:"getCompanyByIdEndpointReachedEntityEventRefTwo",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},eV={id:"getCompanyByIdEndpointPathParamsArgumentDeclaration",type:n.ArgumentDeclaration,description:"A standarized text, without spaces that is added at the end of the domain and routes the request to a specific resource within the target server. For example: /api/users/123, /api/users/123/:name, /api/users/123/:name/:age.",version:1,name:"Path parameters",writesValues:[],dataType:HM,implements:Nl,required:!0,index:1,parent:QM},tV={id:"getCompanyByIdEndpointReachedEntityEventRefThree",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},nV={id:"getCompanyByIdEndpointRequestQueryParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointRequestQueryParamsVariableDataType"},rV={id:"getCompanyByIdEndpointRequestQueryParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointRequestQueryParamsArgumentDeclaration"},iV={like:!1,inferred:!1,id:"getCompanyByIdEndpointRequestQueryParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,asType:!1,entity:x,defaultValue:{id:"getCompanyByIdEndpointRequestQueryParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:nV,autogeneration:null,valueAsType:null},parent:rV},aV={id:"getCompanyByIdEndpointRequestQueryParamsArgumentDeclaration",version:1,description:"A text with standarized format, without spaces that is added at the end of the URL path, after the ? character. It contains data that might be used to process the request. For example: /api/users?name=John&age=30",type:n.ArgumentDeclaration,writesValues:[],name:"Request query params",dataType:iV,implements:Ml,required:!0,index:2,parent:tV},sV={id:"getCompanyByIdEndpointReachedEntityEventRefFour",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},oV={id:"getCompanyByIdEndpointRequestBodyArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointRequestBodyArgumentDeclaration"},lV={like:!1,inferred:!1,id:"getCompanyByIdEndpointRequestBodyVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:oV},cV={id:"getCompanyByIdEndpointRequestBodyArgumentDeclaration",version:1,description:"The main data payload of the request.",type:n.ArgumentDeclaration,writesValues:[],name:"Request body",dataType:lV,implements:Vl,index:3,required:!0,parent:sV},dV={id:"getCompanyByIdEndpointResponseCodeReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"getCompanyByIdEndpointResponseCodeReturnDeclaration"},uV={like:!1,inferred:!1,id:"9ba575b0-6f8e-436d-a3de-3b843622aa17",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:dV},pV={id:"getCompanyByIdEndpointReturnStatementRef",type:n.GenericReference,entityType:n.ReturnStatement,entityId:"getCompanyByIdEndpointReturnStatement"},yV={isError:!1,id:"getCompanyByIdEndpointResponseCodeReturnDeclaration",version:1,description:"A standarized number that represents the status of the response. 200 for OK, 404 for not found, 500 for server error, etc.",type:n.ReturnDeclaration,name:"Response code",dataType:uV,implements:Ll,readsValue:null,required:!0,index:0,parent:pV},hV={id:"getCompanyByIdEndpointResponseHeadersDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointResponseHeadersDataType"},fV={id:"getCompanyByIdEndpointResponseHeadersReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"getCompanyByIdEndpointResponseHeadersReturnDeclaration"},mV={like:!1,inferred:!1,id:"getCompanyByIdEndpointResponseHeadersDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"getCompanyByIdEndpointResponseHeadersDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:hV,autogeneration:null,valueAsType:null},parent:fV},TV={id:"getCompanyByIdEndpointReturnStatementRefTwo",type:n.GenericReference,entityType:n.ReturnStatement,entityId:"getCompanyByIdEndpointReturnStatement"},EV={isError:!1,id:"getCompanyByIdEndpointResponseHeadersReturnDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the response.",type:n.ReturnDeclaration,name:"Response headers",dataType:mV,implements:Gl,readsValue:null,required:!0,index:1,parent:TV},bV={id:"getCompanyByIdEndpointResponseBodyReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"getCompanyByIdEndpointResponseBodyReturnDeclaration"},RV={like:!1,inferred:!1,id:"getCompanyByIdEndpointResponseBodyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:bV},vV={id:"getCompanyByIdEndpointReturnStatementRefThree",type:n.GenericReference,entityType:n.ReturnStatement,entityId:"getCompanyByIdEndpointReturnStatement"},gV={isError:!1,id:"getCompanyByIdEndpointResponseBodyReturnDeclaration",version:1,description:"The main data payload of the response.",type:n.ReturnDeclaration,name:"Response body",implements:$l,dataType:RV,readsValue:null,required:!0,index:2,parent:vV},IV={id:"getCompanyByIdEndpointReturnStatementCallerRef",type:n.GenericReference,entityId:"getCompanyByIdEndpointReachedEntityEvent",entityType:n.FunctionDeclaration},DV={id:"getCompanyByIdEndpointReachedEntityEventRefFive",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},PV={id:"getCompanyByIdEndpointReturnStatement",type:n.ReturnStatement,version:1,outputs:[yV,EV,gV],calledByError:[],calledByEntry:[IV],calledBySuccess:[],throws:null,x:0,y:0,parent:DV},AV={id:"endpointBuiltInBaseEntityRefFour",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:sv},OV={id:"getCompanyByIdEndpointReachedEntityEvent",name:"Endpoint reached",version:1,type:n.FunctionDeclaration,inputs:[XM,eV,aV,cV],returnStatements:[PV],description:"Fired when the endpoint is reached.",calls:[],collapsed:!1,implements:Fl,index:0,private:!1,x:0,y:0,parent:AV},SV={id:"getCompanyByIdEndpointPathPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointPathPropertyDataType"},CV={id:"getCompanyByIdEndpointPathPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:"getCompanyByIdEndpointPathProperty"},BV={like:!1,inferred:!1,id:"getCompanyByIdEndpointPathPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"getCompanyByIdEndpointPathPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.String,value:"/company/{id}",parent:SV,valueAsType:null,autogeneration:null},parent:CV},wV={id:"getCompanyByIdEndpointBaseEntityRefTwo",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},_V={hidden:!1,required:!0,id:"getCompanyByIdEndpointPathProperty",name:"Path",version:1,type:n.Property,private:!1,abstract:!1,static:!0,implements:Bl,dataType:BV,index:1,description:"Path to the endpoint, for example /api/users, or /api/users/{id}, or /api/users/{id}/:name. The path can contain parameters, which are defined by curly braces, and will be passed to the endpoint event as variables with the same name.",parent:wV},NV={id:"getCompanyByIdEndpointMethodPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointMethodPropertyDataType"},MV={id:"getCompanyByIdEndpointMethodPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:"getCompanyByIdEndpointMethodProperty"},VV={like:!1,inferred:!1,id:"getCompanyByIdEndpointMethodPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:Nn,isList:!0,isNullable:!1,constant:!0,asType:!1,defaultValue:{id:"getCompanyByIdEndpointMethodPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,value:"GET",name:P.Enum,parent:NV,valueAsType:null,autogeneration:null},options:["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD","TRACE","CONNECT","CUSTOM"],parent:MV},LV={id:"getCompanyByIdEndpointBaseEntityRefThree",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},GV={hidden:!1,required:!0,id:"getCompanyByIdEndpointMethodProperty",name:"Method",version:1,type:n.Property,private:!1,abstract:!1,static:!0,implements:wl,index:0,dataType:VV,description:null,parent:LV},$V={type:n.GenericReference,id:"6a905153-8aa8-4424-bd7b-6415731a2725",entityType:n.Project,entityId:H},FV={type:n.CustomEntity,id:sv,version:1,name:"Get given company data by id",description:null,properties:[_V,GV],methods:[OV],static:!0,abstract:!1,abstractMethods:[],extends:[],implements:[ls],x:0,y:0,parent:$V},UV={id:"product-prototype-database-property-ref-id",type:n.GenericReference,entityId:"product-prototype-database-property-id",entityType:n.Property},xV={id:"product-prototype-database-property-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"product-prototype-database-property-data-type-default-value-id",entityType:n.DataType},jV={like:!1,inferred:!1,id:"product-prototype-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:Mn,asType:!1,defaultValue:{id:"product-prototype-database-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.EntityTemplate,valueAsType:pc,autogeneration:null,parent:xV},parent:UV},kV={id:"product-prototype-database-property-parent-ref-id",type:n.GenericReference,entityId:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",entityType:n.CustomEntity},qV={hidden:!1,required:!0,id:"product-prototype-database-property-id",name:"Database",version:1,type:n.Property,private:!1,abstract:!1,implements:Ui,static:!0,index:0,dataType:jV,description:"The database that the entity belongs to.",parent:kV},JV={type:n.GenericReference,id:"13a4045e-dcb0-4159-8d33-10a646078b5a",entityType:n.Property,entityId:"d519c26a-15b8-40d8-ad09-13fa9342e9ba"},WV={like:!1,inferred:!1,id:"7449779e-1d4e-409c-81c6-4b611336ed18",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:JV},HV={type:n.GenericReference,id:"0969562f-d836-406f-8b48-dd9d417fbe72",entityType:n.CustomEntity,entityId:"a2d0ec83-72ce-4f54-b059-a39e018fa86c"},YV={hidden:!1,required:!0,type:n.Property,id:"d519c26a-15b8-40d8-ad09-13fa9342e9ba",version:1,name:"Name",description:"The name of the product",index:0,implements:null,static:!1,private:!1,dataType:WV,abstract:!1,parent:HV},zV={type:n.GenericReference,id:"833a5425-7bd0-41dd-9e97-e018acce9592",entityType:n.Project,entityId:H},ZV={type:n.CustomEntity,id:"a2d0ec83-72ce-4f54-b059-a39e018fa86c",version:1,name:"Product",description:"A product that can be sold",implements:[ke],extends:[],abstract:!1,static:!1,abstractMethods:[],properties:[qV,YV],methods:[],x:0,y:0,parent:zV},oa="project-loaded-event-id",tn="get-bitcoin-price-http-call-operation-id",ov="get-bitcoin-price-http-call-response-body-id",js="validate-bitcoin-price-response-operation-ids",KV={type:n.GenericReference,id:"validate-bitcoin-data-to-validate-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:ov},XV={type:n.GenericReference,id:"validate-bitcoin-data-to-validate-input-map-parent-ref-id",entityType:n.Operation,entityId:js},lv={id:"validate-bitcoin-data-to-validate-input-map-id",type:n.InputMap,version:1,declaration:rr.inputs[1],name:null,description:null,readsValue:KV,defaultValue:null,index:0,parent:XV},QV={type:n.GenericReference,id:"validate-bitcoin-type-to-match-input-map-default-value-parent-ref-id",entityType:n.InputMap,entityId:"validate-bitcoin-type-to-match-input-map-id"},e1={type:n.GenericReference,id:"validate-bitcoin-type-to-match-input-map-parent-ref-id",entityType:n.Operation,entityId:js},t1={id:"validate-bitcoin-type-to-match-input-map-id",type:n.InputMap,version:1,declaration:rr.inputs[0],name:null,description:null,readsValue:null,defaultValue:{id:"validate-bitcoin-type-to-match-input-map-default-value-id",type:n.PrimitiveValue,version:1,name:P.EntityTemplate,valueAsType:WR,value:null,parent:QV,autogeneration:null},index:0,parent:e1},n1={type:n.GenericReference,id:"validate-bitcoin-validated-entity-output-map-parent-ref-id",entityType:n.Operation,entityId:js},r1={id:"validate-bitcoin-validated-entity-output-map-id",type:n.OutputMap,version:1,declaration:rr.outputs[0],writesValues:[],index:0,parent:n1},i1={type:n.GenericReference,id:"validate-bitcoin-price-response-operation-parent-ref-id",entityType:n.GlobalEvent,entityId:oa},a1={type:n.GenericReference,id:"validate-bitcoin-price-response-operation-called-by-ref-id",entityType:n.Operation,entityId:tn},s1={type:n.Operation,id:js,version:1,declaration:rr,inputs:[t1,lv],outputs:[r1],process:null,successCalls:[],errorCalls:[],error:null,x:0,y:0,calledByError:[],calledByEntry:[],calledBySuccess:[a1],parent:i1},o1={type:n.GenericReference,id:"96edb661-3f36-406c-8921-f1679dd796a3",entityType:n.FunctionCall,entityId:tn},l1={id:"c93e1393-9b5e-4de2-b8da-7eae647d715a",version:1,type:n.InputMap,declaration:za,name:null,description:null,readsValue:null,defaultValue:null,index:0,parent:o1},c1={type:n.GenericReference,id:"40312b28-71b8-4b01-a654-58b87191939d",entityType:n.FunctionCall,entityId:tn},d1={type:n.GenericReference,id:"6ea96c7d-02a7-4971-82ad-2f32a0fec8b4",entityType:n.InputMap,entityId:"9f21cbac-5a83-4983-8923-9224ffd3ba9f"},u1={id:"9f21cbac-5a83-4983-8923-9224ffd3ba9f",version:1,type:n.InputMap,declaration:Za,name:null,description:null,readsValue:null,defaultValue:{id:"get-bitcoin-price-http-request-url-argument-default-value-id",type:n.PrimitiveValue,version:1,value:"https://api.coindesk.com/v1/bpi/currentprice.json",name:P.String,parent:d1,valueAsType:null,autogeneration:null},index:1,parent:c1},p1={type:n.GenericReference,id:"2610bf4a-c8a2-4746-b6cc-eb15f7fa8e9c",entityType:n.FunctionCall,entityId:tn},y1={id:"ffb3cd9d-c955-4104-bc7b-299120fe4ede",version:1,type:n.InputMap,declaration:Ka,name:null,description:null,readsValue:null,defaultValue:null,index:2,parent:p1},h1={type:n.GenericReference,id:"bfd29a6a-671a-448c-9f2f-f8c7e4ad8349",entityType:n.FunctionCall,entityId:tn},f1={id:"412bf1f3-1a8e-4665-a95f-82117540e34e",version:1,type:n.InputMap,declaration:Xa,name:null,description:null,readsValue:null,defaultValue:null,index:3,parent:h1},m1={type:n.GenericReference,id:"616a15f3-c224-4b11-b95c-63314edef409",entityType:n.FunctionCall,entityId:tn},T1={id:"4dd4651c-02e4-45f1-b50f-824f3bcb1648",version:1,type:n.OutputMap,declaration:es,writesValues:[],index:1,parent:m1},E1={type:n.GenericReference,id:"28793b68-4d7e-4826-aee1-f201a3499faf",entityType:n.FunctionCall,entityId:tn},b1={id:"94fe9d35-4dd4-4729-a50c-5283ccd7e661",version:1,type:n.OutputMap,declaration:Qa,writesValues:[],index:0,parent:E1},R1={type:n.GenericReference,id:"f13e04b2-49b4-4c69-85b8-cbbafafa3524",entityType:n.FunctionCall,entityId:tn},v1={id:ov,type:n.OutputMap,version:1,declaration:ts,writesValues:[lv],index:2,parent:R1},g1={type:n.GenericReference,id:"6148d6d0-caaa-45fc-b601-ff2493dfc60f",entityType:n.FunctionDeclaration,entityId:tn},I1={type:n.GenericReference,id:"b115f084-807b-44b3-ae01-b69cc342f761",entityType:n.GlobalEvent,entityId:oa},D1={type:n.Operation,id:tn,version:1,declaration:Mi,inputs:[l1,u1,y1,f1],outputs:[b1,T1,v1],process:null,parent:I1,calledByError:[],calledByEntry:[g1],calledBySuccess:[],successCalls:[s1],errorCalls:[],error:null,x:0,y:0},P1={type:n.GenericReference,id:"24e76019-3f94-475b-91ce-297f76bbc224",entityType:n.GlobalEvent,entityId:oa},A1={type:n.GenericReference,id:"0eac8e29-cdf2-42f8-8ea7-ad76d4d79abe",entityType:n.GlobalEvent,entityId:oa},O1={process:null,type:n.FunctionCall,id:"2d2e7593-bfbf-457c-a607-5fce18eef457",version:1,declaration:Ec,inputs:[],outputs:[],calledByError:[],calledByEntry:[P1],calledBySuccess:[],parent:A1,successCalls:[],errorCalls:[],error:null,x:0,y:0},S1={id:"793b5999-a9da-47fb-9665-0c17ebc6d5c9",type:n.GenericReference,entityType:n.Project,entityId:"2e7eb5382-3d99-44fd-972a-b8b1e819f6be"},C1={type:n.GlobalEvent,id:oa,version:1,name:dn.PROJECT_PUBLICATION_COMPLETED,returnStatements:[],collapsed:!1,implements:ys,parent:S1,inputs:[],calls:[O1,D1],x:0,y:0},$t="abort-execution-func-declaration-id",la="abort-execution-func-exec-var-declaration-id",ks="abort-execution-func-small-wait-op-id",bc="abort-execution-func-long-wait-op-id",cv="abort-execution-func-long-wait-process-output-id",dv="abort-execution-func-exec-var-instance-write-id",uv="abort-execution-func-long-wait-return-stmt-id",pv="abort-execution-func-small-wait-return-stmt-id",B1="abort-execution-func-exec-var-instance-abort-call-id",Rc="abort-execution-func-exec-var-instance-abort-internal-call-id",yv="abort-execution-func-exec-second-wait-op-id",w1={type:n.GenericReference,id:"short-wait-return-statement-returned-hello-string-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:"short-wait-return-statement-returned-hello-string-id"},_1={type:n.GenericReference,id:"short-wait-return-statement-returned-hello-string-data-type-default-value-parent-ref-id",entityType:n.DataType,entityId:"short-wait-return-statement-returned-hello-string-data-type-id"},N1={like:!1,inferred:!1,id:"short-wait-return-statement-returned-hello-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:{id:"short-wait-return-statement-returned-hello-string-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"Hello 2",autogeneration:null,valueAsType:null,parent:_1},constant:!1,parent:w1},M1={type:n.GenericReference,id:"short-wait-return-statement-returned-hello-string-parent-ref-id",entityType:n.ReturnStatement,entityId:pv},V1={isError:!1,id:"short-wait-return-statement-returned-hello-string-id",type:n.ReturnDeclaration,version:1,name:"Return 1",description:"A random string that is returned by the function",dataType:N1,implements:null,readsValue:null,required:!0,index:0,parent:M1},L1={type:n.GenericReference,id:"short-wait-return-statement-called-by-ref-id",entityType:n.Operation,entityId:ks},G1={type:n.GenericReference,id:"short-wait-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},hv={type:n.ReturnStatement,id:pv,version:1,outputs:[V1],calledByError:[],calledByEntry:[],calledBySuccess:[L1],throws:null,x:0,y:0,parent:G1},$1={type:n.GenericReference,id:"second-wait-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"second-wait-argument-map-id"},F1={type:n.GenericReference,id:"second-wait-argument-map-parent-ref-id",entityType:n.Operation,entityId:yv},U1={id:"second-wait-argument-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"second-wait-argument-default-value-id",type:n.PrimitiveValue,version:1,value:2e3,valueAsType:null,autogeneration:null,name:P.Number,parent:$1},index:0,parent:F1},x1={type:n.GenericReference,id:"small-wait-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},j1={type:n.GenericReference,id:"small-wait-called-by-ref-one-id",entityType:n.InternalCall,entityId:Rc},k1={id:yv,type:n.Operation,version:1,declaration:pt,inputs:[U1],outputs:[],process:null,successCalls:[hv],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[],calledBySuccess:[j1],error:null,parent:x1},q1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-abort-internal-call-called-by-ref-one-id",entityType:n.VariableInstance,entityId:dv},J1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-abort-internal-call-called-by-ref-two-id",entityType:n.Operation,entityId:ks},W1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-main-project-ref-id",entityType:n.FunctionDeclaration,entityId:$t},H1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:la},Y1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-internal-call-ref-one-id",entityType:n.InternalCall,entityId:Rc},z1={id:B1,type:n.VariableInstance,version:1,declaration:H1,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[Y1],parent:W1},fv={id:Rc,type:n.InternalCall,version:1,inputs:[],outputs:[],declaration:Jl,process:null,calledByError:[],calledByEntry:[],calledBySuccess:[q1,J1],successCalls:[k1],errorCalls:[],error:null,index:0,parent:z1},Z1={type:n.GenericReference,id:"abort-exec-func-var-write-instance-main-project-ref-id",entityType:n.FunctionDeclaration,entityId:$t},K1={type:n.GenericReference,id:"abort-exec-func-var-write-instance-called-by-ref-one-id",entityType:n.VariableDeclaration,entityId:la},X1={type:n.GenericReference,id:"abort-exec-func-var-write-instance-called-by-ref-two-id",entityType:n.FunctionDeclaration,entityId:$t},Q1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:la},e0={type:n.GenericReference,id:"abort-exec-func-var-write-instance-reads-value-ref-id",entityType:n.OutputMap,entityId:cv},vc={id:dv,type:n.VariableInstance,version:1,declaration:Q1,inputs:[],outputs:[],calledByError:[],calledByEntry:[X1],calledBySuccess:[K1],successCalls:[fv],errorCalls:[],x:0,y:0,readsValue:e0,writesValues:[],internalCalls:[],parent:Z1},t0={type:n.GenericReference,id:"abort-exec-func-var-decl-datatype-parent-ref-id",entityType:n.VariableDeclaration,entityId:la};n.GenericReference,n.DataType;const n0={like:!1,inferred:!1,id:"abort-exec-func-var-decl-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:Wl,version:1,asType:!1,isList:!1,isNullable:!1,constant:!1,parent:t0,defaultValue:null},r0={type:n.GenericReference,id:"abort-exec-func-var-decl-main-project-ref-id",entityType:n.FunctionDeclaration,entityId:$t},i0={type:n.GenericReference,id:"abort-exec-func-var-decl-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:$t},a0={id:la,type:n.VariableDeclaration,version:1,name:"Execution in progress",description:"A variable that holds an ongoing execution to abort it if needed",dataType:n0,inputs:[],outputs:[],calledByError:[],calledByEntry:[i0],calledBySuccess:[],successCalls:[vc],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:r0},s0={type:n.GenericReference,id:"long-wait-return-statement-returned-hello-string-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:"long-wait-return-statement-returned-hello-string-id"},o0={type:n.GenericReference,id:"long-wait-return-statement-returned-hello-string-data-type-default-value-parent-ref-id",entityType:n.DataType,entityId:"long-wait-return-statement-returned-hello-string-data-type-id"},l0={like:!1,inferred:!1,id:"long-wait-return-statement-returned-hello-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:{id:"long-wait-return-statement-returned-hello-string-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"Hello 1",autogeneration:null,valueAsType:null,parent:o0},constant:!1,parent:s0},c0={type:n.GenericReference,id:"long-wait-return-statement-returned-hello-string-parent-ref-id",entityType:n.ReturnStatement,entityId:uv},d0={isError:!1,id:"long-wait-return-statement-returned-hello-string-id",type:n.ReturnDeclaration,version:1,name:"Return 2",description:"A random string that is returned by the function",implements:null,dataType:l0,readsValue:null,required:!0,index:0,parent:c0},u0={type:n.GenericReference,id:"long-wait-return-statement-called-by-ref-id",entityType:n.Operation,entityId:bc},p0={type:n.GenericReference,id:"long-wait-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},mv={type:n.ReturnStatement,id:uv,version:1,outputs:[d0],calledByError:[],calledByEntry:[],calledBySuccess:[u0],throws:null,x:0,y:0,parent:p0},y0={type:n.GenericReference,id:"long-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"long-argument-map-id"},Tv={type:n.GenericReference,id:"long-argument-map-parent-ref-id",entityType:n.Operation,entityId:bc},h0={id:"long-argument-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"long-argument-default-value-id",type:n.PrimitiveValue,version:1,value:1500,valueAsType:null,autogeneration:null,name:P.Number,parent:y0},index:0,parent:Tv},f0={type:n.GenericReference,id:"long-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},m0={type:n.GenericReference,id:"long-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:$t},T0={id:cv,type:n.OutputMap,version:1,declaration:Yl,writesValues:[vc],index:0,parent:Tv},E0={id:bc,type:n.Operation,version:1,declaration:pt,inputs:[h0],outputs:[],process:T0,successCalls:[mv],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[m0],calledBySuccess:[],error:null,parent:f0},b0={type:n.GenericReference,id:"small-wait-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"small-wait-argument-map-id"},R0={type:n.GenericReference,id:"small-wait-argument-map-parent-ref-id",entityType:n.Operation,entityId:ks},v0={id:"small-wait-argument-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"small-wait-argument-default-value-id",type:n.PrimitiveValue,version:1,value:500,valueAsType:null,autogeneration:null,name:P.Number,parent:b0},index:0,parent:R0},g0={type:n.GenericReference,id:"small-wait-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},I0={type:n.GenericReference,id:"small-wait-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:$t},D0={id:ks,type:n.Operation,version:1,declaration:pt,inputs:[v0],outputs:[],process:null,successCalls:[fv],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[I0],calledBySuccess:[],error:null,parent:g0},P0={type:n.GenericReference,id:"abort-execution-func-decl-parent-ref-id",entityType:n.Project,entityId:H},Ev={id:"abort-execution-func-decl-id",type:n.FunctionDeclaration,version:1,name:"Test aborting execution",description:"Executes a wait and then aborts the execution of that wait",inputs:[],returnStatements:[mv,hv],calls:[D0,a0,vc,E0],implements:null,private:!1,collapsed:!1,index:null,x:0,y:0,parent:P0},A0={type:n.GenericReference,id:"call-execution-abort-func-parent-ref-id",entityType:n.Project,entityId:H},O0={id:"call-execution-abort-func-id",type:n.FunctionCall,version:1,declaration:Ev,inputs:[],process:null,outputs:[],successCalls:[],errorCalls:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[],x:0,y:0,parent:A0},gc="manual-hello-world-loop-func-decl-id",bv="manual-hello-world-loop-func-return-statement-id",nn="manual-hello-world-loop-id",ca="manual-hello-world-loop-body-id",Ic="manual-hello-world-loop-break-statement-id",da="manual-hello-world-loop-current-iteration-number-output-map-id",Dc="manual-hello-world-loop-previous-iterations-results-output-map-id",Pc="assembled-hello-world-text-output-id",Rv="assembled-hello-world-list-output-id",ua="iteration-number-is-equal-or-greater-than-10-condition-id",qs="join-hello-world-and-number-operation-id",Js="append-string-to-list-operation-id",vv="hello-world-loop-output-map-id",S0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-output-declaration-parent-ref",entityType:n.ReturnStatement,entityId:bv},C0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-output-declaration-data-type-parent-ref",entityType:n.ReturnDeclaration,entityId:"manual-hello-world-loop-function-declaration-output-declaration"},B0={like:!1,inferred:!1,id:"manual-hello-world-loop-function-declaration-output-declaration-data-type",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!0,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:C0},w0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-output-declaration-reads-value-ref",entityType:n.OutputMap,entityId:vv},gv={isError:!1,id:"manual-hello-world-loop-function-declaration-output-declaration",version:1,type:n.ReturnDeclaration,name:"Results",description:null,dataType:B0,implements:null,readsValue:w0,required:!0,index:0,parent:S0},_0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-return-statement-called-by-ref",entityType:n.Loop,entityId:nn},N0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-parent-ref",entityType:n.FunctionDeclaration,entityId:gc},Iv={type:n.ReturnStatement,id:bv,version:1,outputs:[gv],calledByError:[],calledByEntry:[],calledBySuccess:[_0],parent:N0,throws:null,x:0,y:0},M0={type:n.GenericReference,id:"hello-world-loop-break-statement-ref-id",entityType:n.BreakStatement,entityId:Ic},V0={type:n.GenericReference,id:"hello-world-loop-break-statement-reads-value-ref-id",entityType:n.OutputMap,entityId:Pc},Dv={isError:!1,id:"hello-world-loop-break-statement-output-id",version:1,type:n.ReturnDeclaration,name:"Iteration result",description:null,dataType:null,readsValue:V0,implements:null,required:!0,index:0,parent:M0},L0={type:n.GenericReference,id:"hello-world-loop-break-statement-counter-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:da},G0={type:n.GenericReference,id:"hello-world-loop-break-statement-counter-ref-id",entityType:n.BreakStatement,entityId:Ic},Pv={isError:!1,id:"hello-world-loop-break-statement-counter-output-id",version:1,type:n.ReturnDeclaration,name:"Iteration counter",description:null,implements:null,dataType:null,readsValue:L0,required:!0,index:1,parent:G0},$0={type:n.GenericReference,id:"hello-world-loop-break-statement-called-by-ref-id",entityType:n.Condition,entityId:ua},F0={type:n.GenericReference,id:"hello-world-loop-break-statement-parent-ref-id",entityType:n.Loop,entityId:nn},Av={type:n.BreakStatement,id:Ic,version:1,outputs:[Dv,Pv],calledByError:[],calledByEntry:[],calledBySuccess:[$0],parent:F0,throws:null,x:0,y:0},U0={type:n.GenericReference,id:"hello-world-loop-continue-statement-ref-id",entityType:n.ContinueStatement,entityId:"hello-world-loop-continue-statement"},x0={type:n.GenericReference,id:"hello-world-loop-continue-statement-output-data-type-ref-id",entityType:n.ReturnDeclaration,entityId:"hello-world-loop-continue-statement-output-id"},j0={like:!1,inferred:!1,id:"hello-world-loop-continue-statement-output-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:x0},k0={type:n.GenericReference,id:"hello-world-loop-continue-statement-reads-value-ref-id",entityType:n.OutputMap,entityId:Pc},Ov={isError:!1,id:"hello-world-loop-continue-statement-output-id",version:1,type:n.ReturnDeclaration,name:"Iteration result",description:null,implements:null,dataType:j0,readsValue:k0,required:!0,index:0,parent:U0},q0={type:n.GenericReference,id:"hello-world-loop-continue-statement-called-by-ref-id",entityType:n.Condition,entityId:ua},J0={type:n.GenericReference,id:"hello-world-loop-continue-statement-parent-ref-id",entityType:n.Loop,entityId:nn},Sv={type:n.ContinueStatement,id:"hello-world-loop-continue-statement",version:1,outputs:[Ov],calledBySuccess:[],calledByError:[q0],calledByEntry:[],parent:J0,throws:null,x:0,y:0};n.GenericReference,n.InputMap;const W0={type:n.GenericReference,id:"append-string-to-list-base-string-map-parent-ref-id",entityType:n.Operation,entityId:Js},H0={type:n.GenericReference,id:"base-string-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Dc},Cv={id:"append-string-to-list-base-string-map-id",type:n.InputMap,version:1,declaration:pl,name:null,description:null,readsValue:H0,defaultValue:null,index:0,parent:W0},Y0={type:n.GenericReference,id:"assembly-string-map-parent-ref-id",entityType:n.Operation,entityId:Js},z0={id:Rv,type:n.OutputMap,version:1,writesValues:[Dv],declaration:_i,index:0,parent:Y0},Z0={type:n.GenericReference,id:"append-string-to-list-called-by-ref-id",entityType:n.Condition,entityId:ua},K0={type:n.GenericReference,id:"latest-string-to-add-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Rv},X0={type:n.GenericReference,id:"62b4afb0-6c21-4b0f-abd3-cebef7b17c28",entityType:n.Operation,entityId:Js},Bv={id:"latest-string-to-add-input-map-id",version:1,type:n.InputMap,declaration:yl,name:null,description:null,readsValue:K0,defaultValue:null,index:1,parent:X0},Q0={type:n.GenericReference,id:"append-string-to-list-parent-ref-id",entityType:n.FunctionDeclaration,entityId:nn},eL={type:n.Operation,id:Js,declaration:Ya,version:1,inputs:[Cv,Bv],outputs:[z0],calledByError:[],process:null,calledByEntry:[],calledBySuccess:[Z0],successCalls:[],errorCalls:[],error:null,x:0,y:0,parent:Q0},tL={type:n.GenericReference,id:"iteration-number-is-equal-or-greater-than-10-condition-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ca},nL={type:n.GenericReference,id:"iteration-number-is-equal-or-greater-than-10-condition-parent-ref-id",entityType:n.Loop,entityId:nn},rL={type:n.GenericReference,id:"current-iteration-number-to-check-map-reads-value-ref-id",entityType:n.OutputMap,entityId:da},wv={type:n.GenericReference,id:"iteration-number-is-equal-or-greater-than-10-condition-ref-two-id",entityType:n.Condition,entityId:ua},iL={id:"current-iteration-number-to-check-map-id",version:1,type:n.InputMap,declaration:Xr.inputs[0],name:null,description:null,readsValue:rL,index:0,defaultValue:null,parent:wv},aL={type:n.GenericReference,id:"max-num-iterations-value-map-default-value-parent-ref-id",entityType:n.InputMap,entityId:"max-num-iterations-value-map-id"},sL={id:"max-num-iterations-value-map-id",version:1,type:n.InputMap,declaration:Xr.inputs[1],name:null,description:null,readsValue:null,index:1,defaultValue:{id:"max-num-iterations-value-map-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:10,autogeneration:null,valueAsType:null,parent:aL},parent:wv},oL={type:n.Condition,id:ua,version:1,declaration:Xr,inputs:[iL,sL],calledByError:[],calledByEntry:[tL],calledBySuccess:[],successCalls:[Av,eL],errorCalls:[Sv],x:0,y:0,parent:nL},lL={type:n.GenericReference,id:"base-string-map-ref-id",entityType:n.InputMap,entityId:"join-hello-world-and-number-base-string-map-id"},cL={type:n.GenericReference,id:"join-hello-world-and-number-base-string-map-parent-ref-id",entityType:n.Operation,entityId:qs},dL={id:"join-hello-world-and-number-base-string-map-id",type:n.InputMap,version:1,declaration:Wa,name:null,description:null,readsValue:null,defaultValue:{id:"join-hello-world-and-number-base-string-map-default-value-id",type:n.PrimitiveValue,version:1,value:"Hello world ",name:P.String,parent:lL,valueAsType:null,autogeneration:null},index:0,parent:cL},uL={type:n.GenericReference,id:"assembly-string-map-parent-ref-id",entityType:n.Operation,entityId:qs},pL={id:Pc,type:n.OutputMap,version:1,writesValues:[Bv,Ov],declaration:_i,index:0,parent:uL},yL={type:n.GenericReference,id:"join-hello-world-and-number-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ca},hL={type:n.GenericReference,id:"current-iteration-number-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:da},fL={type:n.GenericReference,id:"62b4afb0-6c21-4b0f-abd3-cebef7b17c28",entityType:n.Operation,entityId:qs},_v={id:"current-iteration-number-input-map-id",version:1,type:n.InputMap,declaration:Ha,name:null,description:null,readsValue:hL,defaultValue:null,index:1,parent:fL},mL={type:n.GenericReference,id:"join-hello-world-and-number-parent-ref-id",entityType:n.FunctionDeclaration,entityId:nn},TL={type:n.Operation,id:qs,declaration:Ni,version:1,inputs:[dL,_v],outputs:[pL],process:null,calledByError:[],calledByEntry:[yL],calledBySuccess:[],successCalls:[],errorCalls:[],error:null,x:0,y:0,parent:mL},EL={id:"manual-hello-world-loop-iterations-results-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:Dc,entityType:n.ArgumentDeclaration},bL={like:!1,inferred:!1,id:"manual-hello-world-loop-iterations-results-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!0,isNullable:!1,constant:!1,entity:null,asType:!1,defaultValue:null,parent:EL},RL={id:"manual-hello-world-loop-previous-iterations-results-output-map-parent-ref-id",type:n.GenericReference,entityId:ca,entityType:n.FunctionDeclaration},vL={id:Dc,type:n.ArgumentDeclaration,version:1,name:"Previous iterations results",description:"The results of the previous iterations of the loop.",required:!0,dataType:bL,implements:null,writesValues:[Cv],index:1,parent:RL},gL={id:"manual-hello-world-loop-current-iteration-number-output-map-parent-ref-id",type:n.GenericReference,entityId:ca,entityType:n.FunctionDeclaration},IL={id:"manual-flow-loop-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:da,entityType:n.ArgumentDeclaration};n.DataType;const DL={id:da,type:n.ArgumentDeclaration,version:1,name:"Current iteration number",description:"The number of the current iteration of the loop. Starts at 1.",required:!0,implements:vl,dataType:null,writesValues:[_v,Pv],index:0,parent:gL},PL={id:"manual-flow-loop-body-parent-ref-id",type:n.GenericReference,entityId:nn,entityType:n.Loop},AL={id:ca,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called multiple times, once for each iteration of the loop.",inputs:[DL,vL],calls:[oL,TL],implements:gl,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:PL},OL={type:n.GenericReference,id:"hello-world-loop-iteration-result-inline-output-declaration-parent-ref-id",entityType:n.Loop,entityId:nn},Nv={id:"hello-world-loop-iteration-result-inline-output-declaration-id",version:1,type:n.ValueDescriptor,name:"Iteration result",description:null,dataType:null,required:!0,index:0,parent:OL},SL={type:n.GenericReference,id:"hello-world-loop-break-statement-output-map-parent-ref-id",entityType:n.Loop,entityId:nn},CL={type:n.OutputMap,id:vv,version:1,declaration:Nv,writesValues:[gv],index:0,parent:SL},BL={id:"manual-hello-world-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},wL={id:"manual-hello-world-loop-called-by-ref-id",type:n.GenericReference,entityId:gc,entityType:n.FunctionDeclaration},_L={id:nn,type:n.Loop,version:1,declaration:Rl,inputs:[],outputsDeclarations:[Nv],outputs:[CL],body:AL,successCalls:[Iv],errorCalls:[],process:null,error:null,calledByError:[],calledByEntry:[wL],calledBySuccess:[],breakStatements:[Av],continueStatements:[Sv],x:0,y:0,parent:BL},NL={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-parent-ref-id",entityType:n.Project,entityId:H},Mv={type:n.FunctionDeclaration,id:gc,version:1,name:"Manual hello world loop",description:null,inputs:[],calls:[_L],returnStatements:[Iv],implements:null,collapsed:!1,private:!1,index:null,x:0,y:0,parent:NL},ML={type:n.GenericReference,id:"call-hello-world-loop-parent-ref-id",entityType:n.Project,entityId:H},VL={id:"call-hello-world-loop-id",type:n.FunctionCall,version:1,declaration:Mv,inputs:[],outputs:[],process:null,successCalls:[],errorCalls:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[],x:0,y:0,parent:ML},bn="company-dto-function-declaration-id",Ac="company-dto-func-declaration-argument-dcl-id",rn="company-dto-function-company-variable-id",kn="company-dto-function-company-dto-variable-id",li="iterate-over-employee-list-loop-id",Vv="iterate-over-employee-list-loop-employee-dto-output-map-id",Oc="iterate-over-employee-list-loop-body-current-employee-argument-declaration-id",pa="iterate-over-employee-list-loop-body-map-employee-dto-function-call-id",Lv="iterate-over-employee-list-continue-statement-employee-dto-output-decl-id",LL="iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-dto-output-map-id",Gv="iterate-over-employee-list-continue-statement-id",Ws="iterate-over-employee-list-loop-body-id",$v="company-dto-func-declaration-return-statement-id",Fv="company-dto-func-declaration-return-decl-id",Uv="company-dto-func-declaration-company-variable-id-output-map-id",xv="company-dto-func-declaration-company-variable-employess-output-map-id",jv="company-dto-func-declaration-company-variable-name-output-map-id",GL="company-dto-func-declaration-company-dto-variable-input-map-id",$L="company-dto-func-declaration-company-dto-variable-employess-input-map-id",FL="company-dto-func-declaration-company-dto-variable-name-input-map-id",Hs="company-dto-func-declaration-owner-variable-id",UL="company-dto-func-declaration-company-dto-variable-owner-input-map-id",kv="company-dto-func-declaration-company-variable-owner-output-map-id",qv="company-dto-func-declaration-owner-variable-id-output-map-id",Ys="company-dto-func-declaration-bank-account-variable-id",xL="company-dto-func-declaration-company-dto-variable-bank-account-input-map-id",Jv="company-dto-func-declaration-company-variable-bank-account-output-map-id",Wv="company-dto-func-declaration-bank-account-variable-id-output-map-id",jL={type:n.GenericReference,id:"company-dto-func-returned-company-dto-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:Fv},kL={like:!1,inferred:!1,id:"company-dto-func-returned-company-dto-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:jL},qL={type:n.GenericReference,id:"company-dto-func-returned-company-dto-parent-ref-id",entityType:n.ReturnStatement,entityId:$v},JL={type:n.GenericReference,id:"company-dto-func-returned-company-dto-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:kn},Hv={isError:!1,id:Fv,type:n.ReturnDeclaration,version:1,name:"Company DTO",description:"Output the company data in the format that it will be sent through an HTTP request.",implements:null,dataType:kL,readsValue:JL,required:!0,index:0,parent:qL},WL={type:n.GenericReference,id:"company-dto-func-return-statement-called-by-ref-id",entityType:n.Operation,entityId:kn},HL={type:n.GenericReference,id:"company-dto-func-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn},Sc={type:n.ReturnStatement,id:$v,version:1,outputs:[Hv],calledByError:[],calledByEntry:[],calledBySuccess:[WL],throws:null,x:0,y:0,parent:HL},YL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-owner-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:qv},zL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-owner-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Yv={id:UL,type:n.InputMap,version:1,declaration:null,name:"owner_id",description:null,defaultValue:null,index:5,readsValue:YL,parent:zL},ZL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-bank-account-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Wv},KL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-bank-account-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},zv={id:xL,type:n.InputMap,version:1,declaration:null,name:"bank_account_id",description:null,defaultValue:null,index:4,readsValue:ZL,parent:KL},XL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-name-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:jv},QL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-name-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Zv={id:FL,type:n.InputMap,version:1,declaration:null,name:"name",description:null,defaultValue:null,index:3,readsValue:XL,parent:QL},eG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-employess-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Vv},tG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-employess-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Kv={id:$L,type:n.InputMap,version:1,declaration:null,name:"employees",description:null,defaultValue:null,index:2,readsValue:eG,parent:tG},nG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Uv},rG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Xv={id:GL,type:n.InputMap,version:1,declaration:null,name:"id",description:"The ID of the company",defaultValue:null,index:1,readsValue:nG,parent:rG},iG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn},aG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-called-by-ref-one-id",entityType:n.VariableDeclaration,entityId:Ys},sG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-called-by-ref-two-id",entityType:n.VariableDeclaration,entityId:Hs},oG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-called-by-ref-three-id",entityType:n.VariableDeclaration,entityId:li},Cc={id:kn,type:n.VariableDeclaration,version:1,name:"Company DTO",dataType:null,description:"A variable holding the data of a mapped company DTO",calledByError:[],calledByEntry:[],calledBySuccess:[aG,sG,oG],successCalls:[Sc],errorCalls:[],readsValue:null,writesValues:[Hv],inputs:[Xv,Zv,zv,Yv,Kv],outputs:[],internalCalls:[],parent:iG,x:0,y:0},hr="employee-dto-func-declaration-id",Bc="employee-dto-func-declaration-argument-dcl-id",Qv="employee-dto-func-declaration-return-statement-id",eg="employee-dto-func-declaration-return-decl-id",fr="employee-dto-func-declaration-employee-variable-id",mr="employee-dto-func-declaration-employee-dto-variable-id",zs="employee-dto-func-declaration-manager-variable-id",tg="employee-dto-func-declaration-employee-variable-id-output-map-id",ng="employee-dto-func-declaration-employee-variable-birth-date-output-map-id",rg="employee-dto-func-declaration-employee-variable-department-output-map-id",ig="employee-dto-func-declaration-employee-variable-manager-output-map-id",ag="employee-dto-func-declaration-manager-variable-id-output-map-id",lG="employee-dto-func-declaration-employee-dto-variable-input-map-id",cG="employee-dto-func-declaration-employee-dto-variable-birth-date-input-map-id",dG="employee-dto-func-declaration-employee-dto-variable-department-input-map-id",uG="employee-dto-func-declaration-employee-dto-variable-manager-input-map-id",pG={type:n.GenericReference,id:"employee-dto-func-returned-employee-dto-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:eg},yG={like:!1,inferred:!1,id:"employee-dto-func-returned-employee-dto-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:pG},hG={type:n.GenericReference,id:"employee-dto-func-returned-employee-dto-parent-ref-id",entityType:n.ReturnStatement,entityId:Qv},fG={type:n.GenericReference,id:"employee-dto-func-returned-employee-dto-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:mr},sg={isError:!1,id:eg,type:n.ReturnDeclaration,version:1,name:"Employee DTO",description:"Output the employee data in the format that it will be sent through an HTTP request.",dataType:yG,implements:null,readsValue:fG,required:!0,index:0,parent:hG},mG={type:n.GenericReference,id:"employee-dto-func-return-statement-called-by-ref-id",entityType:n.Operation,entityId:mr},TG={type:n.GenericReference,id:"employee-dto-func-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr},wc={type:n.ReturnStatement,id:Qv,version:1,outputs:[sg],calledByError:[],calledByEntry:[],calledBySuccess:[mG],throws:null,x:0,y:0,parent:TG},EG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-manager-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:ag},bG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},og={id:uG,type:n.InputMap,version:1,declaration:null,name:"manager_id",description:null,defaultValue:null,index:4,readsValue:EG,parent:bG},RG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-department-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:rg},vG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},lg={id:dG,type:n.InputMap,version:1,declaration:null,name:"department_name",description:null,defaultValue:null,index:3,readsValue:RG,parent:vG},gG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-birth-date-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:ng},IG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},cg={id:cG,type:n.InputMap,version:1,declaration:null,name:"birth_date",description:null,defaultValue:null,index:2,readsValue:gG,parent:IG},DG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:tg},PG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},dg={id:lG,type:n.InputMap,version:1,declaration:null,name:"id",description:"The ID of the employee",defaultValue:null,index:1,readsValue:DG,parent:PG},AG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr},OG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-called-by-ref-id",entityType:n.VariableDeclaration,entityId:zs},SG={id:mr,type:n.VariableDeclaration,version:1,name:"Employee DTO",dataType:null,description:"A variable holding the data of a mapped employee DTO",calledByError:[],calledByEntry:[],calledBySuccess:[OG],successCalls:[wc],errorCalls:[],readsValue:null,writesValues:[sg],inputs:[dg,cg,lg,og],outputs:[],internalCalls:[],parent:AG,x:0,y:0},CG={type:n.GenericReference,id:"employee-dto-func-manager-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:zs},BG={id:ag,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[og],parent:CG},wG={type:n.GenericReference,id:"employee-dto-func-manager-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:zs},_G={like:!1,inferred:!1,id:"employee-dto-func-manager-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:wG,defaultValue:null},NG={type:n.GenericReference,id:"employee-dto-func-manager-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:ig},MG={type:n.GenericReference,id:"employee-dto-func-manager-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr};n.GenericReference,n.VariableDeclaration;const ug={id:zs,type:n.VariableDeclaration,version:1,name:"Manager",dataType:_G,description:"A variable holding an inherited manager",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[SG],errorCalls:[],readsValue:NG,writesValues:[],inputs:[],outputs:[BG],internalCalls:[],parent:MG,x:0,y:0},VG={type:n.GenericReference,id:"employee-dto-func-employee-variable-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},LG={id:ig,type:n.OutputMap,version:1,declaration:Lt.properties[2],index:3,writesValues:[ug],parent:VG},GG={type:n.GenericReference,id:"employee-dto-func-employee-variable-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},$G={id:rg,type:n.OutputMap,version:1,declaration:Lt.properties[0],index:2,writesValues:[lg],parent:GG},FG={type:n.GenericReference,id:"employee-dto-func-employee-variable-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},UG={id:ng,type:n.OutputMap,version:1,declaration:ht.properties[1],index:1,writesValues:[cg],parent:FG},xG={type:n.GenericReference,id:"employee-dto-func-employee-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},jG={id:tg,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[dg],parent:xG},kG={type:n.GenericReference,id:"employee-dto-func-employee-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},qG={like:!1,inferred:!1,id:"employee-dto-func-employee-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:kG,defaultValue:null},JG={type:n.GenericReference,id:"employee-dto-func-employee-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr},WG={type:n.GenericReference,id:"employee-dto-func-employee-variable-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:Bc},HG={type:n.GenericReference,id:"employee-dto-func-employee-variable-called-by-id",entityType:n.FunctionDeclaration,entityId:hr},pg={id:fr,type:n.VariableDeclaration,version:1,name:"Company employee",dataType:qG,description:"A variable holding a company employee",calledByError:[],calledByEntry:[HG],calledBySuccess:[],successCalls:[ug],errorCalls:[],readsValue:WG,writesValues:[],inputs:[],outputs:[jG,UG,$G,LG],internalCalls:[],parent:JG,x:0,y:0},YG={type:n.GenericReference,id:"employee-dto-func-declaration-employee-input-declaration-data-type-parent-ref-id",entityId:Bc,entityType:n.ArgumentDeclaration},zG={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"employee-dto-func-declaration-employee-input-declaration-data-type-id",version:1,entity:Lt,asType:!1,isList:!1,isNullable:!1,constant:!1,like:!1,inferred:!1,parent:YG,defaultValue:null},ZG={type:n.GenericReference,id:"employee-dto-func-declaration-employee-input-declaration-parent-ref-id",entityId:hr,entityType:n.FunctionDeclaration},KG={type:n.ArgumentDeclaration,id:Bc,version:1,name:"Employee",description:"The employee to create a DTO for",required:!0,implements:null,dataType:zG,index:0,writesValues:[pg],parent:ZG},XG={type:n.GenericReference,id:"employee-dto-function-declaration-parent-ref-id",entityType:n.Project,entityId:H},_c={type:n.FunctionDeclaration,id:hr,version:1,name:"Employee DTO",description:"Takes a employee and returns a DTO of that employee",index:null,inputs:[KG],calls:[pg],implements:null,returnStatements:[wc],collapsed:!1,private:!1,x:0,y:0,parent:XG},QG={id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-data-type-parent-ref-id",type:n.GenericReference,entityId:Lv,entityType:n.ReturnDeclaration},e$={like:!1,inferred:!1,id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:QG},t$={id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-reads-value-ref-id",type:n.GenericReference,entityId:pa,entityType:n.OutputMap},n$={id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-parent-ref-id",type:n.GenericReference,entityId:Gv,entityType:n.ContinueStatement},yg={isError:!1,id:Lv,type:n.ReturnDeclaration,version:1,name:"Employee DTO",description:"The DTO of the employee entity.",readsValue:t$,dataType:e$,implements:null,required:!0,index:0,parent:n$},r$={id:"iterate-over-employee-list-continue-statement-called-by-ref-id",type:n.GenericReference,entityId:pa,entityType:n.FunctionCall},i$={id:"iterate-over-employee-list-continue-statement-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},hg={id:Gv,type:n.ContinueStatement,version:1,calledByError:[],calledByEntry:[],calledBySuccess:[r$],outputs:[yg],throws:null,x:0,y:0,parent:i$},a$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-dto-output-map-parent-ref-id",type:n.GenericReference,entityId:pa,entityType:n.FunctionCall},s$={id:LL,type:n.OutputMap,version:1,declaration:wc.outputs[0],writesValues:[yg],index:0,parent:a$},o$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-input-map-reads-value-ref-id",type:n.GenericReference,entityId:Oc,entityType:n.ArgumentDeclaration},l$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-input-map-parent-ref-id",type:n.GenericReference,entityId:pa,entityType:n.FunctionCall},fg={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:_c.inputs[0],readsValue:o$,index:0,defaultValue:null,parent:l$},c$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-called-by-ref-id",type:n.GenericReference,entityId:Ws,entityType:n.FunctionDeclaration},d$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-parent-ref-id",type:n.GenericReference,entityId:Ws,entityType:n.FunctionDeclaration},u$={id:pa,type:n.FunctionCall,version:1,declaration:_c,inputs:[fg],process:null,outputs:[s$],calledByError:[],calledByEntry:[c$],calledBySuccess:[],successCalls:[hg],errorCalls:[],error:null,x:0,y:0,parent:d$},p$={type:n.GenericReference,id:"iterate-over-employee-list-loop-body-current-employee-argument-declaration-data-type-parent-ref-id",entityId:Oc,entityType:n.ArgumentDeclaration},y$={like:!1,inferred:!1,id:"iterate-over-employee-list-loop-body-current-employee-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:Lt,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:p$},h$={id:"iterate-over-employee-list-loop-body-current-employee-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:Ws,entityType:n.FunctionDeclaration},f$={id:Oc,type:n.ArgumentDeclaration,version:1,name:"Current employee",description:"The current employee entity being processed.",dataType:y$,required:!0,implements:ns,index:0,writesValues:[fg],parent:h$},m$={id:"iterate-over-employee-list-loop-body-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},T$={id:Ws,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[f$],calls:[u$],implements:rs,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:m$},E$={id:"iterate-over-employee-list-loop-iteration-list-input-map-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},b$={id:"iterate-over-employee-list-loop-iteration-list-input-map-reads-value-ref-id",type:n.GenericReference,entityId:xv,entityType:n.OutputMap},mg={id:"iterate-over-employee-list-loop-iteration-list-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:ir.inputs[0],defaultValue:null,readsValue:b$,index:0,parent:E$},R$={id:"iterate-over-employee-list-loop-parent-ref-id",type:n.GenericReference,entityId:bn,entityType:n.FunctionDeclaration},v$={id:"iterate-over-employee-list-loop-employee-dto-output-map-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},g$={id:Vv,type:n.OutputMap,version:1,declaration:ir.outputs[0],writesValues:[Kv],index:0,parent:v$},I$={type:n.GenericReference,id:"iterate-over-employee-list-loop-called-by-ref-id",entityType:n.VariableDeclaration,entityId:rn},D$={id:li,type:n.Loop,version:1,declaration:ir,inputs:[mg],successCalls:[Cc],errorCalls:[],outputsDeclarations:[],outputs:[g$],body:T$,process:null,calledByError:[],calledByEntry:[],calledBySuccess:[I$],breakStatements:[],continueStatements:[hg],error:null,x:0,y:0,parent:R$},P$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ys},A$={id:Wv,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[zv],parent:P$},O$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ys},S$={like:!1,inferred:!1,id:"company-dto-func-bank-account-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:O$,defaultValue:null},C$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:Jv},B$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn};n.GenericReference,n.VariableDeclaration;const Tg={id:Ys,type:n.VariableDeclaration,version:1,name:"Bank account",dataType:S$,description:"A variable holding an inherited bank account",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[Cc],errorCalls:[],readsValue:C$,writesValues:[],inputs:[],outputs:[A$],internalCalls:[],parent:B$,x:0,y:0},w$={type:n.GenericReference,id:"company-dto-func-owner-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Hs},_$={id:qv,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[Yv],parent:w$},N$={type:n.GenericReference,id:"company-dto-func-owner-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:Hs},M$={like:!1,inferred:!1,id:"company-dto-func-owner-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:N$,defaultValue:null},V$={type:n.GenericReference,id:"company-dto-func-owner-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:kv},L$={type:n.GenericReference,id:"company-dto-func-owner-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn};n.GenericReference,n.VariableDeclaration;const Eg={id:Hs,type:n.VariableDeclaration,version:1,name:"Owner",dataType:M$,description:"A variable holding an inherited owner",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[Cc],errorCalls:[],readsValue:V$,writesValues:[],inputs:[],outputs:[_$],internalCalls:[],parent:L$,x:0,y:0},G$={type:n.GenericReference,id:"company-dto-func-company-variable-owner-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},$$={id:kv,type:n.OutputMap,version:1,declaration:Gt.properties[2],index:4,writesValues:[Eg],parent:G$},F$={type:n.GenericReference,id:"company-dto-func-company-variable-bank-account-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},U$={id:Jv,type:n.OutputMap,version:1,declaration:Gt.properties[2],index:3,writesValues:[Tg],parent:F$},x$={type:n.GenericReference,id:"company-dto-func-company-variable-name-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},j$={id:jv,type:n.OutputMap,version:1,declaration:Gt.properties[0],index:2,writesValues:[Zv],parent:x$},k$={type:n.GenericReference,id:"company-dto-func-company-variable-employess-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},q$={id:xv,type:n.OutputMap,version:1,declaration:Gt.properties[3],index:1,writesValues:[mg],parent:k$},J$={type:n.GenericReference,id:"company-dto-func-company-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},W$={id:Uv,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[Xv],parent:J$},H$={type:n.GenericReference,id:"company-dto-func-company-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},Y$={like:!1,inferred:!1,id:"company-dto-func-company-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:H$,defaultValue:null},z$={type:n.GenericReference,id:"company-dto-func-company-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn},Z$={type:n.GenericReference,id:"company-dto-func-company-variable-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:Ac},K$={type:n.GenericReference,id:"company-dto-func-company-variable-called-by-id",entityType:n.FunctionDeclaration,entityId:bn},bg={id:rn,type:n.VariableDeclaration,version:1,name:"Company",dataType:Y$,description:"A variable holding a company",calledByError:[],calledByEntry:[K$],calledBySuccess:[],successCalls:[Tg,Eg,D$],errorCalls:[],readsValue:Z$,writesValues:[],inputs:[],outputs:[W$,q$,j$,U$,$$],internalCalls:[],parent:z$,x:0,y:0},X$={type:n.GenericReference,id:"company-dto-func-declaration-company-input-declaration-data-type-parent-ref-id",entityId:Ac,entityType:n.ArgumentDeclaration},Q$={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"company-dto-func-declaration-company-input-declaration-data-type-id",version:1,entity:Gt,asType:!1,isList:!1,isNullable:!1,constant:!1,like:!1,inferred:!1,parent:X$,defaultValue:null},eF={type:n.GenericReference,id:"company-dto-func-declaration-company-input-declaration-parent-ref-id",entityId:bn,entityType:n.FunctionDeclaration},tF={type:n.ArgumentDeclaration,id:Ac,version:1,name:"Company",description:"The company to create a DTO for",required:!0,implements:null,dataType:Q$,index:0,writesValues:[bg],parent:eF},nF={type:n.GenericReference,id:"company-dto-function-declaration-parent-ref-id",entityType:n.Project,entityId:H},Nc={type:n.FunctionDeclaration,id:bn,version:1,name:"Company DTO",description:"Takes a company and returns a DTO of that company",inputs:[tF],calls:[bg],implements:null,index:null,returnStatements:[Sc],collapsed:!1,private:!1,x:0,y:0,parent:nF},ya="exec-in-parallel-operation-call-id",ha="exec-sequentially-operation-call-id",ft="concurrency-and-wait-function-declaration-id",Rg="concurrency-and-wait-return-statement-id",vg="concurrency-and-wait-return-declaration-id",Mc="exec-in-parallel-argument-map-id",gg="exec-sequentially-argument-map-id",Vc="wait-for-2-seconds-operation-id",Ig="wait-for-2-seconds-argument-map-id",Lc="map-company-dto-function-call-id",Dg="map-company-dto-function-call-company-dto-output-map-id",fa="company-dto-variable-one-id",Gc="company-dto-variable-one-instance-id",rF="company-dto-variable-two-id",iF={type:n.GenericReference,id:"returned-company-dto-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:vg},aF={like:!1,inferred:!1,id:"returned-company-dto-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:iF},sF={type:n.GenericReference,id:"returned-company-dto-parent-ref-id",entityType:n.ReturnStatement,entityId:Rg},oF={type:n.GenericReference,id:"returned-company-dto-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:fa},Pg={isError:!1,id:vg,type:n.ReturnDeclaration,version:1,name:"Company DTO",description:"Output the company data in the format that it will be sent through an HTTP request.",dataType:aF,implements:null,readsValue:oF,required:!0,index:0,parent:sF},lF={type:n.GenericReference,id:"concurrency-and-wait-return-statement-called-by-ref-id",entityType:n.Operation,entityId:Vc},cF={type:n.GenericReference,id:"concurrency-and-wait-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},Ag={type:n.ReturnStatement,id:Rg,version:1,outputs:[Pg],calledByError:[],calledByEntry:[],calledBySuccess:[lF],throws:null,x:0,y:0,parent:cF},dF={type:n.GenericReference,id:"company-dto-variable-two-called-by-ref-id",entityType:n.VariableInstance,entityId:Gc},uF={type:n.GenericReference,id:"company-dto-variable-two-reads-value-ref-id",entityType:n.VariableInstance,entityId:Gc},pF={type:n.GenericReference,id:"company-dto-variable-two-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},Og={id:rF,type:n.VariableDeclaration,version:1,name:"Company DTO",description:null,dataType:null,inputs:[],outputs:[],successCalls:[],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[dF],internalCalls:[],writesValues:[Pg],readsValue:uF,x:0,y:0,parent:pF},yF={type:n.GenericReference,id:"company-dto-variable-one-instance-called-by-ref-id",entityType:n.VariableDeclaration,entityId:fa},hF={type:n.GenericReference,id:"company-dto-variable-one-instance-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:fa},fF={type:n.GenericReference,id:"company-dto-variable-one-instance-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},mF={type:n.GenericReference,id:"company-dto-variable-one-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:fa},Sg={id:Gc,type:n.VariableInstance,version:1,declaration:mF,inputs:[],outputs:[],successCalls:[Og],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[yF],internalCalls:[],writesValues:[Og],readsValue:hF,x:0,y:0,parent:fF},TF={type:n.GenericReference,id:"company-dto-variable-one-called-by-ref-id",entityType:n.FunctionCall,entityId:Lc},EF={type:n.GenericReference,id:"company-dto-variable-one-reads-value-ref-id",entityType:n.OutputMap,entityId:Dg},bF={type:n.GenericReference,id:"company-dto-variable-one-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},Cg={id:fa,type:n.VariableDeclaration,version:1,name:"Company DTO",description:null,dataType:null,inputs:[],outputs:[],successCalls:[Sg],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[TF],internalCalls:[],writesValues:[Sg],readsValue:EF,x:0,y:0,parent:bF},Bg={type:n.GenericReference,id:"map-company-dto-function-call-company-input-map-parent-ref-id",entityType:n.FunctionCall,entityId:Lc},RF={id:"map-company-dto-function-call-company-input-map-id",type:n.InputMap,version:1,declaration:Nc.inputs[0],name:null,description:null,defaultValue:null,index:0,readsValue:null,parent:Bg},vF={id:Dg,type:n.OutputMap,version:1,declaration:Sc.outputs[0],writesValues:[Cg],index:0,parent:Bg},gF={id:"map-company-dto-function-call-called-by-ref-id",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:ft},IF={id:"map-company-dto-function-call-parent-ref-id",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:ft},DF={id:Lc,type:n.FunctionCall,version:1,declaration:Nc,successCalls:[Cg],process:null,errorCalls:[],inputs:[RF],outputs:[vF],calledByError:[],calledByEntry:[gF],calledBySuccess:[],parent:IF,x:0,y:0,error:null},PF={type:n.GenericReference,id:"last-timestamp-variable-datatype-parent-ref-id",entityType:n.VariableDeclaration,entityId:OR},AF={type:n.GenericReference,id:"last-timestamp-variable-default-value-parent-ref-id",entityType:n.DataType,entityId:"last-timestamp-variable-datatype-id"},OF={like:!1,inferred:!1,id:"last-timestamp-variable-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:pn,version:1,asType:!1,isList:!1,isNullable:!1,constant:!1,parent:PF,defaultValue:{id:"last-timestamp-variable-default-value-id",type:n.PrimitiveValue,version:1,name:P.Date,value:null,autogeneration:{type:We.CurrentDateAndTime,rangeStart:null,rangeEnd:null},parent:AF,valueAsType:null}},SF={type:n.GenericReference,id:"last-timestamp-variable-main-project-ref-id",entityType:n.Project,entityId:H},$c={id:OR,type:n.VariableDeclaration,version:1,name:"Last registered current time",description:"A test variable that holds the last current date and time that was registered.",dataType:OF,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:SF},CF={type:n.GenericReference,id:"wait-for-2-seconds-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:Ig},BF={type:n.GenericReference,id:"wait-for-2-seconds-argument-map-parent-ref-id",entityType:n.Operation,entityId:Vc},wF={id:Ig,type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"wait-for-2-seconds-argument-default-value-id",type:n.PrimitiveValue,version:1,value:2e3,valueAsType:null,autogeneration:null,name:P.Number,parent:CF},index:0,parent:BF},_F={type:n.GenericReference,id:"wait-for-2-seconds-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},NF={type:n.GenericReference,id:"wait-for-2-seconds-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:ha},MF={type:n.GenericReference,id:"wait-for-2-seconds-called-by-ref-two-id",entityType:n.FunctionDeclaration,entityId:ya},wg={id:Vc,type:n.Operation,version:1,declaration:Wt,inputs:[wF],outputs:[],process:null,successCalls:[Ag],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[NF,MF],calledBySuccess:[],error:null,parent:_F},VF={type:n.GenericReference,id:"wait-for-random-amount-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"wait-for-random-amount-input-map-id"},LF={type:n.GenericReference,id:"wait-for-random-amount-argument-map-parent-ref-id",entityType:n.Operation,entityId:"wait-for-random-amount-id"},GF={id:"wait-for-random-amount-input-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"wait-for-random-amount-argument-default-value-id",type:n.PrimitiveValue,version:1,value:null,valueAsType:null,autogeneration:{type:We.Random,rangeStart:1e3,rangeEnd:4e3},name:P.Number,parent:VF},index:0,parent:LF},$F={type:n.GenericReference,id:"wait-for-random-amount-parent-ref-id",entityType:n.Project,entityId:H},ci={id:"wait-for-random-amount-id",type:n.Operation,version:1,declaration:Wt,inputs:[GF],process:null,outputs:[],successCalls:[],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[],calledBySuccess:[],error:null,parent:$F},_g="list-of-functions-variable-id",FF={type:n.GenericReference,id:"list-of-functions-variable-action-descriptor-dynamic-argument-parent-ref-id",entityType:n.ActionDescriptor,entityId:"list-of-functions-variable-action-descriptor-id"},UF={id:"list-of-functions-variable-action-descriptor-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any input value",description:"Any input value that can be passed to the action",index:0,required:!1,dataType:null,parent:FF},xF={type:n.GenericReference,id:"list-of-functions-variable-action-descriptor-dynamic-return-parent-ref-id",entityType:n.ActionDescriptor,entityId:"list-of-functions-variable-action-descriptor-id"},jF={id:"list-of-functions-variable-action-descriptor-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any output value",description:"Any output value that can be returned to the action",index:0,required:!1,dataType:null,parent:xF},kF={type:n.GenericReference,id:"list-of-functions-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:_g},qF={id:"list-of-functions-variable-action-descriptor-id",type:n.ActionDescriptor,version:1,name:"Action to execute",description:"An action of any type, to be executed. It can contain any number of inputs and outputs.",inputs:[UF],error:null,outputs:[jF],parent:null},JF={type:n.GenericReference,id:"list-of-functions-variable-data-type-default-parent-ref-id",entityType:n.DataType,entityId:"list-of-functions-variable-data-type-id"},WF={like:!1,inferred:!1,id:"list-of-functions-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:qF,asType:!1,isList:!0,isNullable:!1,defaultValue:{id:"list-of-functions-variable-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.ActionDescriptor,value:null,valueAsType:[ci,ci,ci,ci,ci],autogeneration:null,parent:JF},constant:!1,parent:kF},HF={type:n.GenericReference,id:"list-of-functions-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft};n.GenericReference,n.InputMap;const YF={type:n.GenericReference,id:"list-of-functions-variable-writes-value-one-ref-id",entityType:n.InputMap,entityId:gg},zF={type:n.GenericReference,id:"list-of-functions-variable-writes-value-two-ref-id",entityType:n.InputMap,entityId:Mc},Ng={id:_g,type:n.VariableDeclaration,version:1,name:"List of functions to execute",description:"A list of functions to be executed in parallel",dataType:WF,parent:HF,readsValue:null,writesValues:[YF,zF],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],inputs:[],outputs:[],internalCalls:[],x:0,y:0},ZF={type:n.GenericReference,id:"exec-in-parallel-return-map-parent-ref-id",entityType:n.Operation,entityId:ya},KF={type:n.GenericReference,id:"exec-in-parallel-result-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},XF={type:n.GenericReference,id:"exec-in-parallel-result-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:"exec-in-parallel-return-map-id"},QF={type:n.GenericReference,id:"exec-in-parallel-result-variable-called-by-ref-id",entityType:n.Operation,entityId:ya},Mg={id:"exec-in-parallel-result-variable-id",type:n.VariableInstance,version:1,declaration:$c,readsValue:XF,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[QF],successCalls:[],errorCalls:[],internalCalls:[],parent:KF,x:0,y:0},eU={id:"exec-in-parallel-return-map-id",type:n.OutputMap,version:1,declaration:fl,writesValues:[Mg],index:0,parent:ZF},tU={type:n.GenericReference,id:"exec-in-parallel-argument-map-parent-ref-id",entityType:n.Operation,entityId:ya},nU={id:Mc,type:n.InputMap,version:1,declaration:hl,name:null,description:null,readsValue:Ng,defaultValue:null,index:0,parent:tU},rU={type:n.GenericReference,id:"exec-in-parallel-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},iU={type:n.GenericReference,id:"exec-in-parallel-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ft},aU={process:null,id:ya,type:n.Operation,version:1,declaration:Wt,inputs:[nU],outputs:[eU],successCalls:[wg,Mg],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[iU],calledBySuccess:[],error:null,parent:rU},sU={type:n.GenericReference,id:"exec-sequentially-return-map-parent-ref-id",entityType:n.Operation,entityId:ha},oU={type:n.GenericReference,id:"exec-sequentially-result-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},lU={type:n.GenericReference,id:"exec-sequentially-result-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:"exec-sequentially-return-map-id"},cU={type:n.GenericReference,id:"exec-sequentially-result-variable-called-by-ref-id",entityType:n.Operation,entityId:ha},Vg={id:"exec-sequentially-result-variable-id",type:n.VariableInstance,version:1,declaration:$c,readsValue:lU,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[cU],successCalls:[],errorCalls:[],internalCalls:[],parent:oU,x:0,y:0},dU={id:"exec-sequentially-return-map-id",type:n.OutputMap,version:1,declaration:Tl,writesValues:[Vg],index:0,parent:sU},uU={type:n.GenericReference,id:"exec-sequentially-argument-map-parent-ref-id",entityType:n.Operation,entityId:ha},pU={id:gg,type:n.InputMap,version:1,declaration:ml,name:null,description:null,readsValue:Ng,defaultValue:null,index:0,parent:uU},yU={type:n.GenericReference,id:"exec-sequentially-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},hU={type:n.GenericReference,id:"exec-sequentially-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ft},fU={id:ha,type:n.Operation,version:1,declaration:mn,inputs:[pU],process:null,outputs:[dU],successCalls:[wg,Vg],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[hU],calledBySuccess:[],error:null,parent:yU},mU={type:n.GenericReference,id:"concurrency-and-wait-parent-ref-id",entityType:n.Project,entityId:H},TU={type:n.FunctionDeclaration,id:ft,version:1,name:"Execute with concurrency and wait",description:"Executes a hardcoded list of actions in parallel and waits for some time before ending the logic with some unrelated data payload as the result.",inputs:[],calls:[fU,aU,DF],returnStatements:[Ag],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:mU},EU={type:n.GenericReference,id:"3521f2c8-a5c0-419c-8808-4fc6a73d0b78",entityType:n.ReturnDeclaration,entityId:"e1ec31f0-25ca-42ac-a4c4-c9ec2255f55b"},bU={like:!1,inferred:!1,id:"ce8b9a30-afe9-4d4f-879f-1677efca2c47",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:EU},RU={type:n.GenericReference,id:"8ee66e38-b060-474e-a503-594063a8ec24",entityType:n.ReturnStatement,entityId:"40a23a98-d3b2-42b1-9652-b33779ad15aa"},vU={isError:!1,id:"e1ec31f0-25ca-42ac-a4c4-c9ec2255f55b",type:n.ReturnDeclaration,version:1,name:"Created company",description:"The new company that was created",implements:null,dataType:bU,readsValue:null,required:!0,index:0,parent:RU},gU={type:n.GenericReference,id:"9cb3c1e4-7250-4be6-be2a-69c2dd366d6f",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},IU={type:n.GenericReference,id:"c065fcdd-e054-4f95-941c-7eaa65c35d04",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},Lg={type:n.ReturnStatement,id:"40a23a98-d3b2-42b1-9652-b33779ad15aa",version:1,outputs:[vU],calledByError:[],calledByEntry:[IU],calledBySuccess:[],throws:null,x:0,y:0,parent:gU},DU={type:n.GenericReference,id:"312ef836-9e40-4d57-b177-03b7145ed074",entityType:n.Project,entityId:H},PU={type:n.FunctionDeclaration,id:"5059c093-eda2-4efc-b7b4-aaaadd4d44de",version:1,name:"Create new company",description:null,inputs:[],calls:[Lg],index:null,implements:null,returnStatements:[Lg],collapsed:!1,private:!1,x:0,y:0,parent:DU},Fc="get-current-date-and-time-func-decl-id",Gg="get-current-date-and-time-return-statement-id",$g="get-current-date-and-time-return-declaration-id",Fg="get-current-date-and-time-return-declaration-data-type-id",AU={type:n.GenericReference,id:"get-current-date-and-time-return-declaration-data-type-value-parent-ref-id",entityType:n.DataType,entityId:Fg},OU={type:n.GenericReference,id:"get-current-date-and-time-return-declaration-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:$g},SU={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:Fg,version:1,entity:pn,asType:!1,isList:!1,isNullable:!1,like:!1,inferred:!1,defaultValue:{id:"last-timestamp-variable-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.Date,valueAsType:null,autogeneration:{type:We.CurrentDateAndTime,rangeStart:null,rangeEnd:null},parent:AU},constant:!1,parent:OU},CU={type:n.GenericReference,id:"get-current-date-and-time-return-declaration-parent-ref-id",entityType:n.ReturnStatement,entityId:Gg};n.ReturnDeclaration;const BU={type:n.GenericReference,id:"get-current-date-and-time-return-statement-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:Fc},wU={type:n.GenericReference,id:"get-current-date-and-time-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:Fc};n.ReturnStatement;const _U={type:n.GenericReference,id:"concurrency-and-wait-parent-ref-id",entityType:n.Project,entityId:H},NU={type:n.FunctionDeclaration,id:Fc,version:1,name:"Get current date and time",description:"Generates and returns the current date and time at the time of the execution",inputs:[],calls:[],returnStatements:[],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:_U},Ug="do-math-return-statement-id",xg="do-math-return-declaration-id",MU={type:n.GenericReference,id:"do-math-func-var-to-return-one-ref-id",entityType:n.VariableDeclaration,entityId:"do-math-func-var-to-return-one-id"},VU={like:!1,inferred:!1,id:"do-math-func-var-to-return-one-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:MU},LU={type:n.GenericReference,id:"do-math-func-decl-ref-two-id",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},GU={type:n.GenericReference,id:"do-math-func-var-to-return-one-map-ref-id",entityType:n.ReturnDeclaration,entityId:xg},$U={type:n.VariableDeclaration,id:"do-math-func-var-to-return-one-id",version:1,description:null,name:"Fixed result",dataType:VU,readsValue:null,writesValues:[GU],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:LU},FU={type:n.GenericReference,id:"96ec244e-594b-45f7-802b-6dc3056920f6",entityType:n.ReturnStatement,entityId:Ug},UU={type:n.GenericReference,id:"d120c0cc-9d13-4e45-90e2-4e1ee825ca46",entityType:n.ReturnDeclaration,entityId:"873a3556-4911-4141-b2a0-49c677b56fb4"},xU={like:!1,inferred:!1,id:"da91aa23-9985-49ac-a8bf-9d623ba1ba8f",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:UU},jU={isError:!1,id:xg,version:1,type:n.ReturnDeclaration,name:"Result",description:null,implements:null,dataType:xU,readsValue:$U,required:!0,index:0,parent:FU},kU={type:n.GenericReference,id:"57fd93e4-93a1-484e-82eb-4dd15d2d0e24",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},qU={type:n.GenericReference,id:"0a86e8d5-ab21-476e-a482-b928cbf351e3",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},jg={type:n.ReturnStatement,id:Ug,version:1,outputs:[jU],calledByError:[],calledByEntry:[],calledBySuccess:[kU],parent:qU,throws:null,x:0,y:0},JU={type:n.GenericReference,id:"a2db26be-57f2-48e5-9769-cdbf0d95dc7c",entityType:n.VariableDeclaration,entityId:"d0e9f1f3-7e9f-4e1f-8d8e-7b4b3e6c6a6a"},WU={like:!1,inferred:!1,id:"c3e9d5f0-204f-45f9-85f7-e1b56b468388",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:JU},HU={type:n.GenericReference,id:"692122c5-610a-4504-90dd-f5a5202d116c",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},YU={type:n.GenericReference,id:"do-math-func-return-one-called-by",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},zU={type:n.GenericReference,id:"6dceb501-be5b-4252-afb4-3c0d08abba33",entityType:n.OutputMap,entityId:"64752080-ee0f-4cfe-9897-a0668f2b2aca"},kg={type:n.VariableDeclaration,id:"d0e9f1f3-7e9f-4e1f-8d8e-7b4b3e6c6a6a",version:1,name:"Result",dataType:WU,description:null,readsValue:zU,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[YU],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:HU},ZU={type:n.GenericReference,id:"5440f523-af38-4981-8035-89d162fe8041",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},KU={type:n.GenericReference,id:"8c482c35-e674-4713-a1dd-63c3d13b611c",entityType:n.OutputMap,entityId:"64752080-ee0f-4cfe-9897-a0668f2b2aca"},XU={type:n.GenericReference,id:"c0a299cd-5869-4930-8cf0-90e3ceb8a903",entityType:n.VariableDeclaration,entityId:"46b2fe23-b417-4887-a35d-09b186679172"},QU={like:!1,inferred:!1,id:"51c0c1df-2ee3-41df-ae52-ac512d8cf795",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:XU},e4={type:n.GenericReference,id:"do-math-func-return-two-called-by",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},qg={type:n.VariableDeclaration,id:"46b2fe23-b417-4887-a35d-09b186679172",version:1,name:"Total",description:null,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[e4],successCalls:[],errorCalls:[],dataType:QU,readsValue:KU,writesValues:[],internalCalls:[],parent:ZU,x:0,y:0},Jg={type:n.GenericReference,id:"6e4d776e-6af2-4321-b630-c78110fd677c",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},t4={type:n.GenericReference,id:"5b60955b-2486-40b6-bb24-ffd97ccd8902",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},n4={type:n.GenericReference,id:"1a49923f-bc6f-453f-a438-e74e5475c2a9",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},r4={type:n.GenericReference,id:"02bfde0a-b757-4072-9613-6e9c7c9a424a",entityType:n.ArgumentDeclaration,entityId:"d8895765-f705-457e-85fa-25d130926769"},Wg={id:"928953b0-0e3f-4d8c-ae5a-84620b4b8c68",version:1,type:n.InputMap,declaration:tl,name:null,description:null,readsValue:r4,defaultValue:null,index:0,parent:n4},i4={id:"64752080-ee0f-4cfe-9897-a0668f2b2aca",type:n.OutputMap,version:1,declaration:il,writesValues:[kg,qg],index:0,parent:t4},a4={type:n.GenericReference,id:"d235a7f6-07ff-4f35-98d2-8f42dd59cf9f",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},s4={id:"8827e8e9-9381-4ad7-8f61-5419c23c9136",type:n.GenericReference,entityType:n.VariableDeclaration,entityId:"72a338d8-0183-4ca2-8760-227517854595"},Hg={id:"a5525249-0eb5-472b-97bc-5e4cc0d75aee",version:1,type:n.InputMap,declaration:nl,name:null,description:null,readsValue:s4,defaultValue:null,index:1,parent:a4},o4={type:n.Operation,id:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e",declaration:Ja,version:1,inputs:[Wg,Hg],outputs:[i4],calledByError:[],calledByEntry:[Jg],calledBySuccess:[],process:null,successCalls:[jg,kg,qg],errorCalls:[],parent:Jg,error:null,x:0,y:0},l4={type:n.GenericReference,id:"a2c40226-2270-4963-a865-c777ba79c551",entityType:n.DataType,entityId:"a350a9e9-25ee-477f-a83d-9e98ed2451662"},c4={id:"f47731b3-f278-4ab5-aeb2-24519c1119fb",type:n.GenericReference,entityId:"72a338d8-0183-4ca2-8760-227517854595",entityType:n.ArgumentDeclaration},Yg={like:!1,inferred:!1,id:"a350a9e9-25ee-477f-a83d-9e98ed2451662",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"do-math-func-argument-two-default-value-id",type:n.PrimitiveValue,version:1,value:1,name:P.Number,parent:l4,valueAsType:null,autogeneration:null},constant:!1,parent:c4},d4={type:n.GenericReference,id:"5f5d8dd0-7f3b-40cd-9f84-83d976887eaf",entityType:n.ArgumentDeclaration,entityId:"649bf0a4-6532-44aa-9818-a03d1c6564e9"},u4={type:n.GenericReference,id:"ca018d0f-a8b3-4c7e-a408-c8b372d04aff",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},p4={type:n.GenericReference,id:"do-math-func-var-called-by-ref",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},zg={type:n.VariableDeclaration,id:"72a338d8-0183-4ca2-8760-227517854595",version:1,name:"Z",description:null,dataType:Yg,inputs:[],outputs:[],calledByError:[],calledByEntry:[p4],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:d4,writesValues:[Hg],internalCalls:[],x:0,y:0,parent:u4},y4={entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b",type:n.GenericReference,id:"af0cf105-4075-425f-aecc-b25d3600fcc4"},h4={id:"649bf0a4-6532-44aa-9818-a03d1c6564e9",type:n.ArgumentDeclaration,version:1,name:"Z",description:"The number to add",dataType:Yg,implements:null,writesValues:[zg],required:!0,index:1,parent:y4},f4={type:n.GenericReference,id:"56953b5d-3e43-4dea-a62c-f3e868ba81bb",entityType:n.Project,entityId:H},m4={id:"868defc8-5c95-48ed-942d-257e8b9b9b00",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},T4={type:n.GenericReference,id:"35167664-a793-49f1-9eaf-fb57eac30897",entityType:n.DataType,entityId:"55b12914-91b1-48b7-9a3e-9c5d0d2a2ec2"},E4={id:"d47ceef6-be6f-40f1-a7b3-c73c8d8a6c6a",type:n.GenericReference,entityId:"d8895765-f705-457e-85fa-25d130926769",entityType:n.ArgumentDeclaration},b4={like:!1,inferred:!1,id:"55b12914-91b1-48b7-9a3e-9c5d0d2a2ec2",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"do-math-func-argument-one-default-value-id",type:n.PrimitiveValue,version:1,value:5,name:P.Number,parent:T4,valueAsType:null,autogeneration:null},constant:!1,parent:E4},R4={id:"d8895765-f705-457e-85fa-25d130926769",type:n.ArgumentDeclaration,version:1,name:"N",dataType:b4,description:"The number to add",implements:null,writesValues:[Wg],required:!0,index:0,parent:m4},v4={type:n.FunctionDeclaration,id:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b",version:1,name:"Do math",description:"This function does math",inputs:[R4,h4],calls:[o4,zg],implements:null,index:null,collapsed:!1,returnStatements:[jg],private:!1,x:0,y:0,parent:f4},mt="replace-bank-account-in-company-func-declaration-id",Uc="company-entity-to-modify-arg-declaration-id",xc="account-number-to-create-arg-decl-id",di="company-main-variable-id",ui="search-person-by-id-id",Zg="new-bank-account-owner-arg-decl-id",Kg="search-person-by-id-output-declaration-id",jc="search-person-by-id-output-entity-map-id",ma="person-not-empty-condition-id",Zs="create-new-bank-account-instance-operation-id",Xg="create-new-bank-account-instance-operation-output-entity-map-id",Qg="company-bank-account-output-map-id",kc="old-bank-account-var-declaration-id",eI="old-bank-account-var-instance-id",tI="company-variable-instance-id",qc="delete-bank-account-internal-call-id",Ta="new-bank-account-data-variable-declaration-id",g4={type:n.GenericReference,id:"company-variable-instance-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},I4={type:n.GenericReference,id:"company-variable-instance-called-by-ref-id",entityType:n.InternalCall,entityId:qc},D4={type:n.GenericReference,id:"company-variable-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:di},P4={type:n.GenericReference,id:"bank-account-input-map-parent-ref-id",entityType:n.VariableInstance,entityId:tI},A4={type:n.GenericReference,id:"bank-account-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Xg},nI={type:n.InputMap,id:"bank-account-input-map-id",version:1,readsValue:A4,declaration:Tc,name:null,description:null,index:0,defaultValue:null,parent:P4},O4={type:n.VariableInstance,id:tI,version:1,declaration:D4,inputs:[nI],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[I4],successCalls:[],errorCalls:[],internalCalls:[],parent:g4,readsValue:null,writesValues:[],x:0,y:0},S4={type:n.GenericReference,id:"bank-account-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:di},C4={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"bank-account-variable-data-type-id",version:1,entity:si,asType:!1,isList:!1,isNullable:!1,constant:!1,like:!1,inferred:!1,defaultValue:null,parent:S4},B4={type:n.GenericReference,id:"bank-account-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:Qg},w4={type:n.GenericReference,id:"bank-account-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},_4={type:n.GenericReference,id:"bank-account-variable-called-by-ref-id",entityType:n.VariableDeclaration,entityId:di},N4={type:n.GenericReference,id:"delete-bank-account-internal-call-called-by-ref-id",entityType:n.Operation,entityId:Zs};n.GenericReference,n.VariableInstance;const M4={type:n.GenericReference,id:"delete-bank-account-internal-call-called-by-ref-two-id",entityType:n.VariableDeclaration,entityId:kc},V4={type:n.GenericReference,id:"old-bank-account-variable-trigger-delete-decl-ref-id",entityType:n.VariableDeclaration,entityId:kc},L4={type:n.GenericReference,id:"bank-account-variable-parent-ref-two-id",entityType:n.FunctionDeclaration,entityId:mt},G4={type:n.GenericReference,id:"old-bank-account-variable-trigger-delete-internal-call-ref-id",entityType:n.InternalCall,entityId:qc},$4={type:n.VariableInstance,id:eI,version:1,declaration:V4,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],internalCalls:[G4],errorCalls:[],parent:L4,readsValue:null,writesValues:[],x:0,y:0},rI={process:null,type:n.InternalCall,id:qc,version:1,declaration:jl,index:0,successCalls:[O4],errorCalls:[],inputs:[],outputs:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[N4,M4],parent:$4},iI={type:n.VariableDeclaration,id:kc,version:1,name:"Old bank account",description:"The existing bank account that needs to be replaced in the company entity",dataType:C4,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[_4],successCalls:[rI],internalCalls:[],errorCalls:[],parent:w4,readsValue:B4,writesValues:[],x:0,y:0},F4={type:n.GenericReference,id:"company-variable-declaration-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:di},U4={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"company-variable-declaration-data-type-id",version:1,entity:Gt,asType:!1,isList:!1,isNullable:!1,like:!1,inferred:!1,constant:!1,defaultValue:null,parent:F4},x4={type:n.GenericReference,id:"company-variable-declaration-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:Uc},j4={type:n.GenericReference,id:"company-variable-declaration-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},k4={type:n.GenericReference,id:"company-variable-declaration-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:mt},q4={type:n.GenericReference,id:"company-bank-account-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:di},J4={id:Qg,version:1,type:n.OutputMap,declaration:Tc,index:0,parent:q4,writesValues:[iI]},aI={type:n.VariableDeclaration,id:di,version:1,name:"Company",description:"The company entity that was passed as an argument to the parent function",dataType:U4,inputs:[],outputs:[J4],calledByError:[],calledByEntry:[k4],calledBySuccess:[],successCalls:[iI],errorCalls:[],parent:j4,internalCalls:[],readsValue:x4,writesValues:[],x:0,y:0},W4={type:n.GenericReference,id:"create-new-bank-account-account-owner-dynamic-input-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ta},H4={id:"create-new-bank-account-account-owner-dynamic-input-map-reads-value-ref-id",type:n.GenericReference,entityType:n.OutputMap,entityId:jc},sI={id:"create-new-bank-account-account-owner-dynamic-input-map-id",version:1,type:n.InputMap,declaration:null,name:"Account owner",description:null,readsValue:H4,index:1,defaultValue:null,parent:W4},Y4={id:"create-new-bank-account-account-number-dynamic-input-map-reads-value-ref-id",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:xc},z4={type:n.GenericReference,id:"create-new-bank-account-account-number-dynamic-input-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ta},oI={id:"create-new-bank-account-account-number-dynamic-input-map-id",version:1,type:n.InputMap,declaration:null,name:"Account number",description:null,readsValue:Y4,defaultValue:null,index:0,parent:z4},lI={type:n.GenericReference,id:"create-new-bank-account-instance-operation-entity-to-create-input-map-parent-ref-id",entityType:n.Operation,entityId:Zs},Z4={id:"create-new-bank-account-instance-operation-entity-to-create-input-map-id",version:1,type:n.InputMap,declaration:nr.inputs[0],name:null,description:null,index:0,readsValue:null,defaultValue:{type:n.PrimitiveValue,name:P.EntityTemplate,value:null,valueAsType:si,autogeneration:null},parent:lI},K4={type:n.GenericReference,id:"create-new-bank-account-instance-operation-entity-data-input-map-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:Ta},cI={id:"create-new-bank-account-instance-operation-entity-data-input-map-id",version:1,type:n.InputMap,declaration:nr.inputs[1],name:null,description:null,index:1,readsValue:K4,defaultValue:null,parent:lI},X4={type:n.GenericReference,id:"create-new-bank-account-instance-operation-output-entity-map-parent-ref-id",entityType:n.Operation,entityId:Zs},Q4={id:Xg,version:1,type:n.OutputMap,declaration:nr.outputs[0],index:0,writesValues:[nI],parent:X4},ex={type:n.GenericReference,id:"create-new-bank-account-instance-operation-called-by-ref-id",entityType:n.Condition,entityId:ma},tx={type:n.GenericReference,id:"create-new-bank-account-instance-operation-called-by-ref-id",entityType:n.VariableDeclaration,entityId:Ta},nx={type:n.GenericReference,id:"create-new-bank-account-instance-operation-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},dI={process:null,id:Zs,type:n.Operation,version:1,declaration:nr,inputs:[Z4,cI],error:null,outputs:[Q4],successCalls:[rI],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[tx,ex],parent:nx,x:0,y:0},rx={type:n.GenericReference,id:"new-bank-account-data-variable-declaration-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},ix={type:n.GenericReference,id:"create-new-bank-account-instance-operation-called-by-ref-id",entityType:n.Condition,entityId:ma},ax={id:Ta,type:n.VariableDeclaration,version:1,inputs:[oI,sI],dataType:null,name:"New bank Account's data",description:null,readsValue:null,outputs:[],writesValues:[cI],successCalls:[dI],errorCalls:[],internalCalls:[],calledByError:[],calledBySuccess:[ix],calledByEntry:[],x:0,y:0,parent:rx},sx={id:"person-not-found-thrown-error-datatype-default-value-parent-ref-id",type:n.GenericReference,entityId:"person-not-found-thrown-error-datatype-id",entityType:n.DataType},ox={id:"person-not-found-thrown-error-datatype-parent-ref-id",type:n.GenericReference,entityId:"person-not-found-thrown-error-id",entityType:n.ReturnDeclaration};n.DataType,n.PrimitiveValue,P.String;const lx={id:"person-not-found-thrown-error-parent-ref-id",type:n.GenericReference,entityId:"person-not-found-error-return-statement-id",entityType:n.ReturnStatement},cx={isError:!0,id:"person-not-found-thrown-error-id",type:n.ReturnDeclaration,version:1,dataType:null,name:"Person not found error",description:"If the person entity was not found this error is outputted",parent:lx,implements:null,required:!0,index:0,readsValue:null},dx={id:"person-not-found-error-return-statement-called-by-ref-id",type:n.GenericReference,entityId:ma,entityType:n.Condition},ux={id:"person-not-found-error-return-statement-parent-ref-id",type:n.GenericReference,entityId:mt,entityType:n.FunctionDeclaration},px={id:"person-not-found-error-return-statement-id",type:n.ReturnStatement,version:1,throws:cx,outputs:[],calledBySuccess:[],calledByError:[dx],calledByEntry:[],x:0,y:0,parent:ux},yx={type:n.GenericReference,id:"person-not-empty-condition-called-by-ref-id",entityType:n.Search,entityId:ui},hx={type:n.GenericReference,id:"person-not-empty-condition-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},fx={type:n.GenericReference,id:"person-entity-to-check-map-reads-value-ref-id",entityType:n.OutputMap,entityId:jc},mx={type:n.GenericReference,id:"person-not-empty-condition-ref-two-id",entityType:n.Condition,entityId:ma},uI={id:"person-entity-to-check-map-id",version:1,type:n.InputMap,declaration:cr.inputs[0],name:null,description:null,readsValue:fx,index:0,defaultValue:null,parent:mx},Tx={type:n.Condition,id:ma,version:1,declaration:cr,inputs:[uI],calledByError:[],calledByEntry:[],calledBySuccess:[yx],successCalls:[ax,dI],errorCalls:[px],x:0,y:0,parent:hx},Ex={type:n.GenericReference,id:"search-person-by-id-output-entity-declaration-datatype-parent-ref-id",entityType:n.ValueDescriptor,entityId:Kg},bx={like:!1,inferred:!1,id:"search-person-by-id-output-entity-declaration-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,constant:!1,asType:!1,isNullable:!1,entity:ht,defaultValue:null,parent:Ex},Rx={type:n.GenericReference,id:"search-person-by-id-output-entity-declaration-parent-ref-id",entityType:n.Search,entityId:ui},pI={id:Kg,type:n.ValueDescriptor,version:1,dataType:bx,name:"Found person",description:"The person entity that was found",parent:Rx,required:!0,index:0},vx={type:n.GenericReference,id:"search-person-by-id-output-entity-map-parent-ref-id",entityType:n.Search,entityId:ui},gx={type:n.OutputMap,id:jc,version:1,declaration:pI,parent:vx,writesValues:[uI,sI],index:0},Ix={id:"search-person-by-id-input-declaration-datatype-parent-ref-id",type:n.GenericReference,entityId:"search-person-by-id-input-declaration-id",entityType:n.ArgumentDeclaration};n.DataType;const Dx={type:n.GenericReference,id:"search-person-by-id-input-declaration-parent-ref-id",entityType:n.Search,entityId:ui},yI={id:"search-person-by-id-input-declaration-id",type:n.ArgumentDeclaration,version:1,dataType:null,name:"Person ID",description:"The unique identifier (ID) property of the person entity",implements:null,index:0,required:!0,parent:Dx,writesValues:[]},Px={type:n.GenericReference,id:"search-person-by-id-input-map-parent-ref-id",entityType:n.Search,entityId:ui},Ax={id:"search-person-by-id-input-map-reads-value-ref-id",type:n.GenericReference,entityId:Zg,entityType:n.ArgumentDeclaration},hI={type:n.InputMap,id:"search-person-by-id-input-map",version:1,declaration:yI,name:null,description:null,readsValue:Ax,defaultValue:null,parent:Px,index:0},Ox={from:{name:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},items:[{name:"*"}],where:[{name:"id",value:"{{dynamic_value_1}}"}]},Sx={type:n.GenericReference,id:"search-person-by-id-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},Cx={type:n.GenericReference,id:"search-person-by-id-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:mt},Bx={type:n.Search,id:ui,version:1,name:"Search person by ID",description:"Searches for a person entity given the UUID",query:Ox,inputsDeclarations:[yI],inputs:[hI],outputsDeclarations:[pI],outputs:[gx],calledByError:[],calledByEntry:[Cx],calledBySuccess:[],error:null,successCalls:[Tx],errorCalls:[],parent:Sx,x:0,y:0};n.GenericReference,n.DataType;const wx={id:"account-number-to-create-arg-decl-data-type-parent-ref-id",type:n.GenericReference,entityId:xc,entityType:n.ArgumentDeclaration},_x={like:!1,inferred:!1,id:"account-number-to-create-arg-decl-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:wx},Nx={entityType:n.FunctionDeclaration,entityId:mt,type:n.GenericReference,id:"account-number-to-create-arg-decl-parent-ref-id"},Mx={id:xc,type:n.ArgumentDeclaration,version:1,name:"Account number",description:"The account number of the new bank account entity",dataType:_x,implements:null,writesValues:[oI],required:!0,index:1,parent:Nx};n.GenericReference,n.DataType;const Vx={id:"new-bank-account-owner-arg-decl-data-type-parent-ref-id",type:n.GenericReference,entityId:"new-bank-account-owner-arg-decl-id",entityType:n.ArgumentDeclaration},Lx={like:!1,inferred:!1,id:"new-bank-account-owner-arg-decl-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:qa,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:Vx},Gx={entityType:n.FunctionDeclaration,entityId:mt,type:n.GenericReference,id:"new-bank-account-owner-arg-decl-parent-ref-id"},$x={id:Zg,type:n.ArgumentDeclaration,version:1,name:"New account owner ID",description:"If it has changed, this is the new person entity, that owns of the bank account",dataType:Lx,implements:null,writesValues:[hI],required:!1,index:1,parent:Gx},Fx={type:n.GenericReference,id:"replace-bank-account-in-company-parent-ref",entityType:n.Project,entityId:H},Ux={type:n.GenericReference,id:"company-entity-to-modify-parent-ref",entityType:n.FunctionDeclaration,entityId:mt};n.GenericReference,n.DataType;const xx={id:"d47ceef6-be6f-40f1-a7b3-c73c8d8a6c6a",type:n.GenericReference,entityId:Uc,entityType:n.ArgumentDeclaration},jx={like:!1,inferred:!1,id:"company-entity-to-modify-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:xx},kx={id:Uc,type:n.ArgumentDeclaration,version:1,name:"Company",dataType:jx,implements:null,description:"The company to replace the bank account for",writesValues:[aI],required:!0,index:0,parent:Ux},qx={type:n.FunctionDeclaration,id:mt,version:1,name:"Replace bank account",description:"This action takes an existing company and data to create a new bank account entity. It then creates a bank account, deletes the old one, and updates the company with the new bank account",inputs:[kx,Mx,$x],index:null,implements:null,calls:[Bx,aI],collapsed:!1,returnStatements:[],private:!1,x:0,y:0,parent:Fx},Jx={type:n.GenericReference,id:"e0a937bd-3a85-4037-a973-916985b9f94b",entityType:n.Project,entityId:"7268bc97-c0e6-4d88-b37e-d3241b5f77a6"},Wx={type:n.FunctionDeclaration,version:1,id:"6bedb217-f844-4332-af72-9626b2a32511",name:"Some library main function",description:null,inputs:[],calls:[],implements:null,collapsed:!0,index:null,returnStatements:[],private:!1,parent:Jx,x:0,y:0},Hx={type:n.GenericReference,id:"948e6869-ae5b-4914-bea0-b9f02ad6a014",entityType:n.Project,entityId:"23b23d8b-1929-4505-a350-745c8550e731"},Yx={type:n.GenericReference,id:"f3d6f2c6-1b3e-4e9d-8c9d-5b5b9f0b8d9c",entityType:n.Project,entityId:"7268bc97-c0e6-4d88-b37e-d3241b5f77a6"},zx={type:n.InstalledProject,version:1,id:"7268bc97-c0e6-4d88-b37e-d3241b5f77a6",name:"Third Party Installed Project",description:null,functions:[Wx],events:[],implements:Yx,parent:Hx,x:0,y:0},Jc="global-counted-test-loop-id",fI="global-counted-test-loop-body-id",mI="global-counted-test-loop-body-current-iteration-value-argument-declaration-id",Zx={type:n.GenericReference,id:"global-counted-test-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:mI,entityType:n.ArgumentDeclaration},Kx={like:!1,inferred:!1,id:"global-counted-test-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Zx},Xx={id:"global-counted-test-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:fI,entityType:n.FunctionDeclaration},Qx={id:mI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:Kx,implements:Sl,required:!0,index:0,writesValues:[],parent:Xx},ej={id:"global-counted-test-loop-body-parent-ref-id",type:n.GenericReference,entityId:Jc,entityType:n.Loop},tj={id:fI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Qx],calls:[],implements:Cl,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:ej},pi="random-company-employee-test-variable-id",Wc="manager-global-variable-id",TI="global-user-instance-id",Rn="employee-mapped-dto-variable-id",qn="employee-mapped-dto-variable-instance-id",EI="random-employee-id-output-map-id",bI="random-employee-birth-date-output-map-id",RI="random-employee-department-output-map-id",vI="random-employee-manager-output-map-id",gI="manager-global-id-output-map-id",II="global-user-instance-id-output-map-id",nj="employee-mapped-dto-requester-id-input-map-id",DI="employee-mapped-dto-now-timestamp-input-map-id",rj="employee-mapped-dto-id-input-map-id",ij="employee-mapped-dto-birth-date-input-map-id",aj="employee-mapped-dto-department-input-map-id",sj="employee-mapped-dto-manager-input-map-id",oj={id:"global-counted-test-loop-iteration-number-input-map-parent-ref-id",type:n.GenericReference,entityId:Jc,entityType:n.Loop};n.GenericReference,n.VariableDeclaration;const lj={id:"global-counted-test-loop-iteration-number-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:as.inputs[0],defaultValue:null,readsValue:null,index:0,parent:oj},cj={id:"global-counted-test-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},dj={id:"global-counted-test-loop-called-by-success-ref-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},uj={id:Jc,type:n.Loop,version:1,declaration:as,inputs:[lj],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:tj,calledByError:[],calledByEntry:[],calledBySuccess:[dj],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:cj},Hc="global-object-keys-test-loop-id",PI="global-object-keys-test-loop-body-id",AI="global-object-keys-test-loop-body-current-iteration-value-argument-declaration-id",pj={type:n.GenericReference,id:"global-object-keys-test-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:AI,entityType:n.ArgumentDeclaration},yj={like:!1,inferred:!1,id:"global-object-keys-test-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:pj},hj={id:"global-object-keys-test-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:PI,entityType:n.FunctionDeclaration},fj={id:AI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:yj,implements:Al,required:!0,index:0,writesValues:[],parent:hj},mj={id:"global-object-keys-test-loop-body-parent-ref-id",type:n.GenericReference,entityId:Hc,entityType:n.Loop},Tj={id:PI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[fj],calls:[],implements:Li,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:mj},Ej={id:"global-object-keys-test-loop-iteration-object-input-map-parent-ref-id",type:n.GenericReference,entityId:Hc,entityType:n.Loop},bj={id:"global-object-keys-test-loop-iteration-object-input-map-reads-value-ref-id",type:n.GenericReference,entityId:Rn,entityType:n.VariableDeclaration},OI={id:"global-object-keys-test-loop-iteration-object-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:Li.inputs[0],defaultValue:null,readsValue:bj,index:0,parent:Ej},Rj={id:"global-object-keys-test-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},vj={id:"global-object-keys-test-loop-called-by-success-ref-two-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},gj={id:"global-object-keys-test-loop-called-by-success-ref-one-id",type:n.GenericReference,entityId:Rn,entityType:n.VariableDeclaration},Yc={id:Hc,type:n.Loop,version:1,declaration:Li,inputs:[OI],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:Tj,calledByError:[],calledByEntry:[],calledBySuccess:[gj,vj],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:Rj},zc="global-object-values-test-loop-id",SI="global-object-values-test-loop-body-id",CI="global-object-values-test-loop-body-current-iteration-value-argument-declaration-id",Ij={type:n.GenericReference,id:"global-object-values-test-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:CI,entityType:n.ArgumentDeclaration},Dj={like:!1,inferred:!1,id:"global-object-values-test-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Ij},Pj={id:"global-object-values-test-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:SI,entityType:n.FunctionDeclaration},Aj={id:CI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:Dj,implements:Ol,required:!0,index:0,writesValues:[],parent:Pj},Oj={id:"global-object-values-test-loop-body-parent-ref-id",type:n.GenericReference,entityId:zc,entityType:n.Loop},Sj={id:SI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Aj],calls:[],implements:Gi,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:Oj},Cj={id:"global-object-values-test-loop-iteration-object-input-map-parent-ref-id",type:n.GenericReference,entityId:zc,entityType:n.Loop},Bj={id:"global-object-values-test-loop-iteration-object-input-map-reads-value-ref-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},BI={id:"global-object-values-test-loop-iteration-object-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:Gi.inputs[0],defaultValue:null,readsValue:Bj,index:0,parent:Cj},wj={id:"global-object-values-test-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},_j={id:"global-object-values-test-loop-called-by-success-ref-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},wI={id:zc,type:n.Loop,version:1,declaration:Gi,inputs:[BI],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:Sj,calledByError:[],calledByEntry:[],calledBySuccess:[_j],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:wj},Zc="global-test-iterate-over-string-loop-id",Kc="global-test-iterate-over-string-loop-body-id",Ks="global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-id",_I="global-test-iterate-over-string-loop-iteration-list-input-map-id",Nj={type:n.GenericReference,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:Ks,entityType:n.ArgumentDeclaration},Mj={like:!1,inferred:!1,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Nj},Vj={id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:Kc,entityType:n.FunctionDeclaration},Lj={id:Ks,type:n.ArgumentDeclaration,version:1,name:"Current character",description:"The current character value being processed.",dataType:Mj,implements:Il,required:!0,index:1,writesValues:[],parent:Vj},Gj={type:n.GenericReference,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:Ks,entityType:n.ArgumentDeclaration},$j={like:!1,inferred:!1,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Gj},Fj={id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:Kc,entityType:n.FunctionDeclaration},Uj={id:Ks,type:n.ArgumentDeclaration,version:1,name:"Current character",description:"The current character value being processed.",dataType:$j,implements:Dl,required:!0,index:0,writesValues:[],parent:Fj},xj={id:"global-test-iterate-over-string-loop-body-parent-ref-id",type:n.GenericReference,entityId:Zc,entityType:n.Loop},jj={id:Kc,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Uj,Lj],calls:[],implements:Pl,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:xj},kj={id:"global-test-iterate-over-string-loop-iteration-list-input-map-parent-ref-id",type:n.GenericReference,entityId:Zc,entityType:n.Loop},qj={id:"global-test-iterate-over-string-loop-iteration-list-input-map-default-value-parent-ref-id",type:n.GenericReference,entityId:_I,entityType:n.InputMap},Jj={id:"global-test-iterate-over-string-loop-iteration-list-input-map-default-value-id",type:n.PrimitiveValue,name:P.String,version:1,value:"Hello",valueAsType:null,autogeneration:{type:We.Random,rangeStart:4,rangeEnd:5},parent:qj},Wj={id:_I,type:n.InputMap,version:1,name:null,description:null,declaration:is.inputs[0],defaultValue:Jj,readsValue:null,index:0,parent:kj},Hj={id:"global-test-iterate-over-string-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},Yj={id:Zc,type:n.Loop,version:1,declaration:is,inputs:[Wj],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:jj,calledByError:[],calledByEntry:[],calledBySuccess:[],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:Hj},Xc="iterate-over-list-loop-id",NI="iterate-over-list-loop-body-id",MI="iterate-over-list-loop-body-current-iteration-value-argument-declaration-id",zj={type:n.GenericReference,id:"iterate-over-list-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:MI,entityType:n.ArgumentDeclaration},Zj={like:!1,inferred:!1,id:"iterate-over-list-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:zj},Kj={id:"iterate-over-list-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:NI,entityType:n.FunctionDeclaration},Xj={id:MI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:Zj,implements:ns,required:!0,index:0,writesValues:[],parent:Kj},Qj={id:"iterate-over-list-loop-body-parent-ref-id",type:n.GenericReference,entityId:Xc,entityType:n.Loop},e8={id:NI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Xj],calls:[],implements:rs,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:Qj},t8={id:"iterate-over-list-loop-iteration-list-input-map-parent-ref-id",type:n.GenericReference,entityId:Xc,entityType:n.Loop},n8={id:"iterate-over-list-loop-iteration-list-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:ir.inputs[0],defaultValue:null,readsValue:null,index:0,parent:t8},r8={id:"iterate-over-list-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},i8={id:Xc,type:n.Loop,version:1,declaration:ir,inputs:[n8],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:e8,calledByError:[],calledByEntry:[],calledBySuccess:[],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:r8};var Qc=(r=>(r.EQ="eq",r.NEQ="neq",r.GT="gt",r.GTE="gte",r.LT="lt",r.LTE="lte",r.LIKE="like",r.ILIKE="ilike",r))(Qc||{}),VI=(r=>(r.COUNT="count",r.SUM="sum",r.AVG="avg",r.MIN="min",r.MAX="max",r))(VI||{});const a8={from:{name:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},items:{from:{name:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},items:[{function:{name:VI.COUNT,items:["f8310850-a87e-405c-b182-4f1d5fa49240"]},alias:"employee_count"}],where:[{name:"80c86e1b-caca-4ba5-9b1f-38f72d10e4a3",operation:Qc.NEQ,value:null}]},where:[{name:"employee_count",operation:Qc.GT,value:1}]},s8={id:"find-companies-with-multiple-employees-and-bank-account-search-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},o8={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-declaration-parent-ref-id",type:n.GenericReference,entityId:"find-companies-with-multiple-employees-and-bank-account",entityType:n.Search},LI={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-declaration-id",type:n.ValueDescriptor,version:1,name:"companies",description:"List of companies with multiple employees and an existing bank account",dataType:null,required:!0,index:0,parent:o8},l8={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-parent-ref-id",type:n.GenericReference,entityId:"find-companies-with-multiple-employees-and-bank-account",entityType:n.Search},c8={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-id",type:n.OutputMap,version:1,declaration:LI,writesValues:[],index:0,parent:l8},d8={id:"find-companies-with-multiple-employees-and-bank-account",type:n.Search,version:1,name:"Find companies with multiple employees and a bank account",description:"This search statement finds companies with multiple employees and an existing bank account",inputsDeclarations:[],outputsDeclarations:[LI],inputs:[],outputs:[c8],query:a8,successCalls:[],errorCalls:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[],x:0,y:0,parent:s8},u8={type:n.GenericReference,id:"employee-mapped-dto-manager-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:gI},p8={type:n.GenericReference,id:"employee-mapped-dto-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},GI={id:sj,type:n.InputMap,version:1,declaration:null,name:"manager_id",description:null,defaultValue:null,index:4,readsValue:u8,parent:p8},y8={type:n.GenericReference,id:"employee-mapped-dto-department-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:RI},h8={type:n.GenericReference,id:"employee-mapped-dto-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},$I={id:aj,type:n.InputMap,version:1,declaration:null,name:"department_name",description:null,defaultValue:null,index:3,readsValue:y8,parent:h8},f8={type:n.GenericReference,id:"employee-mapped-dto-birth-date-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:bI},m8={type:n.GenericReference,id:"employee-mapped-dto-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},FI={id:ij,type:n.InputMap,version:1,declaration:null,name:"birth_date",description:null,defaultValue:null,index:2,readsValue:f8,parent:m8},T8={type:n.GenericReference,id:"employee-mapped-dto-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:EI},E8={type:n.GenericReference,id:"employee-mapped-dto-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},UI={id:rj,type:n.InputMap,version:1,declaration:null,name:"id",description:"The ID of the employee",defaultValue:null,index:1,readsValue:T8,parent:E8},b8={type:n.GenericReference,id:"employee-mapped-dto-requester-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:II},R8={type:n.GenericReference,id:"employee-mapped-dto-requester-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},xI={id:nj,type:n.InputMap,version:1,declaration:null,name:"requester_id",description:"The ID of the current user making the request",defaultValue:null,index:0,readsValue:b8,parent:R8},v8={type:n.GenericReference,id:"manager-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Wc},g8={id:gI,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[GI],parent:v8},I8={type:n.GenericReference,id:"manager-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:Wc},D8={like:!1,inferred:!1,id:"manager-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:I8,defaultValue:null},P8={type:n.GenericReference,id:"manager-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:vI},A8={type:n.GenericReference,id:"manager-variable-parent-ref-id",entityType:n.Project,entityId:H},jI={id:Wc,type:n.VariableDeclaration,version:1,name:"Manager",dataType:D8,description:"A variable holding an inherited manager for testing purposes",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:P8,writesValues:[],inputs:[],outputs:[g8],internalCalls:[],parent:A8,x:0,y:0},O8={type:n.GenericReference,id:"random-company-employee-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},S8={id:vI,type:n.OutputMap,version:1,declaration:Lt.properties[2],index:3,writesValues:[jI],parent:O8},C8={type:n.GenericReference,id:"random-company-employee-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},B8={id:RI,type:n.OutputMap,version:1,declaration:Lt.properties[0],index:2,writesValues:[$I],parent:C8},w8={type:n.GenericReference,id:"random-company-employee-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},_8={id:bI,type:n.OutputMap,version:1,declaration:ht.properties[1],index:1,writesValues:[FI],parent:w8},N8={type:n.GenericReference,id:"random-company-employee-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},M8={id:EI,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[UI],parent:N8},V8={type:n.GenericReference,id:"random-company-employee-test-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},L8={like:!1,inferred:!1,id:"random-company-employee-test-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:V8,defaultValue:null},G8={type:n.GenericReference,id:"random-company-employee-test-variable-parent-ref-id",entityType:n.Project,entityId:H},$8={id:pi,type:n.VariableDeclaration,version:1,name:"Company employee",dataType:L8,description:"A variable holding a random company employee for testing purposes",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:null,writesValues:[],inputs:[],outputs:[M8,_8,B8,S8],internalCalls:[],parent:G8,x:0,y:0},F8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-now-timestamp-input-map-default-value-parent-ref-id",entityType:n.InputMap,entityId:DI},U8={type:n.PrimitiveValue,id:"employee-mapped-dto-variable-instance-now-timestamp-input-map-default-value-id",name:P.Date,version:1,valueAsType:null,value:null,autogeneration:{type:We.CurrentDateAndTime,rangeStart:null,rangeEnd:null},parent:F8},x8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-now-timestamp-input-map-parent-ref-id",entityType:n.VariableInstance,entityId:qn},j8={id:DI,type:n.InputMap,version:1,declaration:null,name:"now",description:"The current timestamp when the operation is executed",defaultValue:U8,index:5,readsValue:null,parent:x8},k8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-decl-ref-id",entityType:n.VariableDeclaration,entityId:Rn},q8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-called-by-success-ref-id",entityType:n.VariableDeclaration,entityId:qn},J8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-parent-ref-id",entityType:n.Project,entityId:H},W8={id:qn,type:n.VariableInstance,version:1,declaration:k8,calledByError:[],calledByEntry:[],calledBySuccess:[q8],successCalls:[Yc,wI],errorCalls:[],readsValue:null,writesValues:[BI],inputs:[j8],outputs:[],internalCalls:[],parent:J8,x:0,y:0},H8={type:n.GenericReference,id:"employee-mapped-dto-variable-parent-ref-id",entityType:n.Project,entityId:H},Y8={id:Rn,type:n.VariableDeclaration,version:1,name:"Employee DTO",dataType:null,description:"A variable holding the data of a mapped employee DTO",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[Yc,W8],errorCalls:[],readsValue:null,writesValues:[OI],inputs:[xI,UI,FI,$I,GI],outputs:[],internalCalls:[],parent:H8,x:0,y:0},z8={type:n.GenericReference,id:"0e63e617-f9d3-42e8-bde0-1bb0b1df7034",entityType:n.VariableDeclaration,entityId:uc},Z8={like:!1,inferred:!1,id:"e75645ce-d3df-4f07-a897-ae9ef4d917fd",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:yc,version:1,asType:!1,isList:!1,isNullable:!1,constant:!1,parent:z8,defaultValue:null},K8={type:n.GenericReference,id:"e92a8ff5-3fef-4e0c-8d8f-92c930b2890b",entityType:n.Project,entityId:H},kI={id:uc,type:n.VariableDeclaration,version:1,name:"Current user",description:"The user that is currently logged in",dataType:Z8,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:K8},X8={type:n.GenericReference,id:"manager-variable-id-output-map-parent-ref-id",entityType:n.VariableInstance,entityId:TI},Q8={id:II,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[xI],parent:X8},e9={type:n.GenericReference,id:"global-user-instance-parent-ref-id",entityType:n.Project,entityId:H},t9={id:TI,type:n.VariableInstance,version:1,declaration:kI,calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:null,writesValues:[],inputs:[],outputs:[Q8],internalCalls:[],parent:e9,x:0,y:0},n9={type:n.GenericReference,id:"is-test-environment-variable-dcl-datatype-parent-ref-id",entityType:n.VariableDeclaration,entityId:uc},r9={type:n.GenericReference,id:"is-test-environment-variable-dcl-datatype-default-value-parent-ref-id",entityType:n.DataType,entityId:"is-test-environment-variable-dcl-datatype-id"},i9={like:!1,inferred:!1,id:"is-test-environment-variable-dcl-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:_n,version:1,asType:!1,isList:!1,isNullable:!1,constant:!0,parent:n9,defaultValue:{id:"is-test-environment-variable-dcl-datatype-default-value-id",name:P.Boolean,version:1,value:null,type:n.PrimitiveValue,autogeneration:{type:We.Random,rangeStart:null,rangeEnd:null},valueAsType:null,parent:r9}},a9={type:n.GenericReference,id:"is-test-environment-variable-dcl-main-project-ref-id",entityType:n.Project,entityId:H},qI={id:"is-test-environment-variable-dcl-id",type:n.VariableDeclaration,version:1,name:"Is test envrioment",description:"Indicates whether the current environment is a test environment or not.",dataType:i9,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:a9},s9={type:n.GenericReference,id:"is-test-environment-variable-instance-parent-ref-id",entityType:n.Project,entityId:H},o9={id:"is-test-environment-variable-instance-id",type:n.VariableInstance,version:1,declaration:qI,calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:null,writesValues:[],inputs:[],outputs:[],internalCalls:[],parent:s9,x:0,y:0},JI={type:n.Project,id:H,version:1,name:"Mocked project to compile",description:"This project is used to test all sorts of features and edge cases. It is not meant to be used in production. Or to have any functionality that makes sense",projects:[zx],entities:[pc,yc,ht,ZV,Lt,xs,JR,WR,si,qM,Gt,FV,SR,MC,jM],functions:[TU,Ev,_c,PU,NU,Mv,Nc,Ec,qx,tv,v4],events:[C1],variableDeclarations:[qI,kI,$c,$8,jI,Y8],variableInstances:[o9,t9],conditions:[],operations:[ci],functionCalls:[O0,VL],loops:[i8,Yc,wI,Yj,uj],searches:[d8]};var T=(r=>(r.Error="error",r.Warning="warning",r))(T||{}),S=(r=>(r.InvalidObjectStructure="invalid-object-structure",r.NameNotUniqueInScope="name-not-unique-in-scope",r.EmptyName="empty-name",r.MissingCaller="missing-caller",r.PropertyOverwrite="property-overwrite",r.MethodOverwrite="method-overwrite",r.NoOverlapWithImplementedSignature="no-overlap-with-implemented-signature",r.ReaderWriterIncompatibleDataType="reader-writer-incompatible-data-type",r.UnreachableEntity="unreachable-entity",r.InternalCallParentMissingDataType="internal-call-parent-missing-data-type",r.InternalCallParentDeclarationEntityInvalidType="internal-call-parent-declaration-entity-invalid-type",r.InternalCallDeclarationNotFoundInParentDatatypeEntity="internal-call-declaration-not-found-in-parent-datatype-entity",r.InternalCallDeclarationIsNotFunctionDeclaration="internal-call-declaration-is-not-function-declaration",r.InternalCallDeclarationNotInParentDatatypeEntity="internal-call-declaration-not-in-parent-datatype-entity",r))(S||{}),f=(r=>(r.RootReference="root-reference",r.ReferencedEntityNotFound="referenced-entity-not-found",r.EntityIdNotUnique="entity-id-not-unique",r.BuiltInEntityGenerated="built-in-entity-generated",r.BuiltInEntityUpdated="built-in-entity-updated",r.BuiltInEntityDeleted="built-in-entity-deleted",r.UnknownEntityType="unknown-entity-type",r.MissingTypeProperty="missing-type-property",r.MissingIdProperty="missing-id-property",r.BuiltInEntityParent="built-in-entity-parent",r.InvalidBuiltInEntityReference="invalid-built-in-entity-reference",r.RecommendedImplementAbstractEntityAction="recommended-implement-abstract-entity-action",r.RecommendedImplementOperationAction="recommended-implement-operation-action",r.RecommendedImplementFunctionCallAction="recommended-implement-function-call-action",r.RecommendedImplementVariableDeclarationAction="recommended-implement-variable-declaration-action",r.RecommendedImplementVariableInstanceAction="recommended-implement-variable-instance-action",r.RecommendedImplementConditionAction="recommended-implement-condition-action",r.InvalidReferenceObjectStructure="invalid-reference-object-structure",r.ContainsSingleButShouldBeReferenceList="contains-single-but-should-be-reference-list",r.ContainsListButShouldReferenceSingle="contains-list-but-should-reference-single",r.InvalidParentReference="invalid-parent-reference",r.InvalidImplementsReference="invalid-implements-reference",r.InvalidExtendsReference="invalid-extends-reference",r.InvalidGenerationActionPayload="invalid-generation-action-payload",r.InvalidReference="invalid-reference",r.InvalidInternalCallParentRelation="invalid-internal-call-parent-relation",r.InvalidUpdateEntityOperation="invalid-update-entity-operation",r.NewEntityWouldOverriteExisting="new-entity-would-overrite-existing",r.InvalidDownstreamPropertyOverride="invalid-downstream-property-override",r.UnrecognizedProperty="unrecognized-property",r.SelfReference="self-reference",r.DuplicateReference="duplicate-reference",r.CallerWithIncompatibleScope="caller-with-incompatible-scope",r.InvalidFunctionDeclarationForFunctionCall="invalid-function-declaration-for-function-call",r.InvalidInputMapDeclaration="invalid-input-map-declaration",r.InvalidActionDescriptorForOperation="invalid-action-descriptor-for-operation",r.InvalidActionDescriptorForCondition="invalid-action-descriptor-for-condition",r.InvalidActionDescriptorForLoop="invalid-action-descriptor-for-loop",r.InvalidInmutablePropertyOverride="invalid-inmutable-property-override",r.OutputOverwrite="output-overwrite",r.InputOverwrite="input-overwrite",r.IncompatibleScope="incompatible-scope",r.InvalidParentUpdate="invalid-parent-update",r.NonInteractiveEntityReferenced="non-interactive-entity-referenced",r.InvalidParentRelationType="invalid-parent-relation-type",r))(f||{}),M=(r=>(r.ScopeWithoutLogic="scope-without-logic",r.ExtendingAbstractEntity="extending-abstract-entity",r.ImplementingNonAbstractEntity="implementing-non-abstract-entity",r.AbstractEntityWithNonAbstractMethods="abstract-entity-with-non-abstract-methods",r.AbstractEntityWithNonAbstractProperties="abstract-entity-with-non-abstract-properties",r.StaticEntityWithNonStaticProperties="static-entity-with-non-static-properties",r.NonStaticPropertyInStaticEntity="non-static-property-in-static-entity",r.AbstractPropertyInNonAbstractEntity="abstract-property-in-non-abstract-entity",r.AbstractMethodInNonAbstractEntity="abstract-method-in-non-abstract-entity",r.IncorrectEntityImplementation="incorrect-entity-implementation",r.IncorrectMethodImplementation="incorrect-method-implementation",r.IncorrectPropertyImplementation="incorrect-property-implementation",r.PropertyImplementsNonAbstact="property-implements-non-abstract",r.NonStaticPropertyImplementsStatic="non-static-property-implements-static",r.StaticPropertyImplementsNonStatic="static-property-implements-non-static",r.PropertyImplementsIncompatibleType="property-implements-incompatible-type",r.MissingPropertyImplementation="missing-property-implementation",r.MissingMethodImplementation="missing-method-implementation",r.NoProperties="no-properties",r.ReadingFromIncompatibleType="reading-from-incompatible-type",r.WritingToIncompatibleType="writing-to-incompatible-type",r.InvalidPropertiesCombination="invalid-properties-combination",r.DisconnectedCallableEntity="disconnected-callable-entity",r.VariableReadsValueAndInternalCall="variable-reads-value-and-internal-call",r.VariableWritesValuesAndInternalCall="variable-writes-values-and-internal-call",r.VariableHasInputsAndInternalCall="variable-has-inputs-and-internal-calls",r.VariableHasOutputsAndInternalCall="variable-has-outputs-and-internal-call",r.VariableIsCalledAndHasInternalCall="variable-is-called-and-has-internal-call",r.VariableCallsOthersAndHasInternalCall="variable-calls-others-and-has-internal-call",r))(M||{});class E{constructor(e){d(this,"id");d(this,"message");d(this,"issue");d(this,"severity");d(this,"code");this.id=e.id,this.message=e.message,this.issue=e.issue,this.severity=e.severity,this.code=e.code}toEntityError(e){return this.code in S?new Tr({id:this.id,message:this.message,issue:this.issue,severity:this.severity,code:this.code,entity:e}):null}}class Tr{constructor(e){d(this,"id");d(this,"message");d(this,"issue");d(this,"severity");d(this,"code");d(this,"entity");this.id=e.id,this.message=e.message,this.issue=e.issue,this.severity=e.severity,this.code=e.code,this.entity=e.entity}clone(){return new Tr({id:this.id,message:this.message,issue:this.issue,severity:this.severity,code:this.code,entity:this.entity})}}function l9(r){const e=new Set;return r.filter(t=>e.has(t.id)?!1:(e.add(t.id),!0))}function Y(r){const e=r.entity.errors.find(i=>i.id===r.id);return e?{new:!1,error:e}:{new:!0,error:new Tr(r)}}function c9(r,e){const t=new Map;return r.forEach(i=>{t.set(i.id,i)}),e.forEach(i=>{t.set(i.id,i)}),Array.from(t.values())}function ie(r,e){const t=[];return e.forEach(i=>{const a=r.find(s=>s.id===i.id);a?t.push(a):t.push(i)}),t}const Ea=u.union([u.string(),u.number(),u.boolean(),u.date()]),WI=u.enum([We.CurrentDateAndTime,We.Random,We.Unique]),Xs=u.object({type:WI,rangeStart:Ea.nullable(),rangeEnd:Ea.nullable()}),ba=Xs.extend({type:u.literal(We.Random),rangeStart:Ea,rangeEnd:Ea}),ed=Xs.extend({type:u.literal(We.Unique),rangeStart:u.null(),rangeEnd:u.null()}),HI=Xs.extend({type:u.literal(We.CurrentDateAndTime),rangeStart:u.null(),rangeEnd:u.null()}),Qs=ba.extend({rangeStart:u.number().nullable(),rangeEnd:u.number().nullable()}),YI=Qs.extend({rangeStart:u.number(),rangeEnd:u.null()}),zI=Qs.extend({rangeStart:u.null(),rangeEnd:u.number()}),ZI=Qs.extend({rangeStart:u.number(),rangeEnd:u.number()}),eo=ba.extend({rangeStart:u.number().nullable(),rangeEnd:u.number().nullable()}),KI=eo.extend({rangeStart:u.number(),rangeEnd:u.null()}),XI=eo.extend({rangeStart:u.null(),rangeEnd:u.number()}),QI=eo.extend({rangeStart:u.number(),rangeEnd:u.number()}),to=ba.extend({rangeStart:u.date().nullable(),rangeEnd:u.date().nullable()}),eD=to.extend({rangeStart:u.date(),rangeEnd:u.null()}),tD=to.extend({rangeStart:u.null(),rangeEnd:u.date()}),nD=to.extend({rangeStart:u.date(),rangeEnd:u.date()}),td=ba.extend({rangeStart:u.null(),rangeEnd:u.null()}),nd=u.union([KI,XI,QI]),rd=u.union([YI,zI,ZI]),id=u.union([eD,tD,nD,HI]),ad=u.union([nd,rd,id,ed,td]);function Ra(){return u.union([u.object({type:u.literal(n.ValueDescriptor)}),u.record(u.string(),u.any())])}function rD(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ValueDescriptor)})}function sd(){return u.object({id:u.string(),type:u.literal(n.ValueDescriptor),name:u.string(),required:u.boolean()})}function d9(){return sd().merge(u.object({version:u.number(),index:u.number()}))}function u9(){return sd().merge(u.object({}))}function p9(){return u.object({dataType:vr(),parent:br()})}function y9(){return d9().merge(p9())}function no(){return u.union([u.object({type:u.literal(n.PrimitiveEntity)}),u.record(u.string(),u.any())])}function ro(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.PrimitiveEntity)})}function io(){return u.object({id:u.string(),type:u.literal(n.PrimitiveEntity),name:u.string(),description:u.string().nullable(),static:u.boolean(),abstract:u.boolean()})}function h9(){return io().merge(u.object({version:u.number()}))}function f9(){return io().merge(u.object({}))}function m9(){return u.object({properties:u.array(Er()),methods:u.array(Bt()),abstractMethods:u.array(an()),extends:u.array(u.union([no(),yi()]))})}function T9(){return h9().merge(m9())}function Er(){return u.union([u.object({type:u.literal(n.Property)}),u.record(u.string(),u.any())])}function iD(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Property)})}function od(){return u.object({id:u.string(),type:u.literal(n.Property),name:u.string(),description:u.string().nullable(),private:u.boolean(),static:u.boolean(),required:u.boolean(),abstract:u.boolean()})}function E9(){return od().merge(u.object({version:u.number(),index:u.number()}))}function b9(){return od().merge(u.object({}))}function R9(){return u.object({dataType:vr(),implements:Er().nullable(),parent:u.union([Dr(),ro(),ao()])})}function v9(){return E9().merge(R9())}function g9(){return u.enum([L.CRON_JOB,L.EXECUTION,L.HTTP_ENDPOINT,L.PERSISTED_ENTITY,L.RELATIONAL_DATABASE])}function yi(){return u.union([u.object({type:u.literal(n.BuiltInBaseEntity)}),u.record(u.string(),u.any())])}function ao(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.BuiltInBaseEntity)})}function ld(){return u.object({id:u.string(),version:u.number(),type:u.literal(n.BuiltInBaseEntity),name:g9(),description:u.string().nullable(),abstract:u.boolean(),static:u.boolean()})}function I9(){return ld()}function D9(){return ld().merge(u.object({}))}function P9(){return u.object({properties:u.array(Er()),methods:u.array(Bt()),abstractMethods:u.array(an()),extends:u.array(u.union([yi(),no()]))})}function A9(){return I9().merge(P9())}function an(){return u.union([u.object({type:u.literal(n.ActionDescriptor)}),u.record(u.string(),u.any())])}function br(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ActionDescriptor)})}function so(){return u.object({id:u.string(),type:u.literal(n.ActionDescriptor),name:u.string(),description:u.string().nullable()})}function O9(){return so().merge(u.object({version:u.number()}))}function S9(){return so().merge(u.object({}))}function C9(){return u.object({inputs:u.array(Ra()),outputs:u.array(Ra()),parent:u.union([Dt(),Dr(),ao(),ro()]).nullable()})}function aD(){return O9().merge(C9())}function hi(){return u.union([u.object({type:u.literal(n.Loop)}),u.record(u.string(),u.any())])}function sn(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Loop)})}function sD(){return u.object({id:u.string(),type:u.literal(n.Loop)})}function B9(){return sD().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function w9(){return sD().merge(u.object({declaration:u.union([u.string(),Bt()])}))}function _9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),declaration:an(),inputs:u.array(Zt()),outputs:u.array(Tt()),outputsDeclarations:u.array(Ra()),successCalls:u.array(ze()),errorCalls:u.array(ze()),error:Tt(),body:Bt(),parent:u.union([Dn(),Dt()]),breakStatements:u.array(Ei()),continueStatements:u.array(fi())})}function N9(){return B9().merge(_9())}function fi(){return u.union([u.object({type:u.literal(n.ContinueStatement)}),u.record(u.string(),u.any())])}function mi(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ContinueStatement)})}function cd(){return u.object({id:u.string(),type:u.literal(n.ContinueStatement)})}function M9(){return cd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function V9(){return cd().merge(u.object({}))}function L9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),outputs:u.array(vn()),throws:u.optional(vn()),parent:sn()})}function G9(){return M9().merge(L9())}function Rr(){return u.union([u.object({type:u.literal(n.ReturnStatement)}),u.record(u.string(),u.any())])}function Ti(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ReturnStatement)})}function dd(){return u.object({id:u.string(),type:u.literal(n.ReturnStatement)})}function $9(){return dd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function F9(){return dd().merge(u.object({}))}function U9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),outputs:u.array(vn()),throws:u.optional(vn()),parent:Dn()})}function x9(){return $9().merge(U9())}function vn(){return u.union([u.object({type:u.literal(n.ReturnDeclaration)}),u.record(u.string(),u.any())])}function oD(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ReturnDeclaration)})}function ud(){return u.object({id:u.string(),type:u.literal(n.ReturnDeclaration),name:u.string(),description:u.string().nullable(),isError:u.boolean()})}function j9(){return ud().merge(u.object({version:u.number(),index:u.number()}))}function k9(){return ud().merge(u.object({}))}function q9(){return u.object({dataType:vr().nullable(),readsValue:Aa().nullable(),parent:u.union([Ti(),br(),gn(),mi()])})}function J9(){return j9().merge(q9())}function Ei(){return u.union([u.object({type:u.literal(n.BreakStatement)}),u.record(u.string(),u.any())])}function gn(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.BreakStatement)})}function pd(){return u.object({id:u.string(),type:u.literal(n.BreakStatement)})}function W9(){return pd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function H9(){return pd().merge(u.object({}))}function Y9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),outputs:u.array(vn()),throws:u.optional(vn()),parent:sn()})}function z9(){return W9().merge(Y9())}function Tt(){return u.union([u.object({type:u.literal(n.OutputMap)}),u.record(u.string(),u.any())])}function yd(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.OutputMap)})}function hd(){return u.object({id:u.string(),type:u.literal(n.OutputMap)})}function Z9(){return hd().merge(u.object({version:u.number(),index:u.number()}))}function K9(){return hd().merge(u.object({}))}function X9(){return u.object({writesValues:u.array(In()),declaration:u.union([vn(),Er()]),parent:u.union([Te(),sn(),gn()])})}function Q9(){return Z9().merge(X9())}function bi(){return u.union([u.object({type:u.literal(n.FunctionCall)}),u.record(u.string(),u.any())])}function va(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.FunctionCall)})}function fd(){return u.object({id:u.string(),type:u.literal(n.FunctionCall)})}function e6(){return fd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function t6(){return fd().merge(u.object({}))}function n6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),writesValues:u.array(In()),declaration:Bt(),inputs:u.array(Zt()),outputs:u.array(Tt()),error:u.optional(Tt()),parent:u.union([Dn(),Dt()])})}function r6(){return e6().merge(n6())}function i6(){return u.enum([Ge.Equal,Ge.NotEqual,Ge.MoreThan,Ge.MoreThanOrEqual,Ge.LessThan,Ge.LessThanOrEqual,Ge.And,Ge.Or,Mt.Empty,Mt.NotEmpty])}function ga(){return u.union([u.object({type:u.literal(n.Condition)}),u.record(u.string(),u.any())])}function oo(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Condition)})}function md(){return u.object({id:u.string(),type:u.literal(n.Condition)})}function a6(){return md().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function s6(){return md().merge(u.object({}))}function o6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),leftValue:Zt(),rightValue:Zt().nullable(),operator:i6(),parent:u.union([Dn(),Dt()])})}function l6(){return a6().merge(o6())}function Ia(){return u.union([u.object({type:u.literal(n.Search)}),u.record(u.string(),u.any())])}function Da(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Search)})}function Td(){return u.object({id:u.string(),type:u.literal(n.Search),name:u.string(),query:u.any(),description:u.string().nullable()})}function c6(){return Td().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function d6(){return Td().merge(u.object({}))}function u6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),inputsDeclarations:u.array(Ir()),inputs:u.array(Zt()),outputsDeclarations:u.array(Ra()),outputs:u.array(Tt()),parent:u.union([Dn(),Dt()]),error:Tt().nullable()})}function p6(){return c6().merge(u6())}function Pa(){return u.union([u.object({type:u.literal(n.InternalCall)}),u.record(u.string(),u.any())])}function Ed(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.InternalCall)})}function bd(){return u.object({id:u.string(),type:u.literal(n.InternalCall),index:u.number()})}function y6(){return bd().merge(u.object({version:u.number(),index:u.number()}))}function h6(){return bd().merge(u.object({declaration:u.union([u.string(),Bt()])}))}function f6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),writesValues:u.array(In()),declaration:Bt(),inputs:u.array(Zt()),outputs:u.array(Tt()),parent:Jn(),error:u.optional(Tt())})}function m6(){return y6().merge(f6())}function Zt(){return u.union([u.object({type:u.literal(n.InputMap)}),u.record(u.string(),u.any())])}function lo(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.InputMap)})}function Rd(){return u.object({id:u.string(),type:u.literal(n.InputMap),name:u.string().nullable().optional(),description:u.string().nullable().optional()})}function T6(){return Rd().merge(u.object({version:u.number(),index:u.number()}))}function E6(){return Rd().merge(u.object({}))}function b6(){return u.object({defaultValue:vd().nullable(),declaration:u.union([Ir(),Er()]).nullable(),readsValue:Aa().nullable(),parent:u.union([Te(),lo(),sn(),gn()])})}function R6(){return T6().merge(b6())}function Ri(){return u.union([u.object({type:u.literal(n.Operation)}),u.record(u.string(),u.any())])}function vi(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Operation)})}function co(){return u.object({id:u.string(),type:u.literal(n.Operation)})}function v6(){return co().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function g6(){return co().merge(u.object({}))}function I6(){return co().merge(u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),writesValues:u.array(In()),declaration:an(),inputs:u.array(Zt()),outputs:u.array(Tt()),error:u.array(Tt()),parent:u.union([Dn(),Dt()])}))}function D6(){return v6().merge(I6())}function uo(){return u.union([u.string(),u.number(),u.boolean(),u.null(),u.date()])}function lD(){return u.record(u.string(),uo())}function P6(){return u.array(u.union([uo(),lD()]))}function cD(){return u.union([uo(),lD(),P6()])}function dD(){return u.union([uo(),cD()])}function uD(){return u.enum([P.String,P.Number,P.Boolean,P.Null,P.Date,P.JSON,P.Enum,P.File,P.UUID,P.EntityTemplate,P.ActionDescriptor])}function A6(){return u.union([Dr(),vi(),Oa()])}function O6(){return u.object({id:u.string(),name:uD(),type:u.literal(n.PrimitiveValue),value:dD(),autogeneration:ad.nullable()})}function S6(){return O6().merge(u.object({}))}function Kt(){return u.object({id:u.string(),version:u.number(),name:uD(),type:u.literal(n.PrimitiveValue),value:dD(),valueAsType:A6().nullable(),autogeneration:ad.nullable(),parent:u.union([gd(),lo()])})}function C6(){return Kt().extend({name:u.literal(P.String),value:u.string(),autogeneration:nd.nullable()})}function B6(){return Kt().extend({name:u.literal(P.Number),value:u.number(),autogeneration:rd.nullable()})}function w6(){return Kt().extend({name:u.literal(P.Boolean),value:u.boolean(),autogeneration:td.nullable()})}function _6(){return Kt().extend({name:u.literal(P.Null),value:u.null(),autogeneration:u.null()})}function N6(){return Kt().extend({name:u.literal(P.Date),value:u.date(),autogeneration:id.nullable()})}function M6(){return Kt().extend({name:u.literal(P.JSON),value:cD(),autogeneration:u.null()})}function V6(){return Kt().extend({name:u.literal(P.Enum),value:u.string(),autogeneration:u.null()})}function L6(){return Kt().extend({name:u.literal(P.File),value:u.string(),autogeneration:u.null()})}function G6(){return Kt().extend({name:u.literal(P.UUID),value:u.string(),autogeneration:ed.nullable()})}function $6(){return Kt().extend({name:u.literal(P.EntityTemplate),value:Dr(),autogeneration:u.null()})}function F6(){return Kt().extend({name:u.literal(P.ActionDescriptor),value:Oa(),autogeneration:u.null()})}function vd(){return u.union([C6(),B6(),w6(),_6(),N6(),M6(),V6(),L6(),G6(),$6(),F6()])}function vr(){return u.union([u.object({type:u.literal(n.DataType)}),u.record(u.string(),u.any())])}function gd(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.DataType)})}function Id(){return u.object({id:u.string(),type:u.literal(n.DataType),isNullable:u.boolean(),isList:u.boolean(),constant:u.boolean(),asType:u.boolean(),options:u.array(u.string()).optional()})}function U6(){return Id().merge(u.object({version:u.number()}))}function x6(){return Id().merge(u.object({}))}function j6(){return u.object({defaultValue:vd().nullable(),entity:u.union([gi(),yi(),no(),an()]).nullable(),parent:u.union([iD(),hD(),rD()])})}function k6(){return U6().merge(j6())}function Dd(){return u.union([u.object({type:u.literal(n.VariableDeclaration)}),u.record(u.string(),u.any())])}function q6(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.VariableDeclaration)})}function Pd(){return u.object({id:u.string(),type:u.literal(n.VariableDeclaration),name:u.string(),description:u.string().nullable()})}function J6(){return Pd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function W6(){return Pd().merge(u.object({}))}function H6(){return u.object({dataType:vr().nullable(),readsValue:Aa().nullable(),writesValues:u.array(In()),inputs:u.array(Zt()),outputs:u.array(Tt()),successCalls:u.array(ze()),errorCalls:u.array(ze()),internalCalls:u.array(Pa()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),parent:u.union([Dn(),Dt()])})}function Y6(){return J6().merge(H6())}function pD(){return u.union([u.object({type:u.literal(n.VariableInstance)}),u.record(u.string(),u.any())])}function z6(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.VariableInstance)})}function Ad(){return u.object({id:u.string(),type:u.literal(n.VariableInstance)})}function Z6(){return Ad().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function K6(){return Ad().merge(u.object({}))}function X6(){return u.object({declaration:Dd(),dataType:vr().nullable(),readsValue:Aa().nullable(),writesValues:u.array(In()),inputs:u.array(Zt()),outputs:u.array(Tt()),successCalls:u.array(ze()),errorCalls:u.array(ze()),internalCalls:u.array(Pa()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),parent:u.union([Dn(),Dt()])})}function Q6(){return Z6().merge(X6())}function Od(){return u.union([u.object({type:u.literal(n.InstalledProject)}),u.record(u.string(),u.any())])}function po(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.InstalledProject)})}function e3(){return u.object({id:u.string(),type:u.literal(n.InstalledProject)})}function t3(){return u.object({version:u.number(),x:u.number(),y:u.number()})}function n3(){return u.object({})}function r3(){return u.object({implements:Dt(),description:u.string().nullable(),functions:u.array(Bt()),events:u.array(Sd()),parent:Dt()})}function i3(){return t3().merge(r3())}function Sd(){return u.union([u.object({type:u.literal(n.GlobalEvent)}),u.record(u.string(),u.any())])}function a3(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.GlobalEvent)})}function yo(){return u.object({id:u.string(),type:u.literal(n.GlobalEvent),name:u.string(),collapsed:u.boolean()})}function s3(){return yo().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function o3(){return yo().merge(u.object({}))}function l3(){return yo().merge(u.object({returnStatements:u.array(Rr()),implements:u.array(aD()),inputs:u.array(Ir()),calls:u.array(ze()),parent:u.union([Dt(),po()])}))}function c3(){return s3().merge(l3())}function gr(){return u.union([Dd(),pD()])}function Jn(){return u.union([q6(),z6()])}function In(){return u.union([gr(),Zt(),vn()])}function yD(){return u.union([Jn(),lo(),oD()])}function Aa(){return u.union([gr(),Ir(),Tt(),Ri(),Pa(),bi()])}function d3(){return u.union([Jn(),Cd(),yd(),vi(),Ed(),va()])}function u3(){return u.union([Ir(),Tt(),In()])}function hD(){return u.union([Cd(),yd(),yD()])}function ho(){return Sd()}function fo(){return a3()}function mo(){return u.union([Ri(),bi(),ga(),Ia(),gr(),Pa(),hi()])}function Te(){return u.union([vi(),va(),oo(),Da(),Jn(),Ed(),sn()])}function To(){return u.union([Ri(),bi(),ga(),Ia(),gr(),hi()])}function Eo(){return u.union([vi(),va(),oo(),Da(),Jn(),sn()])}function fD(){return u.union([mo(),Rr(),Ei(),fi()])}function ze(){return u.union([Te(),Ti(),gn(),mi()])}function mD(){return u.union([To(),Rr(),Ei(),fi()])}function TD(){return u.union([Eo(),Ti(),gn(),mi()])}function Wn(){return u.union([Bt(),ho()])}function Ye(){return u.union([Oa(),fo()])}function p3(){return u.union([mo(),Wn()])}function y3(){return u.union([Te(),Ye()])}function h3(){return u.union([To(),Wn()])}function f3(){return u.union([Eo(),Ye()])}function m3(){return u.union([fD(),Wn()])}function T3(){return u.union([ze(),Ye()])}function E3(){return u.union([mD(),Wn()])}function b3(){return u.union([TD(),Ye()])}function R3(){return u.union([Wn(),hi()])}function Dn(){return u.union([Ye(),sn()])}function v3(){return u.union([mo(),Wn()])}function g3(){return u.union([Te(),Ye()])}function I3(){return u.union([To(),Wn()])}function D3(){return u.union([Eo(),Ye()])}function P3(){return u.union([Rr(),Ei(),fi()])}function A3(){return u.union([Ti(),gn(),mi()])}function O3(){return u.union([yi(),F3(),Od(),gi(),Bt(),ho(),gr(),Zt(),Tt(),ga(),Ri(),bi(),vn(),Ir(),no(),vr(),Er(),an(),Rr(),fi(),Ei(),hi(),Ia(),an(),an(),Ra(),Pa()])}function S3(){return u.union([ao(),Dt(),po(),Dr(),Oa(),fo(),Jn(),lo(),yd(),oo(),vi(),va(),oD(),Cd(),ro(),gd(),iD(),br(),Ti(),mi(),gn(),sn(),Da(),br(),br(),rD(),Ed()])}function C3(){return u.union([Od(),gi(),Bt(),ho(),gr(),ga(),Ri(),bi(),Rr(),fi(),Ei(),hi(),Ia()])}function B3(){return u.union([po(),Dr(),Oa(),fo(),Jn(),oo(),vi(),va(),Ti(),mi(),gn(),sn(),Da()])}function Ir(){return u.union([u.object({type:u.literal(n.ArgumentDeclaration)}),u.record(u.string(),u.any())])}function Cd(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ArgumentDeclaration)})}function Bd(){return u.object({id:u.string(),type:u.literal(n.ArgumentDeclaration)})}function w3(){return Bd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function _3(){return Bd().merge(u.object({}))}function N3(){return u.object({dataType:vr().nullable(),writesValues:u.array(In()),parent:u.union([Ye(),br(),br(),Da(),gn()])})}function M3(){return w3().merge(N3())}function Bt(){return u.union([u.object({type:u.literal(n.FunctionDeclaration)}),u.record(u.string(),u.any())])}function Oa(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.FunctionDeclaration)})}function wd(){return u.object({id:u.string(),type:u.literal(n.FunctionDeclaration),name:u.string(),description:u.string().nullable()})}function V3(){return wd().merge(u.object({version:u.number(),x:u.number(),y:u.number(),index:u.number().nullable()}))}function L3(){return wd()}function G3(){return u.object({inputs:u.array(Ir()),implements:an().nullable(),returnStatements:u.array(Rr()),parent:u.union([Dt(),po(),Dr(),sn(),ao(),ro()])})}function $3(){return V3().merge(G3())}function F3(){return u.union([u.object({type:u.literal(n.Project)}),u.record(u.string(),u.any())])}function Dt(){return u.object({entityType:u.literal(n.Project),entityId:u.string(),id:u.string(),type:u.literal(n.GenericReference)})}function _d(){return u.object({id:u.string(),type:u.literal(n.Project),name:u.string(),description:u.string().nullable()})}function U3(){return _d().merge(u.object({version:u.number()}))}function x3(){return _d()}function j3(){return u.object({entities:u.array(gi()),functions:u.array(Bt()),events:u.array(Sd()),projects:u.array(Od()),variableDeclarations:u.array(Dd()),variableInstances:u.array(pD()),conditions:u.array(ga()),operations:u.array(Ri()),functionCalls:u.array(bi()),loops:u.array(hi()),searches:u.array(Ia())})}function k3(){return U3().merge(j3())}function gi(){return u.union([u.object({type:u.literal(n.CustomEntity)}),u.record(u.string(),u.any())])}function Dr(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.CustomEntity)})}function Nd(){return u.object({id:u.string(),type:u.literal(n.CustomEntity),name:u.string(),description:u.string().nullable(),static:u.boolean(),abstract:u.boolean()})}function q3(){return Nd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function J3(){return Nd().merge(u.object({}))}function W3(){return u.union([Dt(),gd()])}function H3(){return u.object({properties:u.array(Er()),methods:u.array(Bt()),abstractMethods:u.array(an()),extends:u.array(u.union([gi(),yi()])),implements:u.array(u.union([gi(),yi()])),parent:W3()})}function Y3(){return q3().merge(H3())}function z3(r){const e=Y3(),t=r.toJSON();e.safeParse(t).success;const a=r.implements.flatMap(h=>X3(r,h)),s=r.extends.flatMap(h=>Q3(r,h)),o=tk(r),l=ek(r);r.methods.flatMap(h=>h.validate());const p=[...a,...s,...o,...l];return ie(r.errors,p)}function Z3(r,e){const t=e.properties.filter(s=>s.abstract),i=[];let a=[...r.properties];return t.forEach(s=>{const o=a.find(l=>{var p;return((p=l.implements)==null?void 0:p.id)===s.id});o?a=a.filter(l=>l.id!==o.id):i.push(s)}),i}function K3(r,e){const t=e.abstractMethods,i=[];let a=[...r.methods];return t.forEach(s=>{const o=a.find(l=>{var p;return((p=l.implements)==null?void 0:p.id)===s.id});o?a=a.filter(l=>l.id!==o.id):i.push(s)}),i}function X3(r,e){const t=[];if(!e.abstract){const h=Y({id:r.id+"--"+M.ImplementingNonAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is implementing a non-abstract entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:M.ImplementingNonAbstractEntity,entity:r});return t.push(h.error),t}const i=e.properties.filter(h=>h.abstract),a=[];let s=[...r.properties];i.forEach(h=>{const m=s.find(R=>{var g;return((g=R.implements)==null?void 0:g.id)===h.id});m?s=s.filter(R=>R.id!==m.id):a.push(h)}),a.length&&a.forEach(h=>{const m=Y({id:r.id+"--"+M.MissingPropertyImplementation+"--"+h.id,message:`Property "${h.name}" with id "${h.id}" of entity "${e.name}" with id "${e.id}" is not implemented when entity "${r.name}" with id "${r.id}" implements it`,issue:null,severity:T.Error,code:M.MissingPropertyImplementation,entity:r});t.push(m.error)});const o=[];let l=[...r.methods];e.abstractMethods.forEach(h=>{const m=l.find(R=>{var g;return((g=R.implements)==null?void 0:g.id)===h.id});m?l=l.filter(R=>R.id!==m.id):o.push(h)}),o.length&&o.forEach(h=>{const m=Y({id:r.id+"--"+M.MissingMethodImplementation+"--"+h.id,message:`Method "${h.name}" with id "${h.id}" of entity "${e.name}" with id "${e.id}" is not implemented when entity "${r.name}" with id "${r.id}" implements it`,issue:null,severity:T.Error,code:M.MissingMethodImplementation,entity:r});t.push(m.error)});const p=[];e.properties.forEach(h=>{const m=s.find(R=>R.name===h.name);m&&p.push([m,h])}),p.length&&p.forEach(([h])=>{const m=Y({id:r.id+"--"+S.PropertyOverwrite+"--"+h.id,message:`Property "${h.name}" with id "${h.id}" of entity "${r.name}" with id "${r.id}" overwrites the property with the same name from the base entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.PropertyOverwrite,entity:r});t.push(m.error)});const y=[];return e.methods.forEach(h=>{const m=l.find(R=>R.name===h.name);m&&y.push([m,h])}),y.length&&y.forEach(([h])=>{const m=Y({id:r.id+"--"+S.MethodOverwrite+"--"+h.id,message:`Method "${h.name}" with id "${h.id}" of entity "${r.name}" with id "${r.id}" overwrites the method with the same name from the base entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.MethodOverwrite,entity:r});t.push(m.error)}),t}function Q3(r,e){const t=[],i=[];if(e.abstract){const s=Y({id:r.id+"--"+M.ExtendingAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is extending an abstract entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:M.ExtendingAbstractEntity,entity:r});return t.push(s.error),t}r.properties.forEach(s=>{var l;const o=e.properties.find(p=>p.name===s.name);((l=s.implements)==null?void 0:l.id)!==(o==null?void 0:o.id)&&o&&i.push(s)}),i.length&&i.forEach(s=>{const o=Y({id:r.id+"--"+S.PropertyOverwrite,message:`Property "${s.name}" with id "${s.id}" of entity "${r.name}" with id "${r.id}" overwrites the property with the same name from the extended entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.PropertyOverwrite,entity:r});t.push(o.error)});const a=[];return r.methods.forEach(s=>{var l;const o=e.methods.find(p=>p.name===s.name);((l=s.implements)==null?void 0:l.id)!==(o==null?void 0:o.id)&&o&&a.push(s)}),a.length&&a.forEach(s=>{const o=Y({id:r.id+"--"+S.MethodOverwrite,message:`Method "${s.name}" with id "${s.id}" of entity "${r.name}" with id "${r.id}" overwrites the method with the same name from the extended entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.MethodOverwrite,entity:r});t.push(o.error)}),t}function ek(r){const e=[];if(!r.properties.length){const t=Y({id:r.id+"--"+M.NoProperties,message:"No properties implemented",issue:null,severity:T.Warning,code:M.NoProperties,entity:r});e.push(t.error)}return r.properties.forEach(t=>{t.validate()}),e}function tk(r){const e=[];if(r.abstract){if(r.methods.length){const t=Y({id:r.id+"--"+M.AbstractEntityWithNonAbstractMethods,message:`Entity "${r.name}" with id "${r.id}" is marked as abstract but has non-abstract methods`,issue:null,severity:T.Error,code:M.AbstractEntityWithNonAbstractMethods,entity:r});e.push(t.error)}if(r.properties.some(t=>!t.abstract)){const t=Y({id:r.id+"--"+M.AbstractEntityWithNonAbstractProperties,message:`Entity "${r.name}" with id "${r.id}" is marked as abstract but has non-abstract properties`,issue:null,severity:T.Error,code:M.AbstractEntityWithNonAbstractProperties,entity:r});e.push(t.error),r.properties.forEach(i=>{if(!i.abstract){const a=Y({id:r.id+"--"+M.StaticEntityWithNonStaticProperties+"--"+i.id,message:`Property "${i.name}" with id "${i.id}" of entity "${r.name}" with id "${r.id}" is not marked as abstract but the entity is marked as abstract`,issue:null,severity:T.Error,code:M.StaticEntityWithNonStaticProperties,entity:r});e.push(a.error)}})}}else{if(r.abstractMethods.length){const t=Y({id:r.id+"--"+M.AbstractPropertyInNonAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is not marked as abstract but has abstract methods`,issue:null,severity:T.Error,code:M.AbstractPropertyInNonAbstractEntity,entity:r});e.push(t.error)}if(r.properties.some(t=>t.abstract)){const t=Y({id:r.id+"--"+M.AbstractMethodInNonAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is not marked as abstract but has abstract properties`,issue:null,severity:T.Error,code:M.AbstractMethodInNonAbstractEntity,entity:r});e.push(t.error),r.properties.forEach(i=>{if(i.abstract){const a=Y({id:r.id+"--"+M.AbstractMethodInNonAbstractEntity+"--"+i.id,message:`Property "${i.name}" with id "${i.id}" of entity "${r.name}" with id "${r.id}" is marked as abstract but the entity is not marked as abstract`,issue:null,severity:T.Error,code:M.AbstractMethodInNonAbstractEntity,entity:r});e.push(a.error)}})}}if(r.static&&r.properties.some(t=>!t.static)){const t=Y({id:r.id+"--"+M.StaticEntityWithNonStaticProperties,message:`Entity "${r.name}" with id "${r.id}" is marked as static but has non-static properties`,issue:null,severity:T.Error,code:M.StaticEntityWithNonStaticProperties,entity:r});e.push(t.error),r.properties.forEach(i=>{if(!i.static){const a=Y({id:r.id+"--"+M.NonStaticPropertyInStaticEntity+"--"+i.id,message:`Property "${i.name}" with id "${i.id}" of entity "${r.name}" with id "${r.id}" is not marked as static but the entity is marked as static`,issue:null,severity:T.Error,code:M.NonStaticPropertyInStaticEntity,entity:r});e.push(a.error)}})}return e}function nk(r){return r instanceof Error&&r.name==="ZodError"&&"issues"in r&&Array.isArray(r.issues)}var rk=class extends Error{constructor(e,t){super(e,t);d(this,"name");d(this,"details");this.name="ZodValidationError",this.details=ik(t)}toString(){return this.message}};function ik(r){if(r){const e=r.cause;if(nk(e))return e.issues}return[]}function ak(r){return r.length!==0}var sk=/[$_\p{ID_Start}][$\u200c\u200d\p{ID_Continue}]*/u;function ok(r){return r.length===1?r[0].toString():r.reduce((e,t)=>{if(typeof t=="number")return e+"["+t.toString()+"]";if(t.includes('"'))return e+'["'+lk(t)+'"]';if(!sk.test(t))return e+'["'+t+'"]';const i=e.length===0?"":".";return e+i+t},"")}function lk(r){return r.replace(/"/g,'\\"')}var ck="; ",dk=99,ED="Validation error",uk=": ",pk=", or ";function yk(r={}){const{issueSeparator:e=ck,unionSeparator:t=pk,prefixSeparator:i=uk,prefix:a=ED,includePath:s=!0,maxIssuesInMessage:o=dk}=r;return l=>{const p=l.slice(0,o).map(y=>bo({issue:y,issueSeparator:e,unionSeparator:t,includePath:s})).join(e);return hk(p,a,i)}}function bo(r){const{issue:e,issueSeparator:t,unionSeparator:i,includePath:a}=r;if(e.code===w.invalid_union)return e.unionErrors.reduce((s,o)=>{const l=o.issues.map(p=>bo({issue:p,issueSeparator:t,unionSeparator:i,includePath:a})).join(t);return s.includes(l)||s.push(l),s},[]).join(i);if(e.code===w.invalid_arguments)return[e.message,...e.argumentsError.issues.map(s=>bo({issue:s,issueSeparator:t,unionSeparator:i,includePath:a}))].join(t);if(e.code===w.invalid_return_type)return[e.message,...e.returnTypeError.issues.map(s=>bo({issue:s,issueSeparator:t,unionSeparator:i,includePath:a}))].join(t);if(a&&ak(e.path)){if(e.path.length===1){const s=e.path[0];if(typeof s=="number")return`${e.message} at index ${s}`}return`${e.message} at "${ok(e.path)}"`}return e.message}function hk(r,e,t){return e!==null?r.length>0?[e,r].join(t):e:r.length>0?r:ED}function fk(r,e={}){const i=mk(e)([r]);return new rk(i,{cause:new It([r])})}function mk(r){return"messageBuilder"in r?r.messageBuilder:yk(r)}var bD="1.13.7",RD=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global||Function("return this")()||{},Ro=Array.prototype,Md=Object.prototype,vD=typeof Symbol<"u"?Symbol.prototype:null,Tk=Ro.push,Sa=Ro.slice,Ca=Md.toString,Ek=Md.hasOwnProperty,gD=typeof ArrayBuffer<"u",bk=typeof DataView<"u",Rk=Array.isArray,ID=Object.keys,DD=Object.create,PD=gD&&ArrayBuffer.isView,vk=isNaN,gk=isFinite,AD=!{toString:null}.propertyIsEnumerable("toString"),OD=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],Ik=Math.pow(2,53)-1;function Pt(r,e){return e=e==null?r.length-1:+e,function(){for(var t=Math.max(arguments.length-e,0),i=Array(t),a=0;a<t;a++)i[a]=arguments[a+e];switch(e){case 0:return r.call(this,i);case 1:return r.call(this,arguments[0],i);case 2:return r.call(this,arguments[0],arguments[1],i)}var s=Array(e+1);for(a=0;a<e;a++)s[a]=arguments[a];return s[e]=i,r.apply(this,s)}}function Hn(r){var e=typeof r;return e==="function"||e==="object"&&!!r}function Dk(r){return r===null}function SD(r){return r===void 0}function CD(r){return r===!0||r===!1||Ca.call(r)==="[object Boolean]"}function Pk(r){return!!(r&&r.nodeType===1)}function ct(r){var e="[object "+r+"]";return function(t){return Ca.call(t)===e}}const Vd=ct("String"),BD=ct("Number"),Ak=ct("Date"),Ok=ct("RegExp"),Sk=ct("Error"),wD=ct("Symbol"),_D=ct("ArrayBuffer");var ND=ct("Function"),Ck=RD.document&&RD.document.childNodes;typeof/./!="function"&&typeof Int8Array!="object"&&typeof Ck!="function"&&(ND=function(r){return typeof r=="function"||!1});const Et=ND,MD=ct("Object");var VD=bk&&(!/\[native code\]/.test(String(DataView))||MD(new DataView(new ArrayBuffer(8)))),Ld=typeof Map<"u"&&MD(new Map),Bk=ct("DataView");function wk(r){return r!=null&&Et(r.getInt8)&&_D(r.buffer)}const vo=VD?wk:Bk,Pr=Rk||ct("Array");function Yn(r,e){return r!=null&&Ek.call(r,e)}var Gd=ct("Arguments");(function(){Gd(arguments)||(Gd=function(r){return Yn(r,"callee")})})();const $d=Gd;function _k(r){return!wD(r)&&gk(r)&&!isNaN(parseFloat(r))}function LD(r){return BD(r)&&vk(r)}function GD(r){return function(){return r}}function $D(r){return function(e){var t=r(e);return typeof t=="number"&&t>=0&&t<=Ik}}function FD(r){return function(e){return e==null?void 0:e[r]}}const go=FD("byteLength"),Nk=$D(go);var Mk=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function Vk(r){return PD?PD(r)&&!vo(r):Nk(r)&&Mk.test(Ca.call(r))}const UD=gD?Vk:GD(!1),At=FD("length");function Lk(r){for(var e={},t=r.length,i=0;i<t;++i)e[r[i]]=!0;return{contains:function(a){return e[a]===!0},push:function(a){return e[a]=!0,r.push(a)}}}function xD(r,e){e=Lk(e);var t=OD.length,i=r.constructor,a=Et(i)&&i.prototype||Md,s="constructor";for(Yn(r,s)&&!e.contains(s)&&e.push(s);t--;)s=OD[t],s in r&&r[s]!==a[s]&&!e.contains(s)&&e.push(s)}function et(r){if(!Hn(r))return[];if(ID)return ID(r);var e=[];for(var t in r)Yn(r,t)&&e.push(t);return AD&&xD(r,e),e}function Ba(r){if(r==null)return!0;var e=At(r);return typeof e=="number"&&(Pr(r)||Vd(r)||$d(r))?e===0:At(et(r))===0}function jD(r,e){var t=et(e),i=t.length;if(r==null)return!i;for(var a=Object(r),s=0;s<i;s++){var o=t[s];if(e[o]!==a[o]||!(o in a))return!1}return!0}function se(r){if(r instanceof se)return r;if(!(this instanceof se))return new se(r);this._wrapped=r}se.VERSION=bD,se.prototype.value=function(){return this._wrapped},se.prototype.valueOf=se.prototype.toJSON=se.prototype.value,se.prototype.toString=function(){return String(this._wrapped)};function kD(r){return new Uint8Array(r.buffer||r,r.byteOffset||0,go(r))}var qD="[object DataView]";function Fd(r,e,t,i){if(r===e)return r!==0||1/r===1/e;if(r==null||e==null)return!1;if(r!==r)return e!==e;var a=typeof r;return a!=="function"&&a!=="object"&&typeof e!="object"?!1:JD(r,e,t,i)}function JD(r,e,t,i){r instanceof se&&(r=r._wrapped),e instanceof se&&(e=e._wrapped);var a=Ca.call(r);if(a!==Ca.call(e))return!1;if(VD&&a=="[object Object]"&&vo(r)){if(!vo(e))return!1;a=qD}switch(a){case"[object RegExp]":case"[object String]":return""+r==""+e;case"[object Number]":return+r!=+r?+e!=+e:+r==0?1/+r===1/e:+r==+e;case"[object Date]":case"[object Boolean]":return+r==+e;case"[object Symbol]":return vD.valueOf.call(r)===vD.valueOf.call(e);case"[object ArrayBuffer]":case qD:return JD(kD(r),kD(e),t,i)}var s=a==="[object Array]";if(!s&&UD(r)){var o=go(r);if(o!==go(e))return!1;if(r.buffer===e.buffer&&r.byteOffset===e.byteOffset)return!0;s=!0}if(!s){if(typeof r!="object"||typeof e!="object")return!1;var l=r.constructor,p=e.constructor;if(l!==p&&!(Et(l)&&l instanceof l&&Et(p)&&p instanceof p)&&"constructor"in r&&"constructor"in e)return!1}t=t||[],i=i||[];for(var y=t.length;y--;)if(t[y]===r)return i[y]===e;if(t.push(r),i.push(e),s){if(y=r.length,y!==e.length)return!1;for(;y--;)if(!Fd(r[y],e[y],t,i))return!1}else{var h=et(r),m;if(y=h.length,et(e).length!==y)return!1;for(;y--;)if(m=h[y],!(Yn(e,m)&&Fd(r[m],e[m],t,i)))return!1}return t.pop(),i.pop(),!0}function Gk(r,e){return Fd(r,e)}function wa(r){if(!Hn(r))return[];var e=[];for(var t in r)e.push(t);return AD&&xD(r,e),e}function Ud(r){var e=At(r);return function(t){if(t==null)return!1;var i=wa(t);if(At(i))return!1;for(var a=0;a<e;a++)if(!Et(t[r[a]]))return!1;return r!==YD||!Et(t[xd])}}var xd="forEach",WD="has",jd=["clear","delete"],HD=["get",WD,"set"],$k=jd.concat(xd,HD),YD=jd.concat(HD),Fk=["add"].concat(jd,xd,WD);const Uk=Ld?Ud($k):ct("Map"),xk=Ld?Ud(YD):ct("WeakMap"),jk=Ld?Ud(Fk):ct("Set"),kk=ct("WeakSet");function Ii(r){for(var e=et(r),t=e.length,i=Array(t),a=0;a<t;a++)i[a]=r[e[a]];return i}function qk(r){for(var e=et(r),t=e.length,i=Array(t),a=0;a<t;a++)i[a]=[e[a],r[e[a]]];return i}function zD(r){for(var e={},t=et(r),i=0,a=t.length;i<a;i++)e[r[t[i]]]=t[i];return e}function kd(r){var e=[];for(var t in r)Et(r[t])&&e.push(t);return e.sort()}function qd(r,e){return function(t){var i=arguments.length;if(e&&(t=Object(t)),i<2||t==null)return t;for(var a=1;a<i;a++)for(var s=arguments[a],o=r(s),l=o.length,p=0;p<l;p++){var y=o[p];(!e||t[y]===void 0)&&(t[y]=s[y])}return t}}const ZD=qd(wa),Io=qd(et),KD=qd(wa,!0);function Jk(){return function(){}}function XD(r){if(!Hn(r))return{};if(DD)return DD(r);var e=Jk();e.prototype=r;var t=new e;return e.prototype=null,t}function Wk(r,e){var t=XD(r);return e&&Io(t,e),t}function Hk(r){return Hn(r)?Pr(r)?r.slice():ZD({},r):r}function Yk(r,e){return e(r),r}function QD(r){return Pr(r)?r:[r]}se.toPath=QD;function _a(r){return se.toPath(r)}function Jd(r,e){for(var t=e.length,i=0;i<t;i++){if(r==null)return;r=r[e[i]]}return t?r:void 0}function eP(r,e,t){var i=Jd(r,_a(e));return SD(i)?t:i}function zk(r,e){e=_a(e);for(var t=e.length,i=0;i<t;i++){var a=e[i];if(!Yn(r,a))return!1;r=r[a]}return!!t}function Wd(r){return r}function Na(r){return r=Io({},r),function(e){return jD(e,r)}}function Hd(r){return r=_a(r),function(e){return Jd(e,r)}}function Ma(r,e,t){if(e===void 0)return r;switch(t??3){case 1:return function(i){return r.call(e,i)};case 3:return function(i,a,s){return r.call(e,i,a,s)};case 4:return function(i,a,s,o){return r.call(e,i,a,s,o)}}return function(){return r.apply(e,arguments)}}function tP(r,e,t){return r==null?Wd:Et(r)?Ma(r,e,t):Hn(r)&&!Pr(r)?Na(r):Hd(r)}function Yd(r,e){return tP(r,e,1/0)}se.iteratee=Yd;function Ot(r,e,t){return se.iteratee!==Yd?se.iteratee(r,e):tP(r,e,t)}function Zk(r,e,t){e=Ot(e,t);for(var i=et(r),a=i.length,s={},o=0;o<a;o++){var l=i[o];s[l]=e(r[l],l,r)}return s}function nP(){}function Kk(r){return r==null?nP:function(e){return eP(r,e)}}function Xk(r,e,t){var i=Array(Math.max(0,r));e=Ma(e,t,1);for(var a=0;a<r;a++)i[a]=e(a);return i}function zd(r,e){return e==null&&(e=r,r=0),r+Math.floor(Math.random()*(e-r+1))}const Va=Date.now||function(){return new Date().getTime()};function rP(r){var e=function(s){return r[s]},t="(?:"+et(r).join("|")+")",i=RegExp(t),a=RegExp(t,"g");return function(s){return s=s==null?"":""+s,i.test(s)?s.replace(a,e):s}}const iP={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},Qk=rP(iP),e5=zD(iP),t5=rP(e5),n5=se.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var Zd=/(.)^/,r5={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},i5=/\\|'|\r|\n|\u2028|\u2029/g;function a5(r){return"\\"+r5[r]}var s5=/^\s*(\w|\$)+\s*$/;function o5(r,e,t){!e&&t&&(e=t),e=KD({},e,se.templateSettings);var i=RegExp([(e.escape||Zd).source,(e.interpolate||Zd).source,(e.evaluate||Zd).source].join("|")+"|$","g"),a=0,s="__p+='";r.replace(i,function(y,h,m,R,g){return s+=r.slice(a,g).replace(i5,a5),a=g+y.length,h?s+=`'+
1
+ (function(c,n){typeof exports=="object"&&typeof module<"u"?n(exports):typeof define=="function"&&define.amd?define(["exports"],n):(c=typeof globalThis<"u"?globalThis:c||self,n(c["@elyx-code/project-logic-tree"]={}))})(this,function(c){"use strict";var q7=Object.defineProperty;var J7=(c,n,L)=>n in c?q7(c,n,{enumerable:!0,configurable:!0,writable:!0,value:L}):c[n]=L;var d=(c,n,L)=>(J7(c,typeof n!="symbol"?n+"":n,L),L);var n=(r=>(r.CustomEntity="custom-entity",r.BuiltInBaseEntity="built-in-base-entity",r.Project="project",r.InstalledProject="installed-project",r.GlobalEvent="global-event",r.DataType="data-type",r.FunctionCall="function-call",r.FunctionDeclaration="function-declaration",r.ActionDescriptor="action-descriptor",r.ValueDescriptor="value-descriptor",r.ArgumentDeclaration="argument-declaration",r.InputMap="input-map",r.ReturnStatement="return-statement",r.BreakStatement="break-statement",r.ContinueStatement="continue-statement",r.ReturnDeclaration="return-declaration",r.OutputMap="output-map",r.PrimitiveEntity="primitive-entity",r.PrimitiveValue="primitive-value",r.Property="property",r.Operation="operation",r.Condition="condition",r.VariableDeclaration="variable-declaration",r.VariableInstance="variable-instance",r.Search="search",r.Loop="loop",r.InternalCall="internal-call",r.GenericReference="generic-reference",r))(n||{}),L=(r=>(r.HTTP_ENDPOINT="BUILT_IN_HTTP_ENDPOINT_ENTITY",r.RELATIONAL_DATABASE="BUILT_IN_RELATIONAL_DATABASE_ENTITY",r.PERSISTED_ENTITY="BUILT_IN_PERSISTED_ENTITY_ENTITY",r.CRON_JOB="BUILT_IN_CRON_JOB_ENTITY",r.EXECUTION="BUILT_IN_EXECUTION_ENTITY",r.KEY_VALUE_PARAM="BUILT_IN_KEY_VALUE_PARAM_ENTITY",r))(L||{}),We=(r=>(r.CurrentDateAndTime="current-date-and-time",r.Unique="unique",r.Random="random",r))(We||{}),P=(r=>(r.EntityTemplate="entity-template",r.ActionDescriptor="action-descriptor",r.String="string",r.Number="number",r.Boolean="boolean",r.Null="null",r.Enum="enum",r.JSON="json",r.Date="date",r.UUID="uuid",r.File="file",r))(P||{}),me=(r=>(r.Addition="addition",r.Subtraction="subtraction",r.Multiplication="multiplication",r.Division="division",r.Remainder="remainder",r.Exponentiation="exponentiation",r))(me||{}),K=(r=>(r.Join="string-join",r.Split="string-split",r.DeleteLast="string-delete-last",r.DeleteFirst="string-delete-first",r.DeleteIndex="string-delete-index",r.AddIndex="string-add-index",r.ReplaceFirst="string-replace-first",r.ReplaceLast="string-replace-last",r.ReplaceIndex="string-replace-index",r.ReplaceSingleMatch="string-replace-single-match",r.ReplaceAllMatches="string-replace-all-matches",r.GetIndex="string-get-index",r.GetFirst="string-get-first",r.GetLast="string-get-last",r.Append="string-append",r.Prepend="string-prepend",r))(K||{}),W=(r=>(r.Join="list-join",r.Split="list-split",r.DeleteLast="list-delete-last",r.DeleteFirst="list-delete-first",r.DeleteIndex="list-delete-index",r.AddIndex="list-add-index",r.ReplaceFirst="list-replace-first",r.ReplaceLast="list-replace-last",r.ReplaceIndex="list-replace-index",r.ReplaceSingleMatch="list-replace-single-match",r.ReplaceAllMatches="list-replace-all-matches",r.GetIndex="list-get-index",r.GetFirst="list-get-first",r.GetLast="list-get-last",r.Append="list-append",r.Prepend="list-prepend",r))(W||{}),Me=(r=>(r.Parallel="parallel",r.Sequential="sequential",r.Wait="wait",r))(Me||{}),le=(r=>(r.CreateNewInstance="create-new-instance",r.Validate="validate",r))(le||{}),nt=(r=>(r.HttpRequest="base-http-request",r))(nt||{}),$e=(r=>(r.Equal="equal",r.NotEqual="not-equal",r.And="and",r.Or="or",r.LessThan="less-than",r.MoreThan="more-than",r.LessThanOrEqual="less-than-or-equal",r.MoreThanOrEqual="more-than-or-equal",r))($e||{}),Mt=(r=>(r.Empty="empty",r.NotEmpty="not-empty",r))(Mt||{}),$=(r=>(r.ManualFlow="manual-flow-loop",r.Counted="counted-loop",r.List="list-loop",r.ObjectKeys="object-keys-loop",r.ObjectValues="object-values-loop",r.String="string-loop",r))($||{}),O=(r=>(r.FixedArguments="fixed-arguments",r.FixedReturns="fixed-returns",r.ReturnedError="returned-error",r.OngoingProcessExecution="ongoing-process-execution",r.DynamicArgument="dynamic-argument-types",r.DynamicReturn="dynamic-return-types",r))(O||{}),Ke=(r=>(r.OrDataTypeGroup="or-data-type-group",r.AndDataTypeGroup="and-data-type-group",r))(Ke||{}),dn=(r=>(r.PROJECT_PUBLICATION_COMPLETED="GLOBAL_EVENT_PROJECT_PUBLICATION_COMPLETED",r))(dn||{}),Ct=(r=>(r.DeletePersistedEntity="base-delete-persisted-entity",r.SoftDeletePersistedEntity="base-soft-delete-persisted-entity",r.AbortExecution="base-abort-execution",r))(Ct||{}),Wr=(r=>(r.Error="error",r.Task="task",r.Return="return",r))(Wr||{});const Bn=[n.VariableDeclaration,n.VariableInstance,n.InputMap,n.ReturnDeclaration],xe=[n.VariableDeclaration,n.VariableInstance,n.ArgumentDeclaration,n.OutputMap],xu=[...Bn,...xe],Fe=[n.VariableDeclaration,n.VariableInstance],Hr=[n.GlobalEvent],je=[n.Operation,n.FunctionCall,n.Condition,n.Search,n.VariableDeclaration,n.VariableInstance,n.InternalCall,n.Loop],Zo=[n.Operation,n.FunctionCall,n.Condition,n.Search,n.VariableDeclaration,n.VariableInstance,n.Loop],Ue=[n.FunctionDeclaration,...Hr],wn=[...je,n.ReturnStatement,n.BreakStatement,n.ContinueStatement],Ko=[...Zo,n.ReturnStatement,n.BreakStatement,n.ContinueStatement],un=[...je,...Ue],ju=[...Zo,...Ue],LA=[...wn,...Ue],GA=[...Ko,...Ue],ut=[...Ue,n.Loop],Ve=[n.ReturnStatement,n.BreakStatement,n.ContinueStatement],$A=[n.CustomEntity,n.BuiltInBaseEntity,n.Project,n.InstalledProject,n.GlobalEvent,n.DataType,n.FunctionCall,n.FunctionDeclaration,n.ActionDescriptor,n.ValueDescriptor,n.ArgumentDeclaration,n.InputMap,n.ReturnStatement,n.BreakStatement,n.ContinueStatement,n.ReturnDeclaration,n.OutputMap,n.PrimitiveEntity,n.PrimitiveValue,n.Property,n.Operation,n.Condition,n.VariableDeclaration,n.VariableInstance,n.Search,n.Loop,n.InternalCall],Xo=[n.CustomEntity,n.GlobalEvent,n.FunctionDeclaration,n.FunctionCall,n.VariableDeclaration,n.VariableInstance,n.Operation,n.Condition,n.ReturnStatement,n.BreakStatement,n.ContinueStatement,n.InstalledProject,n.Loop,n.Search],ku=[n.CustomEntity,n.FunctionDeclaration,n.ArgumentDeclaration,n.ReturnDeclaration,n.Property,n.VariableDeclaration,n.Search,n.Project,n.InstalledProject,n.ActionDescriptor,n.ValueDescriptor],Yr=[n.BuiltInBaseEntity,n.PrimitiveEntity],FA=[n.CustomEntity,n.FunctionDeclaration,n.ArgumentDeclaration,n.ReturnDeclaration,n.Property,n.VariableDeclaration,n.GlobalEvent,n.Search,n.Project,n.InstalledProject,n.ActionDescriptor,n.ValueDescriptor,n.InputMap,n.OutputMap,n.FunctionCall,n.Operation,n.Condition,n.ReturnStatement,n.BreakStatement,n.ContinueStatement,n.VariableInstance,n.PrimitiveValue,n.InternalCall];var Qo=(r=>(r.ActionOngoingProcessOutputValue="action-ongoing-process-output-value-descriptor-id",r))(Qo||{});const B={[n.PrimitiveEntity]:{[P.String]:{id:"8b5fbe15-4c2b-48c0-9fd8-e5efbe3978dc",properties:{}},[P.Boolean]:{id:"f596545d-1565-4faa-9969-d95fa5edfea4",properties:{}},[P.Number]:{id:"ecb84c29-6153-4b82-86a5-fce2b5f92002",properties:{}},[P.JSON]:{id:"b6f3c3c4-9c3d-4f9d-9e9e-1c0f6a3c8c6b",properties:{}},[P.Enum]:{id:"9542b8b4-2642-4eee-9db9-def7963a17a0",properties:{options:{id:"00ccfcae-2104-45ef-bf6c-50ddccd74286",dataType:{id:"7dd59b70-f97b-43a7-a051-fde1842ce5d6",defaultValue:{id:"enum-options-property-data-type-default-value-id"}}}}},[P.UUID]:{id:"4a6234aa-c0f6-4731-b4dd-750388029226",properties:{}},[P.Date]:{id:"dc58f38b-d574-4956-aac6-32ce9529b937",properties:{}},[P.Null]:{id:"b6f3c3c4-9c3d-4f9d-9e9e-1c0f6a3c8c6b",properties:{}}},[n.ValueDescriptor]:{"action-ongoing-process-output-value-descriptor-id":{id:"action-ongoing-process-output-value-descriptor-id",dataType:{id:"process-output-value-data-type-id"}}},[n.BuiltInBaseEntity]:{[L.KEY_VALUE_PARAM]:{id:L.KEY_VALUE_PARAM},[L.HTTP_ENDPOINT]:{id:L.HTTP_ENDPOINT,properties:{method:{id:"http-endpoint-built-in-method-property-id"},path:{id:"http-endpoint-built-in-path-property-id"},cors:{id:"http-endpoint-built-in-cors-property-id"}}},[L.PERSISTED_ENTITY]:{id:L.PERSISTED_ENTITY,properties:{database:{id:"persisted-built-in-base-entity-database-property-id"},identifier:{id:"persisted-built-in-base-entity-identifier-property-id"}}},[L.RELATIONAL_DATABASE]:{id:L.RELATIONAL_DATABASE,properties:{identifier:{id:"relational-database-built-in-base-entity-identifier-property-id"},username:{id:"relational-database-built-in-base-entity-username-property-id"},password:{id:"relational-database-built-in-base-entity-password-property-id"},minSize:{id:"relational-database-built-in-base-entity-min-size-property-id"},default:{id:"relational-database-built-in-base-entity-default-property-id"},autoscaling:{id:"relational-database-built-in-base-entity-autoscaling-property-id"}}},[L.CRON_JOB]:{id:L.CRON_JOB,properties:{expression:{id:"cron-job-built-in-base-entity-expression-property-id"}}}},[n.Operation]:{[K.Join]:{id:K.Join,inputs:{separator:{id:"join-strings-separator-input-id"},first:{id:"join-strings-first-string-input-id"},second:{id:"join-strings-second-string-input-id"},dynamicString:{id:"join-strings-dynamic-string-input-id"}},outputs:{result:{id:"join-strings-result-string-return-delaration-id"},error:{id:"join-strings-error-return-delaration-id"}}},[K.Split]:{id:K.Split,inputs:{stringValue:{id:"split-string-string-input-id"},indexLocation:{id:"split-string-index-input-id"}},outputs:{firstPartResult:{id:"split-string-first-part-result-string-return-delaration-id"},secondPartResult:{id:"split-string-second-part-result-string-return-delaration-id"},error:{id:"split-string-error-return-delaration-id"}}},[me.Addition]:{id:me.Addition,inputs:{firstSummand:{id:"number-addition-first-summand-number-input-id"},secondSummand:{id:"number-addition-second-summand-number-input-id"},dynamicSummand:{id:"number-addition-dynamic-summand-number-input-id"}},outputs:{result:{id:"number-addition-result-number-return-delaration-id"},error:{id:"number-addition-error-return-delaration-id"}}},[me.Subtraction]:{id:me.Subtraction,inputs:{minuend:{id:"number-subtraction-minuend-number-input-id"},subtrahend:{id:"number-subtraction-subtrahend-number-input-id"},dynamicSubtrahend:{id:"number-subtraction-dynamic-subtrahend-number-input-id"}},outputs:{result:{id:"number-subtraction-result-number-return-delaration-id"},error:{id:"number-subtraction-error-return-delaration-id"}}},[nt.HttpRequest]:{id:nt.HttpRequest,inputs:{url:{id:"http-request-url-input-id"},query:{id:"http-request-query-input-id"},method:{id:"http-request-method-input-id"},headers:{id:"http-request-headers-input-id"},body:{id:"http-request-body-string-input-id"}},outputs:{code:{id:"http-response-code-return-delaration-id"},body:{id:"http-response-body-return-delaration-id"},headers:{id:"http-response-headers-return-delaration-id"},error:{id:"http-request-error-return-delaration-id"}}},[le.Validate]:{id:le.Validate,inputs:{entityToMatch:{id:"validate-data-entity-to-match-input-id"},dataToValidate:{id:"validate-data-data-to-validate-input-id"}},outputs:{outputEntity:{id:"validate-data-output-entity-return-delaration-id"},error:{id:"validate-data-error-return-delaration-id"}}}},[n.Loop]:{[$.List]:{id:$.List,inputs:{list:{id:"iterate-over-list-loop-list-input-id"}},outputs:{results:{id:"iterate-over-list-loop-output-id"}},body:{id:"iterate-over-list-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-list-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-list-loop-current-value-input-id"}}}},[$.String]:{id:$.String,inputs:{string:{id:"iterate-over-string-loop-string-input-id"}},outputs:{results:{id:"iterate-over-string-loop-output-id"}},body:{id:"iterate-over-string-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-string-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-string-loop-current-value-input-id"}}}},[$.ObjectKeys]:{id:$.ObjectKeys,inputs:{object:{id:"iterate-over-object-keys-loop-object-input-id"}},outputs:{results:{id:"iterate-over-object-keys-loop-output-id"}},body:{id:"iterate-over-object-keys-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-object-keys-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-object-keys-loop-current-value-input-id"}}}},[$.ObjectValues]:{id:$.ObjectValues,inputs:{object:{id:"iterate-over-object-values-loop-object-input-id"}},outputs:{results:{id:"iterate-over-object-values-loop-output-id"}},body:{id:"iterate-over-object-values-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-object-values-loop-iteration-number-input-id"},currentValue:{id:"iterate-over-object-values-loop-current-value-input-id"}}}},[$.ManualFlow]:{id:$.ManualFlow,inputs:{},outputs:{results:{id:"manual-flow-loop-output-id"}},body:{id:"manual-flow-loop-body-descriptor-id",inputs:{iterationNumber:{id:"iterate-over-manual-flow-loop-iteration-number-input-id"}}}},[$.Counted]:{id:$.Counted,inputs:{number:{id:"counted-loop-number-input-id"}},outputs:{results:{id:"counted-loop-output-id"}},body:{id:"counted-loop-body-descriptor-id",inputs:{iterationNumber:{id:"counted-loop-iteration-number-input-id"}}}}},[n.Condition]:{[$e.MoreThanOrEqual]:{id:$e.MoreThanOrEqual,inputs:{leftHand:{id:"condition-more-than-or-equal-left-hand-input-id",dataType:{id:"condition-more-than-or-equal-left-hand-data-type-id"}},rightHand:{id:"condition-more-than-or-equal-right-hand-input-id",dataType:{id:"condition-more-than-or-equal-right-hand-data-type-id"}}}},[Mt.NotEmpty]:{id:Mt.NotEmpty,inputs:{leftHand:{id:"condition-not-empty-input-id"}}}},[n.GlobalEvent]:{[dn.PROJECT_PUBLICATION_COMPLETED]:{id:dn.PROJECT_PUBLICATION_COMPLETED}}},qt=B[n.PrimitiveEntity],x={type:n.PrimitiveEntity,id:qt.string.id,description:"A string of characters.",version:1,name:P.String,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},_n={type:n.PrimitiveEntity,id:qt.boolean.id,description:"A 'true' or 'false' value.",version:1,name:P.Boolean,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},X={type:n.PrimitiveEntity,id:qt.number.id,description:"A number value.",version:1,name:P.Number,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},UA={type:n.PrimitiveEntity,id:qt.null.id,description:"An explicitly empty value.",version:1,name:P.Null,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},Xe={type:n.PrimitiveEntity,id:"730e8ea9-8498-439a-9001-b07de55aaa7d",description:"A complex data structure with any combination of properties with names and values.",version:1,name:P.JSON,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},qu={id:"c2f52f01-8f2e-490e-8083-72289c8189c1",type:n.GenericReference,entityId:"7dd59b70-f97b-43a7-a051-fde1842ce5d6",entityType:n.DataType},Ju={id:"4e803941-2e6a-4227-b803-b8877c0d7fee",type:n.GenericReference,entityId:"00ccfcae-2104-45ef-bf6c-50ddccd74286",entityType:n.Property},Wu={like:!1,inferred:!1,id:qt.enum.properties.options.dataType.id,version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:{id:qt.enum.properties.options.dataType.defaultValue.id,type:n.PrimitiveValue,version:1,name:P.JSON,autogeneration:null,value:[],valueAsType:null,parent:qu},parent:Ju},Hu={id:"a2983c4c-0286-4ef1-8b5c-5a52904d3200",type:n.GenericReference,entityId:"9542b8b4-2642-4eee-9db9-def7963a17a0",entityType:n.PrimitiveEntity},Yu={hidden:!1,required:!0,id:qt.enum.properties.options.id,name:"Options",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:Wu,description:"Options for the enum. Each option is a text value.",parent:Hu},Nn={type:n.PrimitiveEntity,id:qt.enum.id,description:"A set of text options to choose from.",version:1,name:P.Enum,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[Yu],methods:[]},pn={type:n.PrimitiveEntity,id:qt.date.id,description:"A date and time value.",version:1,name:P.Date,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},qa={type:n.PrimitiveEntity,id:qt.uuid.id,description:"A unique identifier in the form of a 36-character string.",version:1,name:P.UUID,static:!1,abstract:!1,abstractMethods:[],extends:[x],properties:[],methods:[]},el={type:n.PrimitiveEntity,id:qt.json.id,description:"A complex data structure with any combination of properties with names and values.",version:1,name:P.JSON,static:!1,abstract:!1,abstractMethods:[],extends:[],properties:[],methods:[]},yn=B[n.Operation][me.Addition],zu={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityId:yn.inputs.firstSummand.id,entityType:n.ValueDescriptor},Zu={like:!1,inferred:!1,id:"number-addition-first-number-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:zu},Ku={type:n.GenericReference,id:"9f486db2-a983-4293-9eef-81d4fc8d2d3e",entityId:yn.inputs.secondSummand.id,entityType:n.ValueDescriptor},Xu={like:!1,inferred:!1,id:"1d4abe83-3e87-4f74-99be-c1fd8c2f8d2d",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Ku},Qu={type:n.GenericReference,id:"da5e9fe9-f18a-49e3-98e5-c1bf7b9b3153",entityId:yn.outputs.result.id,entityType:n.ValueDescriptor},ep={like:!1,inferred:!1,id:"b761acec-0755-4582-a68b-76267038bbe1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Qu},tp={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityId:me.Addition,entityType:n.ActionDescriptor},tl={id:yn.inputs.firstSummand.id,type:n.ValueDescriptor,version:1,name:"Summand",description:"The first number to add",dataType:Zu,required:!0,parentRelationType:O.FixedArguments,index:0,parent:tp},np={type:n.GenericReference,id:"c5015128-4a65-462c-9da0-1c86e83ef897",entityId:me.Addition,entityType:n.ActionDescriptor},nl={id:yn.inputs.secondSummand.id,type:n.ValueDescriptor,description:"The second number to add",version:1,name:"Summand",dataType:Xu,required:!0,parentRelationType:O.FixedArguments,index:1,parent:np},rl={type:n.GenericReference,id:"caac2bc7-c23c-4f01-9581-a515c2e4637f",entityId:me.Addition,entityType:n.ActionDescriptor},il={parentRelationType:O.FixedReturns,id:yn.outputs.result.id,type:n.ValueDescriptor,description:"The result number of the addition",version:1,name:"Result",dataType:ep,required:!0,index:0,parent:rl},rp={type:n.GenericReference,id:"number-addition-operation-error-parent-ref",entityId:me.Addition,entityType:n.ActionDescriptor},ip={parentRelationType:O.FixedReturns,id:yn.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:rp},ap={type:n.GenericReference,id:"number-addition-operation-dynamic-summand-argument-type-parent-ref",entityId:yn.inputs.dynamicSummand.id,entityType:n.ValueDescriptor},sp={like:!1,inferred:!1,id:"number-addition-operation-dynamic-summand-argument-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:ap},op={parentRelationType:O.DynamicArgument,id:yn.inputs.dynamicSummand.id,type:n.ValueDescriptor,description:"A number to add",version:1,name:"Summand",dataType:sp,required:!0,index:2,parent:rl},Ja={id:me.Addition,type:n.ActionDescriptor,description:"Sum numbers",version:1,name:me.Addition,inputs:[tl,nl,op],error:ip,outputs:[il],parent:null},hn=B[n.Operation][me.Subtraction],lp={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityId:hn.inputs.minuend.id,entityType:n.ValueDescriptor},cp={like:!1,inferred:!1,id:"number-subtraction-first-number-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:lp},dp={type:n.GenericReference,id:"9f486db2-a983-4293-9eef-81d4fc8d2d3e",entityId:hn.inputs.subtrahend.id,entityType:n.ValueDescriptor},up={like:!1,inferred:!1,id:"1d4abe83-3e87-4f74-99be-c1fd8c2f8d2d",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:dp},pp={type:n.GenericReference,id:"da5e9fe9-f18a-49e3-98e5-c1bf7b9b3153",entityId:hn.outputs.result.id,entityType:n.ValueDescriptor},yp={like:!1,inferred:!1,id:"b761acec-0755-4582-a68b-76267038bbe1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:pp},al={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityId:me.Subtraction,entityType:n.ActionDescriptor},hp={id:hn.inputs.minuend.id,type:n.ValueDescriptor,version:1,name:"Minuend",description:"Base number to substract from",dataType:cp,required:!0,parentRelationType:O.FixedArguments,index:0,parent:al},fp={type:n.GenericReference,id:"c5015128-4a65-462c-9da0-1c86e83ef897",entityId:me.Subtraction,entityType:n.ActionDescriptor},mp={id:hn.inputs.subtrahend.id,type:n.ValueDescriptor,description:"The second number to substract",version:1,name:"Subtrahend",dataType:up,required:!0,parentRelationType:O.FixedArguments,index:1,parent:fp},Tp={type:n.GenericReference,id:"caac2bc7-c23c-4f01-9581-a515c2e4637f",entityId:me.Subtraction,entityType:n.ActionDescriptor},Ep={parentRelationType:O.FixedReturns,id:hn.outputs.result.id,type:n.ValueDescriptor,description:"The result number of the subtraction",version:1,name:"Result",dataType:yp,required:!0,index:0,parent:Tp},bp={type:n.GenericReference,id:"number-subtraction-operation-error-parent-ref",entityId:me.Subtraction,entityType:n.ActionDescriptor},Rp={parentRelationType:O.FixedReturns,id:hn.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:bp},vp={type:n.GenericReference,id:"number-subtraction-operation-dynamic-subtrahend-argument-type-parent-ref",entityId:hn.inputs.dynamicSubtrahend.id,entityType:n.ValueDescriptor},gp={like:!1,inferred:!1,id:"number-subtraction-operation-dynamic-subtrahend-argument-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:vp},Ip={id:hn.inputs.dynamicSubtrahend.id,type:n.ValueDescriptor,version:1,name:"Subtrahend",description:"A number to substract",dataType:gp,required:!0,parentRelationType:O.DynamicArgument,index:2,parent:al},sl={id:me.Subtraction,type:n.ActionDescriptor,description:"Substract numbers",version:1,name:me.Subtraction,inputs:[hp,mp,Ip],error:Rp,outputs:[Ep],parent:null},Dp={[me.Addition]:Ja,[me.Subtraction]:sl},Jt=B[n.Operation][K.Join],Pp={type:n.GenericReference,id:"join-strings-first-string-argument-declaration",entityId:Jt.inputs.first.id,entityType:n.ValueDescriptor},Ap={like:!1,inferred:!1,id:"join-strings-first-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Pp},Op={type:n.GenericReference,id:"join-strings-second-string-argument-declaration",entityId:Jt.inputs.second.id,entityType:n.ValueDescriptor},Sp={like:!1,inferred:!1,id:"join-strings-second-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Op},Cp={type:n.GenericReference,id:"join-strings-result-string-return-delaration",entityId:Jt.outputs.result.id,entityType:n.ValueDescriptor},Bp={like:!1,inferred:!1,id:"join-strings-result-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Cp},wp={type:n.GenericReference,id:"join-strings-operation-first-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Wa={id:Jt.inputs.first.id,type:n.ValueDescriptor,version:1,name:"Text",description:"The first text to join to the second one. Its value will be at the beginning of the resulting text.",dataType:Ap,parentRelationType:O.FixedArguments,required:!0,index:1,parent:wp},_p={type:n.GenericReference,id:"join-strings-first-string-argument-declaration",entityId:Jt.inputs.first.id,entityType:n.ValueDescriptor},Np={type:n.GenericReference,id:"join-strings-separator-string-data-type-default-value-parent-ref",entityId:"join-strings-separator-string-data-type-id",entityType:n.DataType},Mp={type:n.PrimitiveValue,id:"join-strings-separator-string-data-type-default-value-id",version:1,name:P.String,value:"",valueAsType:null,autogeneration:null,parent:Np},Vp={like:!1,inferred:!1,id:"join-strings-separator-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:Mp,constant:!1,parent:_p},Lp={type:n.GenericReference,id:"join-strings-operation-separator-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Gp={id:Jt.inputs.separator.id,type:n.ValueDescriptor,version:1,name:"Separator",description:"The text value that will be inserted between each of the values that are joined.",dataType:Vp,parentRelationType:O.FixedArguments,required:!1,index:0,parent:Lp},$p={type:n.GenericReference,id:"join-strings-operation-second-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Ha={id:Jt.inputs.second.id,type:n.ValueDescriptor,version:1,name:"Text",description:"The second text to join to the first one. Its value will be at the end of the resulting text.",dataType:Sp,parentRelationType:O.FixedArguments,required:!0,index:2,parent:$p},Fp={type:n.GenericReference,id:"join-strings-operation-result-string-return-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},_i={parentRelationType:O.FixedReturns,id:Jt.outputs.result.id,type:n.ValueDescriptor,version:1,name:"Result",description:"The resulting text value.",dataType:Bp,required:!0,index:0,parent:Fp},Up={type:n.GenericReference,id:"join-strings-operation-error-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},xp={parentRelationType:O.FixedReturns,id:Jt.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Up},jp={type:n.GenericReference,id:"join-strings-dynamic-string-argument-declaration",entityId:Jt.inputs.dynamicString.id,entityType:n.ValueDescriptor},kp={like:!1,inferred:!1,id:"join-strings-dynamic-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:jp},qp={type:n.GenericReference,id:"join-strings-operation-dynamic-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},Jp={id:Jt.inputs.dynamicString.id,type:n.ValueDescriptor,version:1,name:"Text",description:"Text to join to the previous ones. Its value will be at the end of the resulting text.",dataType:kp,parentRelationType:O.DynamicArgument,required:!0,index:3,parent:qp},Ni={id:K.Join,type:n.ActionDescriptor,version:1,name:K.Join,description:"Join text values together, to form a single resulting text value.",inputs:[Gp,Wa,Ha,Jp],outputs:[_i],error:xp,parent:null},fn=B[n.Operation][K.Split],Wp={type:n.GenericReference,id:"split-string-string-argument-declaration",entityId:fn.inputs.stringValue.id,entityType:n.ValueDescriptor},Hp={like:!1,inferred:!1,id:"split-string-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Wp},Yp={type:n.GenericReference,id:"split-string-index-argument-declaration",entityId:fn.inputs.indexLocation.id,entityType:n.ValueDescriptor},zp={like:!1,inferred:!1,id:"split-string-index-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Yp},Zp={type:n.GenericReference,id:"split-string-first-part-result-string-return-delaration",entityId:fn.outputs.firstPartResult.id,entityType:n.ValueDescriptor},Kp={like:!1,inferred:!1,id:"split-string-first-part-result-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Zp},Xp={type:n.GenericReference,id:"split-string-second-part-result-string-return-delaration",entityId:fn.outputs.secondPartResult.id,entityType:n.ValueDescriptor},Qp={like:!1,inferred:!1,id:"split-string-second-part-result-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Xp},ey={type:n.GenericReference,id:"split-string-operation-string-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},ty={id:fn.inputs.stringValue.id,type:n.ValueDescriptor,version:1,name:"Text value",description:"The text value that will be split into two at the given index location.",dataType:Hp,parentRelationType:O.FixedArguments,required:!0,index:0,parent:ey},ny={type:n.GenericReference,id:"split-string-operation-index-argument-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},ry={id:fn.inputs.indexLocation.id,type:n.ValueDescriptor,version:1,name:"Index location",description:"The index location where the text will be split into two. The text at this index will be the beginning of the second text.",dataType:zp,parentRelationType:O.FixedArguments,required:!0,index:1,parent:ny},iy={type:n.GenericReference,id:"split-string-operation-second-part-result-string-return-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},xA={parentRelationType:O.FixedReturns,id:fn.outputs.secondPartResult.id,type:n.ValueDescriptor,version:1,name:"Second part",description:"The secont part of the resulting text value.",dataType:Qp,required:!0,index:1,parent:iy},ay={type:n.GenericReference,id:"split-string-operation-first-part-result-string-return-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},sy={parentRelationType:O.FixedReturns,id:fn.outputs.firstPartResult.id,type:n.ValueDescriptor,version:1,name:"First part",description:"The first part of the resulting text value.",dataType:Kp,required:!0,index:0,parent:ay},oy={type:n.GenericReference,id:"split-string-operation-error-parent-ref",entityId:K.Join,entityType:n.ActionDescriptor},ly={parentRelationType:O.FixedReturns,id:fn.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:oy},ol={id:K.Split,type:n.ActionDescriptor,version:1,name:K.Split,description:"Split a text into two, at the given index location.",inputs:[ty,ry],outputs:[sy],error:ly,parent:null},cy={[K.Join]:Ni,[K.Split]:ol};var dy=(r=>(r.FirstInputList="join-list-first-list-argument-declaration",r.SecondInputList="join-list-second-list-argument-declaration",r))(dy||{}),uy=(r=>(r.ResultList="join-list-result-list-return-delaration",r.Error="join-list-error-return-delaration",r))(uy||{});const py={type:n.GenericReference,id:"join-list-operation-first-list-argument-ref",entityId:"join-list-first-list-argument-declaration",entityType:n.ValueDescriptor},yy={like:!1,inferred:!1,id:"join-list-first-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:py},hy={type:n.GenericReference,id:"join-list-operation-second-list-argument-ref",entityId:"join-list-second-list-argument-declaration",entityType:n.ValueDescriptor},fy={like:!1,inferred:!1,id:"join-list-second-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:hy},my={type:n.GenericReference,id:"join-list-operation-result-list-return-ref",entityId:"join-list-result-list-return-delaration",entityType:n.ValueDescriptor},Ty={like:!1,inferred:!1,id:"join-list-result-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:my},Ey={type:n.GenericReference,id:"join-list-operation-first-list-argument-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},by={id:"join-list-first-list-argument-declaration",type:n.ValueDescriptor,version:1,name:"First value",description:"The first list to join to the second one. Its values will be at the beginning of the resulting list.",dataType:yy,parentRelationType:O.FixedArguments,required:!0,index:0,parent:Ey},Ry={type:n.GenericReference,id:"join-list-operation-second-list-argument-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},vy={id:"join-list-second-list-argument-declaration",type:n.ValueDescriptor,version:1,name:"Second value",description:"The second list to join to the first one. Its values will be at the end of the resulting list.",dataType:fy,parentRelationType:O.FixedArguments,required:!0,index:1,parent:Ry},gy={type:n.GenericReference,id:"join-list-operation-result-list-return-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},Iy={parentRelationType:O.FixedReturns,id:"join-list-result-list-return-delaration",type:n.ValueDescriptor,version:1,name:"Result",description:"The resulting list value.",dataType:Ty,required:!0,index:0,parent:gy},Dy={type:n.GenericReference,id:"join-list-operation-error-parent-ref",entityId:W.Join,entityType:n.ActionDescriptor},Py={parentRelationType:O.FixedReturns,id:"join-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Dy},ll={id:W.Join,type:n.ActionDescriptor,version:1,name:W.Join,description:"Join two lists together, to form a single resulting list value.",inputs:[by,vy],error:Py,outputs:[Iy],parent:null};var Ay=(r=>(r.InputList="list-to-split-argument-declaration",r.SplitIndex="split-list-index-argument-declaration",r))(Ay||{}),Oy=(r=>(r.FirstOutputList="split-list-first-output-list-return-delaration",r.SecondOutputList="split-list-second-output-list-return-delaration",r.Error="split-list-error-return-delaration",r))(Oy||{});const Sy={type:n.GenericReference,id:"split-list-operation-input-list-argument-ref",entityId:"list-to-split-argument-declaration",entityType:n.ValueDescriptor},Cy={like:!1,inferred:!1,id:"split-list-operation-input-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Sy},By={type:n.GenericReference,id:"split-list-operation-split-index-argument-ref",entityId:"split-list-index-argument-declaration",entityType:n.ValueDescriptor},wy={like:!1,inferred:!1,id:"split-list-operation-split-index-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:By},cl={type:n.GenericReference,id:"split-list-operation-first-output-list-return-ref",entityId:"split-list-first-output-list-return-delaration",entityType:n.ValueDescriptor},_y={like:!1,inferred:!1,id:"split-list-operation-first-output-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:cl},Ny={type:n.GenericReference,id:"split-list-operation-input-list-argument-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},My={id:"list-to-split-argument-declaration",type:n.ValueDescriptor,version:1,name:"List to split",description:"The list to split at the given index",dataType:Cy,parentRelationType:O.FixedArguments,required:!0,index:0,parent:Ny},Vy={type:n.GenericReference,id:"split-list-operation-split-index-argument-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},Ly={id:"split-list-index-argument-declaration",type:n.ValueDescriptor,version:1,name:"Split location",description:"The index at which to split the list. The value at this index will be the first value of the second list.",dataType:wy,parentRelationType:O.FixedArguments,required:!0,index:1,parent:Vy},Gy={type:n.GenericReference,id:"split-list-operation-first-output-list-return-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},$y={parentRelationType:O.FixedReturns,id:"split-list-first-output-list-return-delaration",type:n.ValueDescriptor,version:1,name:"First list",description:"The list of values up to the split index",dataType:_y,required:!0,index:0,parent:Gy},Fy={like:!1,inferred:!1,id:"split-list-operation-second-output-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:cl},Uy={type:n.GenericReference,id:"split-list-operation-second-output-list-return-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},xy={parentRelationType:O.FixedReturns,id:"split-list-second-output-list-return-delaration",type:n.ValueDescriptor,version:1,name:"Second list",description:"The list of values up to the split index",dataType:Fy,required:!0,index:0,parent:Uy},jy={type:n.GenericReference,id:"split-list-operation-error-parent-ref",entityId:W.Split,entityType:n.ActionDescriptor},ky={parentRelationType:O.FixedReturns,id:"split-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:jy},dl={id:W.Split,type:n.ActionDescriptor,version:1,name:W.Split,description:"Splits a given list at the given index, and returns two lists, one with the values up to the index, and the other with the values after the index",inputs:[My,Ly],outputs:[$y,xy],error:ky,parent:null};var qy=(r=>(r.InputList="get-last-in-list-input-list-argument-declaration",r))(qy||{}),Jy=(r=>(r.OutputElement="get-last-in-list-output-element-return-delaration",r.Error="get-last-in-list-error-return-delaration",r))(Jy||{});const Wy={type:n.GenericReference,id:"get-last-in-list-operation-input-list-argument-ref",entityId:"get-last-in-list-input-list-argument-declaration",entityType:n.ValueDescriptor},Hy={like:!1,inferred:!1,id:"get-last-in-list-input-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Wy},Yy={type:n.GenericReference,id:"get-last-in-list-operation-output-element-return-ref",entityId:"get-last-in-list-output-element-return-delaration",entityType:n.ValueDescriptor},zy={like:!1,inferred:!1,id:"get-last-in-list-output-element-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Yy},Zy={type:n.GenericReference,id:"get-last-in-list-operation-input-list-argument-parent-ref",entityId:W.GetLast,entityType:n.ActionDescriptor},Ky={id:"get-last-in-list-input-list-argument-declaration",type:n.ValueDescriptor,version:1,name:"List",description:"The list to get the last element from.",dataType:Hy,parentRelationType:O.FixedArguments,required:!0,index:0,parent:Zy},Xy={type:n.GenericReference,id:"get-last-in-list-operation-output-element-return-parent-ref",entityId:W.GetLast,entityType:n.ActionDescriptor},Qy={parentRelationType:O.FixedReturns,id:"get-last-in-list-output-element-return-delaration",type:n.ValueDescriptor,version:1,name:"Last element",description:"The last element of the given list.",dataType:zy,required:!0,index:0,parent:Xy},eh={type:n.GenericReference,id:"get-last-in-list-operation-error-parent-ref",entityId:W.GetLast,entityType:n.ActionDescriptor},th={parentRelationType:O.FixedReturns,id:"get-last-in-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:eh},ul={id:W.GetLast,type:n.ActionDescriptor,version:1,name:W.GetLast,description:"Outputs the last element of a given list.",inputs:[Ky],outputs:[Qy],error:th,parent:null};var nh=(r=>(r.List="append-to-list-lsit-argument-declaration",r.ElementToAppend="append-to-list-element-to-append-argument-declaration",r))(nh||{}),rh=(r=>(r.ResultList="append-to-list-result-list-return-delaration",r.Error="append-to-list-error-return-delaration",r))(rh||{});const ih={type:n.GenericReference,id:"append-to-list-operation-lsit-argument-ref",entityId:"append-to-list-lsit-argument-declaration",entityType:n.ValueDescriptor},ah={like:!1,inferred:!1,id:"append-to-list-lsit-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:ih},sh={type:n.GenericReference,id:"append-to-list-operation-second-list-argument-ref",entityId:"append-to-list-element-to-append-argument-declaration",entityType:n.ValueDescriptor},oh={like:!1,inferred:!1,id:"append-to-list-second-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:sh},lh={type:n.GenericReference,id:"append-to-list-operation-result-list-return-ref",entityId:"append-to-list-result-list-return-delaration",entityType:n.ValueDescriptor},ch={like:!1,inferred:!1,id:"append-to-list-result-list-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:lh},dh={type:n.GenericReference,id:"append-to-list-operation-lsit-argument-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},pl={id:"append-to-list-lsit-argument-declaration",type:n.ValueDescriptor,version:1,name:"List value",description:"The list to which the element will be appended",dataType:ah,parentRelationType:O.FixedArguments,required:!0,index:0,parent:dh},uh={type:n.GenericReference,id:"append-to-list-operation-second-list-argument-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},yl={id:"append-to-list-element-to-append-argument-declaration",type:n.ValueDescriptor,version:1,name:"Element",description:"The element that will be added at the end of the list",dataType:oh,parentRelationType:O.FixedArguments,required:!0,index:1,parent:uh},ph={type:n.GenericReference,id:"append-to-list-operation-result-list-return-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},yh={parentRelationType:O.FixedReturns,id:"append-to-list-result-list-return-delaration",type:n.ValueDescriptor,version:1,name:"Result",description:"The resulting list value.",dataType:ch,required:!0,index:0,parent:ph},hh={type:n.GenericReference,id:"append-to-list-operation-error-parent-ref",entityId:W.Append,entityType:n.ActionDescriptor},fh={parentRelationType:O.FixedReturns,id:"append-to-list-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:hh},Ya={id:W.Append,type:n.ActionDescriptor,version:1,name:W.Append,description:"Adds a given element to the end of a list value.",inputs:[pl,yl],error:fh,outputs:[yh],parent:null},mh={[W.Join]:ll,[W.Split]:dl,[W.GetLast]:ul,[W.Append]:Ya};var Th=(r=>(r.ListOfFunctions="parallel-execution-list-of-functions-argument-declaration",r))(Th||{}),Eh=(r=>(r.ListOfExecutionResults="parallel-execution-result-return-delaration",r.Error="parallel-execution-error-return-delaration",r))(Eh||{});const bh={id:"parallel-execution-list-of-functions-blueprint-dynamic-output-id",type:n.ValueDescriptor,version:1,name:"Any output value",description:"An output value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},Rh={id:"parallel-execution-list-of-functions-blueprint-dynamic-input-id",type:n.ValueDescriptor,version:1,name:"Any input value",description:"An input value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},vh={id:"parallel-execution-list-of-functions-blueprint-id",type:n.ActionDescriptor,version:1,name:"Action to execute",description:"An action of any type, to be executed. It can contain any number of inputs and outputs.",inputs:[Rh],outputs:[bh],error:null,parent:null},gh={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityId:"parallel-execution-list-of-functions-argument-declaration",entityType:n.ValueDescriptor},Ih={like:!1,inferred:!1,id:"parallel-execution-list-of-functions-argument-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:vh,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:gh},Dh={type:n.GenericReference,id:"da5e9fe9-f18a-49e3-98e5-c1bf7b9b3153",entityId:"parallel-execution-result-return-delaration",entityType:n.ValueDescriptor},Ph={like:!1,inferred:!1,id:"b761acec-0755-4582-a68b-76267038bbe1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:Dh},Ah={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityId:Me.Parallel,entityType:n.ActionDescriptor},hl={id:"parallel-execution-list-of-functions-argument-declaration",type:n.ValueDescriptor,version:1,name:"Actions to execute",description:"A value, of a list of actions to be executed in parallel",dataType:Ih,required:!0,index:0,parent:Ah,parentRelationType:O.FixedArguments},Oh={type:n.GenericReference,id:"caac2bc7-c23c-4f01-9581-a515c2e4637f",entityId:Me.Parallel,entityType:n.ActionDescriptor},fl={id:"parallel-execution-result-return-delaration",type:n.ValueDescriptor,version:1,name:"List of execution results",description:"Each execution result, in the same order as the input list of actions. One item on this list for each executed action.",dataType:Ph,required:!0,index:0,parent:Oh,parentRelationType:O.FixedReturns},Sh={type:n.GenericReference,id:"parallel-execution-operation-error-parent-ref",entityId:Me.Parallel,entityType:n.ActionDescriptor},Ch={id:"parallel-execution-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Sh,parentRelationType:O.ReturnedError},Wt={id:Me.Parallel,type:n.ActionDescriptor,description:"Execute a list of actions in parallel",version:1,name:Me.Parallel,inputs:[hl],outputs:[fl],error:Ch,parent:null};var Bh=(r=>(r.MillisecondsNumber="wait-milliseconds-number-argument-declaration",r))(Bh||{}),wh=(r=>(r.Error="wait-operation-error-return-delaration",r))(wh||{});const _h={type:n.GenericReference,id:"3bd4aeb2-e3b7-4120-b289-011ebb03dba5",entityType:n.ValueDescriptor,entityId:"wait-milliseconds-number-argument-declaration"},Nh={like:!1,inferred:!1,id:"wait-milliseconds-number-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:_h},Mh={type:n.GenericReference,id:"a6c14305-d4f7-43ae-9d5e-b7dbacdc830a",entityType:n.ActionDescriptor,entityId:Me.Wait},tr={id:"wait-milliseconds-number-argument-declaration",type:n.ValueDescriptor,version:1,name:"Milliseconds to wait",description:"The amount of milliseconds to wait before calling the next entity",dataType:Nh,required:!0,index:0,parent:Mh,parentRelationType:O.FixedArguments},Vh={type:n.GenericReference,id:"wait-operation-error-parent-ref",entityId:Me.Wait,entityType:n.ActionDescriptor},Lh={id:"wait-operation-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Vh,parentRelationType:O.ReturnedError},pt={id:Me.Wait,type:n.ActionDescriptor,description:"Wait for the given amount of milliseconds before calling the next entity",version:1,name:Me.Wait,inputs:[tr],outputs:[],error:Lh,parent:null};var Gh=(r=>(r.ListOfFunctions="sequential-execution-list-of-functions-argument-declaration",r))(Gh||{}),$h=(r=>(r.ListOfExecutionResults="sequential-execution-result-return-delaration",r.Error="sequential-execution-error-return-delaration",r))($h||{});const Fh={id:"sequential-execution-list-of-functions-blueprint-dynamic-output-id",type:n.ValueDescriptor,version:1,name:"Any output value",description:"An output value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},Uh={id:"sequential-execution-list-of-functions-blueprint-dynamic-input-id",type:n.ValueDescriptor,version:1,name:"Any input value",description:"An input value of any type, to be used in the action to be executed.",dataType:null,required:!1,index:0,parent:null,parentRelationType:O.DynamicArgument},xh={id:"sequential-execution-list-of-functions-blueprint-id",type:n.ActionDescriptor,version:1,name:"Action to execute",description:"An action of any type, to be executed. It can contain any number of inputs and outputs.",inputs:[Uh],outputs:[Fh],error:null,parent:null},jh={type:n.GenericReference,id:"parallel-execution-list-of-functions-argument-declaration-id",entityId:"sequential-execution-list-of-functions-argument-declaration",entityType:n.ValueDescriptor},kh={like:!1,inferred:!1,id:"sequential-execution-list-of-functions-argument-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xh,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:jh},qh={type:n.GenericReference,id:"sequential-execution-list-of-execution-results-return-declaration-id",entityId:"sequential-execution-result-return-delaration",entityType:n.ValueDescriptor},Jh={like:!1,inferred:!1,id:"sequential-execution-list-of-execution-results-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!0,isNullable:!1,defaultValue:null,constant:!1,parent:qh},Wh={type:n.GenericReference,id:"parallel-execution-operation-list-of-functions-argument-parent-ref",entityId:Me.Sequential,entityType:n.ActionDescriptor},ml={id:"sequential-execution-list-of-functions-argument-declaration",type:n.ValueDescriptor,version:1,name:"Actions to execute",description:"A value, of a list of actions to be executed in parallel",dataType:kh,required:!0,index:0,parent:Wh,parentRelationType:O.FixedArguments},Hh={type:n.GenericReference,id:"parallel-execution-operation-list-of-execution-results-return-parent-ref",entityId:Me.Sequential,entityType:n.ActionDescriptor},Tl={id:"sequential-execution-result-return-delaration",type:n.ValueDescriptor,version:1,name:"List of execution results",description:"Each execution result, in the same order as the input list of actions. One item on this list for each executed action.",dataType:Jh,required:!0,index:0,parent:Hh,parentRelationType:O.FixedReturns},Yh={type:n.GenericReference,id:"sequential-execution-operation-error-parent-ref",entityId:Me.Sequential,entityType:n.ActionDescriptor},zh={id:"sequential-execution-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:Yh,parentRelationType:O.ReturnedError},mn={id:Me.Sequential,type:n.ActionDescriptor,description:"Execute a list of actions one after the other",version:1,name:Me.Sequential,inputs:[ml],outputs:[Tl],error:zh,parent:null},Zh={[Me.Parallel]:Wt,[Me.Wait]:pt,[Me.Sequential]:mn};var Kh=(r=>(r.EntityToInstanciate="entity-to-instanciate-argument-declaration",r.NewEntityData="new-entity-data-argument-declaration",r))(Kh||{}),Xh=(r=>(r.Error="create-new-instance-error-return-delaration",r))(Xh||{});const Qh={type:n.GenericReference,id:"new-entity-data-argument-declaration-parent-ref",entityId:le.CreateNewInstance,entityType:n.ActionDescriptor},ef={type:n.GenericReference,id:"new-entity-data-argument-data-type-parent-ref",entityId:"new-entity-data-argument-declaration",entityType:n.ValueDescriptor},tf={like:!1,inferred:!1,id:"new-entity-data-argument-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:ef},nf={id:"new-entity-data-argument-declaration",type:n.ValueDescriptor,version:1,name:"Data for new entity",description:"The data to be used to create the new entity, with all the required properties",dataType:tf,required:!0,parentRelationType:O.FixedArguments,index:1,parent:Qh},rf={type:n.GenericReference,id:"entity-to-instanciate-argument-declaration-ref",entityType:n.ValueDescriptor,entityId:"entity-to-instanciate-argument-declaration"},af={like:!1,inferred:!1,id:"entity-to-instanciate-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!0,isNullable:!1,defaultValue:null,constant:!1,parent:rf},sf={type:n.GenericReference,id:"create-new-instance-operation-ref",entityType:n.ActionDescriptor,entityId:le.CreateNewInstance},of={id:"entity-to-instanciate-argument-declaration",type:n.ValueDescriptor,version:1,name:"Entity to create a new copy of",description:"The entity of which a new copy will to be created",dataType:af,required:!0,parentRelationType:O.FixedArguments,index:0,parent:sf},lf={type:n.GenericReference,id:"create-new-instance-output-entity-declaration-parent-ref",entityId:le.CreateNewInstance,entityType:n.ActionDescriptor},cf={parentRelationType:O.FixedReturns,id:"create-new-instance-output-entity-declaration",type:n.ValueDescriptor,version:1,dataType:null,name:"Created entity",description:"The entity that was created",parent:lf,required:!0,index:0},df={type:n.GenericReference,id:"create-new-instance-error-parent-ref",entityId:le.CreateNewInstance,entityType:n.ActionDescriptor},uf={parentRelationType:O.FixedReturns,id:"create-new-instance-error-return-delaration",type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:df},nr={id:le.CreateNewInstance,type:n.ActionDescriptor,description:"Creates a new copy of a given entity, with the given values for each property, or default values if a value is not provided",version:1,name:le.CreateNewInstance,inputs:[of,nf],outputs:[cf],error:uf,parent:null},zr=B[n.Operation][le.Validate],pf={type:n.GenericReference,id:"validate-data-operation-data-to-validate-argument-declaration-ref",entityType:n.ValueDescriptor,entityId:zr.inputs.dataToValidate.id},yf={like:!1,inferred:!1,id:"validate-data-operation-data-to-validate-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:pf},hf={type:n.GenericReference,id:"validate-data-operation-data-to-validate-argument-parent-ref",entityType:n.ActionDescriptor,entityId:le.Validate},ff={id:zr.inputs.dataToValidate.id,type:n.ValueDescriptor,version:1,name:"Data to validate",description:"The value to validate against the given entity type",dataType:yf,required:!0,parentRelationType:O.FixedArguments,index:0,parent:hf},mf={type:n.GenericReference,id:"validate-data-operation-entity-to-match-type-argument-declaration-ref",entityType:n.ValueDescriptor,entityId:zr.inputs.entityToMatch.id},Tf={like:!1,inferred:!1,id:"validate-data-operation-entity-to-match-type-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!0,isNullable:!1,defaultValue:null,constant:!1,parent:mf},Ef={type:n.GenericReference,id:"validate-data-operation-entity-to-match-type-argument-parent-ref",entityType:n.ActionDescriptor,entityId:le.Validate},bf={id:zr.inputs.entityToMatch.id,type:n.ValueDescriptor,version:1,name:"Entity to match",description:"The entity to match the data against",dataType:Tf,required:!0,index:0,parentRelationType:O.FixedArguments,parent:Ef},Rf={type:n.GenericReference,id:"validate-data-operation-output-entity-declaration-parent-ref",entityId:le.Validate,entityType:n.ActionDescriptor},vf={id:zr.outputs.outputEntity.id,type:n.ValueDescriptor,version:1,dataType:null,name:"Output value",description:"A value with the type of the entity that was validated",parent:Rf,required:!0,index:0,parentRelationType:O.FixedReturns},gf={type:n.GenericReference,id:"wait-operation-error-parent-ref",entityId:le.Validate,entityType:n.ActionDescriptor},If={id:zr.outputs.error.id,type:n.ValueDescriptor,version:1,name:"Error",description:"An error that occurred during the operation.",dataType:null,required:!0,index:1,parent:gf,parentRelationType:O.ReturnedError},rr={id:le.Validate,type:n.ActionDescriptor,description:"Validates the given data to see if it matches the structure of a given type/entity",version:1,name:le.Validate,inputs:[bf,ff],outputs:[vf],error:If,parent:null},Df={[le.CreateNewInstance]:nr,[le.Validate]:rr},Qe=B[n.Operation]["base-http-request"],Pf={type:n.GenericReference,id:"d87cf943-57e1-4d19-9f05-190fa8c8ebc4",entityType:n.DataType,entityId:"0deb4ef7-d739-4ddc-a4d6-50bd6fababe3"},Af={id:"http-request-url-default-value-id",type:n.PrimitiveValue,version:1,value:"https://some-url.com",name:P.String,valueAsType:null,parent:Pf,autogeneration:null},Of={type:n.GenericReference,id:"aed50d73-eab5-42ce-b00e-7f5c45a9026f",entityId:Qe.inputs.url.id,entityType:n.ValueDescriptor},Sf={like:!1,inferred:!1,id:"0deb4ef7-d739-4ddc-a4d6-50bd6fababe3",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:Af,constant:!1,parent:Of},Cf={type:n.GenericReference,id:"c3145af6-3387-464a-8887-272e483c856d",entityId:Qe.inputs.query.id,entityType:n.ValueDescriptor},Bf={like:!1,inferred:!1,id:"2a5ba737-6335-4cc4-a2c0-16dca4052fac",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Cf},wf={type:n.GenericReference,id:"075556b7-e468-48f7-8485-7159eaf389b2",entityType:n.DataType,entityId:"6df7ec2b-5dbd-44af-896b-17b314e88560"},_f={id:"http-request-method-default-value-id",type:n.PrimitiveValue,version:1,value:"GET",name:P.Enum,valueAsType:null,parent:wf,autogeneration:null},Nf={type:n.GenericReference,id:"aed647c8-a1b5-4cfc-9a3d-97887a567a80",entityId:Qe.inputs.method.id,entityType:n.ValueDescriptor},Mf={like:!1,inferred:!1,id:"6df7ec2b-5dbd-44af-896b-17b314e88560",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,asType:!1,isNullable:!1,defaultValue:_f,options:["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD","TRACE","CONNECT","CUSTOM"],constant:!1,parent:Nf},Vf={type:n.GenericReference,id:"77203dfa-d2f6-4804-9556-e1cce46228f3",entityId:Qe.inputs.headers.id,entityType:n.ValueDescriptor},Lf={like:!1,inferred:!1,id:"2c8a2a07-69c6-40ad-b5c9-f0dc4d5955ce",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Vf},Gf={type:n.GenericReference,id:"03db68a0-7ab6-4c6a-85b6-f4b95ebb53ff",entityId:Qe.inputs.body.id,entityType:n.ValueDescriptor},$f={like:!1,inferred:!1,id:"0397876c-ed54-4ee9-85a4-04fd16dad973",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Gf},Ff={type:n.GenericReference,id:"182f767f-50e8-4394-ba5f-43e78c232733",entityType:n.ValueDescriptor,entityId:Qe.outputs.code.id},Uf={like:!1,inferred:!1,id:"45e6d0bc-0c0e-4059-a7a1-6bee925d73d0",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Ff},xf={type:n.GenericReference,id:"2baaa53a-9aef-4bd1-b06d-967c17b7b627",entityType:n.DataType,entityId:"dac63bfa-640d-4f4e-ba0f-86c2401bcfbe"},jf={type:n.GenericReference,id:"69f34d6c-c686-4165-b6ff-70dae8e1778b",entityType:n.ValueDescriptor,entityId:Qe.outputs.headers.id},kf={like:!1,inferred:!1,id:"dac63bfa-640d-4f4e-ba0f-86c2401bcfbe",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"http-response-headers-default-value-id",type:n.PrimitiveValue,version:1,value:{},name:P.JSON,parent:xf,valueAsType:null,autogeneration:null},constant:!1,parent:jf},qf={type:n.GenericReference,id:"744334e0-5135-4214-85d0-809437cb620b",entityType:n.DataType,entityId:"05fc1a5d-151a-479a-9c4e-4063f3456177"},Jf={type:n.GenericReference,id:"0e0e20df-1a46-432c-ba01-fd96508a6a61",entityType:n.ValueDescriptor,entityId:Qe.outputs.body.id},Wf={like:!1,inferred:!1,id:"05fc1a5d-151a-479a-9c4e-4063f3456177",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"http-response-body-default-value-id",type:n.PrimitiveValue,version:1,value:{},name:P.JSON,parent:qf,valueAsType:null,autogeneration:null},constant:!1,parent:Jf},Hf={type:n.GenericReference,id:"26911792-f707-4bf1-b6f7-03d04a84232c",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},za={id:Qe.inputs.method.id,type:n.ValueDescriptor,description:"A single word that represents the type of request you want to make. For example: GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, TRACE, CONNECT, CUSTOM",version:1,name:"Method",dataType:Mf,required:!1,index:0,parentRelationType:O.FixedArguments,parent:Hf},Yf={type:n.GenericReference,id:"eee0c501-0ae6-4448-b914-aada76d63163",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Za={id:Qe.inputs.url.id,type:n.ValueDescriptor,description:"The base domain, or address where the request is being sent to. For example: https://some-url.com",version:1,name:"URL",dataType:Sf,required:!1,index:1,parentRelationType:O.FixedArguments,parent:Yf},zf={type:n.GenericReference,id:"670091a4-21b1-4223-ad4c-b6dada0aec49",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},El={id:Qe.inputs.query.id,type:n.ValueDescriptor,description:"A text with standarized format, without spaces that is added at the end of the URL path, after the ? character. It contains data that might be used to process the request. For example: /api/users?name=John&age=30",version:1,name:"Query Params",dataType:Bf,required:!1,index:2,parentRelationType:O.FixedArguments,parent:zf},Zf={type:n.GenericReference,id:"85aad3eb-22fe-45f9-b68c-1dc7061f41e0",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Ka={id:Qe.inputs.headers.id,type:n.ValueDescriptor,description:"A set of any properties, with names and values that represent metadata about the request, such as the server, date, content type, and more, that you want to send alongside your request data.",version:1,name:"Headers",dataType:Lf,required:!1,index:3,parent:Zf,parentRelationType:O.FixedArguments},Kf={type:n.GenericReference,id:"c3e2a4af-9b84-4574-8b30-5044ffc51776",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Xa={id:Qe.inputs.body.id,type:n.ValueDescriptor,description:"The main data payload of the request. This is the data that you want to send to the server. It could be anything, but it is usually a JSON data structure or a text value.",version:1,name:"Body",dataType:$f,required:!1,index:4,parentRelationType:O.FixedArguments,parent:Kf},Xf={type:n.GenericReference,id:"92e04dc7-2145-4a31-908e-03810f7235e8",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},Qa={id:Qe.outputs.code.id,type:n.ValueDescriptor,description:'A standardized status code of the response. It is a 3-digit number that represents the response status. For example, 200 means "OK", 404 means "Not Found", and 500 means "Internal Server Error".',version:1,name:"Code",dataType:Uf,required:!0,index:0,parentRelationType:O.FixedReturns,parent:Xf},Qf={type:n.GenericReference,id:"86aca556-bbf1-4679-9909-31db61b288e2",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},es={parentRelationType:O.FixedReturns,id:Qe.outputs.headers.id,type:n.ValueDescriptor,description:"A set of any properties, with names and value that the server sent back to you. It represents metadata about the response, such as the server, date, content type, and more.",version:1,name:"Headers",dataType:kf,required:!0,index:1,parent:Qf},em={type:n.GenericReference,id:"ccf3d1be-04e4-4d03-99fd-5bc1e1919f90",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},ts={parentRelationType:O.FixedReturns,id:Qe.outputs.body.id,type:n.ValueDescriptor,description:"The main data payload of the response. This is the data that the server sent back to you. It could be anything, but it is usually a JSON data structure or a text value.",version:1,name:"Body",dataType:Wf,required:!0,index:2,parent:em},tm={type:n.GenericReference,id:"21487ffc-82b9-473d-bc19-6e7d7c480ed7",entityType:n.ActionDescriptor,entityId:nt.HttpRequest},nm={type:n.GenericReference,id:"ad69861b-32f7-4461-b7f7-aa84a82578d9",entityType:n.ValueDescriptor,entityId:Qe.outputs.error.id},rm={like:!1,inferred:!1,id:"5da68b15-57bc-40c1-b79f-a9075e0f22c1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,isList:!1,asType:!1,isNullable:!1,constant:!1,defaultValue:null,parent:nm},bl={parentRelationType:O.ReturnedError,id:Qe.outputs.error.id,type:n.ValueDescriptor,description:"Http request error, if any. Contains a payload describing what went wrong.",version:1,name:"Error",dataType:rm,required:!0,index:0,parent:tm},Mi={type:n.ActionDescriptor,id:nt.HttpRequest,name:nt.HttpRequest,description:"Make an HTTP request, out to the internet, to a given URL with the specified method, query parameters, headers, and body.",version:1,inputs:[za,Za,El,Ka,Xa],outputs:[Qa,es,ts],error:bl,parent:null},im={[nt.HttpRequest]:Mi},jA={...cy,...Dp,...mh,...Zh,...Df,...im},kA=B[n.Loop]["manual-flow-loop"],am={id:"manual-flow-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ManualFlow,entityType:n.ActionDescriptor},sm={id:kA.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:am,parentRelationType:O.DynamicReturn},Rl={id:$.ManualFlow,type:n.ActionDescriptor,version:1,name:$.ManualFlow,description:"A loop that is manually controlled by the continue and break statements. It runs until the break statement is called, and it can skip to the next iteration with the continue statement.",inputs:[],outputs:[sm],error:null,parent:null},Vi=B[n.Loop]["manual-flow-loop"],om={id:"manual-flow-loop-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"manual-flow-loop-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},lm={like:!1,inferred:!1,id:"manual-flow-loop-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:om},cm={id:"manual-flow-loop-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:Vi.body.id,entityType:n.ActionDescriptor},vl={id:Vi.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the manual flow loop. Keeps track of the number of iterations that have been executed.",dataType:lm,required:!0,index:0,parentRelationType:O.FixedArguments,parent:cm},dm={id:"manual-flow-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:Vi.body.id,entityType:n.ActionDescriptor},um={id:"manual-flow-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:1,parentRelationType:O.DynamicArgument,parent:dm},pm={id:"manual-flow-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:Vi.body.id,entityType:n.ActionDescriptor},ym={id:"manual-flow-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:pm},gl={id:Vi.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the manual flow loop.",inputs:[vl,um],outputs:[ym],error:null,parent:null},hm=B[n.Loop]["list-loop"],fm={id:"iterate-over-list-loop-list-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-list-loop-list-argument-declaration-id",entityType:n.ValueDescriptor},mm={like:!1,inferred:!1,id:"iterate-over-list-loop-list-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!0,isNullable:!1,constant:!1,entity:null,asType:!1,defaultValue:null,parent:fm},Tm={id:"iterate-over-list-loop-list-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.List,entityType:n.ActionDescriptor},Em={id:hm.inputs.list.id,type:n.ValueDescriptor,version:1,name:"List",description:"The list to iterate over",required:!0,dataType:mm,index:0,parent:Tm,parentRelationType:O.FixedArguments},bm={id:"iterate-over-list-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.List,entityType:n.ActionDescriptor},Rm={id:hm.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:bm,parentRelationType:O.DynamicReturn},ir={id:$.List,type:n.ActionDescriptor,version:1,name:$.List,description:"Iterates over a list of entities",inputs:[Em],outputs:[Rm],error:null,parent:null},ar=B[n.Loop]["list-loop"],vm={id:"iterate-over-list-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-list-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},gm={like:!1,inferred:!1,id:"iterate-over-list-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:null,asType:!1,defaultValue:null,parent:vm},Im={id:"iterate-over-list-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},ns={id:ar.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the list that is being iterated over. This value is passed to the child actions.",dataType:gm,required:!0,index:1,parentRelationType:O.FixedArguments,parent:Im},Dm={id:"iterate-over-list-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-list-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},Pm={like:!1,inferred:!1,id:"iterate-over-list-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:Dm},Am={id:"iterate-over-list-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},Om={id:ar.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the list loop. Keeps track of the number of iterations that have been executed.",dataType:Pm,required:!0,index:0,parentRelationType:O.FixedArguments,parent:Am},Sm={id:"iterate-over-list-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},Cm={id:"iterate-over-list-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:Sm},Bm={id:"iterate-over-list-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:ar.body.id,entityType:n.ActionDescriptor},wm={id:"iterate-over-list-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:Bm},rs={id:ar.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the list loop.",inputs:[Om,ns,Cm],outputs:[wm],error:null,parent:null},_m=B[n.Loop]["string-loop"],Nm={id:"iterate-over-string-loop-string-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-string-loop-string-argument-declaration-id",entityType:n.ValueDescriptor},Mm={like:!1,inferred:!1,id:"iterate-over-string-loop-string-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:Nm},Vm={id:"iterate-over-string-loop-string-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.String,entityType:n.ActionDescriptor},Lm={id:_m.inputs.string.id,type:n.ValueDescriptor,version:1,name:"Texts",description:"The text to iterate over the characters of",required:!0,dataType:Mm,index:0,parent:Vm,parentRelationType:O.FixedArguments},Gm={id:"iterate-over-string-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.String,entityType:n.ActionDescriptor},$m={id:_m.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:Gm,parentRelationType:O.DynamicReturn},is={id:$.String,type:n.ActionDescriptor,version:1,name:$.String,description:"Iterates over a string of entities",inputs:[Lm],outputs:[$m],error:null,parent:null},sr=B[n.Loop]["string-loop"],Fm={id:"iterate-over-string-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-string-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},Um={like:!1,inferred:!1,id:"iterate-over-string-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:Fm},xm={id:"iterate-over-string-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Il={id:sr.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the string that is being iterated over. This value is passed to the child actions.",dataType:Um,required:!0,index:1,parentRelationType:O.FixedArguments,parent:xm},jm={id:"iterate-over-string-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-string-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},km={like:!1,inferred:!1,id:"iterate-over-string-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:jm},qm={id:"iterate-over-string-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Dl={id:sr.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the string loop. Keeps track of the number of iterations that have been executed.",dataType:km,required:!0,index:0,parentRelationType:O.FixedArguments,parent:qm},Jm={id:"iterate-over-string-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Wm={id:"iterate-over-string-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:Jm},Hm={id:"iterate-over-string-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:sr.body.id,entityType:n.ActionDescriptor},Ym={id:"iterate-over-string-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:Hm},Pl={id:sr.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the string loop.",inputs:[Dl,Il,Wm],outputs:[Ym],error:null,parent:null},zm=B[n.Loop]["object-keys-loop"],Zm={id:"iterate-over-object-keys-loop-object-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-keys-loop-object-argument-declaration-id",entityType:n.ValueDescriptor},Km={like:!1,inferred:!1,id:"iterate-over-object-keys-loop-object-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:null,parent:Zm},Xm={id:"iterate-over-object-keys-loop-object-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectKeys,entityType:n.ActionDescriptor},Qm={id:zm.inputs.object.id,type:n.ValueDescriptor,version:1,name:"Object",description:"The object to iterate over",required:!0,dataType:Km,index:0,parent:Xm,parentRelationType:O.FixedArguments},eT={id:"iterate-over-object-keys-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectKeys,entityType:n.ActionDescriptor},tT={id:zm.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:eT,parentRelationType:O.DynamicReturn},Li={id:$.ObjectKeys,type:n.ActionDescriptor,version:1,name:$.ObjectKeys,description:"Iterates over a object of entities",inputs:[Qm],outputs:[tT],error:null,parent:null},or=B[n.Loop]["object-keys-loop"],nT={id:"iterate-over-object-keys-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-keys-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},rT={like:!1,inferred:!1,id:"iterate-over-object-keys-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:nT},iT={id:"iterate-over-object-keys-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},Al={id:or.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the object-keys that is being iterated over. This value is passed to the child actions.",dataType:rT,required:!0,index:1,parentRelationType:O.FixedArguments,parent:iT},aT={id:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},sT={like:!1,inferred:!1,id:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:aT},oT={id:"iterate-over-object-keys-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},lT={id:or.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the object-keys loop. Keeps track of the number of iterations that have been executed.",dataType:sT,required:!0,index:0,parentRelationType:O.FixedArguments,parent:oT},cT={id:"iterate-over-object-keys-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},dT={id:"iterate-over-object-keys-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:cT},uT={id:"iterate-over-object-keys-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:or.body.id,entityType:n.ActionDescriptor},pT={id:"iterate-over-object-keys-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:uT},yT={id:or.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the object-keys loop.",inputs:[lT,Al,dT],outputs:[pT],error:null,parent:null},hT=B[n.Loop]["object-values-loop"],fT={id:"iterate-over-object-values-loop-object-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-values-loop-object-argument-declaration-id",entityType:n.ValueDescriptor},mT={like:!1,inferred:!1,id:"iterate-over-object-values-loop-object-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:null,parent:fT},TT={id:"iterate-over-object-values-loop-object-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectValues,entityType:n.ActionDescriptor},ET={id:hT.inputs.object.id,type:n.ValueDescriptor,version:1,name:"Object",description:"The object to iterate over",required:!0,dataType:mT,index:0,parent:TT,parentRelationType:O.FixedArguments},bT={id:"iterate-over-object-values-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.ObjectValues,entityType:n.ActionDescriptor},RT={id:hT.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:bT,parentRelationType:O.DynamicReturn},Gi={id:$.ObjectValues,type:n.ActionDescriptor,version:1,name:$.ObjectValues,description:"Iterates over a object of entities",inputs:[ET],outputs:[RT],error:null,parent:null},lr=B[n.Loop]["object-values-loop"],vT={id:"iterate-over-object-values-loop-body-current-value-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-values-loop-body-current-value-declaration-id",entityType:n.ValueDescriptor},gT={id:"iterate-over-object-values-loop-body-current-value-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:null,isNullable:!1,constant:!1,entity:null,asType:null,like:!1,inferred:!1,defaultValue:null,parent:vT},IT={id:"iterate-over-object-values-loop-body-current-value-declaration-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},Ol={id:lr.body.inputs.currentValue.id,type:n.ValueDescriptor,version:1,name:"Current value",description:"The current value in the object-values that is being iterated over. This value is passed to the child actions.",dataType:gT,required:!0,index:1,parentRelationType:O.FixedArguments,parent:IT},DT={id:"iterate-over-object-values-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"iterate-over-object-values-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},PT={like:!1,inferred:!1,id:"iterate-over-object-values-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:DT},AT={id:"iterate-over-object-values-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},OT={id:lr.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the object-values loop. Keeps track of the number of iterations that have been executed.",dataType:PT,required:!0,index:0,parentRelationType:O.FixedArguments,parent:AT},ST={id:"iterate-over-object-values-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},CT={id:"iterate-over-object-values-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:2,parentRelationType:O.DynamicArgument,parent:ST},BT={id:"iterate-over-object-values-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:lr.body.id,entityType:n.ActionDescriptor},wT={id:"iterate-over-object-values-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:BT},_T={id:lr.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the object-values loop.",inputs:[OT,Ol,CT],outputs:[wT],error:null,parent:null},NT=B[n.Loop]["counted-loop"],MT={id:"counted-loop-string-argument-declaration-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"counted-loop-string-argument-declaration-data-type-id",entityType:n.DataType},VT={id:"counted-loop-string-argument-declaration-data-type-default-value-id",type:n.PrimitiveValue,name:P.Number,version:1,value:5,valueAsType:null,autogeneration:null,parent:MT},LT={id:"counted-loop-string-argument-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"counted-loop-string-argument-declaration-id",entityType:n.ValueDescriptor},GT={like:!1,inferred:!1,id:"counted-loop-string-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:VT,parent:LT},$T={id:"counted-loop-string-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:$.Counted,entityType:n.ActionDescriptor},FT={id:NT.inputs.number.id,type:n.ValueDescriptor,version:1,name:"Number of iterations",description:"The number of iterations to perform",required:!0,dataType:GT,index:0,parent:$T,parentRelationType:O.FixedArguments},UT={id:"counted-loop-dynamic-return-declaration-parent-ref-id",type:n.GenericReference,entityId:$.Counted,entityType:n.ActionDescriptor},xT={id:NT.outputs.results.id,type:n.ValueDescriptor,version:1,name:"Ouput value",description:"An output value of the loop",required:!1,dataType:null,index:0,parent:UT,parentRelationType:O.DynamicReturn},as={id:$.Counted,type:n.ActionDescriptor,version:1,name:$.Counted,description:"Iterates a given number of times",inputs:[FT],outputs:[xT],error:null,parent:null},$i=B[n.Loop]["counted-loop"],jT={id:"counted-loop-body-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:"counted-loop-body-current-iteration-number-declaration-id",entityType:n.ValueDescriptor},kT={like:!1,inferred:!1,id:"counted-loop-body-current-iteration-number-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,isNullable:!1,constant:!1,entity:X,asType:!1,defaultValue:null,parent:jT},qT={id:"counted-loop-body-current-iteration-number-declaration-parent-ref-id",type:n.GenericReference,entityId:$i.body.id,entityType:n.ActionDescriptor},Sl={id:$i.body.inputs.iterationNumber.id,type:n.ValueDescriptor,version:1,name:"Current iteration number",description:"The number of the current iteration of the string loop. Keeps track of the number of iterations that have been executed.",dataType:kT,required:!0,index:0,parentRelationType:O.FixedArguments,parent:qT},JT={id:"counted-loop-body-any-dynamic-argument-parent-ref-id",type:n.GenericReference,entityId:$i.body.id,entityType:n.ActionDescriptor},WT={id:"counted-loop-body-any-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values inputed to the loop's body as an aggregation of the respective values outputed.",dataType:null,required:!1,index:1,parentRelationType:O.DynamicArgument,parent:JT},HT={id:"counted-loop-body-any-dynamic-return-parent-ref-id",type:n.GenericReference,entityId:$i.body.id,entityType:n.ActionDescriptor},YT={id:"counted-loop-body-any-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any value",description:"Values outputed by the loop's body.",dataType:null,required:!1,index:0,parentRelationType:O.DynamicReturn,parent:HT},Cl={id:$i.body.id,type:n.ActionDescriptor,version:1,name:"Iteration logic trigger",description:"Describes the body of the string loop.",inputs:[Sl,WT],outputs:[YT],error:null,parent:null},ss=B[n.BuiltInBaseEntity][L.KEY_VALUE_PARAM],qA={id:"key-value-param-built-in-base-entity-name-property-data-type-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-name-property-data-type",entityType:n.DataType},zT={id:"key-value-param-built-in-base-entity-name-property-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-name-property",entityType:n.Property},JA={like:!1,inferred:!1,id:"key-value-param-built-in-base-entity-name-property-data-type",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:zT},ZT={id:"key-value-param-built-in-base-entity-name-property-parent-ref",type:n.GenericReference,entityId:ss.id,entityType:n.BuiltInBaseEntity},KT={hidden:!1,required:!0,id:"key-value-param-built-in-base-entity-name-property",name:"Parameter name",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:JA,description:"The name of the path parameter",parent:ZT},WA={id:"key-value-param-built-in-base-entity-value-property-data-type-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-value-property-data-type",entityType:n.DataType},XT={id:"key-value-param-built-in-base-entity-value-property-ref",type:n.GenericReference,entityId:"key-value-param-built-in-base-entity-value-property",entityType:n.Property},HA={like:!1,inferred:!1,id:"key-value-param-built-in-base-entity-value-property-data-type",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:null,parent:XT},QT={id:"key-value-param-built-in-base-entity-value-property-parent-ref",type:n.GenericReference,entityId:ss.id,entityType:n.BuiltInBaseEntity},eE={hidden:!1,required:!0,id:"key-value-param-built-in-base-entity-value-property",name:"Parameter Value",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:1,dataType:HA,description:"The value of the path parameter",parent:QT},os={id:ss.id,version:1,description:'An entity with a "name" and "value" property representing a breakdown of a key-value pair.',name:ss.id,type:n.BuiltInBaseEntity,abstract:!1,static:!1,interactive:!0,properties:[KT,eE],abstractMethods:[],methods:[],extends:[]},Fi=B[n.BuiltInBaseEntity][L.HTTP_ENDPOINT].properties,tE={id:"endpointBuiltInCorsPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointBuiltInCorsPropertyDataType"},nE={id:"endpointBuiltInCorsPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:Fi.cors.id},rE={like:!1,inferred:!1,id:"endpointBuiltInCorsPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"endpointBuiltInCorsPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:["*"],parent:tE,autogeneration:null,valueAsType:null},parent:nE},iE={id:"endpointBuiltInBaseEntityRef",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},aE={hidden:!0,required:!0,id:Fi.cors.id,name:"Allowed origins",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:0,dataType:rE,description:"The origins that are allowed to access this endpoint, use * for all origins, or http://example.com/* to be as specific as you need.",parent:iE},sE={id:"endpointBuiltInPathPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointBuiltInPathPropertyDataType"},oE={id:"endpointBuiltInPathPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:Fi.path.id},lE={like:!1,inferred:!1,id:"endpointBuiltInPathPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"endpointBuiltInPathPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.String,value:"/",parent:sE,autogeneration:null,valueAsType:null},parent:oE},cE={id:"endpointBuiltInBaseEntityRefTwo",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},Bl={hidden:!1,required:!0,id:Fi.path.id,name:"Path",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:1,dataType:lE,description:"Path to the endpoint, for example /api/users, or /api/users/{id}, or /api/users/{id}/:name. The path can contain parameters, which are defined by curly braces, and will be passed to the endpoint event as variables with the same name.",parent:cE},dE={id:"endpointBuiltInMethodPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointBuiltInMethodPropertyDataType"},uE={id:"endpointBuiltInMethodPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:"endpointBuiltInMethodProperty"},pE={like:!1,inferred:!1,id:"endpointBuiltInMethodPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:Nn,isList:!0,isNullable:!1,constant:!0,asType:!1,defaultValue:{id:"endpointBuiltInMethodPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,value:"GET",name:P.Enum,parent:dE,autogeneration:null,valueAsType:null},options:["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD","TRACE","CONNECT","CUSTOM"],parent:uE},yE={id:"endpointBuiltInBaseEntityRefThree",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},wl={hidden:!1,required:!0,id:Fi.method.id,name:"Method",version:1,type:n.Property,private:!1,index:2,implements:null,abstract:!0,static:!0,dataType:pE,description:"The HTTP method that this endpoint will respond to, for example GET, POST, PUT, DELETE, etc.",parent:yE},hE={id:"endpointRequestHeadersVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointRequestHeadersVariableDataType"},fE={id:"endpointRequestHeadersArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointRequestHeadersArgumentDeclaration"},mE={like:!1,inferred:!1,id:"endpointRequestHeadersVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"endpointRequestHeadersVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:hE,autogeneration:null,valueAsType:null},parent:fE},TE={id:"endpointRequestBodyArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointRequestBodyArgumentDeclaration"},EE={like:!1,inferred:!1,id:"endpointRequestBodyVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:TE},bE={id:"endpointRequestQueryParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointRequestQueryParamsVariableDataType"},RE={id:"endpointRequestQueryParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointRequestQueryParamsArgumentDeclaration"},vE={like:!1,inferred:!1,id:"endpointRequestQueryParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,asType:!1,entity:os,defaultValue:{id:"endpointRequestQueryParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:[],parent:bE,autogeneration:null,valueAsType:null},parent:RE},gE={id:"endpointPathParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointPathParamsVariableDataType"},IE={id:"endpointPathParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"endpointPathParamsArgumentDeclaration"},DE={like:!1,inferred:!1,id:"endpointPathParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:os,asType:!1,defaultValue:{id:"endpointPathParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:[],parent:gE,autogeneration:null,valueAsType:null},parent:IE},PE={id:"endpointReachedTriggerActionDescriptorRef",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},_l={id:"endpointRequestHeadersArgumentDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the request.",type:n.ValueDescriptor,name:"Request headers",dataType:mE,required:!0,index:0,parentRelationType:O.FixedArguments,parent:PE},AE={id:"endpointReachedTriggerActionDescriptorRefTwo",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},Nl={id:"endpointPathParamsArgumentDeclaration",type:n.ValueDescriptor,description:"A standarized text, without spaces that is added at the end of the domain and routes the request to a specific resource within the target server. For example: /api/users/123, /api/users/123/:name, /api/users/123/:name/:age.",version:1,name:"Path parameters",dataType:DE,required:!0,index:1,parentRelationType:O.FixedArguments,parent:AE},OE={id:"endpointReachedTriggerActionDescriptorRefThree",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},Ml={id:"endpointRequestQueryParamsArgumentDeclaration",version:1,description:"A text with standarized format, without spaces that is added at the end of the URL path, after the ? character. It contains data that might be used to process the request. For example: /api/users?name=John&age=30",type:n.ValueDescriptor,name:"Request query params",dataType:vE,required:!0,index:2,parentRelationType:O.FixedArguments,parent:OE},SE={id:"endpointReachedTriggerActionDescriptorRefFour",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReachedTriggerActionDescriptor"},Vl={id:"endpointRequestBodyArgumentDeclaration",version:1,description:"The main data payload of the request.",type:n.ValueDescriptor,name:"Request body",dataType:EE,index:3,required:!0,parentRelationType:O.FixedArguments,parent:SE},CE={id:"endpointResponseCodeReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"endpointResponseCodeReturnDeclaration"},BE={like:!1,inferred:!1,id:"9ba575b0-6f8e-436d-a3de-3b843622aa17",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:CE},wE={id:"endpointReturnStatementRef",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReturnStatement"},Ll={id:"endpointResponseCodeReturnDeclaration",version:1,description:"A standarized number that represents the status of the response. 200 for OK, 404 for not found, 500 for server error, etc.",type:n.ValueDescriptor,name:"Response code",dataType:BE,required:!0,index:0,parentRelationType:O.FixedReturns,parent:wE},_E={id:"endpointResponseHeadersDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"endpointResponseHeadersDataType"},NE={id:"endpointResponseHeadersReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"endpointResponseHeadersReturnDeclaration"},ME={like:!1,inferred:!1,id:"endpointResponseHeadersDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"endpointResponseHeadersDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:_E,autogeneration:null,valueAsType:null},parent:NE},VE={id:"endpointReturnStatementRefTwo",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReturnStatement"},Gl={id:"endpointResponseHeadersReturnDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the response.",type:n.ValueDescriptor,name:"Response headers",dataType:ME,required:!1,index:1,parentRelationType:O.FixedReturns,parent:VE},LE={id:"endpointResponseBodyReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"endpointResponseBodyReturnDeclaration"},GE={like:!1,inferred:!1,id:"endpointResponseBodyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:LE},$E={id:"endpointReturnStatementRefThree",type:n.GenericReference,entityType:n.ActionDescriptor,entityId:"endpointReturnStatement"},$l={id:"endpointResponseBodyReturnDeclaration",version:1,description:"The main data payload of the response.",type:n.ValueDescriptor,name:"Response body",dataType:GE,required:!1,index:2,parentRelationType:O.FixedReturns,parent:$E},FE={id:"endpointBuiltInBaseEntityRefFour",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},Fl={id:"endpointReachedTriggerActionDescriptor",type:n.ActionDescriptor,version:1,name:"Endpoint reached",description:"Fired when the endpoint is reached.",inputs:[_l,Nl,Ml,Vl],outputs:[Ll,Gl,$l],error:null,parent:FE},ls={id:L.HTTP_ENDPOINT,version:1,description:"An HTTP endpoint that can be reached by a client from the internet.",name:L.HTTP_ENDPOINT,type:n.BuiltInBaseEntity,interactive:!1,abstract:!0,static:!0,properties:[aE,Bl,wl],abstractMethods:[Fl],extends:[],methods:[]},Vt=B[n.BuiltInBaseEntity].BUILT_IN_RELATIONAL_DATABASE_ENTITY,UE={id:"relational-database-built-in-base-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-identifier-property-data-type-id",entityType:n.DataType},xE={id:"relational-database-built-in-base-entity-identifier-property-ref-id",type:n.GenericReference,entityId:Vt.properties.identifier.id,entityType:n.Property},YA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-identifier-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:null,parent:UE,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:xE},Zr={id:"relational-database-built-in-base-entity-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},cs={hidden:!1,required:!0,id:Vt.properties.identifier.id,name:"Identifier name",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:0,dataType:YA,description:"The name of the main database inside of the server instance where the data will be stored.",parent:Zr},zA={id:"relational-database-built-in-base-entity-username-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-username-property-data-type-idd",entityType:n.DataType},jE={id:"relational-database-built-in-base-entity-username-property-ref-id",type:n.GenericReference,entityId:Vt.properties.username.id,entityType:n.Property},ZA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-username-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-username-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"postgres",parent:{id:"relational-database-built-in-base-entity-username-property-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-username-property-data-type-id",entityType:n.DataType},autogeneration:null,valueAsType:null},parent:jE},ds={hidden:!1,required:!0,id:Vt.properties.username.id,name:"Username",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:1,dataType:ZA,description:"The username that will be used to connect to the database.",parent:Zr},KA={id:"relational-database-built-in-base-entity-password-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-password-property-data-type-id",entityType:n.DataType},kE={id:"relational-database-built-in-base-entity-password-property-ref-id",type:n.GenericReference,entityId:Vt.properties.password.id,entityType:n.Property},XA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-password-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:kE},us={hidden:!1,required:!0,id:Vt.properties.password.id,name:"Password",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:2,dataType:XA,description:"The password that will be used to connect to the database.",parent:Zr},qE={id:"relational-database-built-in-base-entity-min-size-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-min-size-property-data-type-id",entityType:n.DataType},JE={id:"relational-database-built-in-base-entity-min-size-property-ref-id",type:n.GenericReference,entityId:Vt.properties.minSize.id,entityType:n.Property},QA={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-min-size-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-min-size-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:6,parent:qE,autogeneration:null,valueAsType:null},parent:JE},ps={hidden:!0,required:!0,id:Vt.properties.minSize.id,name:"Minimum GB size",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:3,dataType:QA,description:"The minimum size of the database in GB.",parent:Zr},WE={id:"relational-database-built-in-base-entity-default-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-default-property-data-type-id",entityType:n.DataType},HE={id:"relational-database-built-in-base-entity-default-property-ref-id",type:n.GenericReference,entityId:Vt.properties.default.id,entityType:n.Property},eO={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-default-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:_n,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-default-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!1,parent:WE,autogeneration:null,valueAsType:null},parent:HE},Ul={hidden:!0,required:!0,id:Vt.properties.default.id,name:"Default",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:4,dataType:eO,description:"If true, this database will be the default database for the server instance and all the new entities.",parent:Zr},YE={id:"relational-database-built-in-base-entity-autoscaling-property-ref-id",type:n.GenericReference,entityId:Vt.properties.autoscaling.id,entityType:n.Property},zE={id:"relational-database-built-in-base-entity-autoscaling-property-data-type-ref-id",type:n.GenericReference,entityId:"relational-database-built-in-base-entity-autoscaling-property-data-type-id",entityType:n.DataType},tO={like:!1,inferred:!1,id:"relational-database-built-in-base-entity-autoscaling-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:_n,asType:!1,defaultValue:{id:"relational-database-built-in-base-entity-autoscaling-property-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!1,parent:zE,autogeneration:null,valueAsType:null},parent:YE},ZE={id:"relational-database-built-in-base-entity-autoscaling-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},xl={hidden:!0,required:!0,id:Vt.properties.autoscaling.id,name:"Auto-scaling",version:1,type:n.Property,private:!1,abstract:!0,static:!0,implements:null,index:4,dataType:tO,description:"If true, this database will automatically scale up or down in memory size, based on the usage.",parent:ZE},Mn={id:L.RELATIONAL_DATABASE,version:1,description:"This entity provisions a relational database in the cloud.",name:L.RELATIONAL_DATABASE,type:n.BuiltInBaseEntity,abstract:!0,static:!0,interactive:!1,properties:[cs,ds,us,ps,Ul,xl],abstractMethods:[],methods:[],extends:[]},KE={type:n.GenericReference,entityId:"persisted-built-in-base-entity-ref-id",entityType:n.BuiltInBaseEntity,id:Ct.DeletePersistedEntity},jl={type:n.FunctionDeclaration,id:Ct.DeletePersistedEntity,name:Ct.DeletePersistedEntity,description:"Permanently deletes the current copy of an entity from the database",version:1,parent:KE,inputs:[],calls:[],implements:null,collapsed:!1,returnStatements:[],index:0,private:!1,x:0,y:0},XE={type:n.GenericReference,entityId:"persisted-built-in-base-entity-ref-id",entityType:n.BuiltInBaseEntity,id:Ct.SoftDeletePersistedEntity},QE={type:n.FunctionDeclaration,id:Ct.SoftDeletePersistedEntity,name:Ct.SoftDeletePersistedEntity,description:"Designates the entity as deleted, but does not remove it from the database.",version:1,parent:XE,inputs:[],calls:[],implements:null,collapsed:!1,returnStatements:[],index:0,private:!1,x:0,y:0},eb=B[n.BuiltInBaseEntity][L.PERSISTED_ENTITY].properties,nO={id:"persisted-built-in-base-entity-database-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-database-property-data-type-id",entityType:n.DataType},tb={id:"persisted-built-in-base-entity-database-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-database-property-id",entityType:n.Property},rO={like:!1,inferred:!1,id:"persisted-built-in-base-entity-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:Mn,asType:!1,defaultValue:null,parent:tb},nb={id:"persisted-built-in-base-entity-database-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},Ui={hidden:!0,required:!0,id:eb.database.id,name:"Database",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:0,dataType:rO,description:"The database that the entity belongs to.",parent:nb},rb={id:"persisted-built-in-base-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-identifier-property-data-type-id",entityType:n.DataType},ib={id:"persisted-built-in-base-entity-identifier-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-identifier-property-id",entityType:n.Property},iO={like:!1,inferred:!1,id:"persisted-built-in-base-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:qa,asType:!1,defaultValue:{id:"persisted-built-in-base-entity-identifier-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.UUID,value:null,parent:rb,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:ib},ab={id:"persisted-built-in-base-entity-identifier-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},sb={hidden:!1,required:!0,id:eb.identifier.id,name:"Identifier",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:iO,description:"Auto-generated unique identifier for the entity, can be used to identify the entity among other entities of the same type.",parent:ab},aO={id:"persisted-built-in-base-entity-deleted-at-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-deleted-at-property-data-type-id",entityType:n.DataType},ob={id:"persisted-built-in-base-entity-deleted-at-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-deleted-at-property-id",entityType:n.Property},lb={like:!1,inferred:!1,id:"persisted-built-in-base-entity-deleted-at-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!0,constant:!1,entity:pn,asType:!1,defaultValue:null,parent:ob},cb={id:"persisted-built-in-base-entity-deleted-at-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},db={hidden:!1,required:!0,id:"persisted-built-in-base-entity-deleted-at-property-id",name:"Deleted at",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:lb,description:"The date and time when the entity was deleted.",parent:cb},sO={id:"persisted-built-in-base-entity-created-at-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-created-at-property-data-type-id",entityType:n.DataType},ub={id:"persisted-built-in-base-entity-created-at-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-created-at-property-id",entityType:n.Property},pb={like:!1,inferred:!1,id:"persisted-built-in-base-entity-created-at-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:pn,asType:!1,defaultValue:null,parent:ub},yb={id:"persisted-built-in-base-entity-created-at-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},hb={hidden:!1,required:!0,id:"persisted-built-in-base-entity-created-at-property-id",name:"Created at",version:1,type:n.Property,private:!1,abstract:!1,implements:null,static:!1,index:0,dataType:pb,description:"The date and time when the entity was created.",parent:yb},oO={id:"persisted-built-in-base-entity-updated-at-property-data-type-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-updated-at-property-data-type-id",entityType:n.DataType},fb={id:"persisted-built-in-base-entity-updated-at-property-ref-id",type:n.GenericReference,entityId:"persisted-built-in-base-entity-updated-at-property-id",entityType:n.Property},mb={like:!1,inferred:!1,id:"persisted-built-in-base-entity-updated-at-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:pn,asType:!1,defaultValue:null,parent:fb},Tb={id:"persisted-built-in-base-entity-updated-at-property-parent-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},Eb={hidden:!1,required:!0,id:"persisted-built-in-base-entity-updated-at-property-id",name:"Updated at",version:1,type:n.Property,private:!1,implements:null,abstract:!1,static:!1,index:0,dataType:mb,description:"The date and time when the entity was last updated.",parent:Tb},ke={id:L.PERSISTED_ENTITY,version:1,description:"An entity that is permanently stored in the database and can be accessed at any point.",name:L.PERSISTED_ENTITY,type:n.BuiltInBaseEntity,abstract:!0,static:!1,interactive:!0,abstractMethods:[],properties:[Ui,sb,db,hb,Eb],methods:[jl,QE],extends:[]},bb={id:"cron-job-triggered-function-declaration-blueprint-parent-ref-id",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},kl={id:"cron-job-triggered-function-declaration-blueprint-id",name:"Cron job triggered",version:1,type:n.ActionDescriptor,description:"Executed when the cron job is triggered",inputs:[],error:null,outputs:[],parent:bb},Rb=B[n.BuiltInBaseEntity].BUILT_IN_CRON_JOB_ENTITY,lO={id:"cron-job-built-in-base-entity-expression-property-data-type-ref",type:n.GenericReference,entityId:"cron-job-built-in-base-entity-expression-property-data-type",entityType:n.DataType},vb={id:"cron-job-built-in-base-entity-expression-property-ref",type:n.GenericReference,entityId:Rb.properties.expression.id,entityType:n.Property},cO={like:!1,inferred:!1,id:"cron-job-built-in-base-entity-expression-property-data-type",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:vb},gb={id:"cron-job-built-in-base-entity-ref",type:n.GenericReference,entityId:L.CRON_JOB,entityType:n.BuiltInBaseEntity},Ib={hidden:!1,required:!0,id:Rb.properties.expression.id,name:"Cron expression",version:1,type:n.Property,private:!1,abstract:!0,implements:null,static:!0,index:0,dataType:cO,description:"The cron-job expression that defines when the cron-job job should be triggered. The expression should be in the format of a cron-job expression.",parent:gb},ql={id:L.CRON_JOB,version:1,description:"This entity represents a scheduled trigger. The action on this entity will be executed one the time set by the cron-job expression is reached.",name:L.CRON_JOB,type:n.BuiltInBaseEntity,abstract:!0,static:!0,interactive:!1,properties:[Ib],methods:[],abstractMethods:[kl],extends:[]},Db={type:n.GenericReference,id:"execution-built-in-entity-abort-method-parent-ref-id",entityType:n.BuiltInBaseEntity,entityId:"execution-built-in-entity-id"},Jl={id:"execution-built-in-entity-abort-method-id",type:n.FunctionDeclaration,version:1,name:Ct.AbortExecution,description:"Aborts the execution of the entity",inputs:[],returnStatements:[],calls:[],implements:null,private:!1,collapsed:!1,index:null,x:0,y:0,parent:Db},Wl={id:L.EXECUTION,type:n.BuiltInBaseEntity,version:1,name:L.EXECUTION,description:"A reference to an ongoing execution of any entity that can be called. Eg: Operations, custom trigger calls, etc.",static:!1,abstract:!1,interactive:!0,extends:[],properties:[],methods:[Jl],abstractMethods:[]},dO=B[n.Condition]["not-empty"],Pb={type:n.GenericReference,id:"not-empty-condition-ref",entityType:n.ActionDescriptor,entityId:Mt.NotEmpty},Ab={id:dO.inputs.leftHand.id,type:n.ValueDescriptor,version:1,name:"Value",description:"The value to check if it is not empty",dataType:null,required:!0,parentRelationType:O.FixedArguments,index:0,parent:Pb},cr={type:n.ActionDescriptor,id:Mt.NotEmpty,version:1,name:Mt.NotEmpty,description:"Checks if the value is not empty",parent:null,inputs:[Ab],outputs:[],error:null},Ob={[Mt.NotEmpty]:cr},Kr=B[n.Condition]["more-than-or-equal"],Sb={type:n.GenericReference,id:"more-than-or-equal-condition-left-hand-argument-data-type-parent-ref",entityType:n.ValueDescriptor,entityId:Kr.inputs.leftHand.id},Cb={type:n.DataType,id:Kr.inputs.leftHand.dataType.id,version:1,entity:X,defaultValue:null,like:!1,isList:!1,inferred:!1,andChildrenGroup:null,orChildrenGroup:null,isNullable:!1,constant:!1,asType:!1,parent:Sb},Bb={type:n.GenericReference,id:"more-than-or-equal-condition-left-hand-argument-parent-ref",entityType:n.ActionDescriptor,entityId:$e.MoreThanOrEqual},wb={id:Kr.inputs.leftHand.id,type:n.ValueDescriptor,version:1,name:"First value",description:"The first value to compare",dataType:Cb,required:!0,parentRelationType:O.FixedArguments,index:0,parent:Bb},_b={type:n.GenericReference,id:"more-than-or-equal-condition-right-hand-argument-data-type-parent-ref",entityType:n.ValueDescriptor,entityId:Kr.inputs.rightHand.id},Nb={type:n.DataType,id:Kr.inputs.rightHand.dataType.id,version:1,entity:X,defaultValue:null,like:!1,isList:!1,inferred:!1,andChildrenGroup:null,orChildrenGroup:null,isNullable:!1,constant:!1,asType:!1,parent:_b},Mb={type:n.GenericReference,id:"more-than-or-equal-condition-right-hand-argument-parent-ref",entityType:n.ActionDescriptor,entityId:$e.MoreThanOrEqual},Vb={id:Kr.inputs.rightHand.id,type:n.ValueDescriptor,version:1,name:"Second value",description:"The second value to compare",dataType:Nb,required:!0,parentRelationType:O.FixedArguments,index:1,parent:Mb},Xr={type:n.ActionDescriptor,id:$e.MoreThanOrEqual,version:1,name:$e.MoreThanOrEqual,description:"Checks if the value is not empty",parent:null,inputs:[wb,Vb],outputs:[],error:null},Lb={[$e.MoreThanOrEqual]:Xr},uO={...Ob,...Lb},ys={type:n.ActionDescriptor,id:dn.PROJECT_PUBLICATION_COMPLETED,version:1,name:dn.PROJECT_PUBLICATION_COMPLETED,description:"The event that is triggered when the project has completed its publication and all its code and resurces are now deployed and ready to be used by the users",parent:null,inputs:[],outputs:[],error:null},pO={[dn.PROJECT_PUBLICATION_COMPLETED]:ys},Hl=B[n.ValueDescriptor][Qo.ActionOngoingProcessOutputValue],Gb={type:n.GenericReference,id:"182f767f-50e8-4394-ba5f-43e78c232733",entityType:n.ValueDescriptor,entityId:Hl.id},$b={like:!1,inferred:!1,id:Hl.dataType.id,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Wl,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Gb},Yl={id:Hl.id,type:n.ValueDescriptor,description:"A value that represents the ongoing process of the parent action",version:1,name:"Process",dataType:$b,required:!0,index:0,parent:null,parentRelationType:O.OngoingProcessExecution};var ne;(function(r){r.assertEqual=a=>a;function e(a){}r.assertIs=e;function t(a){throw new Error}r.assertNever=t,r.arrayToEnum=a=>{const s={};for(const o of a)s[o]=o;return s},r.getValidEnumValues=a=>{const s=r.objectKeys(a).filter(l=>typeof a[a[l]]!="number"),o={};for(const l of s)o[l]=a[l];return r.objectValues(o)},r.objectValues=a=>r.objectKeys(a).map(function(s){return a[s]}),r.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const s=[];for(const o in a)Object.prototype.hasOwnProperty.call(a,o)&&s.push(o);return s},r.find=(a,s)=>{for(const o of a)if(s(o))return o},r.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&isFinite(a)&&Math.floor(a)===a;function i(a,s=" | "){return a.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}r.joinValues=i,r.jsonStringifyReplacer=(a,s)=>typeof s=="bigint"?s.toString():s})(ne||(ne={}));var zl;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(zl||(zl={}));const G=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Vn=r=>{switch(typeof r){case"undefined":return G.undefined;case"string":return G.string;case"number":return isNaN(r)?G.nan:G.number;case"boolean":return G.boolean;case"function":return G.function;case"bigint":return G.bigint;case"symbol":return G.symbol;case"object":return Array.isArray(r)?G.array:r===null?G.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?G.promise:typeof Map<"u"&&r instanceof Map?G.map:typeof Set<"u"&&r instanceof Set?G.set:typeof Date<"u"&&r instanceof Date?G.date:G.object;default:return G.unknown}},w=ne.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"]),yO=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:");class It extends Error{constructor(e){super(),this.issues=[],this.addIssue=i=>{this.issues=[...this.issues,i]},this.addIssues=(i=[])=>{this.issues=[...this.issues,...i]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(s){return s.message},i={_errors:[]},a=s=>{for(const o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(a);else if(o.code==="invalid_return_type")a(o.returnTypeError);else if(o.code==="invalid_arguments")a(o.argumentsError);else if(o.path.length===0)i._errors.push(t(o));else{let l=i,p=0;for(;p<o.path.length;){const y=o.path[p];p===o.path.length-1?(l[y]=l[y]||{_errors:[]},l[y]._errors.push(t(o))):l[y]=l[y]||{_errors:[]},l=l[y],p++}}};return a(this),i}static assert(e){if(!(e instanceof It))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ne.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},i=[];for(const a of this.issues)a.path.length>0?(t[a.path[0]]=t[a.path[0]]||[],t[a.path[0]].push(e(a))):i.push(e(a));return{formErrors:i,fieldErrors:t}}get formErrors(){return this.flatten()}}It.create=r=>new It(r);const Qr=(r,e)=>{let t;switch(r.code){case w.invalid_type:r.received===G.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case w.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,ne.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:t=`Unrecognized key(s) in object: ${ne.joinValues(r.keys,", ")}`;break;case w.invalid_union:t="Invalid input";break;case w.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${ne.joinValues(r.options)}`;break;case w.invalid_enum_value:t=`Invalid enum value. Expected ${ne.joinValues(r.options)}, received '${r.received}'`;break;case w.invalid_arguments:t="Invalid function arguments";break;case w.invalid_return_type:t="Invalid function return type";break;case w.invalid_date:t="Invalid date";break;case w.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:ne.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case w.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case w.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case w.custom:t="Invalid input";break;case w.invalid_intersection_types:t="Intersection results could not be merged";break;case w.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case w.not_finite:t="Number must be finite";break;default:t=e.defaultError,ne.assertNever(r)}return{message:t}};let Fb=Qr;function hO(r){Fb=r}function hs(){return Fb}const fs=r=>{const{data:e,path:t,errorMaps:i,issueData:a}=r,s=[...t,...a.path||[]],o={...a,path:s};if(a.message!==void 0)return{...a,path:s,message:a.message};let l="";const p=i.filter(y=>!!y).slice().reverse();for(const y of p)l=y(o,{data:e,defaultError:l}).message;return{...a,path:s,message:l}},fO=[];function V(r,e){const t=hs(),i=fs({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===Qr?void 0:Qr].filter(a=>!!a)});r.common.issues.push(i)}class it{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const i=[];for(const a of t){if(a.status==="aborted")return J;a.status==="dirty"&&e.dirty(),i.push(a.value)}return{status:e.value,value:i}}static async mergeObjectAsync(e,t){const i=[];for(const a of t){const s=await a.key,o=await a.value;i.push({key:s,value:o})}return it.mergeObjectSync(e,i)}static mergeObjectSync(e,t){const i={};for(const a of t){const{key:s,value:o}=a;if(s.status==="aborted"||o.status==="aborted")return J;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||a.alwaysSet)&&(i[s.value]=o.value)}return{status:e.value,value:i}}}const J=Object.freeze({status:"aborted"}),ei=r=>({status:"dirty",value:r}),yt=r=>({status:"valid",value:r}),Zl=r=>r.status==="aborted",Kl=r=>r.status==="dirty",xi=r=>r.status==="valid",ji=r=>typeof Promise<"u"&&r instanceof Promise;function ms(r,e,t,i){if(t==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?i:t==="a"?i.call(r):i?i.value:e.get(r)}function Ub(r,e,t,i,a){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?a.call(r,t):a?a.value=t:e.set(r,t),t}typeof SuppressedError=="function"&&SuppressedError;var j;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(j||(j={}));var ki,qi;class Xt{constructor(e,t,i,a){this._cachedPath=[],this.parent=e,this.data=t,this._path=i,this._key=a}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const xb=(r,e)=>{if(xi(e))return{success:!0,data:e.value};if(!r.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 It(r.common.issues);return this._error=t,this._error}}};function Z(r){if(!r)return{};const{errorMap:e,invalid_type_error:t,required_error:i,description:a}=r;if(e&&(t||i))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(o,l)=>{var p,y;const{message:h}=r;return o.code==="invalid_enum_value"?{message:h??l.defaultError}:typeof l.data>"u"?{message:(p=h??i)!==null&&p!==void 0?p:l.defaultError}:o.code!=="invalid_type"?{message:l.defaultError}:{message:(y=h??t)!==null&&y!==void 0?y:l.defaultError}},description:a}}class Q{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Vn(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Vn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new it,ctx:{common:e.parent.common,data:e.data,parsedType:Vn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(ji(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 i=this.safeParse(e,t);if(i.success)return i.data;throw i.error}safeParse(e,t){var i;const a={common:{issues:[],async:(i=t==null?void 0:t.async)!==null&&i!==void 0?i:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Vn(e)},s=this._parseSync({data:e,path:a.path,parent:a});return xb(a,s)}async parseAsync(e,t){const i=await this.safeParseAsync(e,t);if(i.success)return i.data;throw i.error}async safeParseAsync(e,t){const i={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:Vn(e)},a=this._parse({data:e,path:i.path,parent:i}),s=await(ji(a)?a:Promise.resolve(a));return xb(i,s)}refine(e,t){const i=a=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(a):t;return this._refinement((a,s)=>{const o=e(a),l=()=>s.addIssue({code:w.custom,...i(a)});return typeof Promise<"u"&&o instanceof Promise?o.then(p=>p?!0:(l(),!1)):o?!0:(l(),!1)})}refinement(e,t){return this._refinement((i,a)=>e(i)?!0:(a.addIssue(typeof t=="function"?t(i,a):t),!1))}_refinement(e){return new zt({schema:this,typeName:q.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return en.create(this,this._def)}nullable(){return Fn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Yt.create(this,this._def)}promise(){return ii.create(this,this._def)}or(e){return Yi.create([this,e],this._def)}and(e){return zi.create(this,e,this._def)}transform(e){return new zt({...Z(this._def),schema:this,typeName:q.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new ea({...Z(this._def),innerType:this,defaultValue:t,typeName:q.ZodDefault})}brand(){return new ec({typeName:q.ZodBranded,type:this,...Z(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new ta({...Z(this._def),innerType:this,catchValue:t,typeName:q.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return na.create(this,e)}readonly(){return ra.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const mO=/^c[^\s-]{8,}$/i,TO=/^[0-9a-z]+$/,EO=/^[0-9A-HJKMNP-TV-Z]{26}$/,bO=/^[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,RO=/^[a-z0-9_-]{21}$/i,vO=/^[-+]?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)?)??$/,gO=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,IO="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Xl;const DO=/^(?:(?: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])$/,PO=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,AO=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,jb="((\\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])))",OO=new RegExp(`^${jb}$`);function kb(r){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`),e}function SO(r){return new RegExp(`^${kb(r)}$`)}function qb(r){let e=`${jb}T${kb(r)}`;const t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function CO(r,e){return!!((e==="v4"||!e)&&DO.test(r)||(e==="v6"||!e)&&PO.test(r))}class Ht extends Q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==G.string){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.string,received:s.parsedType}),J}const i=new it;let a;for(const s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),i.dirty());else if(s.kind==="max")e.data.length>s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),i.dirty());else if(s.kind==="length"){const o=e.data.length>s.value,l=e.data.length<s.value;(o||l)&&(a=this._getOrReturnCtx(e,a),o?V(a,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):l&&V(a,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),i.dirty())}else if(s.kind==="email")gO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"email",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="emoji")Xl||(Xl=new RegExp(IO,"u")),Xl.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"emoji",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="uuid")bO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"uuid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="nanoid")RO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"nanoid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="cuid")mO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"cuid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="cuid2")TO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"cuid2",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="ulid")EO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"ulid",code:w.invalid_string,message:s.message}),i.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),V(a,{validation:"url",code:w.invalid_string,message:s.message}),i.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"regex",code:w.invalid_string,message:s.message}),i.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),i.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:{startsWith:s.value},message:s.message}),i.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:{endsWith:s.value},message:s.message}),i.dirty()):s.kind==="datetime"?qb(s).test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:"datetime",message:s.message}),i.dirty()):s.kind==="date"?OO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:"date",message:s.message}),i.dirty()):s.kind==="time"?SO(s).test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{code:w.invalid_string,validation:"time",message:s.message}),i.dirty()):s.kind==="duration"?vO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"duration",code:w.invalid_string,message:s.message}),i.dirty()):s.kind==="ip"?CO(e.data,s.version)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"ip",code:w.invalid_string,message:s.message}),i.dirty()):s.kind==="base64"?AO.test(e.data)||(a=this._getOrReturnCtx(e,a),V(a,{validation:"base64",code:w.invalid_string,message:s.message}),i.dirty()):ne.assertNever(s);return{status:i.value,value:e.data}}_regex(e,t,i){return this.refinement(a=>e.test(a),{validation:t,code:w.invalid_string,...j.errToObj(i)})}_addCheck(e){return new Ht({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...j.errToObj(e)})}url(e){return this._addCheck({kind:"url",...j.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...j.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...j.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...j.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...j.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...j.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...j.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...j.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...j.errToObj(e)})}datetime(e){var t,i;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:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(i=e==null?void 0:e.local)!==null&&i!==void 0?i:!1,...j.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,...j.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...j.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...j.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...j.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...j.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...j.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...j.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...j.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...j.errToObj(t)})}nonempty(e){return this.min(1,j.errToObj(e))}trim(){return new Ht({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Ht({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Ht({...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 isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}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}}Ht.create=r=>{var e;return new Ht({checks:[],typeName:q.ZodString,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...Z(r)})};function BO(r,e){const t=(r.toString().split(".")[1]||"").length,i=(e.toString().split(".")[1]||"").length,a=t>i?t:i,s=parseInt(r.toFixed(a).replace(".","")),o=parseInt(e.toFixed(a).replace(".",""));return s%o/Math.pow(10,a)}class Ln extends Q{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)!==G.number){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.number,received:s.parsedType}),J}let i;const a=new it;for(const s of this._def.checks)s.kind==="int"?ne.isInteger(e.data)||(i=this._getOrReturnCtx(e,i),V(i,{code:w.invalid_type,expected:"integer",received:"float",message:s.message}),a.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="multipleOf"?BO(e.data,s.value)!==0&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(i=this._getOrReturnCtx(e,i),V(i,{code:w.not_finite,message:s.message}),a.dirty()):ne.assertNever(s);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,j.toString(t))}gt(e,t){return this.setLimit("min",e,!1,j.toString(t))}lte(e,t){return this.setLimit("max",e,!0,j.toString(t))}lt(e,t){return this.setLimit("max",e,!1,j.toString(t))}setLimit(e,t,i,a){return new Ln({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:i,message:j.toString(a)}]})}_addCheck(e){return new Ln({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:j.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:j.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:j.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:j.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:j.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:j.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"&&ne.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const i of this._def.checks){if(i.kind==="finite"||i.kind==="int"||i.kind==="multipleOf")return!0;i.kind==="min"?(t===null||i.value>t)&&(t=i.value):i.kind==="max"&&(e===null||i.value<e)&&(e=i.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Ln.create=r=>new Ln({checks:[],typeName:q.ZodNumber,coerce:(r==null?void 0:r.coerce)||!1,...Z(r)});class Gn extends Q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==G.bigint){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.bigint,received:s.parsedType}),J}let i;const a=new it;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(i=this._getOrReturnCtx(e,i),V(i,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):ne.assertNever(s);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,j.toString(t))}gt(e,t){return this.setLimit("min",e,!1,j.toString(t))}lte(e,t){return this.setLimit("max",e,!0,j.toString(t))}lt(e,t){return this.setLimit("max",e,!1,j.toString(t))}setLimit(e,t,i,a){return new Gn({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:i,message:j.toString(a)}]})}_addCheck(e){return new Gn({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:j.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:j.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}}Gn.create=r=>{var e;return new Gn({checks:[],typeName:q.ZodBigInt,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...Z(r)})};class Ji extends Q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==G.boolean){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.boolean,received:i.parsedType}),J}return yt(e.data)}}Ji.create=r=>new Ji({typeName:q.ZodBoolean,coerce:(r==null?void 0:r.coerce)||!1,...Z(r)});class dr extends Q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==G.date){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_type,expected:G.date,received:s.parsedType}),J}if(isNaN(e.data.getTime())){const s=this._getOrReturnCtx(e);return V(s,{code:w.invalid_date}),J}const i=new it;let a;for(const s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),i.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(a=this._getOrReturnCtx(e,a),V(a,{code:w.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),i.dirty()):ne.assertNever(s);return{status:i.value,value:new Date(e.data.getTime())}}_addCheck(e){return new dr({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:j.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:j.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}}dr.create=r=>new dr({checks:[],coerce:(r==null?void 0:r.coerce)||!1,typeName:q.ZodDate,...Z(r)});class Ts extends Q{_parse(e){if(this._getType(e)!==G.symbol){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.symbol,received:i.parsedType}),J}return yt(e.data)}}Ts.create=r=>new Ts({typeName:q.ZodSymbol,...Z(r)});class Wi extends Q{_parse(e){if(this._getType(e)!==G.undefined){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.undefined,received:i.parsedType}),J}return yt(e.data)}}Wi.create=r=>new Wi({typeName:q.ZodUndefined,...Z(r)});class Hi extends Q{_parse(e){if(this._getType(e)!==G.null){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.null,received:i.parsedType}),J}return yt(e.data)}}Hi.create=r=>new Hi({typeName:q.ZodNull,...Z(r)});class ti extends Q{constructor(){super(...arguments),this._any=!0}_parse(e){return yt(e.data)}}ti.create=r=>new ti({typeName:q.ZodAny,...Z(r)});class ur extends Q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return yt(e.data)}}ur.create=r=>new ur({typeName:q.ZodUnknown,...Z(r)});class Tn extends Q{_parse(e){const t=this._getOrReturnCtx(e);return V(t,{code:w.invalid_type,expected:G.never,received:t.parsedType}),J}}Tn.create=r=>new Tn({typeName:q.ZodNever,...Z(r)});class Es extends Q{_parse(e){if(this._getType(e)!==G.undefined){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.void,received:i.parsedType}),J}return yt(e.data)}}Es.create=r=>new Es({typeName:q.ZodVoid,...Z(r)});class Yt extends Q{_parse(e){const{ctx:t,status:i}=this._processInputParams(e),a=this._def;if(t.parsedType!==G.array)return V(t,{code:w.invalid_type,expected:G.array,received:t.parsedType}),J;if(a.exactLength!==null){const o=t.data.length>a.exactLength.value,l=t.data.length<a.exactLength.value;(o||l)&&(V(t,{code:o?w.too_big:w.too_small,minimum:l?a.exactLength.value:void 0,maximum:o?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),i.dirty())}if(a.minLength!==null&&t.data.length<a.minLength.value&&(V(t,{code:w.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),i.dirty()),a.maxLength!==null&&t.data.length>a.maxLength.value&&(V(t,{code:w.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),i.dirty()),t.common.async)return Promise.all([...t.data].map((o,l)=>a.type._parseAsync(new Xt(t,o,t.path,l)))).then(o=>it.mergeArray(i,o));const s=[...t.data].map((o,l)=>a.type._parseSync(new Xt(t,o,t.path,l)));return it.mergeArray(i,s)}get element(){return this._def.type}min(e,t){return new Yt({...this._def,minLength:{value:e,message:j.toString(t)}})}max(e,t){return new Yt({...this._def,maxLength:{value:e,message:j.toString(t)}})}length(e,t){return new Yt({...this._def,exactLength:{value:e,message:j.toString(t)}})}nonempty(e){return this.min(1,e)}}Yt.create=(r,e)=>new Yt({type:r,minLength:null,maxLength:null,exactLength:null,typeName:q.ZodArray,...Z(e)});function ni(r){if(r instanceof qe){const e={};for(const t in r.shape){const i=r.shape[t];e[t]=en.create(ni(i))}return new qe({...r._def,shape:()=>e})}else return r instanceof Yt?new Yt({...r._def,type:ni(r.element)}):r instanceof en?en.create(ni(r.unwrap())):r instanceof Fn?Fn.create(ni(r.unwrap())):r instanceof Qt?Qt.create(r.items.map(e=>ni(e))):r}class qe extends Q{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=ne.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==G.object){const y=this._getOrReturnCtx(e);return V(y,{code:w.invalid_type,expected:G.object,received:y.parsedType}),J}const{status:i,ctx:a}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),l=[];if(!(this._def.catchall instanceof Tn&&this._def.unknownKeys==="strip"))for(const y in a.data)o.includes(y)||l.push(y);const p=[];for(const y of o){const h=s[y],m=a.data[y];p.push({key:{status:"valid",value:y},value:h._parse(new Xt(a,m,a.path,y)),alwaysSet:y in a.data})}if(this._def.catchall instanceof Tn){const y=this._def.unknownKeys;if(y==="passthrough")for(const h of l)p.push({key:{status:"valid",value:h},value:{status:"valid",value:a.data[h]}});else if(y==="strict")l.length>0&&(V(a,{code:w.unrecognized_keys,keys:l}),i.dirty());else if(y!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const y=this._def.catchall;for(const h of l){const m=a.data[h];p.push({key:{status:"valid",value:h},value:y._parse(new Xt(a,m,a.path,h)),alwaysSet:h in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const y=[];for(const h of p){const m=await h.key,R=await h.value;y.push({key:m,value:R,alwaysSet:h.alwaysSet})}return y}).then(y=>it.mergeObjectSync(i,y)):it.mergeObjectSync(i,p)}get shape(){return this._def.shape()}strict(e){return j.errToObj,new qe({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,i)=>{var a,s,o,l;const p=(o=(s=(a=this._def).errorMap)===null||s===void 0?void 0:s.call(a,t,i).message)!==null&&o!==void 0?o:i.defaultError;return t.code==="unrecognized_keys"?{message:(l=j.errToObj(e).message)!==null&&l!==void 0?l:p}:{message:p}}}:{}})}strip(){return new qe({...this._def,unknownKeys:"strip"})}passthrough(){return new qe({...this._def,unknownKeys:"passthrough"})}extend(e){return new qe({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new qe({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:q.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new qe({...this._def,catchall:e})}pick(e){const t={};return ne.objectKeys(e).forEach(i=>{e[i]&&this.shape[i]&&(t[i]=this.shape[i])}),new qe({...this._def,shape:()=>t})}omit(e){const t={};return ne.objectKeys(this.shape).forEach(i=>{e[i]||(t[i]=this.shape[i])}),new qe({...this._def,shape:()=>t})}deepPartial(){return ni(this)}partial(e){const t={};return ne.objectKeys(this.shape).forEach(i=>{const a=this.shape[i];e&&!e[i]?t[i]=a:t[i]=a.optional()}),new qe({...this._def,shape:()=>t})}required(e){const t={};return ne.objectKeys(this.shape).forEach(i=>{if(e&&!e[i])t[i]=this.shape[i];else{let s=this.shape[i];for(;s instanceof en;)s=s._def.innerType;t[i]=s}}),new qe({...this._def,shape:()=>t})}keyof(){return Jb(ne.objectKeys(this.shape))}}qe.create=(r,e)=>new qe({shape:()=>r,unknownKeys:"strip",catchall:Tn.create(),typeName:q.ZodObject,...Z(e)}),qe.strictCreate=(r,e)=>new qe({shape:()=>r,unknownKeys:"strict",catchall:Tn.create(),typeName:q.ZodObject,...Z(e)}),qe.lazycreate=(r,e)=>new qe({shape:r,unknownKeys:"strip",catchall:Tn.create(),typeName:q.ZodObject,...Z(e)});class Yi extends Q{_parse(e){const{ctx:t}=this._processInputParams(e),i=this._def.options;function a(s){for(const l of s)if(l.result.status==="valid")return l.result;for(const l of s)if(l.result.status==="dirty")return t.common.issues.push(...l.ctx.common.issues),l.result;const o=s.map(l=>new It(l.ctx.common.issues));return V(t,{code:w.invalid_union,unionErrors:o}),J}if(t.common.async)return Promise.all(i.map(async s=>{const o={...t,common:{...t.common,issues:[]},parent:null};return{result:await s._parseAsync({data:t.data,path:t.path,parent:o}),ctx:o}})).then(a);{let s;const o=[];for(const p of i){const y={...t,common:{...t.common,issues:[]},parent:null},h=p._parseSync({data:t.data,path:t.path,parent:y});if(h.status==="valid")return h;h.status==="dirty"&&!s&&(s={result:h,ctx:y}),y.common.issues.length&&o.push(y.common.issues)}if(s)return t.common.issues.push(...s.ctx.common.issues),s.result;const l=o.map(p=>new It(p));return V(t,{code:w.invalid_union,unionErrors:l}),J}}get options(){return this._def.options}}Yi.create=(r,e)=>new Yi({options:r,typeName:q.ZodUnion,...Z(e)});const En=r=>r instanceof Ki?En(r.schema):r instanceof zt?En(r.innerType()):r instanceof Xi?[r.value]:r instanceof $n?r.options:r instanceof Qi?ne.objectValues(r.enum):r instanceof ea?En(r._def.innerType):r instanceof Wi?[void 0]:r instanceof Hi?[null]:r instanceof en?[void 0,...En(r.unwrap())]:r instanceof Fn?[null,...En(r.unwrap())]:r instanceof ec||r instanceof ra?En(r.unwrap()):r instanceof ta?En(r._def.innerType):[];class bs extends Q{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.object)return V(t,{code:w.invalid_type,expected:G.object,received:t.parsedType}),J;const i=this.discriminator,a=t.data[i],s=this.optionsMap.get(a);return s?t.common.async?s._parseAsync({data:t.data,path:t.path,parent:t}):s._parseSync({data:t.data,path:t.path,parent:t}):(V(t,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[i]}),J)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,i){const a=new Map;for(const s of t){const o=En(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const l of o){if(a.has(l))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(l)}`);a.set(l,s)}}return new bs({typeName:q.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:a,...Z(i)})}}function Ql(r,e){const t=Vn(r),i=Vn(e);if(r===e)return{valid:!0,data:r};if(t===G.object&&i===G.object){const a=ne.objectKeys(e),s=ne.objectKeys(r).filter(l=>a.indexOf(l)!==-1),o={...r,...e};for(const l of s){const p=Ql(r[l],e[l]);if(!p.valid)return{valid:!1};o[l]=p.data}return{valid:!0,data:o}}else if(t===G.array&&i===G.array){if(r.length!==e.length)return{valid:!1};const a=[];for(let s=0;s<r.length;s++){const o=r[s],l=e[s],p=Ql(o,l);if(!p.valid)return{valid:!1};a.push(p.data)}return{valid:!0,data:a}}else return t===G.date&&i===G.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}class zi extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e),a=(s,o)=>{if(Zl(s)||Zl(o))return J;const l=Ql(s.value,o.value);return l.valid?((Kl(s)||Kl(o))&&t.dirty(),{status:t.value,value:l.data}):(V(i,{code:w.invalid_intersection_types}),J)};return i.common.async?Promise.all([this._def.left._parseAsync({data:i.data,path:i.path,parent:i}),this._def.right._parseAsync({data:i.data,path:i.path,parent:i})]).then(([s,o])=>a(s,o)):a(this._def.left._parseSync({data:i.data,path:i.path,parent:i}),this._def.right._parseSync({data:i.data,path:i.path,parent:i}))}}zi.create=(r,e,t)=>new zi({left:r,right:e,typeName:q.ZodIntersection,...Z(t)});class Qt extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.array)return V(i,{code:w.invalid_type,expected:G.array,received:i.parsedType}),J;if(i.data.length<this._def.items.length)return V(i,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),J;!this._def.rest&&i.data.length>this._def.items.length&&(V(i,{code:w.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const s=[...i.data].map((o,l)=>{const p=this._def.items[l]||this._def.rest;return p?p._parse(new Xt(i,o,i.path,l)):null}).filter(o=>!!o);return i.common.async?Promise.all(s).then(o=>it.mergeArray(t,o)):it.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new Qt({...this._def,rest:e})}}Qt.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Qt({items:r,typeName:q.ZodTuple,rest:null,...Z(e)})};class Zi extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.object)return V(i,{code:w.invalid_type,expected:G.object,received:i.parsedType}),J;const a=[],s=this._def.keyType,o=this._def.valueType;for(const l in i.data)a.push({key:s._parse(new Xt(i,l,i.path,l)),value:o._parse(new Xt(i,i.data[l],i.path,l)),alwaysSet:l in i.data});return i.common.async?it.mergeObjectAsync(t,a):it.mergeObjectSync(t,a)}get element(){return this._def.valueType}static create(e,t,i){return t instanceof Q?new Zi({keyType:e,valueType:t,typeName:q.ZodRecord,...Z(i)}):new Zi({keyType:Ht.create(),valueType:e,typeName:q.ZodRecord,...Z(t)})}}class Rs extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.map)return V(i,{code:w.invalid_type,expected:G.map,received:i.parsedType}),J;const a=this._def.keyType,s=this._def.valueType,o=[...i.data.entries()].map(([l,p],y)=>({key:a._parse(new Xt(i,l,i.path,[y,"key"])),value:s._parse(new Xt(i,p,i.path,[y,"value"]))}));if(i.common.async){const l=new Map;return Promise.resolve().then(async()=>{for(const p of o){const y=await p.key,h=await p.value;if(y.status==="aborted"||h.status==="aborted")return J;(y.status==="dirty"||h.status==="dirty")&&t.dirty(),l.set(y.value,h.value)}return{status:t.value,value:l}})}else{const l=new Map;for(const p of o){const y=p.key,h=p.value;if(y.status==="aborted"||h.status==="aborted")return J;(y.status==="dirty"||h.status==="dirty")&&t.dirty(),l.set(y.value,h.value)}return{status:t.value,value:l}}}}Rs.create=(r,e,t)=>new Rs({valueType:e,keyType:r,typeName:q.ZodMap,...Z(t)});class pr extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.parsedType!==G.set)return V(i,{code:w.invalid_type,expected:G.set,received:i.parsedType}),J;const a=this._def;a.minSize!==null&&i.data.size<a.minSize.value&&(V(i,{code:w.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),t.dirty()),a.maxSize!==null&&i.data.size>a.maxSize.value&&(V(i,{code:w.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),t.dirty());const s=this._def.valueType;function o(p){const y=new Set;for(const h of p){if(h.status==="aborted")return J;h.status==="dirty"&&t.dirty(),y.add(h.value)}return{status:t.value,value:y}}const l=[...i.data.values()].map((p,y)=>s._parse(new Xt(i,p,i.path,y)));return i.common.async?Promise.all(l).then(p=>o(p)):o(l)}min(e,t){return new pr({...this._def,minSize:{value:e,message:j.toString(t)}})}max(e,t){return new pr({...this._def,maxSize:{value:e,message:j.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}pr.create=(r,e)=>new pr({valueType:r,minSize:null,maxSize:null,typeName:q.ZodSet,...Z(e)});class ri extends Q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.function)return V(t,{code:w.invalid_type,expected:G.function,received:t.parsedType}),J;function i(l,p){return fs({data:l,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,hs(),Qr].filter(y=>!!y),issueData:{code:w.invalid_arguments,argumentsError:p}})}function a(l,p){return fs({data:l,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,hs(),Qr].filter(y=>!!y),issueData:{code:w.invalid_return_type,returnTypeError:p}})}const s={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof ii){const l=this;return yt(async function(...p){const y=new It([]),h=await l._def.args.parseAsync(p,s).catch(g=>{throw y.addIssue(i(p,g)),y}),m=await Reflect.apply(o,this,h);return await l._def.returns._def.type.parseAsync(m,s).catch(g=>{throw y.addIssue(a(m,g)),y})})}else{const l=this;return yt(function(...p){const y=l._def.args.safeParse(p,s);if(!y.success)throw new It([i(p,y.error)]);const h=Reflect.apply(o,this,y.data),m=l._def.returns.safeParse(h,s);if(!m.success)throw new It([a(h,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new ri({...this._def,args:Qt.create(e).rest(ur.create())})}returns(e){return new ri({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,i){return new ri({args:e||Qt.create([]).rest(ur.create()),returns:t||ur.create(),typeName:q.ZodFunction,...Z(i)})}}class Ki extends Q{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})}}Ki.create=(r,e)=>new Ki({getter:r,typeName:q.ZodLazy,...Z(e)});class Xi extends Q{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return V(t,{received:t.data,code:w.invalid_literal,expected:this._def.value}),J}return{status:"valid",value:e.data}}get value(){return this._def.value}}Xi.create=(r,e)=>new Xi({value:r,typeName:q.ZodLiteral,...Z(e)});function Jb(r,e){return new $n({values:r,typeName:q.ZodEnum,...Z(e)})}class $n extends Q{constructor(){super(...arguments),ki.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),i=this._def.values;return V(t,{expected:ne.joinValues(i),received:t.parsedType,code:w.invalid_type}),J}if(ms(this,ki,"f")||Ub(this,ki,new Set(this._def.values),"f"),!ms(this,ki,"f").has(e.data)){const t=this._getOrReturnCtx(e),i=this._def.values;return V(t,{received:t.data,code:w.invalid_enum_value,options:i}),J}return yt(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 $n.create(e,{...this._def,...t})}exclude(e,t=this._def){return $n.create(this.options.filter(i=>!e.includes(i)),{...this._def,...t})}}ki=new WeakMap,$n.create=Jb;class Qi extends Q{constructor(){super(...arguments),qi.set(this,void 0)}_parse(e){const t=ne.getValidEnumValues(this._def.values),i=this._getOrReturnCtx(e);if(i.parsedType!==G.string&&i.parsedType!==G.number){const a=ne.objectValues(t);return V(i,{expected:ne.joinValues(a),received:i.parsedType,code:w.invalid_type}),J}if(ms(this,qi,"f")||Ub(this,qi,new Set(ne.getValidEnumValues(this._def.values)),"f"),!ms(this,qi,"f").has(e.data)){const a=ne.objectValues(t);return V(i,{received:i.data,code:w.invalid_enum_value,options:a}),J}return yt(e.data)}get enum(){return this._def.values}}qi=new WeakMap,Qi.create=(r,e)=>new Qi({values:r,typeName:q.ZodNativeEnum,...Z(e)});class ii extends Q{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.promise&&t.common.async===!1)return V(t,{code:w.invalid_type,expected:G.promise,received:t.parsedType}),J;const i=t.parsedType===G.promise?t.data:Promise.resolve(t.data);return yt(i.then(a=>this._def.type.parseAsync(a,{path:t.path,errorMap:t.common.contextualErrorMap})))}}ii.create=(r,e)=>new ii({type:r,typeName:q.ZodPromise,...Z(e)});class zt extends Q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:i}=this._processInputParams(e),a=this._def.effect||null,s={addIssue:o=>{V(i,o),o.fatal?t.abort():t.dirty()},get path(){return i.path}};if(s.addIssue=s.addIssue.bind(s),a.type==="preprocess"){const o=a.transform(i.data,s);if(i.common.async)return Promise.resolve(o).then(async l=>{if(t.value==="aborted")return J;const p=await this._def.schema._parseAsync({data:l,path:i.path,parent:i});return p.status==="aborted"?J:p.status==="dirty"||t.value==="dirty"?ei(p.value):p});{if(t.value==="aborted")return J;const l=this._def.schema._parseSync({data:o,path:i.path,parent:i});return l.status==="aborted"?J:l.status==="dirty"||t.value==="dirty"?ei(l.value):l}}if(a.type==="refinement"){const o=l=>{const p=a.refinement(l,s);if(i.common.async)return Promise.resolve(p);if(p instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return l};if(i.common.async===!1){const l=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});return l.status==="aborted"?J:(l.status==="dirty"&&t.dirty(),o(l.value),{status:t.value,value:l.value})}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(l=>l.status==="aborted"?J:(l.status==="dirty"&&t.dirty(),o(l.value).then(()=>({status:t.value,value:l.value}))))}if(a.type==="transform")if(i.common.async===!1){const o=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});if(!xi(o))return o;const l=a.transform(o.value,s);if(l instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:l}}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(o=>xi(o)?Promise.resolve(a.transform(o.value,s)).then(l=>({status:t.value,value:l})):o);ne.assertNever(a)}}zt.create=(r,e,t)=>new zt({schema:r,typeName:q.ZodEffects,effect:e,...Z(t)}),zt.createWithPreprocess=(r,e,t)=>new zt({schema:e,effect:{type:"preprocess",transform:r},typeName:q.ZodEffects,...Z(t)});class en extends Q{_parse(e){return this._getType(e)===G.undefined?yt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}en.create=(r,e)=>new en({innerType:r,typeName:q.ZodOptional,...Z(e)});class Fn extends Q{_parse(e){return this._getType(e)===G.null?yt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Fn.create=(r,e)=>new Fn({innerType:r,typeName:q.ZodNullable,...Z(e)});class ea extends Q{_parse(e){const{ctx:t}=this._processInputParams(e);let i=t.data;return t.parsedType===G.undefined&&(i=this._def.defaultValue()),this._def.innerType._parse({data:i,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}ea.create=(r,e)=>new ea({innerType:r,typeName:q.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});class ta extends Q{_parse(e){const{ctx:t}=this._processInputParams(e),i={...t,common:{...t.common,issues:[]}},a=this._def.innerType._parse({data:i.data,path:i.path,parent:{...i}});return ji(a)?a.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new It(i.common.issues)},input:i.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new It(i.common.issues)},input:i.data})}}removeCatch(){return this._def.innerType}}ta.create=(r,e)=>new ta({innerType:r,typeName:q.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Z(e)});class vs extends Q{_parse(e){if(this._getType(e)!==G.nan){const i=this._getOrReturnCtx(e);return V(i,{code:w.invalid_type,expected:G.nan,received:i.parsedType}),J}return{status:"valid",value:e.data}}}vs.create=r=>new vs({typeName:q.ZodNaN,...Z(r)});const wO=Symbol("zod_brand");class ec extends Q{_parse(e){const{ctx:t}=this._processInputParams(e),i=t.data;return this._def.type._parse({data:i,path:t.path,parent:t})}unwrap(){return this._def.type}}class na extends Q{_parse(e){const{status:t,ctx:i}=this._processInputParams(e);if(i.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:i.data,path:i.path,parent:i});return s.status==="aborted"?J:s.status==="dirty"?(t.dirty(),ei(s.value)):this._def.out._parseAsync({data:s.value,path:i.path,parent:i})})();{const a=this._def.in._parseSync({data:i.data,path:i.path,parent:i});return a.status==="aborted"?J:a.status==="dirty"?(t.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:i.path,parent:i})}}static create(e,t){return new na({in:e,out:t,typeName:q.ZodPipeline})}}class ra extends Q{_parse(e){const t=this._def.innerType._parse(e),i=a=>(xi(a)&&(a.value=Object.freeze(a.value)),a);return ji(t)?t.then(a=>i(a)):i(t)}unwrap(){return this._def.innerType}}ra.create=(r,e)=>new ra({innerType:r,typeName:q.ZodReadonly,...Z(e)});function Wb(r,e={},t){return r?ti.create().superRefine((i,a)=>{var s,o;if(!r(i)){const l=typeof e=="function"?e(i):typeof e=="string"?{message:e}:e,p=(o=(s=l.fatal)!==null&&s!==void 0?s:t)!==null&&o!==void 0?o:!0,y=typeof l=="string"?{message:l}:l;a.addIssue({code:"custom",...y,fatal:p})}}):ti.create()}const _O={object:qe.lazycreate};var q;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(q||(q={}));const NO=(r,e={message:`Input not instance of ${r.name}`})=>Wb(t=>t instanceof r,e),gs=Ht.create,tc=Ln.create,MO=vs.create,VO=Gn.create,nc=Ji.create,Hb=dr.create,LO=Ts.create,GO=Wi.create,Yb=Hi.create,$O=ti.create,Is=ur.create,FO=Tn.create,UO=Es.create,xO=Yt.create,zb=qe.create,jO=qe.strictCreate,kO=Yi.create,qO=bs.create,JO=zi.create,WO=Qt.create,Zb=Zi.create,HO=Rs.create,YO=pr.create,zO=ri.create,ZO=Ki.create,KO=Xi.create,Kb=$n.create,XO=Qi.create,QO=ii.create,Xb=zt.create,eS=en.create,tS=Fn.create,nS=zt.createWithPreprocess,rS=na.create;var u=Object.freeze({__proto__:null,defaultErrorMap:Qr,setErrorMap:hO,getErrorMap:hs,makeIssue:fs,EMPTY_PATH:fO,addIssueToContext:V,ParseStatus:it,INVALID:J,DIRTY:ei,OK:yt,isAborted:Zl,isDirty:Kl,isValid:xi,isAsync:ji,get util(){return ne},get objectUtil(){return zl},ZodParsedType:G,getParsedType:Vn,ZodType:Q,datetimeRegex:qb,ZodString:Ht,ZodNumber:Ln,ZodBigInt:Gn,ZodBoolean:Ji,ZodDate:dr,ZodSymbol:Ts,ZodUndefined:Wi,ZodNull:Hi,ZodAny:ti,ZodUnknown:ur,ZodNever:Tn,ZodVoid:Es,ZodArray:Yt,ZodObject:qe,ZodUnion:Yi,ZodDiscriminatedUnion:bs,ZodIntersection:zi,ZodTuple:Qt,ZodRecord:Zi,ZodMap:Rs,ZodSet:pr,ZodFunction:ri,ZodLazy:Ki,ZodLiteral:Xi,ZodEnum:$n,ZodNativeEnum:Qi,ZodPromise:ii,ZodEffects:zt,ZodTransformer:zt,ZodOptional:en,ZodNullable:Fn,ZodDefault:ea,ZodCatch:ta,ZodNaN:vs,BRAND:wO,ZodBranded:ec,ZodPipeline:na,ZodReadonly:ra,custom:Wb,Schema:Q,ZodSchema:Q,late:_O,get ZodFirstPartyTypeKind(){return q},coerce:{string:r=>Ht.create({...r,coerce:!0}),number:r=>Ln.create({...r,coerce:!0}),boolean:r=>Ji.create({...r,coerce:!0}),bigint:r=>Gn.create({...r,coerce:!0}),date:r=>dr.create({...r,coerce:!0})},any:$O,array:xO,bigint:VO,boolean:nc,date:Hb,discriminatedUnion:qO,effect:Xb,enum:Kb,function:zO,instanceof:NO,intersection:JO,lazy:ZO,literal:KO,map:HO,nan:MO,nativeEnum:XO,never:FO,null:Yb,nullable:tS,number:tc,object:zb,oboolean:()=>nc().optional(),onumber:()=>tc().optional(),optional:eS,ostring:()=>gs().optional(),pipeline:rS,preprocess:nS,promise:QO,record:Zb,set:YO,strictObject:jO,string:gs,symbol:LO,transformer:Xb,tuple:WO,undefined:GO,union:kO,unknown:Is,void:UO,NEVER:J,ZodIssueCode:w,quotelessJson:yO,ZodError:It});function Qb(r){var a,s,o;if(!(r!=null&&r.dataType))return Is();const e=r.dataType.isNullable||!1,t=r.dataType.isList||!1;let i=Is();if(((a=r.dataType.entity)==null?void 0:a.type)===n.PrimitiveEntity)switch(r.dataType.entity.name){case P.String:i=gs();break;case P.JSON:i=Zb(Is());break;case P.Number:i=tc();break;case P.Boolean:i=nc();break;case P.Date:i=Hb();break;case P.Enum:{const l=r.dataType.options||[];if(l.length===0)throw new Error(`Enum property ${r.name} has no options`);i=Kb(l);break}case P.Null:i=Yb();break;case P.UUID:i=gs().uuid();break}else if(((s=r.dataType.entity)==null?void 0:s.type)===n.CustomEntity)i=eR(r.dataType.entity);else throw new Error(`Unsupported data type validation: ${(o=r.dataType.entity)==null?void 0:o.type}`);return e&&(i=i.nullable()),t&&(i=i.array()),i}function eR(r){const e=zb({});for(const t of r.properties){const i=Qb(t);e.shape[t.name]=i}return e}function tR(r){const e=r.rangeStart;return new Date(e.getTime()+Math.random()*(Date.now()-e.getTime()))}function nR(r){const e=r.rangeEnd;return new Date(Math.random()*e.getTime())}function rR(r){const e=r.rangeStart,t=r.rangeEnd;return new Date(e.getTime()+Math.random()*(t.getTime()-e.getTime()))}function iR(r){return r.rangeStart&&r.rangeEnd?rR(r):r.rangeStart?tR(r):r.rangeEnd?nR(r):new Date}function iS(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var aR={},Ds={},Ps={};Object.defineProperty(Ps,"__esModule",{value:!0}),Ps.default=sS;let As;const aS=new Uint8Array(16);function sS(){if(!As&&(As=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!As))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return As(aS)}var Un={},yr={},Os={};Object.defineProperty(Os,"__esModule",{value:!0}),Os.default=void 0;var oS=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;Os.default=oS,Object.defineProperty(yr,"__esModule",{value:!0}),yr.default=void 0;var lS=cS(Os);function cS(r){return r&&r.__esModule?r:{default:r}}function dS(r){return typeof r=="string"&&lS.default.test(r)}var uS=dS;yr.default=uS,Object.defineProperty(Un,"__esModule",{value:!0}),Un.default=void 0,Un.unsafeStringify=sR;var pS=yS(yr);function yS(r){return r&&r.__esModule?r:{default:r}}const rt=[];for(let r=0;r<256;++r)rt.push((r+256).toString(16).slice(1));function sR(r,e=0){return rt[r[e+0]]+rt[r[e+1]]+rt[r[e+2]]+rt[r[e+3]]+"-"+rt[r[e+4]]+rt[r[e+5]]+"-"+rt[r[e+6]]+rt[r[e+7]]+"-"+rt[r[e+8]]+rt[r[e+9]]+"-"+rt[r[e+10]]+rt[r[e+11]]+rt[r[e+12]]+rt[r[e+13]]+rt[r[e+14]]+rt[r[e+15]]}function hS(r,e=0){const t=sR(r,e);if(!(0,pS.default)(t))throw TypeError("Stringified UUID is invalid");return t}var fS=hS;Un.default=fS,Object.defineProperty(Ds,"__esModule",{value:!0}),Ds.default=void 0;var mS=ES(Ps),TS=Un;function ES(r){return r&&r.__esModule?r:{default:r}}let oR,rc,ic=0,ac=0;function bS(r,e,t){let i=e&&t||0;const a=e||new Array(16);r=r||{};let s=r.node||oR,o=r.clockseq!==void 0?r.clockseq:rc;if(s==null||o==null){const R=r.random||(r.rng||mS.default)();s==null&&(s=oR=[R[0]|1,R[1],R[2],R[3],R[4],R[5]]),o==null&&(o=rc=(R[6]<<8|R[7])&16383)}let l=r.msecs!==void 0?r.msecs:Date.now(),p=r.nsecs!==void 0?r.nsecs:ac+1;const y=l-ic+(p-ac)/1e4;if(y<0&&r.clockseq===void 0&&(o=o+1&16383),(y<0||l>ic)&&r.nsecs===void 0&&(p=0),p>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");ic=l,ac=p,rc=o,l+=122192928e5;const h=((l&268435455)*1e4+p)%4294967296;a[i++]=h>>>24&255,a[i++]=h>>>16&255,a[i++]=h>>>8&255,a[i++]=h&255;const m=l/4294967296*1e4&268435455;a[i++]=m>>>8&255,a[i++]=m&255,a[i++]=m>>>24&15|16,a[i++]=m>>>16&255,a[i++]=o>>>8|128,a[i++]=o&255;for(let R=0;R<6;++R)a[i+R]=s[R];return e||(0,TS.unsafeStringify)(a)}var RS=bS;Ds.default=RS;var Ss={},xn={},ia={};Object.defineProperty(ia,"__esModule",{value:!0}),ia.default=void 0;var vS=gS(yr);function gS(r){return r&&r.__esModule?r:{default:r}}function IS(r){if(!(0,vS.default)(r))throw TypeError("Invalid UUID");let e;const t=new Uint8Array(16);return t[0]=(e=parseInt(r.slice(0,8),16))>>>24,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=e&255,t[4]=(e=parseInt(r.slice(9,13),16))>>>8,t[5]=e&255,t[6]=(e=parseInt(r.slice(14,18),16))>>>8,t[7]=e&255,t[8]=(e=parseInt(r.slice(19,23),16))>>>8,t[9]=e&255,t[10]=(e=parseInt(r.slice(24,36),16))/1099511627776&255,t[11]=e/4294967296&255,t[12]=e>>>24&255,t[13]=e>>>16&255,t[14]=e>>>8&255,t[15]=e&255,t}var DS=IS;ia.default=DS,Object.defineProperty(xn,"__esModule",{value:!0}),xn.URL=xn.DNS=void 0,xn.default=CS;var PS=Un,AS=OS(ia);function OS(r){return r&&r.__esModule?r:{default:r}}function SS(r){r=unescape(encodeURIComponent(r));const e=[];for(let t=0;t<r.length;++t)e.push(r.charCodeAt(t));return e}const lR="6ba7b810-9dad-11d1-80b4-00c04fd430c8";xn.DNS=lR;const cR="6ba7b811-9dad-11d1-80b4-00c04fd430c8";xn.URL=cR;function CS(r,e,t){function i(a,s,o,l){var p;if(typeof a=="string"&&(a=SS(a)),typeof s=="string"&&(s=(0,AS.default)(s)),((p=s)===null||p===void 0?void 0:p.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let y=new Uint8Array(16+a.length);if(y.set(s),y.set(a,s.length),y=t(y),y[6]=y[6]&15|e,y[8]=y[8]&63|128,o){l=l||0;for(let h=0;h<16;++h)o[l+h]=y[h];return o}return(0,PS.unsafeStringify)(y)}try{i.name=r}catch{}return i.DNS=lR,i.URL=cR,i}var Cs={};Object.defineProperty(Cs,"__esModule",{value:!0}),Cs.default=void 0;function BS(r){if(typeof r=="string"){const e=unescape(encodeURIComponent(r));r=new Uint8Array(e.length);for(let t=0;t<e.length;++t)r[t]=e.charCodeAt(t)}return wS(_S(NS(r),r.length*8))}function wS(r){const e=[],t=r.length*32,i="0123456789abcdef";for(let a=0;a<t;a+=8){const s=r[a>>5]>>>a%32&255,o=parseInt(i.charAt(s>>>4&15)+i.charAt(s&15),16);e.push(o)}return e}function dR(r){return(r+64>>>9<<4)+14+1}function _S(r,e){r[e>>5]|=128<<e%32,r[dR(e)-1]=e;let t=1732584193,i=-271733879,a=-1732584194,s=271733878;for(let o=0;o<r.length;o+=16){const l=t,p=i,y=a,h=s;t=at(t,i,a,s,r[o],7,-680876936),s=at(s,t,i,a,r[o+1],12,-389564586),a=at(a,s,t,i,r[o+2],17,606105819),i=at(i,a,s,t,r[o+3],22,-1044525330),t=at(t,i,a,s,r[o+4],7,-176418897),s=at(s,t,i,a,r[o+5],12,1200080426),a=at(a,s,t,i,r[o+6],17,-1473231341),i=at(i,a,s,t,r[o+7],22,-45705983),t=at(t,i,a,s,r[o+8],7,1770035416),s=at(s,t,i,a,r[o+9],12,-1958414417),a=at(a,s,t,i,r[o+10],17,-42063),i=at(i,a,s,t,r[o+11],22,-1990404162),t=at(t,i,a,s,r[o+12],7,1804603682),s=at(s,t,i,a,r[o+13],12,-40341101),a=at(a,s,t,i,r[o+14],17,-1502002290),i=at(i,a,s,t,r[o+15],22,1236535329),t=st(t,i,a,s,r[o+1],5,-165796510),s=st(s,t,i,a,r[o+6],9,-1069501632),a=st(a,s,t,i,r[o+11],14,643717713),i=st(i,a,s,t,r[o],20,-373897302),t=st(t,i,a,s,r[o+5],5,-701558691),s=st(s,t,i,a,r[o+10],9,38016083),a=st(a,s,t,i,r[o+15],14,-660478335),i=st(i,a,s,t,r[o+4],20,-405537848),t=st(t,i,a,s,r[o+9],5,568446438),s=st(s,t,i,a,r[o+14],9,-1019803690),a=st(a,s,t,i,r[o+3],14,-187363961),i=st(i,a,s,t,r[o+8],20,1163531501),t=st(t,i,a,s,r[o+13],5,-1444681467),s=st(s,t,i,a,r[o+2],9,-51403784),a=st(a,s,t,i,r[o+7],14,1735328473),i=st(i,a,s,t,r[o+12],20,-1926607734),t=ot(t,i,a,s,r[o+5],4,-378558),s=ot(s,t,i,a,r[o+8],11,-2022574463),a=ot(a,s,t,i,r[o+11],16,1839030562),i=ot(i,a,s,t,r[o+14],23,-35309556),t=ot(t,i,a,s,r[o+1],4,-1530992060),s=ot(s,t,i,a,r[o+4],11,1272893353),a=ot(a,s,t,i,r[o+7],16,-155497632),i=ot(i,a,s,t,r[o+10],23,-1094730640),t=ot(t,i,a,s,r[o+13],4,681279174),s=ot(s,t,i,a,r[o],11,-358537222),a=ot(a,s,t,i,r[o+3],16,-722521979),i=ot(i,a,s,t,r[o+6],23,76029189),t=ot(t,i,a,s,r[o+9],4,-640364487),s=ot(s,t,i,a,r[o+12],11,-421815835),a=ot(a,s,t,i,r[o+15],16,530742520),i=ot(i,a,s,t,r[o+2],23,-995338651),t=lt(t,i,a,s,r[o],6,-198630844),s=lt(s,t,i,a,r[o+7],10,1126891415),a=lt(a,s,t,i,r[o+14],15,-1416354905),i=lt(i,a,s,t,r[o+5],21,-57434055),t=lt(t,i,a,s,r[o+12],6,1700485571),s=lt(s,t,i,a,r[o+3],10,-1894986606),a=lt(a,s,t,i,r[o+10],15,-1051523),i=lt(i,a,s,t,r[o+1],21,-2054922799),t=lt(t,i,a,s,r[o+8],6,1873313359),s=lt(s,t,i,a,r[o+15],10,-30611744),a=lt(a,s,t,i,r[o+6],15,-1560198380),i=lt(i,a,s,t,r[o+13],21,1309151649),t=lt(t,i,a,s,r[o+4],6,-145523070),s=lt(s,t,i,a,r[o+11],10,-1120210379),a=lt(a,s,t,i,r[o+2],15,718787259),i=lt(i,a,s,t,r[o+9],21,-343485551),t=jn(t,l),i=jn(i,p),a=jn(a,y),s=jn(s,h)}return[t,i,a,s]}function NS(r){if(r.length===0)return[];const e=r.length*8,t=new Uint32Array(dR(e));for(let i=0;i<e;i+=8)t[i>>5]|=(r[i/8]&255)<<i%32;return t}function jn(r,e){const t=(r&65535)+(e&65535);return(r>>16)+(e>>16)+(t>>16)<<16|t&65535}function MS(r,e){return r<<e|r>>>32-e}function Bs(r,e,t,i,a,s){return jn(MS(jn(jn(e,r),jn(i,s)),a),t)}function at(r,e,t,i,a,s,o){return Bs(e&t|~e&i,r,e,a,s,o)}function st(r,e,t,i,a,s,o){return Bs(e&i|t&~i,r,e,a,s,o)}function ot(r,e,t,i,a,s,o){return Bs(e^t^i,r,e,a,s,o)}function lt(r,e,t,i,a,s,o){return Bs(t^(e|~i),r,e,a,s,o)}var VS=BS;Cs.default=VS,Object.defineProperty(Ss,"__esModule",{value:!0}),Ss.default=void 0;var LS=uR(xn),GS=uR(Cs);function uR(r){return r&&r.__esModule?r:{default:r}}var $S=(0,LS.default)("v3",48,GS.default);Ss.default=$S;var ws={},_s={};Object.defineProperty(_s,"__esModule",{value:!0}),_s.default=void 0;var FS={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};_s.default=FS,Object.defineProperty(ws,"__esModule",{value:!0}),ws.default=void 0;var pR=yR(_s),US=yR(Ps),xS=Un;function yR(r){return r&&r.__esModule?r:{default:r}}function jS(r,e,t){if(pR.default.randomUUID&&!e&&!r)return pR.default.randomUUID();r=r||{};const i=r.random||(r.rng||US.default)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,e){t=t||0;for(let a=0;a<16;++a)e[t+a]=i[a];return e}return(0,xS.unsafeStringify)(i)}var kS=jS;ws.default=kS;var Ns={},Ms={};Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.default=void 0;function qS(r,e,t,i){switch(r){case 0:return e&t^~e&i;case 1:return e^t^i;case 2:return e&t^e&i^t&i;case 3:return e^t^i}}function sc(r,e){return r<<e|r>>>32-e}function JS(r){const e=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof r=="string"){const o=unescape(encodeURIComponent(r));r=[];for(let l=0;l<o.length;++l)r.push(o.charCodeAt(l))}else Array.isArray(r)||(r=Array.prototype.slice.call(r));r.push(128);const i=r.length/4+2,a=Math.ceil(i/16),s=new Array(a);for(let o=0;o<a;++o){const l=new Uint32Array(16);for(let p=0;p<16;++p)l[p]=r[o*64+p*4]<<24|r[o*64+p*4+1]<<16|r[o*64+p*4+2]<<8|r[o*64+p*4+3];s[o]=l}s[a-1][14]=(r.length-1)*8/Math.pow(2,32),s[a-1][14]=Math.floor(s[a-1][14]),s[a-1][15]=(r.length-1)*8&4294967295;for(let o=0;o<a;++o){const l=new Uint32Array(80);for(let g=0;g<16;++g)l[g]=s[o][g];for(let g=16;g<80;++g)l[g]=sc(l[g-3]^l[g-8]^l[g-14]^l[g-16],1);let p=t[0],y=t[1],h=t[2],m=t[3],R=t[4];for(let g=0;g<80;++g){const D=Math.floor(g/20),A=sc(p,5)+qS(D,y,h,m)+R+e[D]+l[g]>>>0;R=m,m=h,h=sc(y,30)>>>0,y=p,p=A}t[0]=t[0]+p>>>0,t[1]=t[1]+y>>>0,t[2]=t[2]+h>>>0,t[3]=t[3]+m>>>0,t[4]=t[4]+R>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,t[0]&255,t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,t[1]&255,t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,t[2]&255,t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,t[3]&255,t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,t[4]&255]}var WS=JS;Ms.default=WS,Object.defineProperty(Ns,"__esModule",{value:!0}),Ns.default=void 0;var HS=hR(xn),YS=hR(Ms);function hR(r){return r&&r.__esModule?r:{default:r}}var zS=(0,HS.default)("v5",80,YS.default);Ns.default=zS;var Vs={};Object.defineProperty(Vs,"__esModule",{value:!0}),Vs.default=void 0;var ZS="00000000-0000-0000-0000-000000000000";Vs.default=ZS;var Ls={};Object.defineProperty(Ls,"__esModule",{value:!0}),Ls.default=void 0;var KS=XS(yr);function XS(r){return r&&r.__esModule?r:{default:r}}function QS(r){if(!(0,KS.default)(r))throw TypeError("Invalid UUID");return parseInt(r.slice(14,15),16)}var eC=QS;Ls.default=eC,function(r){Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"NIL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(r,"parse",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(r,"stringify",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(r,"v1",{enumerable:!0,get:function(){return e.default}}),Object.defineProperty(r,"v3",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(r,"v4",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(r,"v5",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(r,"validate",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(r,"version",{enumerable:!0,get:function(){return o.default}});var e=h(Ds),t=h(Ss),i=h(ws),a=h(Ns),s=h(Vs),o=h(Ls),l=h(yr),p=h(Un),y=h(ia);function h(m){return m&&m.__esModule?m:{default:m}}}(aR);function oc(r,e){if(!r||!e||!r.length||!e.length)throw new Error("Bad alphabet");this.srcAlphabet=r,this.dstAlphabet=e}oc.prototype.convert=function(r){var e,t,i,a={},s=this.srcAlphabet.length,o=this.dstAlphabet.length,l=r.length,p=typeof r=="string"?"":[];if(!this.isValid(r))throw new Error('Number "'+r+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return r;for(e=0;e<l;e++)a[e]=this.srcAlphabet.indexOf(r[e]);do{for(t=0,i=0,e=0;e<l;e++)t=t*s+a[e],t>=o?(a[i++]=parseInt(t/o,10),t=t%o):i>0&&(a[i++]=0);l=i,p=this.dstAlphabet.slice(t,t+1).concat(p)}while(i!==0);return p},oc.prototype.isValid=function(r){for(var e=0;e<r.length;++e)if(this.srcAlphabet.indexOf(r[e])===-1)return!1;return!0};var tC=oc,nC=tC;function aa(r,e){var t=new nC(r,e);return function(i){return t.convert(i)}}aa.BIN="01",aa.OCT="01234567",aa.DEC="0123456789",aa.HEX="0123456789abcdef";var rC=aa;const{v4:lc,validate:iC}=aR,Gs=rC,cc={cookieBase90:"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+-./:<=>?@[]^_`{|}~",flickrBase58:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",uuid25Base36:"0123456789abcdefghijklmnopqrstuvwxyz"},aC={consistentLength:!0};let dc;const fR=(r,e,t)=>{const i=e(r.toLowerCase().replace(/-/g,""));return!t||!t.consistentLength?i:i.padStart(t.shortIdLength,t.paddingChar)},mR=(r,e)=>{const i=e(r).padStart(32,"0").match(/(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})/);return[i[1],i[2],i[3],i[4],i[5]].join("-")},sC=r=>Math.ceil(Math.log(2**128)/Math.log(r));var oC=(()=>{const r=(e,t)=>{const i=e||cc.flickrBase58,a={...aC,...t};if([...new Set(Array.from(i))].length!==i.length)throw new Error("The provided Alphabet has duplicate characters resulting in unreliable results");const s=sC(i.length),o={shortIdLength:s,consistentLength:a.consistentLength,paddingChar:i[0]},l=Gs(Gs.HEX,i),p=Gs(i,Gs.HEX),y=()=>fR(lc(),l,o),m={alphabet:i,fromUUID:R=>fR(R,l,o),maxLength:s,generate:y,new:y,toUUID:R=>mR(R,p),uuid:lc,validate:(R,g=!1)=>{if(!R||typeof R!="string")return!1;const D=a.consistentLength?R.length===s:R.length<=s,A=R.split("").every(I=>i.includes(I));return g===!1?D&&A:D&&A&&iC(mR(R,p))}};return Object.freeze(m),m};return r.constants=cc,r.uuid=lc,r.generate=()=>(dc||(dc=r(cc.flickrBase58).generate),dc()),r})();const $s=iS(oC);function TR(){return $s().uuid()}function ER(r){return r.rangeStart+Math.random()}function bR(r){const e=r.rangeEnd;return Math.random()*e}function RR(r){const e=r.rangeStart,t=r.rangeEnd;return Math.random()*(t-e)+e}function vR(r){return r.rangeStart&&r.rangeEnd?RR(r):r.rangeStart?ER(r):r.rangeEnd?bR(r):Math.random()}function gR(r){const e=r.rangeStart;return Math.random().toString(36).substring(e)}function IR(r){const e=r.rangeEnd;return Math.random().toString(36).substring(0,e)}function DR(r){const e=r.rangeStart,t=r.rangeEnd;return Math.random().toString(36).substring(e,t)}function PR(r){return r.rangeStart&&r.rangeEnd?DR(r):r.rangeStart?gR(r):r.rangeEnd?IR(r):Math.random().toString(36)}function AR(r){return Math.random()>=.5}function lC(r){if(!r||!r.autogeneration)return null;switch(r.autogeneration.type){case We.CurrentDateAndTime:if(r.name===P.Date)return new Date;case We.Random:{if(r.name===P.Date)return iR(r.autogeneration);if(r.name===P.Number)return vR(r.autogeneration);if(r.name===P.String)return PR(r.autogeneration);if(r.name===P.Boolean)return AR(r.autogeneration)}case We.Unique:if(r.name===P.UUID)return TR();default:throw new Error(`Generating a ${r.autogeneration.type} value for a ${r.name} is not supported`)}}const H="e7eb5382-3d99-44fd-972a-b8b1e819f6be",uc="global-user-variable-id",OR="last-executed-timestamp-variable-id",cC={id:"alternative-relational-database-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-identifier-property-data-type-id",entityType:n.DataType},dC={id:"alternative-relational-database-entity-identifier-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-identifier-property-id",entityType:n.Property},uC={like:!1,inferred:!1,id:"alternative-relational-database-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"alternative-relational-database-entity-identifier-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:null,parent:cC,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:dC},Fs={id:"alternative-relational-database-entity-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},pC={hidden:!1,required:!0,id:"alternative-relational-database-entity-identifier-property-id",name:"Identifier name",version:1,type:n.Property,private:!1,abstract:!1,implements:cs,static:!0,index:0,dataType:uC,description:"The name of the main database inside of the server instance where the data will be stored.",parent:Fs};n.GenericReference,n.DataType;const yC={id:"alternative-relational-database-entity-username-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-username-property-id",entityType:n.Property},hC={like:!1,inferred:!1,id:"alternative-relational-database-entity-username-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:yC},fC={hidden:!1,required:!0,id:"alternative-relational-database-entity-username-property-id",name:"Username",version:1,type:n.Property,private:!1,abstract:!1,implements:ds,static:!0,index:1,dataType:hC,description:"The username that will be used to connect to the database.",parent:Fs};n.GenericReference,n.DataType;const mC={id:"alternative-relational-database-entity-password-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-password-property-id",entityType:n.Property},TC={like:!1,inferred:!1,id:"alternative-relational-database-entity-password-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:mC},EC={hidden:!1,required:!0,id:"alternative-relational-database-entity-password-property-id",name:"Password",version:1,type:n.Property,private:!1,abstract:!1,implements:us,static:!0,index:2,dataType:TC,description:"The password that will be used to connect to the database.",parent:Fs},bC={id:"alternative-relational-database-entity-min-size-property-data-type-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-min-size-property-data-type-id",entityType:n.DataType},RC={id:"alternative-relational-database-entity-min-size-property-ref-id",type:n.GenericReference,entityId:"alternative-relational-database-entity-min-size-property-id",entityType:n.Property},vC={like:!1,inferred:!1,id:"alternative-relational-database-entity-min-size-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"alternative-relational-database-entity-min-size-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:6,parent:bC,autogeneration:null,valueAsType:null},parent:RC},gC={hidden:!1,required:!0,id:"alternative-relational-database-entity-min-size-property-id",name:"Minimum GB size",version:1,type:n.Property,private:!1,abstract:!1,implements:ps,static:!0,index:3,dataType:vC,description:"The minimum size of the database in GB.",parent:Fs},IC={id:"alternative-relational-database-entity-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},SR={id:"alternative-relational-database-entity-id",type:n.CustomEntity,version:1,name:"Alternative relational Database",description:"A database that permanently stores the persisted entities attached to it.",abstract:!1,static:!0,properties:[pC,fC,EC,gC],methods:[],abstractMethods:[],extends:[],implements:[Mn],x:0,y:0,parent:IC},DC={id:"animal-prototype-database-property-ref-id",type:n.GenericReference,entityId:"animal-prototype-database-property-id",entityType:n.Property},PC={id:"animal-prototype-database-property-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"animal-prototype-database-property-data-type-default-value-id",entityType:n.DataType},AC={like:!1,inferred:!1,id:"animal-prototype-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:Mn,asType:!1,defaultValue:{id:"animal-prototype-database-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.EntityTemplate,valueAsType:SR,autogeneration:null,parent:PC},parent:DC},OC={id:"animal-prototype-database-property-parent-ref-id",type:n.GenericReference,entityId:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",entityType:n.CustomEntity},SC={hidden:!1,required:!0,id:"animal-prototype-database-property-id",name:"Database",version:1,type:n.Property,private:!1,abstract:!1,implements:Ui,static:!0,index:0,dataType:AC,description:"The database that the entity belongs to.",parent:OC},CC={type:n.GenericReference,id:"291e4d4f-01d8-40a0-90dc-5f1ac6636e9b",entityType:n.Property,entityId:"5cb617b0-92be-4dbe-a007-49093368d94f"},BC={like:!1,inferred:!1,id:"c1930577-9e79-48a6-8905-be24611015c1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:CC},wC={type:n.GenericReference,id:"e2b9e456-f2b3-4dc7-85a2-fbb68ed0c9c7",entityType:n.CustomEntity,entityId:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},_C={hidden:!1,required:!0,type:n.Property,id:"5cb617b0-92be-4dbe-a007-49093368d94f",version:1,name:"Name",description:"The name of the animal",implements:null,static:!1,private:!1,index:0,dataType:BC,abstract:!1,parent:wC},NC={type:n.GenericReference,id:"abc565de-4c83-4936-bc48-4013bef213b8",entityType:n.Project,entityId:H},MC={type:n.CustomEntity,id:"83eaa847-e62b-4192-84fb-3d8d6f5ea970",version:1,name:"Animal",description:"A living creature that is not human",abstract:!1,static:!1,abstractMethods:[],properties:[SC,_C],methods:[],extends:[],implements:[ke],x:0,y:0,parent:NC},VC={id:"default-relational-database-entity-identifier-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-identifier-property-data-type-id",entityType:n.DataType},LC={id:"default-relational-database-entity-identifier-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-identifier-property-id",entityType:n.Property},GC={like:!1,inferred:!1,id:"default-relational-database-entity-identifier-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"default-relational-database-entity-identifier-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"main",parent:VC,autogeneration:{type:We.Unique,rangeStart:null,rangeEnd:null},valueAsType:null},parent:LC},ai={id:"default-relational-database-entity-ref-id",type:n.GenericReference,entityId:L.PERSISTED_ENTITY,entityType:n.BuiltInBaseEntity},$C={hidden:!1,required:!0,id:"default-relational-database-entity-identifier-property-id",name:"Identifier name",version:1,type:n.Property,private:!1,abstract:!1,implements:cs,static:!0,index:0,dataType:GC,description:"The name of the main database inside of the server instance where the data will be stored.",parent:ai};n.GenericReference,n.DataType;const FC={id:"default-relational-database-entity-username-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-username-property-id",entityType:n.Property},UC={id:"default-relational-database-entity-username-property-default-value-parent-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-username-property-data-type-id",entityType:n.DataType},xC={like:!1,inferred:!1,id:"default-relational-database-entity-username-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"default-relational-database-entity-username-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"root",parent:UC,autogeneration:null,valueAsType:null},parent:FC},jC={hidden:!1,required:!0,id:"default-relational-database-entity-username-property-id",name:"Username",version:1,type:n.Property,private:!1,abstract:!1,implements:ds,static:!0,index:1,dataType:xC,description:"The username that will be used to connect to the database.",parent:ai};n.GenericReference,n.DataType;const kC={id:"default-relational-database-entity-password-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-password-property-id",entityType:n.Property},qC={id:"default-relational-database-entity-password-property-default-value-parent-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-password-property-data-type-id",entityType:n.DataType},JC={like:!1,inferred:!1,id:"default-relational-database-entity-password-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"default-relational-database-entity-password-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"password",parent:qC,autogeneration:null,valueAsType:null},parent:kC},WC={hidden:!1,required:!0,id:"default-relational-database-entity-password-property-id",name:"Password",version:1,type:n.Property,private:!1,abstract:!1,implements:us,static:!0,index:2,dataType:JC,description:"The password that will be used to connect to the database.",parent:ai},HC={id:"default-relational-database-entity-min-size-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-min-size-property-data-type-id",entityType:n.DataType},YC={id:"default-relational-database-entity-min-size-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-min-size-property-id",entityType:n.Property},zC={like:!1,inferred:!1,id:"default-relational-database-entity-min-size-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"default-relational-database-entity-min-size-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:6,parent:HC,autogeneration:null,valueAsType:null},parent:YC},ZC={hidden:!1,required:!0,id:"default-relational-database-entity-min-size-property-id",name:"Minimum GB size",version:1,type:n.Property,private:!1,abstract:!1,implements:ps,static:!0,index:3,dataType:zC,description:"The minimum size of the database in GB.",parent:ai},KC={id:"default-relational-database-entity-default-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-default-property-data-type-id",entityType:n.DataType},XC={id:"default-relational-database-entity-default-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-default-property-id",entityType:n.Property},QC={like:!1,inferred:!1,id:"default-relational-database-entity-default-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"default-relational-database-entity-default-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!0,parent:KC,autogeneration:null,valueAsType:null},parent:XC},eB={hidden:!0,required:!0,id:"default-relational-database-entity-default-property-id",name:"Default",version:1,type:n.Property,private:!1,abstract:!1,implements:Ul,static:!0,index:4,dataType:QC,description:"Whether this database is automatically picked by other entities as the default database.",parent:ai},tB={id:"default-relational-database-entity-autoscaling-property-data-type-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-autoscaling-property-data-type-id",entityType:n.DataType},nB={id:"default-relational-database-entity-autoscaling-property-ref-id",type:n.GenericReference,entityId:"default-relational-database-entity-autoscaling-property-id",entityType:n.Property},rB={like:!1,inferred:!1,id:"default-relational-database-entity-autoscaling-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:X,asType:!1,defaultValue:{id:"default-relational-database-entity-autoscaling-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.Boolean,value:!0,parent:tB,autogeneration:null,valueAsType:null},parent:nB},iB={hidden:!1,required:!0,id:"default-relational-database-entity-autoscaling-property-id",name:"Auto-scaling",version:1,type:n.Property,private:!1,abstract:!1,implements:xl,static:!0,index:5,dataType:rB,description:"If true, this database will automatically scale up or down in memory size, based on the usage.s",parent:ai},aB={id:"default-relational-database-entity-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},pc={id:"default-relational-database-entity-id",type:n.CustomEntity,version:1,name:"Relational Database",description:"A database that permanently stores the persisted entities attached to it.",abstract:!1,static:!0,properties:[eB,iB,$C,jC,WC,ZC],methods:[],abstractMethods:[],extends:[],implements:[Mn],x:0,y:0,parent:aB},sB={id:"user-prototype-database-property-data-type-ref-id",type:n.GenericReference,entityId:"user-prototype-database-property-data-type-id",entityType:n.DataType},oB={id:"user-prototype-database-property-ref-id",type:n.GenericReference,entityId:"user-prototype-database-property-id",entityType:n.Property},lB={like:!1,inferred:!1,id:"user-prototype-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:Mn,asType:!1,defaultValue:{id:"user-prototype-database-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.EntityTemplate,valueAsType:pc,autogeneration:null,parent:sB},parent:oB},cB={id:"user-prototype-database-property-parent-ref-id",type:n.GenericReference,entityId:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",entityType:n.CustomEntity},dB={hidden:!1,required:!0,id:"user-prototype-database-property-id",name:"Database",version:1,type:n.Property,private:!1,abstract:!1,implements:Ui,static:!0,index:0,dataType:lB,description:"The database that the entity belongs to.",parent:cB},uB={type:n.GenericReference,id:"user-prototype-parent-ref-id",entityType:n.Project,entityId:H},yc={type:n.CustomEntity,id:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",version:1,name:"User",description:"A user of the application",implements:[ke],abstract:!1,static:!1,abstractMethods:[],extends:[],properties:[dB],methods:[],x:0,y:0,parent:uB},pB={type:n.GenericReference,id:"person-date-of-birth-property-data-type-parent-ref-id",entityType:n.Property,entityId:"person-date-of-birth-property-id"},yB={like:!1,inferred:!1,id:"person-date-of-birth-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:pn,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:pB},hB={type:n.GenericReference,id:"person-date-of-birth-property-parent-ref-id",entityType:n.CustomEntity,entityId:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},fB={hidden:!1,required:!0,type:n.Property,id:"person-date-of-birth-property-id",version:1,name:"Date of birth",description:"The date of birth of the person",implements:null,private:!1,static:!1,index:0,dataType:yB,abstract:!1,parent:hB},mB={type:n.GenericReference,id:"a2867827-2f8e-4c25-b18b-d91857d7f24e",entityType:n.Property,entityId:"cacfec92-46c3-4fca-a1d9-fd1ba94d78c7"},TB={like:!1,inferred:!1,id:"1d49f41b-17b9-4f48-87aa-3ce43498e5a9",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:mB},EB={type:n.GenericReference,id:"01cbe760-40a9-4f49-8e3d-194d2f57cb1e",entityType:n.CustomEntity,entityId:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},bB={hidden:!1,required:!0,type:n.Property,id:"cacfec92-46c3-4fca-a1d9-fd1ba94d78c7",version:1,name:"Name",description:"The name of the person",implements:null,private:!1,static:!1,index:0,dataType:TB,abstract:!1,parent:EB},RB={type:n.GenericReference,id:"3542b22a-3a2f-41c6-876e-24c885572498",entityType:n.Project,entityId:H},ht={type:n.CustomEntity,id:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416",version:1,name:"Person",description:"A entity to store more information about a person than the user entity does, to split the responsibilities and keep it the logic clean.",properties:[bB,fB],abstract:!1,static:!1,abstractMethods:[],methods:[],implements:[],extends:[yc],x:0,y:0,parent:RB},vB={type:n.GenericReference,id:"b59c80b7-b2e9-41e9-abcd-7c5652835efc",entityType:n.FunctionDeclaration,entityId:"36f29f96-c001-4b9a-b49c-83eff406a060"},gB={type:n.GenericReference,id:"1190b5a2-f25e-46db-884d-8a3dd1a44d94",entityType:n.ReturnStatement,entityId:"3ebc4342-c9e8-42e7-a61c-7937081e1d2e"},IB={type:n.GenericReference,id:"36c63126-7814-496f-a6cc-48662c2aabae",entityType:n.ArgumentDeclaration,entityId:"500dee3a-3435-4453-9699-0d053f646523"},DB={type:n.GenericReference,id:"c567e55d-ec12-4e4e-958e-f07522892b4b",entityType:n.ReturnDeclaration,entityId:"9e070523-7e07-4100-8637-960a187f5f14"},PB={like:!1,inferred:!1,id:"3973c5a1-f0d8-49a0-a9a9-a0009bf3f0d8",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:DB},hc={isError:!1,id:"9e070523-7e07-4100-8637-960a187f5f14",type:n.ReturnDeclaration,version:1,name:"Output Account Owner",description:null,dataType:PB,implements:null,readsValue:IB,required:!0,index:0,parent:gB},AB={type:n.GenericReference,id:"567d923c-20da-4c1e-956d-962ea30c6d0b",entityType:n.FunctionDeclaration,entityId:"36f29f96-c001-4b9a-b49c-83eff406a060"},OB={type:n.GenericReference,id:"da85e620-59f3-42ab-88c8-b38d33c2c833",entityType:n.FunctionDeclaration,entityId:"36f29f96-c001-4b9a-b49c-83eff406a060"},CR={type:n.ReturnStatement,id:"3ebc4342-c9e8-42e7-a61c-7937081e1d2e",version:1,outputs:[hc],calledByError:[],calledByEntry:[AB],calledBySuccess:[],throws:null,x:0,y:0,parent:OB},SB={type:n.GenericReference,id:"1c806bb7-4c25-4bad-963b-93dfbb7c8304",entityType:n.ArgumentDeclaration,entityId:"500dee3a-3435-4453-9699-0d053f646523"},CB={like:!1,inferred:!1,id:"d90fcc18-642b-433c-8fcb-4094b9031cd5",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:SB},BR={id:"500dee3a-3435-4453-9699-0d053f646523",type:n.ArgumentDeclaration,version:1,name:"New Account Owner",description:null,dataType:CB,implements:null,required:!0,writesValues:[hc],index:0,parent:vB},BB={type:n.GenericReference,id:"83dceb60-f3c4-4085-824c-85f2003bfd27",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},wR={type:n.FunctionDeclaration,id:"36f29f96-c001-4b9a-b49c-83eff406a060",version:1,name:"Change owner of bank account",description:null,implements:null,inputs:[BR],calls:[CR],returnStatements:[CR],index:0,collapsed:!1,private:!1,x:0,y:0,parent:BB},wB={type:n.GenericReference,id:"adbaf302-ffa9-49b6-a3c6-83f9a75068e3",entityType:n.VariableDeclaration,entityId:"8e36a476-766e-4cc2-a8a7-27a07dfb5a4b"},_B={like:!1,inferred:!1,id:"79ee04aa-1ba4-4ae9-a406-ed45e5b03f7f",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:wB},NB={type:n.GenericReference,id:"55e212d1-f0ec-4bb6-acbe-60f741367daf",entityType:n.OutputMap,entityId:"dc9ddb8f-02a0-4a43-aea6-270ec7b7f8a4"},MB={type:n.GenericReference,id:"944e1171-3d9b-4559-9386-1d4974b15962",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},VB={id:"8e36a476-766e-4cc2-a8a7-27a07dfb5a4b",type:n.VariableDeclaration,version:1,name:"Output Account Owner",description:null,dataType:_B,readsValue:NB,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:MB},LB={type:n.GenericReference,id:"b89ebc83-52cf-4447-a5ae-62241f713079",entityType:n.FunctionCall,entityId:"78f6dba8-bed8-44cd-8b0f-6dcc787d1e1e"},GB={id:"dc9ddb8f-02a0-4a43-aea6-270ec7b7f8a4",type:n.OutputMap,version:1,declaration:hc,writesValues:[VB],index:0,parent:LB},$B={type:n.GenericReference,id:"c1b9e125-1aad-48b7-9687-95c57a6bc10d",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},FB={type:n.GenericReference,id:"d2deaa02-e164-4425-905c-6dee47eb4eac",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},UB={type:n.GenericReference,id:"1109a655-ac62-4110-a933-42a72106f4f0",entityType:n.VariableDeclaration,entityId:"8bea6986-8da2-487b-905d-2fb962db6728"},xB={like:!1,inferred:!1,id:"7d9a1307-512e-42ec-9797-2f7229796b97",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:UB},jB={type:n.GenericReference,id:"bb61ebf7-57b3-4d14-905d-82ec907205b5",entityType:n.ArgumentDeclaration,entityId:"38f6b236-98ac-47b0-ab9c-d2f9610137b9"},kB={type:n.GenericReference,id:"6b8c7bf2-9fc8-4ea4-9ec0-f41679d513b1",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},qB={type:n.GenericReference,id:"6163d1a1-7a94-49b1-95bb-aecd8d6d335c",entityType:n.FunctionCall,entityId:"78f6dba8-bed8-44cd-8b0f-6dcc787d1e1e"},JB={type:n.GenericReference,id:"1f900f62-4bd2-4246-94aa-b8f5aad384fd",entityType:n.VariableDeclaration,entityId:"8bea6986-8da2-487b-905d-2fb962db6728"},_R={id:"be8538be-e6f9-4b94-9314-a546003ebaa0",type:n.InputMap,version:1,declaration:BR,name:null,description:null,readsValue:JB,defaultValue:null,index:0,parent:qB},WB={type:n.VariableDeclaration,id:"8bea6986-8da2-487b-905d-2fb962db6728",version:1,name:"Changed Account Owner",description:null,dataType:xB,readsValue:jB,writesValues:[_R],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:kB},HB={type:n.FunctionCall,id:"78f6dba8-bed8-44cd-8b0f-6dcc787d1e1e",version:1,declaration:wR,inputs:[_R],outputs:[GB],process:null,successCalls:[],errorCalls:[],calledByError:[],calledByEntry:[$B],calledBySuccess:[],parent:FB,error:null,x:0,y:0},YB={type:n.GenericReference,id:"2d47aba1-a918-46a7-8db7-78809928654a",entityType:n.ArgumentDeclaration,entityId:"38f6b236-98ac-47b0-ab9c-d2f9610137b9"},zB={like:!1,inferred:!1,id:"5583766c-e9a5-484c-8f43-f4b0a6a1876c",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:YB},ZB={type:n.GenericReference,id:"3e2a81e4-55b2-49f5-94eb-39135e95c3d7",entityType:n.FunctionDeclaration,entityId:"15ee556d-681f-47de-a31f-16d4ba73cc4e"},KB={id:"38f6b236-98ac-47b0-ab9c-d2f9610137b9",type:n.ArgumentDeclaration,version:1,description:null,name:"New Company Owner",dataType:zB,implements:null,required:!0,index:0,writesValues:[WB],parent:ZB},XB={type:n.GenericReference,id:"30291b01-1b94-4d03-b434-dec122c2bc7d",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},QB={type:n.FunctionDeclaration,id:"15ee556d-681f-47de-a31f-16d4ba73cc4e",version:1,description:null,name:"Change Account Owner",inputs:[KB],collapsed:!0,returnStatements:[],calls:[HB],private:!1,index:0,implements:null,x:0,y:0,parent:XB},ew={type:n.GenericReference,id:"72c7ac0a-886e-4e10-b7ed-2f5a819a0233",entityType:n.Property,entityId:"b8f4656a-2b77-43ab-af51-7c32ddede044"},tw={like:!1,inferred:!1,id:"c09dd282-73f6-4077-a467-b66db20b9fc6",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:ew},nw={type:n.GenericReference,id:"8a950024-512c-4580-81db-a705410aeb99",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},rw={hidden:!1,required:!0,type:n.Property,id:"b8f4656a-2b77-43ab-af51-7c32ddede044",version:1,name:"Account number",description:null,private:!0,implements:null,static:!1,index:0,dataType:tw,abstract:!1,parent:nw},iw={type:n.GenericReference,id:"b6704b6c-c3bd-49d0-8ebc-82d03e726cbb",entityType:n.Property,entityId:"733d06a6-b8c5-44f3-a1f7-a8c9bd9e44ea"},aw={like:!1,inferred:!1,id:"c03e0b0a-88ab-401a-8833-4806738bdc37",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:iw},sw={type:n.GenericReference,id:"1ef999a7-e9ed-406a-866e-e58277fc985b",entityType:n.CustomEntity,entityId:"506946aa-30da-48e6-918f-ffd9eac58813"},ow={hidden:!1,required:!0,type:n.Property,id:"733d06a6-b8c5-44f3-a1f7-a8c9bd9e44ea",version:1,description:null,name:"Account Owner",index:1,dataType:aw,implements:null,static:!1,private:!0,abstract:!1,parent:sw},lw={type:n.GenericReference,id:"d41d7f41-98b8-4f67-be92-c349fdda5156",entityType:n.Project,entityId:H},si={type:n.CustomEntity,id:"506946aa-30da-48e6-918f-ffd9eac58813",version:1,name:"Bank Account",description:null,abstract:!1,static:!1,abstractMethods:[],properties:[rw,ow],methods:[wR,QB],extends:[],implements:[ke],x:0,y:0,parent:lw},sa="bitcoin-api-response-id",NR="time-property-id",MR="disclaimer-property-id",VR="chart-name-property-id",LR="bpi-property-id",Us="bpi-entity-id",GR="usd-property-id",$R="gbp-property-id",FR="eur-property-id",oi="currency-entity-id",UR="currency-code-property-id",xR="currency-symbol-property-id",jR="currency-rate-property-id",kR="currency-description-property-id",qR="currency-rate-number-property-id",cw={type:n.GenericReference,id:"code-property-data-type-parent-ref-id",entityType:n.Property,entityId:UR},dw={like:!1,inferred:!1,id:"code-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,asType:!1,isNullable:!1,defaultValue:null,options:["USD","GBP","EUR"],constant:!1,parent:cw},uw={type:n.GenericReference,id:"code-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},pw={hidden:!1,required:!0,type:n.Property,id:UR,version:1,name:"code",description:null,dataType:dw,index:0,implements:null,static:!1,private:!1,abstract:!1,parent:uw},yw={type:n.GenericReference,id:"symbol-property-data-type-parent-ref-id",entityType:n.Property,entityId:xR},hw={like:!1,inferred:!1,id:"symbol-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,asType:!1,isNullable:!1,defaultValue:null,options:["&#36;","&pound;","&euro;"],constant:!1,parent:yw},fw={type:n.GenericReference,id:"symbol-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},mw={hidden:!1,required:!0,type:n.Property,id:xR,version:1,name:"symbol",description:null,index:0,dataType:hw,implements:null,static:!1,private:!1,abstract:!1,parent:fw},Tw={type:n.GenericReference,id:"rate-property-data-type-parent-ref-id",entityType:n.Property,entityId:jR},Ew={like:!1,inferred:!1,id:"rate-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Tw},bw={type:n.GenericReference,id:"rate-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},Rw={hidden:!1,required:!0,type:n.Property,id:jR,version:1,name:"rate",description:null,index:0,dataType:Ew,implements:null,static:!1,private:!1,abstract:!1,parent:bw},vw={type:n.GenericReference,id:"description-property-data-type-parent-ref-id",entityType:n.Property,entityId:kR},gw={like:!1,inferred:!1,id:"description-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:vw},Iw={type:n.GenericReference,id:"description-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},Dw={hidden:!1,required:!0,type:n.Property,id:kR,version:1,name:"description",description:null,dataType:gw,implements:null,static:!1,index:0,private:!1,abstract:!1,parent:Iw},Pw={type:n.GenericReference,id:"rate-number-property-data-type-parent-ref-id",entityType:n.Property,entityId:qR},Aw={like:!1,inferred:!1,id:"rate-number-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Pw},Ow={type:n.GenericReference,id:"rate-number-property-parent-ref-id",entityType:n.CustomEntity,entityId:oi},Sw={hidden:!1,required:!0,type:n.Property,id:qR,version:1,name:"rate_float",description:null,dataType:Aw,implements:null,static:!1,index:0,private:!1,abstract:!1,parent:Ow},Cw={type:n.GenericReference,id:"currency-prototype-parent-ref-id",entityType:n.Project,entityId:H},xs={type:n.CustomEntity,id:oi,version:1,name:"Currency",description:"This entity describes a currency in the Bitcoin Price Index.",properties:[pw,mw,Rw,Dw,Sw],static:!1,abstract:!1,abstractMethods:[],methods:[],extends:[],implements:[],x:0,y:0,parent:Cw},Bw={type:n.GenericReference,id:"usd-property-data-type-parent-ref-id",entityType:n.Property,entityId:GR},ww={like:!1,inferred:!1,id:"usd-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xs,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Bw},_w={type:n.GenericReference,id:"usd-property-parent-ref-id",entityType:n.CustomEntity,entityId:Us},Nw={hidden:!1,required:!0,id:GR,type:n.Property,version:1,name:"USD",description:null,index:0,dataType:ww,implements:null,static:!1,private:!1,abstract:!1,parent:_w},Mw={type:n.GenericReference,id:"gbp-property-data-type-parent-ref-id",entityType:n.Property,entityId:$R},Vw={like:!1,inferred:!1,id:"gbp-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xs,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Mw},Lw={type:n.GenericReference,id:"gbp-property-parent-ref-id",entityType:n.CustomEntity,entityId:Us},Gw={hidden:!1,required:!0,id:$R,type:n.Property,version:1,name:"GBP",description:null,index:0,dataType:Vw,implements:null,static:!1,private:!1,abstract:!1,parent:Lw},$w={type:n.GenericReference,id:"eur-property-data-type-parent-ref-id",entityType:n.Property,entityId:FR},Fw={like:!1,inferred:!1,id:"eur-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:xs,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:$w},Uw={type:n.GenericReference,id:"eur-property-parent-ref-id",entityType:n.CustomEntity,entityId:Us},xw={hidden:!1,required:!0,id:FR,type:n.Property,version:1,name:"EUR",description:null,implements:null,static:!1,index:0,dataType:Fw,private:!1,abstract:!1,parent:Uw},jw={type:n.GenericReference,id:"bpi-prototype-parent-ref-id",entityType:n.Project,entityId:H},JR={type:n.CustomEntity,id:Us,version:1,name:"BPI",description:"The Bitcoin Price Index",properties:[Nw,Gw,xw],abstract:!1,static:!1,abstractMethods:[],methods:[],extends:[],implements:[],x:0,y:0,parent:jw},kw={type:n.GenericReference,id:"time-property-data-type-parent-ref-id",entityType:n.Property,entityId:NR},qw={like:!1,inferred:!1,id:"time-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:el,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:kw},Jw={type:n.GenericReference,id:"time-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},Ww={hidden:!1,required:!0,type:n.Property,id:NR,version:1,name:"time",description:null,index:0,dataType:qw,implements:null,static:!1,private:!1,abstract:!1,parent:Jw},Hw={type:n.GenericReference,id:"disclaimer-property-data-type-parent-ref-id",entityType:n.Property,entityId:MR},Yw={like:!1,inferred:!1,id:"disclaimer-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Hw},zw={type:n.GenericReference,id:"disclaimer-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},Zw={hidden:!1,required:!0,type:n.Property,id:MR,version:1,name:"disclaimer",description:null,index:0,dataType:Yw,implements:null,static:!1,private:!1,abstract:!1,parent:zw},Kw={type:n.GenericReference,id:"chart-name-property-data-type-parent-ref-id",entityType:n.Property,entityId:VR},Xw={like:!1,inferred:!1,id:"chart-name-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:Kw},Qw={type:n.GenericReference,id:"chart-name-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},e_={hidden:!1,required:!0,type:n.Property,id:VR,version:1,name:"chartName",description:null,index:0,dataType:Xw,implements:null,static:!1,private:!1,abstract:!1,parent:Qw},t_={type:n.GenericReference,id:"bpi-property-data-type-parent-ref-id",entityType:n.Property,entityId:LR},n_={like:!1,inferred:!1,id:"bpi-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:JR,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:t_},r_={type:n.GenericReference,id:"bpi-property-parent-ref-id",entityType:n.CustomEntity,entityId:sa},i_={hidden:!1,required:!0,type:n.Property,id:LR,version:1,name:"bpi",description:null,implements:null,index:0,dataType:n_,static:!1,private:!1,abstract:!1,parent:r_},a_={type:n.GenericReference,id:"bitcoin-api-response-parent-ref-id",entityType:n.Project,entityId:H},WR={type:n.CustomEntity,id:sa,version:1,name:"Bitcoin API Response type",description:"The type of the data structure response from the Bitcoin API call",properties:[Ww,Zw,e_,i_],abstract:!1,static:!1,abstractMethods:[],methods:[],extends:[],implements:[],x:0,y:0,parent:a_},s_={type:n.GenericReference,id:"eefa0147-f873-484b-b4f3-9e6493aab183",entityType:n.ArgumentDeclaration,entityId:"f2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},o_={like:!1,inferred:!1,id:"b9f35112-dcb2-4b7c-8fb9-f196b3fa37f9",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:s_},l_={type:n.GenericReference,id:"128770d6-5e3a-4aff-bca0-ad1f32ebefa8",entityType:n.ReturnStatement,entityId:"e4e05975-c277-471a-b869-f0aed316045c"},c_={type:n.GenericReference,id:"0be84bf9-6421-42b9-980f-6a03f30cb809",entityType:n.ReturnDeclaration,entityId:"a1ec31f0-25ca-42ac-a4c4-c9ec2255f55b"},d_={like:!1,inferred:!1,id:"43daa02a-237b-4b7c-a6e9-2b8c167f6e22",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:c_},u_={type:n.GenericReference,id:"ad380383-4a47-43da-968e-75a2d603b230",entityType:n.ArgumentDeclaration,entityId:"f2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},HR={isError:!1,id:"a1ec31f0-25ca-42ac-a4c4-c9ec2255f55b",type:n.ReturnDeclaration,version:1,name:"New Company Owner",description:"The new owner of the company",implements:null,dataType:d_,readsValue:u_,required:!0,index:0,parent:l_},p_={type:n.GenericReference,id:"4f24dc27-59a1-49bf-abcc-7d72b00926e4",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},y_={id:"f2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a",type:n.ArgumentDeclaration,version:1,name:"New Company Owner",description:null,implements:null,dataType:o_,writesValues:[HR],required:!0,index:0,parent:p_},h_={type:n.GenericReference,id:"5c9a02f0-d2cf-4efc-828e-467f33a74dd3",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},f_={type:n.GenericReference,id:"2ff8f3da-e0c5-4f0f-b688-2c051c588786",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},m_={type:n.GenericReference,id:"195ae28c-159b-42de-80b1-2ebb8be3619f",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},YR={type:n.ReturnStatement,id:"e4e05975-c277-471a-b869-f0aed316045c",version:1,outputs:[HR],calledByError:[],calledByEntry:[f_],calledBySuccess:[],throws:null,x:0,y:0,parent:m_},T_={type:n.FunctionDeclaration,id:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4",version:1,name:"Change owner of company",description:"Change the owner of the company to a new person",inputs:[y_],calls:[YR],index:0,collapsed:!1,implements:null,returnStatements:[YR],private:!1,x:0,y:0,parent:h_},E_={type:n.GenericReference,id:"e691026f-6db0-43ec-93cd-805ae7d713e3",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},b_={type:n.GenericReference,id:"29c4e3e0-1b66-4075-b559-45b27c5cf356",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},R_={type:n.GenericReference,id:"b1289358-b185-455d-8f58-7791b15cd52a",entityType:n.ReturnStatement,entityId:"9690cd1d-ea35-4e83-823d-0c7310265fee"},v_={type:n.GenericReference,id:"d847bb49-8789-4550-bb2d-e2d551993b28",entityType:n.VariableDeclaration,entityId:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a"},g_={type:n.GenericReference,id:"06535500-c37c-4915-8398-1d4e184fa5e7",entityType:n.ReturnDeclaration,entityId:"e7a35277-a0c4-46d5-aca2-bddd0c26e931"},I_={like:!1,inferred:!1,id:"d358dd91-35f7-4095-b728-3fb3c71dbc05",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:_n,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:g_},fc={isError:!1,id:"e7a35277-a0c4-46d5-aca2-bddd0c26e931",type:n.ReturnDeclaration,version:1,name:"Is name registered",description:"Whether the company name is already registered",dataType:I_,implements:null,readsValue:v_,required:!0,index:0,parent:R_},D_={type:n.GenericReference,id:"gov-company-registry-return-statement-called-by-success-ref-id",entityType:n.VariableDeclaration,entityId:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a"},mc={type:n.ReturnStatement,id:"9690cd1d-ea35-4e83-823d-0c7310265fee",version:1,outputs:[fc],calledByError:[],calledByEntry:[],calledBySuccess:[E_,D_],throws:null,x:0,y:0,parent:b_},P_={type:n.GenericReference,id:"b3126414-4c9b-495f-901e-59f5073c8d67",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},A_={type:n.GenericReference,id:"35115c48-618b-411b-a290-d746d22fdd10",entityType:n.VariableDeclaration,entityId:"83e12ebb-c958-4dee-b750-8ab9930f0f4e"},zR={id:"a0e7b4e5-2f5f-4d4c-8f5c-1e1f1e1a1b1a",type:n.InputMap,version:1,declaration:El,name:null,description:null,readsValue:A_,defaultValue:null,parent:P_,index:2},O_={type:n.GenericReference,id:"14f46eae-04a5-47d1-9c7f-28fb09b84d1d",entityType:n.VariableDeclaration,entityId:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a"},S_={like:!1,inferred:!1,id:"990bd5d1-07ea-4253-acc1-d03bedd22a38",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:_n,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:O_},C_={type:n.GenericReference,id:"e4c3542a-8fb0-4b72-8d6e-3fdff812dd67",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},B_={type:n.GenericReference,id:"825f9f60-22a8-4cc6-9055-d7333f8e92f4",entityType:n.OutputMap,entityId:"8f30d787-9459-4d8d-98a2-b46fbc2006d5"},w_={type:n.GenericReference,id:"is-company-name-registered-var-called-by-ref",entityType:n.Operation,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},ZR={type:n.VariableDeclaration,id:"e5a8b6d0-0e6f-4e9a-9b1e-8a2b5c7f0d5a",version:1,name:"Is name registered",description:"Whether the company name is registered with the government company registry",dataType:S_,readsValue:B_,writesValues:[fc],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[w_],successCalls:[mc],errorCalls:[],internalCalls:[],x:0,y:0,parent:C_},__={type:n.GenericReference,id:"1aba021e-48ef-44ac-93d0-eaecac5895da",entityType:n.InputMap,entityId:"c3c8d6c1-3e0d-4e6c-9f9c-6b8c7d7f8e9a"},N_={type:n.GenericReference,id:"dffae7e0-0a5c-4c14-8ed2-8d680b4c4c86",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},M_={type:n.InputMap,id:"c3c8d6c1-3e0d-4e6c-9f9c-6b8c7d7f8e9a",version:1,declaration:Za,name:null,description:null,readsValue:null,defaultValue:{id:"gov-http-request-url-argument-default-value-id",type:n.PrimitiveValue,version:1,value:"https://api.publicapis.org/entries",name:P.String,valueAsType:null,parent:__,autogeneration:null},index:1,parent:N_},V_={type:n.GenericReference,id:"64ae61f5-ace7-401b-926d-25f852daa60e",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},L_={id:"8f30d787-9459-4d8d-98a2-b46fbc2006d5",type:n.OutputMap,version:1,declaration:ts,index:2,writesValues:[ZR],parent:V_},G_={type:n.GenericReference,id:"62a1a086-caea-4270-9c9f-a1695503e745",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},$_={id:"48cf7654-8f3e-4fcd-abc6-740876c310a0",type:n.InputMap,version:1,declaration:za,name:null,description:null,readsValue:null,index:0,defaultValue:null,parent:G_},F_={type:n.GenericReference,id:"b0c9c79f-f525-428d-99e7-087d3237ad62",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},U_={id:"2c1dc406-4b71-4023-87b2-abede3a111d2",type:n.InputMap,version:1,name:null,description:null,declaration:Ka,index:3,readsValue:null,defaultValue:null,parent:F_},x_={type:n.GenericReference,id:"9887d6c9-d75b-4c97-b722-e2e60945ea20",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},j_={id:"3fef94b2-0278-43ae-b0c5-bc7083f0a111",type:n.InputMap,version:1,declaration:Xa,name:null,description:null,readsValue:null,index:4,defaultValue:null,parent:x_},k_={type:n.GenericReference,id:"561275b6-5056-45d8-bf7d-8abaa4645593",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},q_={id:"3efe20a7-4d63-411e-89ef-63e277f48d66",type:n.OutputMap,version:1,declaration:es,index:1,writesValues:[],parent:k_},J_={type:n.GenericReference,id:"3170ccc2-13de-4bfc-802a-a643be41cd42",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},W_={id:"40d34323-d7e6-440a-8016-67c05a3b66dd",type:n.OutputMap,version:1,declaration:Qa,index:0,writesValues:[],parent:J_},H_={type:n.GenericReference,id:"7432fa82-f574-4c54-a8fa-4cc4376da3d5",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},Y_={type:n.GenericReference,id:"8f518502-9eea-462c-8753-8bc3bf3e29a9",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},z_={type:n.GenericReference,id:"123b8f18-79d9-4166-a5f6-78ec4b461680",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},Z_={type:n.GenericReference,id:"e691026f-6db0-43ec-93cd-805ae7d713e3",entityType:n.FunctionCall,entityId:"abb5d456-ee85-4800-bdd9-d409415f60d7"},K_={type:n.GenericReference,id:"a375eedf-4811-41aa-a998-4897c69c46b9",entityType:n.ReturnDeclaration,entityId:"024a9b77-c1cd-4b67-b3ba-1935046b590d"},X_={like:!1,inferred:!1,id:"767cc5ed-20ec-4fd1-89b1-c8d19daa87d1",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Xe,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:K_},Q_={type:n.GenericReference,id:"e64b0c23-129d-4d74-8ab4-eec60e1e5b9b",entityType:n.ReturnStatement,entityId:"ea444a9e-6a5b-4138-b81f-0d5618c3c6f3"},KR={isError:!0,id:"024a9b77-c1cd-4b67-b3ba-1935046b590d",type:n.ReturnDeclaration,version:1,name:"Error",description:"The error that occurred during the HTTP request to the government company registry",dataType:X_,implements:null,required:!0,readsValue:null,index:0,parent:Q_},eN={type:n.ReturnStatement,id:"ea444a9e-6a5b-4138-b81f-0d5618c3c6f3",version:1,outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[Z_],throws:KR,x:0,y:0,parent:z_},tN={type:n.GenericReference,id:"323814fb-9723-49ef-bbba-f882384f18e4",entityType:n.FunctionCall,entityId:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7"},nN={id:"2f63f7ba-0ff0-458a-92bc-65d1dd4df8c3",type:n.OutputMap,declaration:bl,version:1,writesValues:[KR],index:0,parentRelationType:Wr.Error,parent:tN},rN={type:n.Operation,id:"4eb96d0b-025b-4ed1-ae34-0cebbb07f1e7",version:1,declaration:Mi,inputs:[$_,M_,zR,U_,j_],outputs:[W_,q_,L_],process:null,calledByError:[],calledByEntry:[H_],calledBySuccess:[],successCalls:[mc,ZR],errorCalls:[eN],error:nN,x:0,y:0,parent:Y_},iN={type:n.GenericReference,id:"597b8aa2-f6f2-4f7d-bbb9-b703d02de96a",entityType:n.InputMap,entityId:"b0e7b4e5-2f5f-4d4c-8f5c-1e1f1e1a1b1a"},aN={type:n.GenericReference,id:"546d99b3-28c4-4186-93a0-ac53c1565e07",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},sN={id:"b0e7b4e5-2f5f-4d4c-8f5c-1e1f1e1a1b1a",type:n.InputMap,version:1,declaration:Wa,name:null,description:null,readsValue:null,defaultValue:{id:"base-query-string-map-default-value-id",type:n.PrimitiveValue,version:1,value:"?name=",name:P.String,parent:iN,valueAsType:null,autogeneration:null},index:0,parent:aN},oN={type:n.GenericReference,id:"6a56fb22-82e1-47c9-bf85-41c4e5986c74",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},lN={type:n.GenericReference,id:"191c6a6d-9bcb-441e-bf98-de0da96f5f3a",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},cN={type:n.GenericReference,id:"d8fcbb76-dae2-40cf-847a-02364721b387",entityType:n.VariableDeclaration,entityId:"83e12ebb-c958-4dee-b750-8ab9930f0f4e"},dN={like:!1,inferred:!1,id:"6a70c42b-024a-47c6-8a9d-af52be9c9b9a",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:cN},uN={type:n.GenericReference,id:"2282e2c0-ed9e-4c7b-86fc-1a364fa0fdb8",entityType:n.OutputMap,entityId:"f6c22cf8-63e4-4b2d-b649-b5ab884cf9a5"},pN={type:n.GenericReference,id:"assembled-query-string-called-by-ref",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},XR={type:n.VariableDeclaration,id:"83e12ebb-c958-4dee-b750-8ab9930f0f4e",version:1,name:"Query string",description:"The final, assembled query string that will be used in the HTTP request to the government company registry",dataType:dN,readsValue:uN,writesValues:[zR],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[pN],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:lN},yN={id:"f6c22cf8-63e4-4b2d-b649-b5ab884cf9a5",type:n.OutputMap,version:1,writesValues:[XR],declaration:_i,index:0,parent:oN},hN={type:n.GenericReference,id:"a1b48e7c-0301-4747-b4dd-b5af79956f7f",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},fN={type:n.GenericReference,id:"487c9235-be95-4c96-b9b5-2714b374a277",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},mN={type:n.GenericReference,id:"f6471f4f-b269-46fa-80ec-885e87a449c2",entityId:"a4106e8e-ec4f-4633-a636-09ae73135f69",entityType:n.ArgumentDeclaration},TN={type:n.GenericReference,id:"62b4afb0-6c21-4b0f-abd3-cebef7b17c28",entityType:n.Operation,entityId:"8f2094c0-e27e-465e-9280-112da0de9019"},QR={id:"08f36e2b-bad2-425c-8129-93560bec8488",version:1,type:n.InputMap,declaration:Ha,name:null,description:null,readsValue:mN,defaultValue:null,index:1,parent:TN},EN={type:n.Operation,id:"8f2094c0-e27e-465e-9280-112da0de9019",declaration:Ni,version:1,inputs:[QR,sN],outputs:[yN],process:null,calledByError:[],calledByEntry:[hN],calledBySuccess:[],successCalls:[XR],errorCalls:[],error:null,x:0,y:0,parent:fN},bN={type:n.GenericReference,id:"c2e0e9b4-aa46-4974-bf8a-886b737b12fb",entityType:n.ArgumentDeclaration,entityId:"a4106e8e-ec4f-4633-a636-09ae73135f69"},RN={like:!1,inferred:!1,id:"a4279518-3bf3-44b7-a2ac-65142ca37f1c",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:bN},vN={type:n.GenericReference,id:"dc273f24-164b-4943-82f9-589b237141e2",entityType:n.FunctionDeclaration,entityId:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d"},ev={id:"a4106e8e-ec4f-4633-a636-09ae73135f69",type:n.ArgumentDeclaration,version:1,name:"Company Name to check",description:"The name of the company to check in the government registry",dataType:RN,implements:null,required:!1,writesValues:[QR],index:0,parent:vN},gN={type:n.GenericReference,id:"2178a10c-1cc0-4dad-97c3-0941be6c9738",entityType:n.Project,entityId:H},tv={type:n.FunctionDeclaration,id:"e0f6e8a7-6e4b-4d0e-8a1a-6b4c1b0b7e9d",version:1,name:"Check Gov Company Registry availability",description:"Check whether the company name is already registered in the government company registry, or it is available for a new company to use.",inputs:[ev],calls:[EN,rN],returnStatements:[mc],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:gN},IN={type:n.GenericReference,id:"4d66c53c-f0f7-496a-9955-1e6c8533c5e0",entityType:n.Condition,entityId:"a8f4b0f2-5e5e-4e8f-9d7b-1b5b9b6e9a4b"},DN={type:n.GenericReference,id:"6fa0c8e0-d104-4b4d-a035-d4f6e0c49f09",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},PN={type:n.GenericReference,id:"146408d5-5336-4877-941a-777dd5871926",entityType:n.ArgumentDeclaration,entityId:"c6cf620c-1eee-4919-8578-1a0b6c088551"},AN={type:n.GenericReference,id:"34ae8f8c-548d-4654-984a-6f36affdaf49",entityType:n.FunctionCall,entityId:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},nv={id:"69b1215d-9ebf-4274-b9cb-d4a5888f5122",version:1,type:n.InputMap,declaration:ev,name:null,description:null,readsValue:PN,defaultValue:null,index:0,parent:AN},ON={type:n.GenericReference,id:"07540a94-dda1-40b3-8452-f209bdc87b88",entityType:n.FunctionCall,entityId:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},SN={type:n.GenericReference,id:"eaddf12a-a995-429e-90a0-13bf06efeb28",entityType:n.VariableDeclaration,entityId:"faaf3bf6-917d-40d7-aee6-5164f6646c4b"},CN={like:!1,inferred:!1,id:"7fdaf943-3ffb-48e0-b766-b86cc24090cf",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:_n,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:SN},BN={type:n.GenericReference,id:"030fb5c5-af4d-4c85-8cf0-e99edd50d2bd",entityType:n.OutputMap,entityId:"c1ec31f0-25ca-42ac-a4c4-c9ec2255f55b"},wN={type:n.GenericReference,id:"a8b618e9-c68c-48c1-8bd6-ef47c87d699e",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},_N={type:n.GenericReference,id:"is-company-name-valid-var-called-by-ref",entityType:n.FunctionCall,entityId:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a"},rv={type:n.VariableDeclaration,id:"faaf3bf6-917d-40d7-aee6-5164f6646c4b",version:1,name:"Is name valid",description:"Whether the company name is valid",dataType:CN,readsValue:BN,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[_N],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:wN},NN={id:"c1ec31f0-25ca-42ac-a4c4-c9ec2255f55b",type:n.OutputMap,version:1,declaration:fc,writesValues:[rv],index:0,parent:ON},MN={type:n.FunctionCall,id:"d2c2c3b0-5f3c-4d0d-9e4c-2d5a2c1f1e2a",version:1,declaration:tv,inputs:[nv],outputs:[NN],calledByError:[],calledByEntry:[],process:null,calledBySuccess:[IN],successCalls:[rv],errorCalls:[],error:null,x:0,y:0,parent:DN},VN={type:n.GenericReference,id:"9d0b87b4-bfed-4e02-9e84-6831c21feae2",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},LN={type:n.GenericReference,id:"74345f4f-e80d-48be-adff-d12fcea25bec",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},GN={type:n.GenericReference,id:"b39279ea-969a-4efb-a9ec-353bfd13db65",entityType:n.ArgumentDeclaration,entityId:"c6cf620c-1eee-4919-8578-1a0b6c088551"},$N={type:n.GenericReference,id:"549db613-f225-4c5b-9634-7d096717f0ff",entityType:n.Condition,entityId:"a8f4b0f2-5e5e-4e8f-9d7b-1b5b9b6e9a4b"},iv={id:"358e242c-7448-442e-ab8b-fd7fa119ea71",version:1,type:n.InputMap,declaration:cr.inputs[0],name:null,description:null,readsValue:GN,defaultValue:null,index:0,parent:$N},FN={type:n.Condition,id:"a8f4b0f2-5e5e-4e8f-9d7b-1b5b9b6e9a4b",version:1,declaration:cr,inputs:[iv],calledByError:[],calledByEntry:[VN],calledBySuccess:[],successCalls:[MN],errorCalls:[],x:0,y:0,parent:LN},UN={type:n.GenericReference,id:"43ba1e25-f805-488f-8ae8-c58bb6215b2f",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},xN={type:n.GenericReference,id:"eb091bed-507f-4a1e-93b5-7cd2fccfe002",entityType:n.VariableDeclaration,entityId:"9c928995-0dd5-4f97-9962-56b343bc8a45"},jN={like:!1,inferred:!1,id:"d64152ea-831f-4426-9506-a39bfa170513",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:si,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:xN},kN={type:n.GenericReference,id:"7e79c29f-f7bd-441a-a77e-c627604dae94",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},qN={type:n.GenericReference,id:"8995ce5f-d5cf-4341-a8b1-5c046cc78b89",entityType:n.ArgumentDeclaration,entityId:"7ed0f7bb-2df0-44e2-b0b3-0709dcca8071"},JN={type:n.GenericReference,id:"new-company-bank-account-var-decl-1-called-by-ref",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},av={type:n.VariableDeclaration,id:"9c928995-0dd5-4f97-9962-56b343bc8a45",version:1,name:"New bank account",description:"The new entity value representing the new bank account of the company",dataType:jN,readsValue:qN,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[JN],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:kN},WN={type:n.GenericReference,id:"9a4887bf-d50d-43e4-bdd5-a5262f65f04b",entityType:n.ArgumentDeclaration,entityId:"7ed0f7bb-2df0-44e2-b0b3-0709dcca8071"},HN={like:!1,inferred:!1,id:"ae148c06-3143-49e9-9614-c3aca3f6fa7b",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:si,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:WN},YN={id:"7ed0f7bb-2df0-44e2-b0b3-0709dcca8071",type:n.ArgumentDeclaration,version:1,name:"New bank account",description:"The new bank account of the company",dataType:HN,implements:null,required:!0,index:1,writesValues:[av],parent:UN},zN={type:n.GenericReference,id:"caec9cf8-3133-48d4-a390-114fa71b2933",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},ZN={type:n.GenericReference,id:"cebcbad8-ca87-4c4b-be8a-312293d49892",entityType:n.FunctionDeclaration,entityId:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84"},KN={type:n.GenericReference,id:"7b8ccfe5-f9cd-4776-a19b-80c689bbe3df",entityType:n.ArgumentDeclaration,entityId:"c6cf620c-1eee-4919-8578-1a0b6c088551"},XN={like:!1,inferred:!1,id:"2a6b4703-ac8d-4d25-8abd-48a115577fec",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:KN},QN={id:"c6cf620c-1eee-4919-8578-1a0b6c088551",type:n.ArgumentDeclaration,version:1,name:"New company name",description:null,dataType:XN,implements:null,required:!0,index:0,writesValues:[iv,nv],parent:ZN},eM={type:n.FunctionDeclaration,id:"183fd975-a5d3-4dff-8d6a-c62f5a4d5a84",version:1,name:"Company changed event",description:"The event that is triggered when a company is changed",returnStatements:[],collapsed:!1,inputs:[QN,YN],calls:[FN,av],index:1,private:!1,implements:null,x:0,y:0,parent:zN},tM={type:n.GenericReference,id:"employee-manager-property-data-type-entity-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},nM={type:n.GenericReference,id:"employee-manager-property-data-type-parent-ref-id",entityType:n.Property,entityId:"employee-manager-property-id"},rM={like:!1,inferred:!1,id:"employee-manager-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:tM,isList:!1,isNullable:!0,asType:!1,defaultValue:null,constant:!1,parent:nM},iM={type:n.GenericReference,id:"employee-manager-property-parent-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},aM={hidden:!1,required:!0,type:n.Property,id:"employee-manager-property-id",version:1,name:"Manager",description:"The manager of the employee",index:0,implements:null,private:!1,static:!1,dataType:rM,abstract:!1,parent:iM},sM={type:n.GenericReference,id:"employee-start-date-property-data-type-parent-ref-id",entityType:n.Property,entityId:"employee-start-date-property-id"},oM={like:!1,inferred:!1,id:"employee-start-date-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:pn,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:sM},lM={type:n.GenericReference,id:"employee-start-date-property-parent-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},cM={hidden:!1,required:!0,type:n.Property,id:"employee-start-date-property-id",version:1,name:"Start date",description:"The date the employee started working in the company",index:0,private:!1,static:!1,implements:null,dataType:oM,abstract:!1,parent:lM},dM={type:n.GenericReference,id:"employee-department-property-ref-id",entityType:n.Property,entityId:"employee-department-property-id"},uM={like:!1,inferred:!1,id:"employee-department-property-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Nn,isList:!1,isNullable:!1,asType:!1,options:["Human Resources","Finance","IT","Sales","Marketing","Customer Service","Logistics","Product"],defaultValue:null,constant:!1,parent:dM},pM={type:n.GenericReference,id:"employee-department-property-parent-ref-id",entityType:n.CustomEntity,entityId:"employee-entity-id"},yM={hidden:!1,required:!0,type:n.Property,id:"employee-department-property-id",version:1,name:"Department",description:"The department the employee works in, from a list of departments in the company",index:0,implements:null,static:!1,private:!1,dataType:uM,abstract:!1,parent:pM},hM={type:n.GenericReference,id:"employee-prototype-parent-ref-id",entityType:n.Project,entityId:H},Lt={type:n.CustomEntity,id:"employee-entity-id",version:1,name:"Employee",description:"A entity that represents an employee in the company",properties:[yM,cM,aM],abstract:!1,static:!1,abstractMethods:[],methods:[],implements:[],extends:[ht],x:0,y:0,parent:hM},fM={type:n.GenericReference,id:"dec8fbfe-9124-41fd-9f1c-5b2f07cfd6ba",entityType:n.Property,entityId:"4f52d044-f3dd-4bdf-927e-637c3b92e8bd"},mM={like:!1,inferred:!1,id:"bc0b8979-6c43-4d47-a712-6742b89e3c00",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:fM},TM={type:n.GenericReference,id:"4f8c0a05-466e-4672-b4c4-6bd408c0be9a",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},EM={hidden:!1,required:!0,type:n.Property,id:"4f52d044-f3dd-4bdf-927e-637c3b92e8bd",version:1,name:"Company Name",private:!1,static:!1,description:"The name of the company",index:0,implements:null,dataType:mM,abstract:!1,parent:TM},bM={type:n.GenericReference,id:"95173fe0-a6e6-443c-94f3-f7c5cf171fcf",entityType:n.Property,entityId:"80c86e1b-caca-4ba5-9b1f-38f72d10e4a3"},RM={like:!1,inferred:!1,id:"ddbb6f5c-0cf4-41fb-83b3-b6c47c0e338d",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:si,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:bM},vM={type:n.GenericReference,id:"6a9a0b72-a05d-4169-b3f3-5afb01e8d0df",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},Tc={hidden:!1,required:!0,type:n.Property,id:"80c86e1b-caca-4ba5-9b1f-38f72d10e4a3",version:1,name:"Bank account",description:"The bank account of the company",index:1,implements:null,static:!1,private:!1,dataType:RM,abstract:!1,parent:vM},gM={type:n.GenericReference,id:"62892cc6-d227-4088-90d3-ae7c15ed4af4",entityType:n.Property,entityId:"19a31727-1fba-40a5-be25-18e0f149d5cb"},IM={like:!1,inferred:!1,id:"1f7629df-dc29-4c89-8369-c6d043e97a9e",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:ht,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:gM},DM={type:n.GenericReference,id:"89384206-fd5a-4f0a-849c-f777473e5773",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},PM={hidden:!1,required:!0,type:n.Property,id:"19a31727-1fba-40a5-be25-18e0f149d5cb",version:1,name:"Company Owner",description:"The person that owns the company",index:2,static:!1,implements:null,dataType:IM,private:!0,abstract:!1,parent:DM},AM={type:n.GenericReference,id:"4d2ffb6c-5f38-436e-8339-fb9878ac2b5e",entityType:n.Property,entityId:"f8310850-a87e-405c-b182-4f1d5fa49240"},OM={like:!1,inferred:!1,id:"ad44250b-40c2-48f7-a480-381fa938f562",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,isList:!0,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:AM},SM={type:n.GenericReference,id:"aa5d4eee-6fac-4e72-bf21-9c8750024541",entityType:n.CustomEntity,entityId:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},CM={hidden:!1,required:!0,type:n.Property,id:"f8310850-a87e-405c-b182-4f1d5fa49240",version:1,name:"Employees",description:null,index:3,dataType:OM,implements:null,private:!0,static:!1,abstract:!1,parent:SM},BM={type:n.GenericReference,id:"e3c03b6b-2ea0-4d99-865d-5e6a348672d0",entityType:n.Project,entityId:H},Gt={type:n.CustomEntity,id:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d",version:1,name:"Company",description:null,properties:[EM,Tc,PM,CM],static:!1,abstract:!1,abstractMethods:[],methods:[T_,eM],extends:[],implements:[ke],x:0,y:0,parent:BM},wM={type:n.GenericReference,id:"ffcad334-138d-4b67-8fb3-5f0e6f5fefbd",entityType:n.Project,entityId:H},Ec={type:n.FunctionDeclaration,id:"0f89260c-8c58-4639-8629-d9ea5ab40ba7",version:1,name:"Show popup",description:null,inputs:[],calls:[],returnStatements:[],implements:null,collapsed:!1,private:!1,index:null,x:0,y:0,parent:wM};n.GenericReference,n.DataType;const _M={id:"cron-job-entity-expression-property-ref-id",type:n.GenericReference,entityId:"cron-job-entity-expression-property-id",entityType:n.Property},NM={like:!1,inferred:!1,id:"cron-job-entity-expression-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:null,parent:_M},MM={id:"cron-job-entity-ref-id",type:n.GenericReference,entityId:"cron-job-entity-id",entityType:n.CustomEntity},VM={hidden:!1,required:!0,id:"cron-job-entity-expression-property-id",type:n.Property,version:1,name:"Cron expression",description:"The cron expression that defines when the cron job should be triggered",dataType:NM,implements:null,static:!0,private:!1,abstract:!1,index:0,parent:MM},LM={id:"cron-job-entity-trigger-show-popup-func-call-called-by-ref-one-id",type:n.GenericReference,entityId:"show-popup-func-decl-id",entityType:n.FunctionDeclaration},GM={id:"cron-job-entity-trigger-show-popup-func-call-parent-ref-id",type:n.GenericReference,entityId:"cron-job-entity-trigger-func-decl-id",entityType:n.FunctionDeclaration},$M={id:"cron-job-entity-trigger-show-popup-func-call-id",version:1,type:n.FunctionCall,declaration:Ec,inputs:[],outputs:[],process:null,successCalls:[],calledByError:[],calledByEntry:[LM],calledBySuccess:[],errorCalls:[],error:null,x:0,y:0,parent:GM},FM={id:"cron-job-entity-trigger-func-decl-parent-ref-id",type:n.GenericReference,entityId:"cron-job-entity-id",entityType:n.CustomEntity},UM={id:"cron-job-entity-trigger-func-decl-id",version:1,type:n.FunctionDeclaration,name:"Scheduled trigger",description:"The function that is called when the cron job is triggered",inputs:[],private:!1,implements:kl,calls:[$M],collapsed:!1,returnStatements:[],index:0,x:0,y:0,parent:FM},xM={id:"cron-job-entity-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},jM={id:"cron-job-entity-id",version:1,type:n.CustomEntity,name:"Run at 12pm on Christmas day",description:"A cron job that runs at 12pm on Christmas day",properties:[VM],static:!0,abstract:!1,abstractMethods:[],extends:[ql],implements:[],methods:[UM],x:0,y:0,parent:xM},kM={type:n.GenericReference,id:"52dbd85c-48b1-462a-8205-2437d6fb1cb4",entityType:n.Project,entityId:H},qM={type:n.CustomEntity,id:"6f0908c2-09c6-4a8b-8f43-d2467fe6fb39",version:1,name:"Get bank all bank accounts",description:null,properties:[],static:!0,abstract:!1,abstractMethods:[],methods:[],extends:[],implements:[ls],x:0,y:0,parent:kM},sv="f558fbf8-67de-4545-9804-6ae621e0b2d4",JM={id:"getCompanyByIdEndpointPathParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointPathParamsVariableDataType"},WM={id:"getCompanyByIdEndpointPathParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointPathParamsArgumentDeclaration"},HM={like:!1,inferred:!1,id:"getCompanyByIdEndpointPathParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:x,asType:!1,defaultValue:{id:"getCompanyByIdEndpointPathParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:JM,autogeneration:null,valueAsType:null},parent:WM},YM={id:"getCompanyByIdEndpointReachedEntityEventRef",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},zM={id:"getCompanyByIdEndpointRequestHeadersVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointRequestHeadersVariableDataType"},ZM={id:"getCompanyByIdEndpointRequestHeadersArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointRequestHeadersArgumentDeclaration"},KM={like:!1,inferred:!1,id:"getCompanyByIdEndpointRequestHeadersVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"getCompanyByIdEndpointRequestHeadersVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:zM,autogeneration:null,valueAsType:null},parent:ZM},XM={id:"getCompanyByIdEndpointRequestHeadersArgumentDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the request.",type:n.ArgumentDeclaration,writesValues:[],name:"Request headers",dataType:KM,implements:_l,required:!0,index:0,parent:YM},QM={id:"getCompanyByIdEndpointReachedEntityEventRefTwo",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},eV={id:"getCompanyByIdEndpointPathParamsArgumentDeclaration",type:n.ArgumentDeclaration,description:"A standarized text, without spaces that is added at the end of the domain and routes the request to a specific resource within the target server. For example: /api/users/123, /api/users/123/:name, /api/users/123/:name/:age.",version:1,name:"Path parameters",writesValues:[],dataType:HM,implements:Nl,required:!0,index:1,parent:QM},tV={id:"getCompanyByIdEndpointReachedEntityEventRefThree",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},nV={id:"getCompanyByIdEndpointRequestQueryParamsVariableDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointRequestQueryParamsVariableDataType"},rV={id:"getCompanyByIdEndpointRequestQueryParamsArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointRequestQueryParamsArgumentDeclaration"},iV={like:!1,inferred:!1,id:"getCompanyByIdEndpointRequestQueryParamsVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,asType:!1,entity:x,defaultValue:{id:"getCompanyByIdEndpointRequestQueryParamsVariableDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:nV,autogeneration:null,valueAsType:null},parent:rV},aV={id:"getCompanyByIdEndpointRequestQueryParamsArgumentDeclaration",version:1,description:"A text with standarized format, without spaces that is added at the end of the URL path, after the ? character. It contains data that might be used to process the request. For example: /api/users?name=John&age=30",type:n.ArgumentDeclaration,writesValues:[],name:"Request query params",dataType:iV,implements:Ml,required:!0,index:2,parent:tV},sV={id:"getCompanyByIdEndpointReachedEntityEventRefFour",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},oV={id:"getCompanyByIdEndpointRequestBodyArgumentDeclarationRef",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:"getCompanyByIdEndpointRequestBodyArgumentDeclaration"},lV={like:!1,inferred:!1,id:"getCompanyByIdEndpointRequestBodyVariableDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:oV},cV={id:"getCompanyByIdEndpointRequestBodyArgumentDeclaration",version:1,description:"The main data payload of the request.",type:n.ArgumentDeclaration,writesValues:[],name:"Request body",dataType:lV,implements:Vl,index:3,required:!0,parent:sV},dV={id:"getCompanyByIdEndpointResponseCodeReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"getCompanyByIdEndpointResponseCodeReturnDeclaration"},uV={like:!1,inferred:!1,id:"9ba575b0-6f8e-436d-a3de-3b843622aa17",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:dV},pV={id:"getCompanyByIdEndpointReturnStatementRef",type:n.GenericReference,entityType:n.ReturnStatement,entityId:"getCompanyByIdEndpointReturnStatement"},yV={isError:!1,id:"getCompanyByIdEndpointResponseCodeReturnDeclaration",version:1,description:"A standarized number that represents the status of the response. 200 for OK, 404 for not found, 500 for server error, etc.",type:n.ReturnDeclaration,name:"Response code",dataType:uV,implements:Ll,readsValue:null,required:!0,index:0,parent:pV},hV={id:"getCompanyByIdEndpointResponseHeadersDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointResponseHeadersDataType"},fV={id:"getCompanyByIdEndpointResponseHeadersReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"getCompanyByIdEndpointResponseHeadersReturnDeclaration"},mV={like:!1,inferred:!1,id:"getCompanyByIdEndpointResponseHeadersDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!0,isNullable:!1,constant:!1,entity:Xe,asType:!1,defaultValue:{id:"getCompanyByIdEndpointResponseHeadersDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.JSON,value:{},parent:hV,autogeneration:null,valueAsType:null},parent:fV},TV={id:"getCompanyByIdEndpointReturnStatementRefTwo",type:n.GenericReference,entityType:n.ReturnStatement,entityId:"getCompanyByIdEndpointReturnStatement"},EV={isError:!1,id:"getCompanyByIdEndpointResponseHeadersReturnDeclaration",version:1,description:"A set of any properties, with names and value that transmit metadata about the response.",type:n.ReturnDeclaration,name:"Response headers",dataType:mV,implements:Gl,readsValue:null,required:!0,index:1,parent:TV},bV={id:"getCompanyByIdEndpointResponseBodyReturnDeclarationRef",type:n.GenericReference,entityType:n.ReturnDeclaration,entityId:"getCompanyByIdEndpointResponseBodyReturnDeclaration"},RV={like:!1,inferred:!1,id:"getCompanyByIdEndpointResponseBodyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,asType:!1,constant:!1,entity:Xe,defaultValue:null,parent:bV},vV={id:"getCompanyByIdEndpointReturnStatementRefThree",type:n.GenericReference,entityType:n.ReturnStatement,entityId:"getCompanyByIdEndpointReturnStatement"},gV={isError:!1,id:"getCompanyByIdEndpointResponseBodyReturnDeclaration",version:1,description:"The main data payload of the response.",type:n.ReturnDeclaration,name:"Response body",implements:$l,dataType:RV,readsValue:null,required:!0,index:2,parent:vV},IV={id:"getCompanyByIdEndpointReturnStatementCallerRef",type:n.GenericReference,entityId:"getCompanyByIdEndpointReachedEntityEvent",entityType:n.FunctionDeclaration},DV={id:"getCompanyByIdEndpointReachedEntityEventRefFive",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"getCompanyByIdEndpointReachedEntityEvent"},PV={id:"getCompanyByIdEndpointReturnStatement",type:n.ReturnStatement,version:1,outputs:[yV,EV,gV],calledByError:[],calledByEntry:[IV],calledBySuccess:[],throws:null,x:0,y:0,parent:DV},AV={id:"endpointBuiltInBaseEntityRefFour",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:sv},OV={id:"getCompanyByIdEndpointReachedEntityEvent",name:"Endpoint reached",version:1,type:n.FunctionDeclaration,inputs:[XM,eV,aV,cV],returnStatements:[PV],description:"Fired when the endpoint is reached.",calls:[],collapsed:!1,implements:Fl,index:0,private:!1,x:0,y:0,parent:AV},SV={id:"getCompanyByIdEndpointPathPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointPathPropertyDataType"},CV={id:"getCompanyByIdEndpointPathPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:"getCompanyByIdEndpointPathProperty"},BV={like:!1,inferred:!1,id:"getCompanyByIdEndpointPathPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!0,entity:x,asType:!1,defaultValue:{id:"getCompanyByIdEndpointPathPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,name:P.String,value:"/company/{id}",parent:SV,valueAsType:null,autogeneration:null},parent:CV},wV={id:"getCompanyByIdEndpointBaseEntityRefTwo",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},_V={hidden:!1,required:!0,id:"getCompanyByIdEndpointPathProperty",name:"Path",version:1,type:n.Property,private:!1,abstract:!1,static:!0,implements:Bl,dataType:BV,index:1,description:"Path to the endpoint, for example /api/users, or /api/users/{id}, or /api/users/{id}/:name. The path can contain parameters, which are defined by curly braces, and will be passed to the endpoint event as variables with the same name.",parent:wV},NV={id:"getCompanyByIdEndpointMethodPropertyDataTypeRef",type:n.GenericReference,entityType:n.DataType,entityId:"getCompanyByIdEndpointMethodPropertyDataType"},MV={id:"getCompanyByIdEndpointMethodPropertyRef",type:n.GenericReference,entityType:n.Property,entityId:"getCompanyByIdEndpointMethodProperty"},VV={like:!1,inferred:!1,id:"getCompanyByIdEndpointMethodPropertyDataType",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:Nn,isList:!0,isNullable:!1,constant:!0,asType:!1,defaultValue:{id:"getCompanyByIdEndpointMethodPropertyDataTypeDefaultValueId",type:n.PrimitiveValue,version:1,value:"GET",name:P.Enum,parent:NV,valueAsType:null,autogeneration:null},options:["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD","TRACE","CONNECT","CUSTOM"],parent:MV},LV={id:"getCompanyByIdEndpointBaseEntityRefThree",type:n.GenericReference,entityType:n.BuiltInBaseEntity,entityId:L.HTTP_ENDPOINT},GV={hidden:!1,required:!0,id:"getCompanyByIdEndpointMethodProperty",name:"Method",version:1,type:n.Property,private:!1,abstract:!1,static:!0,implements:wl,index:0,dataType:VV,description:null,parent:LV},$V={type:n.GenericReference,id:"6a905153-8aa8-4424-bd7b-6415731a2725",entityType:n.Project,entityId:H},FV={type:n.CustomEntity,id:sv,version:1,name:"Get given company data by id",description:null,properties:[_V,GV],methods:[OV],static:!0,abstract:!1,abstractMethods:[],extends:[],implements:[ls],x:0,y:0,parent:$V},UV={id:"product-prototype-database-property-ref-id",type:n.GenericReference,entityId:"product-prototype-database-property-id",entityType:n.Property},xV={id:"product-prototype-database-property-data-type-default-value-parent-ref-id",type:n.GenericReference,entityId:"product-prototype-database-property-data-type-default-value-id",entityType:n.DataType},jV={like:!1,inferred:!1,id:"product-prototype-database-property-data-type-id",version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,isList:!1,isNullable:!1,constant:!1,entity:Mn,asType:!1,defaultValue:{id:"product-prototype-database-property-data-type-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.EntityTemplate,valueAsType:pc,autogeneration:null,parent:xV},parent:UV},kV={id:"product-prototype-database-property-parent-ref-id",type:n.GenericReference,entityId:"de67fc84-3719-46fd-9ab4-3fca3a3cc50d",entityType:n.CustomEntity},qV={hidden:!1,required:!0,id:"product-prototype-database-property-id",name:"Database",version:1,type:n.Property,private:!1,abstract:!1,implements:Ui,static:!0,index:0,dataType:jV,description:"The database that the entity belongs to.",parent:kV},JV={type:n.GenericReference,id:"13a4045e-dcb0-4159-8d33-10a646078b5a",entityType:n.Property,entityId:"d519c26a-15b8-40d8-ad09-13fa9342e9ba"},WV={like:!1,inferred:!1,id:"7449779e-1d4e-409c-81c6-4b611336ed18",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:JV},HV={type:n.GenericReference,id:"0969562f-d836-406f-8b48-dd9d417fbe72",entityType:n.CustomEntity,entityId:"a2d0ec83-72ce-4f54-b059-a39e018fa86c"},YV={hidden:!1,required:!0,type:n.Property,id:"d519c26a-15b8-40d8-ad09-13fa9342e9ba",version:1,name:"Name",description:"The name of the product",index:0,implements:null,static:!1,private:!1,dataType:WV,abstract:!1,parent:HV},zV={type:n.GenericReference,id:"833a5425-7bd0-41dd-9e97-e018acce9592",entityType:n.Project,entityId:H},ZV={type:n.CustomEntity,id:"a2d0ec83-72ce-4f54-b059-a39e018fa86c",version:1,name:"Product",description:"A product that can be sold",implements:[ke],extends:[],abstract:!1,static:!1,abstractMethods:[],properties:[qV,YV],methods:[],x:0,y:0,parent:zV},oa="project-loaded-event-id",tn="get-bitcoin-price-http-call-operation-id",ov="get-bitcoin-price-http-call-response-body-id",js="validate-bitcoin-price-response-operation-ids",KV={type:n.GenericReference,id:"validate-bitcoin-data-to-validate-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:ov},XV={type:n.GenericReference,id:"validate-bitcoin-data-to-validate-input-map-parent-ref-id",entityType:n.Operation,entityId:js},lv={id:"validate-bitcoin-data-to-validate-input-map-id",type:n.InputMap,version:1,declaration:rr.inputs[1],name:null,description:null,readsValue:KV,defaultValue:null,index:0,parent:XV},QV={type:n.GenericReference,id:"validate-bitcoin-type-to-match-input-map-default-value-parent-ref-id",entityType:n.InputMap,entityId:"validate-bitcoin-type-to-match-input-map-id"},e1={type:n.GenericReference,id:"validate-bitcoin-type-to-match-input-map-parent-ref-id",entityType:n.Operation,entityId:js},t1={id:"validate-bitcoin-type-to-match-input-map-id",type:n.InputMap,version:1,declaration:rr.inputs[0],name:null,description:null,readsValue:null,defaultValue:{id:"validate-bitcoin-type-to-match-input-map-default-value-id",type:n.PrimitiveValue,version:1,name:P.EntityTemplate,valueAsType:WR,value:null,parent:QV,autogeneration:null},index:0,parent:e1},n1={type:n.GenericReference,id:"validate-bitcoin-validated-entity-output-map-parent-ref-id",entityType:n.Operation,entityId:js},r1={id:"validate-bitcoin-validated-entity-output-map-id",type:n.OutputMap,version:1,declaration:rr.outputs[0],writesValues:[],index:0,parent:n1},i1={type:n.GenericReference,id:"validate-bitcoin-price-response-operation-parent-ref-id",entityType:n.GlobalEvent,entityId:oa},a1={type:n.GenericReference,id:"validate-bitcoin-price-response-operation-called-by-ref-id",entityType:n.Operation,entityId:tn},s1={type:n.Operation,id:js,version:1,declaration:rr,inputs:[t1,lv],outputs:[r1],process:null,successCalls:[],errorCalls:[],error:null,x:0,y:0,calledByError:[],calledByEntry:[],calledBySuccess:[a1],parent:i1},o1={type:n.GenericReference,id:"96edb661-3f36-406c-8921-f1679dd796a3",entityType:n.FunctionCall,entityId:tn},l1={id:"c93e1393-9b5e-4de2-b8da-7eae647d715a",version:1,type:n.InputMap,declaration:za,name:null,description:null,readsValue:null,defaultValue:null,index:0,parent:o1},c1={type:n.GenericReference,id:"40312b28-71b8-4b01-a654-58b87191939d",entityType:n.FunctionCall,entityId:tn},d1={type:n.GenericReference,id:"6ea96c7d-02a7-4971-82ad-2f32a0fec8b4",entityType:n.InputMap,entityId:"9f21cbac-5a83-4983-8923-9224ffd3ba9f"},u1={id:"9f21cbac-5a83-4983-8923-9224ffd3ba9f",version:1,type:n.InputMap,declaration:Za,name:null,description:null,readsValue:null,defaultValue:{id:"get-bitcoin-price-http-request-url-argument-default-value-id",type:n.PrimitiveValue,version:1,value:"https://api.coindesk.com/v1/bpi/currentprice.json",name:P.String,parent:d1,valueAsType:null,autogeneration:null},index:1,parent:c1},p1={type:n.GenericReference,id:"2610bf4a-c8a2-4746-b6cc-eb15f7fa8e9c",entityType:n.FunctionCall,entityId:tn},y1={id:"ffb3cd9d-c955-4104-bc7b-299120fe4ede",version:1,type:n.InputMap,declaration:Ka,name:null,description:null,readsValue:null,defaultValue:null,index:2,parent:p1},h1={type:n.GenericReference,id:"bfd29a6a-671a-448c-9f2f-f8c7e4ad8349",entityType:n.FunctionCall,entityId:tn},f1={id:"412bf1f3-1a8e-4665-a95f-82117540e34e",version:1,type:n.InputMap,declaration:Xa,name:null,description:null,readsValue:null,defaultValue:null,index:3,parent:h1},m1={type:n.GenericReference,id:"616a15f3-c224-4b11-b95c-63314edef409",entityType:n.FunctionCall,entityId:tn},T1={id:"4dd4651c-02e4-45f1-b50f-824f3bcb1648",version:1,type:n.OutputMap,declaration:es,writesValues:[],index:1,parent:m1},E1={type:n.GenericReference,id:"28793b68-4d7e-4826-aee1-f201a3499faf",entityType:n.FunctionCall,entityId:tn},b1={id:"94fe9d35-4dd4-4729-a50c-5283ccd7e661",version:1,type:n.OutputMap,declaration:Qa,writesValues:[],index:0,parent:E1},R1={type:n.GenericReference,id:"f13e04b2-49b4-4c69-85b8-cbbafafa3524",entityType:n.FunctionCall,entityId:tn},v1={id:ov,type:n.OutputMap,version:1,declaration:ts,writesValues:[lv],index:2,parent:R1},g1={type:n.GenericReference,id:"6148d6d0-caaa-45fc-b601-ff2493dfc60f",entityType:n.FunctionDeclaration,entityId:tn},I1={type:n.GenericReference,id:"b115f084-807b-44b3-ae01-b69cc342f761",entityType:n.GlobalEvent,entityId:oa},D1={type:n.Operation,id:tn,version:1,declaration:Mi,inputs:[l1,u1,y1,f1],outputs:[b1,T1,v1],process:null,parent:I1,calledByError:[],calledByEntry:[g1],calledBySuccess:[],successCalls:[s1],errorCalls:[],error:null,x:0,y:0},P1={type:n.GenericReference,id:"24e76019-3f94-475b-91ce-297f76bbc224",entityType:n.GlobalEvent,entityId:oa},A1={type:n.GenericReference,id:"0eac8e29-cdf2-42f8-8ea7-ad76d4d79abe",entityType:n.GlobalEvent,entityId:oa},O1={process:null,type:n.FunctionCall,id:"2d2e7593-bfbf-457c-a607-5fce18eef457",version:1,declaration:Ec,inputs:[],outputs:[],calledByError:[],calledByEntry:[P1],calledBySuccess:[],parent:A1,successCalls:[],errorCalls:[],error:null,x:0,y:0},S1={id:"793b5999-a9da-47fb-9665-0c17ebc6d5c9",type:n.GenericReference,entityType:n.Project,entityId:"2e7eb5382-3d99-44fd-972a-b8b1e819f6be"},C1={type:n.GlobalEvent,id:oa,version:1,name:dn.PROJECT_PUBLICATION_COMPLETED,returnStatements:[],collapsed:!1,implements:ys,parent:S1,inputs:[],calls:[O1,D1],x:0,y:0},$t="abort-execution-func-declaration-id",la="abort-execution-func-exec-var-declaration-id",ks="abort-execution-func-small-wait-op-id",bc="abort-execution-func-long-wait-op-id",cv="abort-execution-func-long-wait-process-output-id",dv="abort-execution-func-exec-var-instance-write-id",uv="abort-execution-func-long-wait-return-stmt-id",pv="abort-execution-func-small-wait-return-stmt-id",B1="abort-execution-func-exec-var-instance-abort-call-id",Rc="abort-execution-func-exec-var-instance-abort-internal-call-id",yv="abort-execution-func-exec-second-wait-op-id",w1={type:n.GenericReference,id:"short-wait-return-statement-returned-hello-string-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:"short-wait-return-statement-returned-hello-string-id"},_1={type:n.GenericReference,id:"short-wait-return-statement-returned-hello-string-data-type-default-value-parent-ref-id",entityType:n.DataType,entityId:"short-wait-return-statement-returned-hello-string-data-type-id"},N1={like:!1,inferred:!1,id:"short-wait-return-statement-returned-hello-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:{id:"short-wait-return-statement-returned-hello-string-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"Hello 2",autogeneration:null,valueAsType:null,parent:_1},constant:!1,parent:w1},M1={type:n.GenericReference,id:"short-wait-return-statement-returned-hello-string-parent-ref-id",entityType:n.ReturnStatement,entityId:pv},V1={isError:!1,id:"short-wait-return-statement-returned-hello-string-id",type:n.ReturnDeclaration,version:1,name:"Return 1",description:"A random string that is returned by the function",dataType:N1,implements:null,readsValue:null,required:!0,index:0,parent:M1},L1={type:n.GenericReference,id:"short-wait-return-statement-called-by-ref-id",entityType:n.Operation,entityId:ks},G1={type:n.GenericReference,id:"short-wait-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},hv={type:n.ReturnStatement,id:pv,version:1,outputs:[V1],calledByError:[],calledByEntry:[],calledBySuccess:[L1],throws:null,x:0,y:0,parent:G1},$1={type:n.GenericReference,id:"second-wait-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"second-wait-argument-map-id"},F1={type:n.GenericReference,id:"second-wait-argument-map-parent-ref-id",entityType:n.Operation,entityId:yv},U1={id:"second-wait-argument-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"second-wait-argument-default-value-id",type:n.PrimitiveValue,version:1,value:2e3,valueAsType:null,autogeneration:null,name:P.Number,parent:$1},index:0,parent:F1},x1={type:n.GenericReference,id:"small-wait-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},j1={type:n.GenericReference,id:"small-wait-called-by-ref-one-id",entityType:n.InternalCall,entityId:Rc},k1={id:yv,type:n.Operation,version:1,declaration:pt,inputs:[U1],outputs:[],process:null,successCalls:[hv],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[],calledBySuccess:[j1],error:null,parent:x1},q1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-abort-internal-call-called-by-ref-one-id",entityType:n.VariableInstance,entityId:dv},J1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-abort-internal-call-called-by-ref-two-id",entityType:n.Operation,entityId:ks},W1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-main-project-ref-id",entityType:n.FunctionDeclaration,entityId:$t},H1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:la},Y1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-internal-call-ref-one-id",entityType:n.InternalCall,entityId:Rc},z1={id:B1,type:n.VariableInstance,version:1,declaration:H1,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[Y1],parent:W1},fv={id:Rc,type:n.InternalCall,version:1,inputs:[],outputs:[],declaration:Jl,process:null,calledByError:[],calledByEntry:[],calledBySuccess:[q1,J1],successCalls:[k1],errorCalls:[],error:null,index:0,parent:z1},Z1={type:n.GenericReference,id:"abort-exec-func-var-write-instance-main-project-ref-id",entityType:n.FunctionDeclaration,entityId:$t},K1={type:n.GenericReference,id:"abort-exec-func-var-write-instance-called-by-ref-one-id",entityType:n.VariableDeclaration,entityId:la},X1={type:n.GenericReference,id:"abort-exec-func-var-write-instance-called-by-ref-two-id",entityType:n.FunctionDeclaration,entityId:$t},Q1={type:n.GenericReference,id:"abort-exec-func-abort-call-var-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:la},e0={type:n.GenericReference,id:"abort-exec-func-var-write-instance-reads-value-ref-id",entityType:n.OutputMap,entityId:cv},vc={id:dv,type:n.VariableInstance,version:1,declaration:Q1,inputs:[],outputs:[],calledByError:[],calledByEntry:[X1],calledBySuccess:[K1],successCalls:[fv],errorCalls:[],x:0,y:0,readsValue:e0,writesValues:[],internalCalls:[],parent:Z1},t0={type:n.GenericReference,id:"abort-exec-func-var-decl-datatype-parent-ref-id",entityType:n.VariableDeclaration,entityId:la};n.GenericReference,n.DataType;const n0={like:!1,inferred:!1,id:"abort-exec-func-var-decl-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:Wl,version:1,asType:!1,isList:!1,isNullable:!1,constant:!1,parent:t0,defaultValue:null},r0={type:n.GenericReference,id:"abort-exec-func-var-decl-main-project-ref-id",entityType:n.FunctionDeclaration,entityId:$t},i0={type:n.GenericReference,id:"abort-exec-func-var-decl-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:$t},a0={id:la,type:n.VariableDeclaration,version:1,name:"Execution in progress",description:"A variable that holds an ongoing execution to abort it if needed",dataType:n0,inputs:[],outputs:[],calledByError:[],calledByEntry:[i0],calledBySuccess:[],successCalls:[vc],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:r0},s0={type:n.GenericReference,id:"long-wait-return-statement-returned-hello-string-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:"long-wait-return-statement-returned-hello-string-id"},o0={type:n.GenericReference,id:"long-wait-return-statement-returned-hello-string-data-type-default-value-parent-ref-id",entityType:n.DataType,entityId:"long-wait-return-statement-returned-hello-string-data-type-id"},l0={like:!1,inferred:!1,id:"long-wait-return-statement-returned-hello-string-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,asType:!1,isList:!1,isNullable:!1,defaultValue:{id:"long-wait-return-statement-returned-hello-string-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.String,value:"Hello 1",autogeneration:null,valueAsType:null,parent:o0},constant:!1,parent:s0},c0={type:n.GenericReference,id:"long-wait-return-statement-returned-hello-string-parent-ref-id",entityType:n.ReturnStatement,entityId:uv},d0={isError:!1,id:"long-wait-return-statement-returned-hello-string-id",type:n.ReturnDeclaration,version:1,name:"Return 2",description:"A random string that is returned by the function",implements:null,dataType:l0,readsValue:null,required:!0,index:0,parent:c0},u0={type:n.GenericReference,id:"long-wait-return-statement-called-by-ref-id",entityType:n.Operation,entityId:bc},p0={type:n.GenericReference,id:"long-wait-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},mv={type:n.ReturnStatement,id:uv,version:1,outputs:[d0],calledByError:[],calledByEntry:[],calledBySuccess:[u0],throws:null,x:0,y:0,parent:p0},y0={type:n.GenericReference,id:"long-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"long-argument-map-id"},Tv={type:n.GenericReference,id:"long-argument-map-parent-ref-id",entityType:n.Operation,entityId:bc},h0={id:"long-argument-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"long-argument-default-value-id",type:n.PrimitiveValue,version:1,value:1500,valueAsType:null,autogeneration:null,name:P.Number,parent:y0},index:0,parent:Tv},f0={type:n.GenericReference,id:"long-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},m0={type:n.GenericReference,id:"long-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:$t},T0={id:cv,type:n.OutputMap,version:1,declaration:Yl,writesValues:[vc],index:0,parent:Tv},E0={id:bc,type:n.Operation,version:1,declaration:pt,inputs:[h0],outputs:[],process:T0,successCalls:[mv],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[m0],calledBySuccess:[],error:null,parent:f0},b0={type:n.GenericReference,id:"small-wait-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"small-wait-argument-map-id"},R0={type:n.GenericReference,id:"small-wait-argument-map-parent-ref-id",entityType:n.Operation,entityId:ks},v0={id:"small-wait-argument-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"small-wait-argument-default-value-id",type:n.PrimitiveValue,version:1,value:500,valueAsType:null,autogeneration:null,name:P.Number,parent:b0},index:0,parent:R0},g0={type:n.GenericReference,id:"small-wait-parent-ref-id",entityType:n.FunctionDeclaration,entityId:$t},I0={type:n.GenericReference,id:"small-wait-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:$t},D0={id:ks,type:n.Operation,version:1,declaration:pt,inputs:[v0],outputs:[],process:null,successCalls:[fv],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[I0],calledBySuccess:[],error:null,parent:g0},P0={type:n.GenericReference,id:"abort-execution-func-decl-parent-ref-id",entityType:n.Project,entityId:H},Ev={id:"abort-execution-func-decl-id",type:n.FunctionDeclaration,version:1,name:"Test aborting execution",description:"Executes a wait and then aborts the execution of that wait",inputs:[],returnStatements:[mv,hv],calls:[D0,a0,vc,E0],implements:null,private:!1,collapsed:!1,index:null,x:0,y:0,parent:P0},A0={type:n.GenericReference,id:"call-execution-abort-func-parent-ref-id",entityType:n.Project,entityId:H},O0={id:"call-execution-abort-func-id",type:n.FunctionCall,version:1,declaration:Ev,inputs:[],process:null,outputs:[],successCalls:[],errorCalls:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[],x:0,y:0,parent:A0},gc="manual-hello-world-loop-func-decl-id",bv="manual-hello-world-loop-func-return-statement-id",nn="manual-hello-world-loop-id",ca="manual-hello-world-loop-body-id",Ic="manual-hello-world-loop-break-statement-id",da="manual-hello-world-loop-current-iteration-number-output-map-id",Dc="manual-hello-world-loop-previous-iterations-results-output-map-id",Pc="assembled-hello-world-text-output-id",Rv="assembled-hello-world-list-output-id",ua="iteration-number-is-equal-or-greater-than-10-condition-id",qs="join-hello-world-and-number-operation-id",Js="append-string-to-list-operation-id",vv="hello-world-loop-output-map-id",S0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-output-declaration-parent-ref",entityType:n.ReturnStatement,entityId:bv},C0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-output-declaration-data-type-parent-ref",entityType:n.ReturnDeclaration,entityId:"manual-hello-world-loop-function-declaration-output-declaration"},B0={like:!1,inferred:!1,id:"manual-hello-world-loop-function-declaration-output-declaration-data-type",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!0,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:C0},w0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-output-declaration-reads-value-ref",entityType:n.OutputMap,entityId:vv},gv={isError:!1,id:"manual-hello-world-loop-function-declaration-output-declaration",version:1,type:n.ReturnDeclaration,name:"Results",description:null,dataType:B0,implements:null,readsValue:w0,required:!0,index:0,parent:S0},_0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-return-statement-called-by-ref",entityType:n.Loop,entityId:nn},N0={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-parent-ref",entityType:n.FunctionDeclaration,entityId:gc},Iv={type:n.ReturnStatement,id:bv,version:1,outputs:[gv],calledByError:[],calledByEntry:[],calledBySuccess:[_0],parent:N0,throws:null,x:0,y:0},M0={type:n.GenericReference,id:"hello-world-loop-break-statement-ref-id",entityType:n.BreakStatement,entityId:Ic},V0={type:n.GenericReference,id:"hello-world-loop-break-statement-reads-value-ref-id",entityType:n.OutputMap,entityId:Pc},Dv={isError:!1,id:"hello-world-loop-break-statement-output-id",version:1,type:n.ReturnDeclaration,name:"Iteration result",description:null,dataType:null,readsValue:V0,implements:null,required:!0,index:0,parent:M0},L0={type:n.GenericReference,id:"hello-world-loop-break-statement-counter-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:da},G0={type:n.GenericReference,id:"hello-world-loop-break-statement-counter-ref-id",entityType:n.BreakStatement,entityId:Ic},Pv={isError:!1,id:"hello-world-loop-break-statement-counter-output-id",version:1,type:n.ReturnDeclaration,name:"Iteration counter",description:null,implements:null,dataType:null,readsValue:L0,required:!0,index:1,parent:G0},$0={type:n.GenericReference,id:"hello-world-loop-break-statement-called-by-ref-id",entityType:n.Condition,entityId:ua},F0={type:n.GenericReference,id:"hello-world-loop-break-statement-parent-ref-id",entityType:n.Loop,entityId:nn},Av={type:n.BreakStatement,id:Ic,version:1,outputs:[Dv,Pv],calledByError:[],calledByEntry:[],calledBySuccess:[$0],parent:F0,throws:null,x:0,y:0},U0={type:n.GenericReference,id:"hello-world-loop-continue-statement-ref-id",entityType:n.ContinueStatement,entityId:"hello-world-loop-continue-statement"},x0={type:n.GenericReference,id:"hello-world-loop-continue-statement-output-data-type-ref-id",entityType:n.ReturnDeclaration,entityId:"hello-world-loop-continue-statement-output-id"},j0={like:!1,inferred:!1,id:"hello-world-loop-continue-statement-output-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:x0},k0={type:n.GenericReference,id:"hello-world-loop-continue-statement-reads-value-ref-id",entityType:n.OutputMap,entityId:Pc},Ov={isError:!1,id:"hello-world-loop-continue-statement-output-id",version:1,type:n.ReturnDeclaration,name:"Iteration result",description:null,implements:null,dataType:j0,readsValue:k0,required:!0,index:0,parent:U0},q0={type:n.GenericReference,id:"hello-world-loop-continue-statement-called-by-ref-id",entityType:n.Condition,entityId:ua},J0={type:n.GenericReference,id:"hello-world-loop-continue-statement-parent-ref-id",entityType:n.Loop,entityId:nn},Sv={type:n.ContinueStatement,id:"hello-world-loop-continue-statement",version:1,outputs:[Ov],calledBySuccess:[],calledByError:[q0],calledByEntry:[],parent:J0,throws:null,x:0,y:0};n.GenericReference,n.InputMap;const W0={type:n.GenericReference,id:"append-string-to-list-base-string-map-parent-ref-id",entityType:n.Operation,entityId:Js},H0={type:n.GenericReference,id:"base-string-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Dc},Cv={id:"append-string-to-list-base-string-map-id",type:n.InputMap,version:1,declaration:pl,name:null,description:null,readsValue:H0,defaultValue:null,index:0,parent:W0},Y0={type:n.GenericReference,id:"assembly-string-map-parent-ref-id",entityType:n.Operation,entityId:Js},z0={id:Rv,type:n.OutputMap,version:1,writesValues:[Dv],declaration:_i,index:0,parent:Y0},Z0={type:n.GenericReference,id:"append-string-to-list-called-by-ref-id",entityType:n.Condition,entityId:ua},K0={type:n.GenericReference,id:"latest-string-to-add-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Rv},X0={type:n.GenericReference,id:"62b4afb0-6c21-4b0f-abd3-cebef7b17c28",entityType:n.Operation,entityId:Js},Bv={id:"latest-string-to-add-input-map-id",version:1,type:n.InputMap,declaration:yl,name:null,description:null,readsValue:K0,defaultValue:null,index:1,parent:X0},Q0={type:n.GenericReference,id:"append-string-to-list-parent-ref-id",entityType:n.FunctionDeclaration,entityId:nn},eL={type:n.Operation,id:Js,declaration:Ya,version:1,inputs:[Cv,Bv],outputs:[z0],calledByError:[],process:null,calledByEntry:[],calledBySuccess:[Z0],successCalls:[],errorCalls:[],error:null,x:0,y:0,parent:Q0},tL={type:n.GenericReference,id:"iteration-number-is-equal-or-greater-than-10-condition-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ca},nL={type:n.GenericReference,id:"iteration-number-is-equal-or-greater-than-10-condition-parent-ref-id",entityType:n.Loop,entityId:nn},rL={type:n.GenericReference,id:"current-iteration-number-to-check-map-reads-value-ref-id",entityType:n.OutputMap,entityId:da},wv={type:n.GenericReference,id:"iteration-number-is-equal-or-greater-than-10-condition-ref-two-id",entityType:n.Condition,entityId:ua},iL={id:"current-iteration-number-to-check-map-id",version:1,type:n.InputMap,declaration:Xr.inputs[0],name:null,description:null,readsValue:rL,index:0,defaultValue:null,parent:wv},aL={type:n.GenericReference,id:"max-num-iterations-value-map-default-value-parent-ref-id",entityType:n.InputMap,entityId:"max-num-iterations-value-map-id"},sL={id:"max-num-iterations-value-map-id",version:1,type:n.InputMap,declaration:Xr.inputs[1],name:null,description:null,readsValue:null,index:1,defaultValue:{id:"max-num-iterations-value-map-default-value-id",type:n.PrimitiveValue,version:1,name:P.Number,value:10,autogeneration:null,valueAsType:null,parent:aL},parent:wv},oL={type:n.Condition,id:ua,version:1,declaration:Xr,inputs:[iL,sL],calledByError:[],calledByEntry:[tL],calledBySuccess:[],successCalls:[Av,eL],errorCalls:[Sv],x:0,y:0,parent:nL},lL={type:n.GenericReference,id:"base-string-map-ref-id",entityType:n.InputMap,entityId:"join-hello-world-and-number-base-string-map-id"},cL={type:n.GenericReference,id:"join-hello-world-and-number-base-string-map-parent-ref-id",entityType:n.Operation,entityId:qs},dL={id:"join-hello-world-and-number-base-string-map-id",type:n.InputMap,version:1,declaration:Wa,name:null,description:null,readsValue:null,defaultValue:{id:"join-hello-world-and-number-base-string-map-default-value-id",type:n.PrimitiveValue,version:1,value:"Hello world ",name:P.String,parent:lL,valueAsType:null,autogeneration:null},index:0,parent:cL},uL={type:n.GenericReference,id:"assembly-string-map-parent-ref-id",entityType:n.Operation,entityId:qs},pL={id:Pc,type:n.OutputMap,version:1,writesValues:[Bv,Ov],declaration:_i,index:0,parent:uL},yL={type:n.GenericReference,id:"join-hello-world-and-number-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ca},hL={type:n.GenericReference,id:"current-iteration-number-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:da},fL={type:n.GenericReference,id:"62b4afb0-6c21-4b0f-abd3-cebef7b17c28",entityType:n.Operation,entityId:qs},_v={id:"current-iteration-number-input-map-id",version:1,type:n.InputMap,declaration:Ha,name:null,description:null,readsValue:hL,defaultValue:null,index:1,parent:fL},mL={type:n.GenericReference,id:"join-hello-world-and-number-parent-ref-id",entityType:n.FunctionDeclaration,entityId:nn},TL={type:n.Operation,id:qs,declaration:Ni,version:1,inputs:[dL,_v],outputs:[pL],process:null,calledByError:[],calledByEntry:[yL],calledBySuccess:[],successCalls:[],errorCalls:[],error:null,x:0,y:0,parent:mL},EL={id:"manual-hello-world-loop-iterations-results-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:Dc,entityType:n.ArgumentDeclaration},bL={like:!1,inferred:!1,id:"manual-hello-world-loop-iterations-results-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!0,isNullable:!1,constant:!1,entity:null,asType:!1,defaultValue:null,parent:EL},RL={id:"manual-hello-world-loop-previous-iterations-results-output-map-parent-ref-id",type:n.GenericReference,entityId:ca,entityType:n.FunctionDeclaration},vL={id:Dc,type:n.ArgumentDeclaration,version:1,name:"Previous iterations results",description:"The results of the previous iterations of the loop.",required:!0,dataType:bL,implements:null,writesValues:[Cv],index:1,parent:RL},gL={id:"manual-hello-world-loop-current-iteration-number-output-map-parent-ref-id",type:n.GenericReference,entityId:ca,entityType:n.FunctionDeclaration},IL={id:"manual-flow-loop-current-iteration-number-declaration-data-type-parent-ref-id",type:n.GenericReference,entityId:da,entityType:n.ArgumentDeclaration};n.DataType;const DL={id:da,type:n.ArgumentDeclaration,version:1,name:"Current iteration number",description:"The number of the current iteration of the loop. Starts at 1.",required:!0,implements:vl,dataType:null,writesValues:[_v,Pv],index:0,parent:gL},PL={id:"manual-flow-loop-body-parent-ref-id",type:n.GenericReference,entityId:nn,entityType:n.Loop},AL={id:ca,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called multiple times, once for each iteration of the loop.",inputs:[DL,vL],calls:[oL,TL],implements:gl,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:PL},OL={type:n.GenericReference,id:"hello-world-loop-iteration-result-inline-output-declaration-parent-ref-id",entityType:n.Loop,entityId:nn},Nv={id:"hello-world-loop-iteration-result-inline-output-declaration-id",version:1,type:n.ValueDescriptor,name:"Iteration result",description:null,dataType:null,required:!0,index:0,parent:OL},SL={type:n.GenericReference,id:"hello-world-loop-break-statement-output-map-parent-ref-id",entityType:n.Loop,entityId:nn},CL={type:n.OutputMap,id:vv,version:1,declaration:Nv,writesValues:[gv],index:0,parent:SL},BL={id:"manual-hello-world-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},wL={id:"manual-hello-world-loop-called-by-ref-id",type:n.GenericReference,entityId:gc,entityType:n.FunctionDeclaration},_L={id:nn,type:n.Loop,version:1,declaration:Rl,inputs:[],outputsDeclarations:[Nv],outputs:[CL],body:AL,successCalls:[Iv],errorCalls:[],process:null,error:null,calledByError:[],calledByEntry:[wL],calledBySuccess:[],breakStatements:[Av],continueStatements:[Sv],x:0,y:0,parent:BL},NL={type:n.GenericReference,id:"manual-hello-world-loop-function-declaration-parent-ref-id",entityType:n.Project,entityId:H},Mv={type:n.FunctionDeclaration,id:gc,version:1,name:"Manual hello world loop",description:null,inputs:[],calls:[_L],returnStatements:[Iv],implements:null,collapsed:!1,private:!1,index:null,x:0,y:0,parent:NL},ML={type:n.GenericReference,id:"call-hello-world-loop-parent-ref-id",entityType:n.Project,entityId:H},VL={id:"call-hello-world-loop-id",type:n.FunctionCall,version:1,declaration:Mv,inputs:[],outputs:[],process:null,successCalls:[],errorCalls:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[],x:0,y:0,parent:ML},bn="company-dto-function-declaration-id",Ac="company-dto-func-declaration-argument-dcl-id",rn="company-dto-function-company-variable-id",kn="company-dto-function-company-dto-variable-id",li="iterate-over-employee-list-loop-id",Vv="iterate-over-employee-list-loop-employee-dto-output-map-id",Oc="iterate-over-employee-list-loop-body-current-employee-argument-declaration-id",pa="iterate-over-employee-list-loop-body-map-employee-dto-function-call-id",Lv="iterate-over-employee-list-continue-statement-employee-dto-output-decl-id",LL="iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-dto-output-map-id",Gv="iterate-over-employee-list-continue-statement-id",Ws="iterate-over-employee-list-loop-body-id",$v="company-dto-func-declaration-return-statement-id",Fv="company-dto-func-declaration-return-decl-id",Uv="company-dto-func-declaration-company-variable-id-output-map-id",xv="company-dto-func-declaration-company-variable-employess-output-map-id",jv="company-dto-func-declaration-company-variable-name-output-map-id",GL="company-dto-func-declaration-company-dto-variable-input-map-id",$L="company-dto-func-declaration-company-dto-variable-employess-input-map-id",FL="company-dto-func-declaration-company-dto-variable-name-input-map-id",Hs="company-dto-func-declaration-owner-variable-id",UL="company-dto-func-declaration-company-dto-variable-owner-input-map-id",kv="company-dto-func-declaration-company-variable-owner-output-map-id",qv="company-dto-func-declaration-owner-variable-id-output-map-id",Ys="company-dto-func-declaration-bank-account-variable-id",xL="company-dto-func-declaration-company-dto-variable-bank-account-input-map-id",Jv="company-dto-func-declaration-company-variable-bank-account-output-map-id",Wv="company-dto-func-declaration-bank-account-variable-id-output-map-id",jL={type:n.GenericReference,id:"company-dto-func-returned-company-dto-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:Fv},kL={like:!1,inferred:!1,id:"company-dto-func-returned-company-dto-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:jL},qL={type:n.GenericReference,id:"company-dto-func-returned-company-dto-parent-ref-id",entityType:n.ReturnStatement,entityId:$v},JL={type:n.GenericReference,id:"company-dto-func-returned-company-dto-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:kn},Hv={isError:!1,id:Fv,type:n.ReturnDeclaration,version:1,name:"Company DTO",description:"Output the company data in the format that it will be sent through an HTTP request.",implements:null,dataType:kL,readsValue:JL,required:!0,index:0,parent:qL},WL={type:n.GenericReference,id:"company-dto-func-return-statement-called-by-ref-id",entityType:n.Operation,entityId:kn},HL={type:n.GenericReference,id:"company-dto-func-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn},Sc={type:n.ReturnStatement,id:$v,version:1,outputs:[Hv],calledByError:[],calledByEntry:[],calledBySuccess:[WL],throws:null,x:0,y:0,parent:HL},YL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-owner-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:qv},zL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-owner-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Yv={id:UL,type:n.InputMap,version:1,declaration:null,name:"owner_id",description:null,defaultValue:null,index:5,readsValue:YL,parent:zL},ZL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-bank-account-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Wv},KL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-bank-account-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},zv={id:xL,type:n.InputMap,version:1,declaration:null,name:"bank_account_id",description:null,defaultValue:null,index:4,readsValue:ZL,parent:KL},XL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-name-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:jv},QL={type:n.GenericReference,id:"company-dto-func-company-dto-variable-name-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Zv={id:FL,type:n.InputMap,version:1,declaration:null,name:"name",description:null,defaultValue:null,index:3,readsValue:XL,parent:QL},eG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-employess-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Vv},tG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-employess-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Kv={id:$L,type:n.InputMap,version:1,declaration:null,name:"employees",description:null,defaultValue:null,index:2,readsValue:eG,parent:tG},nG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Uv},rG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:kn},Xv={id:GL,type:n.InputMap,version:1,declaration:null,name:"id",description:"The ID of the company",defaultValue:null,index:1,readsValue:nG,parent:rG},iG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn},aG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-called-by-ref-one-id",entityType:n.VariableDeclaration,entityId:Ys},sG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-called-by-ref-two-id",entityType:n.VariableDeclaration,entityId:Hs},oG={type:n.GenericReference,id:"company-dto-func-company-dto-variable-called-by-ref-three-id",entityType:n.VariableDeclaration,entityId:li},Cc={id:kn,type:n.VariableDeclaration,version:1,name:"Company DTO",dataType:null,description:"A variable holding the data of a mapped company DTO",calledByError:[],calledByEntry:[],calledBySuccess:[aG,sG,oG],successCalls:[Sc],errorCalls:[],readsValue:null,writesValues:[Hv],inputs:[Xv,Zv,zv,Yv,Kv],outputs:[],internalCalls:[],parent:iG,x:0,y:0},hr="employee-dto-func-declaration-id",Bc="employee-dto-func-declaration-argument-dcl-id",Qv="employee-dto-func-declaration-return-statement-id",eg="employee-dto-func-declaration-return-decl-id",fr="employee-dto-func-declaration-employee-variable-id",mr="employee-dto-func-declaration-employee-dto-variable-id",zs="employee-dto-func-declaration-manager-variable-id",tg="employee-dto-func-declaration-employee-variable-id-output-map-id",ng="employee-dto-func-declaration-employee-variable-birth-date-output-map-id",rg="employee-dto-func-declaration-employee-variable-department-output-map-id",ig="employee-dto-func-declaration-employee-variable-manager-output-map-id",ag="employee-dto-func-declaration-manager-variable-id-output-map-id",lG="employee-dto-func-declaration-employee-dto-variable-input-map-id",cG="employee-dto-func-declaration-employee-dto-variable-birth-date-input-map-id",dG="employee-dto-func-declaration-employee-dto-variable-department-input-map-id",uG="employee-dto-func-declaration-employee-dto-variable-manager-input-map-id",pG={type:n.GenericReference,id:"employee-dto-func-returned-employee-dto-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:eg},yG={like:!1,inferred:!1,id:"employee-dto-func-returned-employee-dto-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:null,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:pG},hG={type:n.GenericReference,id:"employee-dto-func-returned-employee-dto-parent-ref-id",entityType:n.ReturnStatement,entityId:Qv},fG={type:n.GenericReference,id:"employee-dto-func-returned-employee-dto-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:mr},sg={isError:!1,id:eg,type:n.ReturnDeclaration,version:1,name:"Employee DTO",description:"Output the employee data in the format that it will be sent through an HTTP request.",dataType:yG,implements:null,readsValue:fG,required:!0,index:0,parent:hG},mG={type:n.GenericReference,id:"employee-dto-func-return-statement-called-by-ref-id",entityType:n.Operation,entityId:mr},TG={type:n.GenericReference,id:"employee-dto-func-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr},wc={type:n.ReturnStatement,id:Qv,version:1,outputs:[sg],calledByError:[],calledByEntry:[],calledBySuccess:[mG],throws:null,x:0,y:0,parent:TG},EG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-manager-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:ag},bG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},og={id:uG,type:n.InputMap,version:1,declaration:null,name:"manager_id",description:null,defaultValue:null,index:4,readsValue:EG,parent:bG},RG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-department-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:rg},vG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},lg={id:dG,type:n.InputMap,version:1,declaration:null,name:"department_name",description:null,defaultValue:null,index:3,readsValue:RG,parent:vG},gG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-birth-date-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:ng},IG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},cg={id:cG,type:n.InputMap,version:1,declaration:null,name:"birth_date",description:null,defaultValue:null,index:2,readsValue:gG,parent:IG},DG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:tg},PG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:mr},dg={id:lG,type:n.InputMap,version:1,declaration:null,name:"id",description:"The ID of the employee",defaultValue:null,index:1,readsValue:DG,parent:PG},AG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr},OG={type:n.GenericReference,id:"employee-dto-func-employee-dto-variable-called-by-ref-id",entityType:n.VariableDeclaration,entityId:zs},SG={id:mr,type:n.VariableDeclaration,version:1,name:"Employee DTO",dataType:null,description:"A variable holding the data of a mapped employee DTO",calledByError:[],calledByEntry:[],calledBySuccess:[OG],successCalls:[wc],errorCalls:[],readsValue:null,writesValues:[sg],inputs:[dg,cg,lg,og],outputs:[],internalCalls:[],parent:AG,x:0,y:0},CG={type:n.GenericReference,id:"employee-dto-func-manager-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:zs},BG={id:ag,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[og],parent:CG},wG={type:n.GenericReference,id:"employee-dto-func-manager-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:zs},_G={like:!1,inferred:!1,id:"employee-dto-func-manager-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:wG,defaultValue:null},NG={type:n.GenericReference,id:"employee-dto-func-manager-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:ig},MG={type:n.GenericReference,id:"employee-dto-func-manager-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr};n.GenericReference,n.VariableDeclaration;const ug={id:zs,type:n.VariableDeclaration,version:1,name:"Manager",dataType:_G,description:"A variable holding an inherited manager",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[SG],errorCalls:[],readsValue:NG,writesValues:[],inputs:[],outputs:[BG],internalCalls:[],parent:MG,x:0,y:0},VG={type:n.GenericReference,id:"employee-dto-func-employee-variable-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},LG={id:ig,type:n.OutputMap,version:1,declaration:Lt.properties[2],index:3,writesValues:[ug],parent:VG},GG={type:n.GenericReference,id:"employee-dto-func-employee-variable-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},$G={id:rg,type:n.OutputMap,version:1,declaration:Lt.properties[0],index:2,writesValues:[lg],parent:GG},FG={type:n.GenericReference,id:"employee-dto-func-employee-variable-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},UG={id:ng,type:n.OutputMap,version:1,declaration:ht.properties[1],index:1,writesValues:[cg],parent:FG},xG={type:n.GenericReference,id:"employee-dto-func-employee-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},jG={id:tg,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[dg],parent:xG},kG={type:n.GenericReference,id:"employee-dto-func-employee-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:fr},qG={like:!1,inferred:!1,id:"employee-dto-func-employee-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:kG,defaultValue:null},JG={type:n.GenericReference,id:"employee-dto-func-employee-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:hr},WG={type:n.GenericReference,id:"employee-dto-func-employee-variable-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:Bc},HG={type:n.GenericReference,id:"employee-dto-func-employee-variable-called-by-id",entityType:n.FunctionDeclaration,entityId:hr},pg={id:fr,type:n.VariableDeclaration,version:1,name:"Company employee",dataType:qG,description:"A variable holding a company employee",calledByError:[],calledByEntry:[HG],calledBySuccess:[],successCalls:[ug],errorCalls:[],readsValue:WG,writesValues:[],inputs:[],outputs:[jG,UG,$G,LG],internalCalls:[],parent:JG,x:0,y:0},YG={type:n.GenericReference,id:"employee-dto-func-declaration-employee-input-declaration-data-type-parent-ref-id",entityId:Bc,entityType:n.ArgumentDeclaration},zG={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"employee-dto-func-declaration-employee-input-declaration-data-type-id",version:1,entity:Lt,asType:!1,isList:!1,isNullable:!1,constant:!1,like:!1,inferred:!1,parent:YG,defaultValue:null},ZG={type:n.GenericReference,id:"employee-dto-func-declaration-employee-input-declaration-parent-ref-id",entityId:hr,entityType:n.FunctionDeclaration},KG={type:n.ArgumentDeclaration,id:Bc,version:1,name:"Employee",description:"The employee to create a DTO for",required:!0,implements:null,dataType:zG,index:0,writesValues:[pg],parent:ZG},XG={type:n.GenericReference,id:"employee-dto-function-declaration-parent-ref-id",entityType:n.Project,entityId:H},_c={type:n.FunctionDeclaration,id:hr,version:1,name:"Employee DTO",description:"Takes a employee and returns a DTO of that employee",index:null,inputs:[KG],calls:[pg],implements:null,returnStatements:[wc],collapsed:!1,private:!1,x:0,y:0,parent:XG},QG={id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-data-type-parent-ref-id",type:n.GenericReference,entityId:Lv,entityType:n.ReturnDeclaration},e$={like:!1,inferred:!1,id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:QG},t$={id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-reads-value-ref-id",type:n.GenericReference,entityId:pa,entityType:n.OutputMap},n$={id:"iterate-over-employee-list-continue-statement-employee-dto-output-decl-parent-ref-id",type:n.GenericReference,entityId:Gv,entityType:n.ContinueStatement},yg={isError:!1,id:Lv,type:n.ReturnDeclaration,version:1,name:"Employee DTO",description:"The DTO of the employee entity.",readsValue:t$,dataType:e$,implements:null,required:!0,index:0,parent:n$},r$={id:"iterate-over-employee-list-continue-statement-called-by-ref-id",type:n.GenericReference,entityId:pa,entityType:n.FunctionCall},i$={id:"iterate-over-employee-list-continue-statement-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},hg={id:Gv,type:n.ContinueStatement,version:1,calledByError:[],calledByEntry:[],calledBySuccess:[r$],outputs:[yg],throws:null,x:0,y:0,parent:i$},a$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-dto-output-map-parent-ref-id",type:n.GenericReference,entityId:pa,entityType:n.FunctionCall},s$={id:LL,type:n.OutputMap,version:1,declaration:wc.outputs[0],writesValues:[yg],index:0,parent:a$},o$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-input-map-reads-value-ref-id",type:n.GenericReference,entityId:Oc,entityType:n.ArgumentDeclaration},l$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-input-map-parent-ref-id",type:n.GenericReference,entityId:pa,entityType:n.FunctionCall},fg={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-employee-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:_c.inputs[0],readsValue:o$,index:0,defaultValue:null,parent:l$},c$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-called-by-ref-id",type:n.GenericReference,entityId:Ws,entityType:n.FunctionDeclaration},d$={id:"iterate-over-employee-list-loop-body-map-employee-dto-function-call-parent-ref-id",type:n.GenericReference,entityId:Ws,entityType:n.FunctionDeclaration},u$={id:pa,type:n.FunctionCall,version:1,declaration:_c,inputs:[fg],process:null,outputs:[s$],calledByError:[],calledByEntry:[c$],calledBySuccess:[],successCalls:[hg],errorCalls:[],error:null,x:0,y:0,parent:d$},p$={type:n.GenericReference,id:"iterate-over-employee-list-loop-body-current-employee-argument-declaration-data-type-parent-ref-id",entityId:Oc,entityType:n.ArgumentDeclaration},y$={like:!1,inferred:!1,id:"iterate-over-employee-list-loop-body-current-employee-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:Lt,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:p$},h$={id:"iterate-over-employee-list-loop-body-current-employee-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:Ws,entityType:n.FunctionDeclaration},f$={id:Oc,type:n.ArgumentDeclaration,version:1,name:"Current employee",description:"The current employee entity being processed.",dataType:y$,required:!0,implements:ns,index:0,writesValues:[fg],parent:h$},m$={id:"iterate-over-employee-list-loop-body-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},T$={id:Ws,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[f$],calls:[u$],implements:rs,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:m$},E$={id:"iterate-over-employee-list-loop-iteration-list-input-map-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},b$={id:"iterate-over-employee-list-loop-iteration-list-input-map-reads-value-ref-id",type:n.GenericReference,entityId:xv,entityType:n.OutputMap},mg={id:"iterate-over-employee-list-loop-iteration-list-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:ir.inputs[0],defaultValue:null,readsValue:b$,index:0,parent:E$},R$={id:"iterate-over-employee-list-loop-parent-ref-id",type:n.GenericReference,entityId:bn,entityType:n.FunctionDeclaration},v$={id:"iterate-over-employee-list-loop-employee-dto-output-map-parent-ref-id",type:n.GenericReference,entityId:li,entityType:n.Loop},g$={id:Vv,type:n.OutputMap,version:1,declaration:ir.outputs[0],writesValues:[Kv],index:0,parent:v$},I$={type:n.GenericReference,id:"iterate-over-employee-list-loop-called-by-ref-id",entityType:n.VariableDeclaration,entityId:rn},D$={id:li,type:n.Loop,version:1,declaration:ir,inputs:[mg],successCalls:[Cc],errorCalls:[],outputsDeclarations:[],outputs:[g$],body:T$,process:null,calledByError:[],calledByEntry:[],calledBySuccess:[I$],breakStatements:[],continueStatements:[hg],error:null,x:0,y:0,parent:R$},P$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ys},A$={id:Wv,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[zv],parent:P$},O$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ys},S$={like:!1,inferred:!1,id:"company-dto-func-bank-account-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:O$,defaultValue:null},C$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:Jv},B$={type:n.GenericReference,id:"company-dto-func-bank-account-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn};n.GenericReference,n.VariableDeclaration;const Tg={id:Ys,type:n.VariableDeclaration,version:1,name:"Bank account",dataType:S$,description:"A variable holding an inherited bank account",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[Cc],errorCalls:[],readsValue:C$,writesValues:[],inputs:[],outputs:[A$],internalCalls:[],parent:B$,x:0,y:0},w$={type:n.GenericReference,id:"company-dto-func-owner-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Hs},_$={id:qv,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[Yv],parent:w$},N$={type:n.GenericReference,id:"company-dto-func-owner-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:Hs},M$={like:!1,inferred:!1,id:"company-dto-func-owner-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:N$,defaultValue:null},V$={type:n.GenericReference,id:"company-dto-func-owner-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:kv},L$={type:n.GenericReference,id:"company-dto-func-owner-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn};n.GenericReference,n.VariableDeclaration;const Eg={id:Hs,type:n.VariableDeclaration,version:1,name:"Owner",dataType:M$,description:"A variable holding an inherited owner",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[Cc],errorCalls:[],readsValue:V$,writesValues:[],inputs:[],outputs:[_$],internalCalls:[],parent:L$,x:0,y:0},G$={type:n.GenericReference,id:"company-dto-func-company-variable-owner-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},$$={id:kv,type:n.OutputMap,version:1,declaration:Gt.properties[2],index:4,writesValues:[Eg],parent:G$},F$={type:n.GenericReference,id:"company-dto-func-company-variable-bank-account-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},U$={id:Jv,type:n.OutputMap,version:1,declaration:Gt.properties[2],index:3,writesValues:[Tg],parent:F$},x$={type:n.GenericReference,id:"company-dto-func-company-variable-name-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},j$={id:jv,type:n.OutputMap,version:1,declaration:Gt.properties[0],index:2,writesValues:[Zv],parent:x$},k$={type:n.GenericReference,id:"company-dto-func-company-variable-employess-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},q$={id:xv,type:n.OutputMap,version:1,declaration:Gt.properties[3],index:1,writesValues:[mg],parent:k$},J$={type:n.GenericReference,id:"company-dto-func-company-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},W$={id:Uv,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[Xv],parent:J$},H$={type:n.GenericReference,id:"company-dto-func-company-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:rn},Y$={like:!1,inferred:!1,id:"company-dto-func-company-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:H$,defaultValue:null},z$={type:n.GenericReference,id:"company-dto-func-company-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:bn},Z$={type:n.GenericReference,id:"company-dto-func-company-variable-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:Ac},K$={type:n.GenericReference,id:"company-dto-func-company-variable-called-by-id",entityType:n.FunctionDeclaration,entityId:bn},bg={id:rn,type:n.VariableDeclaration,version:1,name:"Company",dataType:Y$,description:"A variable holding a company",calledByError:[],calledByEntry:[K$],calledBySuccess:[],successCalls:[Tg,Eg,D$],errorCalls:[],readsValue:Z$,writesValues:[],inputs:[],outputs:[W$,q$,j$,U$,$$],internalCalls:[],parent:z$,x:0,y:0},X$={type:n.GenericReference,id:"company-dto-func-declaration-company-input-declaration-data-type-parent-ref-id",entityId:Ac,entityType:n.ArgumentDeclaration},Q$={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"company-dto-func-declaration-company-input-declaration-data-type-id",version:1,entity:Gt,asType:!1,isList:!1,isNullable:!1,constant:!1,like:!1,inferred:!1,parent:X$,defaultValue:null},eF={type:n.GenericReference,id:"company-dto-func-declaration-company-input-declaration-parent-ref-id",entityId:bn,entityType:n.FunctionDeclaration},tF={type:n.ArgumentDeclaration,id:Ac,version:1,name:"Company",description:"The company to create a DTO for",required:!0,implements:null,dataType:Q$,index:0,writesValues:[bg],parent:eF},nF={type:n.GenericReference,id:"company-dto-function-declaration-parent-ref-id",entityType:n.Project,entityId:H},Nc={type:n.FunctionDeclaration,id:bn,version:1,name:"Company DTO",description:"Takes a company and returns a DTO of that company",inputs:[tF],calls:[bg],implements:null,index:null,returnStatements:[Sc],collapsed:!1,private:!1,x:0,y:0,parent:nF},ya="exec-in-parallel-operation-call-id",ha="exec-sequentially-operation-call-id",ft="concurrency-and-wait-function-declaration-id",Rg="concurrency-and-wait-return-statement-id",vg="concurrency-and-wait-return-declaration-id",Mc="exec-in-parallel-argument-map-id",gg="exec-sequentially-argument-map-id",Vc="wait-for-2-seconds-operation-id",Ig="wait-for-2-seconds-argument-map-id",Lc="map-company-dto-function-call-id",Dg="map-company-dto-function-call-company-dto-output-map-id",fa="company-dto-variable-one-id",Gc="company-dto-variable-one-instance-id",rF="company-dto-variable-two-id",iF={type:n.GenericReference,id:"returned-company-dto-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:vg},aF={like:!1,inferred:!1,id:"returned-company-dto-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:iF},sF={type:n.GenericReference,id:"returned-company-dto-parent-ref-id",entityType:n.ReturnStatement,entityId:Rg},oF={type:n.GenericReference,id:"returned-company-dto-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:fa},Pg={isError:!1,id:vg,type:n.ReturnDeclaration,version:1,name:"Company DTO",description:"Output the company data in the format that it will be sent through an HTTP request.",dataType:aF,implements:null,readsValue:oF,required:!0,index:0,parent:sF},lF={type:n.GenericReference,id:"concurrency-and-wait-return-statement-called-by-ref-id",entityType:n.Operation,entityId:Vc},cF={type:n.GenericReference,id:"concurrency-and-wait-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},Ag={type:n.ReturnStatement,id:Rg,version:1,outputs:[Pg],calledByError:[],calledByEntry:[],calledBySuccess:[lF],throws:null,x:0,y:0,parent:cF},dF={type:n.GenericReference,id:"company-dto-variable-two-called-by-ref-id",entityType:n.VariableInstance,entityId:Gc},uF={type:n.GenericReference,id:"company-dto-variable-two-reads-value-ref-id",entityType:n.VariableInstance,entityId:Gc},pF={type:n.GenericReference,id:"company-dto-variable-two-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},Og={id:rF,type:n.VariableDeclaration,version:1,name:"Company DTO",description:null,dataType:null,inputs:[],outputs:[],successCalls:[],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[dF],internalCalls:[],writesValues:[Pg],readsValue:uF,x:0,y:0,parent:pF},yF={type:n.GenericReference,id:"company-dto-variable-one-instance-called-by-ref-id",entityType:n.VariableDeclaration,entityId:fa},hF={type:n.GenericReference,id:"company-dto-variable-one-instance-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:fa},fF={type:n.GenericReference,id:"company-dto-variable-one-instance-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},mF={type:n.GenericReference,id:"company-dto-variable-one-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:fa},Sg={id:Gc,type:n.VariableInstance,version:1,declaration:mF,inputs:[],outputs:[],successCalls:[Og],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[yF],internalCalls:[],writesValues:[Og],readsValue:hF,x:0,y:0,parent:fF},TF={type:n.GenericReference,id:"company-dto-variable-one-called-by-ref-id",entityType:n.FunctionCall,entityId:Lc},EF={type:n.GenericReference,id:"company-dto-variable-one-reads-value-ref-id",entityType:n.OutputMap,entityId:Dg},bF={type:n.GenericReference,id:"company-dto-variable-one-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},Cg={id:fa,type:n.VariableDeclaration,version:1,name:"Company DTO",description:null,dataType:null,inputs:[],outputs:[],successCalls:[Sg],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[TF],internalCalls:[],writesValues:[Sg],readsValue:EF,x:0,y:0,parent:bF},Bg={type:n.GenericReference,id:"map-company-dto-function-call-company-input-map-parent-ref-id",entityType:n.FunctionCall,entityId:Lc},RF={id:"map-company-dto-function-call-company-input-map-id",type:n.InputMap,version:1,declaration:Nc.inputs[0],name:null,description:null,defaultValue:null,index:0,readsValue:null,parent:Bg},vF={id:Dg,type:n.OutputMap,version:1,declaration:Sc.outputs[0],writesValues:[Cg],index:0,parent:Bg},gF={id:"map-company-dto-function-call-called-by-ref-id",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:ft},IF={id:"map-company-dto-function-call-parent-ref-id",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:ft},DF={id:Lc,type:n.FunctionCall,version:1,declaration:Nc,successCalls:[Cg],process:null,errorCalls:[],inputs:[RF],outputs:[vF],calledByError:[],calledByEntry:[gF],calledBySuccess:[],parent:IF,x:0,y:0,error:null},PF={type:n.GenericReference,id:"last-timestamp-variable-datatype-parent-ref-id",entityType:n.VariableDeclaration,entityId:OR},AF={type:n.GenericReference,id:"last-timestamp-variable-default-value-parent-ref-id",entityType:n.DataType,entityId:"last-timestamp-variable-datatype-id"},OF={like:!1,inferred:!1,id:"last-timestamp-variable-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:pn,version:1,asType:!1,isList:!1,isNullable:!1,constant:!1,parent:PF,defaultValue:{id:"last-timestamp-variable-default-value-id",type:n.PrimitiveValue,version:1,name:P.Date,value:null,autogeneration:{type:We.CurrentDateAndTime,rangeStart:null,rangeEnd:null},parent:AF,valueAsType:null}},SF={type:n.GenericReference,id:"last-timestamp-variable-main-project-ref-id",entityType:n.Project,entityId:H},$c={id:OR,type:n.VariableDeclaration,version:1,name:"Last registered current time",description:"A test variable that holds the last current date and time that was registered.",dataType:OF,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:SF},CF={type:n.GenericReference,id:"wait-for-2-seconds-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:Ig},BF={type:n.GenericReference,id:"wait-for-2-seconds-argument-map-parent-ref-id",entityType:n.Operation,entityId:Vc},wF={id:Ig,type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"wait-for-2-seconds-argument-default-value-id",type:n.PrimitiveValue,version:1,value:2e3,valueAsType:null,autogeneration:null,name:P.Number,parent:CF},index:0,parent:BF},_F={type:n.GenericReference,id:"wait-for-2-seconds-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},NF={type:n.GenericReference,id:"wait-for-2-seconds-called-by-ref-one-id",entityType:n.FunctionDeclaration,entityId:ha},MF={type:n.GenericReference,id:"wait-for-2-seconds-called-by-ref-two-id",entityType:n.FunctionDeclaration,entityId:ya},wg={id:Vc,type:n.Operation,version:1,declaration:Wt,inputs:[wF],outputs:[],process:null,successCalls:[Ag],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[NF,MF],calledBySuccess:[],error:null,parent:_F},VF={type:n.GenericReference,id:"wait-for-random-amount-argument-default-value-parent-ref-id",entityType:n.InputMap,entityId:"wait-for-random-amount-input-map-id"},LF={type:n.GenericReference,id:"wait-for-random-amount-argument-map-parent-ref-id",entityType:n.Operation,entityId:"wait-for-random-amount-id"},GF={id:"wait-for-random-amount-input-map-id",type:n.InputMap,version:1,declaration:tr,name:null,description:null,readsValue:null,defaultValue:{id:"wait-for-random-amount-argument-default-value-id",type:n.PrimitiveValue,version:1,value:null,valueAsType:null,autogeneration:{type:We.Random,rangeStart:1e3,rangeEnd:4e3},name:P.Number,parent:VF},index:0,parent:LF},$F={type:n.GenericReference,id:"wait-for-random-amount-parent-ref-id",entityType:n.Project,entityId:H},ci={id:"wait-for-random-amount-id",type:n.Operation,version:1,declaration:Wt,inputs:[GF],process:null,outputs:[],successCalls:[],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[],calledBySuccess:[],error:null,parent:$F},_g="list-of-functions-variable-id",FF={type:n.GenericReference,id:"list-of-functions-variable-action-descriptor-dynamic-argument-parent-ref-id",entityType:n.ActionDescriptor,entityId:"list-of-functions-variable-action-descriptor-id"},UF={id:"list-of-functions-variable-action-descriptor-dynamic-argument-id",type:n.ValueDescriptor,version:1,name:"Any input value",description:"Any input value that can be passed to the action",index:0,required:!1,dataType:null,parent:FF},xF={type:n.GenericReference,id:"list-of-functions-variable-action-descriptor-dynamic-return-parent-ref-id",entityType:n.ActionDescriptor,entityId:"list-of-functions-variable-action-descriptor-id"},jF={id:"list-of-functions-variable-action-descriptor-dynamic-return-id",type:n.ValueDescriptor,version:1,name:"Any output value",description:"Any output value that can be returned to the action",index:0,required:!1,dataType:null,parent:xF},kF={type:n.GenericReference,id:"list-of-functions-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:_g},qF={id:"list-of-functions-variable-action-descriptor-id",type:n.ActionDescriptor,version:1,name:"Action to execute",description:"An action of any type, to be executed. It can contain any number of inputs and outputs.",inputs:[UF],error:null,outputs:[jF],parent:null},JF={type:n.GenericReference,id:"list-of-functions-variable-data-type-default-parent-ref-id",entityType:n.DataType,entityId:"list-of-functions-variable-data-type-id"},WF={like:!1,inferred:!1,id:"list-of-functions-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:qF,asType:!1,isList:!0,isNullable:!1,defaultValue:{id:"list-of-functions-variable-data-type-default-value-id",type:n.PrimitiveValue,version:1,name:P.ActionDescriptor,value:null,valueAsType:[ci,ci,ci,ci,ci],autogeneration:null,parent:JF},constant:!1,parent:kF},HF={type:n.GenericReference,id:"list-of-functions-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft};n.GenericReference,n.InputMap;const YF={type:n.GenericReference,id:"list-of-functions-variable-writes-value-one-ref-id",entityType:n.InputMap,entityId:gg},zF={type:n.GenericReference,id:"list-of-functions-variable-writes-value-two-ref-id",entityType:n.InputMap,entityId:Mc},Ng={id:_g,type:n.VariableDeclaration,version:1,name:"List of functions to execute",description:"A list of functions to be executed in parallel",dataType:WF,parent:HF,readsValue:null,writesValues:[YF,zF],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],inputs:[],outputs:[],internalCalls:[],x:0,y:0},ZF={type:n.GenericReference,id:"exec-in-parallel-return-map-parent-ref-id",entityType:n.Operation,entityId:ya},KF={type:n.GenericReference,id:"exec-in-parallel-result-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},XF={type:n.GenericReference,id:"exec-in-parallel-result-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:"exec-in-parallel-return-map-id"},QF={type:n.GenericReference,id:"exec-in-parallel-result-variable-called-by-ref-id",entityType:n.Operation,entityId:ya},Mg={id:"exec-in-parallel-result-variable-id",type:n.VariableInstance,version:1,declaration:$c,readsValue:XF,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[QF],successCalls:[],errorCalls:[],internalCalls:[],parent:KF,x:0,y:0},eU={id:"exec-in-parallel-return-map-id",type:n.OutputMap,version:1,declaration:fl,writesValues:[Mg],index:0,parent:ZF},tU={type:n.GenericReference,id:"exec-in-parallel-argument-map-parent-ref-id",entityType:n.Operation,entityId:ya},nU={id:Mc,type:n.InputMap,version:1,declaration:hl,name:null,description:null,readsValue:Ng,defaultValue:null,index:0,parent:tU},rU={type:n.GenericReference,id:"exec-in-parallel-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},iU={type:n.GenericReference,id:"exec-in-parallel-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ft},aU={process:null,id:ya,type:n.Operation,version:1,declaration:Wt,inputs:[nU],outputs:[eU],successCalls:[wg,Mg],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[iU],calledBySuccess:[],error:null,parent:rU},sU={type:n.GenericReference,id:"exec-sequentially-return-map-parent-ref-id",entityType:n.Operation,entityId:ha},oU={type:n.GenericReference,id:"exec-sequentially-result-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},lU={type:n.GenericReference,id:"exec-sequentially-result-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:"exec-sequentially-return-map-id"},cU={type:n.GenericReference,id:"exec-sequentially-result-variable-called-by-ref-id",entityType:n.Operation,entityId:ha},Vg={id:"exec-sequentially-result-variable-id",type:n.VariableInstance,version:1,declaration:$c,readsValue:lU,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[cU],successCalls:[],errorCalls:[],internalCalls:[],parent:oU,x:0,y:0},dU={id:"exec-sequentially-return-map-id",type:n.OutputMap,version:1,declaration:Tl,writesValues:[Vg],index:0,parent:sU},uU={type:n.GenericReference,id:"exec-sequentially-argument-map-parent-ref-id",entityType:n.Operation,entityId:ha},pU={id:gg,type:n.InputMap,version:1,declaration:ml,name:null,description:null,readsValue:Ng,defaultValue:null,index:0,parent:uU},yU={type:n.GenericReference,id:"exec-sequentially-parent-ref-id",entityType:n.FunctionDeclaration,entityId:ft},hU={type:n.GenericReference,id:"exec-sequentially-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:ft},fU={id:ha,type:n.Operation,version:1,declaration:mn,inputs:[pU],process:null,outputs:[dU],successCalls:[wg,Vg],errorCalls:[],x:0,y:0,calledByError:[],calledByEntry:[hU],calledBySuccess:[],error:null,parent:yU},mU={type:n.GenericReference,id:"concurrency-and-wait-parent-ref-id",entityType:n.Project,entityId:H},TU={type:n.FunctionDeclaration,id:ft,version:1,name:"Execute with concurrency and wait",description:"Executes a hardcoded list of actions in parallel and waits for some time before ending the logic with some unrelated data payload as the result.",inputs:[],calls:[fU,aU,DF],returnStatements:[Ag],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:mU},EU={type:n.GenericReference,id:"3521f2c8-a5c0-419c-8808-4fc6a73d0b78",entityType:n.ReturnDeclaration,entityId:"e1ec31f0-25ca-42ac-a4c4-c9ec2255f55b"},bU={like:!1,inferred:!1,id:"ce8b9a30-afe9-4d4f-879f-1677efca2c47",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Gt,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:EU},RU={type:n.GenericReference,id:"8ee66e38-b060-474e-a503-594063a8ec24",entityType:n.ReturnStatement,entityId:"40a23a98-d3b2-42b1-9652-b33779ad15aa"},vU={isError:!1,id:"e1ec31f0-25ca-42ac-a4c4-c9ec2255f55b",type:n.ReturnDeclaration,version:1,name:"Created company",description:"The new company that was created",implements:null,dataType:bU,readsValue:null,required:!0,index:0,parent:RU},gU={type:n.GenericReference,id:"9cb3c1e4-7250-4be6-be2a-69c2dd366d6f",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},IU={type:n.GenericReference,id:"c065fcdd-e054-4f95-941c-7eaa65c35d04",entityType:n.FunctionDeclaration,entityId:"d683bfc1-a464-4810-8ec0-1dd8eaa0c3c4"},Lg={type:n.ReturnStatement,id:"40a23a98-d3b2-42b1-9652-b33779ad15aa",version:1,outputs:[vU],calledByError:[],calledByEntry:[IU],calledBySuccess:[],throws:null,x:0,y:0,parent:gU},DU={type:n.GenericReference,id:"312ef836-9e40-4d57-b177-03b7145ed074",entityType:n.Project,entityId:H},PU={type:n.FunctionDeclaration,id:"5059c093-eda2-4efc-b7b4-aaaadd4d44de",version:1,name:"Create new company",description:null,inputs:[],calls:[Lg],index:null,implements:null,returnStatements:[Lg],collapsed:!1,private:!1,x:0,y:0,parent:DU},Fc="get-current-date-and-time-func-decl-id",Gg="get-current-date-and-time-return-statement-id",$g="get-current-date-and-time-return-declaration-id",Fg="get-current-date-and-time-return-declaration-data-type-id",AU={type:n.GenericReference,id:"get-current-date-and-time-return-declaration-data-type-value-parent-ref-id",entityType:n.DataType,entityId:Fg},OU={type:n.GenericReference,id:"get-current-date-and-time-return-declaration-data-type-parent-ref-id",entityType:n.ReturnDeclaration,entityId:$g},SU={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:Fg,version:1,entity:pn,asType:!1,isList:!1,isNullable:!1,like:!1,inferred:!1,defaultValue:{id:"last-timestamp-variable-default-value-id",type:n.PrimitiveValue,version:1,value:null,name:P.Date,valueAsType:null,autogeneration:{type:We.CurrentDateAndTime,rangeStart:null,rangeEnd:null},parent:AU},constant:!1,parent:OU},CU={type:n.GenericReference,id:"get-current-date-and-time-return-declaration-parent-ref-id",entityType:n.ReturnStatement,entityId:Gg};n.ReturnDeclaration;const BU={type:n.GenericReference,id:"get-current-date-and-time-return-statement-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:Fc},wU={type:n.GenericReference,id:"get-current-date-and-time-return-statement-parent-ref-id",entityType:n.FunctionDeclaration,entityId:Fc};n.ReturnStatement;const _U={type:n.GenericReference,id:"concurrency-and-wait-parent-ref-id",entityType:n.Project,entityId:H},NU={type:n.FunctionDeclaration,id:Fc,version:1,name:"Get current date and time",description:"Generates and returns the current date and time at the time of the execution",inputs:[],calls:[],returnStatements:[],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:_U},Ug="do-math-return-statement-id",xg="do-math-return-declaration-id",MU={type:n.GenericReference,id:"do-math-func-var-to-return-one-ref-id",entityType:n.VariableDeclaration,entityId:"do-math-func-var-to-return-one-id"},VU={like:!1,inferred:!1,id:"do-math-func-var-to-return-one-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:MU},LU={type:n.GenericReference,id:"do-math-func-decl-ref-two-id",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},GU={type:n.GenericReference,id:"do-math-func-var-to-return-one-map-ref-id",entityType:n.ReturnDeclaration,entityId:xg},$U={type:n.VariableDeclaration,id:"do-math-func-var-to-return-one-id",version:1,description:null,name:"Fixed result",dataType:VU,readsValue:null,writesValues:[GU],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:LU},FU={type:n.GenericReference,id:"96ec244e-594b-45f7-802b-6dc3056920f6",entityType:n.ReturnStatement,entityId:Ug},UU={type:n.GenericReference,id:"d120c0cc-9d13-4e45-90e2-4e1ee825ca46",entityType:n.ReturnDeclaration,entityId:"873a3556-4911-4141-b2a0-49c677b56fb4"},xU={like:!1,inferred:!1,id:"da91aa23-9985-49ac-a8bf-9d623ba1ba8f",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:UU},jU={isError:!1,id:xg,version:1,type:n.ReturnDeclaration,name:"Result",description:null,implements:null,dataType:xU,readsValue:$U,required:!0,index:0,parent:FU},kU={type:n.GenericReference,id:"57fd93e4-93a1-484e-82eb-4dd15d2d0e24",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},qU={type:n.GenericReference,id:"0a86e8d5-ab21-476e-a482-b928cbf351e3",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},jg={type:n.ReturnStatement,id:Ug,version:1,outputs:[jU],calledByError:[],calledByEntry:[],calledBySuccess:[kU],parent:qU,throws:null,x:0,y:0},JU={type:n.GenericReference,id:"a2db26be-57f2-48e5-9769-cdbf0d95dc7c",entityType:n.VariableDeclaration,entityId:"d0e9f1f3-7e9f-4e1f-8d8e-7b4b3e6c6a6a"},WU={like:!1,inferred:!1,id:"c3e9d5f0-204f-45f9-85f7-e1b56b468388",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,asType:!1,isList:!1,isNullable:!1,defaultValue:null,constant:!1,parent:JU},HU={type:n.GenericReference,id:"692122c5-610a-4504-90dd-f5a5202d116c",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},YU={type:n.GenericReference,id:"do-math-func-return-one-called-by",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},zU={type:n.GenericReference,id:"6dceb501-be5b-4252-afb4-3c0d08abba33",entityType:n.OutputMap,entityId:"64752080-ee0f-4cfe-9897-a0668f2b2aca"},kg={type:n.VariableDeclaration,id:"d0e9f1f3-7e9f-4e1f-8d8e-7b4b3e6c6a6a",version:1,name:"Result",dataType:WU,description:null,readsValue:zU,writesValues:[],inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[YU],successCalls:[],errorCalls:[],internalCalls:[],x:0,y:0,parent:HU},ZU={type:n.GenericReference,id:"5440f523-af38-4981-8035-89d162fe8041",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},KU={type:n.GenericReference,id:"8c482c35-e674-4713-a1dd-63c3d13b611c",entityType:n.OutputMap,entityId:"64752080-ee0f-4cfe-9897-a0668f2b2aca"},XU={type:n.GenericReference,id:"c0a299cd-5869-4930-8cf0-90e3ceb8a903",entityType:n.VariableDeclaration,entityId:"46b2fe23-b417-4887-a35d-09b186679172"},QU={like:!1,inferred:!1,id:"51c0c1df-2ee3-41df-ae52-ac512d8cf795",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,asType:!1,isNullable:!1,defaultValue:null,constant:!1,parent:XU},e4={type:n.GenericReference,id:"do-math-func-return-two-called-by",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},qg={type:n.VariableDeclaration,id:"46b2fe23-b417-4887-a35d-09b186679172",version:1,name:"Total",description:null,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[e4],successCalls:[],errorCalls:[],dataType:QU,readsValue:KU,writesValues:[],internalCalls:[],parent:ZU,x:0,y:0},Jg={type:n.GenericReference,id:"6e4d776e-6af2-4321-b630-c78110fd677c",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},t4={type:n.GenericReference,id:"5b60955b-2486-40b6-bb24-ffd97ccd8902",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},n4={type:n.GenericReference,id:"1a49923f-bc6f-453f-a438-e74e5475c2a9",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},r4={type:n.GenericReference,id:"02bfde0a-b757-4072-9613-6e9c7c9a424a",entityType:n.ArgumentDeclaration,entityId:"d8895765-f705-457e-85fa-25d130926769"},Wg={id:"928953b0-0e3f-4d8c-ae5a-84620b4b8c68",version:1,type:n.InputMap,declaration:tl,name:null,description:null,readsValue:r4,defaultValue:null,index:0,parent:n4},i4={id:"64752080-ee0f-4cfe-9897-a0668f2b2aca",type:n.OutputMap,version:1,declaration:il,writesValues:[kg,qg],index:0,parent:t4},a4={type:n.GenericReference,id:"d235a7f6-07ff-4f35-98d2-8f42dd59cf9f",entityType:n.Operation,entityId:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e"},s4={id:"8827e8e9-9381-4ad7-8f61-5419c23c9136",type:n.GenericReference,entityType:n.VariableDeclaration,entityId:"72a338d8-0183-4ca2-8760-227517854595"},Hg={id:"a5525249-0eb5-472b-97bc-5e4cc0d75aee",version:1,type:n.InputMap,declaration:nl,name:null,description:null,readsValue:s4,defaultValue:null,index:1,parent:a4},o4={type:n.Operation,id:"e8c8c0a3-2e3e-4f6a-8e3d-8e0a0f9d7d8e",declaration:Ja,version:1,inputs:[Wg,Hg],outputs:[i4],calledByError:[],calledByEntry:[Jg],calledBySuccess:[],process:null,successCalls:[jg,kg,qg],errorCalls:[],parent:Jg,error:null,x:0,y:0},l4={type:n.GenericReference,id:"a2c40226-2270-4963-a865-c777ba79c551",entityType:n.DataType,entityId:"a350a9e9-25ee-477f-a83d-9e98ed2451662"},c4={id:"f47731b3-f278-4ab5-aeb2-24519c1119fb",type:n.GenericReference,entityId:"72a338d8-0183-4ca2-8760-227517854595",entityType:n.ArgumentDeclaration},Yg={like:!1,inferred:!1,id:"a350a9e9-25ee-477f-a83d-9e98ed2451662",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"do-math-func-argument-two-default-value-id",type:n.PrimitiveValue,version:1,value:1,name:P.Number,parent:l4,valueAsType:null,autogeneration:null},constant:!1,parent:c4},d4={type:n.GenericReference,id:"5f5d8dd0-7f3b-40cd-9f84-83d976887eaf",entityType:n.ArgumentDeclaration,entityId:"649bf0a4-6532-44aa-9818-a03d1c6564e9"},u4={type:n.GenericReference,id:"ca018d0f-a8b3-4c7e-a408-c8b372d04aff",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},p4={type:n.GenericReference,id:"do-math-func-var-called-by-ref",entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},zg={type:n.VariableDeclaration,id:"72a338d8-0183-4ca2-8760-227517854595",version:1,name:"Z",description:null,dataType:Yg,inputs:[],outputs:[],calledByError:[],calledByEntry:[p4],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:d4,writesValues:[Hg],internalCalls:[],x:0,y:0,parent:u4},y4={entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b",type:n.GenericReference,id:"af0cf105-4075-425f-aecc-b25d3600fcc4"},h4={id:"649bf0a4-6532-44aa-9818-a03d1c6564e9",type:n.ArgumentDeclaration,version:1,name:"Z",description:"The number to add",dataType:Yg,implements:null,writesValues:[zg],required:!0,index:1,parent:y4},f4={type:n.GenericReference,id:"56953b5d-3e43-4dea-a62c-f3e868ba81bb",entityType:n.Project,entityId:H},m4={id:"868defc8-5c95-48ed-942d-257e8b9b9b00",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b"},T4={type:n.GenericReference,id:"35167664-a793-49f1-9eaf-fb57eac30897",entityType:n.DataType,entityId:"55b12914-91b1-48b7-9a3e-9c5d0d2a2ec2"},E4={id:"d47ceef6-be6f-40f1-a7b3-c73c8d8a6c6a",type:n.GenericReference,entityId:"d8895765-f705-457e-85fa-25d130926769",entityType:n.ArgumentDeclaration},b4={like:!1,inferred:!1,id:"55b12914-91b1-48b7-9a3e-9c5d0d2a2ec2",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,isNullable:!1,asType:!1,defaultValue:{id:"do-math-func-argument-one-default-value-id",type:n.PrimitiveValue,version:1,value:5,name:P.Number,parent:T4,valueAsType:null,autogeneration:null},constant:!1,parent:E4},R4={id:"d8895765-f705-457e-85fa-25d130926769",type:n.ArgumentDeclaration,version:1,name:"N",dataType:b4,description:"The number to add",implements:null,writesValues:[Wg],required:!0,index:0,parent:m4},v4={type:n.FunctionDeclaration,id:"b4c1d8d2-9c5e-4e0c-bd5e-3a6a0e4d2f0b",version:1,name:"Do math",description:"This function does math",inputs:[R4,h4],calls:[o4,zg],implements:null,index:null,collapsed:!1,returnStatements:[jg],private:!1,x:0,y:0,parent:f4},mt="replace-bank-account-in-company-func-declaration-id",Uc="company-entity-to-modify-arg-declaration-id",xc="account-number-to-create-arg-decl-id",di="company-main-variable-id",ui="search-person-by-id-id",Zg="new-bank-account-owner-arg-decl-id",Kg="search-person-by-id-output-declaration-id",jc="search-person-by-id-output-entity-map-id",ma="person-not-empty-condition-id",Zs="create-new-bank-account-instance-operation-id",Xg="create-new-bank-account-instance-operation-output-entity-map-id",Qg="company-bank-account-output-map-id",kc="old-bank-account-var-declaration-id",eI="old-bank-account-var-instance-id",tI="company-variable-instance-id",qc="delete-bank-account-internal-call-id",Ta="new-bank-account-data-variable-declaration-id",g4={type:n.GenericReference,id:"company-variable-instance-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},I4={type:n.GenericReference,id:"company-variable-instance-called-by-ref-id",entityType:n.InternalCall,entityId:qc},D4={type:n.GenericReference,id:"company-variable-instance-declaration-ref-id",entityType:n.VariableDeclaration,entityId:di},P4={type:n.GenericReference,id:"bank-account-input-map-parent-ref-id",entityType:n.VariableInstance,entityId:tI},A4={type:n.GenericReference,id:"bank-account-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:Xg},nI={type:n.InputMap,id:"bank-account-input-map-id",version:1,readsValue:A4,declaration:Tc,name:null,description:null,index:0,defaultValue:null,parent:P4},O4={type:n.VariableInstance,id:tI,version:1,declaration:D4,inputs:[nI],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[I4],successCalls:[],errorCalls:[],internalCalls:[],parent:g4,readsValue:null,writesValues:[],x:0,y:0},S4={type:n.GenericReference,id:"bank-account-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:di},C4={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"bank-account-variable-data-type-id",version:1,entity:si,asType:!1,isList:!1,isNullable:!1,constant:!1,like:!1,inferred:!1,defaultValue:null,parent:S4},B4={type:n.GenericReference,id:"bank-account-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:Qg},w4={type:n.GenericReference,id:"bank-account-variable-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},_4={type:n.GenericReference,id:"bank-account-variable-called-by-ref-id",entityType:n.VariableDeclaration,entityId:di},N4={type:n.GenericReference,id:"delete-bank-account-internal-call-called-by-ref-id",entityType:n.Operation,entityId:Zs};n.GenericReference,n.VariableInstance;const M4={type:n.GenericReference,id:"delete-bank-account-internal-call-called-by-ref-two-id",entityType:n.VariableDeclaration,entityId:kc},V4={type:n.GenericReference,id:"old-bank-account-variable-trigger-delete-decl-ref-id",entityType:n.VariableDeclaration,entityId:kc},L4={type:n.GenericReference,id:"bank-account-variable-parent-ref-two-id",entityType:n.FunctionDeclaration,entityId:mt},G4={type:n.GenericReference,id:"old-bank-account-variable-trigger-delete-internal-call-ref-id",entityType:n.InternalCall,entityId:qc},$4={type:n.VariableInstance,id:eI,version:1,declaration:V4,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],internalCalls:[G4],errorCalls:[],parent:L4,readsValue:null,writesValues:[],x:0,y:0},rI={process:null,type:n.InternalCall,id:qc,version:1,declaration:jl,index:0,successCalls:[O4],errorCalls:[],inputs:[],outputs:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[N4,M4],parent:$4},iI={type:n.VariableDeclaration,id:kc,version:1,name:"Old bank account",description:"The existing bank account that needs to be replaced in the company entity",dataType:C4,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[_4],successCalls:[rI],internalCalls:[],errorCalls:[],parent:w4,readsValue:B4,writesValues:[],x:0,y:0},F4={type:n.GenericReference,id:"company-variable-declaration-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:di},U4={type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,id:"company-variable-declaration-data-type-id",version:1,entity:Gt,asType:!1,isList:!1,isNullable:!1,like:!1,inferred:!1,constant:!1,defaultValue:null,parent:F4},x4={type:n.GenericReference,id:"company-variable-declaration-reads-value-ref-id",entityType:n.ArgumentDeclaration,entityId:Uc},j4={type:n.GenericReference,id:"company-variable-declaration-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},k4={type:n.GenericReference,id:"company-variable-declaration-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:mt},q4={type:n.GenericReference,id:"company-bank-account-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:di},J4={id:Qg,version:1,type:n.OutputMap,declaration:Tc,index:0,parent:q4,writesValues:[iI]},aI={type:n.VariableDeclaration,id:di,version:1,name:"Company",description:"The company entity that was passed as an argument to the parent function",dataType:U4,inputs:[],outputs:[J4],calledByError:[],calledByEntry:[k4],calledBySuccess:[],successCalls:[iI],errorCalls:[],parent:j4,internalCalls:[],readsValue:x4,writesValues:[],x:0,y:0},W4={type:n.GenericReference,id:"create-new-bank-account-account-owner-dynamic-input-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ta},H4={id:"create-new-bank-account-account-owner-dynamic-input-map-reads-value-ref-id",type:n.GenericReference,entityType:n.OutputMap,entityId:jc},sI={id:"create-new-bank-account-account-owner-dynamic-input-map-id",version:1,type:n.InputMap,declaration:null,name:"Account owner",description:null,readsValue:H4,index:1,defaultValue:null,parent:W4},Y4={id:"create-new-bank-account-account-number-dynamic-input-map-reads-value-ref-id",type:n.GenericReference,entityType:n.ArgumentDeclaration,entityId:xc},z4={type:n.GenericReference,id:"create-new-bank-account-account-number-dynamic-input-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Ta},oI={id:"create-new-bank-account-account-number-dynamic-input-map-id",version:1,type:n.InputMap,declaration:null,name:"Account number",description:null,readsValue:Y4,defaultValue:null,index:0,parent:z4},lI={type:n.GenericReference,id:"create-new-bank-account-instance-operation-entity-to-create-input-map-parent-ref-id",entityType:n.Operation,entityId:Zs},Z4={id:"create-new-bank-account-instance-operation-entity-to-create-input-map-id",version:1,type:n.InputMap,declaration:nr.inputs[0],name:null,description:null,index:0,readsValue:null,defaultValue:{type:n.PrimitiveValue,name:P.EntityTemplate,value:null,valueAsType:si,autogeneration:null},parent:lI},K4={type:n.GenericReference,id:"create-new-bank-account-instance-operation-entity-data-input-map-reads-value-ref-id",entityType:n.VariableDeclaration,entityId:Ta},cI={id:"create-new-bank-account-instance-operation-entity-data-input-map-id",version:1,type:n.InputMap,declaration:nr.inputs[1],name:null,description:null,index:1,readsValue:K4,defaultValue:null,parent:lI},X4={type:n.GenericReference,id:"create-new-bank-account-instance-operation-output-entity-map-parent-ref-id",entityType:n.Operation,entityId:Zs},Q4={id:Xg,version:1,type:n.OutputMap,declaration:nr.outputs[0],index:0,writesValues:[nI],parent:X4},ex={type:n.GenericReference,id:"create-new-bank-account-instance-operation-called-by-ref-id",entityType:n.Condition,entityId:ma},tx={type:n.GenericReference,id:"create-new-bank-account-instance-operation-called-by-ref-id",entityType:n.VariableDeclaration,entityId:Ta},nx={type:n.GenericReference,id:"create-new-bank-account-instance-operation-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},dI={process:null,id:Zs,type:n.Operation,version:1,declaration:nr,inputs:[Z4,cI],error:null,outputs:[Q4],successCalls:[rI],errorCalls:[],calledByError:[],calledByEntry:[],calledBySuccess:[tx,ex],parent:nx,x:0,y:0},rx={type:n.GenericReference,id:"new-bank-account-data-variable-declaration-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},ix={type:n.GenericReference,id:"create-new-bank-account-instance-operation-called-by-ref-id",entityType:n.Condition,entityId:ma},ax={id:Ta,type:n.VariableDeclaration,version:1,inputs:[oI,sI],dataType:null,name:"New bank Account's data",description:null,readsValue:null,outputs:[],writesValues:[cI],successCalls:[dI],errorCalls:[],internalCalls:[],calledByError:[],calledBySuccess:[ix],calledByEntry:[],x:0,y:0,parent:rx},sx={id:"person-not-found-thrown-error-datatype-default-value-parent-ref-id",type:n.GenericReference,entityId:"person-not-found-thrown-error-datatype-id",entityType:n.DataType},ox={id:"person-not-found-thrown-error-datatype-parent-ref-id",type:n.GenericReference,entityId:"person-not-found-thrown-error-id",entityType:n.ReturnDeclaration};n.DataType,n.PrimitiveValue,P.String;const lx={id:"person-not-found-thrown-error-parent-ref-id",type:n.GenericReference,entityId:"person-not-found-error-return-statement-id",entityType:n.ReturnStatement},cx={isError:!0,id:"person-not-found-thrown-error-id",type:n.ReturnDeclaration,version:1,dataType:null,name:"Person not found error",description:"If the person entity was not found this error is outputted",parent:lx,implements:null,required:!0,index:0,readsValue:null},dx={id:"person-not-found-error-return-statement-called-by-ref-id",type:n.GenericReference,entityId:ma,entityType:n.Condition},ux={id:"person-not-found-error-return-statement-parent-ref-id",type:n.GenericReference,entityId:mt,entityType:n.FunctionDeclaration},px={id:"person-not-found-error-return-statement-id",type:n.ReturnStatement,version:1,throws:cx,outputs:[],calledBySuccess:[],calledByError:[dx],calledByEntry:[],x:0,y:0,parent:ux},yx={type:n.GenericReference,id:"person-not-empty-condition-called-by-ref-id",entityType:n.Search,entityId:ui},hx={type:n.GenericReference,id:"person-not-empty-condition-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},fx={type:n.GenericReference,id:"person-entity-to-check-map-reads-value-ref-id",entityType:n.OutputMap,entityId:jc},mx={type:n.GenericReference,id:"person-not-empty-condition-ref-two-id",entityType:n.Condition,entityId:ma},uI={id:"person-entity-to-check-map-id",version:1,type:n.InputMap,declaration:cr.inputs[0],name:null,description:null,readsValue:fx,index:0,defaultValue:null,parent:mx},Tx={type:n.Condition,id:ma,version:1,declaration:cr,inputs:[uI],calledByError:[],calledByEntry:[],calledBySuccess:[yx],successCalls:[ax,dI],errorCalls:[px],x:0,y:0,parent:hx},Ex={type:n.GenericReference,id:"search-person-by-id-output-entity-declaration-datatype-parent-ref-id",entityType:n.ValueDescriptor,entityId:Kg},bx={like:!1,inferred:!1,id:"search-person-by-id-output-entity-declaration-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,isList:!1,constant:!1,asType:!1,isNullable:!1,entity:ht,defaultValue:null,parent:Ex},Rx={type:n.GenericReference,id:"search-person-by-id-output-entity-declaration-parent-ref-id",entityType:n.Search,entityId:ui},pI={id:Kg,type:n.ValueDescriptor,version:1,dataType:bx,name:"Found person",description:"The person entity that was found",parent:Rx,required:!0,index:0},vx={type:n.GenericReference,id:"search-person-by-id-output-entity-map-parent-ref-id",entityType:n.Search,entityId:ui},gx={type:n.OutputMap,id:jc,version:1,declaration:pI,parent:vx,writesValues:[uI,sI],index:0},Ix={id:"search-person-by-id-input-declaration-datatype-parent-ref-id",type:n.GenericReference,entityId:"search-person-by-id-input-declaration-id",entityType:n.ArgumentDeclaration};n.DataType;const Dx={type:n.GenericReference,id:"search-person-by-id-input-declaration-parent-ref-id",entityType:n.Search,entityId:ui},yI={id:"search-person-by-id-input-declaration-id",type:n.ArgumentDeclaration,version:1,dataType:null,name:"Person ID",description:"The unique identifier (ID) property of the person entity",implements:null,index:0,required:!0,parent:Dx,writesValues:[]},Px={type:n.GenericReference,id:"search-person-by-id-input-map-parent-ref-id",entityType:n.Search,entityId:ui},Ax={id:"search-person-by-id-input-map-reads-value-ref-id",type:n.GenericReference,entityId:Zg,entityType:n.ArgumentDeclaration},hI={type:n.InputMap,id:"search-person-by-id-input-map",version:1,declaration:yI,name:null,description:null,readsValue:Ax,defaultValue:null,parent:Px,index:0},Ox={from:{name:"c9bc312a-10d3-48a7-9ab4-ea483a9e2416"},items:[{name:"*"}],where:[{name:"id",value:"{{dynamic_value_1}}"}]},Sx={type:n.GenericReference,id:"search-person-by-id-parent-ref-id",entityType:n.FunctionDeclaration,entityId:mt},Cx={type:n.GenericReference,id:"search-person-by-id-called-by-ref-id",entityType:n.FunctionDeclaration,entityId:mt},Bx={type:n.Search,id:ui,version:1,name:"Search person by ID",description:"Searches for a person entity given the UUID",query:Ox,inputsDeclarations:[yI],inputs:[hI],outputsDeclarations:[pI],outputs:[gx],calledByError:[],calledByEntry:[Cx],calledBySuccess:[],error:null,successCalls:[Tx],errorCalls:[],parent:Sx,x:0,y:0};n.GenericReference,n.DataType;const wx={id:"account-number-to-create-arg-decl-data-type-parent-ref-id",type:n.GenericReference,entityId:xc,entityType:n.ArgumentDeclaration},_x={like:!1,inferred:!1,id:"account-number-to-create-arg-decl-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:x,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:wx},Nx={entityType:n.FunctionDeclaration,entityId:mt,type:n.GenericReference,id:"account-number-to-create-arg-decl-parent-ref-id"},Mx={id:xc,type:n.ArgumentDeclaration,version:1,name:"Account number",description:"The account number of the new bank account entity",dataType:_x,implements:null,writesValues:[oI],required:!0,index:1,parent:Nx};n.GenericReference,n.DataType;const Vx={id:"new-bank-account-owner-arg-decl-data-type-parent-ref-id",type:n.GenericReference,entityId:"new-bank-account-owner-arg-decl-id",entityType:n.ArgumentDeclaration},Lx={like:!1,inferred:!1,id:"new-bank-account-owner-arg-decl-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:qa,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:Vx},Gx={entityType:n.FunctionDeclaration,entityId:mt,type:n.GenericReference,id:"new-bank-account-owner-arg-decl-parent-ref-id"},$x={id:Zg,type:n.ArgumentDeclaration,version:1,name:"New account owner ID",description:"If it has changed, this is the new person entity, that owns of the bank account",dataType:Lx,implements:null,writesValues:[hI],required:!1,index:1,parent:Gx},Fx={type:n.GenericReference,id:"replace-bank-account-in-company-parent-ref",entityType:n.Project,entityId:H},Ux={type:n.GenericReference,id:"company-entity-to-modify-parent-ref",entityType:n.FunctionDeclaration,entityId:mt};n.GenericReference,n.DataType;const xx={id:"d47ceef6-be6f-40f1-a7b3-c73c8d8a6c6a",type:n.GenericReference,entityId:Uc,entityType:n.ArgumentDeclaration},jx={like:!1,inferred:!1,id:"company-entity-to-modify-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:X,isList:!1,isNullable:!1,asType:!1,defaultValue:null,constant:!1,parent:xx},kx={id:Uc,type:n.ArgumentDeclaration,version:1,name:"Company",dataType:jx,implements:null,description:"The company to replace the bank account for",writesValues:[aI],required:!0,index:0,parent:Ux},qx={type:n.FunctionDeclaration,id:mt,version:1,name:"Replace bank account",description:"This action takes an existing company and data to create a new bank account entity. It then creates a bank account, deletes the old one, and updates the company with the new bank account",inputs:[kx,Mx,$x],index:null,implements:null,calls:[Bx,aI],collapsed:!1,returnStatements:[],private:!1,x:0,y:0,parent:Fx},Jx={type:n.GenericReference,id:"e0a937bd-3a85-4037-a973-916985b9f94b",entityType:n.Project,entityId:"7268bc97-c0e6-4d88-b37e-d3241b5f77a6"},Wx={type:n.FunctionDeclaration,version:1,id:"6bedb217-f844-4332-af72-9626b2a32511",name:"Some library main function",description:null,inputs:[],calls:[],implements:null,collapsed:!0,index:null,returnStatements:[],private:!1,parent:Jx,x:0,y:0},Hx={type:n.GenericReference,id:"948e6869-ae5b-4914-bea0-b9f02ad6a014",entityType:n.Project,entityId:"23b23d8b-1929-4505-a350-745c8550e731"},Yx={type:n.GenericReference,id:"f3d6f2c6-1b3e-4e9d-8c9d-5b5b9f0b8d9c",entityType:n.Project,entityId:"7268bc97-c0e6-4d88-b37e-d3241b5f77a6"},zx={type:n.InstalledProject,version:1,id:"7268bc97-c0e6-4d88-b37e-d3241b5f77a6",name:"Third Party Installed Project",description:null,functions:[Wx],events:[],implements:Yx,parent:Hx,x:0,y:0},Jc="global-counted-test-loop-id",fI="global-counted-test-loop-body-id",mI="global-counted-test-loop-body-current-iteration-value-argument-declaration-id",Zx={type:n.GenericReference,id:"global-counted-test-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:mI,entityType:n.ArgumentDeclaration},Kx={like:!1,inferred:!1,id:"global-counted-test-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Zx},Xx={id:"global-counted-test-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:fI,entityType:n.FunctionDeclaration},Qx={id:mI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:Kx,implements:Sl,required:!0,index:0,writesValues:[],parent:Xx},ej={id:"global-counted-test-loop-body-parent-ref-id",type:n.GenericReference,entityId:Jc,entityType:n.Loop},tj={id:fI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Qx],calls:[],implements:Cl,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:ej},pi="random-company-employee-test-variable-id",Wc="manager-global-variable-id",TI="global-user-instance-id",Rn="employee-mapped-dto-variable-id",qn="employee-mapped-dto-variable-instance-id",EI="random-employee-id-output-map-id",bI="random-employee-birth-date-output-map-id",RI="random-employee-department-output-map-id",vI="random-employee-manager-output-map-id",gI="manager-global-id-output-map-id",II="global-user-instance-id-output-map-id",nj="employee-mapped-dto-requester-id-input-map-id",DI="employee-mapped-dto-now-timestamp-input-map-id",rj="employee-mapped-dto-id-input-map-id",ij="employee-mapped-dto-birth-date-input-map-id",aj="employee-mapped-dto-department-input-map-id",sj="employee-mapped-dto-manager-input-map-id",oj={id:"global-counted-test-loop-iteration-number-input-map-parent-ref-id",type:n.GenericReference,entityId:Jc,entityType:n.Loop};n.GenericReference,n.VariableDeclaration;const lj={id:"global-counted-test-loop-iteration-number-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:as.inputs[0],defaultValue:null,readsValue:null,index:0,parent:oj},cj={id:"global-counted-test-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},dj={id:"global-counted-test-loop-called-by-success-ref-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},uj={id:Jc,type:n.Loop,version:1,declaration:as,inputs:[lj],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:tj,calledByError:[],calledByEntry:[],calledBySuccess:[dj],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:cj},Hc="global-object-keys-test-loop-id",PI="global-object-keys-test-loop-body-id",AI="global-object-keys-test-loop-body-current-iteration-value-argument-declaration-id",pj={type:n.GenericReference,id:"global-object-keys-test-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:AI,entityType:n.ArgumentDeclaration},yj={like:!1,inferred:!1,id:"global-object-keys-test-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:pj},hj={id:"global-object-keys-test-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:PI,entityType:n.FunctionDeclaration},fj={id:AI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:yj,implements:Al,required:!0,index:0,writesValues:[],parent:hj},mj={id:"global-object-keys-test-loop-body-parent-ref-id",type:n.GenericReference,entityId:Hc,entityType:n.Loop},Tj={id:PI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[fj],calls:[],implements:Li,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:mj},Ej={id:"global-object-keys-test-loop-iteration-object-input-map-parent-ref-id",type:n.GenericReference,entityId:Hc,entityType:n.Loop},bj={id:"global-object-keys-test-loop-iteration-object-input-map-reads-value-ref-id",type:n.GenericReference,entityId:Rn,entityType:n.VariableDeclaration},OI={id:"global-object-keys-test-loop-iteration-object-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:Li.inputs[0],defaultValue:null,readsValue:bj,index:0,parent:Ej},Rj={id:"global-object-keys-test-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},vj={id:"global-object-keys-test-loop-called-by-success-ref-two-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},gj={id:"global-object-keys-test-loop-called-by-success-ref-one-id",type:n.GenericReference,entityId:Rn,entityType:n.VariableDeclaration},Yc={id:Hc,type:n.Loop,version:1,declaration:Li,inputs:[OI],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:Tj,calledByError:[],calledByEntry:[],calledBySuccess:[gj,vj],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:Rj},zc="global-object-values-test-loop-id",SI="global-object-values-test-loop-body-id",CI="global-object-values-test-loop-body-current-iteration-value-argument-declaration-id",Ij={type:n.GenericReference,id:"global-object-values-test-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:CI,entityType:n.ArgumentDeclaration},Dj={like:!1,inferred:!1,id:"global-object-values-test-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Ij},Pj={id:"global-object-values-test-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:SI,entityType:n.FunctionDeclaration},Aj={id:CI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:Dj,implements:Ol,required:!0,index:0,writesValues:[],parent:Pj},Oj={id:"global-object-values-test-loop-body-parent-ref-id",type:n.GenericReference,entityId:zc,entityType:n.Loop},Sj={id:SI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Aj],calls:[],implements:Gi,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:Oj},Cj={id:"global-object-values-test-loop-iteration-object-input-map-parent-ref-id",type:n.GenericReference,entityId:zc,entityType:n.Loop},Bj={id:"global-object-values-test-loop-iteration-object-input-map-reads-value-ref-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},BI={id:"global-object-values-test-loop-iteration-object-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:Gi.inputs[0],defaultValue:null,readsValue:Bj,index:0,parent:Cj},wj={id:"global-object-values-test-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},_j={id:"global-object-values-test-loop-called-by-success-ref-id",type:n.GenericReference,entityId:qn,entityType:n.VariableDeclaration},wI={id:zc,type:n.Loop,version:1,declaration:Gi,inputs:[BI],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:Sj,calledByError:[],calledByEntry:[],calledBySuccess:[_j],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:wj},Zc="global-test-iterate-over-string-loop-id",Kc="global-test-iterate-over-string-loop-body-id",Ks="global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-id",_I="global-test-iterate-over-string-loop-iteration-list-input-map-id",Nj={type:n.GenericReference,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:Ks,entityType:n.ArgumentDeclaration},Mj={like:!1,inferred:!1,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Nj},Vj={id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:Kc,entityType:n.FunctionDeclaration},Lj={id:Ks,type:n.ArgumentDeclaration,version:1,name:"Current character",description:"The current character value being processed.",dataType:Mj,implements:Il,required:!0,index:1,writesValues:[],parent:Vj},Gj={type:n.GenericReference,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:Ks,entityType:n.ArgumentDeclaration},$j={like:!1,inferred:!1,id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:Gj},Fj={id:"global-test-iterate-over-string-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:Kc,entityType:n.FunctionDeclaration},Uj={id:Ks,type:n.ArgumentDeclaration,version:1,name:"Current character",description:"The current character value being processed.",dataType:$j,implements:Dl,required:!0,index:0,writesValues:[],parent:Fj},xj={id:"global-test-iterate-over-string-loop-body-parent-ref-id",type:n.GenericReference,entityId:Zc,entityType:n.Loop},jj={id:Kc,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Uj,Lj],calls:[],implements:Pl,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:xj},kj={id:"global-test-iterate-over-string-loop-iteration-list-input-map-parent-ref-id",type:n.GenericReference,entityId:Zc,entityType:n.Loop},qj={id:"global-test-iterate-over-string-loop-iteration-list-input-map-default-value-parent-ref-id",type:n.GenericReference,entityId:_I,entityType:n.InputMap},Jj={id:"global-test-iterate-over-string-loop-iteration-list-input-map-default-value-id",type:n.PrimitiveValue,name:P.String,version:1,value:"Hello",valueAsType:null,autogeneration:{type:We.Random,rangeStart:4,rangeEnd:5},parent:qj},Wj={id:_I,type:n.InputMap,version:1,name:null,description:null,declaration:is.inputs[0],defaultValue:Jj,readsValue:null,index:0,parent:kj},Hj={id:"global-test-iterate-over-string-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},Yj={id:Zc,type:n.Loop,version:1,declaration:is,inputs:[Wj],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:jj,calledByError:[],calledByEntry:[],calledBySuccess:[],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:Hj},Xc="iterate-over-list-loop-id",NI="iterate-over-list-loop-body-id",MI="iterate-over-list-loop-body-current-iteration-value-argument-declaration-id",zj={type:n.GenericReference,id:"iterate-over-list-loop-body-current-iteration-value-argument-declaration-data-type-parent-ref-id",entityId:MI,entityType:n.ArgumentDeclaration},Zj={like:!1,inferred:!1,id:"iterate-over-list-loop-body-current-iteration-value-argument-declaration-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,defaultValue:null,entity:null,isList:!1,isNullable:!1,asType:!1,constant:!1,parent:zj},Kj={id:"iterate-over-list-loop-body-current-iteration-value-argument-declaration-parent-ref-id",type:n.GenericReference,entityId:NI,entityType:n.FunctionDeclaration},Xj={id:MI,type:n.ArgumentDeclaration,version:1,name:"Current value",description:"The current value being processed.",dataType:Zj,implements:ns,required:!0,index:0,writesValues:[],parent:Kj},Qj={id:"iterate-over-list-loop-body-parent-ref-id",type:n.GenericReference,entityId:Xc,entityType:n.Loop},e8={id:NI,type:n.FunctionDeclaration,version:1,name:"Iteration logic trigger",description:"This function is called once for each iteration of the loop.",inputs:[Xj],calls:[],implements:rs,collapsed:!1,returnStatements:[],private:!1,index:0,x:0,y:0,parent:Qj},t8={id:"iterate-over-list-loop-iteration-list-input-map-parent-ref-id",type:n.GenericReference,entityId:Xc,entityType:n.Loop},n8={id:"iterate-over-list-loop-iteration-list-input-map-id",type:n.InputMap,version:1,name:null,description:null,declaration:ir.inputs[0],defaultValue:null,readsValue:null,index:0,parent:t8},r8={id:"iterate-over-list-loop-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},i8={id:Xc,type:n.Loop,version:1,declaration:ir,inputs:[n8],successCalls:[],errorCalls:[],outputsDeclarations:[],outputs:[],process:null,body:e8,calledByError:[],calledByEntry:[],calledBySuccess:[],breakStatements:[],continueStatements:[],error:null,x:0,y:0,parent:r8};var Qc=(r=>(r.EQ="eq",r.NEQ="neq",r.GT="gt",r.GTE="gte",r.LT="lt",r.LTE="lte",r.LIKE="like",r.ILIKE="ilike",r))(Qc||{}),VI=(r=>(r.COUNT="count",r.SUM="sum",r.AVG="avg",r.MIN="min",r.MAX="max",r))(VI||{});const a8={from:{name:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},items:{from:{name:"ed3a6098-12ee-4632-a6dd-c2e6c542f66d"},items:[{function:{name:VI.COUNT,items:["f8310850-a87e-405c-b182-4f1d5fa49240"]},alias:"employee_count"}],where:[{name:"80c86e1b-caca-4ba5-9b1f-38f72d10e4a3",operation:Qc.NEQ,value:null}]},where:[{name:"employee_count",operation:Qc.GT,value:1}]},s8={id:"find-companies-with-multiple-employees-and-bank-account-search-parent-ref-id",type:n.GenericReference,entityId:H,entityType:n.Project},o8={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-declaration-parent-ref-id",type:n.GenericReference,entityId:"find-companies-with-multiple-employees-and-bank-account",entityType:n.Search},LI={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-declaration-id",type:n.ValueDescriptor,version:1,name:"companies",description:"List of companies with multiple employees and an existing bank account",dataType:null,required:!0,index:0,parent:o8},l8={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-parent-ref-id",type:n.GenericReference,entityId:"find-companies-with-multiple-employees-and-bank-account",entityType:n.Search},c8={id:"find-companies-with-multiple-employees-and-bank-account-search-companies-list-output-id",type:n.OutputMap,version:1,declaration:LI,writesValues:[],index:0,parent:l8},d8={id:"find-companies-with-multiple-employees-and-bank-account",type:n.Search,version:1,name:"Find companies with multiple employees and a bank account",description:"This search statement finds companies with multiple employees and an existing bank account",inputsDeclarations:[],outputsDeclarations:[LI],inputs:[],outputs:[c8],query:a8,successCalls:[],errorCalls:[],error:null,calledByError:[],calledByEntry:[],calledBySuccess:[],x:0,y:0,parent:s8},u8={type:n.GenericReference,id:"employee-mapped-dto-manager-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:gI},p8={type:n.GenericReference,id:"employee-mapped-dto-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},GI={id:sj,type:n.InputMap,version:1,declaration:null,name:"manager_id",description:null,defaultValue:null,index:4,readsValue:u8,parent:p8},y8={type:n.GenericReference,id:"employee-mapped-dto-department-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:RI},h8={type:n.GenericReference,id:"employee-mapped-dto-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},$I={id:aj,type:n.InputMap,version:1,declaration:null,name:"department_name",description:null,defaultValue:null,index:3,readsValue:y8,parent:h8},f8={type:n.GenericReference,id:"employee-mapped-dto-birth-date-input-map-reads-value-ref-id",entityType:n.OutputMap,entityId:bI},m8={type:n.GenericReference,id:"employee-mapped-dto-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},FI={id:ij,type:n.InputMap,version:1,declaration:null,name:"birth_date",description:null,defaultValue:null,index:2,readsValue:f8,parent:m8},T8={type:n.GenericReference,id:"employee-mapped-dto-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:EI},E8={type:n.GenericReference,id:"employee-mapped-dto-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},UI={id:rj,type:n.InputMap,version:1,declaration:null,name:"id",description:"The ID of the employee",defaultValue:null,index:1,readsValue:T8,parent:E8},b8={type:n.GenericReference,id:"employee-mapped-dto-requester-id-output-map-reads-value-ref-id",entityType:n.OutputMap,entityId:II},R8={type:n.GenericReference,id:"employee-mapped-dto-requester-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Rn},xI={id:nj,type:n.InputMap,version:1,declaration:null,name:"requester_id",description:"The ID of the current user making the request",defaultValue:null,index:0,readsValue:b8,parent:R8},v8={type:n.GenericReference,id:"manager-variable-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:Wc},g8={id:gI,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[GI],parent:v8},I8={type:n.GenericReference,id:"manager-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:Wc},D8={like:!1,inferred:!1,id:"manager-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:I8,defaultValue:null},P8={type:n.GenericReference,id:"manager-variable-reads-value-ref-id",entityType:n.OutputMap,entityId:vI},A8={type:n.GenericReference,id:"manager-variable-parent-ref-id",entityType:n.Project,entityId:H},jI={id:Wc,type:n.VariableDeclaration,version:1,name:"Manager",dataType:D8,description:"A variable holding an inherited manager for testing purposes",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:P8,writesValues:[],inputs:[],outputs:[g8],internalCalls:[],parent:A8,x:0,y:0},O8={type:n.GenericReference,id:"random-company-employee-manager-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},S8={id:vI,type:n.OutputMap,version:1,declaration:Lt.properties[2],index:3,writesValues:[jI],parent:O8},C8={type:n.GenericReference,id:"random-company-employee-department-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},B8={id:RI,type:n.OutputMap,version:1,declaration:Lt.properties[0],index:2,writesValues:[$I],parent:C8},w8={type:n.GenericReference,id:"random-company-employee-birth-date-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},_8={id:bI,type:n.OutputMap,version:1,declaration:ht.properties[1],index:1,writesValues:[FI],parent:w8},N8={type:n.GenericReference,id:"random-company-employee-id-output-map-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},M8={id:EI,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[UI],parent:N8},V8={type:n.GenericReference,id:"random-company-employee-test-variable-data-type-parent-ref-id",entityType:n.VariableDeclaration,entityId:pi},L8={like:!1,inferred:!1,id:"random-company-employee-test-variable-data-type-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,version:1,entity:Lt,asType:!1,isList:!1,isNullable:!0,constant:!1,parent:V8,defaultValue:null},G8={type:n.GenericReference,id:"random-company-employee-test-variable-parent-ref-id",entityType:n.Project,entityId:H},$8={id:pi,type:n.VariableDeclaration,version:1,name:"Company employee",dataType:L8,description:"A variable holding a random company employee for testing purposes",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:null,writesValues:[],inputs:[],outputs:[M8,_8,B8,S8],internalCalls:[],parent:G8,x:0,y:0},F8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-now-timestamp-input-map-default-value-parent-ref-id",entityType:n.InputMap,entityId:DI},U8={type:n.PrimitiveValue,id:"employee-mapped-dto-variable-instance-now-timestamp-input-map-default-value-id",name:P.Date,version:1,valueAsType:null,value:null,autogeneration:{type:We.CurrentDateAndTime,rangeStart:null,rangeEnd:null},parent:F8},x8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-now-timestamp-input-map-parent-ref-id",entityType:n.VariableInstance,entityId:qn},j8={id:DI,type:n.InputMap,version:1,declaration:null,name:"now",description:"The current timestamp when the operation is executed",defaultValue:U8,index:5,readsValue:null,parent:x8},k8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-decl-ref-id",entityType:n.VariableDeclaration,entityId:Rn},q8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-called-by-success-ref-id",entityType:n.VariableDeclaration,entityId:qn},J8={type:n.GenericReference,id:"employee-mapped-dto-variable-instance-parent-ref-id",entityType:n.Project,entityId:H},W8={id:qn,type:n.VariableInstance,version:1,declaration:k8,calledByError:[],calledByEntry:[],calledBySuccess:[q8],successCalls:[Yc,wI],errorCalls:[],readsValue:null,writesValues:[BI],inputs:[j8],outputs:[],internalCalls:[],parent:J8,x:0,y:0},H8={type:n.GenericReference,id:"employee-mapped-dto-variable-parent-ref-id",entityType:n.Project,entityId:H},Y8={id:Rn,type:n.VariableDeclaration,version:1,name:"Employee DTO",dataType:null,description:"A variable holding the data of a mapped employee DTO",calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[Yc,W8],errorCalls:[],readsValue:null,writesValues:[OI],inputs:[xI,UI,FI,$I,GI],outputs:[],internalCalls:[],parent:H8,x:0,y:0},z8={type:n.GenericReference,id:"0e63e617-f9d3-42e8-bde0-1bb0b1df7034",entityType:n.VariableDeclaration,entityId:uc},Z8={like:!1,inferred:!1,id:"e75645ce-d3df-4f07-a897-ae9ef4d917fd",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:yc,version:1,asType:!1,isList:!1,isNullable:!1,constant:!1,parent:z8,defaultValue:null},K8={type:n.GenericReference,id:"e92a8ff5-3fef-4e0c-8d8f-92c930b2890b",entityType:n.Project,entityId:H},kI={id:uc,type:n.VariableDeclaration,version:1,name:"Current user",description:"The user that is currently logged in",dataType:Z8,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:K8},X8={type:n.GenericReference,id:"manager-variable-id-output-map-parent-ref-id",entityType:n.VariableInstance,entityId:TI},Q8={id:II,type:n.OutputMap,version:1,declaration:ke.properties[1],index:0,writesValues:[xI],parent:X8},e9={type:n.GenericReference,id:"global-user-instance-parent-ref-id",entityType:n.Project,entityId:H},t9={id:TI,type:n.VariableInstance,version:1,declaration:kI,calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:null,writesValues:[],inputs:[],outputs:[Q8],internalCalls:[],parent:e9,x:0,y:0},n9={type:n.GenericReference,id:"is-test-environment-variable-dcl-datatype-parent-ref-id",entityType:n.VariableDeclaration,entityId:uc},r9={type:n.GenericReference,id:"is-test-environment-variable-dcl-datatype-default-value-parent-ref-id",entityType:n.DataType,entityId:"is-test-environment-variable-dcl-datatype-id"},i9={like:!1,inferred:!1,id:"is-test-environment-variable-dcl-datatype-id",type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,entity:_n,version:1,asType:!1,isList:!1,isNullable:!1,constant:!0,parent:n9,defaultValue:{id:"is-test-environment-variable-dcl-datatype-default-value-id",name:P.Boolean,version:1,value:null,type:n.PrimitiveValue,autogeneration:{type:We.Random,rangeStart:null,rangeEnd:null},valueAsType:null,parent:r9}},a9={type:n.GenericReference,id:"is-test-environment-variable-dcl-main-project-ref-id",entityType:n.Project,entityId:H},qI={id:"is-test-environment-variable-dcl-id",type:n.VariableDeclaration,version:1,name:"Is test envrioment",description:"Indicates whether the current environment is a test environment or not.",dataType:i9,inputs:[],outputs:[],calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],x:0,y:0,readsValue:null,writesValues:[],internalCalls:[],parent:a9},s9={type:n.GenericReference,id:"is-test-environment-variable-instance-parent-ref-id",entityType:n.Project,entityId:H},o9={id:"is-test-environment-variable-instance-id",type:n.VariableInstance,version:1,declaration:qI,calledByError:[],calledByEntry:[],calledBySuccess:[],successCalls:[],errorCalls:[],readsValue:null,writesValues:[],inputs:[],outputs:[],internalCalls:[],parent:s9,x:0,y:0},JI={type:n.Project,id:H,version:1,name:"Mocked project to compile",description:"This project is used to test all sorts of features and edge cases. It is not meant to be used in production. Or to have any functionality that makes sense",projects:[zx],entities:[pc,yc,ht,ZV,Lt,xs,JR,WR,si,qM,Gt,FV,SR,MC,jM],functions:[TU,Ev,_c,PU,NU,Mv,Nc,Ec,qx,tv,v4],events:[C1],variableDeclarations:[qI,kI,$c,$8,jI,Y8],variableInstances:[o9,t9],conditions:[],operations:[ci],functionCalls:[O0,VL],loops:[i8,Yc,wI,Yj,uj],searches:[d8]};var T=(r=>(r.Error="error",r.Warning="warning",r))(T||{}),S=(r=>(r.InvalidObjectStructure="invalid-object-structure",r.NameNotUniqueInScope="name-not-unique-in-scope",r.EmptyName="empty-name",r.MissingCaller="missing-caller",r.PropertyOverwrite="property-overwrite",r.MethodOverwrite="method-overwrite",r.NoOverlapWithImplementedSignature="no-overlap-with-implemented-signature",r.ReaderWriterIncompatibleDataType="reader-writer-incompatible-data-type",r.UnreachableEntity="unreachable-entity",r.InternalCallParentMissingDataType="internal-call-parent-missing-data-type",r.InternalCallParentDeclarationEntityInvalidType="internal-call-parent-declaration-entity-invalid-type",r.InternalCallDeclarationNotFoundInParentDatatypeEntity="internal-call-declaration-not-found-in-parent-datatype-entity",r.InternalCallDeclarationIsNotFunctionDeclaration="internal-call-declaration-is-not-function-declaration",r.InternalCallDeclarationNotInParentDatatypeEntity="internal-call-declaration-not-in-parent-datatype-entity",r))(S||{}),f=(r=>(r.RootReference="root-reference",r.ReferencedEntityNotFound="referenced-entity-not-found",r.EntityIdNotUnique="entity-id-not-unique",r.BuiltInEntityGenerated="built-in-entity-generated",r.BuiltInEntityUpdated="built-in-entity-updated",r.BuiltInEntityDeleted="built-in-entity-deleted",r.UnknownEntityType="unknown-entity-type",r.MissingTypeProperty="missing-type-property",r.MissingIdProperty="missing-id-property",r.BuiltInEntityParent="built-in-entity-parent",r.InvalidBuiltInEntityReference="invalid-built-in-entity-reference",r.RecommendedImplementAbstractEntityAction="recommended-implement-abstract-entity-action",r.RecommendedImplementOperationAction="recommended-implement-operation-action",r.RecommendedImplementFunctionCallAction="recommended-implement-function-call-action",r.RecommendedImplementVariableDeclarationAction="recommended-implement-variable-declaration-action",r.RecommendedImplementVariableInstanceAction="recommended-implement-variable-instance-action",r.RecommendedImplementConditionAction="recommended-implement-condition-action",r.InvalidReferenceObjectStructure="invalid-reference-object-structure",r.ContainsSingleButShouldBeReferenceList="contains-single-but-should-be-reference-list",r.ContainsListButShouldReferenceSingle="contains-list-but-should-reference-single",r.InvalidParentReference="invalid-parent-reference",r.InvalidImplementsReference="invalid-implements-reference",r.InvalidExtendsReference="invalid-extends-reference",r.InvalidGenerationActionPayload="invalid-generation-action-payload",r.InvalidReference="invalid-reference",r.InvalidInternalCallParentRelation="invalid-internal-call-parent-relation",r.InvalidUpdateEntityOperation="invalid-update-entity-operation",r.NewEntityWouldOverriteExisting="new-entity-would-overrite-existing",r.InvalidDownstreamPropertyOverride="invalid-downstream-property-override",r.UnrecognizedProperty="unrecognized-property",r.SelfReference="self-reference",r.DuplicateReference="duplicate-reference",r.CallerWithIncompatibleScope="caller-with-incompatible-scope",r.InvalidFunctionDeclarationForFunctionCall="invalid-function-declaration-for-function-call",r.InvalidInputMapDeclaration="invalid-input-map-declaration",r.InvalidActionDescriptorForOperation="invalid-action-descriptor-for-operation",r.InvalidActionDescriptorForCondition="invalid-action-descriptor-for-condition",r.InvalidActionDescriptorForLoop="invalid-action-descriptor-for-loop",r.InvalidInmutablePropertyOverride="invalid-inmutable-property-override",r.OutputOverwrite="output-overwrite",r.InputOverwrite="input-overwrite",r.IncompatibleScope="incompatible-scope",r.InvalidParentUpdate="invalid-parent-update",r.NonInteractiveEntityReferenced="non-interactive-entity-referenced",r.InvalidParentRelationType="invalid-parent-relation-type",r))(f||{}),M=(r=>(r.ScopeWithoutLogic="scope-without-logic",r.ExtendingAbstractEntity="extending-abstract-entity",r.ImplementingNonAbstractEntity="implementing-non-abstract-entity",r.AbstractEntityWithNonAbstractMethods="abstract-entity-with-non-abstract-methods",r.AbstractEntityWithNonAbstractProperties="abstract-entity-with-non-abstract-properties",r.StaticEntityWithNonStaticProperties="static-entity-with-non-static-properties",r.NonStaticPropertyInStaticEntity="non-static-property-in-static-entity",r.AbstractPropertyInNonAbstractEntity="abstract-property-in-non-abstract-entity",r.AbstractMethodInNonAbstractEntity="abstract-method-in-non-abstract-entity",r.IncorrectEntityImplementation="incorrect-entity-implementation",r.IncorrectMethodImplementation="incorrect-method-implementation",r.IncorrectPropertyImplementation="incorrect-property-implementation",r.PropertyImplementsNonAbstact="property-implements-non-abstract",r.NonStaticPropertyImplementsStatic="non-static-property-implements-static",r.StaticPropertyImplementsNonStatic="static-property-implements-non-static",r.PropertyImplementsIncompatibleType="property-implements-incompatible-type",r.MissingPropertyImplementation="missing-property-implementation",r.MissingMethodImplementation="missing-method-implementation",r.NoProperties="no-properties",r.ReadingFromIncompatibleType="reading-from-incompatible-type",r.WritingToIncompatibleType="writing-to-incompatible-type",r.InvalidPropertiesCombination="invalid-properties-combination",r.DisconnectedCallableEntity="disconnected-callable-entity",r.VariableReadsValueAndInternalCall="variable-reads-value-and-internal-call",r.VariableWritesValuesAndInternalCall="variable-writes-values-and-internal-call",r.VariableHasInputsAndInternalCall="variable-has-inputs-and-internal-calls",r.VariableHasOutputsAndInternalCall="variable-has-outputs-and-internal-call",r.VariableIsCalledAndHasInternalCall="variable-is-called-and-has-internal-call",r.VariableCallsOthersAndHasInternalCall="variable-calls-others-and-has-internal-call",r))(M||{});class E{constructor(e){d(this,"id");d(this,"message");d(this,"issue");d(this,"severity");d(this,"code");this.id=e.id,this.message=e.message,this.issue=e.issue,this.severity=e.severity,this.code=e.code}toEntityError(e){return this.code in S?new Tr({id:this.id,message:this.message,issue:this.issue,severity:this.severity,code:this.code,entity:e}):null}}class Tr{constructor(e){d(this,"id");d(this,"message");d(this,"issue");d(this,"severity");d(this,"code");d(this,"entity");this.id=e.id,this.message=e.message,this.issue=e.issue,this.severity=e.severity,this.code=e.code,this.entity=e.entity}clone(){return new Tr({id:this.id,message:this.message,issue:this.issue,severity:this.severity,code:this.code,entity:this.entity})}}function l9(r){const e=new Set;return r.filter(t=>e.has(t.id)?!1:(e.add(t.id),!0))}function Y(r){const e=r.entity.errors.find(i=>i.id===r.id);return e?{new:!1,error:e}:{new:!0,error:new Tr(r)}}function c9(r,e){const t=new Map;return r.forEach(i=>{t.set(i.id,i)}),e.forEach(i=>{t.set(i.id,i)}),Array.from(t.values())}function ie(r,e){const t=[];return e.forEach(i=>{const a=r.find(s=>s.id===i.id);a?t.push(a):t.push(i)}),t}const Ea=u.union([u.string(),u.number(),u.boolean(),u.date()]),WI=u.enum([We.CurrentDateAndTime,We.Random,We.Unique]),Xs=u.object({type:WI,rangeStart:Ea.nullable(),rangeEnd:Ea.nullable()}),ba=Xs.extend({type:u.literal(We.Random),rangeStart:Ea,rangeEnd:Ea}),ed=Xs.extend({type:u.literal(We.Unique),rangeStart:u.null(),rangeEnd:u.null()}),HI=Xs.extend({type:u.literal(We.CurrentDateAndTime),rangeStart:u.null(),rangeEnd:u.null()}),Qs=ba.extend({rangeStart:u.number().nullable(),rangeEnd:u.number().nullable()}),YI=Qs.extend({rangeStart:u.number(),rangeEnd:u.null()}),zI=Qs.extend({rangeStart:u.null(),rangeEnd:u.number()}),ZI=Qs.extend({rangeStart:u.number(),rangeEnd:u.number()}),eo=ba.extend({rangeStart:u.number().nullable(),rangeEnd:u.number().nullable()}),KI=eo.extend({rangeStart:u.number(),rangeEnd:u.null()}),XI=eo.extend({rangeStart:u.null(),rangeEnd:u.number()}),QI=eo.extend({rangeStart:u.number(),rangeEnd:u.number()}),to=ba.extend({rangeStart:u.date().nullable(),rangeEnd:u.date().nullable()}),eD=to.extend({rangeStart:u.date(),rangeEnd:u.null()}),tD=to.extend({rangeStart:u.null(),rangeEnd:u.date()}),nD=to.extend({rangeStart:u.date(),rangeEnd:u.date()}),td=ba.extend({rangeStart:u.null(),rangeEnd:u.null()}),nd=u.union([KI,XI,QI]),rd=u.union([YI,zI,ZI]),id=u.union([eD,tD,nD,HI]),ad=u.union([nd,rd,id,ed,td]);function Ra(){return u.union([u.object({type:u.literal(n.ValueDescriptor)}),u.record(u.string(),u.any())])}function rD(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ValueDescriptor)})}function sd(){return u.object({id:u.string(),type:u.literal(n.ValueDescriptor),name:u.string(),required:u.boolean()})}function d9(){return sd().merge(u.object({version:u.number(),index:u.number()}))}function u9(){return sd().merge(u.object({}))}function p9(){return u.object({dataType:vr(),parent:br()})}function y9(){return d9().merge(p9())}function no(){return u.union([u.object({type:u.literal(n.PrimitiveEntity)}),u.record(u.string(),u.any())])}function ro(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.PrimitiveEntity)})}function io(){return u.object({id:u.string(),type:u.literal(n.PrimitiveEntity),name:u.string(),description:u.string().nullable(),static:u.boolean(),abstract:u.boolean()})}function h9(){return io().merge(u.object({version:u.number()}))}function f9(){return io().merge(u.object({}))}function m9(){return u.object({properties:u.array(Er()),methods:u.array(Bt()),abstractMethods:u.array(an()),extends:u.array(u.union([no(),yi()]))})}function T9(){return h9().merge(m9())}function Er(){return u.union([u.object({type:u.literal(n.Property)}),u.record(u.string(),u.any())])}function iD(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Property)})}function od(){return u.object({id:u.string(),type:u.literal(n.Property),name:u.string(),description:u.string().nullable(),private:u.boolean(),static:u.boolean(),required:u.boolean(),abstract:u.boolean()})}function E9(){return od().merge(u.object({version:u.number(),index:u.number()}))}function b9(){return od().merge(u.object({}))}function R9(){return u.object({dataType:vr(),implements:Er().nullable(),parent:u.union([Dr(),ro(),ao()])})}function v9(){return E9().merge(R9())}function g9(){return u.enum([L.CRON_JOB,L.EXECUTION,L.HTTP_ENDPOINT,L.PERSISTED_ENTITY,L.RELATIONAL_DATABASE])}function yi(){return u.union([u.object({type:u.literal(n.BuiltInBaseEntity)}),u.record(u.string(),u.any())])}function ao(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.BuiltInBaseEntity)})}function ld(){return u.object({id:u.string(),version:u.number(),type:u.literal(n.BuiltInBaseEntity),name:g9(),description:u.string().nullable(),abstract:u.boolean(),static:u.boolean()})}function I9(){return ld()}function D9(){return ld().merge(u.object({}))}function P9(){return u.object({properties:u.array(Er()),methods:u.array(Bt()),abstractMethods:u.array(an()),extends:u.array(u.union([yi(),no()]))})}function A9(){return I9().merge(P9())}function an(){return u.union([u.object({type:u.literal(n.ActionDescriptor)}),u.record(u.string(),u.any())])}function br(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ActionDescriptor)})}function so(){return u.object({id:u.string(),type:u.literal(n.ActionDescriptor),name:u.string(),description:u.string().nullable()})}function O9(){return so().merge(u.object({version:u.number()}))}function S9(){return so().merge(u.object({}))}function C9(){return u.object({inputs:u.array(Ra()),outputs:u.array(Ra()),parent:u.union([Dt(),Dr(),ao(),ro()]).nullable()})}function aD(){return O9().merge(C9())}function hi(){return u.union([u.object({type:u.literal(n.Loop)}),u.record(u.string(),u.any())])}function sn(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Loop)})}function sD(){return u.object({id:u.string(),type:u.literal(n.Loop)})}function B9(){return sD().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function w9(){return sD().merge(u.object({declaration:u.union([u.string(),Bt()])}))}function _9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),declaration:an(),inputs:u.array(Zt()),outputs:u.array(Tt()),outputsDeclarations:u.array(Ra()),successCalls:u.array(ze()),errorCalls:u.array(ze()),error:Tt(),body:Bt(),parent:u.union([Dn(),Dt()]),breakStatements:u.array(Ei()),continueStatements:u.array(fi())})}function N9(){return B9().merge(_9())}function fi(){return u.union([u.object({type:u.literal(n.ContinueStatement)}),u.record(u.string(),u.any())])}function mi(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ContinueStatement)})}function cd(){return u.object({id:u.string(),type:u.literal(n.ContinueStatement)})}function M9(){return cd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function V9(){return cd().merge(u.object({}))}function L9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),outputs:u.array(vn()),throws:u.optional(vn()),parent:sn()})}function G9(){return M9().merge(L9())}function Rr(){return u.union([u.object({type:u.literal(n.ReturnStatement)}),u.record(u.string(),u.any())])}function Ti(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ReturnStatement)})}function dd(){return u.object({id:u.string(),type:u.literal(n.ReturnStatement)})}function $9(){return dd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function F9(){return dd().merge(u.object({}))}function U9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),outputs:u.array(vn()),throws:u.optional(vn()),parent:Dn()})}function x9(){return $9().merge(U9())}function vn(){return u.union([u.object({type:u.literal(n.ReturnDeclaration)}),u.record(u.string(),u.any())])}function oD(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ReturnDeclaration)})}function ud(){return u.object({id:u.string(),type:u.literal(n.ReturnDeclaration),name:u.string(),description:u.string().nullable(),isError:u.boolean()})}function j9(){return ud().merge(u.object({version:u.number(),index:u.number()}))}function k9(){return ud().merge(u.object({}))}function q9(){return u.object({dataType:vr().nullable(),readsValue:Aa().nullable(),parent:u.union([Ti(),br(),gn(),mi()])})}function J9(){return j9().merge(q9())}function Ei(){return u.union([u.object({type:u.literal(n.BreakStatement)}),u.record(u.string(),u.any())])}function gn(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.BreakStatement)})}function pd(){return u.object({id:u.string(),type:u.literal(n.BreakStatement)})}function W9(){return pd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function H9(){return pd().merge(u.object({}))}function Y9(){return u.object({calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),outputs:u.array(vn()),throws:u.optional(vn()),parent:sn()})}function z9(){return W9().merge(Y9())}function Tt(){return u.union([u.object({type:u.literal(n.OutputMap)}),u.record(u.string(),u.any())])}function yd(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.OutputMap)})}function hd(){return u.object({id:u.string(),type:u.literal(n.OutputMap)})}function Z9(){return hd().merge(u.object({version:u.number(),index:u.number()}))}function K9(){return hd().merge(u.object({}))}function X9(){return u.object({writesValues:u.array(In()),declaration:u.union([vn(),Er()]),parent:u.union([Te(),sn(),gn()])})}function Q9(){return Z9().merge(X9())}function bi(){return u.union([u.object({type:u.literal(n.FunctionCall)}),u.record(u.string(),u.any())])}function va(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.FunctionCall)})}function fd(){return u.object({id:u.string(),type:u.literal(n.FunctionCall)})}function e6(){return fd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function t6(){return fd().merge(u.object({}))}function n6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),writesValues:u.array(In()),declaration:Bt(),inputs:u.array(Zt()),outputs:u.array(Tt()),error:u.optional(Tt()),parent:u.union([Dn(),Dt()])})}function r6(){return e6().merge(n6())}function i6(){return u.enum([$e.Equal,$e.NotEqual,$e.MoreThan,$e.MoreThanOrEqual,$e.LessThan,$e.LessThanOrEqual,$e.And,$e.Or,Mt.Empty,Mt.NotEmpty])}function ga(){return u.union([u.object({type:u.literal(n.Condition)}),u.record(u.string(),u.any())])}function oo(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Condition)})}function md(){return u.object({id:u.string(),type:u.literal(n.Condition)})}function a6(){return md().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function s6(){return md().merge(u.object({}))}function o6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),leftValue:Zt(),rightValue:Zt().nullable(),operator:i6(),parent:u.union([Dn(),Dt()])})}function l6(){return a6().merge(o6())}function Ia(){return u.union([u.object({type:u.literal(n.Search)}),u.record(u.string(),u.any())])}function Da(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Search)})}function Td(){return u.object({id:u.string(),type:u.literal(n.Search),name:u.string(),query:u.any(),description:u.string().nullable()})}function c6(){return Td().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function d6(){return Td().merge(u.object({}))}function u6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),inputsDeclarations:u.array(Ir()),inputs:u.array(Zt()),outputsDeclarations:u.array(Ra()),outputs:u.array(Tt()),parent:u.union([Dn(),Dt()]),error:Tt().nullable()})}function p6(){return c6().merge(u6())}function Pa(){return u.union([u.object({type:u.literal(n.InternalCall)}),u.record(u.string(),u.any())])}function Ed(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.InternalCall)})}function bd(){return u.object({id:u.string(),type:u.literal(n.InternalCall),index:u.number()})}function y6(){return bd().merge(u.object({version:u.number(),index:u.number()}))}function h6(){return bd().merge(u.object({declaration:u.union([u.string(),Bt()])}))}function f6(){return u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),writesValues:u.array(In()),declaration:Bt(),inputs:u.array(Zt()),outputs:u.array(Tt()),parent:Jn(),error:u.optional(Tt())})}function m6(){return y6().merge(f6())}function Zt(){return u.union([u.object({type:u.literal(n.InputMap)}),u.record(u.string(),u.any())])}function lo(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.InputMap)})}function Rd(){return u.object({id:u.string(),type:u.literal(n.InputMap),name:u.string().nullable().optional(),description:u.string().nullable().optional()})}function T6(){return Rd().merge(u.object({version:u.number(),index:u.number()}))}function E6(){return Rd().merge(u.object({}))}function b6(){return u.object({defaultValue:vd().nullable(),declaration:u.union([Ir(),Er()]).nullable(),readsValue:Aa().nullable(),parent:u.union([Te(),lo(),sn(),gn()])})}function R6(){return T6().merge(b6())}function Ri(){return u.union([u.object({type:u.literal(n.Operation)}),u.record(u.string(),u.any())])}function vi(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.Operation)})}function co(){return u.object({id:u.string(),type:u.literal(n.Operation)})}function v6(){return co().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function g6(){return co().merge(u.object({}))}function I6(){return co().merge(u.object({successCalls:u.array(ze()),errorCalls:u.array(ze()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),writesValues:u.array(In()),declaration:an(),inputs:u.array(Zt()),outputs:u.array(Tt()),error:u.array(Tt()),parent:u.union([Dn(),Dt()])}))}function D6(){return v6().merge(I6())}function uo(){return u.union([u.string(),u.number(),u.boolean(),u.null(),u.date()])}function lD(){return u.record(u.string(),uo())}function P6(){return u.array(u.union([uo(),lD()]))}function cD(){return u.union([uo(),lD(),P6()])}function dD(){return u.union([uo(),cD()])}function uD(){return u.enum([P.String,P.Number,P.Boolean,P.Null,P.Date,P.JSON,P.Enum,P.File,P.UUID,P.EntityTemplate,P.ActionDescriptor])}function A6(){return u.union([Dr(),vi(),Oa()])}function O6(){return u.object({id:u.string(),name:uD(),type:u.literal(n.PrimitiveValue),value:dD(),autogeneration:ad.nullable()})}function S6(){return O6().merge(u.object({}))}function Kt(){return u.object({id:u.string(),version:u.number(),name:uD(),type:u.literal(n.PrimitiveValue),value:dD(),valueAsType:A6().nullable(),autogeneration:ad.nullable(),parent:u.union([gd(),lo()])})}function C6(){return Kt().extend({name:u.literal(P.String),value:u.string(),autogeneration:nd.nullable()})}function B6(){return Kt().extend({name:u.literal(P.Number),value:u.number(),autogeneration:rd.nullable()})}function w6(){return Kt().extend({name:u.literal(P.Boolean),value:u.boolean(),autogeneration:td.nullable()})}function _6(){return Kt().extend({name:u.literal(P.Null),value:u.null(),autogeneration:u.null()})}function N6(){return Kt().extend({name:u.literal(P.Date),value:u.date(),autogeneration:id.nullable()})}function M6(){return Kt().extend({name:u.literal(P.JSON),value:cD(),autogeneration:u.null()})}function V6(){return Kt().extend({name:u.literal(P.Enum),value:u.string(),autogeneration:u.null()})}function L6(){return Kt().extend({name:u.literal(P.File),value:u.string(),autogeneration:u.null()})}function G6(){return Kt().extend({name:u.literal(P.UUID),value:u.string(),autogeneration:ed.nullable()})}function $6(){return Kt().extend({name:u.literal(P.EntityTemplate),value:Dr(),autogeneration:u.null()})}function F6(){return Kt().extend({name:u.literal(P.ActionDescriptor),value:Oa(),autogeneration:u.null()})}function vd(){return u.union([C6(),B6(),w6(),_6(),N6(),M6(),V6(),L6(),G6(),$6(),F6()])}function vr(){return u.union([u.object({type:u.literal(n.DataType)}),u.record(u.string(),u.any())])}function gd(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.DataType)})}function Id(){return u.object({id:u.string(),type:u.literal(n.DataType),isNullable:u.boolean(),isList:u.boolean(),constant:u.boolean(),asType:u.boolean(),options:u.array(u.string()).optional()})}function U6(){return Id().merge(u.object({version:u.number()}))}function x6(){return Id().merge(u.object({}))}function j6(){return u.object({defaultValue:vd().nullable(),entity:u.union([gi(),yi(),no(),an()]).nullable(),parent:u.union([iD(),hD(),rD()])})}function k6(){return U6().merge(j6())}function Dd(){return u.union([u.object({type:u.literal(n.VariableDeclaration)}),u.record(u.string(),u.any())])}function q6(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.VariableDeclaration)})}function Pd(){return u.object({id:u.string(),type:u.literal(n.VariableDeclaration),name:u.string(),description:u.string().nullable()})}function J6(){return Pd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function W6(){return Pd().merge(u.object({}))}function H6(){return u.object({dataType:vr().nullable(),readsValue:Aa().nullable(),writesValues:u.array(In()),inputs:u.array(Zt()),outputs:u.array(Tt()),successCalls:u.array(ze()),errorCalls:u.array(ze()),internalCalls:u.array(Pa()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),parent:u.union([Dn(),Dt()])})}function Y6(){return J6().merge(H6())}function pD(){return u.union([u.object({type:u.literal(n.VariableInstance)}),u.record(u.string(),u.any())])}function z6(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.VariableInstance)})}function Ad(){return u.object({id:u.string(),type:u.literal(n.VariableInstance)})}function Z6(){return Ad().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function K6(){return Ad().merge(u.object({}))}function X6(){return u.object({declaration:Dd(),dataType:vr().nullable(),readsValue:Aa().nullable(),writesValues:u.array(In()),inputs:u.array(Zt()),outputs:u.array(Tt()),successCalls:u.array(ze()),errorCalls:u.array(ze()),internalCalls:u.array(Pa()),calledBySuccess:u.array(Te()),calledByError:u.array(Te()),calledByEntry:u.array(Ye()),parent:u.union([Dn(),Dt()])})}function Q6(){return Z6().merge(X6())}function Od(){return u.union([u.object({type:u.literal(n.InstalledProject)}),u.record(u.string(),u.any())])}function po(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.InstalledProject)})}function e3(){return u.object({id:u.string(),type:u.literal(n.InstalledProject)})}function t3(){return u.object({version:u.number(),x:u.number(),y:u.number()})}function n3(){return u.object({})}function r3(){return u.object({implements:Dt(),description:u.string().nullable(),functions:u.array(Bt()),events:u.array(Sd()),parent:Dt()})}function i3(){return t3().merge(r3())}function Sd(){return u.union([u.object({type:u.literal(n.GlobalEvent)}),u.record(u.string(),u.any())])}function a3(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.GlobalEvent)})}function yo(){return u.object({id:u.string(),type:u.literal(n.GlobalEvent),name:u.string(),collapsed:u.boolean()})}function s3(){return yo().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function o3(){return yo().merge(u.object({}))}function l3(){return yo().merge(u.object({returnStatements:u.array(Rr()),implements:u.array(aD()),inputs:u.array(Ir()),calls:u.array(ze()),parent:u.union([Dt(),po()])}))}function c3(){return s3().merge(l3())}function gr(){return u.union([Dd(),pD()])}function Jn(){return u.union([q6(),z6()])}function In(){return u.union([gr(),Zt(),vn()])}function yD(){return u.union([Jn(),lo(),oD()])}function Aa(){return u.union([gr(),Ir(),Tt(),Ri(),Pa(),bi()])}function d3(){return u.union([Jn(),Cd(),yd(),vi(),Ed(),va()])}function u3(){return u.union([Ir(),Tt(),In()])}function hD(){return u.union([Cd(),yd(),yD()])}function ho(){return Sd()}function fo(){return a3()}function mo(){return u.union([Ri(),bi(),ga(),Ia(),gr(),Pa(),hi()])}function Te(){return u.union([vi(),va(),oo(),Da(),Jn(),Ed(),sn()])}function To(){return u.union([Ri(),bi(),ga(),Ia(),gr(),hi()])}function Eo(){return u.union([vi(),va(),oo(),Da(),Jn(),sn()])}function fD(){return u.union([mo(),Rr(),Ei(),fi()])}function ze(){return u.union([Te(),Ti(),gn(),mi()])}function mD(){return u.union([To(),Rr(),Ei(),fi()])}function TD(){return u.union([Eo(),Ti(),gn(),mi()])}function Wn(){return u.union([Bt(),ho()])}function Ye(){return u.union([Oa(),fo()])}function p3(){return u.union([mo(),Wn()])}function y3(){return u.union([Te(),Ye()])}function h3(){return u.union([To(),Wn()])}function f3(){return u.union([Eo(),Ye()])}function m3(){return u.union([fD(),Wn()])}function T3(){return u.union([ze(),Ye()])}function E3(){return u.union([mD(),Wn()])}function b3(){return u.union([TD(),Ye()])}function R3(){return u.union([Wn(),hi()])}function Dn(){return u.union([Ye(),sn()])}function v3(){return u.union([mo(),Wn()])}function g3(){return u.union([Te(),Ye()])}function I3(){return u.union([To(),Wn()])}function D3(){return u.union([Eo(),Ye()])}function P3(){return u.union([Rr(),Ei(),fi()])}function A3(){return u.union([Ti(),gn(),mi()])}function O3(){return u.union([yi(),F3(),Od(),gi(),Bt(),ho(),gr(),Zt(),Tt(),ga(),Ri(),bi(),vn(),Ir(),no(),vr(),Er(),an(),Rr(),fi(),Ei(),hi(),Ia(),an(),an(),Ra(),Pa()])}function S3(){return u.union([ao(),Dt(),po(),Dr(),Oa(),fo(),Jn(),lo(),yd(),oo(),vi(),va(),oD(),Cd(),ro(),gd(),iD(),br(),Ti(),mi(),gn(),sn(),Da(),br(),br(),rD(),Ed()])}function C3(){return u.union([Od(),gi(),Bt(),ho(),gr(),ga(),Ri(),bi(),Rr(),fi(),Ei(),hi(),Ia()])}function B3(){return u.union([po(),Dr(),Oa(),fo(),Jn(),oo(),vi(),va(),Ti(),mi(),gn(),sn(),Da()])}function Ir(){return u.union([u.object({type:u.literal(n.ArgumentDeclaration)}),u.record(u.string(),u.any())])}function Cd(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.ArgumentDeclaration)})}function Bd(){return u.object({id:u.string(),type:u.literal(n.ArgumentDeclaration)})}function w3(){return Bd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function _3(){return Bd().merge(u.object({}))}function N3(){return u.object({dataType:vr().nullable(),writesValues:u.array(In()),parent:u.union([Ye(),br(),br(),Da(),gn()])})}function M3(){return w3().merge(N3())}function Bt(){return u.union([u.object({type:u.literal(n.FunctionDeclaration)}),u.record(u.string(),u.any())])}function Oa(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.FunctionDeclaration)})}function wd(){return u.object({id:u.string(),type:u.literal(n.FunctionDeclaration),name:u.string(),description:u.string().nullable()})}function V3(){return wd().merge(u.object({version:u.number(),x:u.number(),y:u.number(),index:u.number().nullable()}))}function L3(){return wd()}function G3(){return u.object({inputs:u.array(Ir()),implements:an().nullable(),returnStatements:u.array(Rr()),parent:u.union([Dt(),po(),Dr(),sn(),ao(),ro()])})}function $3(){return V3().merge(G3())}function F3(){return u.union([u.object({type:u.literal(n.Project)}),u.record(u.string(),u.any())])}function Dt(){return u.object({entityType:u.literal(n.Project),entityId:u.string(),id:u.string(),type:u.literal(n.GenericReference)})}function _d(){return u.object({id:u.string(),type:u.literal(n.Project),name:u.string(),description:u.string().nullable()})}function U3(){return _d().merge(u.object({version:u.number()}))}function x3(){return _d()}function j3(){return u.object({entities:u.array(gi()),functions:u.array(Bt()),events:u.array(Sd()),projects:u.array(Od()),variableDeclarations:u.array(Dd()),variableInstances:u.array(pD()),conditions:u.array(ga()),operations:u.array(Ri()),functionCalls:u.array(bi()),loops:u.array(hi()),searches:u.array(Ia())})}function k3(){return U3().merge(j3())}function gi(){return u.union([u.object({type:u.literal(n.CustomEntity)}),u.record(u.string(),u.any())])}function Dr(){return u.object({id:u.string(),type:u.literal(n.GenericReference),entityId:u.string(),entityType:u.literal(n.CustomEntity)})}function Nd(){return u.object({id:u.string(),type:u.literal(n.CustomEntity),name:u.string(),description:u.string().nullable(),static:u.boolean(),abstract:u.boolean()})}function q3(){return Nd().merge(u.object({version:u.number(),x:u.number(),y:u.number()}))}function J3(){return Nd().merge(u.object({}))}function W3(){return u.union([Dt(),gd()])}function H3(){return u.object({properties:u.array(Er()),methods:u.array(Bt()),abstractMethods:u.array(an()),extends:u.array(u.union([gi(),yi()])),implements:u.array(u.union([gi(),yi()])),parent:W3()})}function Y3(){return q3().merge(H3())}function z3(r){const e=Y3(),t=r.toJSON();e.safeParse(t).success;const a=r.implements.flatMap(h=>X3(r,h)),s=r.extends.flatMap(h=>Q3(r,h)),o=tk(r),l=ek(r);r.methods.flatMap(h=>h.validate());const p=[...a,...s,...o,...l];return ie(r.errors,p)}function Z3(r,e){const t=e.properties.filter(s=>s.abstract),i=[];let a=[...r.properties];return t.forEach(s=>{const o=a.find(l=>{var p;return((p=l.implements)==null?void 0:p.id)===s.id});o?a=a.filter(l=>l.id!==o.id):i.push(s)}),i}function K3(r,e){const t=e.abstractMethods,i=[];let a=[...r.methods];return t.forEach(s=>{const o=a.find(l=>{var p;return((p=l.implements)==null?void 0:p.id)===s.id});o?a=a.filter(l=>l.id!==o.id):i.push(s)}),i}function X3(r,e){const t=[];if(!e.abstract){const h=Y({id:r.id+"--"+M.ImplementingNonAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is implementing a non-abstract entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:M.ImplementingNonAbstractEntity,entity:r});return t.push(h.error),t}const i=e.properties.filter(h=>h.abstract),a=[];let s=[...r.properties];i.forEach(h=>{const m=s.find(R=>{var g;return((g=R.implements)==null?void 0:g.id)===h.id});m?s=s.filter(R=>R.id!==m.id):a.push(h)}),a.length&&a.forEach(h=>{const m=Y({id:r.id+"--"+M.MissingPropertyImplementation+"--"+h.id,message:`Property "${h.name}" with id "${h.id}" of entity "${e.name}" with id "${e.id}" is not implemented when entity "${r.name}" with id "${r.id}" implements it`,issue:null,severity:T.Error,code:M.MissingPropertyImplementation,entity:r});t.push(m.error)});const o=[];let l=[...r.methods];e.abstractMethods.forEach(h=>{const m=l.find(R=>{var g;return((g=R.implements)==null?void 0:g.id)===h.id});m?l=l.filter(R=>R.id!==m.id):o.push(h)}),o.length&&o.forEach(h=>{const m=Y({id:r.id+"--"+M.MissingMethodImplementation+"--"+h.id,message:`Method "${h.name}" with id "${h.id}" of entity "${e.name}" with id "${e.id}" is not implemented when entity "${r.name}" with id "${r.id}" implements it`,issue:null,severity:T.Error,code:M.MissingMethodImplementation,entity:r});t.push(m.error)});const p=[];e.properties.forEach(h=>{const m=s.find(R=>R.name===h.name);m&&p.push([m,h])}),p.length&&p.forEach(([h])=>{const m=Y({id:r.id+"--"+S.PropertyOverwrite+"--"+h.id,message:`Property "${h.name}" with id "${h.id}" of entity "${r.name}" with id "${r.id}" overwrites the property with the same name from the base entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.PropertyOverwrite,entity:r});t.push(m.error)});const y=[];return e.methods.forEach(h=>{const m=l.find(R=>R.name===h.name);m&&y.push([m,h])}),y.length&&y.forEach(([h])=>{const m=Y({id:r.id+"--"+S.MethodOverwrite+"--"+h.id,message:`Method "${h.name}" with id "${h.id}" of entity "${r.name}" with id "${r.id}" overwrites the method with the same name from the base entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.MethodOverwrite,entity:r});t.push(m.error)}),t}function Q3(r,e){const t=[],i=[];if(e.abstract){const s=Y({id:r.id+"--"+M.ExtendingAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is extending an abstract entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:M.ExtendingAbstractEntity,entity:r});return t.push(s.error),t}r.properties.forEach(s=>{var l;const o=e.properties.find(p=>p.name===s.name);((l=s.implements)==null?void 0:l.id)!==(o==null?void 0:o.id)&&o&&i.push(s)}),i.length&&i.forEach(s=>{const o=Y({id:r.id+"--"+S.PropertyOverwrite,message:`Property "${s.name}" with id "${s.id}" of entity "${r.name}" with id "${r.id}" overwrites the property with the same name from the extended entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.PropertyOverwrite,entity:r});t.push(o.error)});const a=[];return r.methods.forEach(s=>{var l;const o=e.methods.find(p=>p.name===s.name);((l=s.implements)==null?void 0:l.id)!==(o==null?void 0:o.id)&&o&&a.push(s)}),a.length&&a.forEach(s=>{const o=Y({id:r.id+"--"+S.MethodOverwrite,message:`Method "${s.name}" with id "${s.id}" of entity "${r.name}" with id "${r.id}" overwrites the method with the same name from the extended entity "${e.name}" with id "${e.id}"`,issue:null,severity:T.Error,code:S.MethodOverwrite,entity:r});t.push(o.error)}),t}function ek(r){const e=[];if(!r.properties.length){const t=Y({id:r.id+"--"+M.NoProperties,message:"No properties implemented",issue:null,severity:T.Warning,code:M.NoProperties,entity:r});e.push(t.error)}return r.properties.forEach(t=>{t.validate()}),e}function tk(r){const e=[];if(r.abstract){if(r.methods.length){const t=Y({id:r.id+"--"+M.AbstractEntityWithNonAbstractMethods,message:`Entity "${r.name}" with id "${r.id}" is marked as abstract but has non-abstract methods`,issue:null,severity:T.Error,code:M.AbstractEntityWithNonAbstractMethods,entity:r});e.push(t.error)}if(r.properties.some(t=>!t.abstract)){const t=Y({id:r.id+"--"+M.AbstractEntityWithNonAbstractProperties,message:`Entity "${r.name}" with id "${r.id}" is marked as abstract but has non-abstract properties`,issue:null,severity:T.Error,code:M.AbstractEntityWithNonAbstractProperties,entity:r});e.push(t.error),r.properties.forEach(i=>{if(!i.abstract){const a=Y({id:r.id+"--"+M.StaticEntityWithNonStaticProperties+"--"+i.id,message:`Property "${i.name}" with id "${i.id}" of entity "${r.name}" with id "${r.id}" is not marked as abstract but the entity is marked as abstract`,issue:null,severity:T.Error,code:M.StaticEntityWithNonStaticProperties,entity:r});e.push(a.error)}})}}else{if(r.abstractMethods.length){const t=Y({id:r.id+"--"+M.AbstractPropertyInNonAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is not marked as abstract but has abstract methods`,issue:null,severity:T.Error,code:M.AbstractPropertyInNonAbstractEntity,entity:r});e.push(t.error)}if(r.properties.some(t=>t.abstract)){const t=Y({id:r.id+"--"+M.AbstractMethodInNonAbstractEntity,message:`Entity "${r.name}" with id "${r.id}" is not marked as abstract but has abstract properties`,issue:null,severity:T.Error,code:M.AbstractMethodInNonAbstractEntity,entity:r});e.push(t.error),r.properties.forEach(i=>{if(i.abstract){const a=Y({id:r.id+"--"+M.AbstractMethodInNonAbstractEntity+"--"+i.id,message:`Property "${i.name}" with id "${i.id}" of entity "${r.name}" with id "${r.id}" is marked as abstract but the entity is not marked as abstract`,issue:null,severity:T.Error,code:M.AbstractMethodInNonAbstractEntity,entity:r});e.push(a.error)}})}}if(r.static&&r.properties.some(t=>!t.static)){const t=Y({id:r.id+"--"+M.StaticEntityWithNonStaticProperties,message:`Entity "${r.name}" with id "${r.id}" is marked as static but has non-static properties`,issue:null,severity:T.Error,code:M.StaticEntityWithNonStaticProperties,entity:r});e.push(t.error),r.properties.forEach(i=>{if(!i.static){const a=Y({id:r.id+"--"+M.NonStaticPropertyInStaticEntity+"--"+i.id,message:`Property "${i.name}" with id "${i.id}" of entity "${r.name}" with id "${r.id}" is not marked as static but the entity is marked as static`,issue:null,severity:T.Error,code:M.NonStaticPropertyInStaticEntity,entity:r});e.push(a.error)}})}return e}function nk(r){return r instanceof Error&&r.name==="ZodError"&&"issues"in r&&Array.isArray(r.issues)}var rk=class extends Error{constructor(e,t){super(e,t);d(this,"name");d(this,"details");this.name="ZodValidationError",this.details=ik(t)}toString(){return this.message}};function ik(r){if(r){const e=r.cause;if(nk(e))return e.issues}return[]}function ak(r){return r.length!==0}var sk=/[$_\p{ID_Start}][$\u200c\u200d\p{ID_Continue}]*/u;function ok(r){return r.length===1?r[0].toString():r.reduce((e,t)=>{if(typeof t=="number")return e+"["+t.toString()+"]";if(t.includes('"'))return e+'["'+lk(t)+'"]';if(!sk.test(t))return e+'["'+t+'"]';const i=e.length===0?"":".";return e+i+t},"")}function lk(r){return r.replace(/"/g,'\\"')}var ck="; ",dk=99,ED="Validation error",uk=": ",pk=", or ";function yk(r={}){const{issueSeparator:e=ck,unionSeparator:t=pk,prefixSeparator:i=uk,prefix:a=ED,includePath:s=!0,maxIssuesInMessage:o=dk}=r;return l=>{const p=l.slice(0,o).map(y=>bo({issue:y,issueSeparator:e,unionSeparator:t,includePath:s})).join(e);return hk(p,a,i)}}function bo(r){const{issue:e,issueSeparator:t,unionSeparator:i,includePath:a}=r;if(e.code===w.invalid_union)return e.unionErrors.reduce((s,o)=>{const l=o.issues.map(p=>bo({issue:p,issueSeparator:t,unionSeparator:i,includePath:a})).join(t);return s.includes(l)||s.push(l),s},[]).join(i);if(e.code===w.invalid_arguments)return[e.message,...e.argumentsError.issues.map(s=>bo({issue:s,issueSeparator:t,unionSeparator:i,includePath:a}))].join(t);if(e.code===w.invalid_return_type)return[e.message,...e.returnTypeError.issues.map(s=>bo({issue:s,issueSeparator:t,unionSeparator:i,includePath:a}))].join(t);if(a&&ak(e.path)){if(e.path.length===1){const s=e.path[0];if(typeof s=="number")return`${e.message} at index ${s}`}return`${e.message} at "${ok(e.path)}"`}return e.message}function hk(r,e,t){return e!==null?r.length>0?[e,r].join(t):e:r.length>0?r:ED}function fk(r,e={}){const i=mk(e)([r]);return new rk(i,{cause:new It([r])})}function mk(r){return"messageBuilder"in r?r.messageBuilder:yk(r)}var bD="1.13.7",RD=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global||Function("return this")()||{},Ro=Array.prototype,Md=Object.prototype,vD=typeof Symbol<"u"?Symbol.prototype:null,Tk=Ro.push,Sa=Ro.slice,Ca=Md.toString,Ek=Md.hasOwnProperty,gD=typeof ArrayBuffer<"u",bk=typeof DataView<"u",Rk=Array.isArray,ID=Object.keys,DD=Object.create,PD=gD&&ArrayBuffer.isView,vk=isNaN,gk=isFinite,AD=!{toString:null}.propertyIsEnumerable("toString"),OD=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],Ik=Math.pow(2,53)-1;function Pt(r,e){return e=e==null?r.length-1:+e,function(){for(var t=Math.max(arguments.length-e,0),i=Array(t),a=0;a<t;a++)i[a]=arguments[a+e];switch(e){case 0:return r.call(this,i);case 1:return r.call(this,arguments[0],i);case 2:return r.call(this,arguments[0],arguments[1],i)}var s=Array(e+1);for(a=0;a<e;a++)s[a]=arguments[a];return s[e]=i,r.apply(this,s)}}function Hn(r){var e=typeof r;return e==="function"||e==="object"&&!!r}function Dk(r){return r===null}function SD(r){return r===void 0}function CD(r){return r===!0||r===!1||Ca.call(r)==="[object Boolean]"}function Pk(r){return!!(r&&r.nodeType===1)}function ct(r){var e="[object "+r+"]";return function(t){return Ca.call(t)===e}}const Vd=ct("String"),BD=ct("Number"),Ak=ct("Date"),Ok=ct("RegExp"),Sk=ct("Error"),wD=ct("Symbol"),_D=ct("ArrayBuffer");var ND=ct("Function"),Ck=RD.document&&RD.document.childNodes;typeof/./!="function"&&typeof Int8Array!="object"&&typeof Ck!="function"&&(ND=function(r){return typeof r=="function"||!1});const Et=ND,MD=ct("Object");var VD=bk&&(!/\[native code\]/.test(String(DataView))||MD(new DataView(new ArrayBuffer(8)))),Ld=typeof Map<"u"&&MD(new Map),Bk=ct("DataView");function wk(r){return r!=null&&Et(r.getInt8)&&_D(r.buffer)}const vo=VD?wk:Bk,Pr=Rk||ct("Array");function Yn(r,e){return r!=null&&Ek.call(r,e)}var Gd=ct("Arguments");(function(){Gd(arguments)||(Gd=function(r){return Yn(r,"callee")})})();const $d=Gd;function _k(r){return!wD(r)&&gk(r)&&!isNaN(parseFloat(r))}function LD(r){return BD(r)&&vk(r)}function GD(r){return function(){return r}}function $D(r){return function(e){var t=r(e);return typeof t=="number"&&t>=0&&t<=Ik}}function FD(r){return function(e){return e==null?void 0:e[r]}}const go=FD("byteLength"),Nk=$D(go);var Mk=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function Vk(r){return PD?PD(r)&&!vo(r):Nk(r)&&Mk.test(Ca.call(r))}const UD=gD?Vk:GD(!1),At=FD("length");function Lk(r){for(var e={},t=r.length,i=0;i<t;++i)e[r[i]]=!0;return{contains:function(a){return e[a]===!0},push:function(a){return e[a]=!0,r.push(a)}}}function xD(r,e){e=Lk(e);var t=OD.length,i=r.constructor,a=Et(i)&&i.prototype||Md,s="constructor";for(Yn(r,s)&&!e.contains(s)&&e.push(s);t--;)s=OD[t],s in r&&r[s]!==a[s]&&!e.contains(s)&&e.push(s)}function et(r){if(!Hn(r))return[];if(ID)return ID(r);var e=[];for(var t in r)Yn(r,t)&&e.push(t);return AD&&xD(r,e),e}function Ba(r){if(r==null)return!0;var e=At(r);return typeof e=="number"&&(Pr(r)||Vd(r)||$d(r))?e===0:At(et(r))===0}function jD(r,e){var t=et(e),i=t.length;if(r==null)return!i;for(var a=Object(r),s=0;s<i;s++){var o=t[s];if(e[o]!==a[o]||!(o in a))return!1}return!0}function se(r){if(r instanceof se)return r;if(!(this instanceof se))return new se(r);this._wrapped=r}se.VERSION=bD,se.prototype.value=function(){return this._wrapped},se.prototype.valueOf=se.prototype.toJSON=se.prototype.value,se.prototype.toString=function(){return String(this._wrapped)};function kD(r){return new Uint8Array(r.buffer||r,r.byteOffset||0,go(r))}var qD="[object DataView]";function Fd(r,e,t,i){if(r===e)return r!==0||1/r===1/e;if(r==null||e==null)return!1;if(r!==r)return e!==e;var a=typeof r;return a!=="function"&&a!=="object"&&typeof e!="object"?!1:JD(r,e,t,i)}function JD(r,e,t,i){r instanceof se&&(r=r._wrapped),e instanceof se&&(e=e._wrapped);var a=Ca.call(r);if(a!==Ca.call(e))return!1;if(VD&&a=="[object Object]"&&vo(r)){if(!vo(e))return!1;a=qD}switch(a){case"[object RegExp]":case"[object String]":return""+r==""+e;case"[object Number]":return+r!=+r?+e!=+e:+r==0?1/+r===1/e:+r==+e;case"[object Date]":case"[object Boolean]":return+r==+e;case"[object Symbol]":return vD.valueOf.call(r)===vD.valueOf.call(e);case"[object ArrayBuffer]":case qD:return JD(kD(r),kD(e),t,i)}var s=a==="[object Array]";if(!s&&UD(r)){var o=go(r);if(o!==go(e))return!1;if(r.buffer===e.buffer&&r.byteOffset===e.byteOffset)return!0;s=!0}if(!s){if(typeof r!="object"||typeof e!="object")return!1;var l=r.constructor,p=e.constructor;if(l!==p&&!(Et(l)&&l instanceof l&&Et(p)&&p instanceof p)&&"constructor"in r&&"constructor"in e)return!1}t=t||[],i=i||[];for(var y=t.length;y--;)if(t[y]===r)return i[y]===e;if(t.push(r),i.push(e),s){if(y=r.length,y!==e.length)return!1;for(;y--;)if(!Fd(r[y],e[y],t,i))return!1}else{var h=et(r),m;if(y=h.length,et(e).length!==y)return!1;for(;y--;)if(m=h[y],!(Yn(e,m)&&Fd(r[m],e[m],t,i)))return!1}return t.pop(),i.pop(),!0}function Gk(r,e){return Fd(r,e)}function wa(r){if(!Hn(r))return[];var e=[];for(var t in r)e.push(t);return AD&&xD(r,e),e}function Ud(r){var e=At(r);return function(t){if(t==null)return!1;var i=wa(t);if(At(i))return!1;for(var a=0;a<e;a++)if(!Et(t[r[a]]))return!1;return r!==YD||!Et(t[xd])}}var xd="forEach",WD="has",jd=["clear","delete"],HD=["get",WD,"set"],$k=jd.concat(xd,HD),YD=jd.concat(HD),Fk=["add"].concat(jd,xd,WD);const Uk=Ld?Ud($k):ct("Map"),xk=Ld?Ud(YD):ct("WeakMap"),jk=Ld?Ud(Fk):ct("Set"),kk=ct("WeakSet");function Ii(r){for(var e=et(r),t=e.length,i=Array(t),a=0;a<t;a++)i[a]=r[e[a]];return i}function qk(r){for(var e=et(r),t=e.length,i=Array(t),a=0;a<t;a++)i[a]=[e[a],r[e[a]]];return i}function zD(r){for(var e={},t=et(r),i=0,a=t.length;i<a;i++)e[r[t[i]]]=t[i];return e}function kd(r){var e=[];for(var t in r)Et(r[t])&&e.push(t);return e.sort()}function qd(r,e){return function(t){var i=arguments.length;if(e&&(t=Object(t)),i<2||t==null)return t;for(var a=1;a<i;a++)for(var s=arguments[a],o=r(s),l=o.length,p=0;p<l;p++){var y=o[p];(!e||t[y]===void 0)&&(t[y]=s[y])}return t}}const ZD=qd(wa),Io=qd(et),KD=qd(wa,!0);function Jk(){return function(){}}function XD(r){if(!Hn(r))return{};if(DD)return DD(r);var e=Jk();e.prototype=r;var t=new e;return e.prototype=null,t}function Wk(r,e){var t=XD(r);return e&&Io(t,e),t}function Hk(r){return Hn(r)?Pr(r)?r.slice():ZD({},r):r}function Yk(r,e){return e(r),r}function QD(r){return Pr(r)?r:[r]}se.toPath=QD;function _a(r){return se.toPath(r)}function Jd(r,e){for(var t=e.length,i=0;i<t;i++){if(r==null)return;r=r[e[i]]}return t?r:void 0}function eP(r,e,t){var i=Jd(r,_a(e));return SD(i)?t:i}function zk(r,e){e=_a(e);for(var t=e.length,i=0;i<t;i++){var a=e[i];if(!Yn(r,a))return!1;r=r[a]}return!!t}function Wd(r){return r}function Na(r){return r=Io({},r),function(e){return jD(e,r)}}function Hd(r){return r=_a(r),function(e){return Jd(e,r)}}function Ma(r,e,t){if(e===void 0)return r;switch(t??3){case 1:return function(i){return r.call(e,i)};case 3:return function(i,a,s){return r.call(e,i,a,s)};case 4:return function(i,a,s,o){return r.call(e,i,a,s,o)}}return function(){return r.apply(e,arguments)}}function tP(r,e,t){return r==null?Wd:Et(r)?Ma(r,e,t):Hn(r)&&!Pr(r)?Na(r):Hd(r)}function Yd(r,e){return tP(r,e,1/0)}se.iteratee=Yd;function Ot(r,e,t){return se.iteratee!==Yd?se.iteratee(r,e):tP(r,e,t)}function Zk(r,e,t){e=Ot(e,t);for(var i=et(r),a=i.length,s={},o=0;o<a;o++){var l=i[o];s[l]=e(r[l],l,r)}return s}function nP(){}function Kk(r){return r==null?nP:function(e){return eP(r,e)}}function Xk(r,e,t){var i=Array(Math.max(0,r));e=Ma(e,t,1);for(var a=0;a<r;a++)i[a]=e(a);return i}function zd(r,e){return e==null&&(e=r,r=0),r+Math.floor(Math.random()*(e-r+1))}const Va=Date.now||function(){return new Date().getTime()};function rP(r){var e=function(s){return r[s]},t="(?:"+et(r).join("|")+")",i=RegExp(t),a=RegExp(t,"g");return function(s){return s=s==null?"":""+s,i.test(s)?s.replace(a,e):s}}const iP={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},Qk=rP(iP),e5=zD(iP),t5=rP(e5),n5=se.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var Zd=/(.)^/,r5={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},i5=/\\|'|\r|\n|\u2028|\u2029/g;function a5(r){return"\\"+r5[r]}var s5=/^\s*(\w|\$)+\s*$/;function o5(r,e,t){!e&&t&&(e=t),e=KD({},e,se.templateSettings);var i=RegExp([(e.escape||Zd).source,(e.interpolate||Zd).source,(e.evaluate||Zd).source].join("|")+"|$","g"),a=0,s="__p+='";r.replace(i,function(y,h,m,R,g){return s+=r.slice(a,g).replace(i5,a5),a=g+y.length,h?s+=`'+
2
2
  ((__t=(`+h+`))==null?'':_.escape(__t))+
3
3
  '`:m?s+=`'+
4
4
  ((__t=(`+m+`))==null?'':__t)+
@@ -10,14 +10,14 @@ __p+='`),y}),s+=`';
10
10
  `,o="obj";s=`var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};
11
11
  `+s+`return __p;
12
12
  `;var l;try{l=new Function(o,"_",s)}catch(y){throw y.source=s,y}var p=function(y){return l.call(this,y,se)};return p.source="function("+o+`){
13
- `+s+"}",p}function l5(r,e,t){e=_a(e);var i=e.length;if(!i)return Et(t)?t.call(r):t;for(var a=0;a<i;a++){var s=r==null?void 0:r[e[a]];s===void 0&&(s=t,a=i),r=Et(s)?s.call(r):s}return r}var c5=0;function d5(r){var e=++c5+"";return r?r+e:e}function u5(r){var e=se(r);return e._chain=!0,e}function aP(r,e,t,i,a){if(!(i instanceof e))return r.apply(t,a);var s=XD(r.prototype),o=r.apply(s,a);return Hn(o)?o:s}var Di=Pt(function(r,e){var t=Di.placeholder,i=function(){for(var a=0,s=e.length,o=Array(s),l=0;l<s;l++)o[l]=e[l]===t?arguments[a++]:e[l];for(;a<arguments.length;)o.push(arguments[a++]);return aP(r,i,this,this,o)};return i});Di.placeholder=se;const sP=Pt(function(r,e,t){if(!Et(r))throw new TypeError("Bind must be called on a function");var i=Pt(function(a){return aP(r,i,e,this,t.concat(a))});return i}),wt=$D(At);function Ar(r,e,t,i){if(i=i||[],!e&&e!==0)e=1/0;else if(e<=0)return i.concat(r);for(var a=i.length,s=0,o=At(r);s<o;s++){var l=r[s];if(wt(l)&&(Pr(l)||$d(l)))if(e>1)Ar(l,e-1,t,i),a=i.length;else for(var p=0,y=l.length;p<y;)i[a++]=l[p++];else t||(i[a++]=l)}return i}const p5=Pt(function(r,e){e=Ar(e,!1,!1);var t=e.length;if(t<1)throw new Error("bindAll must be passed function names");for(;t--;){var i=e[t];r[i]=sP(r[i],r)}return r});function y5(r,e){var t=function(i){var a=t.cache,s=""+(e?e.apply(this,arguments):i);return Yn(a,s)||(a[s]=r.apply(this,arguments)),a[s]};return t.cache={},t}const oP=Pt(function(r,e,t){return setTimeout(function(){return r.apply(null,t)},e)}),h5=Di(oP,se,1);function f5(r,e,t){var i,a,s,o,l=0;t||(t={});var p=function(){l=t.leading===!1?0:Va(),i=null,o=r.apply(a,s),i||(a=s=null)},y=function(){var h=Va();!l&&t.leading===!1&&(l=h);var m=e-(h-l);return a=this,s=arguments,m<=0||m>e?(i&&(clearTimeout(i),i=null),l=h,o=r.apply(a,s),i||(a=s=null)):!i&&t.trailing!==!1&&(i=setTimeout(p,m)),o};return y.cancel=function(){clearTimeout(i),l=0,i=a=s=null},y}function m5(r,e,t){var i,a,s,o,l,p=function(){var h=Va()-a;e>h?i=setTimeout(p,e-h):(i=null,t||(o=r.apply(l,s)),i||(s=l=null))},y=Pt(function(h){return l=this,s=h,a=Va(),i||(i=setTimeout(p,e),t&&(o=r.apply(l,s))),o});return y.cancel=function(){clearTimeout(i),i=s=l=null},y}function T5(r,e){return Di(e,r)}function Kd(r){return function(){return!r.apply(this,arguments)}}function E5(){var r=arguments,e=r.length-1;return function(){for(var t=e,i=r[e].apply(this,arguments);t--;)i=r[t].call(this,i);return i}}function b5(r,e){return function(){if(--r<1)return e.apply(this,arguments)}}function lP(r,e){var t;return function(){return--r>0&&(t=e.apply(this,arguments)),r<=1&&(e=null),t}}const R5=Di(lP,2);function cP(r,e,t){e=Ot(e,t);for(var i=et(r),a,s=0,o=i.length;s<o;s++)if(a=i[s],e(r[a],a,r))return a}function dP(r){return function(e,t,i){t=Ot(t,i);for(var a=At(e),s=r>0?0:a-1;s>=0&&s<a;s+=r)if(t(e[s],s,e))return s;return-1}}const Xd=dP(1),uP=dP(-1);function pP(r,e,t,i){t=Ot(t,i,1);for(var a=t(e),s=0,o=At(r);s<o;){var l=Math.floor((s+o)/2);t(r[l])<a?s=l+1:o=l}return s}function yP(r,e,t){return function(i,a,s){var o=0,l=At(i);if(typeof s=="number")r>0?o=s>=0?s:Math.max(s+l,o):l=s>=0?Math.min(s+1,l):s+l+1;else if(t&&s&&l)return s=t(i,a),i[s]===a?s:-1;if(a!==a)return s=e(Sa.call(i,o,l),LD),s>=0?s+o:-1;for(s=r>0?o:l-1;s>=0&&s<l;s+=r)if(i[s]===a)return s;return-1}}const hP=yP(1,Xd,pP),v5=yP(-1,uP);function Qd(r,e,t){var i=wt(r)?Xd:cP,a=i(r,e,t);if(a!==void 0&&a!==-1)return r[a]}function g5(r,e){return Qd(r,Na(e))}function Pn(r,e,t){e=Ma(e,t);var i,a;if(wt(r))for(i=0,a=r.length;i<a;i++)e(r[i],i,r);else{var s=et(r);for(i=0,a=s.length;i<a;i++)e(r[s[i]],s[i],r)}return r}function Or(r,e,t){e=Ot(e,t);for(var i=!wt(r)&&et(r),a=(i||r).length,s=Array(a),o=0;o<a;o++){var l=i?i[o]:o;s[o]=e(r[l],l,r)}return s}function fP(r){var e=function(t,i,a,s){var o=!wt(t)&&et(t),l=(o||t).length,p=r>0?0:l-1;for(s||(a=t[o?o[p]:p],p+=r);p>=0&&p<l;p+=r){var y=o?o[p]:p;a=i(a,t[y],y,t)}return a};return function(t,i,a,s){var o=arguments.length>=3;return e(t,Ma(i,s,4),a,o)}}const eu=fP(1),mP=fP(-1);function Pi(r,e,t){var i=[];return e=Ot(e,t),Pn(r,function(a,s,o){e(a,s,o)&&i.push(a)}),i}function I5(r,e,t){return Pi(r,Kd(Ot(e)),t)}function TP(r,e,t){e=Ot(e,t);for(var i=!wt(r)&&et(r),a=(i||r).length,s=0;s<a;s++){var o=i?i[s]:s;if(!e(r[o],o,r))return!1}return!0}function EP(r,e,t){e=Ot(e,t);for(var i=!wt(r)&&et(r),a=(i||r).length,s=0;s<a;s++){var o=i?i[s]:s;if(e(r[o],o,r))return!0}return!1}function An(r,e,t,i){return wt(r)||(r=Ii(r)),(typeof t!="number"||i)&&(t=0),hP(r,e,t)>=0}const D5=Pt(function(r,e,t){var i,a;return Et(e)?a=e:(e=_a(e),i=e.slice(0,-1),e=e[e.length-1]),Or(r,function(s){var o=a;if(!o){if(i&&i.length&&(s=Jd(s,i)),s==null)return;o=s[e]}return o==null?o:o.apply(s,t)})});function tu(r,e){return Or(r,Hd(e))}function P5(r,e){return Pi(r,Na(e))}function bP(r,e,t){var i=-1/0,a=-1/0,s,o;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=wt(r)?r:Ii(r);for(var l=0,p=r.length;l<p;l++)s=r[l],s!=null&&s>i&&(i=s)}else e=Ot(e,t),Pn(r,function(y,h,m){o=e(y,h,m),(o>a||o===-1/0&&i===-1/0)&&(i=y,a=o)});return i}function A5(r,e,t){var i=1/0,a=1/0,s,o;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=wt(r)?r:Ii(r);for(var l=0,p=r.length;l<p;l++)s=r[l],s!=null&&s<i&&(i=s)}else e=Ot(e,t),Pn(r,function(y,h,m){o=e(y,h,m),(o<a||o===1/0&&i===1/0)&&(i=y,a=o)});return i}var O5=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function RP(r){return r?Pr(r)?Sa.call(r):Vd(r)?r.match(O5):wt(r)?Or(r,Wd):Ii(r):[]}function vP(r,e,t){if(e==null||t)return wt(r)||(r=Ii(r)),r[zd(r.length-1)];var i=RP(r),a=At(i);e=Math.max(Math.min(e,a),0);for(var s=a-1,o=0;o<e;o++){var l=zd(o,s),p=i[o];i[o]=i[l],i[l]=p}return i.slice(0,e)}function S5(r){return vP(r,1/0)}function C5(r,e,t){var i=0;return e=Ot(e,t),tu(Or(r,function(a,s,o){return{value:a,index:i++,criteria:e(a,s,o)}}).sort(function(a,s){var o=a.criteria,l=s.criteria;if(o!==l){if(o>l||o===void 0)return 1;if(o<l||l===void 0)return-1}return a.index-s.index}),"value")}function Do(r,e){return function(t,i,a){var s=e?[[],[]]:{};return i=Ot(i,a),Pn(t,function(o,l){var p=i(o,l,t);r(s,o,p)}),s}}const B5=Do(function(r,e,t){Yn(r,t)?r[t].push(e):r[t]=[e]}),w5=Do(function(r,e,t){r[t]=e}),_5=Do(function(r,e,t){Yn(r,t)?r[t]++:r[t]=1}),N5=Do(function(r,e,t){r[t?0:1].push(e)},!0);function M5(r){return r==null?0:wt(r)?r.length:et(r).length}function V5(r,e,t){return e in t}const gP=Pt(function(r,e){var t={},i=e[0];if(r==null)return t;Et(i)?(e.length>1&&(i=Ma(i,e[1])),e=wa(r)):(i=V5,e=Ar(e,!1,!1),r=Object(r));for(var a=0,s=e.length;a<s;a++){var o=e[a],l=r[o];i(l,o,r)&&(t[o]=l)}return t}),L5=Pt(function(r,e){var t=e[0],i;return Et(t)?(t=Kd(t),e.length>1&&(i=e[1])):(e=Or(Ar(e,!1,!1),String),t=function(a,s){return!An(e,s)}),gP(r,t,i)});function IP(r,e,t){return Sa.call(r,0,Math.max(0,r.length-(e==null||t?1:e)))}function nu(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[0]:IP(r,r.length-e)}function Po(r,e,t){return Sa.call(r,e==null||t?1:e)}function G5(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[r.length-1]:Po(r,Math.max(0,r.length-e))}function $5(r){return Pi(r,Boolean)}function F5(r,e){return Ar(r,e,!1)}const DP=Pt(function(r,e){return e=Ar(e,!0,!0),Pi(r,function(t){return!An(e,t)})}),U5=Pt(function(r,e){return DP(r,e)});function ru(r,e,t,i){CD(e)||(i=t,t=e,e=!1),t!=null&&(t=Ot(t,i));for(var a=[],s=[],o=0,l=At(r);o<l;o++){var p=r[o],y=t?t(p,o,r):p;e&&!t?((!o||s!==y)&&a.push(p),s=y):t?An(s,y)||(s.push(y),a.push(p)):An(a,p)||a.push(p)}return a}const x5=Pt(function(r){return ru(Ar(r,!0,!0))});function j5(r){for(var e=[],t=arguments.length,i=0,a=At(r);i<a;i++){var s=r[i];if(!An(e,s)){var o;for(o=1;o<t&&An(arguments[o],s);o++);o===t&&e.push(s)}}return e}function iu(r){for(var e=r&&bP(r,At).length||0,t=Array(e),i=0;i<e;i++)t[i]=tu(r,i);return t}const k5=Pt(iu);function q5(r,e){for(var t={},i=0,a=At(r);i<a;i++)e?t[r[i]]=e[i]:t[r[i][0]]=r[i][1];return t}function J5(r,e,t){e==null&&(e=r||0,r=0),t||(t=e<r?-1:1);for(var i=Math.max(Math.ceil((e-r)/t),0),a=Array(i),s=0;s<i;s++,r+=t)a[s]=r;return a}function W5(r,e){if(e==null||e<1)return[];for(var t=[],i=0,a=r.length;i<a;)t.push(Sa.call(r,i,i+=e));return t}function au(r,e){return r._chain?se(e).chain():e}function PP(r){return Pn(kd(r),function(e){var t=se[e]=r[e];se.prototype[e]=function(){var i=[this._wrapped];return Tk.apply(i,arguments),au(this,t.apply(se,i))}}),se}Pn(["pop","push","reverse","shift","sort","splice","unshift"],function(r){var e=Ro[r];se.prototype[r]=function(){var t=this._wrapped;return t!=null&&(e.apply(t,arguments),(r==="shift"||r==="splice")&&t.length===0&&delete t[0]),au(this,t)}}),Pn(["concat","join","slice"],function(r){var e=Ro[r];se.prototype[r]=function(){var t=this._wrapped;return t!=null&&(t=e.apply(t,arguments)),au(this,t)}});var AP=PP(Object.freeze(Object.defineProperty({__proto__:null,VERSION:bD,after:b5,all:TP,allKeys:wa,any:EP,assign:Io,before:lP,bind:sP,bindAll:p5,chain:u5,chunk:W5,clone:Hk,collect:Or,compact:$5,compose:E5,constant:GD,contains:An,countBy:_5,create:Wk,debounce:m5,default:se,defaults:KD,defer:h5,delay:oP,detect:Qd,difference:DP,drop:Po,each:Pn,escape:Qk,every:TP,extend:ZD,extendOwn:Io,filter:Pi,find:Qd,findIndex:Xd,findKey:cP,findLastIndex:uP,findWhere:g5,first:nu,flatten:F5,foldl:eu,foldr:mP,forEach:Pn,functions:kd,get:eP,groupBy:B5,has:zk,head:nu,identity:Wd,include:An,includes:An,indexBy:w5,indexOf:hP,initial:IP,inject:eu,intersection:j5,invert:zD,invoke:D5,isArguments:$d,isArray:Pr,isArrayBuffer:_D,isBoolean:CD,isDataView:vo,isDate:Ak,isElement:Pk,isEmpty:Ba,isEqual:Gk,isError:Sk,isFinite:_k,isFunction:Et,isMap:Uk,isMatch:jD,isNaN:LD,isNull:Dk,isNumber:BD,isObject:Hn,isRegExp:Ok,isSet:jk,isString:Vd,isSymbol:wD,isTypedArray:UD,isUndefined:SD,isWeakMap:xk,isWeakSet:kk,iteratee:Yd,keys:et,last:G5,lastIndexOf:v5,map:Or,mapObject:Zk,matcher:Na,matches:Na,max:bP,memoize:y5,methods:kd,min:A5,mixin:PP,negate:Kd,noop:nP,now:Va,object:q5,omit:L5,once:R5,pairs:qk,partial:Di,partition:N5,pick:gP,pluck:tu,property:Hd,propertyOf:Kk,random:zd,range:J5,reduce:eu,reduceRight:mP,reject:I5,rest:Po,restArguments:Pt,result:l5,sample:vP,select:Pi,shuffle:S5,size:M5,some:EP,sortBy:C5,sortedIndex:pP,tail:Po,take:nu,tap:Yk,template:o5,templateSettings:n5,throttle:f5,times:Xk,toArray:RP,toPath:QD,transpose:iu,unescape:t5,union:x5,uniq:ru,unique:ru,uniqueId:d5,unzip:iu,values:Ii,where:P5,without:U5,wrap:T5,zip:k5},Symbol.toStringTag,{value:"Module"})));AP._=AP;function Ao(r){return r.charAt(0).toUpperCase()+r.slice(1)}function OP(r){return r.charAt(0).toLowerCase()+r.slice(1)}function SP(r,e){if(r.type!==n.Property||e.type!==n.Property)throw new Error(`Expected property entities for comparison. But got ${r.type} and ${e.type}.`);return r===e||r.id===e.id?!0:r.name!==e.name||r.static!==e.static||r.abstract!==e.abstract?!1:Ut(r.dataType,e.dataType).compatible}function CP(r,e){if(r.type!==n.CustomEntity||e.type!==n.CustomEntity)throw new Error(`Expected custom entities for comparison. But got ${r.type} and ${e.type}.`);if(r===e||r.id===e.id)return!0;if(r.properties.length!==e.properties.length)return!1;let t=[...e.properties];const i=[];for(let a=0;a<r.properties.length;a++){const s=r.properties[a];t.find(l=>{const p=SP(s,l);return p&&(t=t.filter(y=>y.id!==l.id)),p})||i.push(s)}return!(i.length>0)}var Ft=(r=>(r.BothUnconstrained="both-unconstrained",r.AConstraintBUnconstrained="a-constraint-b-unconstrained",r.BConstraintAUnconstrained="b-constraint-a-unconstrained",r.Same="same",r.AIsListBIsNot="a-is-list-b-is-not",r.BIsListAIsNot="b-is-list-a-is-not",r.AIsNullableBIsNot="a-is-nullable-b-is-not",r.BIsNullableAIsNot="b-is-nullable-a-is-not",r.AIsTemplateBIsNot="a-is-template-b-is-not",r.BIsTemplateAIsNot="b-is-template-a-is-not",r.BothUntyped="both-untyped",r.AIsUntypedBIsNot="a-is-untyped-b-is-not",r.BIsUntypedAIsNot="b-is-untyped-a-is-not",r.TypeEntityMismatch="type-entity-mismatch",r.SameCustomEntities="same-custom-entities",r.CompatibleCustomEntities="compatible-custom-entities",r.IncompatibleCustomEntities="incompatible-custom-entities",r.SamePrimitiveEntities="same-primitive-entities",r.IncompatiblePrimitiveEntities="incompatible-primitive-entities",r.SameBuiltInBaseEntities="same-built-in-base-entities",r.IncompatibleBuiltInBaseEntities="incompatible-built-in-base-entities",r.CheckUnknown="check-unknown",r))(Ft||{});function Ut(r,e){var t,i,a,s,o,l,p,y,h,m,R;if(r&&r.type!==n.DataType||e&&e.type!==n.DataType)throw new Error(`Expected data-type entities for comparison. But got ${r==null?void 0:r.type} and ${e==null?void 0:e.type}.`);if(r===null&&e===null)return{compatible:!0,type:"both-unconstrained"};if(r===null)return{compatible:!0,type:"a-constraint-b-unconstrained"};if(e===null)return{compatible:!0,type:"b-constraint-a-unconstrained"};if(r===e)return{compatible:!0,type:"same"};if(r.id===e.id)return{compatible:!0,type:"same"};if(r.isList!==e.isList)return{compatible:!1,type:r.isList?"a-is-list-b-is-not":"b-is-list-a-is-not"};if(r.isNullable!==e.isNullable)return{compatible:!1,type:r.isNullable?"a-is-nullable-b-is-not":"b-is-nullable-a-is-not"};if(r.asType!==e.asType)return{compatible:!1,type:r.asType?"a-is-template-b-is-not":"b-is-template-a-is-not"};if(!r.entity&&e.entity)return{compatible:!0,type:"a-is-untyped-b-is-not"};if(r.entity&&!e.entity)return{compatible:!0,type:"b-is-untyped-a-is-not"};if(!r.entity&&!e.entity)return{compatible:!0,type:"both-untyped"};if(((t=r.entity)==null?void 0:t.type)!==((i=e.entity)==null?void 0:i.type))return{compatible:!1,type:"type-entity-mismatch"};if(((a=r.entity)==null?void 0:a.type)===n.CustomEntity){if(((s=r.entity)==null?void 0:s.id)===((o=e.entity)==null?void 0:o.id))return{compatible:!0,type:"same-custom-entities"};const g=CP(r.entity,e.entity);return{compatible:g,type:g?"compatible-custom-entities":"incompatible-custom-entities"}}return((l=r.entity)==null?void 0:l.type)===n.PrimitiveEntity?((p=r.entity)==null?void 0:p.id)===((y=e.entity)==null?void 0:y.id)?{compatible:!0,type:"same-primitive-entities"}:{compatible:!1,type:"incompatible-primitive-entities"}:((h=r.entity)==null?void 0:h.type)===n.BuiltInBaseEntity?((m=r.entity)==null?void 0:m.id)===((R=e.entity)==null?void 0:R.id)?{compatible:!0,type:"same-built-in-base-entities"}:{compatible:!1,type:"incompatible-built-in-base-entities"}:{compatible:!1,type:"check-unknown"}}function H5(r){const e=r.project.builtInBaseEntities.find(a=>a.id===L.EXECUTION),t={id:r.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,defaultValue:null,parent:null},i=v(t,r.project);return i.inferred=!0,i.sync(t),i.setParent(r),i.entity=e,i}function BP(r){return r.dataType?r.dataType:null}function su(r){var t;const e=(t=r.declaration)==null?void 0:t.getDataType();return e&&e.isResolved()?e:r.readsValue?on(r.readsValue):null}function ou(r){return r.dataType&&!r.dataType.inferred&&r.dataType.isResolved()?r.dataType:r.readsValue?on(r.readsValue):null}function wP(r){return on(r.declaration)}function _P(r){return r.dataType&&!r.dataType.inferred?r.dataType:(r.dataType&&r.dataType.inferred,r.inferDataTypeAndSyncInstancesInputsAndOutputs(),r.dataType)}function lu(r){var e;return((e=r.declaration)==null?void 0:e.dataType)||null}function NP(r){return(r==null?void 0:r.dataType)||null}function MP(r){return(r==null?void 0:r.dataType)||null}function on(r){switch(r.type){case n.VariableDeclaration:return _P(r);case n.ArgumentDeclaration:return BP(r);case n.ReturnDeclaration:return ou(r);case n.VariableInstance:return wP(r);case n.InputMap:return su(r);case n.OutputMap:return lu(r);case n.Property:return NP(r);case n.ValueDescriptor:return MP(r);default:throw new Error(`Cannot infer data type from entity of type ${r.type}.`)}}function Oo(r){switch(r.type){case n.ArgumentDeclaration:return r.getDataType();case n.InputMap:return r.getDataType();case n.VariableDeclaration:return r.getDataType();case n.VariableInstance:return r.getDataType();case n.OutputMap:return r.getDataType();case n.ReturnDeclaration:return r.getDataType();case n.Property:return r.getDataType();case n.ValueDescriptor:return r.getDataType();default:return null}}function N(r){if(r){let e=null;return typeof r=="string"?e=r:r.entityId?e=r.entityId:r.type!==n.GenericReference&&(e=r.id),e}return null}function Sr(r){return r.declaration||r}function Y5(r){return r.type===n.VariableDeclaration?r.parent===r.project?"global-declaration":"local-declaration":r.declaration.parent===r.project?"global-instance":"local-instance"}function cu(r,e){const t=[];if(r.type===n.Project)t.push(...r.variableDeclarations);else{const a=Rt(Ne(r)).filter(s=>s.type===n.VariableDeclaration);t.push(...a),r.parent&&(ut.includes(r.parent.type)||r.parent.type===n.Project)&&t.push(...cu(r.parent))}return t}function z5(r){return r.replace(/(?:^\w|[A-Z]|\b\w)/g,function(e,t){return t===0?e.toLowerCase():e.toUpperCase()}).replace(/\s+/g,"")}function Z5(r){return r.split(/\s+/).map(i=>i[0].toUpperCase()+i.slice(1).toLowerCase()).join("")}function VP(r){var e;return(e=r.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:e.map(t=>t.toLowerCase()).join("-")}function So(r){return VP(r).toLowerCase()}function du(r){if(!r)return"Any data type";if(!r.entity)return r.isList?"List of an unknown data type":"Unknown data type";if(r.entity.type===n.PrimitiveEntity){const e=r.entity.name===P.String?"Text":r.entity.name;return r.isList?`List of ${e}s`:`${e.slice(0,1).toUpperCase()}${e.slice(1)}`}else if(r.entity.type===n.CustomEntity){const e=$P(r.entity);return r.isList?`List of ${e} entities`:e.slice(0,1).toUpperCase()+e.slice(1)}else if(r.entity.type===n.BuiltInBaseEntity){const e=GP(r.entity);return r.isList?`List of ${e} entities`:e.slice(0,1).toUpperCase()+e.slice(1)}else return r.isList?`List of ${r.entity.name} entities`:`${r.entity.name.slice(0,1).toUpperCase()+r.entity.name.slice(1)} entity`}function K5(r){if(!r)return"Any data type";const e=r.getDataType();return du(e)}function Co(r){switch(r.declaration.id){case Ge.Equal:return"is equal to";case Ge.NotEqual:return"is not equal to";case Ge.MoreThan:return"is greater than";case Ge.MoreThanOrEqual:return"is greater than or equal to";case Ge.LessThan:return"is less than";case Ge.LessThanOrEqual:return"is less than or equal to";case Ge.And:return"and";case Ge.Or:return"or";case Mt.Empty:return"is empty";case Mt.NotEmpty:return"is not empty"}}function LP(r){return r.includes(L.HTTP_ENDPOINT)?"HTTP endpoint":r.includes(L.PERSISTED_ENTITY)?"Persisted entity":r.includes(L.CRON_JOB)?"Scheduled execution":r.includes(L.RELATIONAL_DATABASE)?"Relational database":"Entity"}function GP(r){switch(r.name){case L.HTTP_ENDPOINT:return"HTTP endpoint";case L.PERSISTED_ENTITY:return"Persisted entity";case L.CRON_JOB:return"Scheduled execution";case L.RELATIONAL_DATABASE:return"Relational database"}return"Entity"}function $P(r){const e=DA(r);if(!e){const t=gA(r);return t.includes(L.HTTP_ENDPOINT)?"HTTP endpoint":t.includes(L.PERSISTED_ENTITY)?"Persisted entity":t.includes(L.CRON_JOB)?"Scheduled execution":t.includes(L.RELATIONAL_DATABASE)?"Relational database":C(r,r.project)+" entity"}return C(e,r.project)+" entity"}function FP(r){let e="Find ";return r.outputsDeclarations.forEach((t,i)=>{const a=Oo(t),s=OP(a&&a.entity?C(a.entity,r.project):"unstructured data");i===0?e+=`${s} `:i===r.outputsDeclarations.length-1?e+=`and ${s} `:e+=`, ${s} `}),e}function UP(r){switch(r.name){case P.String:return"Text";case P.Number:return"Number";case P.Boolean:return"Boolean";case P.JSON:return"Data structure";case P.UUID:return"Unique identifier";case P.Date:return"Date";case P.EntityTemplate:return"Entity as template";case P.Enum:return"Enumeration";case P.File:return"File";case P.Null:return"Empty";case P.ActionDescriptor:return"Action descriptor";default:return r.name}}function xP(r){switch(r.id){case $.List:return"Loop over list items";case $.ManualFlow:return"Manual flow control loop";case $.ObjectKeys:return"Loop over object keys";case $.ObjectValues:return"Loop over object values";case $.Counted:return"Loop given number of times";case $.String:return"Loop over text characters";case me.Addition:return"Sum numbers";case me.Subtraction:return"Subtract numbers";case me.Multiplication:return"Multiply numbers";case me.Division:return"Divide numbers";case me.Remainder:return"Get remainder of numbers";case me.Exponentiation:return"Get exponent of numbers";case K.AddIndex:return"Add at index position";case K.DeleteFirst:return"Delete first character";case K.DeleteLast:return"Delete last character";case K.DeleteIndex:return"Delete at index position";case K.Join:return"Join texts";case K.ReplaceAllMatches:return"Replace all matches";case K.ReplaceFirst:return"Replace first match";case K.ReplaceLast:return"Replace last match";case K.Split:return"Split text";case K.ReplaceIndex:return"Replace at index position";case K.ReplaceSingleMatch:return"Replace single match";case K.GetFirst:return"Get first character";case K.GetLast:return"Get last character";case K.GetIndex:return"Get at index position";case K.Append:return"Add at the end";case K.Prepend:return"Add at the start";case Me.Wait:return"Wait";case Me.Parallel:return"Run in parallel";case Me.Sequential:return"Run in sequence";case nt.HttpRequest:return"HTTP request";case le.CreateNewInstance:return"Create new copy of entity";case W.AddIndex:return"Add item at index position";case W.DeleteFirst:return"Delete first item";case W.DeleteLast:return"Delete last item";case W.DeleteIndex:return"Delete item at index position";case W.Join:return"Join lists";case W.ReplaceAllMatches:return"Replace all matches";case W.ReplaceFirst:return"Replace first match";case W.ReplaceLast:return"Replace last match";case W.Split:return"Split list";case W.ReplaceIndex:return"Replace at index position";case W.ReplaceSingleMatch:return"Replace single match";case W.GetFirst:return"Get first item";case W.GetLast:return"Get last item";case W.GetIndex:return"Get item at index position";case W.Append:return"Add item at the end";case W.Prepend:return"Add item at the start";case dn.PROJECT_PUBLICATION_COMPLETED:return"Project publication completed";default:return(r.name.slice(0,1).toUpperCase()+r.name.slice(1)).replaceAll("-"," ")}}function C(r,e){var t;if(n.FunctionDeclaration===r.type){const i=r.name;if(Object.values(Ct).includes(i))switch(i){case Ct.AbortExecution:return"Abort execution";case Ct.DeletePersistedEntity:return"Delete persisted entity";case Ct.SoftDeletePersistedEntity:return"Soft delete persisted entity";default:return Ao(r.type).replaceAll("-"," ")}return i}if(n.BuiltInBaseEntity===r.type)return LP([r.name]);if(ku.includes(r.type)&&r.type!==n.ActionDescriptor)return r.name;switch(r.type){case n.Search:return FP(r);case n.Operation:case n.InternalCall:case n.Loop:const i=Nt(r.declaration,e);return C(i,e);case n.ActionDescriptor:return xP(r);case n.BreakStatement:const a=Nt(r.parent,e);return`Stop loop ${C(a,e)}`;case n.ContinueStatement:const s=Nt(r.parent,e);return`Execute next iteration of ${C(s,e)}`;case n.FunctionCall:return Nt(r.declaration,e).name;case n.Condition:{const l=r;if((t=r.inputs)!=null&&t.length){const p=C(l.inputs[0],l.project);if(l.inputs[1]){const y=l.inputs[1].declaration.name;return`If ${p} ${Co(l)} ${y}`}return`If ${p} ${Co(l)}`}else return`If ${Co(l)}`}case n.ReturnStatement:{const l=Nt(r.parent,e);return`Output of ${C(l,e)}`}case n.InputMap:if(r.declaration){const l=Nt(r.declaration,e);return C(l,e)||""}else return r.name||"";case n.VariableInstance:{const l=Nt(r.declaration,e);return C(l,e)||""}case n.OutputMap:if(r.declaration){const l=Nt(r.declaration,e);return(l==null?void 0:l.name)||""}else return"";case n.PrimitiveEntity:case n.PrimitiveValue:return UP(r);default:return Ao(r.type).replaceAll("-"," ")}}function Bo(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=e.entities.filter(a=>a.name===r.name);return i.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique in the project. Entity with id "${i[0].id}" has the same name.
13
+ `+s+"}",p}function l5(r,e,t){e=_a(e);var i=e.length;if(!i)return Et(t)?t.call(r):t;for(var a=0;a<i;a++){var s=r==null?void 0:r[e[a]];s===void 0&&(s=t,a=i),r=Et(s)?s.call(r):s}return r}var c5=0;function d5(r){var e=++c5+"";return r?r+e:e}function u5(r){var e=se(r);return e._chain=!0,e}function aP(r,e,t,i,a){if(!(i instanceof e))return r.apply(t,a);var s=XD(r.prototype),o=r.apply(s,a);return Hn(o)?o:s}var Di=Pt(function(r,e){var t=Di.placeholder,i=function(){for(var a=0,s=e.length,o=Array(s),l=0;l<s;l++)o[l]=e[l]===t?arguments[a++]:e[l];for(;a<arguments.length;)o.push(arguments[a++]);return aP(r,i,this,this,o)};return i});Di.placeholder=se;const sP=Pt(function(r,e,t){if(!Et(r))throw new TypeError("Bind must be called on a function");var i=Pt(function(a){return aP(r,i,e,this,t.concat(a))});return i}),wt=$D(At);function Ar(r,e,t,i){if(i=i||[],!e&&e!==0)e=1/0;else if(e<=0)return i.concat(r);for(var a=i.length,s=0,o=At(r);s<o;s++){var l=r[s];if(wt(l)&&(Pr(l)||$d(l)))if(e>1)Ar(l,e-1,t,i),a=i.length;else for(var p=0,y=l.length;p<y;)i[a++]=l[p++];else t||(i[a++]=l)}return i}const p5=Pt(function(r,e){e=Ar(e,!1,!1);var t=e.length;if(t<1)throw new Error("bindAll must be passed function names");for(;t--;){var i=e[t];r[i]=sP(r[i],r)}return r});function y5(r,e){var t=function(i){var a=t.cache,s=""+(e?e.apply(this,arguments):i);return Yn(a,s)||(a[s]=r.apply(this,arguments)),a[s]};return t.cache={},t}const oP=Pt(function(r,e,t){return setTimeout(function(){return r.apply(null,t)},e)}),h5=Di(oP,se,1);function f5(r,e,t){var i,a,s,o,l=0;t||(t={});var p=function(){l=t.leading===!1?0:Va(),i=null,o=r.apply(a,s),i||(a=s=null)},y=function(){var h=Va();!l&&t.leading===!1&&(l=h);var m=e-(h-l);return a=this,s=arguments,m<=0||m>e?(i&&(clearTimeout(i),i=null),l=h,o=r.apply(a,s),i||(a=s=null)):!i&&t.trailing!==!1&&(i=setTimeout(p,m)),o};return y.cancel=function(){clearTimeout(i),l=0,i=a=s=null},y}function m5(r,e,t){var i,a,s,o,l,p=function(){var h=Va()-a;e>h?i=setTimeout(p,e-h):(i=null,t||(o=r.apply(l,s)),i||(s=l=null))},y=Pt(function(h){return l=this,s=h,a=Va(),i||(i=setTimeout(p,e),t&&(o=r.apply(l,s))),o});return y.cancel=function(){clearTimeout(i),i=s=l=null},y}function T5(r,e){return Di(e,r)}function Kd(r){return function(){return!r.apply(this,arguments)}}function E5(){var r=arguments,e=r.length-1;return function(){for(var t=e,i=r[e].apply(this,arguments);t--;)i=r[t].call(this,i);return i}}function b5(r,e){return function(){if(--r<1)return e.apply(this,arguments)}}function lP(r,e){var t;return function(){return--r>0&&(t=e.apply(this,arguments)),r<=1&&(e=null),t}}const R5=Di(lP,2);function cP(r,e,t){e=Ot(e,t);for(var i=et(r),a,s=0,o=i.length;s<o;s++)if(a=i[s],e(r[a],a,r))return a}function dP(r){return function(e,t,i){t=Ot(t,i);for(var a=At(e),s=r>0?0:a-1;s>=0&&s<a;s+=r)if(t(e[s],s,e))return s;return-1}}const Xd=dP(1),uP=dP(-1);function pP(r,e,t,i){t=Ot(t,i,1);for(var a=t(e),s=0,o=At(r);s<o;){var l=Math.floor((s+o)/2);t(r[l])<a?s=l+1:o=l}return s}function yP(r,e,t){return function(i,a,s){var o=0,l=At(i);if(typeof s=="number")r>0?o=s>=0?s:Math.max(s+l,o):l=s>=0?Math.min(s+1,l):s+l+1;else if(t&&s&&l)return s=t(i,a),i[s]===a?s:-1;if(a!==a)return s=e(Sa.call(i,o,l),LD),s>=0?s+o:-1;for(s=r>0?o:l-1;s>=0&&s<l;s+=r)if(i[s]===a)return s;return-1}}const hP=yP(1,Xd,pP),v5=yP(-1,uP);function Qd(r,e,t){var i=wt(r)?Xd:cP,a=i(r,e,t);if(a!==void 0&&a!==-1)return r[a]}function g5(r,e){return Qd(r,Na(e))}function Pn(r,e,t){e=Ma(e,t);var i,a;if(wt(r))for(i=0,a=r.length;i<a;i++)e(r[i],i,r);else{var s=et(r);for(i=0,a=s.length;i<a;i++)e(r[s[i]],s[i],r)}return r}function Or(r,e,t){e=Ot(e,t);for(var i=!wt(r)&&et(r),a=(i||r).length,s=Array(a),o=0;o<a;o++){var l=i?i[o]:o;s[o]=e(r[l],l,r)}return s}function fP(r){var e=function(t,i,a,s){var o=!wt(t)&&et(t),l=(o||t).length,p=r>0?0:l-1;for(s||(a=t[o?o[p]:p],p+=r);p>=0&&p<l;p+=r){var y=o?o[p]:p;a=i(a,t[y],y,t)}return a};return function(t,i,a,s){var o=arguments.length>=3;return e(t,Ma(i,s,4),a,o)}}const eu=fP(1),mP=fP(-1);function Pi(r,e,t){var i=[];return e=Ot(e,t),Pn(r,function(a,s,o){e(a,s,o)&&i.push(a)}),i}function I5(r,e,t){return Pi(r,Kd(Ot(e)),t)}function TP(r,e,t){e=Ot(e,t);for(var i=!wt(r)&&et(r),a=(i||r).length,s=0;s<a;s++){var o=i?i[s]:s;if(!e(r[o],o,r))return!1}return!0}function EP(r,e,t){e=Ot(e,t);for(var i=!wt(r)&&et(r),a=(i||r).length,s=0;s<a;s++){var o=i?i[s]:s;if(e(r[o],o,r))return!0}return!1}function An(r,e,t,i){return wt(r)||(r=Ii(r)),(typeof t!="number"||i)&&(t=0),hP(r,e,t)>=0}const D5=Pt(function(r,e,t){var i,a;return Et(e)?a=e:(e=_a(e),i=e.slice(0,-1),e=e[e.length-1]),Or(r,function(s){var o=a;if(!o){if(i&&i.length&&(s=Jd(s,i)),s==null)return;o=s[e]}return o==null?o:o.apply(s,t)})});function tu(r,e){return Or(r,Hd(e))}function P5(r,e){return Pi(r,Na(e))}function bP(r,e,t){var i=-1/0,a=-1/0,s,o;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=wt(r)?r:Ii(r);for(var l=0,p=r.length;l<p;l++)s=r[l],s!=null&&s>i&&(i=s)}else e=Ot(e,t),Pn(r,function(y,h,m){o=e(y,h,m),(o>a||o===-1/0&&i===-1/0)&&(i=y,a=o)});return i}function A5(r,e,t){var i=1/0,a=1/0,s,o;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=wt(r)?r:Ii(r);for(var l=0,p=r.length;l<p;l++)s=r[l],s!=null&&s<i&&(i=s)}else e=Ot(e,t),Pn(r,function(y,h,m){o=e(y,h,m),(o<a||o===1/0&&i===1/0)&&(i=y,a=o)});return i}var O5=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function RP(r){return r?Pr(r)?Sa.call(r):Vd(r)?r.match(O5):wt(r)?Or(r,Wd):Ii(r):[]}function vP(r,e,t){if(e==null||t)return wt(r)||(r=Ii(r)),r[zd(r.length-1)];var i=RP(r),a=At(i);e=Math.max(Math.min(e,a),0);for(var s=a-1,o=0;o<e;o++){var l=zd(o,s),p=i[o];i[o]=i[l],i[l]=p}return i.slice(0,e)}function S5(r){return vP(r,1/0)}function C5(r,e,t){var i=0;return e=Ot(e,t),tu(Or(r,function(a,s,o){return{value:a,index:i++,criteria:e(a,s,o)}}).sort(function(a,s){var o=a.criteria,l=s.criteria;if(o!==l){if(o>l||o===void 0)return 1;if(o<l||l===void 0)return-1}return a.index-s.index}),"value")}function Do(r,e){return function(t,i,a){var s=e?[[],[]]:{};return i=Ot(i,a),Pn(t,function(o,l){var p=i(o,l,t);r(s,o,p)}),s}}const B5=Do(function(r,e,t){Yn(r,t)?r[t].push(e):r[t]=[e]}),w5=Do(function(r,e,t){r[t]=e}),_5=Do(function(r,e,t){Yn(r,t)?r[t]++:r[t]=1}),N5=Do(function(r,e,t){r[t?0:1].push(e)},!0);function M5(r){return r==null?0:wt(r)?r.length:et(r).length}function V5(r,e,t){return e in t}const gP=Pt(function(r,e){var t={},i=e[0];if(r==null)return t;Et(i)?(e.length>1&&(i=Ma(i,e[1])),e=wa(r)):(i=V5,e=Ar(e,!1,!1),r=Object(r));for(var a=0,s=e.length;a<s;a++){var o=e[a],l=r[o];i(l,o,r)&&(t[o]=l)}return t}),L5=Pt(function(r,e){var t=e[0],i;return Et(t)?(t=Kd(t),e.length>1&&(i=e[1])):(e=Or(Ar(e,!1,!1),String),t=function(a,s){return!An(e,s)}),gP(r,t,i)});function IP(r,e,t){return Sa.call(r,0,Math.max(0,r.length-(e==null||t?1:e)))}function nu(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[0]:IP(r,r.length-e)}function Po(r,e,t){return Sa.call(r,e==null||t?1:e)}function G5(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[r.length-1]:Po(r,Math.max(0,r.length-e))}function $5(r){return Pi(r,Boolean)}function F5(r,e){return Ar(r,e,!1)}const DP=Pt(function(r,e){return e=Ar(e,!0,!0),Pi(r,function(t){return!An(e,t)})}),U5=Pt(function(r,e){return DP(r,e)});function ru(r,e,t,i){CD(e)||(i=t,t=e,e=!1),t!=null&&(t=Ot(t,i));for(var a=[],s=[],o=0,l=At(r);o<l;o++){var p=r[o],y=t?t(p,o,r):p;e&&!t?((!o||s!==y)&&a.push(p),s=y):t?An(s,y)||(s.push(y),a.push(p)):An(a,p)||a.push(p)}return a}const x5=Pt(function(r){return ru(Ar(r,!0,!0))});function j5(r){for(var e=[],t=arguments.length,i=0,a=At(r);i<a;i++){var s=r[i];if(!An(e,s)){var o;for(o=1;o<t&&An(arguments[o],s);o++);o===t&&e.push(s)}}return e}function iu(r){for(var e=r&&bP(r,At).length||0,t=Array(e),i=0;i<e;i++)t[i]=tu(r,i);return t}const k5=Pt(iu);function q5(r,e){for(var t={},i=0,a=At(r);i<a;i++)e?t[r[i]]=e[i]:t[r[i][0]]=r[i][1];return t}function J5(r,e,t){e==null&&(e=r||0,r=0),t||(t=e<r?-1:1);for(var i=Math.max(Math.ceil((e-r)/t),0),a=Array(i),s=0;s<i;s++,r+=t)a[s]=r;return a}function W5(r,e){if(e==null||e<1)return[];for(var t=[],i=0,a=r.length;i<a;)t.push(Sa.call(r,i,i+=e));return t}function au(r,e){return r._chain?se(e).chain():e}function PP(r){return Pn(kd(r),function(e){var t=se[e]=r[e];se.prototype[e]=function(){var i=[this._wrapped];return Tk.apply(i,arguments),au(this,t.apply(se,i))}}),se}Pn(["pop","push","reverse","shift","sort","splice","unshift"],function(r){var e=Ro[r];se.prototype[r]=function(){var t=this._wrapped;return t!=null&&(e.apply(t,arguments),(r==="shift"||r==="splice")&&t.length===0&&delete t[0]),au(this,t)}}),Pn(["concat","join","slice"],function(r){var e=Ro[r];se.prototype[r]=function(){var t=this._wrapped;return t!=null&&(t=e.apply(t,arguments)),au(this,t)}});var AP=PP(Object.freeze(Object.defineProperty({__proto__:null,VERSION:bD,after:b5,all:TP,allKeys:wa,any:EP,assign:Io,before:lP,bind:sP,bindAll:p5,chain:u5,chunk:W5,clone:Hk,collect:Or,compact:$5,compose:E5,constant:GD,contains:An,countBy:_5,create:Wk,debounce:m5,default:se,defaults:KD,defer:h5,delay:oP,detect:Qd,difference:DP,drop:Po,each:Pn,escape:Qk,every:TP,extend:ZD,extendOwn:Io,filter:Pi,find:Qd,findIndex:Xd,findKey:cP,findLastIndex:uP,findWhere:g5,first:nu,flatten:F5,foldl:eu,foldr:mP,forEach:Pn,functions:kd,get:eP,groupBy:B5,has:zk,head:nu,identity:Wd,include:An,includes:An,indexBy:w5,indexOf:hP,initial:IP,inject:eu,intersection:j5,invert:zD,invoke:D5,isArguments:$d,isArray:Pr,isArrayBuffer:_D,isBoolean:CD,isDataView:vo,isDate:Ak,isElement:Pk,isEmpty:Ba,isEqual:Gk,isError:Sk,isFinite:_k,isFunction:Et,isMap:Uk,isMatch:jD,isNaN:LD,isNull:Dk,isNumber:BD,isObject:Hn,isRegExp:Ok,isSet:jk,isString:Vd,isSymbol:wD,isTypedArray:UD,isUndefined:SD,isWeakMap:xk,isWeakSet:kk,iteratee:Yd,keys:et,last:G5,lastIndexOf:v5,map:Or,mapObject:Zk,matcher:Na,matches:Na,max:bP,memoize:y5,methods:kd,min:A5,mixin:PP,negate:Kd,noop:nP,now:Va,object:q5,omit:L5,once:R5,pairs:qk,partial:Di,partition:N5,pick:gP,pluck:tu,property:Hd,propertyOf:Kk,random:zd,range:J5,reduce:eu,reduceRight:mP,reject:I5,rest:Po,restArguments:Pt,result:l5,sample:vP,select:Pi,shuffle:S5,size:M5,some:EP,sortBy:C5,sortedIndex:pP,tail:Po,take:nu,tap:Yk,template:o5,templateSettings:n5,throttle:f5,times:Xk,toArray:RP,toPath:QD,transpose:iu,unescape:t5,union:x5,uniq:ru,unique:ru,uniqueId:d5,unzip:iu,values:Ii,where:P5,without:U5,wrap:T5,zip:k5},Symbol.toStringTag,{value:"Module"})));AP._=AP;function Ao(r){return r.charAt(0).toUpperCase()+r.slice(1)}function OP(r){return r.charAt(0).toLowerCase()+r.slice(1)}function SP(r,e){if(r.type!==n.Property||e.type!==n.Property)throw new Error(`Expected property entities for comparison. But got ${r.type} and ${e.type}.`);return r===e||r.id===e.id?!0:r.name!==e.name||r.static!==e.static||r.abstract!==e.abstract?!1:Ut(r.dataType,e.dataType).compatible}function CP(r,e){if(r.type!==n.CustomEntity||e.type!==n.CustomEntity)throw new Error(`Expected custom entities for comparison. But got ${r.type} and ${e.type}.`);if(r===e||r.id===e.id)return!0;if(r.properties.length!==e.properties.length)return!1;let t=[...e.properties];const i=[];for(let a=0;a<r.properties.length;a++){const s=r.properties[a];t.find(l=>{const p=SP(s,l);return p&&(t=t.filter(y=>y.id!==l.id)),p})||i.push(s)}return!(i.length>0)}var Ft=(r=>(r.BothUnconstrained="both-unconstrained",r.AConstraintBUnconstrained="a-constraint-b-unconstrained",r.BConstraintAUnconstrained="b-constraint-a-unconstrained",r.Same="same",r.AIsListBIsNot="a-is-list-b-is-not",r.BIsListAIsNot="b-is-list-a-is-not",r.AIsNullableBIsNot="a-is-nullable-b-is-not",r.BIsNullableAIsNot="b-is-nullable-a-is-not",r.AIsTemplateBIsNot="a-is-template-b-is-not",r.BIsTemplateAIsNot="b-is-template-a-is-not",r.BothUntyped="both-untyped",r.AIsUntypedBIsNot="a-is-untyped-b-is-not",r.BIsUntypedAIsNot="b-is-untyped-a-is-not",r.TypeEntityMismatch="type-entity-mismatch",r.SameCustomEntities="same-custom-entities",r.CompatibleCustomEntities="compatible-custom-entities",r.IncompatibleCustomEntities="incompatible-custom-entities",r.SamePrimitiveEntities="same-primitive-entities",r.IncompatiblePrimitiveEntities="incompatible-primitive-entities",r.SameBuiltInBaseEntities="same-built-in-base-entities",r.IncompatibleBuiltInBaseEntities="incompatible-built-in-base-entities",r.CheckUnknown="check-unknown",r))(Ft||{});function Ut(r,e){var t,i,a,s,o,l,p,y,h,m,R;if(r&&r.type!==n.DataType||e&&e.type!==n.DataType)throw new Error(`Expected data-type entities for comparison. But got ${r==null?void 0:r.type} and ${e==null?void 0:e.type}.`);if(r===null&&e===null)return{compatible:!0,type:"both-unconstrained"};if(r===null)return{compatible:!0,type:"a-constraint-b-unconstrained"};if(e===null)return{compatible:!0,type:"b-constraint-a-unconstrained"};if(r===e)return{compatible:!0,type:"same"};if(r.id===e.id)return{compatible:!0,type:"same"};if(r.isList!==e.isList)return{compatible:!1,type:r.isList?"a-is-list-b-is-not":"b-is-list-a-is-not"};if(r.isNullable!==e.isNullable)return{compatible:!1,type:r.isNullable?"a-is-nullable-b-is-not":"b-is-nullable-a-is-not"};if(r.asType!==e.asType)return{compatible:!1,type:r.asType?"a-is-template-b-is-not":"b-is-template-a-is-not"};if(!r.entity&&e.entity)return{compatible:!0,type:"a-is-untyped-b-is-not"};if(r.entity&&!e.entity)return{compatible:!0,type:"b-is-untyped-a-is-not"};if(!r.entity&&!e.entity)return{compatible:!0,type:"both-untyped"};if(((t=r.entity)==null?void 0:t.type)!==((i=e.entity)==null?void 0:i.type))return{compatible:!1,type:"type-entity-mismatch"};if(((a=r.entity)==null?void 0:a.type)===n.CustomEntity){if(((s=r.entity)==null?void 0:s.id)===((o=e.entity)==null?void 0:o.id))return{compatible:!0,type:"same-custom-entities"};const g=CP(r.entity,e.entity);return{compatible:g,type:g?"compatible-custom-entities":"incompatible-custom-entities"}}return((l=r.entity)==null?void 0:l.type)===n.PrimitiveEntity?((p=r.entity)==null?void 0:p.id)===((y=e.entity)==null?void 0:y.id)?{compatible:!0,type:"same-primitive-entities"}:{compatible:!1,type:"incompatible-primitive-entities"}:((h=r.entity)==null?void 0:h.type)===n.BuiltInBaseEntity?((m=r.entity)==null?void 0:m.id)===((R=e.entity)==null?void 0:R.id)?{compatible:!0,type:"same-built-in-base-entities"}:{compatible:!1,type:"incompatible-built-in-base-entities"}:{compatible:!1,type:"check-unknown"}}function H5(r){const e=r.project.builtInBaseEntities.find(a=>a.id===L.EXECUTION),t={id:r.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,defaultValue:null,parent:null},i=v(t,r.project);return i.inferred=!0,i.sync(t),i.setParent(r),i.entity=e,i}function BP(r){return r.dataType?r.dataType:null}function su(r){var t;const e=(t=r.declaration)==null?void 0:t.getDataType();return e&&e.isResolved()?e:r.readsValue?on(r.readsValue):null}function ou(r){return r.dataType&&!r.dataType.inferred&&r.dataType.isResolved()?r.dataType:r.readsValue?on(r.readsValue):null}function wP(r){return on(r.declaration)}function _P(r){return r.dataType&&!r.dataType.inferred?r.dataType:(r.dataType&&r.dataType.inferred,r.inferDataTypeAndSyncInstancesInputsAndOutputs(),r.dataType)}function lu(r){var e;return((e=r.declaration)==null?void 0:e.dataType)||null}function NP(r){return(r==null?void 0:r.dataType)||null}function MP(r){return(r==null?void 0:r.dataType)||null}function on(r){switch(r.type){case n.VariableDeclaration:return _P(r);case n.ArgumentDeclaration:return BP(r);case n.ReturnDeclaration:return ou(r);case n.VariableInstance:return wP(r);case n.InputMap:return su(r);case n.OutputMap:return lu(r);case n.Property:return NP(r);case n.ValueDescriptor:return MP(r);default:throw new Error(`Cannot infer data type from entity of type ${r.type}.`)}}function Oo(r){switch(r.type){case n.ArgumentDeclaration:return r.getDataType();case n.InputMap:return r.getDataType();case n.VariableDeclaration:return r.getDataType();case n.VariableInstance:return r.getDataType();case n.OutputMap:return r.getDataType();case n.ReturnDeclaration:return r.getDataType();case n.Property:return r.getDataType();case n.ValueDescriptor:return r.getDataType();default:return null}}function N(r){if(r){let e=null;return typeof r=="string"?e=r:r.entityId?e=r.entityId:r.type!==n.GenericReference&&(e=r.id),e}return null}function Sr(r){return r.declaration||r}function Y5(r){return r.type===n.VariableDeclaration?r.parent===r.project?"global-declaration":"local-declaration":r.declaration.parent===r.project?"global-instance":"local-instance"}function cu(r,e){const t=[];if(r.type===n.Project)t.push(...r.variableDeclarations);else{const a=Rt(Ne(r)).filter(s=>s.type===n.VariableDeclaration);t.push(...a),r.parent&&(ut.includes(r.parent.type)||r.parent.type===n.Project)&&t.push(...cu(r.parent))}return t}function z5(r){return r.replace(/(?:^\w|[A-Z]|\b\w)/g,function(e,t){return t===0?e.toLowerCase():e.toUpperCase()}).replace(/\s+/g,"")}function Z5(r){return r.split(/\s+/).map(i=>i[0].toUpperCase()+i.slice(1).toLowerCase()).join("")}function VP(r){var e;return(e=r.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:e.map(t=>t.toLowerCase()).join("-")}function So(r){return VP(r).toLowerCase()}function du(r){if(!r)return"Any data type";if(!r.entity)return r.isList?"List of an unknown data type":"Unknown data type";if(r.entity.type===n.PrimitiveEntity){const e=r.entity.name===P.String?"Text":r.entity.name;return r.isList?`List of ${e}s`:`${e.slice(0,1).toUpperCase()}${e.slice(1)}`}else if(r.entity.type===n.CustomEntity){const e=$P(r.entity);return r.isList?`List of ${e} entities`:e.slice(0,1).toUpperCase()+e.slice(1)}else if(r.entity.type===n.BuiltInBaseEntity){const e=GP(r.entity);return r.isList?`List of ${e} entities`:e.slice(0,1).toUpperCase()+e.slice(1)}else return r.isList?`List of ${r.entity.name} entities`:`${r.entity.name.slice(0,1).toUpperCase()+r.entity.name.slice(1)} entity`}function K5(r){if(!r)return"Any data type";const e=r.getDataType();return du(e)}function Co(r){switch(r.declaration.id){case $e.Equal:return"is equal to";case $e.NotEqual:return"is not equal to";case $e.MoreThan:return"is greater than";case $e.MoreThanOrEqual:return"is greater than or equal to";case $e.LessThan:return"is less than";case $e.LessThanOrEqual:return"is less than or equal to";case $e.And:return"and";case $e.Or:return"or";case Mt.Empty:return"is empty";case Mt.NotEmpty:return"is not empty"}}function LP(r){return r.includes(L.HTTP_ENDPOINT)?"HTTP endpoint":r.includes(L.PERSISTED_ENTITY)?"Persisted entity":r.includes(L.CRON_JOB)?"Scheduled execution":r.includes(L.RELATIONAL_DATABASE)?"Relational database":"Entity"}function GP(r){switch(r.name){case L.HTTP_ENDPOINT:return"HTTP endpoint";case L.PERSISTED_ENTITY:return"Persisted entity";case L.CRON_JOB:return"Scheduled execution";case L.RELATIONAL_DATABASE:return"Relational database"}return"Entity"}function $P(r){const e=DA(r);if(!e){const t=gA(r);return t.includes(L.HTTP_ENDPOINT)?"HTTP endpoint":t.includes(L.PERSISTED_ENTITY)?"Persisted entity":t.includes(L.CRON_JOB)?"Scheduled execution":t.includes(L.RELATIONAL_DATABASE)?"Relational database":C(r,r.project)+" entity"}return C(e,r.project)+" entity"}function FP(r){let e="Find ";return r.outputsDeclarations.forEach((t,i)=>{const a=Oo(t),s=OP(a&&a.entity?C(a.entity,r.project):"unstructured data");i===0?e+=`${s} `:i===r.outputsDeclarations.length-1?e+=`and ${s} `:e+=`, ${s} `}),e}function UP(r){switch(r.name){case P.String:return"Text";case P.Number:return"Number";case P.Boolean:return"Boolean";case P.JSON:return"Data structure";case P.UUID:return"Unique identifier";case P.Date:return"Date";case P.EntityTemplate:return"Entity as template";case P.Enum:return"Enumeration";case P.File:return"File";case P.Null:return"Empty";case P.ActionDescriptor:return"Action descriptor";default:return r.name}}function xP(r){switch(r.id){case $.List:return"Loop over list items";case $.ManualFlow:return"Manual flow control loop";case $.ObjectKeys:return"Loop over object keys";case $.ObjectValues:return"Loop over object values";case $.Counted:return"Loop given number of times";case $.String:return"Loop over text characters";case me.Addition:return"Sum numbers";case me.Subtraction:return"Subtract numbers";case me.Multiplication:return"Multiply numbers";case me.Division:return"Divide numbers";case me.Remainder:return"Get remainder of numbers";case me.Exponentiation:return"Get exponent of numbers";case K.AddIndex:return"Add at index position";case K.DeleteFirst:return"Delete first character";case K.DeleteLast:return"Delete last character";case K.DeleteIndex:return"Delete at index position";case K.Join:return"Join texts";case K.ReplaceAllMatches:return"Replace all matches";case K.ReplaceFirst:return"Replace first match";case K.ReplaceLast:return"Replace last match";case K.Split:return"Split text";case K.ReplaceIndex:return"Replace at index position";case K.ReplaceSingleMatch:return"Replace single match";case K.GetFirst:return"Get first character";case K.GetLast:return"Get last character";case K.GetIndex:return"Get at index position";case K.Append:return"Add at the end";case K.Prepend:return"Add at the start";case Me.Wait:return"Wait";case Me.Parallel:return"Run in parallel";case Me.Sequential:return"Run in sequence";case nt.HttpRequest:return"HTTP request";case le.CreateNewInstance:return"Create new copy of entity";case W.AddIndex:return"Add item at index position";case W.DeleteFirst:return"Delete first item";case W.DeleteLast:return"Delete last item";case W.DeleteIndex:return"Delete item at index position";case W.Join:return"Join lists";case W.ReplaceAllMatches:return"Replace all matches";case W.ReplaceFirst:return"Replace first match";case W.ReplaceLast:return"Replace last match";case W.Split:return"Split list";case W.ReplaceIndex:return"Replace at index position";case W.ReplaceSingleMatch:return"Replace single match";case W.GetFirst:return"Get first item";case W.GetLast:return"Get last item";case W.GetIndex:return"Get item at index position";case W.Append:return"Add item at the end";case W.Prepend:return"Add item at the start";case dn.PROJECT_PUBLICATION_COMPLETED:return"Project publication completed";default:return(r.name.slice(0,1).toUpperCase()+r.name.slice(1)).replaceAll("-"," ")}}function C(r,e){var t;if(n.FunctionDeclaration===r.type){const i=r.name;if(Object.values(Ct).includes(i))switch(i){case Ct.AbortExecution:return"Abort execution";case Ct.DeletePersistedEntity:return"Delete persisted entity";case Ct.SoftDeletePersistedEntity:return"Soft delete persisted entity";default:return Ao(r.type).replaceAll("-"," ")}return i}if(n.BuiltInBaseEntity===r.type)return LP([r.name]);if(ku.includes(r.type)&&r.type!==n.ActionDescriptor)return r.name;switch(r.type){case n.Search:return FP(r);case n.Operation:case n.InternalCall:case n.Loop:const i=Nt(r.declaration,e);return C(i,e);case n.ActionDescriptor:return xP(r);case n.BreakStatement:const a=Nt(r.parent,e);return`Stop loop ${C(a,e)}`;case n.ContinueStatement:const s=Nt(r.parent,e);return`Execute next iteration of ${C(s,e)}`;case n.FunctionCall:return Nt(r.declaration,e).name;case n.Condition:{const l=r;if((t=r.inputs)!=null&&t.length){const p=C(l.inputs[0],l.project);if(l.inputs[1]){const y=l.inputs[1].declaration.name;return`If ${p} ${Co(l)} ${y}`}return`If ${p} ${Co(l)}`}else return`If ${Co(l)}`}case n.ReturnStatement:{const l=Nt(r.parent,e);return`Output of ${C(l,e)}`}case n.InputMap:if(r.declaration){const l=Nt(r.declaration,e);return C(l,e)||""}else return r.name||"";case n.VariableInstance:{const l=Nt(r.declaration,e);return C(l,e)||""}case n.OutputMap:if(r.declaration){const l=Nt(r.declaration,e);return(l==null?void 0:l.name)||""}else return"";case n.PrimitiveEntity:case n.PrimitiveValue:return UP(r);default:return Ao(r.type).replaceAll("-"," ")}}function Bo(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=e.entities.filter(a=>a.name===r.name);return i.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique in the project. Entity with id "${i[0].id}" has the same name.
14
14
  Please provide a unique 'name' string.`,severity:T.Error,code:S.NameNotUniqueInScope,issue:null})),t}function uu(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=r.parent?N(r.parent):null;let a=e;i&&(a=e.get(i));const s=[];a.type===n.CustomEntity?s.push(...a.methods.map(l=>l)):a.type===n.Project?s.push(...a.functions.map(l=>l)):a.type===n.Loop?a.body&&s.push(a.body):a.type===n.InstalledProject&&s.push(...a.functions.map(l=>l));const o=s.filter(l=>l.name===r.name);return o.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique in ${a.type===n.Project?"the globally declared project scope":"its parent entity"}. Entity with id "${o[0].id}" has the same name.
15
15
  Please provide a unique 'name' string.`,severity:T.Error,code:S.NameNotUniqueInScope,issue:null})),t}function pu(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=r.parent&&Nt(r.parent,e)||e;if(!i)t.push(new E({id:`${r.id}--parent-reference--${f.ReferencedEntityNotFound}`,message:`The entity with id '${r.parent}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,severity:T.Error,code:f.ReferencedEntityNotFound,issue:null}));else{const s=cu(i).filter(o=>o.name===r.name);s.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique in its scope or higher scopes. Entity with id "${s[0].id}" has the same name.
16
16
  Please provide a unique 'name' string.`,severity:T.Error,code:S.NameNotUniqueInScope,issue:null}))}return t}function yu(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=N(r.parent);if(!i)t.push(new E({id:`${r.id}--parent-reference--${f.InvalidReferenceObjectStructure}`,message:`Reference object at 'parent' property for entity with id "${r.id}" and type "${r.type}" is not a valid reference. A reference needs to be a 'id' string of an existing entity in the project.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null}));else{const a=e.get(i);if(!a)t.push(new E({id:`${r.id}--parent-reference--${f.ReferencedEntityNotFound}`,message:`The entity with id '${i}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,severity:T.Error,code:f.ReferencedEntityNotFound,issue:null}));else{const o=a.properties.filter(l=>l.name===r.name);o.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique among all properties in the parent entity. Entity with id "${o[0].id}" has the same name.
17
17
  Please provide a unique 'name' string.`,severity:T.Error,code:S.NameNotUniqueInScope,issue:null}))}}return t}function hu(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=N(r.parent);if(!i)t.push(new E({id:`${r.id}--parent-reference--${f.InvalidReferenceObjectStructure}`,message:`Reference object at 'parent' property for entity with id "${r.id}" and type "${r.type}" is not a valid reference. A reference needs to be a 'id' string of an existing entity in the project.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null}));else{const a=e.get(i);if(!a)t.push(new E({id:`${r.id}--parent-reference--${f.ReferencedEntityNotFound}`,message:`The entity with id '${i}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,severity:T.Error,code:f.ReferencedEntityNotFound,issue:null}));else{const o=Nu(a).filter(l=>l.name===r.name);o.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique among all inputs declared in the parent entity. Entity with id "${o[0].id}" has the same name.
18
18
  Please provide a unique 'name' string.`,severity:T.Error,code:S.NameNotUniqueInScope,issue:null}))}}return t}function fu(r,e){const t=[];r.name||t.push(new E({id:`${r.id}--${S.EmptyName}`,message:`Entity with id "${r.id}" and type "${r.type}" has an empty name. Please provide a 'name' string.`,severity:T.Error,code:S.EmptyName,issue:null}));const i=N(r.parent);if(!i)t.push(new E({id:`${r.id}--parent-reference--${f.InvalidReferenceObjectStructure}`,message:`Reference object at 'parent' property for entity with id "${r.id}" and type "${r.type}" is not a valid reference. A reference needs to be a 'id' string of an existing entity in the project.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null}));else{const a=e.get(i);if(!a)t.push(new E({id:`${r.id}--parent-reference--${f.ReferencedEntityNotFound}`,message:`The entity with id '${i}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,severity:T.Error,code:f.ReferencedEntityNotFound,issue:null}));else{const o=EA(a).filter(l=>l.name===r.name);o.length&&t.push(new E({id:`${r.id}--${S.NameNotUniqueInScope}`,message:`Entity with id "${r.id}" and type "${r.type}" has a name "${r.name}" that is not unique among all outputs declared in the parent entity. Entity with id "${o[0].id}" has the same name.
19
19
  Please provide a unique 'name' string.`,severity:T.Error,code:S.NameNotUniqueInScope,issue:null}))}}return t}function X5(r,e){switch(r.type){case n.CustomEntity:return Bo(r,e);case n.FunctionDeclaration:return uu(r,e);case n.VariableDeclaration:return pu(r,e);case n.Property:return yu(r,e);case n.ArgumentDeclaration:return hu(r,e);case n.ReturnDeclaration:return fu(r,e);default:return[]}}function Ze(r,e,t){const a=`${So(r)}-${e}-id`;return t.instances[a]?_.UUID.uuid():a}function mu(r,e){let t="",i=null;if(r.parent){const s=e.get(r.parent);s&&(i=s)}let a="";return i&&(a=`${So(C(i,e))}-`),t=`${a}${So(C(r,e))}-id`,e.instances[t]?_.UUID.uuid():t}function Q5(r){var o;const e=v9(),t=r.toJSON();e.safeParse(t).success;const a=e2(r);(o=r.dataType)==null||o.validate();const s=[...a];if(r.id==="80c86e1b-caca-4ba5-9b1f-38f72d10e4a3"){const l=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(l.error)}return s}function e2(r){const e=[];if(!r.implements)return e;const t=r.implements;if(!t.abstract){const a=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(t,r.project)}" with id "${t.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});e.push(a.error)}if(r.static&&!t.static){const a=Y({id:`${r.id}--${M.NonStaticPropertyImplementsStatic}`,message:`Static property "${C(r,r.project)}" with id "${r.id}" implements a non-static property "${C(t,r.project)}" with id "${t.id}".`,issue:null,severity:T.Error,code:M.NonStaticPropertyImplementsStatic,entity:r});e.push(a.error)}if(!r.static&&t.static){const a=Y({id:`${r.id}--${M.StaticPropertyImplementsNonStatic}`,message:`Non-static property "${C(r,r.project)}" with id "${r.id}" implements a static property "${C(t,r.project)}" with id "${t.id}".`,issue:null,severity:T.Error,code:M.StaticPropertyImplementsNonStatic,entity:r});e.push(a.error)}if(!Ut(r.dataType,t.dataType)){const a=Y({id:`${r.id}--${M.PropertyImplementsIncompatibleType}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a property "${C(t,r.project)}" with id "${t.id}" that has an incompatible data type.`,issue:null,severity:T.Error,code:M.PropertyImplementsIncompatibleType,entity:r});e.push(a.error)}return ie(r.errors,e)}function t2(r,e){const t=[];if(r.parent){const a=e.get(r.parent);if(!a)t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}));else{const s=er(a);if(s){const o=a!==s?`The entity of type '${r.type}' with id '${r.id}' have 'parent' with id '${r.parent}' because the entity belongs to a built-in '${s.type}' entity with id '${s.id}' (${C(s,a.project)}) higher up in the tree.`:`The entity of type '${r.type}' with id '${r.id}' have 'parent' with id '${r.parent}' because it is a built-in entity of type ${s.type}.`;t.push(new E({id:`${r.id}--${f.InvalidBuiltInEntityReference}`,code:f.InvalidBuiltInEntityReference,severity:T.Error,message:o,issue:null}))}else if(![n.CustomEntity].includes(a.type))t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type 'custom-entity'.`,issue:null}));else{const l=Qn(a).filter(p=>!p.interactive);if(l.length){let p=l.length>1?`The entity of type '${r.type}' with id '${r.id}' can't be added to the 'parent' entity with id '${a.id}' because it extends or implements multiple '${n.BuiltInBaseEntity}' entities that are non-interactive ("${U(l.map(y=>C(y,y.project)),'", "','" and "')}").`:`The entity of type '${r.type}' with id '${r.id}' can't be added to the 'parent' entity with id '${a.id}' because it extends or implements a '${n.BuiltInBaseEntity}' entity that is non-interactive ("${C(l[0],l[0].project)}").`;p+=`
20
- ${Kn}`,t.push(new E({id:`${r.id}--${f.NonInteractiveEntityReferenced}`,code:f.NonInteractiveEntityReferenced,severity:T.Error,message:p,issue:null}))}else if(r.implements){const p=e.get(r.implements);if(r.id===r.implements)return t.push(new E({id:`${r.id}--${r.implements}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'implements'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null})),t;if(!p)t.push(new E({id:`${r.id}--${r.implements}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.implements}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}));else{const y=a.properties.find(h=>{var m;return((m=h.implements)==null?void 0:m.id)===r.implements});y?t.push(new E({id:`${r.id}--${S.PropertyOverwrite}`,code:S.PropertyOverwrite,severity:T.Error,message:`The property with id "${r.id}" is trying to implement the property with id "${r.implements}", but the parent entity already has a property with id '${y.id}' that implements the same base property.`,issue:null})):[n.Property].includes(p.type)?p.abstract||t.push(new E({id:`${r.id}--${r.implements}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an abstract entity.`,issue:null})):t.push(new E({id:`${r.id}--${r.implements}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an entity of type 'property'.`,issue:null}))}}}}}const i=He(r,{},e);return t.push(...i.errors),t}const Ee=class Ee{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"private");d(this,"abstract");d(this,"index");d(this,"static");d(this,"required");d(this,"type",n.Property);d(this,"hidden",!1);d(this,"dataType",null);d(this,"implements",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.private=e.private,this.abstract=e.abstract,this.index=e.index,this.static=e.static,this.required=e.required||!1,this.hidden=e.hidden||!1}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;if(e.implements){const p=N(e.implements);s=t.get(p)}const o={id:e.id,version:1,name:e.name,type:n.Property,index:a.properties.length,private:e.private,abstract:e.abstract,static:e.static,required:e.required||!1,hidden:!1,description:e.description,implements:s,dataType:null,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=t2(i,t),o=yu(i,t);return a.push(...s,...o,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
20
+ ${Kn}`,t.push(new E({id:`${r.id}--${f.NonInteractiveEntityReferenced}`,code:f.NonInteractiveEntityReferenced,severity:T.Error,message:p,issue:null}))}else if(r.implements){const p=e.get(r.implements);if(r.id===r.implements)return t.push(new E({id:`${r.id}--${r.implements}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'implements'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null})),t;if(!p)t.push(new E({id:`${r.id}--${r.implements}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.implements}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}));else{const y=a.properties.find(h=>{var m;return((m=h.implements)==null?void 0:m.id)===r.implements});y?t.push(new E({id:`${r.id}--${S.PropertyOverwrite}`,code:S.PropertyOverwrite,severity:T.Error,message:`The property with id "${r.id}" is trying to implement the property with id "${r.implements}", but the parent entity already has a property with id '${y.id}' that implements the same base property.`,issue:null})):[n.Property].includes(p.type)?p.abstract||t.push(new E({id:`${r.id}--${r.implements}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an abstract entity.`,issue:null})):t.push(new E({id:`${r.id}--${r.implements}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an entity of type 'property'.`,issue:null}))}}}}}const i=He(r,{},e);return t.push(...i.errors),t}const Ee=class Ee{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"private");d(this,"abstract");d(this,"index");d(this,"static");d(this,"required");d(this,"type",n.Property);d(this,"hidden",!1);d(this,"dataType",null);d(this,"implements",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.private=e.private,this.abstract=e.abstract,this.index=e.index,this.static=e.static,this.required=e.required||!1,this.hidden=e.hidden||!1}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;if(e.implements){const p=N(e.implements);s=t.get(p)}const o={id:e.id,version:1,name:e.name,type:n.Property,index:a.properties.length,private:e.private,abstract:e.abstract,static:e.static,required:e.required||!1,hidden:!1,description:e.description,implements:s,dataType:null,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=t2(i,t),o=yu(i,t);return a.push(...s,...o,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
21
21
  This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),(e.readsValue||e.writesValue)&&t.push(new E({id:`${this.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' is not a value reading or writing entity.
22
22
  ${Mo}`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent.addProperty(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.dataType){const e=v(this.initialData.dataType,this.project);e.setParent(this),e.initChildren(),this.dataType=e}if(this.initialData.implements){const e=v(this.initialData.implements,this.project);this.implements=e}return this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.abstract=e.abstract||this.abstract,this.private=e.private||this.private,this.index=e.index||(e.index!==0?this.index:0),this.static=e.static||this.static,this.required=e.required||this.required,this.hidden=e.hidden||this.hidden,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.dataType){const{affected:s,removed:o}=this.dataType.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return e||this.parent.type===n.CustomEntity&&(this.parent.removeProperty(this),i.push(this.parent)),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.dataType){const{affected:i}=this.dataType.restore({seenEntities:e});t.push(...i)}return this.parent.type===n.CustomEntity&&(this.parent.addProperty(this),t.push(this.parent)),{affected:t,self:this}}toFlat(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.dataType)==null?void 0:i.toFlat(e))||[]])}toFlatIds(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.dataType)==null?void 0:i.toFlatIds(e))||[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,private:this.private,required:this.required,static:this.static,abstract:this.abstract,hidden:this.hidden,dataType:((e=this.dataType)==null?void 0:e.toJSON())||null,implements:((t=this.implements)==null?void 0:t.toJSON())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,index:this.index,private:this.private,required:this.required,abstract:this.abstract,static:this.static,hidden:this.hidden,dataType:((e=this.dataType)==null?void 0:e.toReference())||null,implements:((t=this.implements)==null?void 0:t.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i,a;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.dataType)==null?void 0:i.toFlatJSON(e))||[],...((a=this.implements)==null?void 0:a.toFlatJSON(e))||[]])}toGenerationTarget(){var e;return{id:this.id,name:this.name,description:this.description,type:this.type,private:this.private,required:this.required,abstract:this.abstract,static:this.static,implements:((e=this.implements)==null?void 0:e.id)||null,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.dataType)==null?void 0:i.toFlatGenerationTarget(e))||[]])}clearErrors(){var e;return this.errors=[],(e=this.dataType)==null||e.clearErrors(),this}validate(){return this.errors=Q5(this),this.errors.length,{success:!0,error:null,data:null}}getErrors(){var t;return[...this.errors,...((t=this.dataType)==null?void 0:t.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e;return((e=this.dataType)==null?void 0:e.defaultValue)||null}clone(e=null,t=null,i=!0){var m;const a=t||Ze(C(this,this.project),n.Property,this.project),s=a.split("-id"),o=s[s.length-1||0]||a;let l=e||this.parent;const p={hidden:!1,id:a,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,private:this.private,required:this.required,abstract:this.abstract,static:this.static,dataType:null,implements:null,parent:l},y=kt(p,this.project);i&&y.subscribe(),y.setParent(l);const h=((m=this.dataType)==null?void 0:m.clone(y,o+"-data-type-id",i))||null;return h&&y.setDataType(h),y}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}getDataType(){return this.dataType}};d(Ee,"MUTABLE_BASE_PROPERTIES",["name","description","private","abstract","static","required"]),d(Ee,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(Ee,"BASE_PROPERTIES",[...Ee.MUTABLE_BASE_PROPERTIES,...Ee.INMUTABLE_BASE_PROPERTIES]),d(Ee,"MUTABLE_META_PROPERTIES",[...Ee.MUTABLE_BASE_PROPERTIES,"index"]),d(Ee,"INMUTABLE_META_PROPERTIES",[...Ee.INMUTABLE_BASE_PROPERTIES]),d(Ee,"META_PROPERTIES",[...Ee.MUTABLE_META_PROPERTIES,...Ee.INMUTABLE_META_PROPERTIES]),d(Ee,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ee,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","implements"]),d(Ee,"UPSTREAM_PROPERTIES",[...Ee.MUTABLE_UPSTREAM_PROPERTIES,...Ee.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ee,"MUTABLE_DOWNSTREAM_PROPERTIES",["dataType"]),d(Ee,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ee,"DOWNSTREAM_PROPERTIES",[...Ee.MUTABLE_DOWNSTREAM_PROPERTIES,...Ee.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ee,"PROPERTIES",[...Ee.META_PROPERTIES,...Ee.UPSTREAM_PROPERTIES,...Ee.DOWNSTREAM_PROPERTIES]);let Cr=Ee;function n2(r){const e=$3(),t=r.toJSON();e.safeParse(t).success;const a=r2(r),s=i2(r),o=St(r);r.inputs.forEach(p=>p.validate()),o.forEach(p=>p.validate());const l=[...a,...s];if(r.id==="getCompanyByIdEndpointReachedEntityEvent"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});l.push(p.error)}return ie(r.errors,l)}function r2(r){const e=[];if(!r.calls.length){const t=Y({id:`${r.id}--${M.ScopeWithoutLogic}`,message:`Action "${C(r,r.project)}" with id "${r.id}" does not have any logic defined. So it doesn't do anything.`,issue:null,severity:T.Warning,code:M.ScopeWithoutLogic,entity:r});e.push(t.error)}return ie(r.errors,e)}function i2(r){const e=[];return r.implements,ie(r.errors,e)}const be=class be{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"collapsed");d(this,"private");d(this,"index",null);d(this,"type",n.FunctionDeclaration);d(this,"implements",null);d(this,"inputs",[]);d(this,"returnStatements",[]);d(this,"calls",[]);d(this,"parent");d(this,"detachedChildren",[]);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.private=e.private,this.collapsed=e.collapsed,this.x=e.x,this.y=e.y,this.index=e.index}static fromGenerationTarget(e,t){let i=t;if(e.parent){const l=N(e.parent);i=t.get(l)}let a=null;if(e.implements){const l=N(e.implements);a=t.get(l)}const s={id:e.id,version:1,name:e.name,type:n.FunctionDeclaration,index:i.type===n.CustomEntity?i.methods.length:null,description:e.description,collapsed:!1,private:!1,returnStatements:[],calls:[],inputs:[],implements:a,x:0,y:0,parent:i},o=v(s,t);return o.setParent(i),o.initChildren(),o}static validateGenerationTarget(e,t){var h;let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.Project,n.InstalledProject,n.CustomEntity,n.Loop],optional:!0},implements:{list:!1,types:[n.ActionDescriptor],optional:!0}},t);i=s.modifiedData;const o=uu(i,t),l=i.parent?t.get(i.parent):null;if(l&&l.type===n.CustomEntity){const m=l,g=Qn(m).filter(D=>!D.interactive);if(g.length){let D=g.length>1?`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${m.id}' because it extends or implements multiple '${n.BuiltInBaseEntity}' entities that are non-interactive ("${U(g.map(A=>C(A,A.project)),'", "','" and "')}").`:`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${m.id}' because it extends or implements a '${n.BuiltInBaseEntity}' entity that is non-interactive ("${C(g[0],g[0].project)}").`;D+=`
23
23
  ${Kn}`,a.push(new E({id:`${e.id}--${f.NonInteractiveEntityReferenced}`,code:f.NonInteractiveEntityReferenced,severity:T.Error,message:D,issue:null}))}else{const D=m.methods.find(F=>{var k;return((k=F.implements)==null?void 0:k.id)===i.implements});D&&a.push(new E({id:`${i.id}--${S.MethodOverwrite}`,code:S.MethodOverwrite,severity:T.Error,message:`The '${n.FunctionDeclaration}' with id "${i.id}" is trying to implement the '${n.ActionDescriptor}' with id "${i.implements}", but the parent custom-entity already has a ${n.FunctionDeclaration} with id '${D.id}' that implements the same base method.
@@ -26,52 +26,52 @@ ${n.ActionDescriptor} entities inside a ${n.CustomEntity} are considered abstrac
26
26
  If you want to modify the existing implementation, you can update the existing method instead, but it will have to match the same base ${n.ActionDescriptor} signature, otherwise the implementation will have a validation error.`,issue:null}));const A=i.implements;m.abstractMethods.find(F=>F.id===A)||a.push(new E({id:`${i.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`The '${n.FunctionDeclaration}' with id "${i.id}" is trying to implement the '${n.ActionDescriptor}' with id "${i.implements}", but the parent custom-entity with id "${m.id}" does not have a action descriptor (abstract method) with that id.
27
27
  A ${n.FunctionDeclaration} that has a parent of type '${n.CustomEntity}' is considered a method of that entity, and if it implements a action-descriptor, it needs to be one of the parent's action descriptors.
28
28
  If you want to implement a new method, you can create a new 'function-declaration' inside the parent custom-entity. But note that often custom-entities already come the boiler plate for all the methods they need from the base entity they implement, which are often auto-generated when the parent custom-entity is first created.
29
- If you want to modify the existing implementation, you can update the existing method instead, but it will have to match the same base ${n.ActionDescriptor} signature, otherwise the implementation will have a validation error.`,issue:null}))}}else if(l&&l.type===n.Loop){const m=l.body;m&&((h=m.implements)==null?void 0:h.id)===i.implements&&a.push(new E({id:`${i.id}--${S.MethodOverwrite}`,code:S.MethodOverwrite,severity:T.Error,message:`The '${n.FunctionDeclaration}' with id "${i.id}" is being added as the 'body' of the ${n.Loop} with id "${l.id}", but the loop already has a function-declaration body. A loop can only have one function-declaration body at a time. You can edit the existing body instead, but it will have to match the same base signature, otherwise the implementation will have a validation error.`,issue:null}))}const p=i.parent&&t.get(i.parent)||t.getBuiltIn(i.parent),y=p?er(p):null;return y&&a.push(new E({id:`${e.id}--${f.BuiltInEntityParent}`,code:f.BuiltInEntityParent,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', belongs to a built-in system entity "${C(y,t)}" with id '${y.id}', and therefore it cannot be created as it would affect a built in entity, which are inmutable.`,issue:null})),a.push(...s.errors,...o,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&(this.parent.type===n.Project?t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
29
+ If you want to modify the existing implementation, you can update the existing method instead, but it will have to match the same base ${n.ActionDescriptor} signature, otherwise the implementation will have a validation error.`,issue:null}))}}else if(l&&l.type===n.Loop){const m=l.body;m&&((h=m.implements)==null?void 0:h.id)===i.implements&&a.push(new E({id:`${i.id}--${S.MethodOverwrite}`,code:S.MethodOverwrite,severity:T.Error,message:`The '${n.FunctionDeclaration}' with id "${i.id}" is being added as the 'body' of the ${n.Loop} with id "${l.id}", but the loop already has a function-declaration body. A loop can only have one function-declaration body at a time. You can edit the existing body instead, but it will have to match the same base signature, otherwise the implementation will have a validation error.`,issue:null}))}const p=i.parent&&t.get(i.parent)||t.getBuiltIn(i.parent),y=p?er(p):null;return y&&a.push(new E({id:`${e.id}--${f.BuiltInEntityParent}`,code:f.BuiltInEntityParent,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', belongs to a built-in system entity "${C(y,t)}" with id '${y.id}', and therefore it cannot be created as it would affect a built in entity, which are inmutable.`,issue:null})),a.push(...s.errors,...o,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&(this.parent.type===n.Project?t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
30
30
  This is likely an incorrect strategy because this is a globally declared '${this.type}' entity which can only have the root project as its parent.`,issue:null})):t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
31
31
  This is likely an incorrect strategy because this function declaration is a method, since it belongs to a '${this.parent.type}' entity, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.
32
- Please consider that any updates might affect the overlap with the signature of the parent entity's action descriptors.`,issue:null}))),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project?this.project.addFunctionDeclaration(this):this.parent.type===n.CustomEntity?(this.parent.addMethod(this),e.push(this.parent)):this.parent.type===n.Loop&&(this.parent.setBody(this),e.push(this.parent)),{updated:b(e),added:b(t),removed:b(i),self:this}}replaceDetachedChild(e,t){const i=this.detachedChildren.indexOf(e);return i!==-1&&(this.detachedChildren[i]=t),this}subscribeDetachedChild(e){return this.detachedChildren.includes(e)||this.detachedChildren.push(e),this}addInputDeclaration(e){return this.inputs.includes(e)||this.inputs.push(e),this}removeInputDeclaration(e){const t=this.inputs.indexOf(e);return t!==-1&&this.inputs.splice(t,1),this}setParent(e){return this.parent=e,this}setImplements(e){return this.implements=e,this}addCall(e){return this.calls.includes(e)||this.calls.push(e),this}removeCall(e){const t=this.calls.indexOf(e);return t!==-1&&this.calls.splice(t,1),this}initChildren(){return this.initialized?this:(this.initialized=!0,this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.calls=this.initialData.calls.map(e=>{const t=v(e,this.project);return t.addEntryCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this),t.initChildren()),t}),this.returnStatements=this.initialData.returnStatements.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.implements&&(this.implements=v(this.initialData.implements,this.project)),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.private=e.private||this.private,this.index=e.index||(e.index!==0?this.index:0),this.collapsed=e.collapsed!==void 0?e.collapsed:this.collapsed,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),St(this).forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),St(this).forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),{affected:b(t),self:this})}toFlat(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this,...this.inputs.flatMap(a=>a.toFlat(e)),...this.calls.flatMap(a=>a.toFlat(e)),...this.returnStatements.flatMap(a=>a.toFlat(e)),...this.implements?this.implements.toFlat(e):[],...t.flatMap(a=>a.toFlat(e))]}toFlatIds(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this.id,...this.inputs.flatMap(a=>a.toFlatIds(e)),...this.calls.flatMap(a=>a.toFlatIds(e)),...this.returnStatements.flatMap(a=>a.toFlatIds(e)),...this.implements?this.implements.toFlatIds(e):[],...t.flatMap(a=>a.toFlatIds(e))]}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,x:this.x,y:this.y,collapsed:this.collapsed,private:this.private,parent:this.parent.toReference(),calls:this.calls.map(t=>t.toJSON()),inputs:this.inputs.map(t=>t.toJSON()),implements:((e=this.implements)==null?void 0:e.toJSON())||null,returnStatements:this.returnStatements.map(t=>t.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,collapsed:this.collapsed,private:this.private,x:this.x,y:this.y,inputs:this.inputs.map(t=>t.toReference()),calls:this.calls.map(t=>t.toReference()),returnStatements:this.returnStatements.map(t=>t.toReference()),implements:((e=this.implements)==null?void 0:e.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.calls.flatMap(i=>i.toFlatJSON(e)),...this.returnStatements.flatMap(i=>i.toFlatJSON(e)),...this.implements?this.implements.toFlatJSON(e):[]])}toGenerationTarget(){var t;const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,name:this.name,description:this.description,type:this.type,private:this.private,implements:((t=this.implements)==null?void 0:t.id)||null,parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.calls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.returnStatements.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.calls.forEach(e=>e.clearErrors()),this.returnStatements.forEach(e=>e.clearErrors()),this}validate(){const e=n2(this);return this.errors=[...e],{success:!0,error:null,data:this.toJSON()}}getErrors(){const e=St(this);return[...this.errors,...this.inputs.flatMap(i=>i.getErrors()),...e.flatMap(i=>i.getErrors())]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0,a=!1){var m;const s=this.toJSON(),o=t||Ze(C(this,this.project),n.FunctionDeclaration,this.project);s.inputs=[];const l=o.split("-id"),p=l[l.length-1||0]||o;s.id=o;const y=kt(s,this.project);e?y.setParent(e):y.setParent(this.parent),i&&y.subscribe(),y.initChildren();const h=(m=this.inputs)==null?void 0:m.map((R,g)=>R.clone(this,p+"-argument-declaration-"+g+"-id",i));return y.inputs=h,y}getVariableInstances(){return re(this).filter(i=>i.type===n.VariableInstance)}getArgument(e){return this.inputs.find(t=>t.id===e)||null}createCall(e=this.project,t={}){const i={id:t.id||_.UUID.uuid(),version:t.version||1,type:n.FunctionCall,parent:e.toReference(),successCalls:t.successCalls||[],errorCalls:t.errorCalls||[],inputs:t.inputs||[],outputs:t.outputs||[],error:t.error||null,process:t.process||null,calledBySuccess:t.calledBySuccess||[],calledByError:t.calledByError||[],calledByEntry:t.calledByEntry||[],declaration:this.toJSON(),x:0,y:0},a=v(i,this.project);return a.setParent(e),a.initChildren(),e===this.project&&this.project.addFunctionCall(a),a}createInternalCall(e,t={}){const i={id:t.id||_.UUID.uuid(),version:t.version||1,type:n.InternalCall,parent:e.toReference(),successCalls:t.successCalls||[],errorCalls:t.errorCalls||[],inputs:t.inputs||[],outputs:t.outputs||[],error:t.error||null,process:t.process||null,calledBySuccess:t.calledBySuccess||[],calledByError:t.calledByError||[],calledByEntry:t.calledByEntry||[],declaration:this.toShallowJSON(),index:e.internalCalls.length},a=v(i,this.project);return a.setParent(e),a.initChildren(),a}addReturnStatement(e){return this.returnStatements.includes(e)||this.returnStatements.push(e),this}removeReturnStatement(e){const t=this.returnStatements.indexOf(e);return t!==-1&&this.returnStatements.splice(t,1),this}getUniqueReturnDeclarations(){const e=[],i=[...this.returnStatements].flatMap(a=>a.outputs);if(this.implements){const a=this.implements.outputs;return i.forEach(s=>{const o=a.find(p=>p===s.implements),l=e.find(p=>p.implements===s.implements);o&&!l&&e.push(s)}),b(e)}else return i.forEach(a=>{e.find(o=>o===a||C(o,this.project)===C(a,this.project)&&Ut(o.dataType,a.dataType))||e.push(a)}),b(e)}};d(be,"MUTABLE_BASE_PROPERTIES",["name","description","private"]),d(be,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(be,"BASE_PROPERTIES",[...be.MUTABLE_BASE_PROPERTIES,...be.INMUTABLE_BASE_PROPERTIES]),d(be,"MUTABLE_META_PROPERTIES",[...be.MUTABLE_BASE_PROPERTIES,"x","y","index","collapsed"]),d(be,"INMUTABLE_META_PROPERTIES",[...be.INMUTABLE_BASE_PROPERTIES]),d(be,"META_PROPERTIES",[...be.MUTABLE_META_PROPERTIES,...be.INMUTABLE_META_PROPERTIES]),d(be,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(be,"INMUATABLE_UPSTREAM_PROPERTIES",["parent","implements"]),d(be,"UPSTREAM_PROPERTIES",[...be.MUTABLE_UPSTREAM_PROPERTIES,...be.INMUATABLE_UPSTREAM_PROPERTIES]),d(be,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","calls","returnStatements"]),d(be,"INMUATABLE_DOWNSTREAM_PROPERTIES",[]),d(be,"DOWNSTREAM_PROPERTIES",[...be.MUTABLE_DOWNSTREAM_PROPERTIES,...be.INMUATABLE_DOWNSTREAM_PROPERTIES]),d(be,"PROPERTIES",[...be.META_PROPERTIES,...be.UPSTREAM_PROPERTIES,...be.DOWNSTREAM_PROPERTIES]);let Br=be;function a2(r){const e=k6(),t=r.toJSON();e.safeParse(t).success;const a=[];if(r.entity&&r.andChildrenGroup||r.entity&&r.orChildrenGroup||r.andChildrenGroup&&r.orChildrenGroup){const s=Y({id:r.id+"--"+M.InvalidPropertiesCombination,message:`Data type with id "${r.id}" has invalid properties combination. Only one of the following properties can be present at the time: 'entity', 'andChildrenGroup' or 'orChildrenGroup'`,issue:null,severity:T.Error,code:M.InvalidPropertiesCombination,entity:r});a.push(s.error)}return ie(r.errors,a)}function s2(r,e){const t=[],i=[n.CustomEntity,n.ActionDescriptor,n.Property,n.ArgumentDeclaration,n.ReturnDeclaration,n.VariableDeclaration,n.ValueDescriptor,n.DataType],a=`'${U(i,"', '","' or '")}'`;if(r.parent)if(r.id===r.parent)t.push(new E({id:`${r.id}--${r.parent}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'parent'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}));else{const s=e.get(r.parent);s?i.includes(s.type)||t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type ${a}.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}else t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}" is missing a 'parent' reference. The 'parent' of a 'data-type' entity must be a reference to an entity of type ${a}.`,issue:null}));if(r.entity){if(r.id===r.entity)return t.push(new E({id:`${r.id}--${r.entity}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'entity'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null})),t;const s=e.get(r.entity);s?[n.CustomEntity,n.PrimitiveEntity,n.ActionDescriptor,n.BuiltInBaseEntity].includes(s.type)||t.push(new E({id:`${r.id}--${r.entity}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'entity' reference that isn't pointing to an entity of type 'custom-entity', 'primitive-entity', 'action-descriptor' or 'built-in-base-entity'.`,issue:null})):t.push(new E({id:`${r.id}--${r.entity}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.entity}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}return t}const Re=class Re{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"isNullable");d(this,"isList",null);d(this,"constant");d(this,"asType",null);d(this,"type",n.DataType);d(this,"options");d(this,"parentRelationType");d(this,"like");d(this,"defaultValue",null);d(this,"entity",null);d(this,"andChildrenGroup",null);d(this,"orChildrenGroup",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"inferred",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.isNullable=e.isNullable,this.isList=e.isList,this.constant=e.constant,this.asType=e.asType,this.options=e.options,this.parentRelationType=e.parentRelationType,this.inferred=e.inferred||!1,this.like=e.like||!1}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;e.entity&&(s=t.get(e.entity));const o={id:e.id,version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,parentRelationType:e.parentRelationType,isList:e.isList,isNullable:e.isNullable,constant:e.constant,like:e.like||!1,inferred:!1,defaultValue:null,entity:s,asType:e.asType,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){var p;let i=JSON.parse(JSON.stringify(e));const a=[],s=s2(i,t);if(a.push(...s,...Ve(i)),i.entity){const y=t.get(i.entity);if(y.type===n.CustomEntity){const m=Qn(y).filter(R=>!R.interactive);if(m.length){const R=m.length>1?`entities with ids '${U(m.map(g=>g.id),"', '","' and '")}'`:`entity with id '${m[0].id}'`;a.push(new E({id:`${e.id}--${f.NonInteractiveEntityReferenced}`,code:f.NonInteractiveEntityReferenced,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', cannot reference 'custom-entity' with id '${i.entity}' at 'entity'. The entity extends or implements non-interactive built-in-base-entity ${R}.
32
+ Please consider that any updates might affect the overlap with the signature of the parent entity's action descriptors.`,issue:null}))),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project?this.project.addFunctionDeclaration(this):this.parent.type===n.CustomEntity?(this.parent.addMethod(this),e.push(this.parent)):this.parent.type===n.Loop&&(this.parent.setBody(this),e.push(this.parent)),{updated:b(e),added:b(t),removed:b(i),self:this}}replaceDetachedChild(e,t){const i=this.detachedChildren.indexOf(e);return i!==-1&&(this.detachedChildren[i]=t),this}subscribeDetachedChild(e){return this.detachedChildren.includes(e)||this.detachedChildren.push(e),this}addInputDeclaration(e){return this.inputs.includes(e)||this.inputs.push(e),this}removeInputDeclaration(e){const t=this.inputs.indexOf(e);return t!==-1&&this.inputs.splice(t,1),this}setParent(e){return this.parent=e,this}setImplements(e){return this.implements=e,this}addCall(e){return this.calls.includes(e)||this.calls.push(e),this}removeCall(e){const t=this.calls.indexOf(e);return t!==-1&&this.calls.splice(t,1),this}initChildren(){return this.initialized?this:(this.initialized=!0,this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.calls=this.initialData.calls.map(e=>{const t=v(e,this.project);return t.addEntryCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this),t.initChildren()),t}),this.returnStatements=this.initialData.returnStatements.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.implements&&(this.implements=v(this.initialData.implements,this.project)),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.private=e.private||this.private,this.index=e.index||(e.index!==0?this.index:0),this.collapsed=e.collapsed!==void 0?e.collapsed:this.collapsed,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),St(this).forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),St(this).forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),{affected:b(t),self:this})}toFlat(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this,...this.inputs.flatMap(a=>a.toFlat(e)),...this.calls.flatMap(a=>a.toFlat(e)),...this.returnStatements.flatMap(a=>a.toFlat(e)),...this.implements?this.implements.toFlat(e):[],...t.flatMap(a=>a.toFlat(e))]}toFlatIds(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this.id,...this.inputs.flatMap(a=>a.toFlatIds(e)),...this.calls.flatMap(a=>a.toFlatIds(e)),...this.returnStatements.flatMap(a=>a.toFlatIds(e)),...this.implements?this.implements.toFlatIds(e):[],...t.flatMap(a=>a.toFlatIds(e))]}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,x:this.x,y:this.y,collapsed:this.collapsed,private:this.private,parent:this.parent.toReference(),calls:this.calls.map(t=>t.toJSON()),inputs:this.inputs.map(t=>t.toJSON()),implements:((e=this.implements)==null?void 0:e.toJSON())||null,returnStatements:this.returnStatements.map(t=>t.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,collapsed:this.collapsed,private:this.private,x:this.x,y:this.y,inputs:this.inputs.map(t=>t.toReference()),calls:this.calls.map(t=>t.toReference()),returnStatements:this.returnStatements.map(t=>t.toReference()),implements:((e=this.implements)==null?void 0:e.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.calls.flatMap(i=>i.toFlatJSON(e)),...this.returnStatements.flatMap(i=>i.toFlatJSON(e)),...this.implements?this.implements.toFlatJSON(e):[]])}toGenerationTarget(){var t;const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,name:this.name,description:this.description,type:this.type,private:this.private,implements:((t=this.implements)==null?void 0:t.id)||null,parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.calls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.returnStatements.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.calls.forEach(e=>e.clearErrors()),this.returnStatements.forEach(e=>e.clearErrors()),this}validate(){const e=n2(this);return this.errors=[...e],{success:!0,error:null,data:this.toJSON()}}getErrors(){const e=St(this);return[...this.errors,...this.inputs.flatMap(i=>i.getErrors()),...e.flatMap(i=>i.getErrors())]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0,a=!1){var m;const s=this.toJSON(),o=t||Ze(C(this,this.project),n.FunctionDeclaration,this.project);s.inputs=[];const l=o.split("-id"),p=l[l.length-1||0]||o;s.id=o;const y=kt(s,this.project);e?y.setParent(e):y.setParent(this.parent),i&&y.subscribe(),y.initChildren();const h=(m=this.inputs)==null?void 0:m.map((R,g)=>R.clone(this,p+"-argument-declaration-"+g+"-id",i));return y.inputs=h,y}getVariableInstances(){return re(this).filter(i=>i.type===n.VariableInstance)}getArgument(e){return this.inputs.find(t=>t.id===e)||null}createCall(e=this.project,t={}){const i={id:t.id||_.UUID.uuid(),version:t.version||1,type:n.FunctionCall,parent:e.toReference(),successCalls:t.successCalls||[],errorCalls:t.errorCalls||[],inputs:t.inputs||[],outputs:t.outputs||[],error:t.error||null,process:t.process||null,calledBySuccess:t.calledBySuccess||[],calledByError:t.calledByError||[],calledByEntry:t.calledByEntry||[],declaration:this.toJSON(),x:0,y:0},a=v(i,this.project);return a.setParent(e),a.initChildren(),e===this.project&&this.project.addFunctionCall(a),a}createInternalCall(e,t={}){const i={id:t.id||_.UUID.uuid(),version:t.version||1,type:n.InternalCall,parent:e.toReference(),successCalls:t.successCalls||[],errorCalls:t.errorCalls||[],inputs:t.inputs||[],outputs:t.outputs||[],error:t.error||null,process:t.process||null,calledBySuccess:t.calledBySuccess||[],calledByError:t.calledByError||[],calledByEntry:t.calledByEntry||[],declaration:this.toShallowJSON(),index:e.internalCalls.length},a=v(i,this.project);return a.setParent(e),a.initChildren(),a}addReturnStatement(e){return this.returnStatements.includes(e)||this.returnStatements.push(e),this}removeReturnStatement(e){const t=this.returnStatements.indexOf(e);return t!==-1&&this.returnStatements.splice(t,1),this}getUniqueReturnDeclarations(){const e=[],i=[...this.returnStatements].flatMap(a=>a.outputs);if(this.implements){const a=this.implements.outputs;return i.forEach(s=>{const o=a.find(p=>p===s.implements),l=e.find(p=>p.implements===s.implements);o&&!l&&e.push(s)}),b(e)}else return i.forEach(a=>{e.find(o=>o===a||C(o,this.project)===C(a,this.project)&&Ut(o.dataType,a.dataType))||e.push(a)}),b(e)}};d(be,"MUTABLE_BASE_PROPERTIES",["name","description","private"]),d(be,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(be,"BASE_PROPERTIES",[...be.MUTABLE_BASE_PROPERTIES,...be.INMUTABLE_BASE_PROPERTIES]),d(be,"MUTABLE_META_PROPERTIES",[...be.MUTABLE_BASE_PROPERTIES,"x","y","index","collapsed"]),d(be,"INMUTABLE_META_PROPERTIES",[...be.INMUTABLE_BASE_PROPERTIES]),d(be,"META_PROPERTIES",[...be.MUTABLE_META_PROPERTIES,...be.INMUTABLE_META_PROPERTIES]),d(be,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(be,"INMUATABLE_UPSTREAM_PROPERTIES",["parent","implements"]),d(be,"UPSTREAM_PROPERTIES",[...be.MUTABLE_UPSTREAM_PROPERTIES,...be.INMUATABLE_UPSTREAM_PROPERTIES]),d(be,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","calls","returnStatements"]),d(be,"INMUATABLE_DOWNSTREAM_PROPERTIES",[]),d(be,"DOWNSTREAM_PROPERTIES",[...be.MUTABLE_DOWNSTREAM_PROPERTIES,...be.INMUATABLE_DOWNSTREAM_PROPERTIES]),d(be,"PROPERTIES",[...be.META_PROPERTIES,...be.UPSTREAM_PROPERTIES,...be.DOWNSTREAM_PROPERTIES]);let Br=be;function a2(r){const e=k6(),t=r.toJSON();e.safeParse(t).success;const a=[];if(r.entity&&r.andChildrenGroup||r.entity&&r.orChildrenGroup||r.andChildrenGroup&&r.orChildrenGroup){const s=Y({id:r.id+"--"+M.InvalidPropertiesCombination,message:`Data type with id "${r.id}" has invalid properties combination. Only one of the following properties can be present at the time: 'entity', 'andChildrenGroup' or 'orChildrenGroup'`,issue:null,severity:T.Error,code:M.InvalidPropertiesCombination,entity:r});a.push(s.error)}return ie(r.errors,a)}function s2(r,e){const t=[],i=[n.CustomEntity,n.ActionDescriptor,n.Property,n.ArgumentDeclaration,n.ReturnDeclaration,n.VariableDeclaration,n.ValueDescriptor,n.DataType],a=`'${U(i,"', '","' or '")}'`;if(r.parent)if(r.id===r.parent)t.push(new E({id:`${r.id}--${r.parent}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'parent'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}));else{const s=e.get(r.parent);s?i.includes(s.type)||t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type ${a}.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}else t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}" is missing a 'parent' reference. The 'parent' of a 'data-type' entity must be a reference to an entity of type ${a}.`,issue:null}));if(r.entity){if(r.id===r.entity)return t.push(new E({id:`${r.id}--${r.entity}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'entity'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null})),t;const s=e.get(r.entity);s?[n.CustomEntity,n.PrimitiveEntity,n.ActionDescriptor,n.BuiltInBaseEntity].includes(s.type)||t.push(new E({id:`${r.id}--${r.entity}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'entity' reference that isn't pointing to an entity of type 'custom-entity', 'primitive-entity', 'action-descriptor' or 'built-in-base-entity'.`,issue:null})):t.push(new E({id:`${r.id}--${r.entity}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.entity}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}return t}const Re=class Re{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"isNullable");d(this,"isList",null);d(this,"constant");d(this,"asType",null);d(this,"type",n.DataType);d(this,"options");d(this,"parentRelationType");d(this,"like");d(this,"defaultValue",null);d(this,"entity",null);d(this,"andChildrenGroup",null);d(this,"orChildrenGroup",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"inferred",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.isNullable=e.isNullable,this.isList=e.isList,this.constant=e.constant,this.asType=e.asType,this.options=e.options,this.parentRelationType=e.parentRelationType,this.inferred=e.inferred||!1,this.like=e.like||!1}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;e.entity&&(s=t.get(e.entity));const o={id:e.id,version:1,type:n.DataType,andChildrenGroup:null,orChildrenGroup:null,parentRelationType:e.parentRelationType,isList:e.isList,isNullable:e.isNullable,constant:e.constant,like:e.like||!1,inferred:!1,defaultValue:null,entity:s,asType:e.asType,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){var p;let i=JSON.parse(JSON.stringify(e));const a=[],s=s2(i,t);if(a.push(...s,...Le(i)),i.entity){const y=t.get(i.entity);if(y.type===n.CustomEntity){const m=Qn(y).filter(R=>!R.interactive);if(m.length){const R=m.length>1?`entities with ids '${U(m.map(g=>g.id),"', '","' and '")}'`:`entity with id '${m[0].id}'`;a.push(new E({id:`${e.id}--${f.NonInteractiveEntityReferenced}`,code:f.NonInteractiveEntityReferenced,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', cannot reference 'custom-entity' with id '${i.entity}' at 'entity'. The entity extends or implements non-interactive built-in-base-entity ${R}.
33
33
  ${Kn}`,issue:null}))}}}const o=i.parent&&t.get(i.parent)||t.getBuiltIn(i.parent),l=o?er(o):null;if(l)a.push(new E({id:`${e.id}--${f.BuiltInEntityParent}`,code:f.BuiltInEntityParent,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', belongs to a built-in system entity "${C(l,t)}" with id '${l.id}', and therefore it cannot be created as it would affect a built in entity, which are inmutable.`,issue:null}));else if(o){const y=o.type,h=[n.Property,n.VariableDeclaration,n.ArgumentDeclaration,n.ReturnDeclaration,n.ValueDescriptor];if(h.includes(y)&&(i.parentRelationType&&a.push(new E({id:`${e.id}--${f.InvalidParentRelationType}`,code:f.InvalidParentRelationType,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', cannot have a 'parentRelationType' property set of type '${y}'.
34
34
  The entitities of type '${U(h,"', '","' and '")}' can only have one 'data-type' child under the 'dataType' property so no 'parentRelationType' is needed.`,issue:null})),o.dataType)){const m=(p=o.dataType)==null?void 0:p.id;a.push(new E({id:`${e.id}--${f.NewEntityWouldOverriteExisting}`,code:f.NewEntityWouldOverriteExisting,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', cannot be added as a child to the entity with id '${i.parent}' and type '${y}', because it already has a 'data-type' child with id '${m}'.
35
35
  The entitities of type '${U(h,"', '","' and '")}' can only have one 'data-type' child under the 'dataType' property. You can inspect the existing data-type entity with the 'describe_entity' action. Like so:
36
36
  ${ln({describe_entity:m})}
37
- Alternatively you can update the entity with 'update' action. Or replace it by first removing it and then creating a new one.`,issue:null}))}y===n.DataType&&(!i.parentRelationType||!(i.parentRelationType===Ke.AndDataTypeGroup||i.parentRelationType===Ke.OrDataTypeGroup))&&a.push(new E({id:`${e.id}--${f.InvalidParentRelationType}`,code:f.InvalidParentRelationType,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', must have a 'parentRelationType' property set to either 'or-data-type-group' or 'and-data-type-group' when being added as a child to an entity of type 'data-type'.`,issue:null}))}return{errors:a,modifiedData:i}}validateGeneratedUpdate(e){return{errors:[],modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent.type===n.DataType?this.parentRelationType===Ke.AndDataTypeGroup?this.parent.addToAndGroup(this):this.parentRelationType===Ke.OrDataTypeGroup&&this.parent.addToOrGroup(this):this.parent.setDataType(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}removeChildGroup(e){if(this.andChildrenGroup){const t=this.andChildrenGroup.findIndex(i=>i.id===e.id);t!==-1&&this.andChildrenGroup.splice(t,1)}if(this.orChildrenGroup){const t=this.orChildrenGroup.findIndex(i=>i.id===e.id);t!==-1&&this.orChildrenGroup.splice(t,1)}return this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.defaultValue&&(this.defaultValue=v(this.initialData.defaultValue,this.project),this.defaultValue.setParent(this),this.defaultValue.initChildren()),this.initialData.entity)if(this.initialData.entity.type===n.GenericReference){const e=this.project.findSubscribedInstanceFromReference(this.initialData.entity);this.entity=e}else this.entity=v(this.initialData.entity,this.project);return this.initialData.andChildrenGroup&&(this.andChildrenGroup=this.initialData.andChildrenGroup.map(e=>v(e,this.project))),this.initialData.orChildrenGroup&&(this.orChildrenGroup=this.initialData.orChildrenGroup.map(e=>v(e,this.project))),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.isNullable=e.isNullable||this.isNullable,this.isList=e.isList||this.isList,this.constant=e.constant||this.constant,this.asType=e.asType||this.asType,this.options=e.options||this.options,this.parentRelationType=e.parentRelationType||this.parentRelationType,this.like=e.like||this.like,this.inferred=e.inferred||this.inferred,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.defaultValue){const{affected:s,removed:o}=this.defaultValue.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}if(this.entity&&this.entity.type===n.CustomEntity&&this.entity.parent===this){const{affected:s,removed:o}=this.entity.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}if(!e){this.parent.type===n.DataType&&this.parent.removeChildGroup(this);const s=this.parent;if(s.type===n.DataType){if(this.parentRelationType===Ke.AndDataTypeGroup){if(Array.isArray(s.andChildrenGroup)){const o=s.andChildrenGroup.findIndex(l=>l.id===this.id);o!==-1&&s.andChildrenGroup.splice(o,1)}}else if(this.parentRelationType===Ke.OrDataTypeGroup&&Array.isArray(s.orChildrenGroup)){const o=s.orChildrenGroup.findIndex(l=>l.id===this.id);o!==-1&&s.orChildrenGroup.splice(o,1)}}else this.parent.removeDataType();i.push(s)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.defaultValue){const{affected:i}=this.defaultValue.restore({seenEntities:e});t.push(...i)}if(this.entity&&this.entity.type===n.CustomEntity&&this.entity.parent===this){const{affected:i}=this.entity.restore({seenEntities:e});t.push(...i)}if(this.parent.type===n.DataType){const i=this.parent;Array.isArray(i.andChildrenGroup)&&i.andChildrenGroup.push(this)}if(this.parent.type===n.DataType){const i=this.parent;this.parentRelationType===Ke.AndDataTypeGroup?Array.isArray(i.andChildrenGroup)&&i.andChildrenGroup.push(this):this.parentRelationType===Ke.OrDataTypeGroup&&Array.isArray(i.orChildrenGroup)&&i.orChildrenGroup.push(this)}else{const i=this.parent;i.setDataType(this),t.push(i)}return{affected:t,self:this}}toFlat(e=new Set){var i,a,s;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.andChildrenGroup)==null?void 0:i.flatMap(o=>o.toFlat(e)))||[],...((a=this.orChildrenGroup)==null?void 0:a.flatMap(o=>o.toFlat(e)))||[],...((s=this.entity)==null?void 0:s.toFlat(e))||[]])}toFlatIds(e=new Set){var i,a,s;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.andChildrenGroup)==null?void 0:i.flatMap(o=>o.toFlatIds(e)))||[],...((a=this.orChildrenGroup)==null?void 0:a.flatMap(o=>o.toFlatIds(e)))||[],...((s=this.entity)==null?void 0:s.toFlatIds(e))||[]])}toJSON(){var e,t,i,a;return{id:this.id,version:this.version,type:this.type,isNullable:this.isNullable,options:this.options,isList:this.isList,constant:this.constant,asType:this.asType,defaultValue:((e=this.defaultValue)==null?void 0:e.toJSON())||null,like:this.like,parentRelationType:this.parentRelationType,andChildrenGroup:((t=this.andChildrenGroup)==null?void 0:t.map(s=>s.toJSON()))||null,orChildrenGroup:((i=this.orChildrenGroup)==null?void 0:i.map(s=>s.toJSON()))||null,entity:((a=this.entity)==null?void 0:a.toReference())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i,a;return{id:this.id,version:this.version,type:this.type,isList:this.isList,isNullable:this.isNullable,options:this.options,constant:this.constant,asType:this.asType,parentRelationType:this.parentRelationType,like:this.like,inferred:this.inferred,defaultValue:((e=this.defaultValue)==null?void 0:e.toReference())||null,andChildrenGroup:((t=this.andChildrenGroup)==null?void 0:t.map(s=>s.toReference()))||null,orChildrenGroup:((i=this.orChildrenGroup)==null?void 0:i.map(s=>s.toReference()))||null,entity:((a=this.entity)==null?void 0:a.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i,a,s,o;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.defaultValue)==null?void 0:i.toFlatJSON(e))||[],...((a=this.andChildrenGroup)==null?void 0:a.flatMap(l=>l.toFlatJSON(e)))||[],...((s=this.orChildrenGroup)==null?void 0:s.flatMap(l=>l.toFlatJSON(e)))||[],...((o=this.entity)==null?void 0:o.toFlatJSON(e))||[]])}toGenerationTarget(){var e;return{id:this.id,type:this.type,isNullable:this.isNullable,options:this.options,isList:this.isList,constant:this.constant,like:this.like,parentRelationType:this.parentRelationType,asType:this.asType,entity:((e=this.entity)==null?void 0:e.id)||null,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){var i,a,s;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.defaultValue)==null?void 0:i.toFlatGenerationTarget(e))||[],...((a=this.andChildrenGroup)==null?void 0:a.flatMap(o=>o.toFlatGenerationTarget(e)))||[],...((s=this.orChildrenGroup)==null?void 0:s.flatMap(o=>o.toFlatGenerationTarget(e)))||[],...this.entity&&this.entity.type==n.CustomEntity&&this.entity.parent===this&&this.entity.toFlatGenerationTarget(e)||[]])}clearErrors(){var e,t,i,a;return this.errors=[],(e=this.defaultValue)==null||e.clearErrors(),(t=this.andChildrenGroup)==null||t.forEach(s=>s.clearErrors()),(i=this.orChildrenGroup)==null||i.forEach(s=>s.clearErrors()),this.inferred&&((a=this.entity)==null||a.clearErrors()),this}validate(){const e=a2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){var g,D,A,I;let a=e||this.parent;const s=t||Ze(du(this),n.DataType,this.project),o=s.split("-id"),l=o[o.length-1||0]||s,p={id:s,version:1,type:n.DataType,isNullable:this.isNullable,isList:this.isList,constant:this.constant,asType:this.asType,options:this.options,parentRelationType:this.parentRelationType,like:this.like,inferred:this.inferred,defaultValue:null,andChildrenGroup:null,orChildrenGroup:null,entity:null,parent:a.toReference()},y=kt(p,this.project);e&&y.setParent(e),i&&y.subscribe(),y.initChildren();const h=(g=this.defaultValue)==null?void 0:g.clone(y,l+"-default-value-id",i);y.defaultValue=h||null;const m=(D=this.andChildrenGroup)==null?void 0:D.map((F,k)=>F.clone(this,l+"-and-group-data-type-"+k+"-id",i)),R=(A=this.orChildrenGroup)==null?void 0:A.map((F,k)=>F.clone(this,l+"-or-group-data-type-"+k+"-id",i));if(y.andChildrenGroup=m||null,y.orChildrenGroup=R||null,this.entity&&this.entity.type===n.CustomEntity&&((I=this.entity)==null?void 0:I.parent)===this){const F=this.entity.clone(y,l+"-inferred-entity-id",i);y.setEntity(F)}else this.entity&&y.setEntity(this.entity);return y}merge(e){const t=[],i=[],a=[];if(this.asType!==(e==null?void 0:e.asType)&&(this.sync({asType:e==null?void 0:e.asType}),t.push(this)),this.isNullable!==(e==null?void 0:e.isNullable)&&(this.sync({isNullable:e==null?void 0:e.isNullable}),t.push(this)),this.isList!==!(e!=null&&e.isList)&&(this.sync({isList:e==null?void 0:e.isList}),t.push(this)),this.constant!==(e==null?void 0:e.constant)&&(this.sync({constant:e==null?void 0:e.constant}),t.push(this)),this.like!==(e==null?void 0:e.like)&&(this.sync({like:e==null?void 0:e.like}),t.push(this)),e!=null&&e.inferred){if(e.entity&&e.entity.type===n.CustomEntity&&e.entity.parent===e){const s=e.entity.clone(this,this.id+"--inferred-entity-id",!0);this.setEntity(s),i.push(s)}else e.entity&&(this.setEntity(e.entity),t.push(this));this.inferred||(this.sync({inferred:!0}),t.push(this))}else if(this.inferred){if(this.sync({inferred:!1}),t.push(this),this.entity&&this.entity.type===n.CustomEntity&&this.entity.parent===this){const{affected:s,removed:o}=this.entity.remove({ignoreUpstream:!0,seenEntities:new Set});a.push(...o),s.push(...s)}e.entity!==this.entity&&(this.setEntity(e.entity),t.push(this))}else e.entity!==this.entity&&(this.setEntity(e.entity),t.push(this));if(e.defaultValue)if(this.defaultValue){const{updated:s,added:o,removed:l}=this.defaultValue.merge(e.defaultValue);t.push(...s),i.push(...o),a.push(...l)}else{const s=e.defaultValue.clone(this,this.id+"--default-value-id",!0);this.setDefaultValue(s),i.push(s)}else if(this.defaultValue){const{affected:s,removed:o}=this.defaultValue.remove({ignoreUpstream:!0,seenEntities:new Set});a.push(...o),s.push(...s)}return{updated:b(t),added:b(i),removed:b(a),self:this}}addToAndGroup(e){return this.andChildrenGroup||(this.andChildrenGroup=[]),this.andChildrenGroup.includes(e)||this.andChildrenGroup.push(e),this}addToOrGroup(e){return this.orChildrenGroup||(this.orChildrenGroup=[]),this.orChildrenGroup.includes(e)||this.orChildrenGroup.push(e),this}getDefaultValue(){return this.defaultValue}setDefaultValue(e){return this.defaultValue=e,this}setEntity(e){return this.entity=e,this}isResolved(){return[n.BuiltInBaseEntity,n.ActionDescriptor].includes(this.parent.type)||er(this.parent)?!0:!(!this.entity&&(!this.andChildrenGroup||!this.andChildrenGroup.length)&&(!this.orChildrenGroup||!this.orChildrenGroup.length))}isObject(){return!!this.entity&&(this.entity.type===n.CustomEntity||this.entity.name===P.JSON)}hasStrictObjectStructure(){var e;return this.isObject()&&((e=this.entity)==null?void 0:e.type)===n.CustomEntity}inferFromInputs(e){var t;if(!this.inferred)return this;if(!this.entity&&e.length){const i={id:this.id+"--infered-entity",type:n.CustomEntity,version:1,name:C(this,this.project),description:((t=this.parent)==null?void 0:t.description)||null,static:!0,abstract:!1,properties:[],methods:[],extends:[],implements:[],abstractMethods:[],x:0,y:0,parent:this.toReference()},a=v(i,this.project);a.sync(i),a.setParent(this),a.initChildren(),this.setEntity(a)}return this.entity&&this.entity.inferFromInputs(e),this.like||this.sync({like:!0}),this}};d(Re,"MUTABLE_BASE_PROPERTIES",["isNullable","isList","constant","asType","options","parentRelationType","like"]),d(Re,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Re,"BASE_PROPERTIES",[...Re.MUTABLE_BASE_PROPERTIES,...Re.INMUTABLE_BASE_PROPERTIES]),d(Re,"MUTABLE_META_PROPERTIES",[...Re.MUTABLE_BASE_PROPERTIES,"inferred"]),d(Re,"INMUTABLE_META_PROPERTIES",[...Re.INMUTABLE_BASE_PROPERTIES]),d(Re,"META_PROPERTIES",[...Re.MUTABLE_META_PROPERTIES,...Re.INMUTABLE_META_PROPERTIES]),d(Re,"MUTABLE_UPSTREAM_PROPERTIES",["entity","andChildrenGroup","orChildrenGroup","parent"]),d(Re,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(Re,"UPSTREAM_PROPERTIES",[...Re.MUTABLE_UPSTREAM_PROPERTIES,...Re.INMUTABLE_UPSTREAM_PROPERTIES]),d(Re,"MUTABLE_DOWNSTREAM_PROPERTIES",["defaultValue"]),d(Re,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Re,"DOWNSTREAM_PROPERTIES",[...Re.MUTABLE_DOWNSTREAM_PROPERTIES,...Re.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Re,"PROPERTIES",[...Re.META_PROPERTIES,...Re.UPSTREAM_PROPERTIES,...Re.DOWNSTREAM_PROPERTIES]);let Ai=Re;function o2(r){var l;const e=D6(),t=r.toJSON();e.safeParse(t).success;const a=l2(r),s=Cn(r),o=[...a,...s];if(r.id==="exec-sequentially-operation-call-id"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});o.push(p.error)}return r.outputs.forEach(p=>p.validate()),(l=r.error)==null||l.validate(),ie(r.errors,o)}function l2(r){const e=[];return r.inputs.forEach(t=>{t.validate()}),ie(r.errors,e)}const ce=class ce{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.Operation);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"process",null);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"error",null);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const m=N(e.parent);i=t.get(m)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(m=>{const R=N(m);return t.get(R)}),l=e.calledBySuccess.map(m=>{const R=N(m);return t.get(R)}),p=e.calledByError.map(m=>{const R=N(m);return t.get(R)}),y={id:e.id,version:1,type:n.Operation,declaration:s,calledByEntry:o,calledBySuccess:l,calledByError:p,errorCalls:[],successCalls:[],inputs:[],outputs:[],process:null,error:null,x:0,y:0,parent:i},h=v(y,t);return h.setParent(i),h.initChildren(),h}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);i=s.modifiedData,a.push(...s.errors,...Ve(i));const o=N(i.declaration);if(o){const l=eA(o,t);a.push(...l)}else{const l=`
37
+ Alternatively you can update the entity with 'update' action. Or replace it by first removing it and then creating a new one.`,issue:null}))}y===n.DataType&&(!i.parentRelationType||!(i.parentRelationType===Ke.AndDataTypeGroup||i.parentRelationType===Ke.OrDataTypeGroup))&&a.push(new E({id:`${e.id}--${f.InvalidParentRelationType}`,code:f.InvalidParentRelationType,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', must have a 'parentRelationType' property set to either 'or-data-type-group' or 'and-data-type-group' when being added as a child to an entity of type 'data-type'.`,issue:null}))}return{errors:a,modifiedData:i}}validateGeneratedUpdate(e){return{errors:[],modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent.type===n.DataType?this.parentRelationType===Ke.AndDataTypeGroup?this.parent.addToAndGroup(this):this.parentRelationType===Ke.OrDataTypeGroup&&this.parent.addToOrGroup(this):this.parent.setDataType(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}removeChildGroup(e){if(this.andChildrenGroup){const t=this.andChildrenGroup.findIndex(i=>i.id===e.id);t!==-1&&this.andChildrenGroup.splice(t,1)}if(this.orChildrenGroup){const t=this.orChildrenGroup.findIndex(i=>i.id===e.id);t!==-1&&this.orChildrenGroup.splice(t,1)}return this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.defaultValue&&(this.defaultValue=v(this.initialData.defaultValue,this.project),this.defaultValue.setParent(this),this.defaultValue.initChildren()),this.initialData.entity)if(this.initialData.entity.type===n.GenericReference){const e=this.project.findSubscribedInstanceFromReference(this.initialData.entity);this.entity=e}else this.entity=v(this.initialData.entity,this.project);return this.initialData.andChildrenGroup&&(this.andChildrenGroup=this.initialData.andChildrenGroup.map(e=>v(e,this.project))),this.initialData.orChildrenGroup&&(this.orChildrenGroup=this.initialData.orChildrenGroup.map(e=>v(e,this.project))),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.isNullable=e.isNullable||this.isNullable,this.isList=e.isList||this.isList,this.constant=e.constant||this.constant,this.asType=e.asType||this.asType,this.options=e.options||this.options,this.parentRelationType=e.parentRelationType||this.parentRelationType,this.like=e.like||this.like,this.inferred=e.inferred||this.inferred,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.defaultValue){const{affected:s,removed:o}=this.defaultValue.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}if(this.entity&&this.entity.type===n.CustomEntity&&this.entity.parent===this){const{affected:s,removed:o}=this.entity.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}if(!e){this.parent.type===n.DataType&&this.parent.removeChildGroup(this);const s=this.parent;if(s.type===n.DataType){if(this.parentRelationType===Ke.AndDataTypeGroup){if(Array.isArray(s.andChildrenGroup)){const o=s.andChildrenGroup.findIndex(l=>l.id===this.id);o!==-1&&s.andChildrenGroup.splice(o,1)}}else if(this.parentRelationType===Ke.OrDataTypeGroup&&Array.isArray(s.orChildrenGroup)){const o=s.orChildrenGroup.findIndex(l=>l.id===this.id);o!==-1&&s.orChildrenGroup.splice(o,1)}}else this.parent.removeDataType();i.push(s)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.defaultValue){const{affected:i}=this.defaultValue.restore({seenEntities:e});t.push(...i)}if(this.entity&&this.entity.type===n.CustomEntity&&this.entity.parent===this){const{affected:i}=this.entity.restore({seenEntities:e});t.push(...i)}if(this.parent.type===n.DataType){const i=this.parent;Array.isArray(i.andChildrenGroup)&&i.andChildrenGroup.push(this)}if(this.parent.type===n.DataType){const i=this.parent;this.parentRelationType===Ke.AndDataTypeGroup?Array.isArray(i.andChildrenGroup)&&i.andChildrenGroup.push(this):this.parentRelationType===Ke.OrDataTypeGroup&&Array.isArray(i.orChildrenGroup)&&i.orChildrenGroup.push(this)}else{const i=this.parent;i.setDataType(this),t.push(i)}return{affected:t,self:this}}toFlat(e=new Set){var i,a,s;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.andChildrenGroup)==null?void 0:i.flatMap(o=>o.toFlat(e)))||[],...((a=this.orChildrenGroup)==null?void 0:a.flatMap(o=>o.toFlat(e)))||[],...((s=this.entity)==null?void 0:s.toFlat(e))||[]])}toFlatIds(e=new Set){var i,a,s;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.andChildrenGroup)==null?void 0:i.flatMap(o=>o.toFlatIds(e)))||[],...((a=this.orChildrenGroup)==null?void 0:a.flatMap(o=>o.toFlatIds(e)))||[],...((s=this.entity)==null?void 0:s.toFlatIds(e))||[]])}toJSON(){var e,t,i,a;return{id:this.id,version:this.version,type:this.type,isNullable:this.isNullable,options:this.options,isList:this.isList,constant:this.constant,asType:this.asType,defaultValue:((e=this.defaultValue)==null?void 0:e.toJSON())||null,like:this.like,parentRelationType:this.parentRelationType,andChildrenGroup:((t=this.andChildrenGroup)==null?void 0:t.map(s=>s.toJSON()))||null,orChildrenGroup:((i=this.orChildrenGroup)==null?void 0:i.map(s=>s.toJSON()))||null,entity:((a=this.entity)==null?void 0:a.toReference())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i,a;return{id:this.id,version:this.version,type:this.type,isList:this.isList,isNullable:this.isNullable,options:this.options,constant:this.constant,asType:this.asType,parentRelationType:this.parentRelationType,like:this.like,inferred:this.inferred,defaultValue:((e=this.defaultValue)==null?void 0:e.toReference())||null,andChildrenGroup:((t=this.andChildrenGroup)==null?void 0:t.map(s=>s.toReference()))||null,orChildrenGroup:((i=this.orChildrenGroup)==null?void 0:i.map(s=>s.toReference()))||null,entity:((a=this.entity)==null?void 0:a.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i,a,s,o;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.defaultValue)==null?void 0:i.toFlatJSON(e))||[],...((a=this.andChildrenGroup)==null?void 0:a.flatMap(l=>l.toFlatJSON(e)))||[],...((s=this.orChildrenGroup)==null?void 0:s.flatMap(l=>l.toFlatJSON(e)))||[],...((o=this.entity)==null?void 0:o.toFlatJSON(e))||[]])}toGenerationTarget(){var e;return{id:this.id,type:this.type,isNullable:this.isNullable,options:this.options,isList:this.isList,constant:this.constant,like:this.like,parentRelationType:this.parentRelationType,asType:this.asType,entity:((e=this.entity)==null?void 0:e.id)||null,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){var i,a,s;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.defaultValue)==null?void 0:i.toFlatGenerationTarget(e))||[],...((a=this.andChildrenGroup)==null?void 0:a.flatMap(o=>o.toFlatGenerationTarget(e)))||[],...((s=this.orChildrenGroup)==null?void 0:s.flatMap(o=>o.toFlatGenerationTarget(e)))||[],...this.entity&&this.entity.type==n.CustomEntity&&this.entity.parent===this&&this.entity.toFlatGenerationTarget(e)||[]])}clearErrors(){var e,t,i,a;return this.errors=[],(e=this.defaultValue)==null||e.clearErrors(),(t=this.andChildrenGroup)==null||t.forEach(s=>s.clearErrors()),(i=this.orChildrenGroup)==null||i.forEach(s=>s.clearErrors()),this.inferred&&((a=this.entity)==null||a.clearErrors()),this}validate(){const e=a2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){var g,D,A,I;let a=e||this.parent;const s=t||Ze(du(this),n.DataType,this.project),o=s.split("-id"),l=o[o.length-1||0]||s,p={id:s,version:1,type:n.DataType,isNullable:this.isNullable,isList:this.isList,constant:this.constant,asType:this.asType,options:this.options,parentRelationType:this.parentRelationType,like:this.like,inferred:this.inferred,defaultValue:null,andChildrenGroup:null,orChildrenGroup:null,entity:null,parent:a.toReference()},y=kt(p,this.project);e&&y.setParent(e),i&&y.subscribe(),y.initChildren();const h=(g=this.defaultValue)==null?void 0:g.clone(y,l+"-default-value-id",i);y.defaultValue=h||null;const m=(D=this.andChildrenGroup)==null?void 0:D.map((F,k)=>F.clone(this,l+"-and-group-data-type-"+k+"-id",i)),R=(A=this.orChildrenGroup)==null?void 0:A.map((F,k)=>F.clone(this,l+"-or-group-data-type-"+k+"-id",i));if(y.andChildrenGroup=m||null,y.orChildrenGroup=R||null,this.entity&&this.entity.type===n.CustomEntity&&((I=this.entity)==null?void 0:I.parent)===this){const F=this.entity.clone(y,l+"-inferred-entity-id",i);y.setEntity(F)}else this.entity&&y.setEntity(this.entity);return y}merge(e){const t=[],i=[],a=[];if(this.asType!==(e==null?void 0:e.asType)&&(this.sync({asType:e==null?void 0:e.asType}),t.push(this)),this.isNullable!==(e==null?void 0:e.isNullable)&&(this.sync({isNullable:e==null?void 0:e.isNullable}),t.push(this)),this.isList!==!(e!=null&&e.isList)&&(this.sync({isList:e==null?void 0:e.isList}),t.push(this)),this.constant!==(e==null?void 0:e.constant)&&(this.sync({constant:e==null?void 0:e.constant}),t.push(this)),this.like!==(e==null?void 0:e.like)&&(this.sync({like:e==null?void 0:e.like}),t.push(this)),e!=null&&e.inferred){if(e.entity&&e.entity.type===n.CustomEntity&&e.entity.parent===e){const s=e.entity.clone(this,this.id+"--inferred-entity-id",!0);this.setEntity(s),i.push(s)}else e.entity&&(this.setEntity(e.entity),t.push(this));this.inferred||(this.sync({inferred:!0}),t.push(this))}else if(this.inferred){if(this.sync({inferred:!1}),t.push(this),this.entity&&this.entity.type===n.CustomEntity&&this.entity.parent===this){const{affected:s,removed:o}=this.entity.remove({ignoreUpstream:!0,seenEntities:new Set});a.push(...o),s.push(...s)}e.entity!==this.entity&&(this.setEntity(e.entity),t.push(this))}else e.entity!==this.entity&&(this.setEntity(e.entity),t.push(this));if(e.defaultValue)if(this.defaultValue){const{updated:s,added:o,removed:l}=this.defaultValue.merge(e.defaultValue);t.push(...s),i.push(...o),a.push(...l)}else{const s=e.defaultValue.clone(this,this.id+"--default-value-id",!0);this.setDefaultValue(s),i.push(s)}else if(this.defaultValue){const{affected:s,removed:o}=this.defaultValue.remove({ignoreUpstream:!0,seenEntities:new Set});a.push(...o),s.push(...s)}return{updated:b(t),added:b(i),removed:b(a),self:this}}addToAndGroup(e){return this.andChildrenGroup||(this.andChildrenGroup=[]),this.andChildrenGroup.includes(e)||this.andChildrenGroup.push(e),this}addToOrGroup(e){return this.orChildrenGroup||(this.orChildrenGroup=[]),this.orChildrenGroup.includes(e)||this.orChildrenGroup.push(e),this}getDefaultValue(){return this.defaultValue}setDefaultValue(e){return this.defaultValue=e,this}setEntity(e){return this.entity=e,this}isResolved(){return[n.BuiltInBaseEntity,n.ActionDescriptor].includes(this.parent.type)||er(this.parent)?!0:!(!this.entity&&(!this.andChildrenGroup||!this.andChildrenGroup.length)&&(!this.orChildrenGroup||!this.orChildrenGroup.length))}isObject(){return!!this.entity&&(this.entity.type===n.CustomEntity||this.entity.name===P.JSON)}hasStrictObjectStructure(){var e;return this.isObject()&&((e=this.entity)==null?void 0:e.type)===n.CustomEntity}inferFromInputs(e){var t;if(!this.inferred)return this;if(!this.entity&&e.length){const i={id:this.id+"--infered-entity",type:n.CustomEntity,version:1,name:C(this,this.project),description:((t=this.parent)==null?void 0:t.description)||null,static:!0,abstract:!1,properties:[],methods:[],extends:[],implements:[],abstractMethods:[],x:0,y:0,parent:this.toReference()},a=v(i,this.project);a.sync(i),a.setParent(this),a.initChildren(),this.setEntity(a)}return this.entity&&this.entity.inferFromInputs(e),this.like||this.sync({like:!0}),this}};d(Re,"MUTABLE_BASE_PROPERTIES",["isNullable","isList","constant","asType","options","parentRelationType","like"]),d(Re,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Re,"BASE_PROPERTIES",[...Re.MUTABLE_BASE_PROPERTIES,...Re.INMUTABLE_BASE_PROPERTIES]),d(Re,"MUTABLE_META_PROPERTIES",[...Re.MUTABLE_BASE_PROPERTIES,"inferred"]),d(Re,"INMUTABLE_META_PROPERTIES",[...Re.INMUTABLE_BASE_PROPERTIES]),d(Re,"META_PROPERTIES",[...Re.MUTABLE_META_PROPERTIES,...Re.INMUTABLE_META_PROPERTIES]),d(Re,"MUTABLE_UPSTREAM_PROPERTIES",["entity","andChildrenGroup","orChildrenGroup","parent"]),d(Re,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(Re,"UPSTREAM_PROPERTIES",[...Re.MUTABLE_UPSTREAM_PROPERTIES,...Re.INMUTABLE_UPSTREAM_PROPERTIES]),d(Re,"MUTABLE_DOWNSTREAM_PROPERTIES",["defaultValue"]),d(Re,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Re,"DOWNSTREAM_PROPERTIES",[...Re.MUTABLE_DOWNSTREAM_PROPERTIES,...Re.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Re,"PROPERTIES",[...Re.META_PROPERTIES,...Re.UPSTREAM_PROPERTIES,...Re.DOWNSTREAM_PROPERTIES]);let Ai=Re;function o2(r){var l;const e=D6(),t=r.toJSON();e.safeParse(t).success;const a=l2(r),s=Cn(r),o=[...a,...s];if(r.id==="exec-sequentially-operation-call-id"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});o.push(p.error)}return r.outputs.forEach(p=>p.validate()),(l=r.error)==null||l.validate(),ie(r.errors,o)}function l2(r){const e=[];return r.inputs.forEach(t=>{t.validate()}),ie(r.errors,e)}const ce=class ce{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.Operation);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"process",null);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"error",null);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const m=N(e.parent);i=t.get(m)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(m=>{const R=N(m);return t.get(R)}),l=e.calledBySuccess.map(m=>{const R=N(m);return t.get(R)}),p=e.calledByError.map(m=>{const R=N(m);return t.get(R)}),y={id:e.id,version:1,type:n.Operation,declaration:s,calledByEntry:o,calledBySuccess:l,calledByError:p,errorCalls:[],successCalls:[],inputs:[],outputs:[],process:null,error:null,x:0,y:0,parent:i},h=v(y,t);return h.setParent(i),h.initChildren(),h}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);i=s.modifiedData,a.push(...s.errors,...Le(i));const o=N(i.declaration);if(o){const l=eA(o,t);a.push(...l)}else{const l=`
38
38
  All built-in 'action-descriptor' entity ids are:
39
39
  - ${t.operationDeclarations.map(p=>`${p.id} (${C(p,t)})`).join(`
40
40
  - `)}.
41
41
  `;a.push(new E({id:`${i.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${n.Operation}" with id "${i.id}", has an invalid reference at the 'declaration' property. The 'declaration' property must be a valid reference to an 'action-descriptor' entity.
42
42
  References can either be an ID string or an object with exacly four properties: 'id', 'entityId', 'entityType', 'type'.${l}`,issue:null}))}return{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
43
43
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
44
- You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addOperation(this),(a=this.process)==null||a.writesValues.forEach(s=>{s.setValueWriter(this.process),e.push(s)}),this.successCalls.forEach(s=>{s.addSuccessCaller(this),e.push(s)}),this.errorCalls.forEach(s=>{s.addErrorCaller(this),e.push(s)}),this.calledBySuccess.forEach(s=>{s.addSuccessCall(this),e.push(s)}),this.calledByError.forEach(s=>{s.addErrorCall(this),e.push(s)}),this.calledByEntry.forEach(s=>{s.addCall(this),e.push(s)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addValueReader(e){var t;return(t=this.process)==null||t.addValueReader(e),this}removeValueReader(e){var t;return(t=this.process)==null||t.removeValueReader(e),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?t.setParent(this.parent.parent):t.type!==n.InternalCall&&t.setParent(this.parent),t.initChildren(),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this.syncMissingFixedInputs(),this.syncMissingFixedOutputs(),this.declaration.syncOperationInstance(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){var s;const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.process){const{affected:o,removed:l}=(s=this.process)==null?void 0:s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}if(this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.outputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.error){const{affected:o,removed:l}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}return this.successCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),this.errorCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),e||this.calledBy.forEach(o=>{i.push(o),o.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.process){const{affected:i}=this.process.restore({seenEntities:e});t.push(...i)}return this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.process?this.process.toFlatIds(e):[],...this.error?this.error.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:(e=this.process)==null?void 0:e.toJSON(),declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:this.parent.toReference(),error:(t=this.error)==null?void 0:t.toJSON()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,process:this.process?this.process.toReference():null,inputs:this.inputs.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),declaration:this.declaration.toReference(),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.process?this.process.toFlatJSON(e):[],...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),declaration:this.declaration.id,parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.process?this.process.toFlatGenerationTarget(e):[],...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=o2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new ce(this.toJSON(),this.project)}removeUnrecognizedInputs(){const e=[],t=[],i=[];return this.inputs.forEach(a=>{if(!this.declaration.inputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}removeUnrecognizedOutputs(){const e=[],t=[],i=[];return this.outputs.forEach(a=>{if(!this.declaration.outputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedInputs(){const e=[],t=[],i=[],a=this.declaration.inputs.filter(p=>p.parentRelationType===O.FixedArguments&&!this.inputs.find(y=>y.declaration.id===p.id));this.inputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.inputs.forEach(m=>{m.index>=p.index&&m.sync({index:m.index+1})});const y={id:_.UUID.uuid(),version:1,type:n.InputMap,declaration:p.toJSON(),readsValue:null,defaultValue:null,index:p.index,name:null,description:null,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject()}),this.inputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedInputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedOutputs(){const e=[],t=[],i=[],a=this.declaration.outputs.filter(p=>p.parentRelationType===O.FixedReturns&&!this.outputs.find(y=>y.declaration.id===p.id));this.outputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.outputs.forEach(m=>{m.index>=p.index&&m.index++});const y={id:_.UUID.uuid(),version:1,type:n.OutputMap,declaration:p.toJSON(),writesValues:[],index:p.index,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject()}),this.outputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedOutputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}};d(ce,"MUTABLE_BASE_PROPERTIES",[]),d(ce,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ce,"BASE_PROPERTIES",[...ce.MUTABLE_BASE_PROPERTIES,...ce.INMUTABLE_BASE_PROPERTIES]),d(ce,"MUTABLE_META_PROPERTIES",[...ce.MUTABLE_BASE_PROPERTIES,"x","y"]),d(ce,"INMUTABLE_META_PROPERTIES",[...ce.INMUTABLE_BASE_PROPERTIES]),d(ce,"META_PROPERTIES",[...ce.MUTABLE_META_PROPERTIES,...ce.INMUTABLE_META_PROPERTIES]),d(ce,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(ce,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(ce,"UPSTREAM_PROPERTIES",[...ce.MUTABLE_UPSTREAM_PROPERTIES,...ce.INMUTABLE_UPSTREAM_PROPERTIES]),d(ce,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","outputs","writesValues","successCalls","errorCalls","error"]),d(ce,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ce,"DOWNSTREAM_PROPERTIES",[...ce.MUTABLE_DOWNSTREAM_PROPERTIES,...ce.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ce,"PROPERTIES",[...ce.META_PROPERTIES,...ce.UPSTREAM_PROPERTIES,...ce.DOWNSTREAM_PROPERTIES]);let wr=ce;function c2(r){const e=c3(),t=r.toJSON();e.safeParse(t).success;const a=St(r);r.inputs.forEach(o=>o.validate()),a.forEach(o=>o.validate());const s=[];return ie(r.errors,s)}const de=class de{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"collapsed");d(this,"type",n.GlobalEvent);d(this,"inputs",[]);d(this,"calls",[]);d(this,"returnStatements",[]);d(this,"parent");d(this,"implements");d(this,"detachedChildren",[]);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.x=e.x,this.y=e.y,this.collapsed=e.collapsed}static fromGenerationTarget(e,t){let i=t;if(e.parent){const l=N(e.parent);i=t.get(l)}let a;e.implements&&(a=t.getBuiltIn(e.implements));const s={id:e.id,version:1,name:e.name,type:n.GlobalEvent,collapsed:!1,returnStatements:[],calls:[],inputs:[],implements:a,x:0,y:0,parent:i},o=v(s,t);return o.setParent(i),o.initChildren(),o}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{},t);if(i=s.modifiedData,a.push(...s.errors,...Ve(i)),!e.implements)a.push(new E({id:`${e.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' is missing the 'implements' property. This property is required for a '${e.type}' entity and must point to one of the built-in action descriptors reserved for 'global-event' entities.
44
+ You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addOperation(this),(a=this.process)==null||a.writesValues.forEach(s=>{s.setValueWriter(this.process),e.push(s)}),this.successCalls.forEach(s=>{s.addSuccessCaller(this),e.push(s)}),this.errorCalls.forEach(s=>{s.addErrorCaller(this),e.push(s)}),this.calledBySuccess.forEach(s=>{s.addSuccessCall(this),e.push(s)}),this.calledByError.forEach(s=>{s.addErrorCall(this),e.push(s)}),this.calledByEntry.forEach(s=>{s.addCall(this),e.push(s)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addValueReader(e){var t;return(t=this.process)==null||t.addValueReader(e),this}removeValueReader(e){var t;return(t=this.process)==null||t.removeValueReader(e),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?t.setParent(this.parent.parent):t.type!==n.InternalCall&&t.setParent(this.parent),t.initChildren(),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this.syncMissingFixedInputs(),this.syncMissingFixedOutputs(),this.declaration.syncOperationInstance(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){var s;const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.process){const{affected:o,removed:l}=(s=this.process)==null?void 0:s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}if(this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.outputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.error){const{affected:o,removed:l}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}return this.successCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),this.errorCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),e||this.calledBy.forEach(o=>{i.push(o),o.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.process){const{affected:i}=this.process.restore({seenEntities:e});t.push(...i)}return this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.process?this.process.toFlatIds(e):[],...this.error?this.error.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:(e=this.process)==null?void 0:e.toJSON(),declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:this.parent.toReference(),error:(t=this.error)==null?void 0:t.toJSON()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,process:this.process?this.process.toReference():null,inputs:this.inputs.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),declaration:this.declaration.toReference(),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.process?this.process.toFlatJSON(e):[],...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),declaration:this.declaration.id,parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.process?this.process.toFlatGenerationTarget(e):[],...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=o2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new ce(this.toJSON(),this.project)}removeUnrecognizedInputs(){const e=[],t=[],i=[];return this.inputs.forEach(a=>{if(!this.declaration.inputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}removeUnrecognizedOutputs(){const e=[],t=[],i=[];return this.outputs.forEach(a=>{if(!this.declaration.outputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedInputs(){const e=[],t=[],i=[],a=this.declaration.inputs.filter(p=>p.parentRelationType===O.FixedArguments&&!this.inputs.find(y=>y.declaration.id===p.id));this.inputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.inputs.forEach(m=>{m.index>=p.index&&m.sync({index:m.index+1})});const y={id:_.UUID.uuid(),version:1,type:n.InputMap,declaration:p.toJSON(),readsValue:null,defaultValue:null,index:p.index,name:null,description:null,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject()}),this.inputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedInputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedOutputs(){const e=[],t=[],i=[],a=this.declaration.outputs.filter(p=>p.parentRelationType===O.FixedReturns&&!this.outputs.find(y=>y.declaration.id===p.id));this.outputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.outputs.forEach(m=>{m.index>=p.index&&m.index++});const y={id:_.UUID.uuid(),version:1,type:n.OutputMap,declaration:p.toJSON(),writesValues:[],index:p.index,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject()}),this.outputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedOutputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}};d(ce,"MUTABLE_BASE_PROPERTIES",[]),d(ce,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ce,"BASE_PROPERTIES",[...ce.MUTABLE_BASE_PROPERTIES,...ce.INMUTABLE_BASE_PROPERTIES]),d(ce,"MUTABLE_META_PROPERTIES",[...ce.MUTABLE_BASE_PROPERTIES,"x","y"]),d(ce,"INMUTABLE_META_PROPERTIES",[...ce.INMUTABLE_BASE_PROPERTIES]),d(ce,"META_PROPERTIES",[...ce.MUTABLE_META_PROPERTIES,...ce.INMUTABLE_META_PROPERTIES]),d(ce,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(ce,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(ce,"UPSTREAM_PROPERTIES",[...ce.MUTABLE_UPSTREAM_PROPERTIES,...ce.INMUTABLE_UPSTREAM_PROPERTIES]),d(ce,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","outputs","writesValues","successCalls","errorCalls","error"]),d(ce,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ce,"DOWNSTREAM_PROPERTIES",[...ce.MUTABLE_DOWNSTREAM_PROPERTIES,...ce.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ce,"PROPERTIES",[...ce.META_PROPERTIES,...ce.UPSTREAM_PROPERTIES,...ce.DOWNSTREAM_PROPERTIES]);let wr=ce;function c2(r){const e=c3(),t=r.toJSON();e.safeParse(t).success;const a=St(r);r.inputs.forEach(o=>o.validate()),a.forEach(o=>o.validate());const s=[];return ie(r.errors,s)}const de=class de{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"collapsed");d(this,"type",n.GlobalEvent);d(this,"inputs",[]);d(this,"calls",[]);d(this,"returnStatements",[]);d(this,"parent");d(this,"implements");d(this,"detachedChildren",[]);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.x=e.x,this.y=e.y,this.collapsed=e.collapsed}static fromGenerationTarget(e,t){let i=t;if(e.parent){const l=N(e.parent);i=t.get(l)}let a;e.implements&&(a=t.getBuiltIn(e.implements));const s={id:e.id,version:1,name:e.name,type:n.GlobalEvent,collapsed:!1,returnStatements:[],calls:[],inputs:[],implements:a,x:0,y:0,parent:i},o=v(s,t);return o.setParent(i),o.initChildren(),o}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{},t);if(i=s.modifiedData,a.push(...s.errors,...Le(i)),!e.implements)a.push(new E({id:`${e.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' is missing the 'implements' property. This property is required for a '${e.type}' entity and must point to one of the built-in action descriptors reserved for 'global-event' entities.
45
45
  ${Lo(t)}`,issue:null}));else if(!t.get(e.implements))a.push(new E({id:`${e.id}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'implements' property that isn't found in the project. The 'implements' property must point to one of the built-in action descriptors reserved for 'global-event' entities.
46
46
  ${Lo(t)}`,issue:null}));else if(!t.globalEventActionDescriptors.find(p=>p.id===e.implements))a.push(new E({id:`${e.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'implements' property that isn't pointing to an action descriptor reserved for 'global-event' entities.
47
47
  ${Lo(t)}`,issue:null}));else{const p=t.events.find(y=>y.implements.id===e.implements);p&&a.push(new E({id:`${e.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'implements' property that points to an action descriptor that is already implemented by another global event with id '${p.id}' in the project. Each global event must implement a unique action descriptor.
48
- You can attach new logic to the existing 'global-event' but creating a new callable entity that gets called by it.`,issue:null}))}return{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on an '${this.type}', must be the root project as it is a globally declared entity.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.project.addGlobalEvent(this),{updated:b(e),added:b(t),removed:b(i),self:this}}replaceDetachedChild(e,t){const i=this.detachedChildren.indexOf(e);return i!==-1&&(this.detachedChildren[i]=t),this}subscribeDetachedChild(e){return this.detachedChildren.includes(e)||this.detachedChildren.push(e),this}setParent(e){return this.parent=e,this}addCall(e){return this.calls.includes(e)||this.calls.push(e),this}removeCall(e){const t=this.calls.indexOf(e);return t!==-1&&this.calls.splice(t,1),this}addInputDeclaration(e){return this.inputs.includes(e)||this.inputs.push(e),this}removeInputDeclaration(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}initChildren(){return this.initialized?this:(this.initialized=!0,this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.calls=this.initialData.calls.map(e=>{const t=v(e,this.project);return t.addEntryCaller(this),t.type!==n.InternalCall&&(t.setParent(this),t.initChildren()),t}),this.returnStatements=this.initialData.returnStatements.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.implements=v(this.initialData.implements,this.project),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.x=e.x||this.x,this.y=e.y||this.y,this.collapsed=e.collapsed!==void 0?e.collapsed:this.collapsed,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),St(this).forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),St(this).forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),{affected:b(t),self:this})}toFlat(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this,...this.inputs.flatMap(a=>a.toFlat(e)),...this.calls.flatMap(a=>a.toFlat(e)),...this.returnStatements.flatMap(a=>a.toFlat(e)),...this.implements?this.implements.toFlat(e):[],...t.flatMap(a=>a.toFlat(e))]}toFlatIds(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this.id,...this.inputs.flatMap(a=>a.toFlatIds(e)),...this.calls.flatMap(a=>a.toFlatIds(e)),...this.returnStatements.flatMap(a=>a.toFlatIds(e)),...this.implements?this.implements.toFlatIds(e):[],...t.flatMap(a=>a.toFlatIds(e))]}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,x:this.x,y:this.y,collapsed:this.collapsed,implements:this.implements.toJSON(),returnStatements:this.returnStatements.map(e=>e.toJSON()),inputs:this.inputs.map(e=>e.toJSON()),calls:this.calls.map(e=>e.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,collapsed:this.collapsed,x:this.x,y:this.y,implements:this.implements.toReference(),inputs:this.inputs.map(e=>e.toReference()),calls:this.calls.map(e=>e.toReference()),returnStatements:this.returnStatements.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.calls.flatMap(i=>i.toFlatJSON(e)),...this.returnStatements.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,name:this.name,type:this.type,implements:this.implements.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.calls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.returnStatements.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.calls.forEach(e=>e.clearErrors()),this.returnStatements.forEach(e=>e.clearErrors()),this}validate(){const e=c2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){const e=St(this);return[...this.errors,...this.inputs.flatMap(i=>i.getErrors()),...e.flatMap(i=>i.getErrors())]}getShallowErrors(){return this.errors}clone(){return new de(this.toJSON(),this.project)}getVariableInstances(){return re(this).filter(i=>i.type===n.VariableInstance)}addReturnStatement(e){return this.returnStatements.includes(e)||this.returnStatements.push(e),this}removeReturnStatement(e){const t=this.returnStatements.indexOf(e);return t!==-1&&this.returnStatements.splice(t,1),this}};d(de,"MUTABLE_BASE_PROPERTIES",["description"]),d(de,"INMUTABLE_BASE_PROPERTIES",["id","version","name","type"]),d(de,"BASE_PROPERTIES",[...de.MUTABLE_BASE_PROPERTIES,...de.INMUTABLE_BASE_PROPERTIES]),d(de,"MUTABLE_META_PROPERTIES",[...de.MUTABLE_BASE_PROPERTIES,"x","y","collapsed"]),d(de,"INMUTABLE_META_PROPERTIES",[...de.INMUTABLE_BASE_PROPERTIES]),d(de,"META_PROPERTIES",[...de.MUTABLE_META_PROPERTIES,...de.INMUTABLE_META_PROPERTIES]),d(de,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(de,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","implements"]),d(de,"UPSTREAM_PROPERTIES",[...de.MUTABLE_UPSTREAM_PROPERTIES,...de.INMUTABLE_UPSTREAM_PROPERTIES]),d(de,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","calls","returnStatements"]),d(de,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(de,"DOWNSTREAM_PROPERTIES",[...de.MUTABLE_DOWNSTREAM_PROPERTIES,...de.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(de,"PROPERTIES",[...de.META_PROPERTIES,...de.UPSTREAM_PROPERTIES,...de.DOWNSTREAM_PROPERTIES]);let Oi=de;function d2(r){var o,l;const e=N9(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(p=>p.validate()),r.outputs.forEach(p=>p.validate()),(o=r.error)==null||o.validate(),(l=r.body)==null||l.validate();const s=[...Cn(r)];return ie(r.errors,s)}const z=class z{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.Loop);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"process",null);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"error",null);d(this,"breakStatements",[]);d(this,"continueStatements",[]);d(this,"outputsDeclarations",[]);d(this,"body");d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"parent");d(this,"detachedChildren",[]);d(this,"currentIterationNumberArgumentDeclaration");d(this,"currentValueArgumentDeclaration",null);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const m=N(e.parent);i=t.get(m)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(m=>{const R=N(m);return t.get(R)}),l=e.calledBySuccess.map(m=>{const R=N(m);return t.get(R)}),p=e.calledByError.map(m=>{const R=N(m);return t.get(R)}),y={id:e.id,version:1,type:n.Loop,declaration:s,calledByEntry:o,calledBySuccess:l,calledByError:p,process:null,errorCalls:[],successCalls:[],inputs:[],outputs:[],body:null,breakStatements:[],continueStatements:[],outputsDeclarations:[],error:null,x:0,y:0,parent:i},h=v(y,t);return h.setParent(i),h.initChildren(),h}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0},declaration:{list:!1,types:[n.ActionDescriptor]}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),e.declaration?t.get(e.declaration)?t.conditionDeclarations.find(p=>p.id===e.declaration)||a.push(new E({id:`${e.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'declaration' property that isn't pointing to an action descriptor reserved for '${n.Condition}' entities.
48
+ You can attach new logic to the existing 'global-event' but creating a new callable entity that gets called by it.`,issue:null}))}return{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on an '${this.type}', must be the root project as it is a globally declared entity.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.project.addGlobalEvent(this),{updated:b(e),added:b(t),removed:b(i),self:this}}replaceDetachedChild(e,t){const i=this.detachedChildren.indexOf(e);return i!==-1&&(this.detachedChildren[i]=t),this}subscribeDetachedChild(e){return this.detachedChildren.includes(e)||this.detachedChildren.push(e),this}setParent(e){return this.parent=e,this}addCall(e){return this.calls.includes(e)||this.calls.push(e),this}removeCall(e){const t=this.calls.indexOf(e);return t!==-1&&this.calls.splice(t,1),this}addInputDeclaration(e){return this.inputs.includes(e)||this.inputs.push(e),this}removeInputDeclaration(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}initChildren(){return this.initialized?this:(this.initialized=!0,this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.calls=this.initialData.calls.map(e=>{const t=v(e,this.project);return t.addEntryCaller(this),t.type!==n.InternalCall&&(t.setParent(this),t.initChildren()),t}),this.returnStatements=this.initialData.returnStatements.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.implements=v(this.initialData.implements,this.project),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.x=e.x||this.x,this.y=e.y||this.y,this.collapsed=e.collapsed!==void 0?e.collapsed:this.collapsed,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),St(this).forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),St(this).forEach(a=>{const{affected:s}=a.restore({seenEntities:e});t.push(...s)}),{affected:b(t),self:this})}toFlat(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this,...this.inputs.flatMap(a=>a.toFlat(e)),...this.calls.flatMap(a=>a.toFlat(e)),...this.returnStatements.flatMap(a=>a.toFlat(e)),...this.implements?this.implements.toFlat(e):[],...t.flatMap(a=>a.toFlat(e))]}toFlatIds(e=new Set){if(e.has(this.id))return[];e.add(this.id);const t=St(this);return[this.id,...this.inputs.flatMap(a=>a.toFlatIds(e)),...this.calls.flatMap(a=>a.toFlatIds(e)),...this.returnStatements.flatMap(a=>a.toFlatIds(e)),...this.implements?this.implements.toFlatIds(e):[],...t.flatMap(a=>a.toFlatIds(e))]}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,x:this.x,y:this.y,collapsed:this.collapsed,implements:this.implements.toJSON(),returnStatements:this.returnStatements.map(e=>e.toJSON()),inputs:this.inputs.map(e=>e.toJSON()),calls:this.calls.map(e=>e.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,collapsed:this.collapsed,x:this.x,y:this.y,implements:this.implements.toReference(),inputs:this.inputs.map(e=>e.toReference()),calls:this.calls.map(e=>e.toReference()),returnStatements:this.returnStatements.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.calls.flatMap(i=>i.toFlatJSON(e)),...this.returnStatements.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,name:this.name,type:this.type,implements:this.implements.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.calls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.returnStatements.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.calls.forEach(e=>e.clearErrors()),this.returnStatements.forEach(e=>e.clearErrors()),this}validate(){const e=c2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){const e=St(this);return[...this.errors,...this.inputs.flatMap(i=>i.getErrors()),...e.flatMap(i=>i.getErrors())]}getShallowErrors(){return this.errors}clone(){return new de(this.toJSON(),this.project)}getVariableInstances(){return re(this).filter(i=>i.type===n.VariableInstance)}addReturnStatement(e){return this.returnStatements.includes(e)||this.returnStatements.push(e),this}removeReturnStatement(e){const t=this.returnStatements.indexOf(e);return t!==-1&&this.returnStatements.splice(t,1),this}};d(de,"MUTABLE_BASE_PROPERTIES",["description"]),d(de,"INMUTABLE_BASE_PROPERTIES",["id","version","name","type"]),d(de,"BASE_PROPERTIES",[...de.MUTABLE_BASE_PROPERTIES,...de.INMUTABLE_BASE_PROPERTIES]),d(de,"MUTABLE_META_PROPERTIES",[...de.MUTABLE_BASE_PROPERTIES,"x","y","collapsed"]),d(de,"INMUTABLE_META_PROPERTIES",[...de.INMUTABLE_BASE_PROPERTIES]),d(de,"META_PROPERTIES",[...de.MUTABLE_META_PROPERTIES,...de.INMUTABLE_META_PROPERTIES]),d(de,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(de,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","implements"]),d(de,"UPSTREAM_PROPERTIES",[...de.MUTABLE_UPSTREAM_PROPERTIES,...de.INMUTABLE_UPSTREAM_PROPERTIES]),d(de,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","calls","returnStatements"]),d(de,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(de,"DOWNSTREAM_PROPERTIES",[...de.MUTABLE_DOWNSTREAM_PROPERTIES,...de.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(de,"PROPERTIES",[...de.META_PROPERTIES,...de.UPSTREAM_PROPERTIES,...de.DOWNSTREAM_PROPERTIES]);let Oi=de;function d2(r){var o,l;const e=N9(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(p=>p.validate()),r.outputs.forEach(p=>p.validate()),(o=r.error)==null||o.validate(),(l=r.body)==null||l.validate();const s=[...Cn(r)];return ie(r.errors,s)}const z=class z{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.Loop);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"process",null);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"error",null);d(this,"breakStatements",[]);d(this,"continueStatements",[]);d(this,"outputsDeclarations",[]);d(this,"body");d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"parent");d(this,"detachedChildren",[]);d(this,"currentIterationNumberArgumentDeclaration");d(this,"currentValueArgumentDeclaration",null);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const m=N(e.parent);i=t.get(m)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(m=>{const R=N(m);return t.get(R)}),l=e.calledBySuccess.map(m=>{const R=N(m);return t.get(R)}),p=e.calledByError.map(m=>{const R=N(m);return t.get(R)}),y={id:e.id,version:1,type:n.Loop,declaration:s,calledByEntry:o,calledBySuccess:l,calledByError:p,process:null,errorCalls:[],successCalls:[],inputs:[],outputs:[],body:null,breakStatements:[],continueStatements:[],outputsDeclarations:[],error:null,x:0,y:0,parent:i},h=v(y,t);return h.setParent(i),h.initChildren(),h}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0},declaration:{list:!1,types:[n.ActionDescriptor]}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),e.declaration?t.get(e.declaration)?t.conditionDeclarations.find(p=>p.id===e.declaration)||a.push(new E({id:`${e.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'declaration' property that isn't pointing to an action descriptor reserved for '${n.Condition}' entities.
49
49
  ${Go(t)}`,issue:null})):a.push(new E({id:`${e.id}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'declaration' property that isn't found in the project. The 'declaration' property must point to one of the built-in action descriptors reserved for '${n.Condition}' entities.
50
50
  ${Go(t)}`,issue:null})):a.push(new E({id:`${e.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' is missing the 'declaration' property. This property is required for a '${e.type}' entity and must point to one of the built-in action descriptors reserved for '${n.Condition}' entities.
51
51
  ${Go(t)}`,issue:null})),{errors:a,modifiedData:i}}static fromReturnDeclarationToBodyArgumentDeclarationName(e){return`Previous iteration results of '${C(e,e.project)}'`}static fromBodyArgumentDeclarationToReturnDeclarationName(e){const t=e.name.replace("Previous iteration results of '","");return t.slice(0,t.length-1)}static fromReturnDeclarationToLoopOutputDeclarationName(e){return`Result list of '${C(e,e.project)}'`}static fromLoopOutputDeclarationToReturnDeclarationName(e){const t=e.name.replace("Result list of '","");return t.slice(0,t.length-1)}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
52
52
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
53
- You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addLoop(this),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutputDeclaration(e){return this.outputsDeclarations.includes(e)?this:(this.outputsDeclarations.push(e),this)}removeOutputDeclaration(e){const t=this.outputsDeclarations.findIndex(i=>i.id===e.id);return t>-1&&this.outputsDeclarations.splice(t,1),this}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}setBody(e){return this.body=e,this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}replaceDetachedChild(e,t){const i=this.detachedChildren.indexOf(e);return i!==-1&&(this.detachedChildren[i]=t),this}subscribeDetachedChild(e){return this.detachedChildren.includes(e)||this.detachedChildren.push(e),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this.initialData.body&&(this.body=v(this.initialData.body,this.project),this.body.setParent(this),this.body.initChildren()),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.syncChildren(),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.body.remove({ignoreUpstream:!0,seenEntities:t}),this.error){const{affected:s,removed:o}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.body.restore({seenEntities:e}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.error?this.error.toFlat(e):[],...this.body?this.body.toFlat(e):[],...this.continueStatements.flatMap(i=>i.toFlat(e)),...this.breakStatements.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.process?this.process.toFlatIds(e):[],...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.error?this.error.toFlatIds(e):[],...this.body?this.body.toFlatIds(e):[],...this.continueStatements.flatMap(i=>i.toFlatIds(e)),...this.breakStatements.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:((e=this.process)==null?void 0:e.toJSON())||null,declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),outputsDeclarations:this.outputsDeclarations.map(i=>i.toJSON()),successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),error:((t=this.error)==null?void 0:t.toJSON())||null,body:this.body.toJSON(),parent:this.parent.toReference(),breakStatements:this.breakStatements.map(i=>i.toJSON()),continueStatements:this.continueStatements.map(i=>i.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i,a;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:((e=this.declaration)==null?void 0:e.toReference())||null,body:((t=this.body)==null?void 0:t.toReference())||null,inputs:this.inputs.map(s=>s.toReference()),outputs:this.outputs.map(s=>s.toReference()),outputsDeclarations:this.outputsDeclarations.map(s=>s.toReference()),successCalls:this.successCalls.map(s=>s.toReference()),errorCalls:this.errorCalls.map(s=>s.toReference()),process:((i=this.process)==null?void 0:i.toReference())||null,calledBySuccess:this.calledBySuccess.map(s=>s.toReference()),calledByError:this.calledByError.map(s=>s.toReference()),calledByEntry:this.calledByEntry.map(s=>s.toReference()),continueStatements:this.continueStatements.map(s=>s.toReference()),breakStatements:this.breakStatements.map(s=>s.toReference()),error:((a=this.error)==null?void 0:a.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.body)==null?void 0:i.toFlatJSON(e))||[],...this.successCalls.flatMap(a=>a.toFlatJSON(e)),...this.errorCalls.flatMap(a=>a.toFlatJSON(e)),...this.inputs.flatMap(a=>a.toFlatJSON(e)),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.continueStatements.flatMap(a=>a.toFlatJSON(e)),...this.breakStatements.flatMap(a=>a.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[],...this.process?this.process.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),declaration:this.declaration.id,parent:e}}toFlatGenerationTarget(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.body)==null?void 0:i.toFlatGenerationTarget(e))||[],...this.successCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.inputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.outputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.continueStatements.flatMap(a=>a.toFlatGenerationTarget(e)),...this.breakStatements.flatMap(a=>a.toFlatGenerationTarget(e)),...this.error?this.error.toFlatGenerationTarget(e):[],...this.process?this.process.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),this.continueStatements.forEach(i=>i.clearErrors()),this.breakStatements.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=d2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.body?this.body.getErrors():[],...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new z(this.toJSON(),this.project)}getVariableInstances(){return this.body?re(this.body).filter(i=>i.type===n.VariableInstance):[]}addReturnStatement(e){return Fe.includes(this.parent.type)&&this.parent.addReturnStatement(e),this}removeReturnStatement(e){return Fe.includes(this.parent.type)&&this.parent.removeReturnStatement(e),this}addBreakStatement(e){return this.breakStatements.includes(e)||this.breakStatements.push(e),this}removeBreakStatement(e){const t=this.breakStatements.indexOf(e);return t!==-1&&this.breakStatements.splice(t,1),this}addContinueStatement(e){return this.continueStatements.includes(e)||this.continueStatements.push(e),this}removeContinueStatement(e){const t=this.continueStatements.indexOf(e);return t!==-1&&this.continueStatements.splice(t,1),this}getUniqueReturnDeclarations(){const e=[];return[...this.breakStatements,...this.continueStatements].forEach(i=>{i.outputs.forEach(s=>{e.find(l=>l===s||C(l,this.project)===C(s,this.project)&&Ut(l.dataType,s.dataType))||e.push(s)})}),b(e)}syncTerminationStatements(){const e=[],t=[],i=[],a=this.getUniqueReturnDeclarations();return[...this.breakStatements,...this.continueStatements].forEach(o=>{const l=o.outputs,p=a.filter(y=>!l.find(h=>C(y,this.project)===C(h,this.project)&&Ut(y.dataType,h.dataType)));p.length&&e.push(o),p.forEach(y=>{const h=y.clone(o);h.addSelfToProject(),t.push(h)})}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncBodyInputIndexes(){const e=[],t=[],i=[];return this.body.inputs.sort((s,o)=>s.index-o.index),this.body.inputs.forEach((s,o)=>{s.index!==o&&(s.sync({index:o}),e.push(s))}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncBodyArgumentsDeclarations(){const e=[],t=[],i=[],{updated:a,added:s,removed:o}=this.syncFixedBodyArgumentDeclarations();e.push(...a),t.push(...s),i.push(...o);const l=this.getUniqueReturnDeclarations(),p=this.body.inputs;l.sort((R,g)=>R.index-g.index),l.forEach(R=>{const g=R.getDataType();let A=p.find(ae=>C(ae,this.project)===z.fromReturnDeclarationToBodyArgumentDeclarationName(R)&&Ut(ae.dataType,R.dataType));if(!A){const ae=z.fromReturnDeclarationToBodyArgumentDeclarationName(R),Je={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:ae,description:`Aggretated list of all previously outputted values from each iteration by the output '${C(R,this.project)}'`,dataType:null,implements:null,index:R.index,required:R.required,parent:this.body.toReference(),writesValues:[]},gt=v(Je,this.project);gt.setParent(this.body),gt.initChildren(),gt.addSelfToProject(),t.push(gt),A=gt}const I=this.body.inputs.find(ae=>ae.index===A.index&&ae!==A),F=this.body.inputs.filter(ae=>ae!==A);let k=A.index;I&&(k=Math.max(...F.map(ae=>ae.index))+1),A.index!==k&&(A.sync({index:k}),e.push(A));const oe=A.getDataType();let fe=oe;if(g)if(!oe||!Ut(oe,g)){if(!fe){const ae=g.clone(A);ae.addSelfToProject(),fe=ae,t.push(ae),e.push(A)}fe.merge(g),fe.sync({isList:!0})}else fe.isList||(fe.sync({isList:!0}),e.push(fe));if(!g&&!fe){const ae={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!0,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},Je=v(ae,this.project);Je.sync({isList:!0}),Je.setParent(A),Je.initChildren(),Je.addSelfToProject(),t.push(Je)}});const{updated:y,added:h,removed:m}=this.removeExtraBodyArgumentDeclarations();return e.push(...y),t.push(...h),i.push(...m),{updated:b(e),added:b(t),removed:b(i),self:this}}syncOutputsDeclarations(){const e=[],t=[],i=[],a=this.getUniqueReturnDeclarations(),s=this.outputsDeclarations;return a.forEach((l,p)=>{l.index!==p&&(l.sync({index:p}),e.push(l))}),a.forEach(l=>{const p=l.getDataType();let h=s.find(g=>C(g,this.project)===z.fromReturnDeclarationToLoopOutputDeclarationName(l)&&Ut(g.dataType,l.dataType));if(!h){const g=z.fromReturnDeclarationToLoopOutputDeclarationName(l),D={id:_.UUID.uuid(),version:1,type:n.ValueDescriptor,name:g,description:`Aggretated list of all previously outputted values from each iteration by the output '${C(l,this.project)}'`,dataType:null,index:l.index,required:l.required,parent:this.toReference()},A=v(D,this.project);A.setParent(this),A.initChildren(),A.addSelfToProject(),t.push(A),h=A}h.index!==l.index&&(h.sync({index:l.index}),e.push(h));let R=h.getDataType();if(p)if(!R||!Ut(R,p)){if(!R){const g=p.clone(h);g.addSelfToProject(),R=g,t.push(g),e.push(h)}R.merge(p),R.sync({isList:!0})}else R.isList||(R.sync({isList:!0}),e.push(R));if(!p&&!R){const g={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!0,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:h.toReference()},D=v(g,this.project);D.sync({isList:!0}),D.setParent(h),D.initChildren(),D.addSelfToProject(),t.push(D)}}),s.filter(l=>!a.find(y=>C(l,this.project)===z.fromReturnDeclarationToLoopOutputDeclarationName(y))).forEach(l=>{const{affected:p,removed:y}=l.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...p),i.push(...y)}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncOutputMaps(){const e=[],t=[],i=[],a=this.outputsDeclarations,s=this.outputs;return a.forEach(l=>{var h;let y=s.find(m=>{var R,g;return((R=m.declaration)==null?void 0:R.id)===l.id&&Ut((g=m.declaration)==null?void 0:g.dataType,l.dataType)});if(y)((h=y.declaration)==null?void 0:h.id)!==l.id&&(y.setDeclaration(l),e.push(y));else{const m={id:_.UUID.uuid(),version:1,type:n.OutputMap,index:l.index,declaration:l.toJSON(),writesValues:[],parent:this.toReference()},R=v(m,this.project);R.setParent(this),R.initChildren(),R.addSelfToProject(),t.push(R),y=R}y.index!==l.index&&(y.sync({index:l.index}),e.push(y))}),s.filter(l=>!a.find(y=>{var h;return((h=l.declaration)==null?void 0:h.id)===y.id})).forEach(l=>{const{affected:p,removed:y}=l.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...p),i.push(...y)}),{updated:b(e),added:b(t),removed:b(i),self:this}}createCurrentIterationNumberArgumentDeclaration(){const e=[],t=[],i=[];let s=this.body.inputs.find(y=>{var h;return y.name===z.CURRENT_ITERATION_NUMBER_ARG_NAME||y.id===((h=this.currentIterationNumberArgumentDeclaration)==null?void 0:h.id)});const o=this.getCurrentIterationNumberBuiltInValueDescriptor();if(!s){const y={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_ITERATION_NUMBER_ARG_NAME,description:"The number of the current iteration",dataType:null,implements:o==null?void 0:o.toJSON(),index:this.body.inputs.length,required:!0,parent:this.body.toReference(),writesValues:[]},h=v(y,this.project);h.setParent(this.body),h.initChildren(),h.addSelfToProject(),t.push(h),s=h}!s.index&&s.index!==0&&(s.sync({index:0}),e.push(s)),(!s.implements||s.implements.id!==o.id)&&(s.setImplements(o),e.push(s));let p=s.getDataType();if(!p){const y={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:s.toReference()},h=v(y,this.project);h.setParent(s),h.initChildren(),h.addSelfToProject(),t.push(h),p=h}if(!p.entity||p.entity.type!==n.PrimitiveEntity||p.entity.name!==P.Number||p.entity.id!==B["primitive-entity"].number.id){const y=this.project.getBuiltIn(B["primitive-entity"].number.id);p.setEntity(y),e.push(p)}return this.currentIterationNumberArgumentDeclaration=s,{updated:b(e),added:b(t),removed:b(i),self:this}}removeExtraBodyArgumentDeclarations(){const e=[],t=[],i=[],a=this.body.inputs,s=this.getUniqueReturnDeclarations();return a.filter(l=>l===this.currentIterationNumberArgumentDeclaration||l===this.currentValueArgumentDeclaration?!1:!s.find(y=>C(l,this.project)===z.fromReturnDeclarationToBodyArgumentDeclarationName(y))).forEach(l=>{const{affected:p,removed:y}=l.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...p),i.push(...y)}),{updated:b(e),added:b(t),removed:b(i),self:this}}createCurrentValueInputBasedOnInputMap(){var l,p,y,h,m;const e=[],t=[],i=[];switch(this.declaration.id){case $.List:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.List].body.inputs.currentValue.id}),g=this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.List].inputs.list.id});if(!g)break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop][$.List].inputs.list.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(!F){const oe={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},fe=v(oe,this.project);fe.setParent(A),fe.initChildren(),fe.addSelfToProject(),t.push(fe),F=fe}const k=g.getDataType();F.merge(k),F.sync({isList:!1})}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}case $.ManualFlow:{this.currentValueArgumentDeclaration=null;break}case $.Counted:{this.currentValueArgumentDeclaration=null;break}case $.ObjectKeys:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.ObjectKeys].body.inputs.currentValue.id});if(!this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.ObjectKeys].inputs.object.id}))break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop][$.ObjectKeys].inputs.object.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(F){const k=this.project.getBuiltIn(B["primitive-entity"].string.id);((l=F.entity)==null?void 0:l.id)!==k.id&&(F.setEntity(k),e.push(F))}else{const k={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},oe=v(k,this.project);oe.setParent(A),oe.initChildren(),oe.addSelfToProject(),F=oe}}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}case $.ObjectValues:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.ObjectValues].body.inputs.currentValue.id}),g=this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.ObjectValues].inputs.object.id});if(!g)break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop][$.ObjectValues].inputs.object.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(F){const k=g.getDataType(),oe=((y=k==null?void 0:k.entity)==null?void 0:y.properties)||[];(h=F.orChildrenGroup)==null||h.forEach(fe=>{const{affected:ae,removed:Je}=fe.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...ae),i.push(...Je)}),oe.forEach(fe=>{const ae=fe.getDataType();if(ae){const Je=ae.clone(F);Je.sync({parentRelationType:Ke.OrDataTypeGroup}),Je.addSelfToProject(),t.push(Je)}else{const Je={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parentRelationType:Ke.OrDataTypeGroup,parent:F.toReference()},gt=v(Je,this.project);gt.setParent(F),gt.initChildren(),gt.addSelfToProject(),t.push(gt)}})}else{const k={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},oe=v(k,this.project);oe.setParent(A),oe.initChildren(),oe.addSelfToProject(),F=oe;const fe=g.getDataType();(((p=fe==null?void 0:fe.entity)==null?void 0:p.properties)||[]).forEach(Je=>{const gt=Je.getDataType();if(gt){const Jr=gt.clone(oe);Jr.sync({parentRelationType:Ke.OrDataTypeGroup}),Jr.addSelfToProject(),t.push(Jr)}else{const Jr={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parentRelationType:Ke.OrDataTypeGroup,parent:oe.toReference()},zo=v(Jr,this.project);zo.setParent(oe),zo.initChildren(),zo.addSelfToProject(),t.push(zo)}})}}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}case $.String:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.String].body.inputs.currentValue.id});if(!this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.String].inputs.string.id}))break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop]["string-loop"].inputs.string.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(F){const k=this.project.getBuiltIn(B["primitive-entity"].string.id);((m=F.entity)==null?void 0:m.id)!==k.id&&(F.setEntity(k),e.push(F))}else{const k={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},oe=v(k,this.project);oe.setParent(A),oe.initChildren(),oe.addSelfToProject(),t.push(oe),F=oe}}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}}const{updated:a,added:s,removed:o}=this.removeExtraBodyArgumentDeclarations();return e.push(...a),t.push(...s),i.push(...o),{updated:b(e),added:b(t),removed:b(i),self:this}}syncFixedBodyArgumentDeclarations(){const e=[],t=[],i=[],{updated:a,added:s,removed:o}=this.createCurrentIterationNumberArgumentDeclaration();e.push(...a),t.push(...s),i.push(...o);const{updated:l,added:p,removed:y}=this.createCurrentValueInputBasedOnInputMap();return e.push(...l),t.push(...p),i.push(...y),{updated:b(e),added:b(t),removed:b(i),self:this}}syncInputMaps(){const e=[],t=[],i=[];switch(this.declaration.id){case $.List:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["list-loop"].inputs.list.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["list-loop"].inputs.list.id){const s=this.project.get(B[n.Loop]["list-loop"].inputs.list.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["list-loop"].inputs.list.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.ManualFlow:{this.inputs.forEach(a=>{a.remove(),i.push(a)});break}case $.Counted:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["counted-loop"].inputs.number.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["counted-loop"].inputs.number.id){const s=this.project.get(B[n.Loop]["counted-loop"].inputs.number.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["counted-loop"].inputs.number.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.ObjectKeys:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["object-keys-loop"].inputs.object.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["object-keys-loop"].inputs.object.id){const s=this.project.get(B[n.Loop]["object-keys-loop"].inputs.object.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["object-keys-loop"].inputs.object.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.ObjectValues:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["object-values-loop"].inputs.object.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["object-values-loop"].inputs.object.id){const s=this.project.get(B[n.Loop]["object-values-loop"].inputs.object.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["object-values-loop"].inputs.object.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.String:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["string-loop"].inputs.string.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["string-loop"].inputs.string.id){const s=this.project.get(B[n.Loop]["string-loop"].inputs.string.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["string-loop"].inputs.string.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}}return{updated:b(e),added:b(t),removed:b(i),self:this}}getCurrentValueBuiltInValueDescriptor(){var t;const e=(t=B[n.Loop][this.declaration.id].body.inputs.currentValue)==null?void 0:t.id;return e?this.project.get(e):null}getCurrentIterationNumberBuiltInValueDescriptor(){const e=B[n.Loop][this.declaration.id].body.inputs.iterationNumber.id;return this.project.get(e)}syncBody(){var o;const e=[],t=[],i=[],a=B[n.Loop][this.declaration.id].body.id,s=this.project.getBuiltIn(a);if(this.body)((o=this.body.implements)==null?void 0:o.id)!==s.id&&(this.body.setImplements(s),this.body.setParent(this),e.push(this.body));else{const l={id:_.UUID.uuid(),version:1,type:n.FunctionDeclaration,name:s.name,description:null,inputs:[],index:null,returnStatements:[],calls:[],collapsed:!1,private:!1,implements:s.toJSON(),x:0,y:0,parent:this.toReference()},p=v(l,this.project);p.initChildren(),p.setParent(this),p.addSelfToProject(),t.push(p)}return{self:this,updated:b(e),added:b(t),removed:b(i)}}syncChildren(){const e=[],t=[],i=[],{updated:a,added:s,removed:o}=this.syncBody();e.push(...a),t.push(...s),i.push(...o);const{updated:l,added:p,removed:y}=this.syncInputMaps();e.push(...l),t.push(...p),i.push(...y);const{updated:h,added:m,removed:R}=this.syncTerminationStatements();e.push(...h),t.push(...m),i.push(...R);const{updated:g,added:D,removed:A}=this.syncBodyArgumentsDeclarations();e.push(...g),t.push(...D),i.push(...A);const{updated:I,added:F,removed:k}=this.syncBodyInputIndexes();e.push(...I),t.push(...F),i.push(...k);const{updated:oe,added:fe,removed:ae}=this.syncOutputsDeclarations();e.push(...oe),t.push(...fe),i.push(...ae);const{updated:Je,added:gt,removed:Jr}=this.syncOutputMaps();return e.push(...Je),t.push(...gt),i.push(...Jr),{self:this,updated:b(e),added:b(t),removed:b(i)}}};d(z,"CURRENT_ITERATION_NUMBER_ARG_NAME","Current iteration number"),d(z,"CURRENT_VALUE_ARG_NAME","Current value"),d(z,"MUTABLE_BASE_PROPERTIES",[]),d(z,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(z,"BASE_PROPERTIES",[...z.MUTABLE_BASE_PROPERTIES,...z.INMUTABLE_BASE_PROPERTIES]),d(z,"MUTABLE_META_PROPERTIES",[...z.MUTABLE_BASE_PROPERTIES,"x","y"]),d(z,"INMUTABLE_META_PROPERTIES",[...z.INMUTABLE_BASE_PROPERTIES]),d(z,"META_PROPERTIES",[...z.MUTABLE_META_PROPERTIES,...z.INMUTABLE_META_PROPERTIES]),d(z,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(z,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(z,"UPSTREAM_PROPERTIES",[...z.MUTABLE_UPSTREAM_PROPERTIES,...z.INMUTABLE_UPSTREAM_PROPERTIES]),d(z,"MUTABLE_DOWNSTREAM_PROPERTIES",["body","inputs","outputs","outputsDeclarations","successCalls","errorCalls","error","breakStatements","continueStatements"]),d(z,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(z,"DOWNSTREAM_PROPERTIES",[...z.MUTABLE_DOWNSTREAM_PROPERTIES,...z.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(z,"PROPERTIES",[...z.META_PROPERTIES,...z.UPSTREAM_PROPERTIES,...z.DOWNSTREAM_PROPERTIES]);let _r=z;function u2(r){const e=l6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(o=>o.validate());const s=[...Cn(r)];return ie(r.errors,s)}const ve=class ve{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.Condition);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"declaration");d(this,"inputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const h=N(e.parent);i=t.get(h)}const a=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),s=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),o=e.calledByError.map(h=>{const m=N(h);return t.get(m)});let l;if(e.declaration){const h=N(e.declaration);l=t.get(h)}const p={id:e.id,version:1,type:n.Condition,declaration:l,calledByEntry:a,calledBySuccess:s,calledByError:o,errorCalls:[],successCalls:[],inputs:[],x:0,y:0,parent:i},y=v(p,t);return y.setParent(i),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),e.declaration?t.get(e.declaration)?t.conditionDeclarations.find(p=>p.id===e.declaration)||a.push(new E({id:`${e.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'declaration' property that isn't pointing to an action descriptor reserved for '${n.Condition}' entities.
53
+ You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addLoop(this),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutputDeclaration(e){return this.outputsDeclarations.includes(e)?this:(this.outputsDeclarations.push(e),this)}removeOutputDeclaration(e){const t=this.outputsDeclarations.findIndex(i=>i.id===e.id);return t>-1&&this.outputsDeclarations.splice(t,1),this}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}setBody(e){return this.body=e,this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}replaceDetachedChild(e,t){const i=this.detachedChildren.indexOf(e);return i!==-1&&(this.detachedChildren[i]=t),this}subscribeDetachedChild(e){return this.detachedChildren.includes(e)||this.detachedChildren.push(e),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this.initialData.body&&(this.body=v(this.initialData.body,this.project),this.body.setParent(this),this.body.initChildren()),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.syncChildren(),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.body.remove({ignoreUpstream:!0,seenEntities:t}),this.error){const{affected:s,removed:o}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.body.restore({seenEntities:e}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.error?this.error.toFlat(e):[],...this.body?this.body.toFlat(e):[],...this.continueStatements.flatMap(i=>i.toFlat(e)),...this.breakStatements.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.process?this.process.toFlatIds(e):[],...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.error?this.error.toFlatIds(e):[],...this.body?this.body.toFlatIds(e):[],...this.continueStatements.flatMap(i=>i.toFlatIds(e)),...this.breakStatements.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:((e=this.process)==null?void 0:e.toJSON())||null,declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),outputsDeclarations:this.outputsDeclarations.map(i=>i.toJSON()),successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),error:((t=this.error)==null?void 0:t.toJSON())||null,body:this.body.toJSON(),parent:this.parent.toReference(),breakStatements:this.breakStatements.map(i=>i.toJSON()),continueStatements:this.continueStatements.map(i=>i.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i,a;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:((e=this.declaration)==null?void 0:e.toReference())||null,body:((t=this.body)==null?void 0:t.toReference())||null,inputs:this.inputs.map(s=>s.toReference()),outputs:this.outputs.map(s=>s.toReference()),outputsDeclarations:this.outputsDeclarations.map(s=>s.toReference()),successCalls:this.successCalls.map(s=>s.toReference()),errorCalls:this.errorCalls.map(s=>s.toReference()),process:((i=this.process)==null?void 0:i.toReference())||null,calledBySuccess:this.calledBySuccess.map(s=>s.toReference()),calledByError:this.calledByError.map(s=>s.toReference()),calledByEntry:this.calledByEntry.map(s=>s.toReference()),continueStatements:this.continueStatements.map(s=>s.toReference()),breakStatements:this.breakStatements.map(s=>s.toReference()),error:((a=this.error)==null?void 0:a.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.body)==null?void 0:i.toFlatJSON(e))||[],...this.successCalls.flatMap(a=>a.toFlatJSON(e)),...this.errorCalls.flatMap(a=>a.toFlatJSON(e)),...this.inputs.flatMap(a=>a.toFlatJSON(e)),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.continueStatements.flatMap(a=>a.toFlatJSON(e)),...this.breakStatements.flatMap(a=>a.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[],...this.process?this.process.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),declaration:this.declaration.id,parent:e}}toFlatGenerationTarget(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.body)==null?void 0:i.toFlatGenerationTarget(e))||[],...this.successCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.inputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.outputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.continueStatements.flatMap(a=>a.toFlatGenerationTarget(e)),...this.breakStatements.flatMap(a=>a.toFlatGenerationTarget(e)),...this.error?this.error.toFlatGenerationTarget(e):[],...this.process?this.process.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),this.continueStatements.forEach(i=>i.clearErrors()),this.breakStatements.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=d2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.body?this.body.getErrors():[],...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new z(this.toJSON(),this.project)}getVariableInstances(){return this.body?re(this.body).filter(i=>i.type===n.VariableInstance):[]}addReturnStatement(e){return Ue.includes(this.parent.type)&&this.parent.addReturnStatement(e),this}removeReturnStatement(e){return Ue.includes(this.parent.type)&&this.parent.removeReturnStatement(e),this}addBreakStatement(e){return this.breakStatements.includes(e)||this.breakStatements.push(e),this}removeBreakStatement(e){const t=this.breakStatements.indexOf(e);return t!==-1&&this.breakStatements.splice(t,1),this}addContinueStatement(e){return this.continueStatements.includes(e)||this.continueStatements.push(e),this}removeContinueStatement(e){const t=this.continueStatements.indexOf(e);return t!==-1&&this.continueStatements.splice(t,1),this}getUniqueReturnDeclarations(){const e=[];return[...this.breakStatements,...this.continueStatements].forEach(i=>{i.outputs.forEach(s=>{e.find(l=>l===s||C(l,this.project)===C(s,this.project)&&Ut(l.dataType,s.dataType))||e.push(s)})}),b(e)}syncTerminationStatements(){const e=[],t=[],i=[],a=this.getUniqueReturnDeclarations();return[...this.breakStatements,...this.continueStatements].forEach(o=>{const l=o.outputs,p=a.filter(y=>!l.find(h=>C(y,this.project)===C(h,this.project)&&Ut(y.dataType,h.dataType)));p.length&&e.push(o),p.forEach(y=>{const h=y.clone(o);h.addSelfToProject(),t.push(h)})}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncBodyInputIndexes(){const e=[],t=[],i=[];return this.body.inputs.sort((s,o)=>s.index-o.index),this.body.inputs.forEach((s,o)=>{s.index!==o&&(s.sync({index:o}),e.push(s))}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncBodyArgumentsDeclarations(){const e=[],t=[],i=[],{updated:a,added:s,removed:o}=this.syncFixedBodyArgumentDeclarations();e.push(...a),t.push(...s),i.push(...o);const l=this.getUniqueReturnDeclarations(),p=this.body.inputs;l.sort((R,g)=>R.index-g.index),l.forEach(R=>{const g=R.getDataType();let A=p.find(ae=>C(ae,this.project)===z.fromReturnDeclarationToBodyArgumentDeclarationName(R)&&Ut(ae.dataType,R.dataType));if(!A){const ae=z.fromReturnDeclarationToBodyArgumentDeclarationName(R),Je={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:ae,description:`Aggretated list of all previously outputted values from each iteration by the output '${C(R,this.project)}'`,dataType:null,implements:null,index:R.index,required:R.required,parent:this.body.toReference(),writesValues:[]},gt=v(Je,this.project);gt.setParent(this.body),gt.initChildren(),gt.addSelfToProject(),t.push(gt),A=gt}const I=this.body.inputs.find(ae=>ae.index===A.index&&ae!==A),F=this.body.inputs.filter(ae=>ae!==A);let k=A.index;I&&(k=Math.max(...F.map(ae=>ae.index))+1),A.index!==k&&(A.sync({index:k}),e.push(A));const oe=A.getDataType();let fe=oe;if(g)if(!oe||!Ut(oe,g)){if(!fe){const ae=g.clone(A);ae.addSelfToProject(),fe=ae,t.push(ae),e.push(A)}fe.merge(g),fe.sync({isList:!0})}else fe.isList||(fe.sync({isList:!0}),e.push(fe));if(!g&&!fe){const ae={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!0,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},Je=v(ae,this.project);Je.sync({isList:!0}),Je.setParent(A),Je.initChildren(),Je.addSelfToProject(),t.push(Je)}});const{updated:y,added:h,removed:m}=this.removeExtraBodyArgumentDeclarations();return e.push(...y),t.push(...h),i.push(...m),{updated:b(e),added:b(t),removed:b(i),self:this}}syncOutputsDeclarations(){const e=[],t=[],i=[],a=this.getUniqueReturnDeclarations(),s=this.outputsDeclarations;return a.forEach((l,p)=>{l.index!==p&&(l.sync({index:p}),e.push(l))}),a.forEach(l=>{const p=l.getDataType();let h=s.find(g=>C(g,this.project)===z.fromReturnDeclarationToLoopOutputDeclarationName(l)&&Ut(g.dataType,l.dataType));if(!h){const g=z.fromReturnDeclarationToLoopOutputDeclarationName(l),D={id:_.UUID.uuid(),version:1,type:n.ValueDescriptor,name:g,description:`Aggretated list of all previously outputted values from each iteration by the output '${C(l,this.project)}'`,dataType:null,index:l.index,required:l.required,parent:this.toReference()},A=v(D,this.project);A.setParent(this),A.initChildren(),A.addSelfToProject(),t.push(A),h=A}h.index!==l.index&&(h.sync({index:l.index}),e.push(h));let R=h.getDataType();if(p)if(!R||!Ut(R,p)){if(!R){const g=p.clone(h);g.addSelfToProject(),R=g,t.push(g),e.push(h)}R.merge(p),R.sync({isList:!0})}else R.isList||(R.sync({isList:!0}),e.push(R));if(!p&&!R){const g={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!0,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:h.toReference()},D=v(g,this.project);D.sync({isList:!0}),D.setParent(h),D.initChildren(),D.addSelfToProject(),t.push(D)}}),s.filter(l=>!a.find(y=>C(l,this.project)===z.fromReturnDeclarationToLoopOutputDeclarationName(y))).forEach(l=>{const{affected:p,removed:y}=l.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...p),i.push(...y)}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncOutputMaps(){const e=[],t=[],i=[],a=this.outputsDeclarations,s=this.outputs;return a.forEach(l=>{var h;let y=s.find(m=>{var R,g;return((R=m.declaration)==null?void 0:R.id)===l.id&&Ut((g=m.declaration)==null?void 0:g.dataType,l.dataType)});if(y)((h=y.declaration)==null?void 0:h.id)!==l.id&&(y.setDeclaration(l),e.push(y));else{const m={id:_.UUID.uuid(),version:1,type:n.OutputMap,index:l.index,declaration:l.toJSON(),writesValues:[],parent:this.toReference()},R=v(m,this.project);R.setParent(this),R.initChildren(),R.addSelfToProject(),t.push(R),y=R}y.index!==l.index&&(y.sync({index:l.index}),e.push(y))}),s.filter(l=>!a.find(y=>{var h;return((h=l.declaration)==null?void 0:h.id)===y.id})).forEach(l=>{const{affected:p,removed:y}=l.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...p),i.push(...y)}),{updated:b(e),added:b(t),removed:b(i),self:this}}createCurrentIterationNumberArgumentDeclaration(){const e=[],t=[],i=[];let s=this.body.inputs.find(y=>{var h;return y.name===z.CURRENT_ITERATION_NUMBER_ARG_NAME||y.id===((h=this.currentIterationNumberArgumentDeclaration)==null?void 0:h.id)});const o=this.getCurrentIterationNumberBuiltInValueDescriptor();if(!s){const y={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_ITERATION_NUMBER_ARG_NAME,description:"The number of the current iteration",dataType:null,implements:o==null?void 0:o.toJSON(),index:this.body.inputs.length,required:!0,parent:this.body.toReference(),writesValues:[]},h=v(y,this.project);h.setParent(this.body),h.initChildren(),h.addSelfToProject(),t.push(h),s=h}!s.index&&s.index!==0&&(s.sync({index:0}),e.push(s)),(!s.implements||s.implements.id!==o.id)&&(s.setImplements(o),e.push(s));let p=s.getDataType();if(!p){const y={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:s.toReference()},h=v(y,this.project);h.setParent(s),h.initChildren(),h.addSelfToProject(),t.push(h),p=h}if(!p.entity||p.entity.type!==n.PrimitiveEntity||p.entity.name!==P.Number||p.entity.id!==B["primitive-entity"].number.id){const y=this.project.getBuiltIn(B["primitive-entity"].number.id);p.setEntity(y),e.push(p)}return this.currentIterationNumberArgumentDeclaration=s,{updated:b(e),added:b(t),removed:b(i),self:this}}removeExtraBodyArgumentDeclarations(){const e=[],t=[],i=[],a=this.body.inputs,s=this.getUniqueReturnDeclarations();return a.filter(l=>l===this.currentIterationNumberArgumentDeclaration||l===this.currentValueArgumentDeclaration?!1:!s.find(y=>C(l,this.project)===z.fromReturnDeclarationToBodyArgumentDeclarationName(y))).forEach(l=>{const{affected:p,removed:y}=l.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...p),i.push(...y)}),{updated:b(e),added:b(t),removed:b(i),self:this}}createCurrentValueInputBasedOnInputMap(){var l,p,y,h,m;const e=[],t=[],i=[];switch(this.declaration.id){case $.List:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.List].body.inputs.currentValue.id}),g=this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.List].inputs.list.id});if(!g)break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop][$.List].inputs.list.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(!F){const oe={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},fe=v(oe,this.project);fe.setParent(A),fe.initChildren(),fe.addSelfToProject(),t.push(fe),F=fe}const k=g.getDataType();F.merge(k),F.sync({isList:!1})}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}case $.ManualFlow:{this.currentValueArgumentDeclaration=null;break}case $.Counted:{this.currentValueArgumentDeclaration=null;break}case $.ObjectKeys:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.ObjectKeys].body.inputs.currentValue.id});if(!this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.ObjectKeys].inputs.object.id}))break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop][$.ObjectKeys].inputs.object.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(F){const k=this.project.getBuiltIn(B["primitive-entity"].string.id);((l=F.entity)==null?void 0:l.id)!==k.id&&(F.setEntity(k),e.push(F))}else{const k={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},oe=v(k,this.project);oe.setParent(A),oe.initChildren(),oe.addSelfToProject(),F=oe}}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}case $.ObjectValues:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.ObjectValues].body.inputs.currentValue.id}),g=this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.ObjectValues].inputs.object.id});if(!g)break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop][$.ObjectValues].inputs.object.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(F){const k=g.getDataType(),oe=((y=k==null?void 0:k.entity)==null?void 0:y.properties)||[];(h=F.orChildrenGroup)==null||h.forEach(fe=>{const{affected:ae,removed:Je}=fe.remove({ignoreUpstream:!1,seenEntities:new Set});e.push(...ae),i.push(...Je)}),oe.forEach(fe=>{const ae=fe.getDataType();if(ae){const Je=ae.clone(F);Je.sync({parentRelationType:Ke.OrDataTypeGroup}),Je.addSelfToProject(),t.push(Je)}else{const Je={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parentRelationType:Ke.OrDataTypeGroup,parent:F.toReference()},gt=v(Je,this.project);gt.setParent(F),gt.initChildren(),gt.addSelfToProject(),t.push(gt)}})}else{const k={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},oe=v(k,this.project);oe.setParent(A),oe.initChildren(),oe.addSelfToProject(),F=oe;const fe=g.getDataType();(((p=fe==null?void 0:fe.entity)==null?void 0:p.properties)||[]).forEach(Je=>{const gt=Je.getDataType();if(gt){const Jr=gt.clone(oe);Jr.sync({parentRelationType:Ke.OrDataTypeGroup}),Jr.addSelfToProject(),t.push(Jr)}else{const Jr={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parentRelationType:Ke.OrDataTypeGroup,parent:oe.toReference()},zo=v(Jr,this.project);zo.setParent(oe),zo.initChildren(),zo.addSelfToProject(),t.push(zo)}})}}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}case $.String:{const R=this.body.inputs.find(A=>{var I;return((I=A.implements)==null?void 0:I.id)===B[n.Loop][$.String].body.inputs.currentValue.id});if(!this.inputs.find(A=>{var I;return((I=A.declaration)==null?void 0:I.id)===B[n.Loop][$.String].inputs.string.id}))break;const D=this.getCurrentValueBuiltInValueDescriptor();if(R){this.currentValueArgumentDeclaration=R;const A=this.project.get(B[n.Loop]["string-loop"].inputs.string.id);D&&(!R.implements||R.implements.id!==D.id)&&(R.setImplements(D),e.push(R));let F=R.getDataType();if(F){const k=this.project.getBuiltIn(B["primitive-entity"].string.id);((m=F.entity)==null?void 0:m.id)!==k.id&&(F.setEntity(k),e.push(F))}else{const k={id:_.UUID.uuid(),version:1,type:n.DataType,isList:!1,entity:null,isNullable:!1,constant:!1,defaultValue:null,asType:!1,like:!1,inferred:!1,andChildrenGroup:[],orChildrenGroup:[],parent:A.toReference()},oe=v(k,this.project);oe.setParent(A),oe.initChildren(),oe.addSelfToProject(),t.push(oe),F=oe}}else{const A={id:_.UUID.uuid(),version:1,type:n.ArgumentDeclaration,name:z.CURRENT_VALUE_ARG_NAME,description:null,index:this.body.inputs.length,required:!0,implements:D,writesValues:[],dataType:null,parent:this.body.toReference()},I=v(A,this.project);I.initChildren(),I.setParent(this.body),I.addSelfToProject(),D&&(!I.implements||I.implements.id!==D.id)&&(I.setImplements(D),e.push(I)),t.push(I),this.currentValueArgumentDeclaration=I}break}}const{updated:a,added:s,removed:o}=this.removeExtraBodyArgumentDeclarations();return e.push(...a),t.push(...s),i.push(...o),{updated:b(e),added:b(t),removed:b(i),self:this}}syncFixedBodyArgumentDeclarations(){const e=[],t=[],i=[],{updated:a,added:s,removed:o}=this.createCurrentIterationNumberArgumentDeclaration();e.push(...a),t.push(...s),i.push(...o);const{updated:l,added:p,removed:y}=this.createCurrentValueInputBasedOnInputMap();return e.push(...l),t.push(...p),i.push(...y),{updated:b(e),added:b(t),removed:b(i),self:this}}syncInputMaps(){const e=[],t=[],i=[];switch(this.declaration.id){case $.List:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["list-loop"].inputs.list.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["list-loop"].inputs.list.id){const s=this.project.get(B[n.Loop]["list-loop"].inputs.list.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["list-loop"].inputs.list.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.ManualFlow:{this.inputs.forEach(a=>{a.remove(),i.push(a)});break}case $.Counted:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["counted-loop"].inputs.number.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["counted-loop"].inputs.number.id){const s=this.project.get(B[n.Loop]["counted-loop"].inputs.number.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["counted-loop"].inputs.number.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.ObjectKeys:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["object-keys-loop"].inputs.object.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["object-keys-loop"].inputs.object.id){const s=this.project.get(B[n.Loop]["object-keys-loop"].inputs.object.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["object-keys-loop"].inputs.object.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.ObjectValues:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["object-values-loop"].inputs.object.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["object-values-loop"].inputs.object.id){const s=this.project.get(B[n.Loop]["object-values-loop"].inputs.object.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["object-values-loop"].inputs.object.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}case $.String:{let a=null;if(this.inputs.forEach(s=>{var o;((o=s.declaration)==null?void 0:o.id)===B[n.Loop]["string-loop"].inputs.string.id?a=s:(s.remove(),i.push(s))}),a){if(a.declaration.id!==B[n.Loop]["string-loop"].inputs.string.id){const s=this.project.get(B[n.Loop]["string-loop"].inputs.string.id);a.setDeclaration(s),e.push(a)}}else{const s=this.project.get(B[n.Loop]["string-loop"].inputs.string.id),o={id:_.UUID.uuid(),version:1,type:n.InputMap,name:null,description:null,index:0,declaration:s.toJSON(),readsValue:null,defaultValue:null,parent:this.toReference()},l=v(o,this.project);l.initChildren(),l.setParent(this),l.addSelfToProject(),t.push(l)}break}}return{updated:b(e),added:b(t),removed:b(i),self:this}}getCurrentValueBuiltInValueDescriptor(){var t;const e=(t=B[n.Loop][this.declaration.id].body.inputs.currentValue)==null?void 0:t.id;return e?this.project.get(e):null}getCurrentIterationNumberBuiltInValueDescriptor(){const e=B[n.Loop][this.declaration.id].body.inputs.iterationNumber.id;return this.project.get(e)}syncBody(){var o;const e=[],t=[],i=[],a=B[n.Loop][this.declaration.id].body.id,s=this.project.getBuiltIn(a);if(this.body)((o=this.body.implements)==null?void 0:o.id)!==s.id&&(this.body.setImplements(s),this.body.setParent(this),e.push(this.body));else{const l={id:_.UUID.uuid(),version:1,type:n.FunctionDeclaration,name:s.name,description:null,inputs:[],index:null,returnStatements:[],calls:[],collapsed:!1,private:!1,implements:s.toJSON(),x:0,y:0,parent:this.toReference()},p=v(l,this.project);p.initChildren(),p.setParent(this),p.addSelfToProject(),t.push(p)}return{self:this,updated:b(e),added:b(t),removed:b(i)}}syncChildren(){const e=[],t=[],i=[],{updated:a,added:s,removed:o}=this.syncBody();e.push(...a),t.push(...s),i.push(...o);const{updated:l,added:p,removed:y}=this.syncInputMaps();e.push(...l),t.push(...p),i.push(...y);const{updated:h,added:m,removed:R}=this.syncTerminationStatements();e.push(...h),t.push(...m),i.push(...R);const{updated:g,added:D,removed:A}=this.syncBodyArgumentsDeclarations();e.push(...g),t.push(...D),i.push(...A);const{updated:I,added:F,removed:k}=this.syncBodyInputIndexes();e.push(...I),t.push(...F),i.push(...k);const{updated:oe,added:fe,removed:ae}=this.syncOutputsDeclarations();e.push(...oe),t.push(...fe),i.push(...ae);const{updated:Je,added:gt,removed:Jr}=this.syncOutputMaps();return e.push(...Je),t.push(...gt),i.push(...Jr),{self:this,updated:b(e),added:b(t),removed:b(i)}}};d(z,"CURRENT_ITERATION_NUMBER_ARG_NAME","Current iteration number"),d(z,"CURRENT_VALUE_ARG_NAME","Current value"),d(z,"MUTABLE_BASE_PROPERTIES",[]),d(z,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(z,"BASE_PROPERTIES",[...z.MUTABLE_BASE_PROPERTIES,...z.INMUTABLE_BASE_PROPERTIES]),d(z,"MUTABLE_META_PROPERTIES",[...z.MUTABLE_BASE_PROPERTIES,"x","y"]),d(z,"INMUTABLE_META_PROPERTIES",[...z.INMUTABLE_BASE_PROPERTIES]),d(z,"META_PROPERTIES",[...z.MUTABLE_META_PROPERTIES,...z.INMUTABLE_META_PROPERTIES]),d(z,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(z,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(z,"UPSTREAM_PROPERTIES",[...z.MUTABLE_UPSTREAM_PROPERTIES,...z.INMUTABLE_UPSTREAM_PROPERTIES]),d(z,"MUTABLE_DOWNSTREAM_PROPERTIES",["body","inputs","outputs","outputsDeclarations","successCalls","errorCalls","error","breakStatements","continueStatements"]),d(z,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(z,"DOWNSTREAM_PROPERTIES",[...z.MUTABLE_DOWNSTREAM_PROPERTIES,...z.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(z,"PROPERTIES",[...z.META_PROPERTIES,...z.UPSTREAM_PROPERTIES,...z.DOWNSTREAM_PROPERTIES]);let _r=z;function u2(r){const e=l6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(o=>o.validate());const s=[...Cn(r)];return ie(r.errors,s)}const ve=class ve{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.Condition);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"declaration");d(this,"inputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const h=N(e.parent);i=t.get(h)}const a=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),s=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),o=e.calledByError.map(h=>{const m=N(h);return t.get(m)});let l;if(e.declaration){const h=N(e.declaration);l=t.get(h)}const p={id:e.id,version:1,type:n.Condition,declaration:l,calledByEntry:a,calledBySuccess:s,calledByError:o,errorCalls:[],successCalls:[],inputs:[],x:0,y:0,parent:i},y=v(p,t);return y.setParent(i),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),e.declaration?t.get(e.declaration)?t.conditionDeclarations.find(p=>p.id===e.declaration)||a.push(new E({id:`${e.id}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'declaration' property that isn't pointing to an action descriptor reserved for '${n.Condition}' entities.
54
54
  ${$o(t)}`,issue:null})):a.push(new E({id:`${e.id}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' has an 'declaration' property that isn't found in the project. The 'declaration' property must point to one of the built-in action descriptors reserved for '${n.Condition}' entities.
55
55
  ${$o(t)}`,issue:null})):a.push(new E({id:`${e.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type '${e.type}' with id '${e.id}' is missing the 'declaration' property. This property is required for a '${e.type}' entity and must point to one of the built-in action descriptors reserved for '${n.Condition}' entities.
56
56
  ${$o(t)}`,issue:null})),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
57
- If an entity is called by another, they must be in the same scope, which means they have the same parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addCondition(this),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this}removeOutput(e){return this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.syncMissingFixedInputs(),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.inputs.flatMap(i=>i.toFlat(e)),...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:this.declaration.toJSON(),successCalls:this.successCalls.map(e=>e.toJSON()),errorCalls:this.errorCalls.map(e=>e.toJSON()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),inputs:this.inputs.map(e=>e.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:this.declaration.toReference(),inputs:this.inputs.map(e=>e.toReference()),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,declaration:this.declaration.id,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.successCalls.forEach(e=>e.clearErrors()),this.errorCalls.forEach(e=>e.clearErrors()),this}validate(){const e=u2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e){return new ve(this.toJSON(),this.project)}removeUnrecognizedInputs(){const e=[],t=[],i=[];return this.inputs.forEach(a=>{if(!this.declaration.inputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedInputs(){const e=[],t=[],i=[],a=this.declaration.inputs.filter(p=>p.parentRelationType===O.FixedArguments&&!this.inputs.find(y=>y.declaration.id===p.id));this.inputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.inputs.forEach(m=>{m.index>=p.index&&m.sync({index:m.index+1})});const y={id:_.UUID.uuid(),version:1,type:n.InputMap,declaration:p.toJSON(),readsValue:null,defaultValue:null,index:p.index,name:null,description:null,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject()}),this.inputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedInputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}};d(ve,"MUTABLE_BASE_PROPERTIES",["operator"]),d(ve,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(ve,"BASE_PROPERTIES",[...ve.MUTABLE_BASE_PROPERTIES,...ve.INMUTABLE_BASE_PROPERTIES]),d(ve,"MUTABLE_META_PROPERTIES",["x","y"]),d(ve,"INMUTABLE_META_PROPERTIES",[...ve.INMUTABLE_BASE_PROPERTIES]),d(ve,"META_PROPERTIES",[...ve.MUTABLE_META_PROPERTIES,...ve.INMUTABLE_META_PROPERTIES]),d(ve,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(ve,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(ve,"UPSTREAM_PROPERTIES",[...ve.MUTABLE_UPSTREAM_PROPERTIES,...ve.INMUTABLE_UPSTREAM_PROPERTIES]),d(ve,"MUTABLE_DOWNSTREAM_PROPERTIES",["successCalls","errorCalls","inputsDeclarations","inputs"]),d(ve,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ve,"DOWNSTREAM_PROPERTIES",[...ve.MUTABLE_DOWNSTREAM_PROPERTIES,...ve.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ve,"PROPERTIES",[...ve.META_PROPERTIES,...ve.UPSTREAM_PROPERTIES,...ve.DOWNSTREAM_PROPERTIES]);let Nr=ve;class jP{constructor(){d(this,"initialData")}}class p2{}class y2 extends jP{}class h2{}class f2{}class m2{}class Tu{}class T2 extends Tu{}class E2 extends Tu{}class b2{}class La{static initReadsValue(e){if(e.initialData.readsValue&&e.initialData.readsValue.type!==n.GenericReference)e.readsValue=v(e.initialData.readsValue,e.project);else if(e.initialData.readsValue&&e.initialData.readsValue.type===n.GenericReference){const t=Nt(e.initialData.readsValue,e.project);t&&(e.readsValue=t)}if(e.readsValue){if($e.includes(e.readsValue.type)){let t=e.parent;ut.includes(t.type)||(t=t.parent);const i=e.type===n.InputMap&&e.parent.type===n.Loop;i&&(t=e.parent.parent),e.readsValue.setParent(t),e.readsValue.initChildren(),!i&&t.detachedChildren.includes(e)?t.replaceDetachedChild(e,e.readsValue):i||t.subscribeDetachedChild(e.readsValue)}e.readsValue.addValueReader(e)}return e.readsValue}}class Ga{static initWritesValues(e,t){const i=e.initialData.writesValues.reduce((s,o)=>{if(o.type===n.GenericReference||e.writesValues.some(p=>p.id===o.id))return s;const l=v(o,e.project);return l.setValueWriter(e),$e.includes(l.type)&&(l.setParent(t),l.initChildren()),[...s,l]},[]),a=[...e.writesValues];return e.writesValues=b([...a,...i]),e.writesValues}}class R2{}function v2(r){var l;const e=Y6(),t=r.toJSON();e.safeParse(t).success,(l=r.dataType)==null||l.validate(),r.inputs.forEach(p=>p.validate()),r.outputs.forEach(p=>p.validate()),r.internalCalls.forEach(p=>p.validate());const s=[...Cn(r)];if(r.id==="random-company-employee-test-variable-id"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(p.error)}if(r.id==="company-dto-variable-one-id"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(p.error)}const o=Ou(r);return s.push(...o),ie(r.errors,s)}const ue=class ue{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"dataType",null);d(this,"x");d(this,"y");d(this,"type",n.VariableDeclaration);d(this,"writesValues",[]);d(this,"readsValue",null);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"internalCalls",[]);d(this,"parent");d(this,"variableInstances",[]);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const h=N(e.parent);i=t.get(h)}const a=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),s=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),o=e.calledByError.map(h=>{const m=N(h);return t.get(m)});let l=null;if(e.readsValue){const h=N(e.readsValue);l=t.get(h)}const p={id:e.id,version:1,type:n.VariableDeclaration,name:e.name,description:e.description,calledByEntry:a,calledBySuccess:s,calledByError:o,dataType:null,errorCalls:[],successCalls:[],internalCalls:[],readsValue:l,inputs:[],outputs:[],writesValues:[],x:0,y:0,parent:i},y=v(p,t);return y.setParent(i),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);i=s.modifiedData;const o=pu(i,t);return a.push(...s.errors,...o,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
57
+ If an entity is called by another, they must be in the same scope, which means they have the same parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addCondition(this),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this}removeOutput(e){return this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.syncMissingFixedInputs(),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.inputs.flatMap(i=>i.toFlat(e)),...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:this.declaration.toJSON(),successCalls:this.successCalls.map(e=>e.toJSON()),errorCalls:this.errorCalls.map(e=>e.toJSON()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),inputs:this.inputs.map(e=>e.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:this.declaration.toReference(),inputs:this.inputs.map(e=>e.toReference()),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,declaration:this.declaration.id,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.successCalls.forEach(e=>e.clearErrors()),this.errorCalls.forEach(e=>e.clearErrors()),this}validate(){const e=u2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e){return new ve(this.toJSON(),this.project)}removeUnrecognizedInputs(){const e=[],t=[],i=[];return this.inputs.forEach(a=>{if(!this.declaration.inputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedInputs(){const e=[],t=[],i=[],a=this.declaration.inputs.filter(p=>p.parentRelationType===O.FixedArguments&&!this.inputs.find(y=>y.declaration.id===p.id));this.inputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.inputs.forEach(m=>{m.index>=p.index&&m.sync({index:m.index+1})});const y={id:_.UUID.uuid(),version:1,type:n.InputMap,declaration:p.toJSON(),readsValue:null,defaultValue:null,index:p.index,name:null,description:null,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject()}),this.inputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedInputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}};d(ve,"MUTABLE_BASE_PROPERTIES",["operator"]),d(ve,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(ve,"BASE_PROPERTIES",[...ve.MUTABLE_BASE_PROPERTIES,...ve.INMUTABLE_BASE_PROPERTIES]),d(ve,"MUTABLE_META_PROPERTIES",["x","y"]),d(ve,"INMUTABLE_META_PROPERTIES",[...ve.INMUTABLE_BASE_PROPERTIES]),d(ve,"META_PROPERTIES",[...ve.MUTABLE_META_PROPERTIES,...ve.INMUTABLE_META_PROPERTIES]),d(ve,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(ve,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(ve,"UPSTREAM_PROPERTIES",[...ve.MUTABLE_UPSTREAM_PROPERTIES,...ve.INMUTABLE_UPSTREAM_PROPERTIES]),d(ve,"MUTABLE_DOWNSTREAM_PROPERTIES",["successCalls","errorCalls","inputsDeclarations","inputs"]),d(ve,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ve,"DOWNSTREAM_PROPERTIES",[...ve.MUTABLE_DOWNSTREAM_PROPERTIES,...ve.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ve,"PROPERTIES",[...ve.META_PROPERTIES,...ve.UPSTREAM_PROPERTIES,...ve.DOWNSTREAM_PROPERTIES]);let Nr=ve;class jP{constructor(){d(this,"initialData")}}class p2{}class y2 extends jP{}class h2{}class f2{}class m2{}class Tu{}class T2 extends Tu{}class E2 extends Tu{}class b2{}class La{static initReadsValue(e){if(e.initialData.readsValue&&e.initialData.readsValue.type!==n.GenericReference)e.readsValue=v(e.initialData.readsValue,e.project);else if(e.initialData.readsValue&&e.initialData.readsValue.type===n.GenericReference){const t=Nt(e.initialData.readsValue,e.project);t&&(e.readsValue=t)}if(e.readsValue){if(Fe.includes(e.readsValue.type)){let t=e.parent;ut.includes(t.type)||(t=t.parent);const i=e.type===n.InputMap&&e.parent.type===n.Loop;i&&(t=e.parent.parent),e.readsValue.setParent(t),e.readsValue.initChildren(),!i&&t.detachedChildren.includes(e)?t.replaceDetachedChild(e,e.readsValue):i||t.subscribeDetachedChild(e.readsValue)}e.readsValue.addValueReader(e)}return e.readsValue}}class Ga{static initWritesValues(e,t){const i=e.initialData.writesValues.reduce((s,o)=>{if(o.type===n.GenericReference||e.writesValues.some(p=>p.id===o.id))return s;const l=v(o,e.project);return l.setValueWriter(e),Fe.includes(l.type)&&(l.setParent(t),l.initChildren()),[...s,l]},[]),a=[...e.writesValues];return e.writesValues=b([...a,...i]),e.writesValues}}class R2{}function v2(r){var l;const e=Y6(),t=r.toJSON();e.safeParse(t).success,(l=r.dataType)==null||l.validate(),r.inputs.forEach(p=>p.validate()),r.outputs.forEach(p=>p.validate()),r.internalCalls.forEach(p=>p.validate());const s=[...Cn(r)];if(r.id==="random-company-employee-test-variable-id"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(p.error)}if(r.id==="company-dto-variable-one-id"){const p=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(p.error)}const o=Ou(r);return s.push(...o),ie(r.errors,s)}const ue=class ue{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"dataType",null);d(this,"x");d(this,"y");d(this,"type",n.VariableDeclaration);d(this,"writesValues",[]);d(this,"readsValue",null);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"internalCalls",[]);d(this,"parent");d(this,"variableInstances",[]);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const h=N(e.parent);i=t.get(h)}const a=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),s=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),o=e.calledByError.map(h=>{const m=N(h);return t.get(m)});let l=null;if(e.readsValue){const h=N(e.readsValue);l=t.get(h)}const p={id:e.id,version:1,type:n.VariableDeclaration,name:e.name,description:e.description,calledByEntry:a,calledBySuccess:s,calledByError:o,dataType:null,errorCalls:[],successCalls:[],internalCalls:[],readsValue:l,inputs:[],outputs:[],writesValues:[],x:0,y:0,parent:i},y=v(p,t);return y.setParent(i),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);i=s.modifiedData;const o=pu(i,t);return a.push(...s.errors,...o,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
58
58
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
59
59
  Specifically for variables, their scope is also calculated from their value readers and value writters.
60
- You shouldn't have to manually update a 'parent' property. The equivalent result is to change its value readers, value writters, or callers.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addVariableDeclaration(this),this.readsValue&&(this.readsValue.addValueReader(this),e.push(this.readsValue)),this.writesValues.forEach(a=>{a.setValueWriter(this),e.push(a)}),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}get usedInputs(){return this.inputs.filter(e=>e.readsValue||e.defaultValue)}get unusedInputs(){return this.inputs.filter(e=>!e.readsValue&&!e.defaultValue)}get usedOutputs(){return this.outputs.filter(e=>e.writesValues.length)}get unusedOutputs(){return this.outputs.filter(e=>!e.writesValues.length)}get usedInternalCalls(){return this.internalCalls.filter(e=>!!e.calledBy.length)}get unusedInternalCalls(){return this.internalCalls.filter(e=>!e.calledBy.length)}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addValueReader(e){return this.writesValues.includes(e)?this:(this.writesValues.push(e),this)}removeValueReader(e){return this.writesValues=this.writesValues.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.initialData.dataType&&(this.dataType=v(this.initialData.dataType,this.project),this.dataType.setParent(this),this.dataType.initChildren()),Ga.initWritesValues(this,this.parent),La.initReadsValue(this),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.initialData.inputs.forEach(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),this.addInput(t),t}),this.initialData.outputs.forEach(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),this.addOutput(t),t}),this.initialData.internalCalls.forEach(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),this.addInternalCall(t),t}),this.generateUnusedInputs(),this.generateUnusedOutputs(),this.generateUnusedInternalCalls(),(!this.dataType||this.dataType.inferred)&&this.inferDataTypeAndSyncInstancesInputsAndOutputs(),this)}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}subscribeInstance(e){return this.variableInstances.includes(e)?this:(this.variableInstances.push(e),this)}removeInstance(e){return this.variableInstances=this.variableInstances.filter(t=>t.id!==e.id),this}getMasterInputWithValueWritterFromAllInstances(e){return b([...this.inputs,...this.variableInstances.flatMap(a=>a.inputs)]).find(a=>C(a,this.project)===C(e,this.project)&&!!a.readsValue)||e}inferDataTypeAndSyncInstancesInputsAndOutputs(){var i,a;if(!this.dataType){const s=v({id:this.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:this.toReference()},this.project);s.sync({inferred:!0,like:!0}),s.setParent(this),s.initChildren(),this.setDataType(s)}if(this.readsValue){const s=(i=this.readsValue.getDataType())==null?void 0:i.clone(this);return s&&(s.sync({inferred:!0,like:!0}),this.setDataType(s)),this}const e=b([...this.inputs,...this.variableInstances.flatMap(s=>s.inputs)]),t=[];return e.forEach(s=>{t.find(l=>C(l,this.project)===C(s,this.project))||t.push(s)}),t.length?((a=this.dataType)==null||a.inferFromInputs(t),this.dataType?(this.generateUnusedInputs(),this.generateUnusedOutputs(),this.variableInstances.forEach(s=>{s.generateUnusedInputs(),s.generateUnusedOutputs()}),this):this):this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.readsValue&&(i.push(this.readsValue),this.readsValue.removeValueReader(this)),this.writesValues.forEach(s=>{i.push(s),s.readsValue=null}),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.internalCalls.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.dataType){const{affected:s,removed:o}=this.dataType.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){this.subscribe();const t=[];if(this.readsValue&&(t.push(this.readsValue),this.readsValue.addValueReader(this)),this.writesValues.forEach(i=>{t.push(i),i.setValueWriter(this)}),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.internalCalls.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.dataType){const{affected:i}=this.dataType.restore({seenEntities:e});t.push(...i)}return this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.dataType)==null?void 0:i.toFlat(e))||[],...this.writesValues.flatMap(a=>a.toFlat(e)),...this.successCalls.flatMap(a=>a.toFlat(e)),...this.errorCalls.flatMap(a=>a.toFlat(e)),...this.inputs.flatMap(a=>a.toFlat(e)),...this.outputs.flatMap(a=>a.toFlat(e)),...this.internalCalls.flatMap(a=>a.toFlat(e))])}toFlatIds(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.dataType)==null?void 0:i.toFlatIds(e))||[],...this.writesValues.flatMap(a=>a.toFlatIds(e)),...this.successCalls.flatMap(a=>a.toFlatIds(e)),...this.errorCalls.flatMap(a=>a.toFlatIds(e)),...this.inputs.flatMap(a=>a.toFlatIds(e)),...this.outputs.flatMap(a=>a.toFlatIds(e)),...this.internalCalls.flatMap(a=>a.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,dataType:((e=this.dataType)==null?void 0:e.toJSON())||null,readsValue:((t=this.readsValue)==null?void 0:t.toReference())||null,writesValues:this.writesValues.map(i=>i.toJSON()),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),internalCalls:this.internalCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),parent:this.parent.toReference(),x:this.x,y:this.y}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,x:this.x,y:this.y,dataType:((e=this.dataType)==null?void 0:e.toReference())||null,readsValue:((t=this.readsValue)==null?void 0:t.toReference())||null,writesValues:this.writesValues.map(i=>i.toReference()),inputs:this.inputs.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toReference()),successCalls:this.successCalls.map(i=>i.toReference()),errorCalls:this.errorCalls.map(i=>i.toReference()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),internalCalls:this.internalCalls.map(i=>i.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.dataType)==null?void 0:i.toFlatJSON(e))||[],...this.writesValues.flatMap(a=>a.toFlatJSON(e)),...this.successCalls.flatMap(a=>a.toFlatJSON(e)),...this.errorCalls.flatMap(a=>a.toFlatJSON(e)),...this.inputs.flatMap(a=>a.toFlatJSON(e)),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.internalCalls.flatMap(a=>a.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,name:this.name,description:this.description,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.dataType)==null?void 0:i.toFlatGenerationTarget(e))||[],...this.writesValues.flatMap(a=>a.toFlatGenerationTarget(e)),...this.successCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.inputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.outputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.internalCalls.flatMap(a=>a.toFlatGenerationTarget(e))])}clearErrors(){var e;return this.errors=[],this.inputs.forEach(t=>t.clearErrors()),this.outputs.forEach(t=>t.clearErrors()),this.successCalls.forEach(t=>t.clearErrors()),this.errorCalls.forEach(t=>t.clearErrors()),this.internalCalls.forEach(t=>t.clearErrors()),(e=this.dataType)==null||e.clearErrors(),this}validate(){const e=v2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){var t,i;return[...this.errors,...((t=this.dataType)==null?void 0:t.getErrors())||[],...this.inputs.flatMap(a=>a.getErrors()),...this.internalCalls.flatMap(a=>a.getErrors()),...this.outputs.flatMap(a=>a.getErrors()),...((i=this.readsValue)==null?void 0:i.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e;return((e=this.dataType)==null?void 0:e.defaultValue)||null}clone(e){return new ue(this.toJSON(),this.project)}addInternalCall(e){return this.internalCalls.find(t=>t===e)||this.internalCalls.push(e),this}createInstance(e=this.project,t={}){const i={id:t.id||_.UUID.uuid(),version:t.version||1,type:n.VariableInstance,parent:e.toReference(),successCalls:t.successCalls||[],errorCalls:t.errorCalls||[],inputs:t.inputs||[],outputs:t.outputs||[],writesValues:t.writesValues||[],internalCalls:t.internalCalls||[],readsValue:t.readsValue||null,calledByEntry:t.calledByEntry||[],calledBySuccess:t.calledBySuccess||[],calledByError:t.calledByError||[],declaration:this.toJSON(),x:0,y:0},a=v(i,this.project);return a.setParent(e),a.initChildren(),e===this.project&&this.project.addVariableInstance(a),a}generateUnusedInputs(){if(this.dataType)if(this.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.dataType.entity.type)){const e=[...this.dataType.entity.properties,...this.dataType.entity.extendedProperties];e.filter(s=>!s.getDataType()).forEach(s=>{const o=this.inputs.find(y=>C(y,this.project)===C(s,this.project));if(!o)return;const l=this.getMasterInputWithValueWritterFromAllInstances(o);if(!l)return;const p=on(l);s.setDataType(p),o.setDeclaration(s)}),e.filter(s=>!this.inputs.find(o=>{var l;return((l=o.declaration)==null?void 0:l.id)===s.id})).forEach(s=>{const o={id:_.UUID.uuid(),version:1,type:n.InputMap,parent:this.toReference(),name:null,description:null,declaration:s,defaultValue:null,index:s.index,readsValue:null},l=v(o,this.project);return l.setParent(this),l.initChildren(),l.suggestion=!0,this.addInput(l),l}),this.inputs.filter(s=>!s.declaration).forEach(s=>{const o=e.find(l=>C(l,this.project)===C(s,this.project));o&&s.setDeclaration(o)})}}else return[];else return[];return[]}generateUnusedOutputs(){if(this.dataType)if(this.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.dataType.entity.type))return[...this.dataType.entity.properties,...this.dataType.entity.extendedProperties].filter(i=>!this.outputs.find(a=>a.declaration===i)).map(i=>{const a={id:_.UUID.uuid(),version:1,type:n.OutputMap,parent:this.toReference(),declaration:i,index:i.index,writesValues:[]},s=v(a,this.project);return s.setParent(this),s.initChildren(),s.suggestion=!0,this.addOutput(s),s})}else return[];else return[];return[]}generateUnusedInternalCalls(){if(this.dataType)if(this.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.dataType.entity.type))return[...this.dataType.entity.getAllInteractiveMethods()].filter(i=>!this.internalCalls.find(s=>{var l,p,y,h,m;return(((l=s.declaration)==null?void 0:l.id)||((y=(p=s.initialData)==null?void 0:p.declaration)==null?void 0:y.entityId)||((m=(h=s.initialData)==null?void 0:h.declaration)==null?void 0:m.id))===i.id})).map(i=>{const a=i.createInternalCall(this);return a.suggestion=!0,this.addInternalCall(a),a})}else return[];else return[];return[]}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}getDataType(){return(!this.dataType||this.dataType.inferred)&&this.inferDataTypeAndSyncInstancesInputsAndOutputs(),this.dataType||null}getUnusedInputs(){return this.inputs.filter(e=>e.suggestion||!e.readsValue&&!e.defaultValue)}getUnusedOutputs(){return this.outputs.filter(e=>e.suggestion||!e.writesValues.length)}getUsedInputs(){return this.inputs.filter(e=>!e.suggestion&&(e.readsValue||e.defaultValue))}getUsedOutputs(){return this.outputs.filter(e=>!e.suggestion&&e.writesValues.length)}};d(ue,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(ue,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ue,"BASE_PROPERTIES",[...ue.MUTABLE_BASE_PROPERTIES,...ue.INMUTABLE_BASE_PROPERTIES]),d(ue,"MUTABLE_META_PROPERTIES",[...ue.MUTABLE_BASE_PROPERTIES,"x","y"]),d(ue,"INMUTABLE_META_PROPERTIES",[...ue.INMUTABLE_BASE_PROPERTIES]),d(ue,"META_PROPERTIES",[...ue.MUTABLE_META_PROPERTIES,...ue.INMUTABLE_META_PROPERTIES]),d(ue,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","readsValue"]),d(ue,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","dataType"]),d(ue,"UPSTREAM_PROPERTIES",[...ue.MUTABLE_UPSTREAM_PROPERTIES,...ue.INMUTABLE_UPSTREAM_PROPERTIES]),d(ue,"MUTABLE_DOWNSTREAM_PROPERTIES",["writesValues","inputs","outputs","successCalls","errorCalls","internalCalls"]),d(ue,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ue,"DOWNSTREAM_PROPERTIES",[...ue.MUTABLE_DOWNSTREAM_PROPERTIES,...ue.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ue,"PROPERTIES",[...ue.META_PROPERTIES,...ue.UPSTREAM_PROPERTIES,...ue.DOWNSTREAM_PROPERTIES]);let Mr=ue;function g2(r){const e=Q6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(l=>l.validate()),r.outputs.forEach(l=>l.validate()),r.internalCalls.forEach(l=>l.validate());const s=[...Cn(r)];if(r.id==="exec-sequentially-result-variable-id"){const l=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(l.error)}const o=Ou(r);return s.push(...o),ie(r.errors,s)}const pe=class pe{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.VariableInstance);d(this,"writesValues",[]);d(this,"readsValue",null);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"internalCalls",[]);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const R=N(e.parent);i=t.get(R)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(R=>{const g=N(R);return t.get(g)}),l=e.calledBySuccess.map(R=>{const g=N(R);return t.get(g)}),p=e.calledByError.map(R=>{const g=N(R);return t.get(g)});let y=null;if(e.readsValue){const R=N(e.readsValue);y=t.get(R)}const h={id:e.id,version:1,type:n.VariableInstance,declaration:s.toReference(),calledByEntry:o,calledBySuccess:l,calledByError:p,errorCalls:[],successCalls:[],internalCalls:[],readsValue:y,inputs:[],outputs:[],writesValues:[],x:0,y:0,parent:i},m=v(h,t);return m.setParent(i),m.initChildren(),m}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0},declaration:{list:!1,types:[n.VariableDeclaration]}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
60
+ You shouldn't have to manually update a 'parent' property. The equivalent result is to change its value readers, value writters, or callers.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addVariableDeclaration(this),this.readsValue&&(this.readsValue.addValueReader(this),e.push(this.readsValue)),this.writesValues.forEach(a=>{a.setValueWriter(this),e.push(a)}),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}get usedInputs(){return this.inputs.filter(e=>e.readsValue||e.defaultValue)}get unusedInputs(){return this.inputs.filter(e=>!e.readsValue&&!e.defaultValue)}get usedOutputs(){return this.outputs.filter(e=>e.writesValues.length)}get unusedOutputs(){return this.outputs.filter(e=>!e.writesValues.length)}get usedInternalCalls(){return this.internalCalls.filter(e=>!!e.calledBy.length)}get unusedInternalCalls(){return this.internalCalls.filter(e=>!e.calledBy.length)}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addValueReader(e){return this.writesValues.includes(e)?this:(this.writesValues.push(e),this)}removeValueReader(e){return this.writesValues=this.writesValues.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.initialData.dataType&&(this.dataType=v(this.initialData.dataType,this.project),this.dataType.setParent(this),this.dataType.initChildren()),Ga.initWritesValues(this,this.parent),La.initReadsValue(this),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.initialData.inputs.forEach(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),this.addInput(t),t}),this.initialData.outputs.forEach(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),this.addOutput(t),t}),this.initialData.internalCalls.forEach(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),this.addInternalCall(t),t}),this.generateUnusedInputs(),this.generateUnusedOutputs(),this.generateUnusedInternalCalls(),(!this.dataType||this.dataType.inferred)&&this.inferDataTypeAndSyncInstancesInputsAndOutputs(),this)}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}subscribeInstance(e){return this.variableInstances.includes(e)?this:(this.variableInstances.push(e),this)}removeInstance(e){return this.variableInstances=this.variableInstances.filter(t=>t.id!==e.id),this}getMasterInputWithValueWritterFromAllInstances(e){return b([...this.inputs,...this.variableInstances.flatMap(a=>a.inputs)]).find(a=>C(a,this.project)===C(e,this.project)&&!!a.readsValue)||e}inferDataTypeAndSyncInstancesInputsAndOutputs(){var i,a;if(!this.dataType){const s=v({id:this.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:this.toReference()},this.project);s.sync({inferred:!0,like:!0}),s.setParent(this),s.initChildren(),this.setDataType(s)}if(this.readsValue){const s=(i=this.readsValue.getDataType())==null?void 0:i.clone(this);return s&&(s.sync({inferred:!0,like:!0}),this.setDataType(s)),this}const e=b([...this.inputs,...this.variableInstances.flatMap(s=>s.inputs)]),t=[];return e.forEach(s=>{t.find(l=>C(l,this.project)===C(s,this.project))||t.push(s)}),t.length?((a=this.dataType)==null||a.inferFromInputs(t),this.dataType?(this.generateUnusedInputs(),this.generateUnusedOutputs(),this.variableInstances.forEach(s=>{s.generateUnusedInputs(),s.generateUnusedOutputs()}),this):this):this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.readsValue&&(i.push(this.readsValue),this.readsValue.removeValueReader(this)),this.writesValues.forEach(s=>{i.push(s),s.readsValue=null}),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.internalCalls.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.dataType){const{affected:s,removed:o}=this.dataType.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){this.subscribe();const t=[];if(this.readsValue&&(t.push(this.readsValue),this.readsValue.addValueReader(this)),this.writesValues.forEach(i=>{t.push(i),i.setValueWriter(this)}),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.internalCalls.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.dataType){const{affected:i}=this.dataType.restore({seenEntities:e});t.push(...i)}return this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.dataType)==null?void 0:i.toFlat(e))||[],...this.writesValues.flatMap(a=>a.toFlat(e)),...this.successCalls.flatMap(a=>a.toFlat(e)),...this.errorCalls.flatMap(a=>a.toFlat(e)),...this.inputs.flatMap(a=>a.toFlat(e)),...this.outputs.flatMap(a=>a.toFlat(e)),...this.internalCalls.flatMap(a=>a.toFlat(e))])}toFlatIds(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.dataType)==null?void 0:i.toFlatIds(e))||[],...this.writesValues.flatMap(a=>a.toFlatIds(e)),...this.successCalls.flatMap(a=>a.toFlatIds(e)),...this.errorCalls.flatMap(a=>a.toFlatIds(e)),...this.inputs.flatMap(a=>a.toFlatIds(e)),...this.outputs.flatMap(a=>a.toFlatIds(e)),...this.internalCalls.flatMap(a=>a.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,dataType:((e=this.dataType)==null?void 0:e.toJSON())||null,readsValue:((t=this.readsValue)==null?void 0:t.toReference())||null,writesValues:this.writesValues.map(i=>i.toJSON()),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),internalCalls:this.internalCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),parent:this.parent.toReference(),x:this.x,y:this.y}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,x:this.x,y:this.y,dataType:((e=this.dataType)==null?void 0:e.toReference())||null,readsValue:((t=this.readsValue)==null?void 0:t.toReference())||null,writesValues:this.writesValues.map(i=>i.toReference()),inputs:this.inputs.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toReference()),successCalls:this.successCalls.map(i=>i.toReference()),errorCalls:this.errorCalls.map(i=>i.toReference()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),internalCalls:this.internalCalls.map(i=>i.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.dataType)==null?void 0:i.toFlatJSON(e))||[],...this.writesValues.flatMap(a=>a.toFlatJSON(e)),...this.successCalls.flatMap(a=>a.toFlatJSON(e)),...this.errorCalls.flatMap(a=>a.toFlatJSON(e)),...this.inputs.flatMap(a=>a.toFlatJSON(e)),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.internalCalls.flatMap(a=>a.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,name:this.name,description:this.description,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.dataType)==null?void 0:i.toFlatGenerationTarget(e))||[],...this.writesValues.flatMap(a=>a.toFlatGenerationTarget(e)),...this.successCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(a=>a.toFlatGenerationTarget(e)),...this.inputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.outputs.flatMap(a=>a.toFlatGenerationTarget(e)),...this.internalCalls.flatMap(a=>a.toFlatGenerationTarget(e))])}clearErrors(){var e;return this.errors=[],this.inputs.forEach(t=>t.clearErrors()),this.outputs.forEach(t=>t.clearErrors()),this.successCalls.forEach(t=>t.clearErrors()),this.errorCalls.forEach(t=>t.clearErrors()),this.internalCalls.forEach(t=>t.clearErrors()),(e=this.dataType)==null||e.clearErrors(),this}validate(){const e=v2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){var t,i;return[...this.errors,...((t=this.dataType)==null?void 0:t.getErrors())||[],...this.inputs.flatMap(a=>a.getErrors()),...this.internalCalls.flatMap(a=>a.getErrors()),...this.outputs.flatMap(a=>a.getErrors()),...((i=this.readsValue)==null?void 0:i.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e;return((e=this.dataType)==null?void 0:e.defaultValue)||null}clone(e){return new ue(this.toJSON(),this.project)}addInternalCall(e){return this.internalCalls.find(t=>t===e)||this.internalCalls.push(e),this}createInstance(e=this.project,t={}){const i={id:t.id||_.UUID.uuid(),version:t.version||1,type:n.VariableInstance,parent:e.toReference(),successCalls:t.successCalls||[],errorCalls:t.errorCalls||[],inputs:t.inputs||[],outputs:t.outputs||[],writesValues:t.writesValues||[],internalCalls:t.internalCalls||[],readsValue:t.readsValue||null,calledByEntry:t.calledByEntry||[],calledBySuccess:t.calledBySuccess||[],calledByError:t.calledByError||[],declaration:this.toJSON(),x:0,y:0},a=v(i,this.project);return a.setParent(e),a.initChildren(),e===this.project&&this.project.addVariableInstance(a),a}generateUnusedInputs(){if(this.dataType)if(this.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.dataType.entity.type)){const e=[...this.dataType.entity.properties,...this.dataType.entity.extendedProperties];e.filter(s=>!s.getDataType()).forEach(s=>{const o=this.inputs.find(y=>C(y,this.project)===C(s,this.project));if(!o)return;const l=this.getMasterInputWithValueWritterFromAllInstances(o);if(!l)return;const p=on(l);s.setDataType(p),o.setDeclaration(s)}),e.filter(s=>!this.inputs.find(o=>{var l;return((l=o.declaration)==null?void 0:l.id)===s.id})).forEach(s=>{const o={id:_.UUID.uuid(),version:1,type:n.InputMap,parent:this.toReference(),name:null,description:null,declaration:s,defaultValue:null,index:s.index,readsValue:null},l=v(o,this.project);return l.setParent(this),l.initChildren(),l.suggestion=!0,this.addInput(l),l}),this.inputs.filter(s=>!s.declaration).forEach(s=>{const o=e.find(l=>C(l,this.project)===C(s,this.project));o&&s.setDeclaration(o)})}}else return[];else return[];return[]}generateUnusedOutputs(){if(this.dataType)if(this.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.dataType.entity.type))return[...this.dataType.entity.properties,...this.dataType.entity.extendedProperties].filter(i=>!this.outputs.find(a=>a.declaration===i)).map(i=>{const a={id:_.UUID.uuid(),version:1,type:n.OutputMap,parent:this.toReference(),declaration:i,index:i.index,writesValues:[]},s=v(a,this.project);return s.setParent(this),s.initChildren(),s.suggestion=!0,this.addOutput(s),s})}else return[];else return[];return[]}generateUnusedInternalCalls(){if(this.dataType)if(this.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.dataType.entity.type))return[...this.dataType.entity.getAllInteractiveMethods()].filter(i=>!this.internalCalls.find(s=>{var l,p,y,h,m;return(((l=s.declaration)==null?void 0:l.id)||((y=(p=s.initialData)==null?void 0:p.declaration)==null?void 0:y.entityId)||((m=(h=s.initialData)==null?void 0:h.declaration)==null?void 0:m.id))===i.id})).map(i=>{const a=i.createInternalCall(this);return a.suggestion=!0,this.addInternalCall(a),a})}else return[];else return[];return[]}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}getDataType(){return(!this.dataType||this.dataType.inferred)&&this.inferDataTypeAndSyncInstancesInputsAndOutputs(),this.dataType||null}getUnusedInputs(){return this.inputs.filter(e=>e.suggestion||!e.readsValue&&!e.defaultValue)}getUnusedOutputs(){return this.outputs.filter(e=>e.suggestion||!e.writesValues.length)}getUsedInputs(){return this.inputs.filter(e=>!e.suggestion&&(e.readsValue||e.defaultValue))}getUsedOutputs(){return this.outputs.filter(e=>!e.suggestion&&e.writesValues.length)}};d(ue,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(ue,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ue,"BASE_PROPERTIES",[...ue.MUTABLE_BASE_PROPERTIES,...ue.INMUTABLE_BASE_PROPERTIES]),d(ue,"MUTABLE_META_PROPERTIES",[...ue.MUTABLE_BASE_PROPERTIES,"x","y"]),d(ue,"INMUTABLE_META_PROPERTIES",[...ue.INMUTABLE_BASE_PROPERTIES]),d(ue,"META_PROPERTIES",[...ue.MUTABLE_META_PROPERTIES,...ue.INMUTABLE_META_PROPERTIES]),d(ue,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","readsValue"]),d(ue,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","dataType"]),d(ue,"UPSTREAM_PROPERTIES",[...ue.MUTABLE_UPSTREAM_PROPERTIES,...ue.INMUTABLE_UPSTREAM_PROPERTIES]),d(ue,"MUTABLE_DOWNSTREAM_PROPERTIES",["writesValues","inputs","outputs","successCalls","errorCalls","internalCalls"]),d(ue,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ue,"DOWNSTREAM_PROPERTIES",[...ue.MUTABLE_DOWNSTREAM_PROPERTIES,...ue.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ue,"PROPERTIES",[...ue.META_PROPERTIES,...ue.UPSTREAM_PROPERTIES,...ue.DOWNSTREAM_PROPERTIES]);let Mr=ue;function g2(r){const e=Q6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(l=>l.validate()),r.outputs.forEach(l=>l.validate()),r.internalCalls.forEach(l=>l.validate());const s=[...Cn(r)];if(r.id==="exec-sequentially-result-variable-id"){const l=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(l.error)}const o=Ou(r);return s.push(...o),ie(r.errors,s)}const pe=class pe{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.VariableInstance);d(this,"writesValues",[]);d(this,"readsValue",null);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"internalCalls",[]);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const R=N(e.parent);i=t.get(R)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(R=>{const g=N(R);return t.get(g)}),l=e.calledBySuccess.map(R=>{const g=N(R);return t.get(g)}),p=e.calledByError.map(R=>{const g=N(R);return t.get(g)});let y=null;if(e.readsValue){const R=N(e.readsValue);y=t.get(R)}const h={id:e.id,version:1,type:n.VariableInstance,declaration:s.toReference(),calledByEntry:o,calledBySuccess:l,calledByError:p,errorCalls:[],successCalls:[],internalCalls:[],readsValue:y,inputs:[],outputs:[],writesValues:[],x:0,y:0,parent:i},m=v(h,t);return m.setParent(i),m.initChildren(),m}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0},declaration:{list:!1,types:[n.VariableDeclaration]}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
61
61
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
62
62
  Specifically for variables, their scope is also calculated from their value readers and value writters.
63
63
  You shouldn't have to manually update a 'parent' property. The equivalent result is to change its value readers, value writters, or callers.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addVariableInstance(this),this.readsValue&&(this.readsValue.addValueReader(this),e.push(this.readsValue)),this.writesValues.forEach(a=>{a.setValueWriter(this),e.push(a)}),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}get usedInputs(){return this.inputs.filter(e=>e.readsValue||e.defaultValue)}get unusedInputs(){return this.inputs.filter(e=>!e.readsValue&&!e.defaultValue)}get usedOutputs(){return this.outputs.filter(e=>e.writesValues.length)}get unusedOutputs(){return this.outputs.filter(e=>!e.writesValues.length)}get usedInternalCalls(){return this.internalCalls.filter(e=>!!e.calledBy.length)}get unusedInternalCalls(){const e=this.usedInternalCalls;return this.internalCalls.filter(i=>!(e.find(o=>o.id===i.id)||e.find(o=>o.declaration===i.declaration)))}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addValueReader(e){return this.writesValues.includes(e)?this:(this.writesValues.push(e),this)}setParent(e){return this.parent=e,this}initChildren(){var e;if(this.initialized)return this;if(this.initialized=!0,this.initialData.declaration.type===n.GenericReference){const t=this.project.findSubscribedInstanceFromReference(this.initialData.declaration);if(!t)return this;this.declaration=t}else this.declaration=v(this.initialData.declaration,this.project),this.declaration.setParent(this.parent),this.declaration.initChildren();return Ga.initWritesValues(this,this.parent),La.initReadsValue(this),this.initialData.inputs.forEach(t=>{const i=v(t,this.project);return i.setParent(this),i.initChildren(),this.addInput(i),i}),this.initialData.outputs.forEach(t=>{const i=v(t,this.project);return i.setParent(this),i.initChildren(),this.addOutput(i),i}),this.successCalls=this.initialData.successCalls.map(t=>{const i=v(t,this.project);return i.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(i.type)?(i.setParent(this.parent.parent),i.initChildren()):i.type!==n.InternalCall&&(i.setParent(this.parent),i.initChildren()),i}),this.errorCalls=this.initialData.errorCalls.map(t=>{const i=v(t,this.project);return i.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(i.type)?(i.setParent(this.parent.parent),i.initChildren()):i.type!==n.InternalCall&&(i.setParent(this.parent),i.initChildren()),i}),this.internalCalls=this.initialData.internalCalls.reduce((t,i)=>{if(i.type===n.GenericReference){const a=this.project.findSubscribedInstanceFromReference(i);if(!a)return t;const s=a;return s.setParent(this),[...t,s]}else{const a=v(i,this.project);return a.setParent(this),a.initChildren(),[...t,a]}},[]),this.generateUnusedInputs(),this.generateUnusedOutputs(),this.generateUnusedInternalCalls(),this.declaration.subscribeInstance(this),(!this.declaration.dataType||(e=this.declaration.dataType)!=null&&e.inferred)&&this.declaration.inferDataTypeAndSyncInstancesInputsAndOutputs(),this}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}removeValueReader(e){return this.writesValues=this.writesValues.filter(t=>t.id!==e.id),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.readsValue&&(i.push(this.readsValue),this.readsValue.removeValueReader(this)),this.writesValues.forEach(s=>{i.push(s),s.readsValue=null}),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.internalCalls.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),this.declaration.removeInstance(this),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){this.subscribe();const t=[];return this.readsValue&&(t.push(this.readsValue),this.readsValue.addValueReader(this)),this.writesValues.forEach(i=>{t.push(i),i.setValueWriter(this)}),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.internalCalls.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),this.declaration.subscribeInstance(this),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.writesValues.flatMap(i=>i.toFlat(e)),...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.internalCalls.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.writesValues.flatMap(i=>i.toFlatIds(e)),...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.internalCalls.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,declaration:this.declaration.toReference(),readsValue:((e=this.readsValue)==null?void 0:e.toReference())||null,writesValues:this.writesValues.map(t=>t.toJSON()),inputs:this.inputs.map(t=>t.toJSON()),outputs:this.outputs.map(t=>t.toJSON()),successCalls:this.successCalls.map(t=>t.toJSON()),errorCalls:this.errorCalls.map(t=>t.toJSON()),internalCalls:this.internalCalls.map(t=>t.toJSON()),calledBySuccess:this.calledBySuccess.map(t=>t.toReference()),calledByError:this.calledByError.map(t=>t.toReference()),calledByEntry:this.calledByEntry.map(t=>t.toReference()),parent:this.parent.toReference(),x:this.x,y:this.y}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,declaration:((e=this.declaration)==null?void 0:e.toReference())||null,readsValue:((t=this.readsValue)==null?void 0:t.toReference())||null,writesValues:this.writesValues.map(i=>i.toReference()),inputs:this.inputs.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toReference()),successCalls:this.successCalls.map(i=>i.toReference()),errorCalls:this.errorCalls.map(i=>i.toReference()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),internalCalls:this.internalCalls.map(i=>i.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.declaration)==null?void 0:i.toFlatJSON(e))||[],...this.writesValues.flatMap(a=>a.toFlatJSON(e)),...this.successCalls.flatMap(a=>a.toFlatJSON(e)),...this.errorCalls.flatMap(a=>a.toFlatJSON(e)),...this.inputs.flatMap(a=>a.toFlatJSON(e)),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.internalCalls.flatMap(a=>a.toFlatJSON(e)),...this.calledBy.flatMap(a=>a.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,type:this.type,declaration:this.declaration.id,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){var i,a;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.declaration)==null?void 0:i.toFlatGenerationTarget(e))||[],...((a=this.readsValue)==null?void 0:a.toFlatGenerationTarget(e))||[],...this.writesValues.flatMap(s=>s.toFlatGenerationTarget(e)),...this.successCalls.flatMap(s=>s.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(s=>s.toFlatGenerationTarget(e)),...this.inputs.flatMap(s=>s.toFlatGenerationTarget(e)),...this.outputs.flatMap(s=>s.toFlatGenerationTarget(e)),...this.internalCalls.flatMap(s=>s.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.inputs.forEach(e=>e.clearErrors()),this.outputs.forEach(e=>e.clearErrors()),this.successCalls.forEach(e=>e.clearErrors()),this.errorCalls.forEach(e=>e.clearErrors()),this.internalCalls.forEach(e=>e.clearErrors()),this}validate(){const e=g2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){var t;return[...this.errors,...this.inputs.flatMap(i=>i.getErrors()),...this.internalCalls.flatMap(i=>i.getErrors()),...this.outputs.flatMap(i=>i.getErrors()),...((t=this.readsValue)==null?void 0:t.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e,t;return((t=(e=this.declaration)==null?void 0:e.dataType)==null?void 0:t.defaultValue)||null}clone(e){return new pe(this.toJSON(),this.project)}addInternalCall(e){return this.internalCalls.find(t=>t===e)||this.internalCalls.push(e),this}setDeclaration(e){return this.declaration!==e&&(this.declaration=e),this}generateUnusedInputs(){if(this.declaration.dataType)if(this.declaration.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.declaration.dataType.entity.type)){const e=[...this.declaration.dataType.entity.properties,...this.declaration.dataType.entity.extendedProperties];e.filter(s=>!s.getDataType()).forEach(s=>{const o=this.inputs.find(y=>C(y,this.project)===C(s,this.project));if(!o)return;const l=this.declaration.getMasterInputWithValueWritterFromAllInstances(o);if(!l)return;const p=on(l);s.setDataType(p),o.setDeclaration(s)}),e.filter(s=>!this.inputs.find(o=>{var l;return((l=o.declaration)==null?void 0:l.id)===s.id})).forEach(s=>{const o={id:_.UUID.uuid(),version:1,type:n.InputMap,parent:this.toReference(),name:null,description:null,declaration:s,defaultValue:null,index:s.index,readsValue:null},l=v(o,this.project);return l.setParent(this),l.initChildren(),l.suggestion=!0,this.addInput(l),l}),this.inputs.filter(s=>!s.declaration).forEach(s=>{const o=e.find(l=>C(l,this.project)===C(s,this.project));o&&s.setDeclaration(o)})}}else return[];else return[];return[]}generateUnusedOutputs(){if(this.declaration.dataType)if(this.declaration.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.declaration.dataType.entity.type))return[...this.declaration.dataType.entity.properties,...this.declaration.dataType.entity.extendedProperties].filter(i=>!this.outputs.find(a=>a.declaration===i)).map(i=>{const a={id:_.UUID.uuid(),version:1,type:n.OutputMap,parent:this.toReference(),declaration:i,index:i.index,writesValues:[]},s=v(a,this.project);return s.setParent(this),s.initChildren(),s.suggestion=!0,this.addOutput(s),s})}else return[];else return[];return[]}generateUnusedInternalCalls(){if(this.declaration.dataType)if(this.declaration.dataType.entity){if([n.CustomEntity,n.PrimitiveEntity,n.BuiltInBaseEntity].includes(this.declaration.dataType.entity.type))return[...this.declaration.dataType.entity.getAllInteractiveMethods()].filter(i=>!this.internalCalls.find(s=>{var l,p,y,h,m;return(((l=s.declaration)==null?void 0:l.id)||((y=(p=s.initialData)==null?void 0:p.declaration)==null?void 0:y.entityId)||((m=(h=s.initialData)==null?void 0:h.declaration)==null?void 0:m.id))===i.id})).map(i=>{const a=i.createInternalCall(this);return a.suggestion=!0,this.addInternalCall(a),a})}else return[];else return[];return[]}getDataType(){var e;return((e=this.declaration)==null?void 0:e.getDataType())||null}getUnusedInputs(){return this.inputs.filter(e=>e.suggestion||!e.readsValue&&!e.defaultValue)}getUnusedOutputs(){return this.outputs.filter(e=>e.suggestion||!e.writesValues.length)}getUsedInputs(){return this.inputs.filter(e=>!e.suggestion&&(e.readsValue||e.defaultValue))}getUsedOutputs(){return this.outputs.filter(e=>!e.suggestion&&e.writesValues.length)}};d(pe,"MUTABLE_BASE_PROPERTIES",[]),d(pe,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(pe,"BASE_PROPERTIES",[...pe.MUTABLE_BASE_PROPERTIES,...pe.INMUTABLE_BASE_PROPERTIES]),d(pe,"MUTABLE_META_PROPERTIES",[...pe.MUTABLE_BASE_PROPERTIES,"x","y"]),d(pe,"INMUTABLE_META_PROPERTIES",[...pe.INMUTABLE_BASE_PROPERTIES]),d(pe,"META_PROPERTIES",[...pe.MUTABLE_META_PROPERTIES,...pe.INMUTABLE_META_PROPERTIES]),d(pe,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","readsValue"]),d(pe,"INMUTABLE_UPSTREAM_PROPERTIES",["declaration","parent"]),d(pe,"UPSTREAM_PROPERTIES",[...pe.MUTABLE_UPSTREAM_PROPERTIES,...pe.INMUTABLE_UPSTREAM_PROPERTIES]),d(pe,"MUTABLE_DOWNSTREAM_PROPERTIES",["writesValues","inputs","outputs","successCalls","errorCalls","internalCalls"]),d(pe,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(pe,"DOWNSTREAM_PROPERTIES",[...pe.MUTABLE_DOWNSTREAM_PROPERTIES,...pe.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(pe,"PROPERTIES",[...pe.META_PROPERTIES,...pe.UPSTREAM_PROPERTIES,...pe.DOWNSTREAM_PROPERTIES]);let Vr=pe;function I2(r){var s;const e=J9(),t=r.toJSON();e.safeParse(t).success,(s=r.dataType)==null||s.validate();const a=[];if(r.id==="iterate-over-employee-list-continue-statement-employee-dto-output-decl-id"){const o=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(o.error)}return ie(r.errors,a)}const ge=class ge{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"index");d(this,"required");d(this,"isError");d(this,"type",n.ReturnDeclaration);d(this,"dataType",null);d(this,"readsValue",null);d(this,"implements",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.index=e.index,this.name=e.name,this.description=e.description,this.required=e.required,this.isError=e.isError}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;if(e.readsValue){const p=N(e.readsValue);s=t.get(p)}const o={id:e.id,version:1,name:e.name,type:n.ReturnDeclaration,index:a.outputs.length,isError:!1,description:e.description,implements:null,required:e.required,readsValue:s,dataType:null,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){var l,p;let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.ReturnStatement,n.Search,n.BreakStatement,n.ContinueStatement]}},t),o=fu(i,t);if(i=s.modifiedData,i.parent){const y=t.get(N(i.parent));if(y&&[n.BreakStatement,n.ContinueStatement].includes(y.type)){const h=y,m=h.parent,R=[...m.breakStatements.filter(D=>D.id!==y.id),...m.continueStatements.filter(D=>D.id!==y.id)];if(h.outputs.length)a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ReturnDeclaration}' with id '${i.id}' cannot be added to the parent entity of type '${h.type}' with id '${h.id}'. This '${h.type}' already has return declarations.
64
64
  ${vu}`,issue:null}));else{const D=(p=(l=R[0])==null?void 0:l.outputs[0])==null?void 0:p.name;D!==i.name&&a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ReturnDeclaration}' with id '${i.id}' cannot be added to the parent entity of type '${h.type}' with id '${h.id}'. This new 'return-declaration' doesn't have the same name "${D}" as the return declarations on the other statements in the same scope.
65
- ${vu}`,issue:null}))}}else if(y&&y.type===n.ReturnStatement){const h=y.parent;if(h&&Fe.includes(h.type)){const m=h.implements;if(m){const R=m.outputs.find(k=>k.name===i.name),g=m.outputs.filter(k=>!y.outputs.find(fe=>fe.type===n.ReturnDeclaration&&fe.name===k.name)),D=y.outputs.filter(k=>k.type===n.ReturnDeclaration),A=D.find(k=>k.name===i.name),I=D.length?`The parent entity already implements the following return declarations: ${U(D.map(k=>`'${k.id}' (${k.name})`),", "," and ")}.`:"The parent entity does not yet have any implemented return declarations.",F=g.length?`The parent entity is still missing the following returns in the implementation: ${U(g.map(k=>`'${k.id}' (${k.name})`),", "," and ")}.`:"The parent entity has all the returns it needs implemented.";R?A&&a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ReturnDeclaration}' with id '${i.id}' should not exist in a parent entity of type '${y.type}' with id '${y.id}' that implements a ${n.ActionDescriptor} with fixed outputs.
65
+ ${vu}`,issue:null}))}}else if(y&&y.type===n.ReturnStatement){const h=y.parent;if(h&&Ue.includes(h.type)){const m=h.implements;if(m){const R=m.outputs.find(k=>k.name===i.name),g=m.outputs.filter(k=>!y.outputs.find(fe=>fe.type===n.ReturnDeclaration&&fe.name===k.name)),D=y.outputs.filter(k=>k.type===n.ReturnDeclaration),A=D.find(k=>k.name===i.name),I=D.length?`The parent entity already implements the following return declarations: ${U(D.map(k=>`'${k.id}' (${k.name})`),", "," and ")}.`:"The parent entity does not yet have any implemented return declarations.",F=g.length?`The parent entity is still missing the following returns in the implementation: ${U(g.map(k=>`'${k.id}' (${k.name})`),", "," and ")}.`:"The parent entity has all the returns it needs implemented.";R?A&&a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ReturnDeclaration}' with id '${i.id}' should not exist in a parent entity of type '${y.type}' with id '${y.id}' that implements a ${n.ActionDescriptor} with fixed outputs.
66
66
  Adding a new return would make the implementation invalid. An return with the same name already exists in the parent entity.
67
67
  ${I}
68
68
  ${F}`,issue:null})):a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ReturnDeclaration}' with id '${i.id}' should not exist in a parent entity of type '${y.type}' with id '${y.id}' that implements a ${n.ActionDescriptor} with fixed outputs.
69
69
  Adding a new return would make the implementation invalid. There are no returns in the descriptor with the same name.
70
70
  ${I}
71
- ${F}`,issue:null}))}}}}return a.push(...s.errors,...o,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),i.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
72
- This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){var a;const e=[this],t=[],i=[];if(this.parent.addOutputDeclaration(this),e.push(this.parent),(a=this.readsValue)==null||a.addValueReader(this),this.readsValue&&e.push(this.readsValue),this.parent&&[n.BreakStatement,n.ContinueStatement].includes(this.parent.type)){const s=this.parent.parent,{updated:o,added:l,removed:p}=s.syncChildren();e.push(...o),t.push(...l),i.push(...p)}return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}setImplements(e){return this.implements=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.dataType&&(this.dataType=v(this.initialData.dataType,this.project),this.dataType.setParent(this),this.dataType.initChildren()),this.initialData.implements){const e=v(this.initialData.implements,this.project);this.implements=e}return La.initReadsValue(this),this}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.name=e.name||this.name,this.description=e.description||this.description,this.required=e.required||this.required,this.isError=e.isError||this.isError,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.dataType){const s=this.dataType.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s.affected),a.push(...s.removed)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.dataType){const i=this.dataType.restore({seenEntities:e});t.push(...i.affected)}return{affected:[],self:this}}toFlat(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.dataType)==null?void 0:i.toFlat(e))||[]])}toFlatIds(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.dataType)==null?void 0:i.toFlatIds(e))||[]])}toJSON(){var e,t,i;return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,index:this.index,required:this.required,isError:this.isError,dataType:((e=this.dataType)==null?void 0:e.toJSON())||null,implements:((t=this.implements)==null?void 0:t.toJSON())||null,readsValue:((i=this.readsValue)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i;return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,index:this.index,required:this.required,isError:this.isError,readsValue:((e=this.readsValue)==null?void 0:e.toReference())||null,implements:((t=this.implements)==null?void 0:t.toReference())||null,dataType:((i=this.dataType)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.dataType)==null?void 0:i.toFlatJSON(e))||[]])}toGenerationTarget(){var e;return{id:this.id,name:this.name,description:this.description,type:this.type,isError:this.isError,readsValue:(e=this.readsValue)==null?void 0:e.id,required:this.required,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){var i,a;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.readsValue)==null?void 0:i.toFlatGenerationTarget(e))||[],...((a=this.dataType)==null?void 0:a.toFlatGenerationTarget(e))||[]])}clearErrors(){var e;return this.errors=[],(e=this.dataType)==null||e.clearErrors(),this}validate(){const e=I2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){var t;return[...this.errors,...((t=this.dataType)==null?void 0:t.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e;return((e=this.dataType)==null?void 0:e.defaultValue)||null}clone(e=null,t=null,i=!0){var h;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.ReturnDeclaration,this.project);a.dataType=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(h=this.dataType)==null?void 0:h.clone(p,l+"--data-type-id",i);return p.dataType=y||null,p}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}inferDataType(){const e=ou(this);if(e){const t=e.clone(this);t&&(t.inferred=!0,this.setDataType(t))}return this}getCounterparts(){let e=[];if([n.BreakStatement,n.ContinueStatement].includes(this.parent.type)){const t=this.parent.parent;e=[...t.breakStatements,...t.continueStatements].flatMap(s=>s.outputs).filter(s=>C(s,this.project)===C(this,this.project)&&s.id!==this.id)}else if(this.parent.type===n.ReturnStatement&&[n.FunctionDeclaration,n.GlobalEvent].includes(this.parent.parent.type)&&this.parent.parent.implements){const i=this.parent.parent.returnStatements.flatMap(a=>a.outputs);this.implements?e=i.filter(s=>{var o;return this.implements.id===((o=s.implements)==null?void 0:o.id)}):e=i.filter(s=>C(s,this.project)===C(this,this.project)&&s.id!==this.id)}return e}inferDataTypeFromCounterparts(){var i,a;const e=this.getCounterparts(),t=e.find(s=>{var o;return(o=s.dataType)==null?void 0:o.isResolved()});if(t)this.setDataType(t.dataType);else for(let s=0;s<e.length;s++){const o=e[s];if((!o.dataType||!o.dataType.isResolved()||(i=o.dataType)!=null&&i.inferred)&&o.readsValue&&o.inferDataType(),(a=o.dataType)!=null&&a.isResolved()){this.setDataType(o.dataType);break}}return this}getDataType(){var e;return(!this.dataType||!this.dataType.isResolved()||(e=this.dataType)!=null&&e.inferred)&&this.readsValue?this.inferDataType():this.inferDataTypeFromCounterparts(),this.dataType}};d(ge,"MUTABLE_BASE_PROPERTIES",["name","description","required","isError"]),d(ge,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ge,"BASE_PROPERTIES",[...ge.MUTABLE_BASE_PROPERTIES,...ge.INMUTABLE_BASE_PROPERTIES]),d(ge,"MUTABLE_META_PROPERTIES",[...ge.MUTABLE_BASE_PROPERTIES,"index"]),d(ge,"INMUTABLE_META_PROPERTIES",[...ge.INMUTABLE_BASE_PROPERTIES]),d(ge,"META_PROPERTIES",[...ge.MUTABLE_META_PROPERTIES,...ge.INMUTABLE_META_PROPERTIES]),d(ge,"MUTABLE_UPSTREAM_PROPERTIES",["readsValue"]),d(ge,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","dataType"]),d(ge,"UPSTREAM_PROPERTIES",[...ge.MUTABLE_UPSTREAM_PROPERTIES,...ge.INMUTABLE_UPSTREAM_PROPERTIES]),d(ge,"MUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ge,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ge,"DOWNSTREAM_PROPERTIES",[...ge.MUTABLE_DOWNSTREAM_PROPERTIES,...ge.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ge,"PROPERTIES",[...ge.META_PROPERTIES,...ge.UPSTREAM_PROPERTIES,...ge.DOWNSTREAM_PROPERTIES]);let _t=ge;function D2(r){var o;const e=p6(),t=r.toJSON();e.safeParse(t).success,r.inputsDeclarations.forEach(l=>l.validate()),r.inputs.forEach(l=>l.validate()),r.outputsDeclarations.forEach(l=>l.validate()),r.outputs.forEach(l=>l.validate()),(o=r.error)==null||o.validate();const s=[...Cn(r)];if(r.id==="search-person-by-id-id"){const l=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(l.error)}return ie(r.errors,s)}const Le=class Le{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"query");d(this,"type",n.Search);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"inputsDeclarations",[]);d(this,"inputs",[]);d(this,"outputsDeclarations",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"error",null);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y,this.name=e.name,this.query=e.query,this.description=e.description}static fromGenerationTarget(e,t){let i=t;if(e.parent){const y=N(e.parent);i=t.get(y)}const a=e.calledByEntry.map(y=>{const h=N(y);return t.get(h)}),s=e.calledBySuccess.map(y=>{const h=N(y);return t.get(h)}),o=e.calledByError.map(y=>{const h=N(y);return t.get(h)}),l={id:e.id,version:1,type:n.Search,name:e.name,description:e.description,query:e.query,calledByEntry:a,calledBySuccess:s,calledByError:o,errorCalls:[],successCalls:[],inputsDeclarations:[],inputs:[],outputsDeclarations:[],outputs:[],error:null,x:0,y:0,parent:i},p=v(l,t);return p.setParent(i),p.initChildren(),p}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
71
+ ${F}`,issue:null}))}}}}return a.push(...s.errors,...o,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),i.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
72
+ This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){var a;const e=[this],t=[],i=[];if(this.parent.addOutputDeclaration(this),e.push(this.parent),(a=this.readsValue)==null||a.addValueReader(this),this.readsValue&&e.push(this.readsValue),this.parent&&[n.BreakStatement,n.ContinueStatement].includes(this.parent.type)){const s=this.parent.parent,{updated:o,added:l,removed:p}=s.syncChildren();e.push(...o),t.push(...l),i.push(...p)}return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}setImplements(e){return this.implements=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.dataType&&(this.dataType=v(this.initialData.dataType,this.project),this.dataType.setParent(this),this.dataType.initChildren()),this.initialData.implements){const e=v(this.initialData.implements,this.project);this.implements=e}return La.initReadsValue(this),this}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.name=e.name||this.name,this.description=e.description||this.description,this.required=e.required||this.required,this.isError=e.isError||this.isError,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.dataType){const s=this.dataType.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s.affected),a.push(...s.removed)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.dataType){const i=this.dataType.restore({seenEntities:e});t.push(...i.affected)}return{affected:[],self:this}}toFlat(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this,...((i=this.dataType)==null?void 0:i.toFlat(e))||[]])}toFlatIds(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.id,...((i=this.dataType)==null?void 0:i.toFlatIds(e))||[]])}toJSON(){var e,t,i;return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,index:this.index,required:this.required,isError:this.isError,dataType:((e=this.dataType)==null?void 0:e.toJSON())||null,implements:((t=this.implements)==null?void 0:t.toJSON())||null,readsValue:((i=this.readsValue)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i;return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,index:this.index,required:this.required,isError:this.isError,readsValue:((e=this.readsValue)==null?void 0:e.toReference())||null,implements:((t=this.implements)==null?void 0:t.toReference())||null,dataType:((i=this.dataType)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...((i=this.dataType)==null?void 0:i.toFlatJSON(e))||[]])}toGenerationTarget(){var e;return{id:this.id,name:this.name,description:this.description,type:this.type,isError:this.isError,readsValue:(e=this.readsValue)==null?void 0:e.id,required:this.required,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){var i,a;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...((i=this.readsValue)==null?void 0:i.toFlatGenerationTarget(e))||[],...((a=this.dataType)==null?void 0:a.toFlatGenerationTarget(e))||[]])}clearErrors(){var e;return this.errors=[],(e=this.dataType)==null||e.clearErrors(),this}validate(){const e=I2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){var t;return[...this.errors,...((t=this.dataType)==null?void 0:t.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e;return((e=this.dataType)==null?void 0:e.defaultValue)||null}clone(e=null,t=null,i=!0){var h;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.ReturnDeclaration,this.project);a.dataType=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(h=this.dataType)==null?void 0:h.clone(p,l+"--data-type-id",i);return p.dataType=y||null,p}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}inferDataType(){const e=ou(this);if(e){const t=e.clone(this);t&&(t.inferred=!0,this.setDataType(t))}return this}getCounterparts(){let e=[];if([n.BreakStatement,n.ContinueStatement].includes(this.parent.type)){const t=this.parent.parent;e=[...t.breakStatements,...t.continueStatements].flatMap(s=>s.outputs).filter(s=>C(s,this.project)===C(this,this.project)&&s.id!==this.id)}else if(this.parent.type===n.ReturnStatement&&[n.FunctionDeclaration,n.GlobalEvent].includes(this.parent.parent.type)&&this.parent.parent.implements){const i=this.parent.parent.returnStatements.flatMap(a=>a.outputs);this.implements?e=i.filter(s=>{var o;return this.implements.id===((o=s.implements)==null?void 0:o.id)}):e=i.filter(s=>C(s,this.project)===C(this,this.project)&&s.id!==this.id)}return e}inferDataTypeFromCounterparts(){var i,a;const e=this.getCounterparts(),t=e.find(s=>{var o;return(o=s.dataType)==null?void 0:o.isResolved()});if(t)this.setDataType(t.dataType);else for(let s=0;s<e.length;s++){const o=e[s];if((!o.dataType||!o.dataType.isResolved()||(i=o.dataType)!=null&&i.inferred)&&o.readsValue&&o.inferDataType(),(a=o.dataType)!=null&&a.isResolved()){this.setDataType(o.dataType);break}}return this}getDataType(){var e;return(!this.dataType||!this.dataType.isResolved()||(e=this.dataType)!=null&&e.inferred)&&this.readsValue?this.inferDataType():this.inferDataTypeFromCounterparts(),this.dataType}};d(ge,"MUTABLE_BASE_PROPERTIES",["name","description","required","isError"]),d(ge,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ge,"BASE_PROPERTIES",[...ge.MUTABLE_BASE_PROPERTIES,...ge.INMUTABLE_BASE_PROPERTIES]),d(ge,"MUTABLE_META_PROPERTIES",[...ge.MUTABLE_BASE_PROPERTIES,"index"]),d(ge,"INMUTABLE_META_PROPERTIES",[...ge.INMUTABLE_BASE_PROPERTIES]),d(ge,"META_PROPERTIES",[...ge.MUTABLE_META_PROPERTIES,...ge.INMUTABLE_META_PROPERTIES]),d(ge,"MUTABLE_UPSTREAM_PROPERTIES",["readsValue"]),d(ge,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","dataType"]),d(ge,"UPSTREAM_PROPERTIES",[...ge.MUTABLE_UPSTREAM_PROPERTIES,...ge.INMUTABLE_UPSTREAM_PROPERTIES]),d(ge,"MUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ge,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ge,"DOWNSTREAM_PROPERTIES",[...ge.MUTABLE_DOWNSTREAM_PROPERTIES,...ge.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ge,"PROPERTIES",[...ge.META_PROPERTIES,...ge.UPSTREAM_PROPERTIES,...ge.DOWNSTREAM_PROPERTIES]);let _t=ge;function D2(r){var o;const e=p6(),t=r.toJSON();e.safeParse(t).success,r.inputsDeclarations.forEach(l=>l.validate()),r.inputs.forEach(l=>l.validate()),r.outputsDeclarations.forEach(l=>l.validate()),r.outputs.forEach(l=>l.validate()),(o=r.error)==null||o.validate();const s=[...Cn(r)];if(r.id==="search-person-by-id-id"){const l=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});s.push(l.error)}return ie(r.errors,s)}const Ge=class Ge{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"query");d(this,"type",n.Search);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"inputsDeclarations",[]);d(this,"inputs",[]);d(this,"outputsDeclarations",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"error",null);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y,this.name=e.name,this.query=e.query,this.description=e.description}static fromGenerationTarget(e,t){let i=t;if(e.parent){const y=N(e.parent);i=t.get(y)}const a=e.calledByEntry.map(y=>{const h=N(y);return t.get(h)}),s=e.calledBySuccess.map(y=>{const h=N(y);return t.get(h)}),o=e.calledByError.map(y=>{const h=N(y);return t.get(h)}),l={id:e.id,version:1,type:n.Search,name:e.name,description:e.description,query:e.query,calledByEntry:a,calledBySuccess:s,calledByError:o,errorCalls:[],successCalls:[],inputsDeclarations:[],inputs:[],outputsDeclarations:[],outputs:[],error:null,x:0,y:0,parent:i},p=v(l,t);return p.setParent(i),p.initChildren(),p}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
73
73
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
74
- You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addSearch(this),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(a=>a.id===e.id);t>-1&&this.inputs.splice(t,1);const i=this.inputsDeclarations.findIndex(a=>a.id===e.declaration.id);return i>-1&&this.inputsDeclarations.splice(i,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addInputDeclaration(e){return this.inputsDeclarations.includes(e)?this:(this.inputsDeclarations.push(e),this)}removeInputDeclaration(e){const t=this.inputsDeclarations.findIndex(i=>i.id===e.id);return t>-1&&this.inputsDeclarations.splice(t,1),this}addOutputDeclaration(e){return this.outputsDeclarations.includes(e)?this:(this.outputsDeclarations.push(e),this)}removeOutputDeclaration(e){const t=this.outputsDeclarations.findIndex(i=>i.id===e.id);return t>-1&&this.outputsDeclarations.splice(t,1),this}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputsDeclarations=this.initialData.inputsDeclarations.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputsDeclarations=this.initialData.outputsDeclarations.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this.name=e.name||this.name,this.query=e.query||this.query,this.description=e.description||this.description,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.inputsDeclarations.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputsDeclarations.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.error){const{affected:s,removed:o}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputsDeclarations.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputsDeclarations.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.inputsDeclarations.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.outputsDeclarations.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e)),...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.inputsDeclarations.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.outputsDeclarations.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e)),...this.error?this.error.toFlatIds(e):[]])}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,query:this.query,description:this.description,x:this.x,y:this.y,successCalls:this.successCalls.map(t=>t.toJSON()),errorCalls:this.errorCalls.map(t=>t.toJSON()),calledBySuccess:this.calledBySuccess.map(t=>t.toReference()),calledByError:this.calledByError.map(t=>t.toReference()),calledByEntry:this.calledByEntry.map(t=>t.toReference()),inputsDeclarations:this.inputsDeclarations.map(t=>t.toJSON()),inputs:this.inputs.map(t=>t.toJSON()),outputsDeclarations:this.outputsDeclarations.map(t=>t.toJSON()),outputs:this.outputs.map(t=>t.toJSON()),parent:this.parent.toReference(),error:((e=this.error)==null?void 0:e.toJSON())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,query:this.query,x:this.x,y:this.y,inputs:this.inputs.map(e=>e.toReference()),inputsDeclarations:this.inputsDeclarations.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),outputsDeclarations:this.outputsDeclarations.map(e=>e.toReference()),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.inputsDeclarations.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.outputsDeclarations.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,name:this.name,description:this.description,type:this.type,query:this.query,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputsDeclarations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputsDeclarations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.inputsDeclarations.forEach(t=>t.clearErrors()),this.inputs.forEach(t=>t.clearErrors()),this.outputs.forEach(t=>t.clearErrors()),this.successCalls.forEach(t=>t.clearErrors()),this.errorCalls.forEach(t=>t.clearErrors()),(e=this.error)==null||e.clearErrors(),this}validate(){const e=D2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputsDeclarations.flatMap(t=>t.getErrors()),...this.inputs.flatMap(t=>t.getErrors()),...this.outputsDeclarations.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new Le(this.toJSON(),this.project)}};d(Le,"MUTABLE_BASE_PROPERTIES",["name","description","query"]),d(Le,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(Le,"BASE_PROPERTIES",[...Le.MUTABLE_BASE_PROPERTIES,...Le.INMUTABLE_BASE_PROPERTIES]),d(Le,"MUTABLE_META_PROPERTIES",[...Le.MUTABLE_BASE_PROPERTIES,"x","y"]),d(Le,"INMUTABLE_META_PROPERTIES",[...Le.INMUTABLE_BASE_PROPERTIES]),d(Le,"META_PROPERTIES",[...Le.MUTABLE_META_PROPERTIES,...Le.INMUTABLE_META_PROPERTIES]),d(Le,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(Le,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Le,"UPSTREAM_PROPERTIES",[...Le.MUTABLE_UPSTREAM_PROPERTIES,...Le.INMUTABLE_UPSTREAM_PROPERTIES]),d(Le,"MUTABLE_DOWNSTREAM_PROPERTIES",["successCalls","errorCalls","inputsDeclarations","inputs","outputsDeclarations","outputs","error"]),d(Le,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Le,"DOWNSTREAM_PROPERTIES",[...Le.MUTABLE_DOWNSTREAM_PROPERTIES,...Le.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Le,"PROPERTIES",[..._t.META_PROPERTIES,..._t.UPSTREAM_PROPERTIES,..._t.DOWNSTREAM_PROPERTIES]);let Lr=Le;function P2(r){const e=i3(),t=r.toJSON();e.safeParse(t).success,r.functions.forEach(s=>s.validate()),r.events.forEach(s=>s.validate());const a=[];return ie(r.errors,a)}const Ie=class Ie{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"type",n.InstalledProject);d(this,"implements");d(this,"functions",[]);d(this,"events",[]);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=e.x,this.y=e.y,this.implements=e.implements}static fromGenerationTarget(e,t){const i=t,a={id:e.id,version:1,name:e.name,type:n.InstalledProject,description:e.description,functions:[],events:[],implements:{entityId:e.implements,entityType:n.Project,type:n.GenericReference,id:_.UUID.uuid()},x:0,y:0,parent:i},s=v(a,t);return s.setParent(i),s.initChildren(),s}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[];return a.push(...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on an installed project, must be the root project as it is a globally declared entity.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.functions=this.initialData.functions.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.events=this.initialData.events.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.functions.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!1,seenEntities:t});i.push(...o),a.push(...l)}),this.events.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!1,seenEntities:t});i.push(...o),a.push(...l)}),{affected:[],removed:[]})}restore({seenEntities:e}={seenEntities:new Set}){return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.functions.forEach(t=>{t.restore({seenEntities:e})}),this.events.forEach(t=>{t.restore({seenEntities:e})}),{affected:[],self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.functions.flatMap(i=>i.toFlat(e)),...this.events.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.functions.flatMap(i=>i.toFlatIds(e)),...this.events.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,implements:this.implements,functions:this.functions.map(e=>e.toJSON()),events:this.events.map(e=>e.toJSON()),parent:this.parent.toReference(),x:this.x,y:this.y}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,x:this.x,y:this.y,implements:this.implements,functions:this.functions.map(e=>e.toReference()),events:this.events.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.functions.flatMap(i=>i.toFlatJSON(e)),...this.events.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,name:this.name,description:this.description,type:this.type,implements:this.implements.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.functions.flatMap(i=>i.toFlatGenerationTarget(e)),...this.events.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.functions.forEach(e=>e.clearErrors()),this.events.forEach(e=>e.clearErrors()),this}validate(){const e=P2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.functions.flatMap(t=>t.getErrors()),...this.events.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new Ie(this.toJSON(),this.project)}};d(Ie,"MUTABLE_BASE_PROPERTIES",[]),d(Ie,"INMUTABLE_BASE_PROPERTIES",["id","version","name","description","type"]),d(Ie,"BASE_PROPERTIES",[...Ie.MUTABLE_BASE_PROPERTIES,...Ie.INMUTABLE_BASE_PROPERTIES]),d(Ie,"MUTABLE_META_PROPERTIES",["x","y"]),d(Ie,"INMUTABLE_META_PROPERTIES",[...Ie.INMUTABLE_BASE_PROPERTIES]),d(Ie,"META_PROPERTIES",[...Ie.MUTABLE_META_PROPERTIES,...Ie.INMUTABLE_META_PROPERTIES]),d(Ie,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ie,"INMUTABLE_UPSTREAM_PROPERTIES",["implements","parent"]),d(Ie,"UPSTREAM_PROPERTIES",[...Ie.MUTABLE_UPSTREAM_PROPERTIES,...Ie.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ie,"MUTABLE_DOWNSTREAM_PROPERTIES",["functions","events"]),d(Ie,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ie,"DOWNSTREAM_PROPERTIES",[...Ie.MUTABLE_DOWNSTREAM_PROPERTIES,...Ie.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ie,"PROPERTIES",[...Ie.META_PROPERTIES,...Ie.UPSTREAM_PROPERTIES,...Ie.DOWNSTREAM_PROPERTIES]);let Gr=Ie;function A2(r){var l;const e=m6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(p=>p.validate()),r.outputs.forEach(p=>p.validate()),(l=r.error)==null||l.validate();const a=Cn(r),s=O2(r),o=[...a,...s];return ie(r.errors,o)}function O2(r){const e=[],t=Oo(r.parent),i=t==null?void 0:t.entity;if(!i)e.push(Y({id:`${r.id}--${S.InternalCallParentMissingDataType}`,code:S.InternalCallParentMissingDataType,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) its id "${r.declaration}".`,issue:null,entity:r}).error);else if(![n.CustomEntity,n.BuiltInBaseEntity,n.PrimitiveEntity].includes(i.type))e.push(Y({id:`${r.id}--${S.InternalCallParentDeclarationEntityInvalidType}`,code:S.InternalCallParentDeclarationEntityInvalidType,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", belongs to a variable whose data type 'entity' is not a custom entity, built-in base entity or primitive entity.
74
+ You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addSearch(this),this.successCalls.forEach(a=>{a.addSuccessCaller(this),e.push(a)}),this.errorCalls.forEach(a=>{a.addErrorCaller(this),e.push(a)}),this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(a=>a.id===e.id);t>-1&&this.inputs.splice(t,1);const i=this.inputsDeclarations.findIndex(a=>a.id===e.declaration.id);return i>-1&&this.inputsDeclarations.splice(i,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addInputDeclaration(e){return this.inputsDeclarations.includes(e)?this:(this.inputsDeclarations.push(e),this)}removeInputDeclaration(e){const t=this.inputsDeclarations.findIndex(i=>i.id===e.id);return t>-1&&this.inputsDeclarations.splice(t,1),this}addOutputDeclaration(e){return this.outputsDeclarations.includes(e)?this:(this.outputsDeclarations.push(e),this)}removeOutputDeclaration(e){const t=this.outputsDeclarations.findIndex(i=>i.id===e.id);return t>-1&&this.outputsDeclarations.splice(t,1),this}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputsDeclarations=this.initialData.inputsDeclarations.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputsDeclarations=this.initialData.outputsDeclarations.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this.name=e.name||this.name,this.query=e.query||this.query,this.description=e.description||this.description,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.inputsDeclarations.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.outputsDeclarations.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.error){const{affected:s,removed:o}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.successCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),this.errorCalls.forEach(s=>{i.push(s),s.removeCaller(this)}),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.inputsDeclarations.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputsDeclarations.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.inputsDeclarations.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.outputsDeclarations.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e)),...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.inputsDeclarations.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.outputsDeclarations.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e)),...this.error?this.error.toFlatIds(e):[]])}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,query:this.query,description:this.description,x:this.x,y:this.y,successCalls:this.successCalls.map(t=>t.toJSON()),errorCalls:this.errorCalls.map(t=>t.toJSON()),calledBySuccess:this.calledBySuccess.map(t=>t.toReference()),calledByError:this.calledByError.map(t=>t.toReference()),calledByEntry:this.calledByEntry.map(t=>t.toReference()),inputsDeclarations:this.inputsDeclarations.map(t=>t.toJSON()),inputs:this.inputs.map(t=>t.toJSON()),outputsDeclarations:this.outputsDeclarations.map(t=>t.toJSON()),outputs:this.outputs.map(t=>t.toJSON()),parent:this.parent.toReference(),error:((e=this.error)==null?void 0:e.toJSON())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,query:this.query,x:this.x,y:this.y,inputs:this.inputs.map(e=>e.toReference()),inputsDeclarations:this.inputsDeclarations.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),outputsDeclarations:this.outputsDeclarations.map(e=>e.toReference()),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.inputsDeclarations.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.outputsDeclarations.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,name:this.name,description:this.description,type:this.type,query:this.query,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputsDeclarations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputsDeclarations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.inputsDeclarations.forEach(t=>t.clearErrors()),this.inputs.forEach(t=>t.clearErrors()),this.outputs.forEach(t=>t.clearErrors()),this.successCalls.forEach(t=>t.clearErrors()),this.errorCalls.forEach(t=>t.clearErrors()),(e=this.error)==null||e.clearErrors(),this}validate(){const e=D2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputsDeclarations.flatMap(t=>t.getErrors()),...this.inputs.flatMap(t=>t.getErrors()),...this.outputsDeclarations.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new Ge(this.toJSON(),this.project)}};d(Ge,"MUTABLE_BASE_PROPERTIES",["name","description","query"]),d(Ge,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(Ge,"BASE_PROPERTIES",[...Ge.MUTABLE_BASE_PROPERTIES,...Ge.INMUTABLE_BASE_PROPERTIES]),d(Ge,"MUTABLE_META_PROPERTIES",[...Ge.MUTABLE_BASE_PROPERTIES,"x","y"]),d(Ge,"INMUTABLE_META_PROPERTIES",[...Ge.INMUTABLE_BASE_PROPERTIES]),d(Ge,"META_PROPERTIES",[...Ge.MUTABLE_META_PROPERTIES,...Ge.INMUTABLE_META_PROPERTIES]),d(Ge,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(Ge,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Ge,"UPSTREAM_PROPERTIES",[...Ge.MUTABLE_UPSTREAM_PROPERTIES,...Ge.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ge,"MUTABLE_DOWNSTREAM_PROPERTIES",["successCalls","errorCalls","inputsDeclarations","inputs","outputsDeclarations","outputs","error"]),d(Ge,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ge,"DOWNSTREAM_PROPERTIES",[...Ge.MUTABLE_DOWNSTREAM_PROPERTIES,...Ge.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ge,"PROPERTIES",[..._t.META_PROPERTIES,..._t.UPSTREAM_PROPERTIES,..._t.DOWNSTREAM_PROPERTIES]);let Lr=Ge;function P2(r){const e=i3(),t=r.toJSON();e.safeParse(t).success,r.functions.forEach(s=>s.validate()),r.events.forEach(s=>s.validate());const a=[];return ie(r.errors,a)}const Ie=class Ie{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"type",n.InstalledProject);d(this,"implements");d(this,"functions",[]);d(this,"events",[]);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=e.x,this.y=e.y,this.implements=e.implements}static fromGenerationTarget(e,t){const i=t,a={id:e.id,version:1,name:e.name,type:n.InstalledProject,description:e.description,functions:[],events:[],implements:{entityId:e.implements,entityType:n.Project,type:n.GenericReference,id:_.UUID.uuid()},x:0,y:0,parent:i},s=v(a,t);return s.setParent(i),s.initChildren(),s}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[];return a.push(...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on an installed project, must be the root project as it is a globally declared entity.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.functions=this.initialData.functions.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.events=this.initialData.events.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.functions.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!1,seenEntities:t});i.push(...o),a.push(...l)}),this.events.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!1,seenEntities:t});i.push(...o),a.push(...l)}),{affected:[],removed:[]})}restore({seenEntities:e}={seenEntities:new Set}){return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.functions.forEach(t=>{t.restore({seenEntities:e})}),this.events.forEach(t=>{t.restore({seenEntities:e})}),{affected:[],self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.functions.flatMap(i=>i.toFlat(e)),...this.events.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.functions.flatMap(i=>i.toFlatIds(e)),...this.events.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,implements:this.implements,functions:this.functions.map(e=>e.toJSON()),events:this.events.map(e=>e.toJSON()),parent:this.parent.toReference(),x:this.x,y:this.y}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,x:this.x,y:this.y,implements:this.implements,functions:this.functions.map(e=>e.toReference()),events:this.events.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.functions.flatMap(i=>i.toFlatJSON(e)),...this.events.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,name:this.name,description:this.description,type:this.type,implements:this.implements.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.functions.flatMap(i=>i.toFlatGenerationTarget(e)),...this.events.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.functions.forEach(e=>e.clearErrors()),this.events.forEach(e=>e.clearErrors()),this}validate(){const e=P2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.functions.flatMap(t=>t.getErrors()),...this.events.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new Ie(this.toJSON(),this.project)}};d(Ie,"MUTABLE_BASE_PROPERTIES",[]),d(Ie,"INMUTABLE_BASE_PROPERTIES",["id","version","name","description","type"]),d(Ie,"BASE_PROPERTIES",[...Ie.MUTABLE_BASE_PROPERTIES,...Ie.INMUTABLE_BASE_PROPERTIES]),d(Ie,"MUTABLE_META_PROPERTIES",["x","y"]),d(Ie,"INMUTABLE_META_PROPERTIES",[...Ie.INMUTABLE_BASE_PROPERTIES]),d(Ie,"META_PROPERTIES",[...Ie.MUTABLE_META_PROPERTIES,...Ie.INMUTABLE_META_PROPERTIES]),d(Ie,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ie,"INMUTABLE_UPSTREAM_PROPERTIES",["implements","parent"]),d(Ie,"UPSTREAM_PROPERTIES",[...Ie.MUTABLE_UPSTREAM_PROPERTIES,...Ie.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ie,"MUTABLE_DOWNSTREAM_PROPERTIES",["functions","events"]),d(Ie,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ie,"DOWNSTREAM_PROPERTIES",[...Ie.MUTABLE_DOWNSTREAM_PROPERTIES,...Ie.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ie,"PROPERTIES",[...Ie.META_PROPERTIES,...Ie.UPSTREAM_PROPERTIES,...Ie.DOWNSTREAM_PROPERTIES]);let Gr=Ie;function A2(r){var l;const e=m6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(p=>p.validate()),r.outputs.forEach(p=>p.validate()),(l=r.error)==null||l.validate();const a=Cn(r),s=O2(r),o=[...a,...s];return ie(r.errors,o)}function O2(r){const e=[],t=Oo(r.parent),i=t==null?void 0:t.entity;if(!i)e.push(Y({id:`${r.id}--${S.InternalCallParentMissingDataType}`,code:S.InternalCallParentMissingDataType,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) its id "${r.declaration}".`,issue:null,entity:r}).error);else if(![n.CustomEntity,n.BuiltInBaseEntity,n.PrimitiveEntity].includes(i.type))e.push(Y({id:`${r.id}--${S.InternalCallParentDeclarationEntityInvalidType}`,code:S.InternalCallParentDeclarationEntityInvalidType,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", belongs to a variable whose data type 'entity' is not a custom entity, built-in base entity or primitive entity.
75
75
  This variable's data-type has an 'entity' field that references an entity with id '${i.id}' and of type '${i.type}'.`,issue:null,entity:r}).error);else{const a=Gu(i),s=[];[n.CustomEntity,n.BuiltInBaseEntity,n.PrimitiveEntity].includes(i.type)&&s.push(...i.getAllInteractiveMethods());let o="";a?i.methods.length?o=`
76
76
  All 'function-declaration' entities attached as methods to the parent data-type 'entity' field, available to be called as 'internal-calls' in this variable are:
77
77
  - ${i.methods.map(y=>y.id).join(`
@@ -83,7 +83,7 @@ This variable's data-type 'entity' is a ${i.type} which doesn't have any methods
83
83
  Built-in entity types can't have methods attached to them by the user. They are predefined entities that can't be modified. You can reference them as the 'declaration' property on a new 'internal-call' entity in a variable`):i.type===n.CustomEntity?o=`
84
84
  This variable's data-type 'entity' is a custom entity which extends or implements a non-interactive 'built-in-base-entity'.s`:i.type===n.BuiltInBaseEntity&&(o=`
85
85
  This variable's data-type 'entity' is a non-interactive 'built-in-base-entity'.s`);const l=s.find(p=>p.id===r.declaration.id);l?l.type!==n.FunctionDeclaration&&e.push(Y({id:`${r.id}--${S.InternalCallDeclarationIsNotFunctionDeclaration}`,code:S.InternalCallDeclarationIsNotFunctionDeclaration,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", points to a 'declaration' that isn't a 'function-declaration' entity.
86
- The declaration of the internal-call must be a 'function-declaration' entity which exists as a method in the entity of the data-type of the parent variable.${o}`,issue:null,entity:r}).error):e.push(Y({id:`${r.id}--${S.InternalCallDeclarationNotFoundInParentDatatypeEntity}`,code:S.InternalCallDeclarationNotFoundInParentDatatypeEntity,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) with id "${r.declaration}".${o}`,issue:null,entity:r}).error)}return e}const ye=class ye{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"index");d(this,"type",n.InternalCall);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"process",null);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"error",null);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"parent");d(this,"project");d(this,"errors",[]);d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=N(e.declaration),o=t.get(s),l=e.calledByEntry.map(R=>{const g=N(R);return t.get(g)}),p=e.calledBySuccess.map(R=>{const g=N(R);return t.get(g)}),y=e.calledByError.map(R=>{const g=N(R);return t.get(g)}),h={id:e.id,version:1,type:n.InternalCall,index:a.internalCalls.length,declaration:o.toReference(),calledByEntry:l,calledBySuccess:p,calledByError:y,errorCalls:[],successCalls:[],inputs:[],outputs:[],process:null,error:null,parent:a},m=v(h,t);return m.setParent(a),m.initChildren(),m}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:$e}},t);i=s.modifiedData;const o=N(i.parent),l=t.get(o);if(l){const p=Oo(l),y=p==null?void 0:p.entity;if(!y)a.push(new E({id:`${i.id}--${S.InternalCallParentMissingDataType}`,code:S.InternalCallParentMissingDataType,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) its id "${i.declaration}".`,issue:null}));else if(![n.CustomEntity,n.BuiltInBaseEntity,n.PrimitiveEntity].includes(y.type))a.push(new E({id:`${i.id}--${S.InternalCallParentDeclarationEntityInvalidType}`,code:S.InternalCallParentDeclarationEntityInvalidType,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", belongs to a variable whose data type 'entity' is not a custom entity, built-in base entity or primitive entity.
86
+ The declaration of the internal-call must be a 'function-declaration' entity which exists as a method in the entity of the data-type of the parent variable.${o}`,issue:null,entity:r}).error):e.push(Y({id:`${r.id}--${S.InternalCallDeclarationNotFoundInParentDatatypeEntity}`,code:S.InternalCallDeclarationNotFoundInParentDatatypeEntity,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) with id "${r.declaration}".${o}`,issue:null,entity:r}).error)}return e}const ye=class ye{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"index");d(this,"type",n.InternalCall);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"process",null);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"error",null);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"parent");d(this,"project");d(this,"errors",[]);d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=N(e.declaration),o=t.get(s),l=e.calledByEntry.map(R=>{const g=N(R);return t.get(g)}),p=e.calledBySuccess.map(R=>{const g=N(R);return t.get(g)}),y=e.calledByError.map(R=>{const g=N(R);return t.get(g)}),h={id:e.id,version:1,type:n.InternalCall,index:a.internalCalls.length,declaration:o.toReference(),calledByEntry:l,calledBySuccess:p,calledByError:y,errorCalls:[],successCalls:[],inputs:[],outputs:[],process:null,error:null,parent:a},m=v(h,t);return m.setParent(a),m.initChildren(),m}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:Fe}},t);i=s.modifiedData;const o=N(i.parent),l=t.get(o);if(l){const p=Oo(l),y=p==null?void 0:p.entity;if(!y)a.push(new E({id:`${i.id}--${S.InternalCallParentMissingDataType}`,code:S.InternalCallParentMissingDataType,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) its id "${i.declaration}".`,issue:null}));else if(![n.CustomEntity,n.BuiltInBaseEntity,n.PrimitiveEntity].includes(y.type))a.push(new E({id:`${i.id}--${S.InternalCallParentDeclarationEntityInvalidType}`,code:S.InternalCallParentDeclarationEntityInvalidType,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", belongs to a variable whose data type 'entity' is not a custom entity, built-in base entity or primitive entity.
87
87
  This variable's data-type has an 'entity' field that references an entity with id '${y.id}' and of type '${y.type}'.`,issue:null}));else{const h=Gu(y);let m="";h?y.methods.length?m=`
88
88
  All 'function-declaration' entities attached as methods to the parent data-type 'entity' field, available to be called as 'internal-calls' in this variable are:
89
89
  - ${y.methods.map(A=>A.id).join(`
@@ -99,42 +99,42 @@ This variable's data-type 'entity' is a non-interactive 'built-in-base-entity'.
99
99
  ${Kn}`);const R=i.declaration;if(!t.get(R))a.push(new E({id:`${i.id}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", has a declaration method (function-declaration) that doesn't exist in the project.${m}`,issue:null}));else{const D=[];[n.CustomEntity,n.BuiltInBaseEntity,n.PrimitiveEntity].includes(y.type)&&D.push(...y.getAllInteractiveMethods());const A=D.find(I=>I.id===i.declaration);A?A.type!==n.FunctionDeclaration&&a.push(new E({id:`${i.id}--${S.InternalCallDeclarationIsNotFunctionDeclaration}`,code:S.InternalCallDeclarationIsNotFunctionDeclaration,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", points to a 'declaration' that isn't a 'function-declaration' entity.
100
100
  The declaration of the internal-call must be a 'function-declaration' entity which exists as a method in the entity of the data-type of the parent variable.${m}`,issue:null})):a.push(new E({id:`${i.id}--${S.InternalCallDeclarationNotFoundInParentDatatypeEntity}`,code:S.InternalCallDeclarationNotFoundInParentDatatypeEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", belongs to a variable whose data type entity doesn't contain its declaration method (function-declaration) with id "${i.declaration}".${m}`,issue:null}))}}(l.inputs.length||l.outputs.length||l.internalCalls.length)&&a.push(new E({id:`${i.id}--${f.InvalidInternalCallParentRelation}`,code:f.InvalidInternalCallParentRelation,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}", can only be added to a variable declaration or variable instance parent if the parent doesn't already have inputs, outputs or other internal calls.
101
101
  If you need a new variable-instance for this, consider using the 'implement_variable_instance' generation action to create one and give it a caller.
102
- The you can attach the new internal-call to it.`,issue:null}))}return a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
102
+ The you can attach the new internal-call to it.`,issue:null}))}return a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
103
103
  This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return this.parent.addInternalCall(this),e.push(this.parent),(a=this.process)==null||a.writesValues.forEach(s=>{s.setValueWriter(this.process),e.push(s)}),this.successCalls.forEach(s=>{s.addSuccessCaller(this),e.push(s)}),this.errorCalls.forEach(s=>{s.addErrorCaller(this),e.push(s)}),this.calledBySuccess.forEach(s=>{s.addSuccessCall(this),e.push(s)}),this.calledByError.forEach(s=>{s.addErrorCall(this),e.push(s)}),this.calledByEntry.forEach(s=>{s.addCall(this),e.push(s)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addValueReader(e){var t;return(t=this.process)==null||t.addValueReader(e),this}removeValueReader(e){var t;return(t=this.process)==null||t.removeValueReader(e),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.parent.type!==n.GenericReference){const e=v(this.initialData.parent,this.project);this.setParent(e),this.parent.initChildren(),this.parent.addInternalCall(this);const t=this.calledBy.find(i=>!!i.parent&&ut.includes(i.parent.type));if(t){const i=v(t.parent,this.project);this.parent.setParent(i)}else if(!t&&!this.parent.calledBy.length)throw new Error("Parent of internal call parent could not be resolved")}return this.declaration=v(this.initialData.declaration,this.project),this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){var s;const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.process){const{affected:o,removed:l}=(s=this.process)==null?void 0:s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}if(this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.outputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.error){const{affected:o,removed:l}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}return this.successCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),this.errorCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),e||this.calledBy.forEach(o=>{i.push(o),o.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.process){const{affected:i}=this.process.restore({seenEntities:e});t.push(...i)}return this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e)),...this.process?this.process.toFlatIds(e):[],...this.error?this.error.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,index:this.index,successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:(e=this.process)==null?void 0:e.toJSON(),declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:this.parent.toReference(),error:(t=this.error)==null?void 0:t.toJSON()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,index:this.index,process:this.process?this.process.toReference():null,inputs:this.inputs.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),declaration:this.declaration.toReference(),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.process?this.process.toFlatJSON(e):[],...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.calledBy.flatMap(i=>i.toFlatJSON(e)),...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(e=>e.id),calledBySuccess:this.calledBySuccess.map(e=>e.id),calledByError:this.calledByError.map(e=>e.id),declaration:this.declaration.id,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.process?this.process.toFlatGenerationTarget(e):[],...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=A2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new ye(this.toJSON(),this.project)}};d(ye,"MUTABLE_BASE_PROPERTIES",[]),d(ye,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ye,"BASE_PROPERTIES",[...ye.MUTABLE_BASE_PROPERTIES,...ye.INMUTABLE_BASE_PROPERTIES]),d(ye,"MUTABLE_META_PROPERTIES",[...ye.MUTABLE_BASE_PROPERTIES,"index"]),d(ye,"INMUTABLE_META_PROPERTIES",[...ye.INMUTABLE_BASE_PROPERTIES]),d(ye,"META_PROPERTIES",[...ye.MUTABLE_META_PROPERTIES,...ye.INMUTABLE_META_PROPERTIES]),d(ye,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(ye,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(ye,"UPSTREAM_PROPERTIES",[...ye.MUTABLE_UPSTREAM_PROPERTIES,...ye.INMUTABLE_UPSTREAM_PROPERTIES]),d(ye,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","outputs","writesValues","successCalls","errorCalls","error"]),d(ye,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ye,"DOWNSTREAM_PROPERTIES",[...ye.MUTABLE_DOWNSTREAM_PROPERTIES,...ye.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ye,"PROPERTIES",[...ye.META_PROPERTIES,...ye.UPSTREAM_PROPERTIES,...ye.DOWNSTREAM_PROPERTIES]);let Si=ye;function S2(r){const e=R6(),t=r.toJSON();e.safeParse(t).success;const a=[];if(r.id==="exec-sequentially-argument-map-id"){const s=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(s.error)}return ie(r.errors,a)}const De=class De{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"index");d(this,"name",null);d(this,"description",null);d(this,"declaration",null);d(this,"type",n.InputMap);d(this,"defaultValue",null);d(this,"readsValue",null);d(this,"dataType",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.index=e.index,this.name=e.name||null,this.description=e.description||null}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;if(e.declaration){const y=N(e.declaration);s=t.get(y)}let o=null;if(e.readsValue){const y=N(e.readsValue);o=t.get(y)}const l={id:e.id,version:1,name:e.name||null,type:n.InputMap,index:(a.inputs||[]).length,description:e.description||null,declaration:s,readsValue:o,defaultValue:null,parent:a},p=v(l,t);return p.setParent(a),p.initChildren(),p}static validateGenerationTarget(e,t){var y;let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...je,n.InputMap]}},t);i=s.modifiedData;const o=t.get(i.parent),l=i.declaration&&(t.get(i.declaration)||t.getBuiltIn(i.declaration)),p=((o==null?void 0:o.inputs)||[]).find(h=>{var m;return i.declaration&&((m=h.declaration)==null?void 0:m.id)===i.declaration});if(i.declaration?l?[n.Property,n.ArgumentDeclaration,n.ValueDescriptor].includes(l.type)?o&&l.type===n.ArgumentDeclaration&&![n.FunctionCall,n.Search,n.InternalCall].includes(o.type)?a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' has a 'declaration' property pointing to an entity with type '${n.ArgumentDeclaration}' with id '${i.declaration}'.
104
104
  The parent entity of type '${o.type}' with id '${o.id}' is not compatible with this type of declaration.
105
- Only 'function-call', 'search' and 'internal-call' entities can have input-maps whose 'declaration' points to 'argument-declaration' entities.`,issue:null})):o&&l.type===n.Property&&!$e.includes(o.type)?a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' has a 'declaration' property pointing to an entity with type '${n.Property}' with id '${i.declaration}'.
105
+ Only 'function-call', 'search' and 'internal-call' entities can have input-maps whose 'declaration' points to 'argument-declaration' entities.`,issue:null})):o&&l.type===n.Property&&!Fe.includes(o.type)?a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' has a 'declaration' property pointing to an entity with type '${n.Property}' with id '${i.declaration}'.
106
106
  The parent entity of type '${o.type}' with id '${o.id}' is not compatible with this type of declaration.
107
107
  Only variables can have input-maps whose 'declaration' points to 'property' entities.`,issue:null})):o&&l.type===n.ValueDescriptor&&![n.Condition,n.Operation,n.Loop].includes(o.type)&&a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' has a 'declaration' property pointing to an entity with type '${n.ValueDescriptor}' with id '${i.declaration}'.
108
108
  The parent entity of type '${o.type}' with id '${o.id}' is not compatible with this type of declaration.
109
109
  Only 'condition', 'operation' and 'loop' entities can have input-maps whose 'declaration' points to 'value-descriptor' entities.`,issue:null})):a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' must have a 'declaration' property pointing to a '${U([n.Property,n.ArgumentDeclaration,n.ValueDescriptor],"', '","' or '")}' entity.
110
110
  Only input-map entities for variables with an inferred data type are allowed to not have a declaration.
111
- This is because a dynamically assembled object can have new properties added to it as input-maps. Otherwise all input maps need to point to a declaration`,issue:null})):a.push(new E({id:`${i.id}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' has a 'declaration' property that points to an entity with id '${i.declaration}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null})):(!$e.includes(o.type)||$e.includes(o.type)&&!((y=o.getDataType())!=null&&y.inferred))&&a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' must have a 'declaration' property pointing to a 'argument-declaration' or 'property' entity.
111
+ This is because a dynamically assembled object can have new properties added to it as input-maps. Otherwise all input maps need to point to a declaration`,issue:null})):a.push(new E({id:`${i.id}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' has a 'declaration' property that points to an entity with id '${i.declaration}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null})):(!Fe.includes(o.type)||Fe.includes(o.type)&&!((y=o.getDataType())!=null&&y.inferred))&&a.push(new E({id:`${i.id}--${f.InvalidInputMapDeclaration}`,code:f.InvalidInputMapDeclaration,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' must have a 'declaration' property pointing to a 'argument-declaration' or 'property' entity.
112
112
  Only input-map entities for variables with an inferred data type are allowed to not have a declaration.
113
113
  This is because a dynamically assembled object can have new properties added to it as input-maps. Otherwise all input maps need to point to a declaration`,issue:null})),l&&o){if(p)a.push(new E({id:`${i.id}--${f.InputOverwrite}`,code:f.InputOverwrite,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The parent already has an input-map with id '${p.id}' that points to the same base ${l.type} as declaration.
114
114
  Any value reads can be done with that input-map instead.
115
- You can't edit input-map entities as they need to match their argument declarations, so you can only modify the 'readsValue' property so it reads the value from an external entity, or the 'defaultValue' so it has a hard-coded one.`,issue:null}));else if($e.includes(o.type)){const R=Sr(o).dataType,g=R==null?void 0:R.entity;g&&g.type===n.ActionDescriptor?a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The data type of the 'variable-declaration' is a 'action-descriptor' entity.
115
+ You can't edit input-map entities as they need to match their argument declarations, so you can only modify the 'readsValue' property so it reads the value from an external entity, or the 'defaultValue' so it has a hard-coded one.`,issue:null}));else if(Fe.includes(o.type)){const R=Sr(o).dataType,g=R==null?void 0:R.entity;g&&g.type===n.ActionDescriptor?a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The data type of the 'variable-declaration' is a 'action-descriptor' entity.
116
116
  This means it can hold a function-call or operation as its value, to be executed programatically.
117
117
  Input maps can only be added to variables which hold an entity with properties.`,issue:null})):g&&!(R!=null&&R.inferred)&&(g.properties.find(A=>A.id===l.id)||a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The 'declaration' with '${l.id}' of the 'input-map' does not exist in the entity of the 'data-type'.
118
- The entity of the data-type has the following properties that can be reads as input maps, ids: '${U(g.properties.map(A=>A.id),"', '","' and '")}'`,issue:null})))}else if(je.filter(h=>$e.includes(h)).includes(o.type)){const m=Nu(o),R=m.find(D=>D.id===i.declaration),g=`The parent entity has the following argument declarations that can be referenced by input-maps, ids: '${U(m.map(D=>D.id),"', '","' and '")}'`;R||a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The parent entity does not have an 'argument-declaration' with id '${i.declaration}'.
118
+ The entity of the data-type has the following properties that can be reads as input maps, ids: '${U(g.properties.map(A=>A.id),"', '","' and '")}'`,issue:null})))}else if(je.filter(h=>Fe.includes(h)).includes(o.type)){const m=Nu(o),R=m.find(D=>D.id===i.declaration),g=`The parent entity has the following argument declarations that can be referenced by input-maps, ids: '${U(m.map(D=>D.id),"', '","' and '")}'`;R||a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.InputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The parent entity does not have an 'argument-declaration' with id '${i.declaration}'.
119
119
  You can't add an input-map to an entity that doesn't have a matching 'argument-declaration'.
120
- ${g}`,issue:null}))}}return a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),i.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
121
- This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){var a,s;const e=[this],t=[],i=[];if(this.parent.addInput(this),e.push(this.parent),(a=this.readsValue)==null||a.addValueReader(this),this.readsValue&&e.push(this.readsValue),$e.includes(this.parent.type)&&((s=this.parent.getDataType())!=null&&s.inferred)){const o=this.parent.type===n.VariableDeclaration?this.parent:this.parent.declaration;o.inferDataTypeAndSyncInstancesInputsAndOutputs(),e.push(o,...o.variableInstances)}return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}setDeclaration(e){return this.declaration=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.initialData.defaultValue&&(this.defaultValue=v(this.initialData.defaultValue,this.project),this.defaultValue.setParent(this),this.defaultValue.initChildren()),this.initialData.declaration&&(this.declaration=v(this.initialData.declaration,this.project)),La.initReadsValue(this),this)}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.name=e.name||this.name,this.description=e.description||this.description,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.readsValue&&(i.push(this.readsValue),this.readsValue.removeValueReader(this)),this.defaultValue&&(i.push(this.defaultValue),this.defaultValue.remove({ignoreUpstream:!0,seenEntities:t})),e||(i.push(this.parent),this.parent.removeInput(this)),{affected:i,removed:a})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.readsValue&&(t.push(this.readsValue),this.readsValue.addValueReader(this)),this.defaultValue&&(t.push(this.defaultValue),this.defaultValue.restore({seenEntities:e})),t.push(this.parent),this.parent.addInput(this),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.defaultValue?this.defaultValue.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.defaultValue?this.defaultValue.toFlatIds(e):[]])}toJSON(){var e,t,i;return{id:this.id,version:this.version,type:this.type,index:this.index,name:this.name,description:this.description,defaultValue:((e=this.defaultValue)==null?void 0:e.toJSON())||null,declaration:((t=this.declaration)==null?void 0:t.toJSON())||null,readsValue:((i=this.readsValue)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,defaultValue:((e=this.defaultValue)==null?void 0:e.toReference())||null,declaration:((t=this.declaration)==null?void 0:t.toReference())||null,readsValue:((i=this.readsValue)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.defaultValue?this.defaultValue.toFlatJSON(e):[]])}toGenerationTarget(){var e;return{id:this.id,name:this.name||void 0,description:this.description||void 0,type:this.type,declaration:((e=this.declaration)==null?void 0:e.id)||null,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.defaultValue?this.defaultValue.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],(e=this.defaultValue)==null||e.clearErrors(),this}validate(){const e=S2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}getDefaultValue(){var e,t;return this.defaultValue||((t=(e=this.declaration)==null?void 0:e.dataType)==null?void 0:t.defaultValue)||null}setDefaultValue(e){return this.defaultValue=e,this}clone(e=null,t=null,i=!0){var h;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.InputMap,this.project);a.defaultValue=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(h=this.defaultValue)==null?void 0:h.clone(p,l+"--default-value-id",i);return p.defaultValue=y||null,p}getDataType(){var t;if(this.parent.type===n.Operation)return this.parent.declaration.inferInputMapDataType(this);if($e.includes(this.parent.type)){const i=Sr(this.parent),a=i.getDataType();(!a||a.inferred)&&i.inferDataTypeAndSyncInstancesInputsAndOutputs()}const e=(t=this.declaration)==null?void 0:t.getDataType();if(!e){const i=on(this);if(i)return i}return e||null}};d(De,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(De,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(De,"BASE_PROPERTIES",[...De.MUTABLE_BASE_PROPERTIES,...De.INMUTABLE_BASE_PROPERTIES]),d(De,"MUTABLE_META_PROPERTIES",[...De.MUTABLE_BASE_PROPERTIES,"index"]),d(De,"INMUTABLE_META_PROPERTIES",[...De.INMUTABLE_BASE_PROPERTIES]),d(De,"META_PROPERTIES",[...De.MUTABLE_META_PROPERTIES,...De.INMUTABLE_META_PROPERTIES]),d(De,"MUTABLE_UPSTREAM_PROPERTIES",["readsValue"]),d(De,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(De,"UPSTREAM_PROPERTIES",[...De.MUTABLE_UPSTREAM_PROPERTIES,...De.INMUTABLE_UPSTREAM_PROPERTIES]),d(De,"MUTABLE_DOWNSTREAM_PROPERTIES",["defaultValue"]),d(De,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(De,"DOWNSTREAM_PROPERTIES",[...De.MUTABLE_DOWNSTREAM_PROPERTIES,...De.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(De,"PROPERTIES",[...De.META_PROPERTIES,...De.UPSTREAM_PROPERTIES,...De.DOWNSTREAM_PROPERTIES]);let On=De;class C2 extends On{constructor(t,i){super(t,i);d(this,"declaration",null);d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}class B2 extends On{constructor(t,i){super(t,i);d(this,"name",null);d(this,"description",null);d(this,"declaration");d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}function w2(r){const e=Q9(),t=r.toJSON();e.safeParse(t).success;const a=[];if(r.id==="exec-sequentially-return-map-id"){const s=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(s.error)}return ie(r.errors,a)}const he=class he{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"index");d(this,"type",n.OutputMap);d(this,"parentRelationType");d(this,"declaration");d(this,"writesValues",[]);d(this,"dataType");d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.index=e.index,this.parentRelationType=e.parentRelationType}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s;if(e.declaration){const p=N(e.declaration);s=t.get(p)}const o={id:e.id,version:1,type:n.OutputMap,index:(a.outputs||[]).length,declaration:s,writesValues:[],parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){var l;let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:je.filter(p=>p!==n.Condition)},declaration:{list:!1,types:[n.ReturnDeclaration,n.Property]}},t);i=s.modifiedData;const o=t.get(i.parent);if(o&&je.filter(p=>p!==n.Condition).includes(o.type)){const p=o.outputs.find(y=>y.declaration.id===N(i.declaration));if(p)a.push(new E({id:`${i.id}--${f.OutputOverwrite}`,code:f.OutputOverwrite,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The parent already has an output-map with id '${p.id}' that points to the same base 'return-declaration'.
120
+ ${g}`,issue:null}))}}return a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];let i=JSON.parse(JSON.stringify(e));const a=Fa(i,this);return i=a.modifiedData,t.push(...a.errors),i.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
121
+ This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:i}}addSelfToProject(){var a,s;const e=[this],t=[],i=[];if(this.parent.addInput(this),e.push(this.parent),(a=this.readsValue)==null||a.addValueReader(this),this.readsValue&&e.push(this.readsValue),Fe.includes(this.parent.type)&&((s=this.parent.getDataType())!=null&&s.inferred)){const o=this.parent.type===n.VariableDeclaration?this.parent:this.parent.declaration;o.inferDataTypeAndSyncInstancesInputsAndOutputs(),e.push(o,...o.variableInstances)}return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}setDeclaration(e){return this.declaration=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.initialData.defaultValue&&(this.defaultValue=v(this.initialData.defaultValue,this.project),this.defaultValue.setParent(this),this.defaultValue.initChildren()),this.initialData.declaration&&(this.declaration=v(this.initialData.declaration,this.project)),La.initReadsValue(this),this)}setValueWriter(e){return this.readsValue=e,this}removeValueWriter(){return this.readsValue=null,this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.name=e.name||this.name,this.description=e.description||this.description,this}async load(){return this}async create(){return this}async update(e){return this.sync(e),ja(e,this),this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.readsValue&&(i.push(this.readsValue),this.readsValue.removeValueReader(this)),this.defaultValue&&(i.push(this.defaultValue),this.defaultValue.remove({ignoreUpstream:!0,seenEntities:t})),e||(i.push(this.parent),this.parent.removeInput(this)),{affected:i,removed:a})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.readsValue&&(t.push(this.readsValue),this.readsValue.addValueReader(this)),this.defaultValue&&(t.push(this.defaultValue),this.defaultValue.restore({seenEntities:e})),t.push(this.parent),this.parent.addInput(this),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.defaultValue?this.defaultValue.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.defaultValue?this.defaultValue.toFlatIds(e):[]])}toJSON(){var e,t,i;return{id:this.id,version:this.version,type:this.type,index:this.index,name:this.name,description:this.description,defaultValue:((e=this.defaultValue)==null?void 0:e.toJSON())||null,declaration:((t=this.declaration)==null?void 0:t.toJSON())||null,readsValue:((i=this.readsValue)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t,i;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,index:this.index,defaultValue:((e=this.defaultValue)==null?void 0:e.toReference())||null,declaration:((t=this.declaration)==null?void 0:t.toReference())||null,readsValue:((i=this.readsValue)==null?void 0:i.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.defaultValue?this.defaultValue.toFlatJSON(e):[]])}toGenerationTarget(){var e;return{id:this.id,name:this.name||void 0,description:this.description||void 0,type:this.type,declaration:((e=this.declaration)==null?void 0:e.id)||null,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.defaultValue?this.defaultValue.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],(e=this.defaultValue)==null||e.clearErrors(),this}validate(){const e=S2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}getDefaultValue(){var e,t;return this.defaultValue||((t=(e=this.declaration)==null?void 0:e.dataType)==null?void 0:t.defaultValue)||null}setDefaultValue(e){return this.defaultValue=e,this}clone(e=null,t=null,i=!0){var h;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.InputMap,this.project);a.defaultValue=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(h=this.defaultValue)==null?void 0:h.clone(p,l+"--default-value-id",i);return p.defaultValue=y||null,p}getDataType(){var t;if(this.parent.type===n.Operation)return this.parent.declaration.inferInputMapDataType(this);if(Fe.includes(this.parent.type)){const i=Sr(this.parent),a=i.getDataType();(!a||a.inferred)&&i.inferDataTypeAndSyncInstancesInputsAndOutputs()}const e=(t=this.declaration)==null?void 0:t.getDataType();if(!e){const i=on(this);if(i)return i}return e||null}};d(De,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(De,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(De,"BASE_PROPERTIES",[...De.MUTABLE_BASE_PROPERTIES,...De.INMUTABLE_BASE_PROPERTIES]),d(De,"MUTABLE_META_PROPERTIES",[...De.MUTABLE_BASE_PROPERTIES,"index"]),d(De,"INMUTABLE_META_PROPERTIES",[...De.INMUTABLE_BASE_PROPERTIES]),d(De,"META_PROPERTIES",[...De.MUTABLE_META_PROPERTIES,...De.INMUTABLE_META_PROPERTIES]),d(De,"MUTABLE_UPSTREAM_PROPERTIES",["readsValue"]),d(De,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(De,"UPSTREAM_PROPERTIES",[...De.MUTABLE_UPSTREAM_PROPERTIES,...De.INMUTABLE_UPSTREAM_PROPERTIES]),d(De,"MUTABLE_DOWNSTREAM_PROPERTIES",["defaultValue"]),d(De,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(De,"DOWNSTREAM_PROPERTIES",[...De.MUTABLE_DOWNSTREAM_PROPERTIES,...De.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(De,"PROPERTIES",[...De.META_PROPERTIES,...De.UPSTREAM_PROPERTIES,...De.DOWNSTREAM_PROPERTIES]);let On=De;class C2 extends On{constructor(t,i){super(t,i);d(this,"declaration",null);d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}class B2 extends On{constructor(t,i){super(t,i);d(this,"name",null);d(this,"description",null);d(this,"declaration");d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}function w2(r){const e=Q9(),t=r.toJSON();e.safeParse(t).success;const a=[];if(r.id==="exec-sequentially-return-map-id"){const s=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(s.error)}return ie(r.errors,a)}const he=class he{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"index");d(this,"type",n.OutputMap);d(this,"parentRelationType");d(this,"declaration");d(this,"writesValues",[]);d(this,"dataType");d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.index=e.index,this.parentRelationType=e.parentRelationType}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s;if(e.declaration){const p=N(e.declaration);s=t.get(p)}const o={id:e.id,version:1,type:n.OutputMap,index:(a.outputs||[]).length,declaration:s,writesValues:[],parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){var l;let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:je.filter(p=>p!==n.Condition)},declaration:{list:!1,types:[n.ReturnDeclaration,n.Property]}},t);i=s.modifiedData;const o=t.get(i.parent);if(o&&je.filter(p=>p!==n.Condition).includes(o.type)){const p=o.outputs.find(y=>y.declaration.id===N(i.declaration));if(p)a.push(new E({id:`${i.id}--${f.OutputOverwrite}`,code:f.OutputOverwrite,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The parent already has an output-map with id '${p.id}' that points to the same base 'return-declaration'.
122
122
  Any value reads can be done with that output-map instead.
123
- You can't edit output-map entities as they need to match their return declarations, so you can only choose to read their outputted value if you need it.`,issue:null}));else{const y=t.get(i.declaration);if(y&&$e.includes(o.type)){const h=Sr(o),m=h.dataType,R=(l=h.dataType)==null?void 0:l.entity;m?R?R.type===n.ActionDescriptor?a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The data type of the 'variable-declaration' is a 'action-descriptor' entity.
123
+ You can't edit output-map entities as they need to match their return declarations, so you can only choose to read their outputted value if you need it.`,issue:null}));else{const y=t.get(i.declaration);if(y&&Fe.includes(o.type)){const h=Sr(o),m=h.dataType,R=(l=h.dataType)==null?void 0:l.entity;m?R?R.type===n.ActionDescriptor?a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The data type of the 'variable-declaration' is a 'action-descriptor' entity.
124
124
  This means it can hold a function-call or operation as its value, to be executed programatically.
125
125
  Output maps can only be added to variables which hold an entity with properties.`,issue:null})):R.properties.find(D=>D.id===y.id)||a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The 'declaration' with '${y.id}' of the 'output-map' does not exist in the entity of the 'data-type'.
126
126
  The entity of the data-type has the following properties that can be reads as output maps, ids: '${U(R.properties.map(D=>D.id),"', '","' and '")}'`,issue:null})):a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The data type of the 'variable-declaration' doesn't have an 'entity' set, so it cannot be determined if the output-map is reading a valid property of the data type entity.
127
127
  ${gu}`,issue:null})):a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The data type of the 'variable-declaration' is not set, so it cannot be determined if the output-map is reading a valid property of the data type entity.
128
128
  ${gu}`,issue:null}))}else if(y){const h=o.outputs.find(m=>m.declaration.id===i.declaration);h&&a.push(new E({id:`${i.id}--${f.OutputOverwrite}`,code:f.OutputOverwrite,severity:T.Error,message:`Entity of type '${n.OutputMap}' with id '${i.id}' cannot be added to the parent entity of type '${o.type}' with id '${o.id}'. The parent already has an output-map with id '${h.id}' that points to the same declaration.
129
129
  Any value reads can be done with that output-map instead.
130
- You can't edit output-map entities as they need to match their return declarations, so you can only choose to read their outputted value if you need it.`,issue:null}))}}}return a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
131
- This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parentRelationType===Wr.Error?$e.includes(this.parent.type)||(this.parent.error=this):this.parent.addOutput(this),this.writesValues.forEach(a=>{a.setValueWriter(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}addValueReader(e){return this.writesValues.includes(e)?this:(this.writesValues.push(e),this)}removeValueReader(e){return this.writesValues=this.writesValues.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}setDeclaration(e){return this.declaration=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,Ga.initWritesValues(this,this.parent.parent),this.initialData.declaration&&(this.declaration=v(this.initialData.declaration,this.project)),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.parentRelationType=e.parentRelationType||this.parentRelationType,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.writesValues.forEach(s=>{i.push(s),s.readsValue=null}),e||(i.push(this.parent),this.parentRelationType===Wr.Error?$e.includes(this.parent.type)||(this.parent.error=null):this.parent.removeOutput(this)),{affected:i,removed:a})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.writesValues.forEach(i=>{t.push(i),i.setValueWriter(this)}),t.push(this.parent),this.parentRelationType===Wr.Error?$e.includes(this.parent.type)||(this.parent.error=this):this.parent.addOutput(this),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.writesValues.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.writesValues.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,index:this.index,parentRelationType:this.parentRelationType,writesValues:this.writesValues.map(e=>e.toJSON()),declaration:this.declaration.toJSON(),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,index:this.index,parentRelationType:this.parentRelationType,declaration:this.declaration.toReference(),writesValues:this.writesValues.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.writesValues.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,declaration:this.declaration.id,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.writesValues.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this}validate(){const e=w2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}getDefaultValue(){var e,t;return((t=(e=this.declaration)==null?void 0:e.dataType)==null?void 0:t.defaultValue)||null}clone(e){return new he(this.toJSON(),this.project)}getDataType(){var t;return this.parent.type===n.Operation?this.parent.declaration.inferOutputMapDataType(this):((t=this.declaration)==null?void 0:t.getDataType())||null}};d(he,"MUTABLE_BASE_PROPERTIES",[]),d(he,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(he,"BASE_PROPERTIES",[...he.MUTABLE_BASE_PROPERTIES,...he.INMUTABLE_BASE_PROPERTIES]),d(he,"MUTABLE_META_PROPERTIES",[...he.MUTABLE_BASE_PROPERTIES,"index"]),d(he,"INMUTABLE_META_PROPERTIES",[...he.INMUTABLE_BASE_PROPERTIES]),d(he,"META_PROPERTIES",[...he.MUTABLE_META_PROPERTIES,...he.INMUTABLE_META_PROPERTIES]),d(he,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(he,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(he,"UPSTREAM_PROPERTIES",[...he.MUTABLE_UPSTREAM_PROPERTIES,...he.INMUTABLE_UPSTREAM_PROPERTIES]),d(he,"MUTABLE_DOWNSTREAM_PROPERTIES",["writesValues"]),d(he,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(he,"DOWNSTREAM_PROPERTIES",[...he.MUTABLE_DOWNSTREAM_PROPERTIES,...he.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(he,"PROPERTIES",[...he.META_PROPERTIES,...he.UPSTREAM_PROPERTIES,...he.DOWNSTREAM_PROPERTIES]);let Sn=he;class _2 extends Sn{constructor(t,i){super(t,i);d(this,"declaration");d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}class N2 extends Sn{constructor(t,i){super(t,i);d(this,"declaration");d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}function M2(r){var s;const e=M3(),t=r.toJSON();e.safeParse(t).success,(s=r.dataType)==null||s.validate();const a=[];if(r.id==="company-dto-func-declaration-argument-dcl-id"){const o=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(o.error)}if(r.id==="manual-hello-world-loop-current-iteration-number-output-map-id"){const o=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(o.error)}return ie(r.errors,a)}const Pe=class Pe{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"index");d(this,"required");d(this,"type",n.ArgumentDeclaration);d(this,"dataType",null);d(this,"writesValues",[]);d(this,"implements",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.index=e.index,this.name=e.name,this.description=e.description,this.required=e.required}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s={id:e.id,version:1,name:e.name,type:n.ArgumentDeclaration,index:a.inputs.length,description:e.description,required:e.required,implements:null,dataType:null,writesValues:[],parent:a},o=v(s,t);return o.setParent(a),o.initChildren(),o}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.FunctionDeclaration,n.Search,n.Condition]}},t);i=s.modifiedData;const o=hu(i,t);if(i.parent){const l=t.get(N(i.parent));if(l&&Fe.includes(l.type)){const p=l.implements;if(p){const y=p.inputs.find(A=>A.name===i.name),h=p.inputs.filter(A=>!l.inputs.find(F=>F.type===n.ArgumentDeclaration&&F.name===A.name)),m=l.inputs.filter(A=>A.type===n.ArgumentDeclaration),R=m.find(A=>A.name===i.name),g=m.length?`The parent entity already implements the following arguments: ${U(m.map(A=>`'${A.id}' (${A.name})`),", "," and ")}.`:"The parent entity does not yet have any implemented arguments.",D=h.length?`The parent entity is still missing the following arguments in the implementation: ${U(h.map(A=>`'${A.id}' (${A.name})`),", "," and ")}.`:"The parent entity has all the arguments it needs implemented.";y?R&&a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ArgumentDeclaration}' with id '${i.id}' should not exist in a parent entity of type '${l.type}' with id '${l.id}' that implements a ${n.ActionDescriptor} with fixed arguments.
130
+ You can't edit output-map entities as they need to match their return declarations, so you can only choose to read their outputted value if you need it.`,issue:null}))}}}return a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
131
+ This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parentRelationType===Wr.Error?Fe.includes(this.parent.type)||(this.parent.error=this):this.parent.addOutput(this),this.writesValues.forEach(a=>{a.setValueWriter(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}addValueReader(e){return this.writesValues.includes(e)?this:(this.writesValues.push(e),this)}removeValueReader(e){return this.writesValues=this.writesValues.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}setDeclaration(e){return this.declaration=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,Ga.initWritesValues(this,this.parent.parent),this.initialData.declaration&&(this.declaration=v(this.initialData.declaration,this.project)),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.parentRelationType=e.parentRelationType||this.parentRelationType,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.writesValues.forEach(s=>{i.push(s),s.readsValue=null}),e||(i.push(this.parent),this.parentRelationType===Wr.Error?Fe.includes(this.parent.type)||(this.parent.error=null):this.parent.removeOutput(this)),{affected:i,removed:a})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.writesValues.forEach(i=>{t.push(i),i.setValueWriter(this)}),t.push(this.parent),this.parentRelationType===Wr.Error?Fe.includes(this.parent.type)||(this.parent.error=this):this.parent.addOutput(this),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.writesValues.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.writesValues.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,index:this.index,parentRelationType:this.parentRelationType,writesValues:this.writesValues.map(e=>e.toJSON()),declaration:this.declaration.toJSON(),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,index:this.index,parentRelationType:this.parentRelationType,declaration:this.declaration.toReference(),writesValues:this.writesValues.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.writesValues.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,declaration:this.declaration.id,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.writesValues.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this}validate(){const e=w2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}getDefaultValue(){var e,t;return((t=(e=this.declaration)==null?void 0:e.dataType)==null?void 0:t.defaultValue)||null}clone(e){return new he(this.toJSON(),this.project)}getDataType(){var t;return this.parent.type===n.Operation?this.parent.declaration.inferOutputMapDataType(this):((t=this.declaration)==null?void 0:t.getDataType())||null}};d(he,"MUTABLE_BASE_PROPERTIES",[]),d(he,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(he,"BASE_PROPERTIES",[...he.MUTABLE_BASE_PROPERTIES,...he.INMUTABLE_BASE_PROPERTIES]),d(he,"MUTABLE_META_PROPERTIES",[...he.MUTABLE_BASE_PROPERTIES,"index"]),d(he,"INMUTABLE_META_PROPERTIES",[...he.INMUTABLE_BASE_PROPERTIES]),d(he,"META_PROPERTIES",[...he.MUTABLE_META_PROPERTIES,...he.INMUTABLE_META_PROPERTIES]),d(he,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(he,"INMUTABLE_UPSTREAM_PROPERTIES",["parent","declaration"]),d(he,"UPSTREAM_PROPERTIES",[...he.MUTABLE_UPSTREAM_PROPERTIES,...he.INMUTABLE_UPSTREAM_PROPERTIES]),d(he,"MUTABLE_DOWNSTREAM_PROPERTIES",["writesValues"]),d(he,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(he,"DOWNSTREAM_PROPERTIES",[...he.MUTABLE_DOWNSTREAM_PROPERTIES,...he.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(he,"PROPERTIES",[...he.META_PROPERTIES,...he.UPSTREAM_PROPERTIES,...he.DOWNSTREAM_PROPERTIES]);let Sn=he;class _2 extends Sn{constructor(t,i){super(t,i);d(this,"declaration");d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}class N2 extends Sn{constructor(t,i){super(t,i);d(this,"declaration");d(this,"parent");d(this,"errors",[])}toJSON(){return super.toJSON()}}function M2(r){var s;const e=M3(),t=r.toJSON();e.safeParse(t).success,(s=r.dataType)==null||s.validate();const a=[];if(r.id==="company-dto-func-declaration-argument-dcl-id"){const o=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(o.error)}if(r.id==="manual-hello-world-loop-current-iteration-number-output-map-id"){const o=Y({id:`${r.id}--${M.PropertyImplementsNonAbstact}`,message:`Property "${C(r,r.project)}" with id "${r.id}" implements a non-abstract property "${C(r,r.project)}" with id "${r.id}".`,issue:null,severity:T.Error,code:M.PropertyImplementsNonAbstact,entity:r});a.push(o.error)}return ie(r.errors,a)}const Pe=class Pe{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"index");d(this,"required");d(this,"type",n.ArgumentDeclaration);d(this,"dataType",null);d(this,"writesValues",[]);d(this,"implements",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.index=e.index,this.name=e.name,this.description=e.description,this.required=e.required}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s={id:e.id,version:1,name:e.name,type:n.ArgumentDeclaration,index:a.inputs.length,description:e.description,required:e.required,implements:null,dataType:null,writesValues:[],parent:a},o=v(s,t);return o.setParent(a),o.initChildren(),o}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.FunctionDeclaration,n.Search,n.Condition]}},t);i=s.modifiedData;const o=hu(i,t);if(i.parent){const l=t.get(N(i.parent));if(l&&Ue.includes(l.type)){const p=l.implements;if(p){const y=p.inputs.find(A=>A.name===i.name),h=p.inputs.filter(A=>!l.inputs.find(F=>F.type===n.ArgumentDeclaration&&F.name===A.name)),m=l.inputs.filter(A=>A.type===n.ArgumentDeclaration),R=m.find(A=>A.name===i.name),g=m.length?`The parent entity already implements the following arguments: ${U(m.map(A=>`'${A.id}' (${A.name})`),", "," and ")}.`:"The parent entity does not yet have any implemented arguments.",D=h.length?`The parent entity is still missing the following arguments in the implementation: ${U(h.map(A=>`'${A.id}' (${A.name})`),", "," and ")}.`:"The parent entity has all the arguments it needs implemented.";y?R&&a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ArgumentDeclaration}' with id '${i.id}' should not exist in a parent entity of type '${l.type}' with id '${l.id}' that implements a ${n.ActionDescriptor} with fixed arguments.
132
132
  Adding a new argument would make the implementation invalid. An argument with the same name already exists in the parent entity.
133
133
  ${g}
134
134
  ${D}`,issue:null})):a.push(new E({id:`${i.id}--${S.NoOverlapWithImplementedSignature}`,code:S.NoOverlapWithImplementedSignature,severity:T.Error,message:`Entity of type '${n.ArgumentDeclaration}' with id '${i.id}' should not exist in a parent entity of type '${l.type}' with id '${l.id}' that implements a ${n.ActionDescriptor} with fixed arguments.
135
135
  Adding a new argument would make the implementation invalid. There are no arguments in the descriptor with the same name.
136
136
  ${g}
137
- ${D}`,issue:null}))}}}return a.push(...s.errors,...o,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
137
+ ${D}`,issue:null}))}}}return a.push(...s.errors,...o,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
138
138
  This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent.addInputDeclaration(this),e.push(this.parent),this.writesValues.forEach(a=>{a.setValueWriter(this),e.push(a)}),{updated:b(e),added:b(t),removed:b(i),self:this}}addValueReader(e){return this.writesValues.includes(e)?this:(this.writesValues.push(e),this)}removeValueReader(e){return this.writesValues=this.writesValues.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}setImplements(e){return this.implements=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.dataType&&(this.dataType=v(this.initialData.dataType,this.project),this.dataType.setParent(this),this.dataType.initChildren()),this.initialData.implements){const e=v(this.initialData.implements,this.project);this.implements=e}return Ga.initWritesValues(this,this.parent),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.index=e.index||(e.index!==0?this.index:0),this.name=e.name||this.name,this.description=e.description||this.description,this.required=e.required||this.required,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.writesValues.forEach(s=>{i.push(s),s.readsValue=null}),e||(i.push(this.parent),this.parent.removeInputDeclaration(this)),this.dataType){const s=this.dataType.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s.affected),a.push(...s.removed)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.writesValues.forEach(i=>{t.push(i),i.setValueWriter(this)}),t.push(this.parent),this.parent.addInputDeclaration(this),this.dataType){const{affected:i}=this.dataType.restore({seenEntities:e});t.push(...i)}return{affected:b(t),self:this}}toFlat(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this,...this.writesValues.flatMap(a=>a.toFlat(e)),...((i=this.dataType)==null?void 0:i.toFlat(e))||[]])}toFlatIds(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.writesValues.flatMap(a=>a.toFlatIds(e)),...((i=this.dataType)==null?void 0:i.toFlatIds(e))||[]])}toJSON(){var e,t;return{id:this.id,version:this.version,name:this.name,type:this.type,index:this.index,description:this.description,required:this.required,dataType:((e=this.dataType)==null?void 0:e.toJSON())||null,implements:((t=this.implements)==null?void 0:t.toJSON())||null,writesValues:this.writesValues.map(i=>i.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,index:this.index,required:this.required,writesValues:this.writesValues.map(i=>i.toReference()),implements:((e=this.implements)==null?void 0:e.toReference())||null,dataType:((t=this.dataType)==null?void 0:t.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.writesValues.flatMap(a=>a.toFlatJSON(e)),...((i=this.dataType)==null?void 0:i.toFlatJSON(e))||[]])}toGenerationTarget(){return{id:this.id,name:this.name,description:this.description,type:this.type,required:this.required,parent:this.parent.id}}toFlatGenerationTarget(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.writesValues.flatMap(a=>a.toFlatGenerationTarget(e)),...((i=this.dataType)==null?void 0:i.toFlatGenerationTarget(e))||[]])}clearErrors(){var e;return this.errors=[],(e=this.dataType)==null||e.clearErrors(),this}validate(){const e=M2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){var t;return[...this.errors,...((t=this.dataType)==null?void 0:t.getErrors())||[]]}getShallowErrors(){return this.errors}getDefaultValue(){var e;return((e=this==null?void 0:this.dataType)==null?void 0:e.defaultValue)||null}clone(e=null,t=null,i=!0){var h;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.ArgumentDeclaration,this.project);a.dataType=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(h=this.dataType)==null?void 0:h.clone(p,l+"--data-type-id",i);return p.dataType=y||null,p}getDataType(){return this.dataType}setDataType(e){return this.dataType=e,this}removeDataType(){return this.dataType=null,this}};d(Pe,"MUTABLE_BASE_PROPERTIES",["name","description","required"]),d(Pe,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Pe,"BASE_PROPERTIES",[...Pe.MUTABLE_BASE_PROPERTIES,...Pe.INMUTABLE_BASE_PROPERTIES]),d(Pe,"MUTABLE_META_PROPERTIES",[...Pe.MUTABLE_BASE_PROPERTIES,"index"]),d(Pe,"INMUTABLE_META_PROPERTIES",[...Pe.INMUTABLE_BASE_PROPERTIES]),d(Pe,"META_PROPERTIES",[...Pe.MUTABLE_META_PROPERTIES,...Pe.INMUTABLE_META_PROPERTIES]),d(Pe,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Pe,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Pe,"UPSTREAM_PROPERTIES",[...Pe.MUTABLE_UPSTREAM_PROPERTIES,...Pe.INMUTABLE_UPSTREAM_PROPERTIES]),d(Pe,"MUTABLE_DOWNSTREAM_PROPERTIES",["writesValues","dataType"]),d(Pe,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Pe,"DOWNSTREAM_PROPERTIES",[...Pe.MUTABLE_DOWNSTREAM_PROPERTIES,...Pe.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Pe,"PROPERTIES",[...Pe.META_PROPERTIES,...Pe.UPSTREAM_PROPERTIES,...Pe.DOWNSTREAM_PROPERTIES]);let $r=Pe;function V2(r){const e=vd(),t=r.toJSON();e.safeParse(t).success;const a=[];return ie(r.errors,a)}function L2(r,e){const t=[];if(r.parent)if(r.parent){const i=e.get(r.parent);i?[n.InputMap,n.DataType].includes(i.type)?i.type===n.DataType&&i.defaultValue&&t.push(new E({id:`${r.id}--${r.parent}--${f.NewEntityWouldOverriteExisting}`,code:f.NewEntityWouldOverriteExisting,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a 'parent' of type 'data-type' which already has an existing default value entity with id "${i.defaultValue.id}".
139
139
  Data types can only have one 'primitive-value' entity as 'defaultValue'.
140
140
  You can update the existing 'primitive-value' with the 'update' action, for example, like so:
@@ -147,22 +147,22 @@ You can update the existing 'primitive-value' with the 'update' action, for exam
147
147
  }
148
148
  }
149
149
  }\`\`\`
150
- Or 'delete' and then 'post' actions to replace it.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type 'input-map' or 'data-type'.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}else t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}" is missing a 'parent' reference. The 'parent' of a primitive value entity must be a reference to an entity of type 'input-map' or 'data-type'.`,issue:null}));else return t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}" is missing a 'parent' reference. The 'parent' of a primitive value entity must be a reference to an entity of type 'input-map' or 'data-type'.`,issue:null})),t;if(r.valueAsType){const i=[],a=[],s=r.valueAsType;Array.isArray(s)?s.forEach(o=>{typeof o=="string"?a.push(o):i.push(o)}):typeof s=="string"?a.push(s):i.push(s),i.forEach(o=>{const l=_o(o);t.push(...l),l.length===0&&a.push(o.entityId)}),a.forEach(o=>{const l=e.get(o);l?[n.CustomEntity,n.BuiltInBaseEntity].includes(l.type)||t.push(new E({id:`${r.id}--${o}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'valueAsType' reference that isn't pointing to an entity of type 'custom-entity', 'function-declaration' or 'operation'.`,issue:null})):t.push(new E({id:`${r.id}--${o}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${o}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))})}return t}const Ae=class Ae{constructor(e,t){d(this,"initialData");d(this,"type",n.PrimitiveValue);d(this,"id");d(this,"version");d(this,"name");d(this,"autogeneration",null);d(this,"value",null);d(this,"valueAsType",null);d(this,"errors",[]);d(this,"parent");d(this,"standaloneParent");d(this,"project");d(this,"initialized",!1);d(this,"standalone",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.autogeneration=e.autogeneration,this.value=e.value}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;e.valueAsType&&(Array.isArray(e.valueAsType)?s=e.valueAsType.map(p=>t.get(p)||t.getBuiltIn(p)):s=t.get(e.valueAsType)||t.getBuiltIn(e.valueAsType));const o={id:e.id,version:1,type:n.PrimitiveValue,name:e.name,autogeneration:e.autogeneration,valueAsType:s,value:e.value||null,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=L2(i,t);return a.push(...s,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
151
- This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return(a=this.parent)==null||a.setDefaultValue(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}setStandaloneParent(e){return this.standaloneParent=e,this}setValueAsType(e){return this.valueAsType=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.standalone){if(this.initialData.valueAsType)if(Array.isArray(this.initialData.valueAsType))this.valueAsType=this.initialData.valueAsType.map(e=>{const t=this.project.get(e.id);if(!t)throw new Error(`Standalone entity of type '${this.type}' with id '${this.id}' has a reference to an entity of type '${e.type}' with id '${e.id}' that is not part of the project state.`);return t});else{const e=this.project.get(this.initialData.valueAsType.id);if(!e)throw new Error(`Standalone entity of type '${this.type}' with id '${this.id}' has a reference to an entity of type '${this.initialData.valueAsType.type}' with id '${this.initialData.valueAsType.id}' that is not part of the project state.`);this.valueAsType=e}return this}return this.initialData.valueAsType&&(Array.isArray(this.initialData.valueAsType)?this.valueAsType=this.initialData.valueAsType.map(e=>v(e,this.project)):this.valueAsType=v(this.initialData.valueAsType,this.project)),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.subscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.autogeneration=e.autogeneration||this.autogeneration,e.value!==void 0&&(this.value=e.value),this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlat(e)):this.valueAsType.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlatIds(e)):this.valueAsType.toFlatIds(e):[]])}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,autogeneration:this.autogeneration,value:this.value,valueAsType:this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.map(t=>t.toReference()):this.valueAsType.toReference():null,parent:(e=this.parent)==null?void 0:e.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,valueAsType:this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.map(t=>t.toReference()):this.valueAsType.toReference():null,value:this.value,autogeneration:this.autogeneration,parent:(e=this.parent)==null?void 0:e.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlatJSON(e)):this.valueAsType.toFlatJSON(e):[]])}toGenerationTarget(){var e;return{id:this.id,type:this.type,name:this.name,valueAsType:this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.map(t=>t.id):this.valueAsType.id:null,value:this.value,autogeneration:this.autogeneration,parent:(e=this.parent)==null?void 0:e.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlatGenerationTarget(e)):this.valueAsType.toFlatGenerationTarget(e):[]])}clearErrors(){return this.errors=[],this}validate(){const e=V2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){const a=this.toJSON(),s=t||Ze(this.name,n.PrimitiveValue,this.project);a.id=s;const o=kt(a,this.project);return e&&o.setParent(e),i&&o.subscribe(),o}merge(e){const t=[],i=[],a=[];return this.valueAsType!==(e==null?void 0:e.valueAsType)&&(this.setValueAsType(e.valueAsType),t.push(this)),this.value!==e.value&&(this.value=e.value,t.push(this)),this.autogeneration!==e.autogeneration&&(this.autogeneration=e.autogeneration,t.push(this)),this.name!==e.name&&(this.name=e.name,t.push(this)),{updated:b(t),added:b(i),removed:b(a),self:this}}};d(Ae,"MUTABLE_BASE_PROPERTIES",["name","autogeneration","value"]),d(Ae,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(Ae,"BASE_PROPERTIES",[...Ae.MUTABLE_BASE_PROPERTIES,...Ae.INMUTABLE_BASE_PROPERTIES]),d(Ae,"MUTABLE_META_PROPERTIES",[...Ae.MUTABLE_BASE_PROPERTIES]),d(Ae,"INMUTABLE_META_PROPERTIES",[...Ae.INMUTABLE_BASE_PROPERTIES]),d(Ae,"META_PROPERTIES",[...Ae.MUTABLE_META_PROPERTIES,...Ae.INMUTABLE_META_PROPERTIES]),d(Ae,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ae,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Ae,"UPSTREAM_PROPERTIES",[...Ae.MUTABLE_UPSTREAM_PROPERTIES,...Ae.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ae,"MUTABLE_DOWNSTREAM_PROPERTIES",["valueAsType"]),d(Ae,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ae,"DOWNSTREAM_PROPERTIES",[...Ae.MUTABLE_DOWNSTREAM_PROPERTIES,...Ae.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ae,"PROPERTIES",[...Ae.META_PROPERTIES,...Ae.UPSTREAM_PROPERTIES,...Ae.DOWNSTREAM_PROPERTIES]);let Ci=Ae;function G2(r){var s;const e=x9(),t=r.toJSON();e.safeParse(t).success,r.outputs.forEach(o=>o.validate()),(s=r.throws)==null||s.validate();const a=[];return ie(r.errors,a)}function $2(r){var s;const e=G9(),t=r.toJSON();e.safeParse(t).success,r.outputs.forEach(o=>o.validate()),(s=r.throws)==null||s.validate();const a=[];return ie(r.errors,a)}const Oe=class Oe{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.ContinueStatement);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"throws",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),o=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),l=e.calledByError.map(h=>{const m=N(h);return t.get(m)}),p={id:e.id,version:1,type:n.ContinueStatement,x:0,y:0,outputs:[],calledBySuccess:o,calledByError:l,calledByEntry:s,throws:null,parent:a},y=v(p,t);return y.setParent(a),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.Loop]}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
150
+ Or 'delete' and then 'post' actions to replace it.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type 'input-map' or 'data-type'.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}else t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}" is missing a 'parent' reference. The 'parent' of a primitive value entity must be a reference to an entity of type 'input-map' or 'data-type'.`,issue:null}));else return t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}" is missing a 'parent' reference. The 'parent' of a primitive value entity must be a reference to an entity of type 'input-map' or 'data-type'.`,issue:null})),t;if(r.valueAsType){const i=[],a=[],s=r.valueAsType;Array.isArray(s)?s.forEach(o=>{typeof o=="string"?a.push(o):i.push(o)}):typeof s=="string"?a.push(s):i.push(s),i.forEach(o=>{const l=_o(o);t.push(...l),l.length===0&&a.push(o.entityId)}),a.forEach(o=>{const l=e.get(o);l?[n.CustomEntity,n.BuiltInBaseEntity].includes(l.type)||t.push(new E({id:`${r.id}--${o}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'valueAsType' reference that isn't pointing to an entity of type 'custom-entity', 'function-declaration' or 'operation'.`,issue:null})):t.push(new E({id:`${r.id}--${o}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${o}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))})}return t}const Ae=class Ae{constructor(e,t){d(this,"initialData");d(this,"type",n.PrimitiveValue);d(this,"id");d(this,"version");d(this,"name");d(this,"autogeneration",null);d(this,"value",null);d(this,"valueAsType",null);d(this,"errors",[]);d(this,"parent");d(this,"standaloneParent");d(this,"project");d(this,"initialized",!1);d(this,"standalone",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.autogeneration=e.autogeneration,this.value=e.value}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i);let s=null;e.valueAsType&&(Array.isArray(e.valueAsType)?s=e.valueAsType.map(p=>t.get(p)||t.getBuiltIn(p)):s=t.get(e.valueAsType)||t.getBuiltIn(e.valueAsType));const o={id:e.id,version:1,type:n.PrimitiveValue,name:e.name,autogeneration:e.autogeneration,valueAsType:s,value:e.value||null,parent:a},l=v(o,t);return l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=L2(i,t);return a.push(...s,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
151
+ This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return(a=this.parent)==null||a.setDefaultValue(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}setStandaloneParent(e){return this.standaloneParent=e,this}setValueAsType(e){return this.valueAsType=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.standalone){if(this.initialData.valueAsType)if(Array.isArray(this.initialData.valueAsType))this.valueAsType=this.initialData.valueAsType.map(e=>{const t=this.project.get(e.id);if(!t)throw new Error(`Standalone entity of type '${this.type}' with id '${this.id}' has a reference to an entity of type '${e.type}' with id '${e.id}' that is not part of the project state.`);return t});else{const e=this.project.get(this.initialData.valueAsType.id);if(!e)throw new Error(`Standalone entity of type '${this.type}' with id '${this.id}' has a reference to an entity of type '${this.initialData.valueAsType.type}' with id '${this.initialData.valueAsType.id}' that is not part of the project state.`);this.valueAsType=e}return this}return this.initialData.valueAsType&&(Array.isArray(this.initialData.valueAsType)?this.valueAsType=this.initialData.valueAsType.map(e=>v(e,this.project)):this.valueAsType=v(this.initialData.valueAsType,this.project)),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.subscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.autogeneration=e.autogeneration||this.autogeneration,e.value!==void 0&&(this.value=e.value),this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),{affected:t,self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlat(e)):this.valueAsType.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlatIds(e)):this.valueAsType.toFlatIds(e):[]])}toJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,autogeneration:this.autogeneration,value:this.value,valueAsType:this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.map(t=>t.toReference()):this.valueAsType.toReference():null,parent:(e=this.parent)==null?void 0:e.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e;return{id:this.id,version:this.version,type:this.type,name:this.name,valueAsType:this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.map(t=>t.toReference()):this.valueAsType.toReference():null,value:this.value,autogeneration:this.autogeneration,parent:(e=this.parent)==null?void 0:e.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlatJSON(e)):this.valueAsType.toFlatJSON(e):[]])}toGenerationTarget(){var e;return{id:this.id,type:this.type,name:this.name,valueAsType:this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.map(t=>t.id):this.valueAsType.id:null,value:this.value,autogeneration:this.autogeneration,parent:(e=this.parent)==null?void 0:e.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.valueAsType?Array.isArray(this.valueAsType)?this.valueAsType.flatMap(i=>i.toFlatGenerationTarget(e)):this.valueAsType.toFlatGenerationTarget(e):[]])}clearErrors(){return this.errors=[],this}validate(){const e=V2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){const a=this.toJSON(),s=t||Ze(this.name,n.PrimitiveValue,this.project);a.id=s;const o=kt(a,this.project);return e&&o.setParent(e),i&&o.subscribe(),o}merge(e){const t=[],i=[],a=[];return this.valueAsType!==(e==null?void 0:e.valueAsType)&&(this.setValueAsType(e.valueAsType),t.push(this)),this.value!==e.value&&(this.value=e.value,t.push(this)),this.autogeneration!==e.autogeneration&&(this.autogeneration=e.autogeneration,t.push(this)),this.name!==e.name&&(this.name=e.name,t.push(this)),{updated:b(t),added:b(i),removed:b(a),self:this}}};d(Ae,"MUTABLE_BASE_PROPERTIES",["name","autogeneration","value"]),d(Ae,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(Ae,"BASE_PROPERTIES",[...Ae.MUTABLE_BASE_PROPERTIES,...Ae.INMUTABLE_BASE_PROPERTIES]),d(Ae,"MUTABLE_META_PROPERTIES",[...Ae.MUTABLE_BASE_PROPERTIES]),d(Ae,"INMUTABLE_META_PROPERTIES",[...Ae.INMUTABLE_BASE_PROPERTIES]),d(Ae,"META_PROPERTIES",[...Ae.MUTABLE_META_PROPERTIES,...Ae.INMUTABLE_META_PROPERTIES]),d(Ae,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ae,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Ae,"UPSTREAM_PROPERTIES",[...Ae.MUTABLE_UPSTREAM_PROPERTIES,...Ae.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ae,"MUTABLE_DOWNSTREAM_PROPERTIES",["valueAsType"]),d(Ae,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ae,"DOWNSTREAM_PROPERTIES",[...Ae.MUTABLE_DOWNSTREAM_PROPERTIES,...Ae.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ae,"PROPERTIES",[...Ae.META_PROPERTIES,...Ae.UPSTREAM_PROPERTIES,...Ae.DOWNSTREAM_PROPERTIES]);let Ci=Ae;function G2(r){var s;const e=x9(),t=r.toJSON();e.safeParse(t).success,r.outputs.forEach(o=>o.validate()),(s=r.throws)==null||s.validate();const a=[];return ie(r.errors,a)}function $2(r){var s;const e=G9(),t=r.toJSON();e.safeParse(t).success,r.outputs.forEach(o=>o.validate()),(s=r.throws)==null||s.validate();const a=[];return ie(r.errors,a)}const Oe=class Oe{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.ContinueStatement);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"throws",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),o=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),l=e.calledByError.map(h=>{const m=N(h);return t.get(m)}),p={id:e.id,version:1,type:n.ContinueStatement,x:0,y:0,outputs:[],calledBySuccess:o,calledByError:l,calledByEntry:s,throws:null,parent:a},y=v(p,t);return y.setParent(a),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.Loop]}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
152
152
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
153
153
  You shouldn't have to manually update a 'parent' property.
154
- Specifically for continue statements the parent needs to always be the 'loop' entity that contains it.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.parent.addContinueStatement(this),e.push(this),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addOutputDeclaration(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeOutputDeclaration(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.throws&&(this.throws=v(this.initialData.throws,this.project),this.throws.setParent(this),this.throws.initChildren()),this.parent.addContinueStatement(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.throws){const{affected:s,removed:o}=this.throws.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.parent.removeContinueStatement(this),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.throws){const{affected:i}=this.throws.restore({seenEntities:e});t.push(...i)}return this.parent.addContinueStatement(this),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.outputs.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e)),...this.throws?this.throws.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e)),...this.throws?this.throws.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toJSON()),throws:((e=this.throws)==null?void 0:e.toJSON())||null,parent:((t=this.parent)==null?void 0:t.toReference())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,outputs:this.outputs.map(t=>t.toReference()),calledBySuccess:this.calledBySuccess.map(t=>t.toReference()),calledByError:this.calledByError.map(t=>t.toReference()),calledByEntry:this.calledByEntry.map(t=>t.toReference()),throws:((e=this.throws)==null?void 0:e.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.calledBy.flatMap(a=>a.toFlatJSON(e)),...((i=this.throws)==null?void 0:i.toFlatJSON(e))||[]])}toGenerationTarget(){return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(e=>e.id),calledByError:this.calledByError.map(e=>e.id),calledBySuccess:this.calledBySuccess.map(e=>e.id),parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.throws?this.throws.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.outputs.forEach(t=>t.clearErrors()),(e=this.throws)==null||e.clearErrors(),this}validate(){const e=$2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.outputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e){return new Oe(this.toJSON(),this.project)}};d(Oe,"MUTABLE_BASE_PROPERTIES",[]),d(Oe,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Oe,"BASE_PROPERTIES",[...Oe.MUTABLE_BASE_PROPERTIES,...Oe.INMUTABLE_BASE_PROPERTIES]),d(Oe,"MUTABLE_META_PROPERTIES",["x","y"]),d(Oe,"INMUTABLE_META_PROPERTIES",[...Oe.INMUTABLE_BASE_PROPERTIES]),d(Oe,"META_PROPERTIES",[...Oe.MUTABLE_META_PROPERTIES,...Oe.INMUTABLE_META_PROPERTIES]),d(Oe,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(Oe,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(Oe,"UPSTREAM_PROPERTIES",[...Oe.MUTABLE_UPSTREAM_PROPERTIES,...Oe.INMUTABLE_UPSTREAM_PROPERTIES]),d(Oe,"MUTABLE_DOWNSTREAM_PROPERTIES",["outputs","throws"]),d(Oe,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Oe,"DOWNSTREAM_PROPERTIES",[...Oe.MUTABLE_DOWNSTREAM_PROPERTIES,...Oe.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Oe,"PROPERTIES",[...Oe.META_PROPERTIES,...Oe.UPSTREAM_PROPERTIES,...Oe.DOWNSTREAM_PROPERTIES]);let bt=Oe;const dt=class dt{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.ReturnStatement);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"throws",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),o=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),l=e.calledByError.map(h=>{const m=N(h);return t.get(m)}),p={id:e.id,version:1,type:n.ReturnStatement,x:0,y:0,outputs:[],calledBySuccess:o,calledByError:l,calledByEntry:s,throws:null,parent:a},y=v(p,t);return y.setParent(a),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:ut}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
154
+ Specifically for continue statements the parent needs to always be the 'loop' entity that contains it.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.parent.addContinueStatement(this),e.push(this),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addOutputDeclaration(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeOutputDeclaration(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.throws&&(this.throws=v(this.initialData.throws,this.project),this.throws.setParent(this),this.throws.initChildren()),this.parent.addContinueStatement(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.throws){const{affected:s,removed:o}=this.throws.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.parent.removeContinueStatement(this),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.throws){const{affected:i}=this.throws.restore({seenEntities:e});t.push(...i)}return this.parent.addContinueStatement(this),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.outputs.flatMap(i=>i.toFlat(e)),...this.calledBy.flatMap(i=>i.toFlat(e)),...this.throws?this.throws.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.calledBy.flatMap(i=>i.toFlatIds(e)),...this.throws?this.throws.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toJSON()),throws:((e=this.throws)==null?void 0:e.toJSON())||null,parent:((t=this.parent)==null?void 0:t.toReference())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,outputs:this.outputs.map(t=>t.toReference()),calledBySuccess:this.calledBySuccess.map(t=>t.toReference()),calledByError:this.calledByError.map(t=>t.toReference()),calledByEntry:this.calledByEntry.map(t=>t.toReference()),throws:((e=this.throws)==null?void 0:e.toReference())||null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){var i;return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.outputs.flatMap(a=>a.toFlatJSON(e)),...this.calledBy.flatMap(a=>a.toFlatJSON(e)),...((i=this.throws)==null?void 0:i.toFlatJSON(e))||[]])}toGenerationTarget(){return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(e=>e.id),calledByError:this.calledByError.map(e=>e.id),calledBySuccess:this.calledBySuccess.map(e=>e.id),parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.throws?this.throws.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.outputs.forEach(t=>t.clearErrors()),(e=this.throws)==null||e.clearErrors(),this}validate(){const e=$2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.outputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e){return new Oe(this.toJSON(),this.project)}};d(Oe,"MUTABLE_BASE_PROPERTIES",[]),d(Oe,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Oe,"BASE_PROPERTIES",[...Oe.MUTABLE_BASE_PROPERTIES,...Oe.INMUTABLE_BASE_PROPERTIES]),d(Oe,"MUTABLE_META_PROPERTIES",["x","y"]),d(Oe,"INMUTABLE_META_PROPERTIES",[...Oe.INMUTABLE_BASE_PROPERTIES]),d(Oe,"META_PROPERTIES",[...Oe.MUTABLE_META_PROPERTIES,...Oe.INMUTABLE_META_PROPERTIES]),d(Oe,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(Oe,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(Oe,"UPSTREAM_PROPERTIES",[...Oe.MUTABLE_UPSTREAM_PROPERTIES,...Oe.INMUTABLE_UPSTREAM_PROPERTIES]),d(Oe,"MUTABLE_DOWNSTREAM_PROPERTIES",["outputs","throws"]),d(Oe,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Oe,"DOWNSTREAM_PROPERTIES",[...Oe.MUTABLE_DOWNSTREAM_PROPERTIES,...Oe.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Oe,"PROPERTIES",[...Oe.META_PROPERTIES,...Oe.UPSTREAM_PROPERTIES,...Oe.DOWNSTREAM_PROPERTIES]);let bt=Oe;const dt=class dt{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.ReturnStatement);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"throws",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),o=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),l=e.calledByError.map(h=>{const m=N(h);return t.get(m)}),p={id:e.id,version:1,type:n.ReturnStatement,x:0,y:0,outputs:[],calledBySuccess:o,calledByError:l,calledByEntry:s,throws:null,parent:a},y=v(p,t);return y.setParent(a),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:ut}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
155
155
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
156
156
  You shouldn't have to manually update a 'parent' property.
157
- Specifically for return statements the parent needs to always be the 'function-declaration' or 'global-event' that contains it.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.parent.addReturnStatement(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addOutputDeclaration(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeOutputDeclaration(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.throws&&(this.throws=v(this.initialData.throws,this.project),this.throws.setParent(this),this.throws.initChildren()),this.parent.addReturnStatement(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.throws){const{affected:s,removed:o}=this.throws.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.parent.removeReturnStatement(this),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.throws){const{affected:i}=this.throws.restore({seenEntities:e});t.push(...i)}return this.parent.addReturnStatement(this),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.outputs.flatMap(i=>i.toFlat(e)),...this.throws?this.throws.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.throws?this.throws.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toJSON()),parent:((e=this.parent)==null?void 0:e.toReference())||null,throws:((t=this.throws)==null?void 0:t.toJSON())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,outputs:this.outputs.map(i=>i.toReference()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),throws:((e=this.throws)==null?void 0:e.toReference())||null,parent:((t=this.parent)==null?void 0:t.toReference())||null}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.throws?this.throws.toFlatJSON(e):[]])}toGenerationTarget(){return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(e=>e.id),calledByError:this.calledByError.map(e=>e.id),calledBySuccess:this.calledBySuccess.map(e=>e.id),parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.throws?this.throws.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.outputs.forEach(t=>t.clearErrors()),(e=this.throws)==null||e.clearErrors(),this}validate(){const e=G2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.outputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e){return new dt(this.toJSON(),this.project)}};d(dt,"MUTABLE_BASE_PROPERTIES",[]),d(dt,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(dt,"BASE_PROPERTIES",[...bt.MUTABLE_BASE_PROPERTIES,...bt.INMUTABLE_BASE_PROPERTIES]),d(dt,"MUTABLE_META_PROPERTIES",["x","y"]),d(dt,"INMUTABLE_META_PROPERTIES",[...bt.INMUTABLE_BASE_PROPERTIES]),d(dt,"META_PROPERTIES",[...bt.MUTABLE_META_PROPERTIES,...bt.INMUTABLE_META_PROPERTIES]),d(dt,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(dt,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(dt,"UPSTREAM_PROPERTIES",[...bt.MUTABLE_UPSTREAM_PROPERTIES,...bt.INMUTABLE_UPSTREAM_PROPERTIES]),d(dt,"MUTABLE_DOWNSTREAM_PROPERTIES",["outputs","throws"]),d(dt,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(dt,"DOWNSTREAM_PROPERTIES",[...bt.MUTABLE_DOWNSTREAM_PROPERTIES,...bt.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(dt,"PROPERTIES",[..._t.META_PROPERTIES,..._t.UPSTREAM_PROPERTIES,..._t.DOWNSTREAM_PROPERTIES]);let Fr=dt;function F2(r){var s;const e=z9(),t=r.toJSON();e.safeParse(t).success,r.outputs.forEach(o=>o.validate()),(s=r.throws)==null||s.validate();const a=[];return ie(r.errors,a)}const Se=class Se{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.BreakStatement);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"throws",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),o=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),l=e.calledByError.map(h=>{const m=N(h);return t.get(m)}),p={id:e.id,version:1,type:n.BreakStatement,x:0,y:0,outputs:[],calledBySuccess:o,calledByError:l,calledByEntry:s,throws:null,parent:a},y=v(p,t);return y.setParent(a),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.Loop]}},t);return i=s.modifiedData,a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
157
+ Specifically for return statements the parent needs to always be the 'function-declaration' or 'global-event' that contains it.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.parent.addReturnStatement(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addOutputDeclaration(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeOutputDeclaration(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.throws&&(this.throws=v(this.initialData.throws,this.project),this.throws.setParent(this),this.throws.initChildren()),this.parent.addReturnStatement(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.throws){const{affected:s,removed:o}=this.throws.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.parent.removeReturnStatement(this),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.throws){const{affected:i}=this.throws.restore({seenEntities:e});t.push(...i)}return this.parent.addReturnStatement(this),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.outputs.flatMap(i=>i.toFlat(e)),...this.throws?this.throws.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.throws?this.throws.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toJSON()),parent:((e=this.parent)==null?void 0:e.toReference())||null,throws:((t=this.throws)==null?void 0:t.toJSON())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,outputs:this.outputs.map(i=>i.toReference()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),throws:((e=this.throws)==null?void 0:e.toReference())||null,parent:((t=this.parent)==null?void 0:t.toReference())||null}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.throws?this.throws.toFlatJSON(e):[]])}toGenerationTarget(){return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(e=>e.id),calledByError:this.calledByError.map(e=>e.id),calledBySuccess:this.calledBySuccess.map(e=>e.id),parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.throws?this.throws.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.outputs.forEach(t=>t.clearErrors()),(e=this.throws)==null||e.clearErrors(),this}validate(){const e=G2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.outputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e){return new dt(this.toJSON(),this.project)}};d(dt,"MUTABLE_BASE_PROPERTIES",[]),d(dt,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(dt,"BASE_PROPERTIES",[...bt.MUTABLE_BASE_PROPERTIES,...bt.INMUTABLE_BASE_PROPERTIES]),d(dt,"MUTABLE_META_PROPERTIES",["x","y"]),d(dt,"INMUTABLE_META_PROPERTIES",[...bt.INMUTABLE_BASE_PROPERTIES]),d(dt,"META_PROPERTIES",[...bt.MUTABLE_META_PROPERTIES,...bt.INMUTABLE_META_PROPERTIES]),d(dt,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(dt,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(dt,"UPSTREAM_PROPERTIES",[...bt.MUTABLE_UPSTREAM_PROPERTIES,...bt.INMUTABLE_UPSTREAM_PROPERTIES]),d(dt,"MUTABLE_DOWNSTREAM_PROPERTIES",["outputs","throws"]),d(dt,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(dt,"DOWNSTREAM_PROPERTIES",[...bt.MUTABLE_DOWNSTREAM_PROPERTIES,...bt.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(dt,"PROPERTIES",[..._t.META_PROPERTIES,..._t.UPSTREAM_PROPERTIES,..._t.DOWNSTREAM_PROPERTIES]);let Fr=dt;function F2(r){var s;const e=z9(),t=r.toJSON();e.safeParse(t).success,r.outputs.forEach(o=>o.validate()),(s=r.throws)==null||s.validate();const a=[];return ie(r.errors,a)}const Se=class Se{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.BreakStatement);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"throws",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestion",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){const i=N(e.parent),a=t.get(i),s=e.calledByEntry.map(h=>{const m=N(h);return t.get(m)}),o=e.calledBySuccess.map(h=>{const m=N(h);return t.get(m)}),l=e.calledByError.map(h=>{const m=N(h);return t.get(m)}),p={id:e.id,version:1,type:n.BreakStatement,x:0,y:0,outputs:[],calledBySuccess:o,calledByError:l,calledByEntry:s,throws:null,parent:a},y=v(p,t);return y.setParent(a),y.initChildren(),y}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.Loop]}},t);return i=s.modifiedData,a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
158
158
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
159
159
  You shouldn't have to manually update a 'parent' property.
160
160
  Specifically for break statements the parent needs to always be the 'loop' entity that contains it.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.calledByEntry.forEach(a=>{a.addCall(this),e.push(a)}),this.calledBySuccess.forEach(a=>{a.addSuccessCall(this),e.push(a)}),this.calledByError.forEach(a=>{a.addErrorCall(this),e.push(a)}),this.parent.addBreakStatement(this),e.push(this.parent),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}addOutputDeclaration(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeOutputDeclaration(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.throws&&(this.throws=v(this.initialData.throws,this.project),this.throws.setParent(this),this.throws.initChildren()),this.parent.addBreakStatement(this),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.outputs.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.throws){const{affected:s,removed:o}=this.throws.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s),a.push(...o)}return this.parent.removeBreakStatement(this),e||this.calledBy.forEach(s=>{i.push(s),s.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.throws){const{affected:i}=this.throws.restore({seenEntities:e});t.push(...i)}return this.parent.addBreakStatement(this),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.outputs.flatMap(i=>i.toFlat(e)),...this.throws?this.throws.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.outputs.flatMap(i=>i.toFlatIds(e)),...this.throws?this.throws.toFlatIds(e):[]])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,outputs:this.outputs.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),parent:((e=this.parent)==null?void 0:e.toReference())||null,throws:((t=this.throws)==null?void 0:t.toJSON())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,outputs:this.outputs.map(i=>i.toReference()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),throws:((e=this.throws)==null?void 0:e.toReference())||null,parent:((t=this.parent)==null?void 0:t.toReference())||null}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.throws?this.throws.toFlatJSON(e):[]])}toGenerationTarget(){return{id:this.id,type:this.type,calledByEntry:this.calledByEntry.map(e=>e.id),calledByError:this.calledByError.map(e=>e.id),calledBySuccess:this.calledBySuccess.map(e=>e.id),parent:this.parent.id}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.throws?this.throws.toFlatGenerationTarget(e):[]])}clearErrors(){var e;return this.errors=[],this.outputs.forEach(t=>t.clearErrors()),(e=this.throws)==null||e.clearErrors(),this}validate(){const e=F2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.outputs.flatMap(t=>t.getErrors()),...this.throws?this.throws.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new Se(this.toJSON(),this.project)}};d(Se,"MUTABLE_BASE_PROPERTIES",[]),d(Se,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Se,"BASE_PROPERTIES",[...Se.MUTABLE_BASE_PROPERTIES,...Se.INMUTABLE_BASE_PROPERTIES]),d(Se,"MUTABLE_META_PROPERTIES",["x","y"]),d(Se,"INMUTABLE_META_PROPERTIES",[...Se.INMUTABLE_BASE_PROPERTIES]),d(Se,"META_PROPERTIES",[...Se.MUTABLE_META_PROPERTIES,...Se.INMUTABLE_META_PROPERTIES]),d(Se,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry","parent"]),d(Se,"INMUTABLE_UPSTREAM_PROPERTIES",[]),d(Se,"UPSTREAM_PROPERTIES",[...Se.MUTABLE_UPSTREAM_PROPERTIES,...Se.INMUTABLE_UPSTREAM_PROPERTIES]),d(Se,"MUTABLE_DOWNSTREAM_PROPERTIES",["outputs","throws"]),d(Se,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Se,"DOWNSTREAM_PROPERTIES",[...Se.MUTABLE_DOWNSTREAM_PROPERTIES,...Se.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Se,"PROPERTIES",[...Se.META_PROPERTIES,...Se.UPSTREAM_PROPERTIES,...Se.DOWNSTREAM_PROPERTIES]);let Bi=Se;function U2(r){const e=aD(),t=r.toJSON();e.safeParse(t).success,r.inputs.flatMap(s=>s.validate()),r.outputs.flatMap(s=>s.validate());const a=[];return ie(r.errors,a)}var kP=(r=>(r.Success="success",r.Error="error",r.Break="break",r.Continue="continue",r.Return="return",r))(kP||{});const Ce=class Ce{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"implementation",null);d(this,"parent",null);d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);d(this,"autoexecutable",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description}static fromGenerationTarget(e,t){let i=null;if(e.parent){const o=N(e.parent);i=t.get(o)}const a={id:e.id,version:1,name:e.name,type:n.ActionDescriptor,description:e.description,inputs:[],outputs:[],error:null,parent:i},s=v(a,t);return i&&s.setParent(i),s.initChildren(),s}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.CustomEntity,n.DataType]}},t);i=s.modifiedData;const o=i.parent?t.get(i.parent):null;if(o&&o.type===n.CustomEntity){const l=o,y=Qn(l).filter(h=>!h.interactive);if(y.length){let h=y.length>1?`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${l.id}' because it extends or implements multiple '${n.BuiltInBaseEntity}' entities that are non-interactive ("${U(y.map(m=>C(m,m.project)),'", "','" and "')}").`:`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${l.id}' because it extends or implements a '${n.BuiltInBaseEntity}' entity that is non-interactive ("${C(y[0],y[0].project)}").`;h+=`
161
161
  ${Kn}`,a.push(new E({id:`${e.id}--${f.NonInteractiveEntityReferenced}`,code:f.NonInteractiveEntityReferenced,severity:T.Error,message:h,issue:null}))}}else if(o&&o.type===n.DataType){const l=o;l.entity&&a.push(new E({id:`${e.id}--${f.NewEntityWouldOverriteExisting}`,code:f.NewEntityWouldOverriteExisting,severity:T.Error,message:`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${l.id}' because it already has an 'entity' child. Data type entities can only have one 'entity' as children.
162
162
  You can inspect the existing 'entity' field with the 'describe_entity' action. Like so:
163
163
  ${ln({describe_entity:l.entity.id})}
164
- Alternatively you can update the parent data-type entity with 'update' action to remove the existing value of the field.`,issue:null}))}return a.push(...s.errors,...Ve(i)),{errors:a,modifiedData:i}}syncOperationInstance(e){return e}inferInputMapDataType(e){return su(e)}inferOutputMapDataType(e){return lu(e)}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
165
- This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent?(this.parent.type===n.CustomEntity?(this.parent.addAbstractMethod(this),e.push(this.parent)):this.parent.type===n.DataType&&(this.parent.setEntity(this),e.push(this.parent)),{updated:b(e),added:b(t),removed:b(i),self:this}):{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const o=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o.affected),a.push(...o.removed)}),this.outputs.forEach(s=>{const o=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o.affected),a.push(...o.removed)}),this.error){const s=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s.affected),a.push(...s.removed)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.inputs.forEach(i=>{const a=i.restore({seenEntities:e});t.push(...a.affected)}),this.outputs.forEach(i=>{const a=i.restore({seenEntities:e});t.push(...a.affected)}),this.error){const i=this.error.restore({seenEntities:e});t.push(...i.affected)}return{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,error:((e=this.error)==null?void 0:e.toJSON())||null,inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:((t=this.parent)==null?void 0:t.toReference())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,error:((e=this.error)==null?void 0:e.toReference())||null,inputs:this.inputs.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toReference()),parent:((t=this.parent)==null?void 0:t.toReference())||null}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){var e;return{id:this.id,name:this.name,description:this.description,type:this.type,parent:((e=this.parent)==null?void 0:e.id)||void 0}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e))])}implementAsFunctionDeclaration(e){var s;const t=this.inputs.map((o,l)=>{var y;const p={id:e+"--"+o.id+"--parent-ref",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:e};return{id:e+"--"+o.id,version:o.version,type:n.ArgumentDeclaration,name:o.name,required:o.required,implements:o.toJSON(),writesValues:[],description:o.description,index:l,dataType:((y=o.dataType)==null?void 0:y.toJSON())||null,parent:p}}),i=[],a=[];if(this.outputs.length){const o=this.outputs.map((h,m)=>{var g;const R={id:e+"--return-statement--"+h.id+"--parent-ref",type:n.GenericReference,entityId:e,entityType:n.ReturnStatement};return{id:e+"--"+h.id,version:h.version,type:n.ReturnDeclaration,name:h.name,description:h.description,readsValue:null,required:h.required,implements:h.toJSON(),isError:!1,index:m,dataType:((g=h.dataType)==null?void 0:g.toJSON())||null,parent:R}}),l={id:e+"--return-statement-parent-ref",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:e},p={id:e+"--return-statement-called-by-ref",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:e},y={id:e+"--return-statement",version:this.version,type:n.ReturnStatement,outputs:o,throws:null,calledBySuccess:[],calledByError:[],calledByEntry:[p],parent:l,x:0,y:0};i.push(y),a.push(y)}return{id:e,version:this.version,type:n.FunctionDeclaration,name:this.name,description:this.description,inputs:t,returnStatements:i,calls:a,collapsed:!1,private:!1,implements:this.toJSON(),index:0,parent:((s=this.parent)==null?void 0:s.toReference())||null,x:0,y:0}}implementAsLoop(e){const t=e||this.project,i=this.id+"--instance-"+_.UUID.fromUUID(_.UUID.uuid()),a={id:i,version:this.version,type:n.Loop,declaration:this.toJSON(),inputs:[],outputs:[],error:null,process:null,successCalls:[],errorCalls:[],calledByEntry:[],calledByError:[],calledBySuccess:[],breakStatements:[],continueStatements:[],outputsDeclarations:[],body:null,x:0,y:0,parent:t.toReference()};this.inputs.forEach((l,p)=>{const h={id:l.toReference().id+"--input-map-id",version:this.version,type:n.InputMap,name:null,description:null,declaration:l,defaultValue:null,readsValue:null,index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Loop}};a.inputs.push(h)}),this.outputs.forEach((l,p)=>{const h={id:l.toReference().id+"--output-map-id",version:this.version,type:n.OutputMap,declaration:l,writesValues:[],index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Loop}};a.outputs.push(h)});const s={id:i+"--body-function-declaration-id",version:this.version,type:n.FunctionDeclaration,name:"body",description:null,inputs:[],returnStatements:[],calls:[],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Loop}};s.inputs=[{id:_.UUID.uuid(),version:this.version,type:n.ArgumentDeclaration,name:"Current iteration number",description:"The number of the current iteration of the loop. Starts at 1.",dataType:null,required:!0,writesValues:[],implements:null,index:0,parent:{id:s.id,type:n.GenericReference,entityId:s.id,entityType:n.FunctionDeclaration}},{id:_.UUID.uuid(),version:this.version,type:n.ArgumentDeclaration,name:"Previous iterations results",description:"The results of the previous iterations of the loop.",dataType:null,required:!0,writesValues:[],implements:null,index:1,parent:{id:s.id,type:n.GenericReference,entityId:s.id,entityType:n.FunctionDeclaration}}],a.body=s;const o=v(a,this.project);return o.setParent(t),o.initChildren(),o}implementAsOperation(e,t){const i=e||this.project,a=t||this.id+"--instance-"+_.UUID.fromUUID(_.UUID.uuid()),s={id:a,version:this.version,type:n.Operation,declaration:this.toJSON(),inputs:[],outputs:[],error:null,successCalls:[],errorCalls:[],process:null,calledByEntry:[],calledByError:[],calledBySuccess:[],x:0,y:0,parent:i.toReference()};if(this.inputs.forEach((l,p)=>{const y={id:a+Ze(l.name,n.InputMap,this.project),version:this.version,type:n.InputMap,name:null,description:null,declaration:l,defaultValue:null,readsValue:null,index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:a,entityType:n.Operation}};s.inputs.push(y)}),this.outputs.forEach((l,p)=>{const y={id:a+Ze(l.name,n.OutputMap,this.project),version:this.version,type:n.OutputMap,declaration:l,writesValues:[],index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:a,entityType:n.Operation}};s.outputs.push(y)}),this.error){const p={id:this.error.toReference().id+"--error-map",version:this.version,type:n.OutputMap,declaration:this.error,writesValues:[],index:-1,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:a,entityType:n.Operation}};s.error=p}const o=v(s,this.project);return o.setParent(i),o.initChildren(),o}implementAsCondition(e){const t=e||this.project,i=this.id+"--instance-"+_.UUID.fromUUID(_.UUID.uuid()),a={id:i,version:this.version,type:n.Condition,declaration:this.toJSON(),operator:null,inputs:[],successCalls:[],errorCalls:[],calledByEntry:[],calledByError:[],calledBySuccess:[],x:0,y:0,parent:t.toReference()};this.inputs.forEach((o,l)=>{const p={id:i+Ze(o.name,n.InputMap,this.project),version:this.version,type:n.InputMap,name:null,description:null,declaration:o,defaultValue:null,readsValue:null,index:l,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Condition}};a.inputs.push(p)});const s=v(a,this.project);return s.setParent(t),s.initChildren(),s}clearErrors(){var e;return this.errors=[],this.inputs.forEach(t=>t.clearErrors()),this.outputs.forEach(t=>t.clearErrors()),(e=this.error)==null||e.clearErrors(),this}validate(){const e=U2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){var m,R;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.ActionDescriptor,this.project);a.inputs=[],a.outputs=[],a.error=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):this.parent&&p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(m=this.inputs)==null?void 0:m.map((g,D)=>g.clone(this,l+"-argument-value-descriptor-"+D+"-id",i));p.inputs=y;const h=(R=this.outputs)==null?void 0:R.map((g,D)=>g.clone(this,l+"-return-value-descriptor-"+D+"-id",i));return p.outputs=h,this.error&&(p.error=this.error.clone(this,l+"-error-action-descriptor-id",i)),p}addInput(e){return this.inputs.find(t=>t.id===e.id)||this.inputs.push(e),this}removeFixedArgument(e){return this.inputs=this.inputs.filter(t=>t.id!==e.id),this}addOutput(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeFixedReturn(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}};d(Ce,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(Ce,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Ce,"BASE_PROPERTIES",[...Ce.MUTABLE_BASE_PROPERTIES,...Ce.INMUTABLE_BASE_PROPERTIES]),d(Ce,"MUTABLE_META_PROPERTIES",[...Ce.MUTABLE_BASE_PROPERTIES]),d(Ce,"INMUTABLE_META_PROPERTIES",[...Ce.INMUTABLE_BASE_PROPERTIES]),d(Ce,"META_PROPERTIES",[...Ce.MUTABLE_META_PROPERTIES,...Ce.INMUTABLE_META_PROPERTIES]),d(Ce,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ce,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Ce,"UPSTREAM_PROPERTIES",[...Ce.MUTABLE_UPSTREAM_PROPERTIES,...Ce.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ce,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","outputs"]),d(Ce,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ce,"DOWNSTREAM_PROPERTIES",[...Ce.MUTABLE_DOWNSTREAM_PROPERTIES,...Ce.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ce,"PROPERTIES",[...Ce.META_PROPERTIES,...Ce.UPSTREAM_PROPERTIES,...Ce.DOWNSTREAM_PROPERTIES]);let te=Ce;function x2(r){var s;const e=y9(),t=r.toJSON();e.safeParse(t).success,(s=r.dataType)==null||s.validate();const a=[];return ie(r.errors,a)}const Be=class Be{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"index");d(this,"required");d(this,"parentRelationType");d(this,"type",n.ValueDescriptor);d(this,"dataType",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.index=e.index,this.required=e.required,this.parentRelationType=e.parentRelationType}static fromGenerationTarget(e,t){const i=e.parent?N(e.parent):null,a=i?t.get(i):null,s=e.parentRelationType===O.FixedArguments?a==null?void 0:a.inputs.length:a==null?void 0:a.outputs.length,o={id:e.id,version:1,name:e.name,type:n.ValueDescriptor,index:s||0,description:e.description,required:e.required,parentRelationType:e.parentRelationType,dataType:null,parent:a},l=v(o,t);return a&&l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.ActionDescriptor]}},t);i=s.modifiedData,a.push(...s.errors,...Ve(i));const o=i.parent&&t.get(i.parent),l=o&&er(o);return l&&l.type===n.ActionDescriptor&&a.push(new E({id:`${e.id}--${f.BuiltInEntityParent}`,code:f.BuiltInEntityParent,severity:T.Error,message:`Entity of type "${e.type}" with id "${e.id}", has a parent that is a built-in entity "${l.name}" of type '${l.type}' with id '${l.id}'.
164
+ Alternatively you can update the parent data-type entity with 'update' action to remove the existing value of the field.`,issue:null}))}return a.push(...s.errors,...Le(i)),{errors:a,modifiedData:i}}syncOperationInstance(e){return e}inferInputMapDataType(e){return su(e)}inferOutputMapDataType(e){return lu(e)}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated, as it would mean moving the '${this.type}' entity to another parent entity.
165
+ This is likely an incorrect strategy, either the '${this.type}' entity doesn't need to be updated or it should be deleted and a new one created in the desired parent.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return this.parent?(this.parent.type===n.CustomEntity?(this.parent.addAbstractMethod(this),e.push(this.parent)):this.parent.type===n.DataType&&(this.parent.setEntity(this),e.push(this.parent)),{updated:b(e),added:b(t),removed:b(i),self:this}):{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}initChildren(){return this.initialized?this:(this.initialized=!0,this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.outputs=this.initialData.outputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this)}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.inputs.forEach(s=>{const o=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o.affected),a.push(...o.removed)}),this.outputs.forEach(s=>{const o=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o.affected),a.push(...o.removed)}),this.error){const s=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...s.affected),a.push(...s.removed)}return{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.inputs.forEach(i=>{const a=i.restore({seenEntities:e});t.push(...a.affected)}),this.outputs.forEach(i=>{const a=i.restore({seenEntities:e});t.push(...a.affected)}),this.error){const i=this.error.restore({seenEntities:e});t.push(...i.affected)}return{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,error:((e=this.error)==null?void 0:e.toJSON())||null,inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:((t=this.parent)==null?void 0:t.toReference())||null}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,error:((e=this.error)==null?void 0:e.toReference())||null,inputs:this.inputs.map(i=>i.toReference()),outputs:this.outputs.map(i=>i.toReference()),parent:((t=this.parent)==null?void 0:t.toReference())||null}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){var e;return{id:this.id,name:this.name,description:this.description,type:this.type,parent:((e=this.parent)==null?void 0:e.id)||void 0}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e))])}implementAsFunctionDeclaration(e){var s;const t=this.inputs.map((o,l)=>{var y;const p={id:e+"--"+o.id+"--parent-ref",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:e};return{id:e+"--"+o.id,version:o.version,type:n.ArgumentDeclaration,name:o.name,required:o.required,implements:o.toJSON(),writesValues:[],description:o.description,index:l,dataType:((y=o.dataType)==null?void 0:y.toJSON())||null,parent:p}}),i=[],a=[];if(this.outputs.length){const o=this.outputs.map((h,m)=>{var g;const R={id:e+"--return-statement--"+h.id+"--parent-ref",type:n.GenericReference,entityId:e,entityType:n.ReturnStatement};return{id:e+"--"+h.id,version:h.version,type:n.ReturnDeclaration,name:h.name,description:h.description,readsValue:null,required:h.required,implements:h.toJSON(),isError:!1,index:m,dataType:((g=h.dataType)==null?void 0:g.toJSON())||null,parent:R}}),l={id:e+"--return-statement-parent-ref",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:e},p={id:e+"--return-statement-called-by-ref",type:n.GenericReference,entityType:n.FunctionDeclaration,entityId:e},y={id:e+"--return-statement",version:this.version,type:n.ReturnStatement,outputs:o,throws:null,calledBySuccess:[],calledByError:[],calledByEntry:[p],parent:l,x:0,y:0};i.push(y),a.push(y)}return{id:e,version:this.version,type:n.FunctionDeclaration,name:this.name,description:this.description,inputs:t,returnStatements:i,calls:a,collapsed:!1,private:!1,implements:this.toJSON(),index:0,parent:((s=this.parent)==null?void 0:s.toReference())||null,x:0,y:0}}implementAsLoop(e){const t=e||this.project,i=this.id+"--instance-"+_.UUID.fromUUID(_.UUID.uuid()),a={id:i,version:this.version,type:n.Loop,declaration:this.toJSON(),inputs:[],outputs:[],error:null,process:null,successCalls:[],errorCalls:[],calledByEntry:[],calledByError:[],calledBySuccess:[],breakStatements:[],continueStatements:[],outputsDeclarations:[],body:null,x:0,y:0,parent:t.toReference()};this.inputs.forEach((l,p)=>{const h={id:l.toReference().id+"--input-map-id",version:this.version,type:n.InputMap,name:null,description:null,declaration:l,defaultValue:null,readsValue:null,index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Loop}};a.inputs.push(h)}),this.outputs.forEach((l,p)=>{const h={id:l.toReference().id+"--output-map-id",version:this.version,type:n.OutputMap,declaration:l,writesValues:[],index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Loop}};a.outputs.push(h)});const s={id:i+"--body-function-declaration-id",version:this.version,type:n.FunctionDeclaration,name:"body",description:null,inputs:[],returnStatements:[],calls:[],implements:null,index:null,collapsed:!1,private:!1,x:0,y:0,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Loop}};s.inputs=[{id:_.UUID.uuid(),version:this.version,type:n.ArgumentDeclaration,name:"Current iteration number",description:"The number of the current iteration of the loop. Starts at 1.",dataType:null,required:!0,writesValues:[],implements:null,index:0,parent:{id:s.id,type:n.GenericReference,entityId:s.id,entityType:n.FunctionDeclaration}},{id:_.UUID.uuid(),version:this.version,type:n.ArgumentDeclaration,name:"Previous iterations results",description:"The results of the previous iterations of the loop.",dataType:null,required:!0,writesValues:[],implements:null,index:1,parent:{id:s.id,type:n.GenericReference,entityId:s.id,entityType:n.FunctionDeclaration}}],a.body=s;const o=v(a,this.project);return o.setParent(t),o.initChildren(),o}implementAsOperation(e,t){const i=e||this.project,a=t||this.id+"--instance-"+_.UUID.fromUUID(_.UUID.uuid()),s={id:a,version:this.version,type:n.Operation,declaration:this.toJSON(),inputs:[],outputs:[],error:null,successCalls:[],errorCalls:[],process:null,calledByEntry:[],calledByError:[],calledBySuccess:[],x:0,y:0,parent:i.toReference()};if(this.inputs.forEach((l,p)=>{const y={id:a+Ze(l.name,n.InputMap,this.project),version:this.version,type:n.InputMap,name:null,description:null,declaration:l,defaultValue:null,readsValue:null,index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:a,entityType:n.Operation}};s.inputs.push(y)}),this.outputs.forEach((l,p)=>{const y={id:a+Ze(l.name,n.OutputMap,this.project),version:this.version,type:n.OutputMap,declaration:l,writesValues:[],index:p,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:a,entityType:n.Operation}};s.outputs.push(y)}),this.error){const p={id:this.error.toReference().id+"--error-map",version:this.version,type:n.OutputMap,declaration:this.error,writesValues:[],index:-1,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:a,entityType:n.Operation}};s.error=p}const o=v(s,this.project);return o.setParent(i),o.initChildren(),o}implementAsCondition(e){const t=e||this.project,i=this.id+"--instance-"+_.UUID.fromUUID(_.UUID.uuid()),a={id:i,version:this.version,type:n.Condition,declaration:this.toJSON(),operator:null,inputs:[],successCalls:[],errorCalls:[],calledByEntry:[],calledByError:[],calledBySuccess:[],x:0,y:0,parent:t.toReference()};this.inputs.forEach((o,l)=>{const p={id:i+Ze(o.name,n.InputMap,this.project),version:this.version,type:n.InputMap,name:null,description:null,declaration:o,defaultValue:null,readsValue:null,index:l,parent:{id:_.UUID.uuid(),type:n.GenericReference,entityId:i,entityType:n.Condition}};a.inputs.push(p)});const s=v(a,this.project);return s.setParent(t),s.initChildren(),s}clearErrors(){var e;return this.errors=[],this.inputs.forEach(t=>t.clearErrors()),this.outputs.forEach(t=>t.clearErrors()),(e=this.error)==null||e.clearErrors(),this}validate(){const e=U2(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){var m,R;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.ActionDescriptor,this.project);a.inputs=[],a.outputs=[],a.error=null;const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e?p.setParent(e):this.parent&&p.setParent(this.parent),i&&p.subscribe(),p.initChildren();const y=(m=this.inputs)==null?void 0:m.map((g,D)=>g.clone(this,l+"-argument-value-descriptor-"+D+"-id",i));p.inputs=y;const h=(R=this.outputs)==null?void 0:R.map((g,D)=>g.clone(this,l+"-return-value-descriptor-"+D+"-id",i));return p.outputs=h,this.error&&(p.error=this.error.clone(this,l+"-error-action-descriptor-id",i)),p}addInput(e){return this.inputs.find(t=>t.id===e.id)||this.inputs.push(e),this}removeFixedArgument(e){return this.inputs=this.inputs.filter(t=>t.id!==e.id),this}addOutput(e){return this.outputs.find(t=>t.id===e.id)||this.outputs.push(e),this}removeFixedReturn(e){return this.outputs=this.outputs.filter(t=>t.id!==e.id),this}};d(Ce,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(Ce,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(Ce,"BASE_PROPERTIES",[...Ce.MUTABLE_BASE_PROPERTIES,...Ce.INMUTABLE_BASE_PROPERTIES]),d(Ce,"MUTABLE_META_PROPERTIES",[...Ce.MUTABLE_BASE_PROPERTIES]),d(Ce,"INMUTABLE_META_PROPERTIES",[...Ce.INMUTABLE_BASE_PROPERTIES]),d(Ce,"META_PROPERTIES",[...Ce.MUTABLE_META_PROPERTIES,...Ce.INMUTABLE_META_PROPERTIES]),d(Ce,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(Ce,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(Ce,"UPSTREAM_PROPERTIES",[...Ce.MUTABLE_UPSTREAM_PROPERTIES,...Ce.INMUTABLE_UPSTREAM_PROPERTIES]),d(Ce,"MUTABLE_DOWNSTREAM_PROPERTIES",["inputs","outputs"]),d(Ce,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(Ce,"DOWNSTREAM_PROPERTIES",[...Ce.MUTABLE_DOWNSTREAM_PROPERTIES,...Ce.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(Ce,"PROPERTIES",[...Ce.META_PROPERTIES,...Ce.UPSTREAM_PROPERTIES,...Ce.DOWNSTREAM_PROPERTIES]);let te=Ce;function x2(r){var s;const e=y9(),t=r.toJSON();e.safeParse(t).success,(s=r.dataType)==null||s.validate();const a=[];return ie(r.errors,a)}const Be=class Be{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"index");d(this,"required");d(this,"parentRelationType");d(this,"type",n.ValueDescriptor);d(this,"dataType",null);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.index=e.index,this.required=e.required,this.parentRelationType=e.parentRelationType}static fromGenerationTarget(e,t){const i=e.parent?N(e.parent):null,a=i?t.get(i):null,s=e.parentRelationType===O.FixedArguments?a==null?void 0:a.inputs.length:a==null?void 0:a.outputs.length,o={id:e.id,version:1,name:e.name,type:n.ValueDescriptor,index:s||0,description:e.description,required:e.required,parentRelationType:e.parentRelationType,dataType:null,parent:a},l=v(o,t);return a&&l.setParent(a),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[n.ActionDescriptor]}},t);i=s.modifiedData,a.push(...s.errors,...Le(i));const o=i.parent&&t.get(i.parent),l=o&&er(o);return l&&l.type===n.ActionDescriptor&&a.push(new E({id:`${e.id}--${f.BuiltInEntityParent}`,code:f.BuiltInEntityParent,severity:T.Error,message:`Entity of type "${e.type}" with id "${e.id}", has a parent that is a built-in entity "${l.name}" of type '${l.type}' with id '${l.id}'.
166
166
  You can't modify system entities that are built-in.`,issue:null})),o&&o.type===n.ActionDescriptor&&(!i.parentRelationType||!(i.parentRelationType===O.FixedArguments||i.parentRelationType===O.FixedReturns||i.parentRelationType===O.ReturnedError||i.parentRelationType===O.DynamicArgument||i.parentRelationType===O.DynamicReturn)?a.push(new E({id:`${e.id}--${f.InvalidParentRelationType}`,code:f.InvalidParentRelationType,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', must have a 'parentRelationType' property set to either '${O.FixedArguments}', '${O.FixedReturns}', or '${O.ReturnedError}' when being added as a child to an entity of type 'action-descriptor'.`,issue:null})):i.parentRelationType===O.ReturnedError&&o.error&&a.push(new E({id:`${e.id}--${f.NewEntityWouldOverriteExisting}`,code:f.NewEntityWouldOverriteExisting,severity:T.Error,message:`The entity with id '${e.id}' and type '${e.type}', is being added as an error value-descriptor to an entity of type 'action-descriptor' with id '${o.id}', which already has an error value descriptor with id '${o.error.id}'.
167
167
  An action descriptor can only have one error value descriptor child.
168
168
  Either remove the existing error value descriptor or update it with the 'update' action.
@@ -176,7 +176,7 @@ For entities of type "${r.type}", `;if(t.length>0?a+=`you can update the followi
176
176
  You can also update the following upstream references: `:`
177
177
  But can update the following upstream entity references: `;a+=`${s}'${U(i,"', '","' and '")}'.`}else a+=t.length>0?`
178
178
  And there are no upstream references that can be updated.`:`
179
- There are no upstream references that can be updated.`;return a}function k2(r,e){const t=[];let i=!1;if(Yr.includes(e.type)&&t.push(new E({id:`${e.id}--${f.BuiltInEntityGenerated}`,message:`Entity with id "${e.id} is of "${e.type}" type and should not be updated. Built in entities can only be referenced by user created entities.`,severity:T.Error,code:f.BuiltInEntityGenerated,issue:null})),r.id&&(t.push(new E({id:`last-action--${f.InvalidUpdateEntityOperation}`,code:f.InvalidUpdateEntityOperation,severity:T.Error,message:`The 'id' property cannot be updated in the 'update' action payload. The id of the entity is '${r.id}'. Only mutable core metadata properties can be updated, no nested entities or references. You can alternatively delete the entity and create a new one with the updated 'id'.`,issue:null})),i=!0),r.type&&(t.push(new E({id:`last-action--${f.InvalidUpdateEntityOperation}`,code:f.InvalidUpdateEntityOperation,severity:T.Error,message:`The 'type' property cannot be updated in the 'update' action payload. The type of the entity is '${e.type}'. Only mutable core metadata properties can be updated, no nested entities or references. You can alternatively delete the entity and create a new one with the updated 'type'.`,issue:null})),i=!0),t.length)return{errors:t,modifiedData:null,messageAddition:""};if(Fe.includes(e.type)?r.calls&&t.push(new E({id:`${e.id}--${f.InvalidInmutablePropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "calls" updated.
179
+ There are no upstream references that can be updated.`;return a}function k2(r,e){const t=[];let i=!1;if(Yr.includes(e.type)&&t.push(new E({id:`${e.id}--${f.BuiltInEntityGenerated}`,message:`Entity with id "${e.id} is of "${e.type}" type and should not be updated. Built in entities can only be referenced by user created entities.`,severity:T.Error,code:f.BuiltInEntityGenerated,issue:null})),r.id&&(t.push(new E({id:`last-action--${f.InvalidUpdateEntityOperation}`,code:f.InvalidUpdateEntityOperation,severity:T.Error,message:`The 'id' property cannot be updated in the 'update' action payload. The id of the entity is '${r.id}'. Only mutable core metadata properties can be updated, no nested entities or references. You can alternatively delete the entity and create a new one with the updated 'id'.`,issue:null})),i=!0),r.type&&(t.push(new E({id:`last-action--${f.InvalidUpdateEntityOperation}`,code:f.InvalidUpdateEntityOperation,severity:T.Error,message:`The 'type' property cannot be updated in the 'update' action payload. The type of the entity is '${e.type}'. Only mutable core metadata properties can be updated, no nested entities or references. You can alternatively delete the entity and create a new one with the updated 'type'.`,issue:null})),i=!0),t.length)return{errors:t,modifiedData:null,messageAddition:""};if(Ue.includes(e.type)?r.calls&&t.push(new E({id:`${e.id}--${f.InvalidInmutablePropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "calls" updated.
180
180
  ${Zn}`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null})):je.includes(e.type)&&(r.successCalls&&t.push(new E({id:`${e.id}--${f.InvalidInmutablePropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "successCalls" updated.
181
181
  ${Zn}`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null})),r.errorCalls&&t.push(new E({id:`${e.id}--${f.InvalidInmutablePropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "errorCalls" updated.
182
182
  ${Zn}`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null}))),wn.includes(e.type)&&(r.calledBy&&t.push(new E({id:`${e.id}--${f.InvalidInmutablePropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "calledBy" updated.
@@ -187,10 +187,10 @@ ${Zn}`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null}))),t
187
187
  If you need to update this property, you should delete the entity and create a new one with the updated value.`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null})),i=!0)}),(a.DOWNSTREAM_PROPERTIES||[]).forEach(I=>{r[I]&&!Ba(r[I])&&(t.push(new E({id:`${e.id}--${f.InvalidDownstreamPropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "${I}" set directly. It is a downstream property that points to a downstream nested entity.
188
188
  All downstream references are managed by the downstream entity. Entities only manage their own upstream references.
189
189
  To modify '${I}', target the entity that it points to and its equivalent property.`,severity:T.Error,code:f.InvalidDownstreamPropertyOverride,issue:null})),i=!0)}),(a.INMUTABLE_UPSTREAM_PROPERTIES||[]).forEach(I=>{r[I]&&!Ba(r[I])&&(t.push(new E({id:`${e.id}--${f.InvalidInmutablePropertyOverride}`,message:`Entity of type "${e.type}" with id "${e.id}" cannot have the property "${I}" updated. It is an inmutable property that is set only when the entity is created.
190
- If you need to update this property, you should delete the entity and create a new one with the updated value.`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null})),i=!0)});const A=a.PROPERTIES||[];A.length>0&&Object.keys(r).forEach(I=>{A.includes(I)||t.push(new E({id:`${e.id}--${f.UnrecognizedProperty}`,message:`Entity of type "${e.type}" with id "${e.id}" has an unrecognized property "${I}" that will be ignored.`,severity:T.Warning,code:f.UnrecognizedProperty,issue:null}))})}if(t.length)return{errors:t,modifiedData:null,messageAddition:i?wo(e):""};const s=qP(e),o=s==null?void 0:s.partial(),l=o==null?void 0:o.safeParse(r),p={...r,id:e.id,type:e.type},y=Eu(p,l);if(t.push(...y),t.length)return{errors:t,modifiedData:null,messageAddition:i?wo(e):""};const m=e.validateGeneratedUpdate(r);return{errors:[...t,...m.errors],modifiedData:m.modifiedData,messageAddition:i?wo(e):""}}function qP(r){switch(r.type){case n.PrimitiveValue:return io();case n.CustomEntity:return Nd();case n.PrimitiveEntity:return io();case n.FunctionDeclaration:return wd();case n.GlobalEvent:return yo();case n.DataType:return Id();case n.Property:return od();case n.FunctionCall:return fd();case n.Condition:return md();case n.Operation:return co();case n.VariableDeclaration:return Pd();case n.VariableInstance:return Ad();case n.OutputMap:return hd();case n.ReturnDeclaration:return ud();case n.ArgumentDeclaration:return Bd();case n.InputMap:return Rd();case n.Project:return _d();case n.InstalledProject:return e3();case n.ActionDescriptor:return so();case n.ReturnStatement:return dd();case n.Loop:return so();case n.Search:return Td();case n.ValueDescriptor:return sd();case n.BuiltInBaseEntity:return ld();case n.InternalCall:return bd();case n.ContinueStatement:return cd();case n.BreakStatement:return pd();default:return null}}function JP(r){switch(r.type){case n.PrimitiveValue:return S6();case n.CustomEntity:return J3();case n.PrimitiveEntity:return f9();case n.FunctionDeclaration:return L3();case n.GlobalEvent:return o3();case n.DataType:return x6();case n.Property:return b9();case n.FunctionCall:return t6();case n.Condition:return s6();case n.Operation:return g6();case n.VariableDeclaration:return W6();case n.VariableInstance:return K6();case n.OutputMap:return K9();case n.ReturnDeclaration:return k9();case n.ArgumentDeclaration:return _3();case n.InputMap:return E6();case n.Project:return x3();case n.InstalledProject:return n3();case n.ActionDescriptor:return S9();case n.ReturnStatement:return F9();case n.Loop:return w9();case n.Search:return d6();case n.ValueDescriptor:return u9();case n.BuiltInBaseEntity:return D9();case n.InternalCall:return h6();case n.ContinueStatement:return V9();case n.BreakStatement:return H9();default:return null}}function _o(r){const e=[];Hn(r)||e.push(new E({id:`${r}--${f.InvalidReferenceObjectStructure}`,message:`Reference object with id "${r}" is not an object. References should be objects with exactly 4 properties: 'entityId', 'entityType', 'id', and 'type'.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null}));const t=r.id||"reference-to--"+(r.entityId||"unknown"),i=`Reference object ${r.id?`with id "${r.id}"`:`to entity with id "${r.entityId}" and type "${r.entityType}"`}`;return r.entityId||e.push(new E({id:`${t}--${f.InvalidReferenceObjectStructure}`,message:`${i} is missing an 'entityId' property.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null})),r.entityType||e.push(new E({id:`${t}--${f.InvalidReferenceObjectStructure}`,message:`${i} is missing an 'entityType' property.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null})),r.id||e.push(new E({id:`${t}--${f.MissingIdProperty}`,message:`${i} is missing an 'id' property.`,severity:T.Error,code:f.MissingIdProperty,issue:null})),r.type||e.push(new E({id:`${t}--${f.MissingTypeProperty}`,message:`${i} is missing a 'type' property.`,severity:T.Error,code:f.MissingTypeProperty,issue:null})),e}function Eu(r,e){return e.success?[]:e.error.issues.map(t=>new E({id:`${r.id}--${S.InvalidObjectStructure}`,message:`Entity of type "${r.type}" and with id "${r.id}", has an invalid structure: ${fk(t).toString().replace("Validation error: ","")}`,severity:T.Error,code:S.InvalidObjectStructure,issue:t}))}function Ve(r,e){const t=[],i=JP(r);if(i){const s=i.safeParse(r);t.push(...Eu(r,s))}const a=Jo(r.type);if(a){(a.DOWNSTREAM_PROPERTIES||[]).forEach(l=>{r[l]&&!Ba(r[l])&&t.push(new E({id:`${r.id}--${f.InvalidDownstreamPropertyOverride}`,message:`Entity of type "${r.type}" with id "${r.id}" cannot have the property "${l}" set directly. It is a downstream property that points to a downstream nested entity.
190
+ If you need to update this property, you should delete the entity and create a new one with the updated value.`,severity:T.Error,code:f.InvalidInmutablePropertyOverride,issue:null})),i=!0)});const A=a.PROPERTIES||[];A.length>0&&Object.keys(r).forEach(I=>{A.includes(I)||t.push(new E({id:`${e.id}--${f.UnrecognizedProperty}`,message:`Entity of type "${e.type}" with id "${e.id}" has an unrecognized property "${I}" that will be ignored.`,severity:T.Warning,code:f.UnrecognizedProperty,issue:null}))})}if(t.length)return{errors:t,modifiedData:null,messageAddition:i?wo(e):""};const s=qP(e),o=s==null?void 0:s.partial(),l=o==null?void 0:o.safeParse(r),p={...r,id:e.id,type:e.type},y=Eu(p,l);if(t.push(...y),t.length)return{errors:t,modifiedData:null,messageAddition:i?wo(e):""};const m=e.validateGeneratedUpdate(r);return{errors:[...t,...m.errors],modifiedData:m.modifiedData,messageAddition:i?wo(e):""}}function qP(r){switch(r.type){case n.PrimitiveValue:return io();case n.CustomEntity:return Nd();case n.PrimitiveEntity:return io();case n.FunctionDeclaration:return wd();case n.GlobalEvent:return yo();case n.DataType:return Id();case n.Property:return od();case n.FunctionCall:return fd();case n.Condition:return md();case n.Operation:return co();case n.VariableDeclaration:return Pd();case n.VariableInstance:return Ad();case n.OutputMap:return hd();case n.ReturnDeclaration:return ud();case n.ArgumentDeclaration:return Bd();case n.InputMap:return Rd();case n.Project:return _d();case n.InstalledProject:return e3();case n.ActionDescriptor:return so();case n.ReturnStatement:return dd();case n.Loop:return so();case n.Search:return Td();case n.ValueDescriptor:return sd();case n.BuiltInBaseEntity:return ld();case n.InternalCall:return bd();case n.ContinueStatement:return cd();case n.BreakStatement:return pd();default:return null}}function JP(r){switch(r.type){case n.PrimitiveValue:return S6();case n.CustomEntity:return J3();case n.PrimitiveEntity:return f9();case n.FunctionDeclaration:return L3();case n.GlobalEvent:return o3();case n.DataType:return x6();case n.Property:return b9();case n.FunctionCall:return t6();case n.Condition:return s6();case n.Operation:return g6();case n.VariableDeclaration:return W6();case n.VariableInstance:return K6();case n.OutputMap:return K9();case n.ReturnDeclaration:return k9();case n.ArgumentDeclaration:return _3();case n.InputMap:return E6();case n.Project:return x3();case n.InstalledProject:return n3();case n.ActionDescriptor:return S9();case n.ReturnStatement:return F9();case n.Loop:return w9();case n.Search:return d6();case n.ValueDescriptor:return u9();case n.BuiltInBaseEntity:return D9();case n.InternalCall:return h6();case n.ContinueStatement:return V9();case n.BreakStatement:return H9();default:return null}}function _o(r){const e=[];Hn(r)||e.push(new E({id:`${r}--${f.InvalidReferenceObjectStructure}`,message:`Reference object with id "${r}" is not an object. References should be objects with exactly 4 properties: 'entityId', 'entityType', 'id', and 'type'.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null}));const t=r.id||"reference-to--"+(r.entityId||"unknown"),i=`Reference object ${r.id?`with id "${r.id}"`:`to entity with id "${r.entityId}" and type "${r.entityType}"`}`;return r.entityId||e.push(new E({id:`${t}--${f.InvalidReferenceObjectStructure}`,message:`${i} is missing an 'entityId' property.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null})),r.entityType||e.push(new E({id:`${t}--${f.InvalidReferenceObjectStructure}`,message:`${i} is missing an 'entityType' property.`,severity:T.Error,code:f.InvalidReferenceObjectStructure,issue:null})),r.id||e.push(new E({id:`${t}--${f.MissingIdProperty}`,message:`${i} is missing an 'id' property.`,severity:T.Error,code:f.MissingIdProperty,issue:null})),r.type||e.push(new E({id:`${t}--${f.MissingTypeProperty}`,message:`${i} is missing a 'type' property.`,severity:T.Error,code:f.MissingTypeProperty,issue:null})),e}function Eu(r,e){return e.success?[]:e.error.issues.map(t=>new E({id:`${r.id}--${S.InvalidObjectStructure}`,message:`Entity of type "${r.type}" and with id "${r.id}", has an invalid structure: ${fk(t).toString().replace("Validation error: ","")}`,severity:T.Error,code:S.InvalidObjectStructure,issue:t}))}function Le(r,e){const t=[],i=JP(r);if(i){const s=i.safeParse(r);t.push(...Eu(r,s))}const a=Jo(r.type);if(a){(a.DOWNSTREAM_PROPERTIES||[]).forEach(l=>{r[l]&&!Ba(r[l])&&t.push(new E({id:`${r.id}--${f.InvalidDownstreamPropertyOverride}`,message:`Entity of type "${r.type}" with id "${r.id}" cannot have the property "${l}" set directly. It is a downstream property that points to a downstream nested entity.
191
191
  All downstream references are managed by the downstream entity. Entities only manage their own upstream references.
192
192
  To modify '${l}', target the entity that it points to and its equivalent property.`,severity:T.Error,code:f.InvalidDownstreamPropertyOverride,issue:null}))});const o=a.PROPERTIES||[];o.length>0&&Object.keys(r).forEach(l=>{o.includes(l)||t.push(new E({id:`${r.id}--${f.UnrecognizedProperty}`,message:`Entity of type "${r.type}" with id "${r.id}" has an unrecognized property "${l}" that will be ignored.`,severity:T.Warning,code:f.UnrecognizedProperty,issue:null}))})}return t}function q2(r,e){const t=[];if(!r.parent)return t;const i=e.get(r.parent);return i?(Yr.includes(i==null?void 0:i.type)?t.push(new E({id:`${r.id}--${f.BuiltInEntityParent}`,message:`Entity of type "${r.type}" with id "${r.id}" cannot have the parent with id "${i.id}", because it is a built in entity. Built in entities cannot be modified.`,severity:T.Error,code:f.BuiltInEntityParent,issue:null})):i.type===n.ActionDescriptor&&e.get(r.parent)&&t.push(new E({id:`${r.id}--${f.BuiltInEntityParent}`,message:`Entity of type "${r.type}" with id "${r.id}" cannot have the parent with id "${i.id}", because it is a built in entity. Built in entities cannot be modified. Action descriptors are only sometimes built in, other times they are managed by the user.`,severity:T.Error,code:f.BuiltInEntityParent,issue:null})),t):[]}function bu(r,e,t){const i=[],a=r[e.key];if(!a)return i.push(new E({id:`${r.id}--${e.key}--${S.InvalidObjectStructure}`,message:`Entity of type "${r.type}" with id "${r.id}" is missing a reference to a "${e.key}" entity. The '${e.key}' property of a "${r.type}" entity can be ${U(e.types,", "," or ")}.`,severity:T.Error,code:S.InvalidObjectStructure,issue:null})),{entityState:null,errors:i};let s=null;if(typeof a=="string")s=a;else{const l=_o(a);i.push(...l),l.length===0&&(s=a.entityId)}if(!s)return{entityState:null,errors:i};if(r.id===s)return i.push(new E({id:`${r.id}--${s}--${f.SelfReference}`,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at '${e.key}'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,severity:T.Error,code:f.SelfReference,issue:null})),{entityState:null,errors:i};const o=t.get(s)||t.getBuiltIn(s);return o?e.types.includes(o.type)||i.push(new E({id:`${r.id}--${s}--${f.InvalidReference}`,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to "${s}" at '${e.key}' that isn't pointing to an entity of type '${U(e.types,"', '","' or '")}'.`,severity:T.Error,code:f.InvalidReference,issue:null})):i.push(new E({id:`${r.id}--${s}--${f.ReferencedEntityNotFound}`,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${s}" at '${e.key}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,severity:T.Error,code:f.ReferencedEntityNotFound,issue:null})),{entityState:o,errors:i}}function No(r,e,t){const i=[],a=r[e];return a?Array.isArray(a)?{entities:a.map(o=>{let l=null;if(typeof o=="string")l=o;else{const y=_o(o);i.push(...y),y.length===0&&(l=o.entityId)}if(!l)return{entityState:null,errors:[new E({id:`${r.id}--${e}--${f.InvalidReference}`,message:`Entity of type "${r.type}" with id "${r.id}", has a missing reference at '${e}'. A reference needs to be a 'id' string of an existing entity in the project.`,severity:T.Error,code:f.InvalidReference,issue:null})]};const p=t.get(l)||t.getBuiltIn(l);return p?{entityState:p,errors:[]}:(i.push(new E({id:`${r.id}--${l}--${f.ReferencedEntityNotFound}`,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${l}" at '${e}' that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,severity:T.Error,code:f.ReferencedEntityNotFound,issue:null})),{entityState:null,errors:i})}),errors:[]}:(i.push(new E({id:`${r.id}--${e}--${S.InvalidObjectStructure}`,message:`Entity of type "${r.type}" with id "${r.id}" has an invalid structure for the "${e}" property. It should be an array of references.`,severity:T.Error,code:S.InvalidObjectStructure,issue:null})),{entities:[],errors:i}):(i.push(new E({id:`${r.id}--${e}--${S.InvalidObjectStructure}`,message:`Entity of type "${r.type}" with id "${r.id}" is missing a list of references to "${e}" entities.`,severity:T.Error,code:S.InvalidObjectStructure,issue:null})),{entities:[],errors:i})}function Ru(r,e,t){const i=[],a=bu(r,e,t);if(a.errors.length>0)return a.errors;if(a.entityState){const s=a.entityState;e.types.includes(s.type)||i.push(new E({id:`${r.id}--${s.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to "${e.key}" that isn't pointing to an entity of type '${U(e.types,"', '","' or '")}'.`,issue:null})),r.id===s.id&&i.push(new E({id:`${r.id}--${s.id}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at '${e.key}'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}))}return i}function U(r,e,t){const i=[...r||[]].filter(a=>!!a);if(i.length===1)return i[0];if(i.length===2)return i.join(t);{const a=i.pop();return`${i.join(e)}${t}${a}`}}const zn=`Pass-through callable entities are entities that need to be called by another caller, then they execute some internal logic and when finished, it can call other callable entities with the "calledBySuccess" property or "calledByError" property based on whether their internal execution was successful or an error ocurred respectively.
193
- All pass-through callable entities are: ${U(je,", "," and ")}.`,$a=`Entry point entities are the entities which start the execution of a logic chain. They are ${U(Fe,", "," and ")}. They aren't explicitly called by any entities. Rather, they can be called implicitly by the system, or as a function-call somewhere else in the case of a function-declaration. `,WP=`Caller entities are entities that can call other entities. Regarless of whether they are entry-point entities or pass-through callable entities. All caller entity types are: ${U(un,", "," and ")}.`,J2=`Callable entities are entities that can be called by other entities. They can be called by an entry-point, a success caller, or an error caller.
193
+ All pass-through callable entities are: ${U(je,", "," and ")}.`,$a=`Entry point entities are the entities which start the execution of a logic chain. They are ${U(Ue,", "," and ")}. They aren't explicitly called by any entities. Rather, they can be called implicitly by the system, or as a function-call somewhere else in the case of a function-declaration. `,WP=`Caller entities are entities that can call other entities. Regarless of whether they are entry-point entities or pass-through callable entities. All caller entity types are: ${U(un,", "," and ")}.`,J2=`Callable entities are entities that can be called by other entities. They can be called by an entry-point, a success caller, or an error caller.
194
194
  All callable entity types are: ${U(wn,", "," and ")}.`,Zn=`Caller to callee relationships can be updated with the 'add_caller' and 'remove_caller' generation action with the properties: 'callerEntityId', a 'calleeEntityId'. For adding a caller, you can optionally add a boolean property 'fromError' (if the caller calls when an error occured in its execution).
195
195
  Either of these two actions will only affect the one relationship between the given caller and callee and ignore any others present in either entity.`,vu=`Break and continue statements need to have exactly one 'return-declaration' entity each. It represents the result of the current iteration of the loop. It can have any name and have any 'data-type' but it needs to be identical among all statements in the same loop.
196
196
  Meaning, if the return declaration in one 'break-statement' is named 'result' and has a 'data-type' of 'number', all other 'break-statements' and 'continue-statements' in the same loop need to have a 'return-declaration' with the same name and 'data-type'.`,W2=`Return statements need to be identical inside the same scope. For example if a 'return-statement' belongs to a function, with multiple branches of logic, leading to multiple 'return-statement' entities, all of them need to have the exact same amount of 'return-declaration' entities, sharing the same name and an equivalent 'data-type' entity.
@@ -221,51 +221,51 @@ ${typeof r=="string"?r:JSON.stringify(r,null,2)}
221
221
  ...All the properties you want to update
222
222
  }
223
223
  }
224
- }`;return ln(i)}default:return""}}function YP(r,e){const t=JSON.parse(JSON.stringify(r)),i=[];if(Fe.includes(e.type))i.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Warning,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to an entry-point entity at 'calledBySuccess' with id "${e.id}".
224
+ }`;return ln(i)}default:return""}}function YP(r,e){const t=JSON.parse(JSON.stringify(r)),i=[];if(Ue.includes(e.type))i.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Warning,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to an entry-point entity at 'calledBySuccess' with id "${e.id}".
225
225
  Entry-point entities can only be referenced as 'calledByEntry'.
226
226
  ${$a}
227
- We have moved the reference to 'calledByEntry' for you.`,issue:null})),t.calledByEntry.push(e.id),t.calledBySuccess=t.calledBySuccess.filter(a=>a!==e.id);else if(Ue.includes(e.type)){const a=e.calledBy||[],s=a.length?`
227
+ We have moved the reference to 'calledByEntry' for you.`,issue:null})),t.calledByEntry.push(e.id),t.calledBySuccess=t.calledBySuccess.filter(a=>a!==e.id);else if(Ve.includes(e.type)){const a=e.calledBy||[],s=a.length?`
228
228
 
229
229
  This ${e.type} is called by ${U(a.map(o=>`${o.type} with id "${o.id}"`),", "," and ")} entities. You can reference ${a.length>1?"one of them":"it"} instead to execute this entity before the end of the logic.`:"";i.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a '${e.type}' entity at 'calledBySuccess' with id "${e.id}".
230
230
  ${e.type} entities are the last entity to be executed in a logic chain, and they don't call any other entities.
231
- Termination entities are ${U(Ue,", "," and ")}.${s}`,issue:null}))}else if(!je.includes(e.type))i.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledBySuccess' with id "${e.id}" that isn't a pass-through callable entity.
231
+ Termination entities are ${U(Ve,", "," and ")}.${s}`,issue:null}))}else if(!je.includes(e.type))i.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledBySuccess' with id "${e.id}" that isn't a pass-through callable entity.
232
232
  ${zn}`,issue:null}));else if(!un.includes(e.type))return i.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledBySuccess' with id "${e.id}" that isn't a caller entity.
233
233
  All caller entity types are: ${U(un,", "," and ")}.
234
234
  For the 'calledBySuccess' property, you specifically need to reference a pass-through callable entity.
235
- ${zn}`,issue:null})),{errors:i,modifiedData:t};return{errors:i,modifiedData:t}}function zP(r,e){const t=[];if(Fe.includes(e.type))t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to an entry-point entity at 'calledByError' with id "${e.id}".
235
+ ${zn}`,issue:null})),{errors:i,modifiedData:t};return{errors:i,modifiedData:t}}function zP(r,e){const t=[];if(Ue.includes(e.type))t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to an entry-point entity at 'calledByError' with id "${e.id}".
236
236
  Entry-point entities can only be referenced as 'calledByEntry'.
237
- ${$a}`,issue:null}));else if(Ue.includes(e.type)){const i=e.calledBy||[],a=i.length?`
237
+ ${$a}`,issue:null}));else if(Ve.includes(e.type)){const i=e.calledBy||[],a=i.length?`
238
238
 
239
239
  This ${e.type} is called by ${U(i.map(s=>`${s.type} with id "${s.id}"`),", "," and ")} entities. You can reference ${i.length>1?"one of them":"it"} instead to execute this entity before the end of the logic.`:"";t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a '${e.type}' entity at 'calledByError' with id "${e.id}".
240
240
  ${e.type} entities are the last entity to be executed in a logic chain, and they don't call any other entities.
241
- Termination entities are ${U(Ue,", "," and ")}.${a}`,issue:null}))}else if(!je.includes(e.type))t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledByError' with id "${e.id}" that isn't a pass-through callable entity.
241
+ Termination entities are ${U(Ve,", "," and ")}.${a}`,issue:null}))}else if(!je.includes(e.type))t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledByError' with id "${e.id}" that isn't a pass-through callable entity.
242
242
  ${zn}`,issue:null}));else if(!un.includes(e.type))return t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledByError' with id "${e.id}" that isn't a caller entity.
243
243
  All caller entity types are: ${U(un,", "," and ")}.
244
244
  For the 'calledByError' property, you specifically need to reference a pass-through callable entity.
245
- ${zn}`,issue:null})),t;return t}function ZP(r,e){const t=[];if(Ue.includes(e.type)){const i=e.calledBy||[],a=i.length?`
245
+ ${zn}`,issue:null})),t;return t}function ZP(r,e){const t=[];if(Ve.includes(e.type)){const i=e.calledBy||[],a=i.length?`
246
246
 
247
247
  This ${e.type} is called by ${U(i.map(s=>`${s.type} with id "${s.id}"`),", "," and ")} entities. You can reference ${i.length>1?"one of them":"it"} instead to execute this entity before the end of the logic.`:"";t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a '${e.type}' entity at 'calledByEntry' with id "${e.id}".
248
248
  ${e.type} entities are the last entity to be executed in a logic chain, and they don't call any other entities.
249
- Termination entities are ${U(Ue,", "," and ")}.${a}`,issue:null}))}else if(je.includes(e.type))t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Warning,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledByEntry' with id "${e.id}" that is a pass-through callable entity, not an entry-point entity.
249
+ Termination entities are ${U(Ve,", "," and ")}.${a}`,issue:null}))}else if(je.includes(e.type))t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Warning,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledByEntry' with id "${e.id}" that is a pass-through callable entity, not an entry-point entity.
250
250
  ${zn}.
251
251
  ${$a}.
252
252
 
253
253
  We have moved the reference to 'calledBySuccess' for you.`,issue:null}));else if(!un.includes(e.type))return t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity at 'calledByEntry' with id "${e.id}" that isn't a caller entity.
254
254
  All caller entity types are: ${U(un,", "," and ")}.
255
255
  For the 'calledByEntry' property, you specifically need to reference a pass-through callable entity.
256
- ${zn}`,issue:null})),t;return t}function KP(r,e){const t=[];let i=JSON.parse(JSON.stringify(r));if(wn.includes(i.type)){if(i.calledBySuccess){const s=No(i,"calledBySuccess",e);s.errors.length===0?s.entities.forEach(o=>{if(o.errors.length){t.push(...o.errors);return}const l=YP(i,o.entityState);i=l.modifiedData,t.push(...l.errors)}):t.push(...s.errors)}if(i.calledByError){const s=No(i,"calledByError",e);s.errors.length===0?s.entities.forEach(o=>{if(o.errors.length){t.push(...o.errors);return}const l=zP(i,o.entityState);t.push(...l)}):t.push(...s.errors)}if(i.calledByEntry){const s=No(i,"calledByEntry",e);s.errors.length===0?(s.entities.forEach(o=>{if(o.errors.length){t.push(...o.errors);return}const l=ZP(i,o.entityState);t.push(...l)}),t.push(...t)):t.push(...s.errors)}const a=[...i.calledBySuccess||[],...i.calledByError||[],...i.calledByEntry||[]];if(a.length){const s=[...new Set(a)];a.length!==s.length&&t.push(new E({id:`${i.id}--${f.DuplicateReference}`,code:f.DuplicateReference,severity:T.Warning,message:`Entity of type "${i.type}" with id "${i.id}" has duplicate caller references. Each caller reference should be unique. Duplicate caller reference will be ignored.`,issue:null}));const o=vt(i,e);i.type===n.ReturnStatement&&o&&!Fe.includes(o.type)?t.push(new E({id:`${i.id}--${f.IncompatibleScope}`,code:f.IncompatibleScope,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" has an explicitly set parent, but it isn't a '${U(Fe,"', '","' or '")}' entity. A return statement's parent should always be resolved to a function declaration or global event.${Vo}`,issue:null})):i.type===n.ContinueStatement&&o&&o.type!==n.Loop?t.push(new E({id:`${i.id}--${f.IncompatibleScope}`,code:f.IncompatibleScope,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" has an explicitly set parent, but it isn't a '${n.Loop}' entity. A continue statement's parent should always be resolved to a loop entity.${Vo}`,issue:null})):i.type===n.BreakStatement&&o&&o.type!==n.Loop&&t.push(new E({id:`${i.id}--${f.IncompatibleScope}`,code:f.IncompatibleScope,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" has an explicitly set parent, but it isn't a '${n.Loop}' entity. A break statement's parent should always be resolved to a loop entity.${Vo}`,issue:null}));const l=[],p=[];let y=null;if(s.forEach(h=>{const m=e.get(h);if(!m){t.push(new E({id:`${i.id}--${h}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity with id "${h}" that doesn't exist in the project.`,issue:null}));return}const R=vt(m,e);if(o)xa(o,R,e)?(Ue.includes(i.type)&&((i.calledBySuccess||[]).find(D=>D===m.id)?(m.successCalls||[]).find(I=>Ue.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
257
- The new termination statement is redundant because both entities would be called from the same parent caller branch "successCalls", at the same time.`,issue:null})):(i.calledByError||[]).find(D=>D===m.id)?(m.errorCalls||[]).find(I=>Ue.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
258
- The new termination statement is redundant because both entities would be called from the same parent caller branch "errorCalls", at the same time.`,issue:null})):(i.calledByEntry||[]).find(D=>D===m.id)&&(m.calls||[]).find(I=>Ue.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
259
- The new termination statement is redundant because both entities would be called from the same parent caller branch (entry-point), at the same time.`,issue:null}))),l.push({caller:m,scope:R})):p.push({caller:m,scope:R,errors:[new E({id:`${i.id}--${m.id}--${f.CallerWithIncompatibleScope}`,code:f.CallerWithIncompatibleScope,severity:T.Warning,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that is in a different scope. The caller entity should be in the same scope or a higher valid scope. Or all callers should share the global project scope with the entity they call.`,issue:null})]});else if(!y)y=R;else{const{compatible:g}=xa(y,R,e);g?(Ue.includes(i.type)&&((i.calledBySuccess||[]).find(D=>D===m.id)?(m.successCalls||[]).find(I=>Ue.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
260
- The new termination statement is redundant because both entities would be called from the same parent caller branch "successCalls", at the same time.`,issue:null})):(i.calledByError||[]).find(D=>D===m.id)?(m.errorCalls||[]).find(I=>Ue.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
261
- The new termination statement is redundant because both entities would be called from the same parent caller branch "errorCalls", at the same time.`,issue:null})):(i.calledByEntry||[]).find(D=>D===m.id)&&(m.calls||[]).find(I=>Ue.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
256
+ ${zn}`,issue:null})),t;return t}function KP(r,e){const t=[];let i=JSON.parse(JSON.stringify(r));if(wn.includes(i.type)){if(i.calledBySuccess){const s=No(i,"calledBySuccess",e);s.errors.length===0?s.entities.forEach(o=>{if(o.errors.length){t.push(...o.errors);return}const l=YP(i,o.entityState);i=l.modifiedData,t.push(...l.errors)}):t.push(...s.errors)}if(i.calledByError){const s=No(i,"calledByError",e);s.errors.length===0?s.entities.forEach(o=>{if(o.errors.length){t.push(...o.errors);return}const l=zP(i,o.entityState);t.push(...l)}):t.push(...s.errors)}if(i.calledByEntry){const s=No(i,"calledByEntry",e);s.errors.length===0?(s.entities.forEach(o=>{if(o.errors.length){t.push(...o.errors);return}const l=ZP(i,o.entityState);t.push(...l)}),t.push(...t)):t.push(...s.errors)}const a=[...i.calledBySuccess||[],...i.calledByError||[],...i.calledByEntry||[]];if(a.length){const s=[...new Set(a)];a.length!==s.length&&t.push(new E({id:`${i.id}--${f.DuplicateReference}`,code:f.DuplicateReference,severity:T.Warning,message:`Entity of type "${i.type}" with id "${i.id}" has duplicate caller references. Each caller reference should be unique. Duplicate caller reference will be ignored.`,issue:null}));const o=vt(i,e);i.type===n.ReturnStatement&&o&&!Ue.includes(o.type)?t.push(new E({id:`${i.id}--${f.IncompatibleScope}`,code:f.IncompatibleScope,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" has an explicitly set parent, but it isn't a '${U(Ue,"', '","' or '")}' entity. A return statement's parent should always be resolved to a function declaration or global event.${Vo}`,issue:null})):i.type===n.ContinueStatement&&o&&o.type!==n.Loop?t.push(new E({id:`${i.id}--${f.IncompatibleScope}`,code:f.IncompatibleScope,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" has an explicitly set parent, but it isn't a '${n.Loop}' entity. A continue statement's parent should always be resolved to a loop entity.${Vo}`,issue:null})):i.type===n.BreakStatement&&o&&o.type!==n.Loop&&t.push(new E({id:`${i.id}--${f.IncompatibleScope}`,code:f.IncompatibleScope,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" has an explicitly set parent, but it isn't a '${n.Loop}' entity. A break statement's parent should always be resolved to a loop entity.${Vo}`,issue:null}));const l=[],p=[];let y=null;if(s.forEach(h=>{const m=e.get(h);if(!m){t.push(new E({id:`${i.id}--${h}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a caller entity with id "${h}" that doesn't exist in the project.`,issue:null}));return}const R=vt(m,e);if(o)xa(o,R,e)?(Ve.includes(i.type)&&((i.calledBySuccess||[]).find(D=>D===m.id)?(m.successCalls||[]).find(I=>Ve.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
257
+ The new termination statement is redundant because both entities would be called from the same parent caller branch "successCalls", at the same time.`,issue:null})):(i.calledByError||[]).find(D=>D===m.id)?(m.errorCalls||[]).find(I=>Ve.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
258
+ The new termination statement is redundant because both entities would be called from the same parent caller branch "errorCalls", at the same time.`,issue:null})):(i.calledByEntry||[]).find(D=>D===m.id)&&(m.calls||[]).find(I=>Ve.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
259
+ The new termination statement is redundant because both entities would be called from the same parent caller branch (entry-point), at the same time.`,issue:null}))),l.push({caller:m,scope:R})):p.push({caller:m,scope:R,errors:[new E({id:`${i.id}--${m.id}--${f.CallerWithIncompatibleScope}`,code:f.CallerWithIncompatibleScope,severity:T.Warning,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that is in a different scope. The caller entity should be in the same scope or a higher valid scope. Or all callers should share the global project scope with the entity they call.`,issue:null})]});else if(!y)y=R;else{const{compatible:g}=xa(y,R,e);g?(Ve.includes(i.type)&&((i.calledBySuccess||[]).find(D=>D===m.id)?(m.successCalls||[]).find(I=>Ve.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
260
+ The new termination statement is redundant because both entities would be called from the same parent caller branch "successCalls", at the same time.`,issue:null})):(i.calledByError||[]).find(D=>D===m.id)?(m.errorCalls||[]).find(I=>Ve.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
261
+ The new termination statement is redundant because both entities would be called from the same parent caller branch "errorCalls", at the same time.`,issue:null})):(i.calledByEntry||[]).find(D=>D===m.id)&&(m.calls||[]).find(I=>Ve.includes(I.type))&&t.push(new E({id:`${i.id}--${m.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Error,message:`Entity of type "${i.type}" with id "${i.id}" is being called by an entity of type "${m.type}" with id "${m.id}" that already calls a termination statement.
262
262
  The new termination statement is redundant because both entities would be called from the same parent caller branch (entry-point), at the same time.`,issue:null}))),l.push({caller:m,scope:R})):p.push({caller:m,scope:R,errors:[new E({id:`${i.id}--${m.id}--${f.CallerWithIncompatibleScope}`,code:f.CallerWithIncompatibleScope,severity:T.Warning,message:`Entity of type "${i.type}" with id "${i.id}" has multiple caller, but not all of them have compatible scopes. Caller of type "${m.type}" with id "${m.id}" is in a different scope than caller of type "${y.type}" with id "${y.id}". All callers should be in the same scope or a higher valid scope. Or all callers should share the global project scope.`,issue:null})]})}}),p.length)p.forEach(h=>{t.push(...h.errors)});else if(l.length&&!o&&Ko.includes(i.type)){const h=l.filter(m=>m.scope!==e);if(h.length){const m=BA(h.map(R=>R.scope));i.parent=m.id}else i.parent=e.id}}else{let s=`Entity of type "${i.type}" with id "${i.id}" isn't called by any other entity. Callable entities only get executed if they have a list of references from either 'calledByEntry', 'calledBySuccess' or 'calledByError'.
263
263
  To add a caller, use the 'add_caller' action with the properties: 'callerEntityId', a 'calleeEntityId', and optionally a boolean 'fromError' (if the caller calls when an error occured in its execution).`;i.type===n.ReturnStatement?s+=`
264
264
  Return statements need to have a caller when created, since their purpose is to terminate a call chain.`:i.type===n.ContinueStatement?s+=`
265
265
  Continue statements need to have a caller when created, since they are used to skip the rest of the current iteration of a loop and can't be detached from a call chain.`:i.type===n.BreakStatement&&(s+=`
266
266
  Break statements need to have a caller when created, since they are used to exit a loop and can't be detached from a call chain.`),s+=`
267
- ${WP}`,Ue.includes(i.type)||(s+=`
268
- It is recommended to have a caller reference already at the moment of creation in the payload of the generation action.`),t.push(new E({id:`${i.id}--${S.MissingCaller}`,code:S.MissingCaller,severity:Ue.includes(i.type)?T.Error:T.Warning,message:s,issue:null}))}}return{errors:t,modifiedData:i}}function Au(r,e){const t=[];if(e.type===n.PrimitiveValue){const o=e.parent;let l=!1;if(o.type===n.InputMap)t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a value writting entity at 'readsValue' with id "${e.id}" that is a primitive value entity. Primitive value entities aren't value writting entities.
267
+ ${WP}`,Ve.includes(i.type)||(s+=`
268
+ It is recommended to have a caller reference already at the moment of creation in the payload of the generation action.`),t.push(new E({id:`${i.id}--${S.MissingCaller}`,code:S.MissingCaller,severity:Ve.includes(i.type)?T.Error:T.Warning,message:s,issue:null}))}}return{errors:t,modifiedData:i}}function Au(r,e){const t=[];if(e.type===n.PrimitiveValue){const o=e.parent;let l=!1;if(o.type===n.InputMap)t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a value writting entity at 'readsValue' with id "${e.id}" that is a primitive value entity. Primitive value entities aren't value writting entities.
269
269
  All value writting entity types are: ${U(xe,", "," and ")}.
270
270
 
271
271
  This primitive-value entity belongs to an input map entity with id "${o.id}". Input map entities are value writting entities. Is that what you meant to reference?`,issue:null}));else if(o.type===n.DataType){const p=o,y=p.parent;xe.includes(y.type)?t.push(new E({id:`${r.id}--${e.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to a value writting entity at 'readsValue' with id "${e.id}" that is a primitive value entity. Primitive value entities can't be referenced as value writting entities.
@@ -287,16 +287,16 @@ ${Du}`,issue:null})):a.push(new E({id:`${o.id}--${f.InvalidReference}`,code:f.In
287
287
  ${Iu}`,issue:null})),delete s.readsValue);o.writesValues&&(xe.includes(o.type)?a.push(new E({id:`${o.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Warning,message:`Entity of type "${o.type}" with id "${o.id}" has a 'writesValues' property. This property is managed by the downstream entity, the value reader, and should not be present in the payload of the generation action.
288
288
  ${Pu}`,issue:null})):a.push(new E({id:`${o.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Warning,message:`Entity of type "${o.type}" with id "${o.id}" has a 'writesValues' property. This property is managed by the downstream entity, the value reader, and should not be present in the payload of the generation action.
289
289
  ${Mo}
290
- ${Pu}`,issue:null})),delete s.writesValues);const p=KP(o,t);delete s.calledByError,delete s.calledBySuccess,delete s.calledByEntry,a.push(...p.errors),o=p.modifiedData}const l=Object.entries(s);for(const[p,y]of l){const h=y.types,m=y.optional,R=o[p];if(!R){m||a.push(new E({id:`${o.id}--${p}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${o.type}" with id "${o.id}" is missing a reference to a "${p}" entity. The '${p}' property of a "${o.type}" entity can be ${U(h,", "," or ")}`,issue:null}));continue}if(y.list)if(Array.isArray(R))for(const g of R){const D=Ru(o,{key:p,types:h,optional:m},t);a.push(...D)}else{a.push(new E({id:`${o.id}--${p}--${f.ContainsSingleButShouldBeReferenceList}`,code:f.ContainsSingleButShouldBeReferenceList,severity:T.Error,message:`Entity of type "${o.type}" with id "${o.id}", should have a property "${p}" which is a list, but it isn't.`,issue:null}));continue}else if(Array.isArray(R)){a.push(new E({id:`${o.id}--${p}--${f.ContainsListButShouldReferenceSingle}`,code:f.ContainsListButShouldReferenceSingle,severity:T.Error,message:`Entity of type "${o.type}" with id "${o.id}", should have a property "${p}" which holds a single reference, but it is a list.`,issue:null}));continue}else{const g=Ru(o,{key:p,types:h,optional:m},t);a.push(...g)}}return{errors:a,modifiedData:o}}function Y2(r,e,t="calledBy"){const i=[];if(!r)return[];const a=e.get(r);if(!a)return i.push(new E({id:`${r}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity with id "${r}" referenced in '${t}' property not found in the project. Perhaps it should be created first? Perhaps it is the wrong ID?`,issue:null})),i;if([...je,...Fe].includes(a.type))return[];if(Ue.includes(a.type)){const s=a.calledBy||[],o=s.length?`
290
+ ${Pu}`,issue:null})),delete s.writesValues);const p=KP(o,t);delete s.calledByError,delete s.calledBySuccess,delete s.calledByEntry,a.push(...p.errors),o=p.modifiedData}const l=Object.entries(s);for(const[p,y]of l){const h=y.types,m=y.optional,R=o[p];if(!R){m||a.push(new E({id:`${o.id}--${p}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${o.type}" with id "${o.id}" is missing a reference to a "${p}" entity. The '${p}' property of a "${o.type}" entity can be ${U(h,", "," or ")}`,issue:null}));continue}if(y.list)if(Array.isArray(R))for(const g of R){const D=Ru(o,{key:p,types:h,optional:m},t);a.push(...D)}else{a.push(new E({id:`${o.id}--${p}--${f.ContainsSingleButShouldBeReferenceList}`,code:f.ContainsSingleButShouldBeReferenceList,severity:T.Error,message:`Entity of type "${o.type}" with id "${o.id}", should have a property "${p}" which is a list, but it isn't.`,issue:null}));continue}else if(Array.isArray(R)){a.push(new E({id:`${o.id}--${p}--${f.ContainsListButShouldReferenceSingle}`,code:f.ContainsListButShouldReferenceSingle,severity:T.Error,message:`Entity of type "${o.type}" with id "${o.id}", should have a property "${p}" which holds a single reference, but it is a list.`,issue:null}));continue}else{const g=Ru(o,{key:p,types:h,optional:m},t);a.push(...g)}}return{errors:a,modifiedData:o}}function Y2(r,e,t="calledBy"){const i=[];if(!r)return[];const a=e.get(r);if(!a)return i.push(new E({id:`${r}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity with id "${r}" referenced in '${t}' property not found in the project. Perhaps it should be created first? Perhaps it is the wrong ID?`,issue:null})),i;if([...je,...Ue].includes(a.type))return[];if(Ve.includes(a.type)){const s=a.calledBy||[],o=s.length?`
291
291
 
292
292
  This ${a.type} is called by ${U(s.map(l=>`${l.type} with id "${l.id}"`),", "," and ")} entities. You can reference ${s.length>1?"one of them":"it"} instead to execute this entity before the end of the logic.`:"";i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}'.
293
293
  ${a.type} entities are the last entity to be executed in a logic chain, and they don't call any other entities.
294
- Termination entities are ${U(Ue,", "," and ")}.${o}`,issue:null}))}else i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}' which is not a valid caller entity type.
295
- All caller entity types are: ${U(un,", "," and ")}.`,issue:null}));return i}function z2(r,e,t="calledByError"){const i=[];if(!r)return[];const a=e.get(r);if(!a)return i.push(new E({id:`${r}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity with id "${r}" referenced in '${t}' property not found in the project. Perhaps it should be created first? Perhaps it is the wrong ID?`,issue:null})),i;if(je.includes(a.type))return[];if(Ue.includes(a.type)){const s=a.calledBy||[],o=s.length?`
294
+ Termination entities are ${U(Ve,", "," and ")}.${o}`,issue:null}))}else i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}' which is not a valid caller entity type.
295
+ All caller entity types are: ${U(un,", "," and ")}.`,issue:null}));return i}function z2(r,e,t="calledByError"){const i=[];if(!r)return[];const a=e.get(r);if(!a)return i.push(new E({id:`${r}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity with id "${r}" referenced in '${t}' property not found in the project. Perhaps it should be created first? Perhaps it is the wrong ID?`,issue:null})),i;if(je.includes(a.type))return[];if(Ve.includes(a.type)){const s=a.calledBy||[],o=s.length?`
296
296
 
297
297
  This ${a.type} is called by ${U(s.map(l=>`${l.type} with id "${l.id}"`),", "," and ")} entities. You can reference ${s.length>1?"one of them":"it"} instead to execute this entity before the end of the logic.`:"";i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}'.
298
298
  ${a.type} entities are the last entity to be executed in a logic chain, and they don't call any other entities.
299
- Termination entities are ${U(Ue,", "," and ")}.${o}`,issue:null}))}else Fe.includes(a.type)?i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}' which is an entry-point entity and doesn't thrown errors.
299
+ Termination entities are ${U(Ve,", "," and ")}.${o}`,issue:null}))}else Ue.includes(a.type)?i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}' which is an entry-point entity and doesn't thrown errors.
300
300
  ${$a}`,issue:null})):i.push(new E({id:`last-action--${a.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity with id '${a.id}' referenced in '${t}' property is of type '${a.type}' which is not a valid caller entity type.
301
301
  For any error branch caller, for the 'calledByError' property of an entity, you specifically need to reference a pass-through callable entity.
302
302
  ${zn}`,issue:null}));return i}function Z2(r,e){const t=[],i=e.get(r);if(!i)t.push(new E({id:`last-action--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`The 'readsValue' property references an entity with id '${r}' that was not found in the project. Perhaps it should be created? Perhaps the ID is incorrect?`,issue:null}));else if(i.type===n.PrimitiveValue){const s=i.parent;let o=!1;if(s.type===n.InputMap)t.push(new E({id:`last-action--${i.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`The 'readsValue' property references an entity with id "${i.id}" that is a primitive value entity. Primitive value entities aren't value writting entities.
@@ -358,14 +358,14 @@ The only use for declaring global callable entities is for a 'variable-declarati
358
358
  Or for a logic that the user is going to manually test themselves by clicking on the user-interface.`,issue:null,entity:r}));else{const t=ka(r);if(!t.reachable){let i=`This '${r.type}' entity "${C(r,r.project)}" with id "${r.id}" is not reachable from the project's closest entry point '${t.entryPoint.type}' "${C(t.entryPoint,r.project)}".`;i+=`
359
359
  This is because there are termination statements in the call chain before reaching this '${r.type}'.
360
360
  If a caller entity calls a termination statement, it will always prevent all other calls from executing.`;let a=`
361
- This '${r.type}' is blocked `;t.blocks.forEach((s,o)=>{const l=s.blockedByCaller,p=s.blockedByCalling;o===0?a+="by ":o===t.blocks.length-1&&(a+="and by "),a+=`its ancestor "${C(l,r.project)}" with id "${l.id}" that calls a '${p.type}' entity with id "${p.id}"`,o<t.blocks.length-1?a+=", ":a+="."}),e.push(new Tr({id:`${r.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Warning,message:`${i}${a}`,issue:null,entity:r}))}}return ie(r.errors,e)}function Ou(r){const e=[];if(!r.internalCalls.length)return e;if(r.readsValue){const t=Y({id:`${r.id}--${M.VariableReadsValueAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" reads a value. A variable with internal calls can't read a value.`,issue:null,severity:T.Error,code:M.VariableReadsValueAndInternalCall,entity:r});e.push(t.error)}if(r.writesValues.length){const t=Y({id:`${r.id}--${M.VariableWritesValuesAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" writes values. A variable with internal calls can't write a value.`,issue:null,severity:T.Error,code:M.VariableWritesValuesAndInternalCall,entity:r});e.push(t.error)}if(r.getUsedInputs().length){const t=Y({id:`${r.id}--${M.VariableHasInputsAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" has inputs. A variable with internal calls can't have inputs.`,issue:null,severity:T.Error,code:M.VariableHasInputsAndInternalCall,entity:r});e.push(t.error)}if(r.getUsedOutputs().length){const t=Y({id:`${r.id}--${M.VariableHasOutputsAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" has outputs. A variable with internal calls can't have outputs.`,issue:null,severity:T.Error,code:M.VariableHasOutputsAndInternalCall,entity:r});e.push(t.error)}if(r.calledBy.length){const t=Y({id:`${r.id}--${M.VariableIsCalledAndHasInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" is called by other entities. A variable with internal calls can't be called by other entities.`,issue:null,severity:T.Error,code:M.VariableIsCalledAndHasInternalCall,entity:r});e.push(t.error)}if([...r.successCalls,...r.errorCalls].length){const t=Y({id:`${r.id}--${M.VariableCallsOthersAndHasInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" calls other entities. A variable with internal calls can't call other entities.`,issue:null,severity:T.Error,code:M.VariableCallsOthersAndHasInternalCall,entity:r});e.push(t.error)}return e}function e7(r){var o;const e=r6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(l=>l.validate()),r.outputs.forEach(l=>l.validate()),(o=r.error)==null||o.validate();const s=[...Cn(r)];return ie(r.errors,s)}const we=class we{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.FunctionCall);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"process",null);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"error",null);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const m=N(e.parent);i=t.get(m)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(m=>{const R=N(m);return t.get(R)}),l=e.calledBySuccess.map(m=>{const R=N(m);return t.get(R)}),p=e.calledByError.map(m=>{const R=N(m);return t.get(R)}),y={id:e.id,version:1,type:n.FunctionCall,declaration:s.toReference(),calledByEntry:o,calledBySuccess:l,calledByError:p,errorCalls:[],successCalls:[],inputs:[],outputs:[],process:null,error:null,x:0,y:0,parent:i},h=v(y,t);return h.setParent(i),h.initChildren(),h}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);i=s.modifiedData,a.push(...s.errors,...Ve(i));const o=N(i.declaration);if(o){const l=QP(o,t);a.push(...l)}else{const l=t.functions.length?`
361
+ This '${r.type}' is blocked `;t.blocks.forEach((s,o)=>{const l=s.blockedByCaller,p=s.blockedByCalling;o===0?a+="by ":o===t.blocks.length-1&&(a+="and by "),a+=`its ancestor "${C(l,r.project)}" with id "${l.id}" that calls a '${p.type}' entity with id "${p.id}"`,o<t.blocks.length-1?a+=", ":a+="."}),e.push(new Tr({id:`${r.id}--${S.UnreachableEntity}`,code:S.UnreachableEntity,severity:T.Warning,message:`${i}${a}`,issue:null,entity:r}))}}return ie(r.errors,e)}function Ou(r){const e=[];if(!r.internalCalls.length)return e;if(r.readsValue){const t=Y({id:`${r.id}--${M.VariableReadsValueAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" reads a value. A variable with internal calls can't read a value.`,issue:null,severity:T.Error,code:M.VariableReadsValueAndInternalCall,entity:r});e.push(t.error)}if(r.writesValues.length){const t=Y({id:`${r.id}--${M.VariableWritesValuesAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" writes values. A variable with internal calls can't write a value.`,issue:null,severity:T.Error,code:M.VariableWritesValuesAndInternalCall,entity:r});e.push(t.error)}if(r.getUsedInputs().length){const t=Y({id:`${r.id}--${M.VariableHasInputsAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" has inputs. A variable with internal calls can't have inputs.`,issue:null,severity:T.Error,code:M.VariableHasInputsAndInternalCall,entity:r});e.push(t.error)}if(r.getUsedOutputs().length){const t=Y({id:`${r.id}--${M.VariableHasOutputsAndInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" has outputs. A variable with internal calls can't have outputs.`,issue:null,severity:T.Error,code:M.VariableHasOutputsAndInternalCall,entity:r});e.push(t.error)}if(r.calledBy.length){const t=Y({id:`${r.id}--${M.VariableIsCalledAndHasInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" is called by other entities. A variable with internal calls can't be called by other entities.`,issue:null,severity:T.Error,code:M.VariableIsCalledAndHasInternalCall,entity:r});e.push(t.error)}if([...r.successCalls,...r.errorCalls].length){const t=Y({id:`${r.id}--${M.VariableCallsOthersAndHasInternalCall}`,message:`Variable "${C(r,r.project)}" with id "${r.id}" calls other entities. A variable with internal calls can't call other entities.`,issue:null,severity:T.Error,code:M.VariableCallsOthersAndHasInternalCall,entity:r});e.push(t.error)}return e}function e7(r){var o;const e=r6(),t=r.toJSON();e.safeParse(t).success,r.inputs.forEach(l=>l.validate()),r.outputs.forEach(l=>l.validate()),(o=r.error)==null||o.validate();const s=[...Cn(r)];return ie(r.errors,s)}const we=class we{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"x");d(this,"y");d(this,"type",n.FunctionCall);d(this,"successCalls",[]);d(this,"errorCalls",[]);d(this,"process",null);d(this,"declaration");d(this,"inputs",[]);d(this,"outputs",[]);d(this,"calledBySuccess",[]);d(this,"calledByError",[]);d(this,"calledByEntry",[]);d(this,"error",null);d(this,"parent");d(this,"errors",[]);d(this,"project");d(this,"initialized",!1);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.x=e.x,this.y=e.y}static fromGenerationTarget(e,t){let i=t;if(e.parent){const m=N(e.parent);i=t.get(m)}const a=N(e.declaration),s=t.get(a),o=e.calledByEntry.map(m=>{const R=N(m);return t.get(R)}),l=e.calledBySuccess.map(m=>{const R=N(m);return t.get(R)}),p=e.calledByError.map(m=>{const R=N(m);return t.get(R)}),y={id:e.id,version:1,type:n.FunctionCall,declaration:s.toReference(),calledByEntry:o,calledBySuccess:l,calledByError:p,errorCalls:[],successCalls:[],inputs:[],outputs:[],process:null,error:null,x:0,y:0,parent:i},h=v(y,t);return h.setParent(i),h.initChildren(),h}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=He(i,{parent:{list:!1,types:[...ut,n.Project],optional:!0}},t);i=s.modifiedData,a.push(...s.errors,...Le(i));const o=N(i.declaration);if(o){const l=QP(o,t);a.push(...l)}else{const l=t.functions.length?`
362
362
  All global 'function-declaration' entity ids are:
363
363
  - ${t.functions.map(p=>`${p.id} (${C(p,t)})`).join(`
364
364
  - `)}.`:`
365
365
  The project currently has no global 'function-declaration' entities that can be called as 'function-call' entities.`;a.push(new E({id:`${i.id}--${f.InvalidReference}`,code:f.InvalidReference,severity:T.Error,message:`Entity of type "${n.FunctionCall}" with id "${i.id}", has an invalid reference at the 'declaration' property. The 'declaration' property must be a valid reference to an 'function-declaration' entity.
366
366
  References can either be an ID string or an object with exacly four properties: 'id', 'entityId', 'entityType', 'type'.${l}`,issue:null}))}return{errors:a,modifiedData:i}}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on a callable entity, is its scope. It scope is auto-calculated implicitly by the its caller.
367
367
  If an entity is called by another, they must be in the same scope, which means they have the same parent.
368
- You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addFunctionCall(this),(a=this.process)==null||a.writesValues.forEach(s=>{s.setValueWriter(this.process),e.push(s)}),this.successCalls.forEach(s=>{s.addSuccessCaller(this),e.push(s)}),this.errorCalls.forEach(s=>{s.addErrorCaller(this),e.push(s)}),this.calledBySuccess.forEach(s=>{s.addSuccessCall(this),e.push(s)}),this.calledByError.forEach(s=>{s.addErrorCall(this),e.push(s)}),this.calledByEntry.forEach(s=>{s.addCall(this),e.push(s)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addValueReader(e){var t;return(t=this.process)==null||t.addValueReader(e),this}removeValueReader(e){var t;return(t=this.process)==null||t.removeValueReader(e),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.declaration.type===n.FunctionDeclaration){const e=v(this.initialData.declaration,this.project);this.declaration=e}else{const e=N(this.initialData.declaration),t=this.project.get(e);this.declaration=t}return this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.syncMissingFixedInputs(),this.syncMissingFixedOutputs(),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){var s;const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.process){const{affected:o,removed:l}=(s=this.process)==null?void 0:s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}if(this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.outputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.error){const{affected:o,removed:l}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}return this.successCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),this.errorCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),e||this.calledBy.forEach(o=>{i.push(o),o.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.process){const{affected:i}=this.process.restore({seenEntities:e});t.push(...i)}return this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:(e=this.process)==null?void 0:e.toJSON(),declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:this.parent.toReference(),error:(t=this.error)==null?void 0:t.toJSON()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,process:this.process?this.process.toReference():null,inputs:this.inputs.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),declaration:this.declaration.toReference(),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.process?this.process.toFlatJSON(e):[],...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,version:this.version,type:this.type,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),declaration:this.declaration.id,parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.process?this.process.toFlatGenerationTarget(e):[],...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=e7(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new we(this.toJSON(),this.project)}removeUnrecognizedInputs(){const e=[],t=[],i=[];return this.inputs.forEach(a=>{if(!this.declaration.inputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}removeUnrecognizedOutputs(){const e=[],t=[],i=[];return this.outputs.forEach(a=>{if(!this.declaration.getUniqueReturnDeclarations().find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedInputs(){const e=[],t=[],i=[],a=this.declaration.inputs.filter(p=>!this.inputs.find(y=>y.declaration.id===p.id));this.inputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.inputs.forEach(m=>{m.index>=p.index&&m.sync({index:m.index+1})});const y={id:_.UUID.uuid(),version:1,type:n.InputMap,declaration:p.toJSON(),readsValue:null,defaultValue:null,index:p.index,name:null,description:null,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject(),t.push(h)}),this.inputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedInputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedOutputs(){const e=[],t=[],i=[],a=[];this.outputs=this.initialData.outputs.map(y=>{const h=v(y,this.project);return a.push(h.index),h.setParent(this),h.initChildren(),h});const s=this.declaration.getUniqueReturnDeclarations().filter(y=>!this.outputs.find(h=>h.declaration.id===y.id));this.outputs.sort((y,h)=>y.index-h.index),s.forEach((y,h)=>{this.outputs.forEach(D=>{D.index>=y.index&&D.index++});const m=a.includes(y.index)?this.outputs.length-1+h:y.index,R={id:_.UUID.uuid(),version:1,type:n.OutputMap,declaration:y.toJSON(),writesValues:[],index:m,parent:this.toReference()},g=v(R,this.project);g.setParent(this),g.initChildren(),g.addSelfToProject()}),this.outputs.sort((y,h)=>y.index-h.index);const{updated:o,added:l,removed:p}=this.removeUnrecognizedOutputs();return e.push(...o),t.push(...l),i.push(...p),{updated:b(e),added:b(t),removed:b(i),self:this}}};d(we,"MUTABLE_BASE_PROPERTIES",[]),d(we,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(we,"BASE_PROPERTIES",[...we.MUTABLE_BASE_PROPERTIES,...we.INMUTABLE_BASE_PROPERTIES]),d(we,"MUTABLE_META_PROPERTIES",["x","y"]),d(we,"INMUTABLE_META_PROPERTIES",[...we.INMUTABLE_BASE_PROPERTIES]),d(we,"META_PROPERTIES",[...we.MUTABLE_META_PROPERTIES,...we.INMUTABLE_META_PROPERTIES]),d(we,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(we,"INMUTABLE_UPSTREAM_PROPERTIES",["declaration","parent"]),d(we,"UPSTREAM_PROPERTIES",[...we.MUTABLE_UPSTREAM_PROPERTIES,...we.INMUTABLE_UPSTREAM_PROPERTIES]),d(we,"MUTABLE_DOWNSTREAM_PROPERTIES",["successCalls","errorCalls","writesValues","inputs","outputs","error"]),d(we,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(we,"DOWNSTREAM_PROPERTIES",[...we.MUTABLE_DOWNSTREAM_PROPERTIES,...we.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(we,"PROPERTIES",[...we.META_PROPERTIES,...we.UPSTREAM_PROPERTIES,...we.DOWNSTREAM_PROPERTIES]);let xr=we;function nA(r){var e,t,i;switch(r.id){case B["built-in-base-entity"].BUILT_IN_PERSISTED_ENTITY_ENTITY.id:{const a=r.project.entities.filter(h=>!!h.implements.find(m=>m.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.id));if(a.find(h=>!!h.properties.find(m=>{var R;return m.implements&&m.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id&&((R=m.getDefaultValue())==null?void 0:R.value)===!0}))){const m=a[0].properties.find(g=>g.implements&&g.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id),R=(e=m==null?void 0:m.dataType)==null?void 0:e.defaultValue;if(R)R.value=!0;else if(m!=null&&m.dataType){const g=(t=m==null?void 0:m.dataType)==null?void 0:t.id.split("-id")[0],D=v({id:g+"-default-value-id",version:1,type:n.PrimitiveValue,name:P.EntityTemplate,autogeneration:null,value:!0,valueAsType:null,parent:m==null?void 0:m.dataType.toReference()},r.project);return D.setParent(m==null?void 0:m.dataType),D.initChildren(),D.addSelfToProject(),{newEntities:[D]}}return{newEntities:[]}}const o=r.project.get(B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.id),l=Fo(o,"Main database");if(l.errors.length>0)return{newEntities:[]};const p=l.implemented.properties.find(h=>h.implements&&h.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id),y=(i=p==null?void 0:p.dataType)==null?void 0:i.defaultValue;if(y)y.value=!0;else if(p!=null&&p.dataType){const h=p==null?void 0:p.dataType.id.split("-id")[0],m=v({id:h+"-default-value-id",version:1,type:n.PrimitiveValue,name:P.EntityTemplate,autogeneration:null,value:!0,valueAsType:null,parent:p==null?void 0:p.dataType.toReference()},r.project);m.setParent(p==null?void 0:p.dataType),m.initChildren(),m.addSelfToProject()}return{newEntities:[l.implemented]}}}return{newEntities:[]}}function rA(r){return r.implements.filter(t=>t.type===n.BuiltInBaseEntity).map(t=>{var i;switch(t.id){case B["built-in-base-entity"].BUILT_IN_PERSISTED_ENTITY_ENTITY.id:{const s=r.project.entities.filter(p=>p.implements.find(y=>y.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.id)).find(p=>!!p.properties.find(y=>{var h;return y.implements&&y.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id&&((h=y.getDefaultValue())==null?void 0:h.value)===!0}));if(!s)return{newEntities:[]};const o=r.properties.find(p=>p.implements&&p.implements.id===B["built-in-base-entity"].BUILT_IN_PERSISTED_ENTITY_ENTITY.properties.database.id),l=(i=o==null?void 0:o.dataType)==null?void 0:i.defaultValue;if(o&&(o!=null&&o.dataType)&&!l){const p=o==null?void 0:o.dataType.id.split("-id")[0],y=v({id:p+"-default-value-id",version:1,type:n.PrimitiveValue,name:P.EntityTemplate,autogeneration:null,value:null,valueAsType:s,parent:o==null?void 0:o.dataType.toReference()},r.project);return y.setParent(o==null?void 0:o.dataType),y.initChildren(),y.addSelfToProject(),{newEntities:[y]}}return{newEntities:[]}}}}),{newEntities:[]}}function Fo(r,e,t){const i=t||Ze(e,n.CustomEntity,r.project),a=i.split("-id"),s=a[a.length-1||0]||i,o={id:i,version:1,name:e,type:n.CustomEntity,description:null,static:!1,abstract:!1,properties:[],methods:[],abstractMethods:[],extends:[],implements:[r],x:0,y:0,parent:r.project},l=Bo(o,r.project);if(l.length>0)return{errors:l,implemented:null,entitiesChanges:{new:[],updated:[],deleted:[]}};const p=nA(r),y=v(o,r.project);y.setParent(r.project),y.initChildren();const h=r.properties.map(g=>{const D=s+"-"+Ze(C(g,r.project),n.Property,r.project),A=g.clone(y,D);return A.abstract=!1,A.implements=g,A.setParent(y),y.addProperty(A),A}),m=r.abstractMethods.map(g=>{const D=s+Ze(g.name,n.FunctionDeclaration,r.project),A=g.implementAsFunctionDeclaration(D),I={id:D+"-parent-ref-id",type:n.GenericReference,entityId:i,entityType:n.CustomEntity},F={...A,implements:g,parent:I},k=v(F,r.project);return y.addMethod(k),k.setParent(y),k.initChildren(),k.implements=g,k});o.properties=h,o.methods=m;const R=rA(y);return{implemented:y,errors:[],entitiesChanges:{new:[y,...p.newEntities,...R.newEntities],updated:[y],deleted:[]}}}function Su(r,e){return e.entities.find(a=>{const s=a.properties,o=s.map(m=>m.name),l=r.every(m=>o.includes(m)),p=o.filter(m=>!r.includes(m)),y=s.every(m=>!p.includes(m.name)||!m.required);return l&&y})||null}function iA(r,e,t=Ke.OrDataTypeGroup){const i=[],a=[],s=[],l={id:e.id+"--nested-data-type-id-"+r.id,version:1,type:n.DataType,entity:r.toJSON(),isList:!1,isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parentRelationType:t,parent:e.toReference()},p=v(l,r.project);return a.push(p),p.setParent(e),p.initChildren(),p.setEntity(r),p.addSelfToProject(),{updated:b(i),added:b(a),removed:b(s),self:p}}function Cu(r,e,t,i){const a=[],s=[],o=[];switch(typeof r){case"string":let l=!1;const p=new Date(r);if(p instanceof Date&&!isNaN(p.valueOf())&&(l=!0),l){const y=e.project.getBuiltIn(B[n.PrimitiveEntity][P.Date].id);e.setEntity(y);break}else{const y=e.project.getBuiltIn(B[n.PrimitiveEntity][P.String].id);e.setEntity(y);break}case"number":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Number].id));break;case"boolean":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Boolean].id));break;case"object":if(r===null){e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Null].id));break}else if(Array.isArray(r))if(e.sync({isList:!0}),r.length>0){const y=r.slice(0,5).filter(m=>m!==void 0);if(y.every(m=>typeof m==typeof y[0])&&(typeof y[0]!="object"||y[0]===null))switch(typeof y[0]){case"string":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.String].id));break;case"number":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Number].id));break;case"boolean":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Boolean].id));break;case"object":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Null].id));break}else{const m=[];let R=!1;y.forEach((D,A)=>{if(Array.isArray(D)&&(R=!0),typeof D=="object"&&!Array.isArray(D)&&D!==null){const I=Uo(D,e.project,{...t,id:e.id+"--or-child-data-type-entity-id-"+A},i);I.hasCreated&&m.push(I.changeSet.self),a.push(...I.changeSet.updated),s.push(...I.changeSet.added),o.push(...I.changeSet.removed)}});const g=b(m);if(!g.length&&!R){y.forEach(D=>{const A={id:_.UUID.uuid(),version:1,type:n.DataType,entity:null,isList:!1,isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parentRelationType:Ke.OrDataTypeGroup,parent:e.toReference()},I=v(A,e.project);switch(I.setParent(e),I.initChildren(),I.addSelfToProject(),typeof D){case"string":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.String].id));break;case"number":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.Number].id));break;case"boolean":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.Boolean].id));break;case"object":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.Null].id));break}});break}else g.length===1&&!R?e.setEntity(g[0]):y.forEach((D,A)=>{if(typeof D=="object"&&!Array.isArray(D)&&D!==null){const I=Su(Object.keys(D),e.project);if(I){const F=iA(I||g[0],e,Ke.OrDataTypeGroup);a.push(...F.updated),s.push(...F.added),o.push(...F.removed)}}else{const I={id:e.id+"--or-child-data-type-id--"+A,version:1,type:n.DataType,entity:null,isList:Array.isArray(D),isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parentRelationType:Ke.OrDataTypeGroup,parent:e.toReference()},F=v(I,e.project);F.setParent(e),F.initChildren(),F.addSelfToProject();const k=Cu(D,F,{...t,id:e.id+"--or-child-data-type-entity-id-"+A},i);a.push(...k.updated),s.push(...k.added),o.push(...k.removed)}})}}else{const y=Uo(r[0],e.project,{...t},i);e.setEntity(y.changeSet.self),a.push(...y.changeSet.updated),s.push(...y.changeSet.added),o.push(...y.changeSet.removed);break}else{const y=Uo(r,e.project,{...t},i);e.setEntity(y.changeSet.self),a.push(...y.changeSet.updated),s.push(...y.changeSet.added),o.push(...y.changeSet.removed);break}}return{updated:b(a),added:b(s),removed:b(o),self:e}}function Uo(r,e,t,i){const a=[],s=[],o=[],l=Object.keys(r),p=Su(l,e);if(p)return{hasCreated:!1,changeSet:{updated:[],added:[],removed:[],self:p}};const y=i?t.name+" of "+i.name:t.name,m={id:t.id||Ze(y,n.CustomEntity,e),version:1,name:y,type:n.CustomEntity,description:t.description||null,static:t.static||!1,abstract:t.abstract||!1,properties:[],methods:[],abstractMethods:[],extends:[],implements:[],x:0,y:0,parent:e.toReference()},R=v(m,e);return R.setParent(e),R.initChildren(),R.addSelfToProject(),s.push(R),l.forEach((g,D)=>{const A=Ze(y+" "+g,n.Property,e),I={id:A,version:1,name:g,type:n.Property,description:null,static:!1,abstract:!1,dataType:null,implements:null,index:D,hidden:!1,private:!1,required:!0,parent:R.toReference()},F=v(I,e);F.setParent(R),F.initChildren(),F.addSelfToProject(),s.push(F);const k=r[g],fe={id:A+"--data-type-id",version:1,type:n.DataType,entity:null,isList:!1,isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parent:F.toReference()},ae=v(fe,e);ae.setParent(F),ae.initChildren(),ae.addSelfToProject(),s.push(ae);const Je=Cu(k,ae,{...t,name:g,id:A+"--data-type-entity-id"},i||R);a.push(...Je.updated),s.push(...Je.added),o.push(...Je.removed)}),{hasCreated:!0,changeSet:{updated:b(a),added:b(s),removed:b(o),self:R}}}function xo(r,e){const t=jr(r);if(t.length===0)return{list:[],last:null};let i=null;return{list:t.flatMap(s=>{if(s===e)return i=s,[s];const o=xo(s,e);return o.last&&(i=o.last),[s,...o.list]}),last:i}}function aA(r,e,t=new Set){const i=Xn(r),a=Xn(e),s=i.filter(p=>!a.includes(p)),o=i.filter(p=>a.includes(p)),l=s.reduce((p,y)=>t.has(y.id)?p:(t.add(y.id),b([...p,...aA(y,e,t)])),[]);return b([...o,...l])}function Ua(r,e){const t=xo(r,e);return t.last===e&&t.list.length>0&&t.list[0]!==e}function t7(r,e){return!!xo(r,e).last}function n7(r){if(Fe.includes(r.type))return r;if([...wn,n.VariableDeclaration].includes(r.type)){const e=r.parent;return Fe.includes(e.type)?e:null}return null}function Bu(r,e){if(!r||!e)throw new Error("Both entities must be defined to find a common ancestor");if(r===e)return r;const t=r.parent;if(t){if(t===e)return e;if(t.type===n.Project)return null}else return null;const i=e.parent;if(i){if(i===r)return r;if(i.type===n.Project)return null}else return null;return Bu(t,i)}function tt(r){if(Xo.includes(r.type)){if(r.type===n.FunctionDeclaration){const e=r.parent;if(e.type===n.CustomEntity)return e;if(e.type===n.Loop)return e}return r}else{const e=r.parent;return e?tt(e):null}}function r7(r){return r.type===n.VariableDeclaration?[r]:je.includes(r.type)?[...r.inputs,...r.outputs||[]]:r.type===n.ReturnStatement?r.outputs:Hr.includes(r.type)||r.type===n.FunctionDeclaration?r.inputs:[]}function i7(r){const e=Xn(r),t=[],i=[];ju.includes(r.type)&&t.push(...wu(r));const a=e.filter(s=>{const o=t.includes(s);return o?!1:wn.includes(s.type)&&!o?(i.push(s),!1):!0});return t.sort((s,o)=>Ua(o,s)?-1:0),i.sort((s,o)=>Ua(o,s)?-1:0),[...t,...i,...a]}function sA(r){return[...r].sort((e,t)=>Ua(t,e)?-1:0)}function a7(r){const e=sA(r),t=[];return e.forEach(i=>{const a=t[t.length-1];if(a){const s=a[a.length-1];Ua(i,s)?t.push([i]):a.push(i)}else t.push([i])}),t}function Rt(r){const e=r.map(t=>tt(t));return b(e)}function wu(r){return je.includes(r.type)?[...Rt(r.successCalls),...Rt(r.errorCalls)]:Fe.includes(r.type)?Rt(r.calls):[]}function s7(r,e){return wu(r).includes(e)}function _u(r){return r.writesValues||[]}function o7(r,e){return _u(r).includes(e)}function oA(r){var e;return $e.includes((e=r==null?void 0:r.readsValue)==null?void 0:e.type)?r.readsValue:null}function l7(r){return r.writesValues}function lA(r=[]){return r.map(oA).filter(e=>!!e)}function jo(r=[]){return r.map(e=>e.writesValues).flat().filter(e=>$e.includes(e.type))}function cA(r=[]){return r.map(e=>e.readsValue).filter(e=>!!e&&$e.includes(e.type))}function dA(r){return $e.includes(r.type)?r:null}function uA(r){return r.writesValues.map(dA).filter(e=>!!e)}function pA(r=[]){return r.reduce((e,t)=>t.type===n.OutputMap?[...e,...uA(t)]:e,[])}function Ne(r){return je.includes(r.type)?[...cn(Rt(r.successCalls)),...cn(Rt(r.errorCalls))]:Fe.includes(r.type)?cn(Rt(r.calls)):[]}function c7(r){return je.includes(r.type)?[...cn(Rt(r.successCalls)),...cn(Rt(r.errorCalls))]:Fe.includes(r.type)?cn(Rt(r.calls)):[]}function yA(r,e=new Set){return r.writesValues.filter(i=>$e.includes(i.type)&&!e.has(i.id)).reduce((i,a)=>e.has(a.id)?i:[...i,...re(a,e)],[])}function hA(r,e=new Set){var i;return(((i=r.readsValue)==null?void 0:i.writesValues)||[]).filter(a=>$e.includes(a.type)&&!e.has(a.id)).reduce((a,s)=>e.has(s.id)?a:[...a,...re(s,e)],[])}function re(r,e=new Set){if(e.has(r.id))return[];if(r.type===n.ReturnStatement)return cA(r.outputs).reduce((i,a)=>[...i,...re(a,e)],[]);if(r.type===n.FunctionCall||r.type===n.Operation||r.type===n.Condition)return[...Ne(r).reduce((s,o)=>{const l=tt(o);return[...s,...re(l||o,e)]},[]),...lA(r.inputs),...pA(r.outputs)].reduce((s,o)=>[...s,...re(o,e)],[]);if(Hr.includes(r.type)){const t=jo(r.inputs),a=Ne(r).reduce((s,o)=>{const l=tt(o);return[...s,...re(l||o,e)]},[]);return t.push(...a),t.reduce((s,o)=>[...s,...re(o,e)],[])}if(r.type===n.FunctionDeclaration){const t=[...jo(r.inputs)],a=Ne(r).reduce((s,o)=>{const l=tt(o);return[...s,...re(l||o,e)]},[]);return t.push(...a),t.reduce((s,o)=>[...s,...re(o)],[])}if($e.includes(r.type)){e.add(r.id);const i=Ne(r).reduce((a,s)=>{const o=tt(s);return[...a,...re(o||s,e)]},[]);return[r,...i,...hA(r,e),...yA(r,e)]}return[]}function St(r,e=new Set){return e.has(r.id)?[]:(e.add(r.id),[...Xn(r).reduce((a,s)=>[...a,s,...St(s,e)],[])])}function cn(r){return r.reduce((e,t)=>t.type===n.ReturnStatement||t.type===n.ContinueStatement||t.type===n.BreakStatement?[...e,t]:[...e,t,...Ne(t)],[])}function fA(r){const e=r.entities||[],t=[...e,...r.functions||[],...r.events||[],...r.projects||[]],i=e.reduce((p,y)=>[...p,...y.properties],[]),a=e.reduce((p,y)=>[...p,...y.methods],[]),s=a.reduce((p,y)=>[...p,...jo(y.inputs),...cn(Rt(y.calls)),...y.returnStatements],[]),o=r.functions.reduce((p,y)=>[...p,...cn(Rt(y.calls)),...y.returnStatements],[]),l=r.events.reduce((p,y)=>[...p,...cn(Rt(y.calls)),...y.returnStatements],[]);return[...t,...i,...a,...s,...o,...l]}function mA(r,e){return e.filter(i=>{if(!i)return!1;switch(i.type){case n.FunctionCall:return i.inputs.find(a=>a.id===r.id)!==void 0||i.outputs.find(a=>a.id===r.id)!==void 0;case n.Condition:return i.successCalls.find(a=>a.id===r.id)!==void 0||i.errorCalls.find(a=>a.id===r.id)!==void 0||i.inputs.find(a=>a.id===r.id)!==void 0;case n.Operation:return i.outputs.find(a=>a.id===r.id)!==void 0;case n.VariableDeclaration:return je.includes(r.type)?TA(r).find(s=>{var o;return((o=s.readsValue)==null?void 0:o.id)===i.id})!==void 0:!1;case n.CustomEntity:return i.properties.find(a=>a.id===r.id)!==void 0||i.methods.find(a=>a.id===r.id)!==void 0;case n.FunctionDeclaration:return i.inputs.find(a=>a.id===r.id)!==void 0||(i.returnStatements.map(a=>a.outputs).flat()||[]).find(a=>a.id===r.id)!==void 0;default:return!1}})}function d7(r){const e=fA(r.project);return mA(r,e)}function jr(r){const e=[];if(wn.includes(r.type)){r.calledBy.forEach(a=>{const s=tt(a);s&&e.push(s)});const i=[...r.inputs||[],...r.outputs||[]].map(a=>Mu(a)).filter(a=>a!==null);e.push(...b(i))}if($e.includes(r.type)){const t=Mu(r);t&&e.push(t)}return b(e)}function Nu(r){return r.type===n.FunctionCall||r.type===n.InternalCall||[n.Operation,n.Condition,n.Loop].includes(r.type)?r.declaration.inputs:r.type===n.FunctionDeclaration||Hr.includes(r.type)?r.inputs:r.type===n.Search?r.inputsDeclarations:[]}function u7(r,e){return e.type===n.Condition?e.inputs.find(t=>t.declaration.id===r.id):e.type===n.FunctionCall||e.type===n.Operation?e.inputs.find(t=>t.declaration.id===r.id):null}function TA(r){return je.includes(r.type)?r.inputs:[]}function EA(r){var e;return r.type===n.FunctionCall?((e=r.declaration.returnStatements[0])==null?void 0:e.outputs)||[]:[n.Operation,n.Condition,n.Loop].includes(r.type)?r.declaration.outputs:r.type===n.Search?r.outputsDeclarations:Ue.includes(r.type)?r.outputs:[]}function p7(r,e){return e.type===n.Condition?null:e.type===n.FunctionCall||e.type===n.Operation?e.outputs.find(t=>t.declaration.id===r.id):null}function y7(r){return r.type===n.Condition?[]:je.includes(r.type)?r.outputs:[]}function Mu(r){const e=r.readsValue;return e?tt(e):null}function bA(r){const e=r.internalCalls||[];return b(Rt(b(e.flatMap(t=>[...t.successCalls,...t.errorCalls]))))}function wi(r){const e=_u(r),t=[];return e.forEach(i=>{if($e.includes(i.type))t.push(i);else if(Bn.includes(i.type)){const a=i.parent;t.push(a)}}),t}function b(r){const e=new Set;return r.filter(t=>!t||e.has(t.id)?!1:(e.add(t.id),!0))}function Xn(r,e=!1){const t=[];if(r.type===n.Project&&t.push(...(r==null?void 0:r.entities)||[],...(r==null?void 0:r.functions)||[],...(r==null?void 0:r.variableDeclarations)||[],...(r==null?void 0:r.variableInstances)||[],...(r==null?void 0:r.searches)||[],...(r==null?void 0:r.loops)||[],...(r==null?void 0:r.operations)||[],...(r==null?void 0:r.conditions)||[],...(r==null?void 0:r.functionCalls)||[],...(r==null?void 0:r.events)||[],...(r==null?void 0:r.projects)||[]),ut.includes(r.type)&&t.push(...(r==null?void 0:r.detachedChildren)||[]),r.type===n.CustomEntity){const i=[...r.suggestedMethods,...r.methods].flatMap(a=>a.collapsed&&e?[]:Xn(a));t.push(...i)}if(r.type===n.Condition){const i=r.successCalls.map(s=>tt(s)),a=r.errorCalls.map(s=>tt(s));t.push(...i,...a)}if(Hr.includes(r.type)){if(r.collapsed&&e)return[];const i=r.inputs.map(s=>wi(s)).flat(),a=r.calls.map(s=>tt(s));t.push(...b(i),...a)}if(je.includes(r.type)&&r.type!==n.Condition){const i=r==null?void 0:r.outputs.map(o=>wi(o)).flat(),a=r.successCalls.map(o=>tt(o)),s=r.errorCalls.map(o=>tt(o));t.push(...b(i),...a,...s)}if($e.includes(r.type)){const i=wi(r),a=bA(r);t.push(...i,...a)}if(r.type===n.Loop){const i=r.outputs.map(o=>wi(o)).flat();if(r.body){const o=Xn(r.body,e);t.push(...o)}const a=r.errorCalls.map(o=>tt(o)),s=r.successCalls.map(o=>tt(o));t.push(...b(i),...s,...a)}if(r.type===n.FunctionDeclaration){if(r.collapsed&&e)return[];const i=r.inputs.map(s=>wi(s)).flat(),a=r.calls.map(s=>tt(s));t.push(...b(i),...a)}return b(t)}function RA(r,e=!1){const t=Xn(r,e),i=[...t,...t.reduce((a,s)=>[...a,...RA(s,e)],[])];return b(i)}function vA(r){const e=jr(r),t=[...e,...e.reduce((i,a)=>[...i,...vA(a)],[])];return b(t)}function ko(r){return r.implements.reduce((e,t)=>t.type===n.CustomEntity?[...e,n.CustomEntity,...ko(t),...qo(t)]:[...e,t.name],[])}function qo(r){return r.extends.reduce((e,t)=>t.type===n.CustomEntity?[...e,n.CustomEntity,...qo(t),...ko(t)]:[...e,t.name],[])}function Vu(r){return r.extends.reduce((e,t)=>t.type===n.CustomEntity?[...e,t,...Vu(t),...Lu(t)]:[...e,t],[])}function Lu(r){return r.implements.reduce((e,t)=>t.type===n.CustomEntity?[...e,t,...Lu(t),...Vu(t)]:[...e,t],[])}function gA(r){return[...qo(r),...ko(r)].filter((t,i,a)=>a.indexOf(t)===i)}function IA(r){return r.implements.length===0&&r.extends.length===0?null:r.implements.find(i=>i.type===n.BuiltInBaseEntity&&i.name===L.PERSISTED_ENTITY)?r:[...r.implements,...r.extends].reduce((i,a)=>{if(a.type===n.CustomEntity){const s=IA(a);if(s)return s}return i},null)}function h7(r){const e=r.extends.find(t=>t.type===n.BuiltInBaseEntity);return e&&e.type===n.BuiltInBaseEntity?e:null}function f7(r){const e=r.implements.find(t=>t.type===n.BuiltInBaseEntity);return e&&e.type===n.BuiltInBaseEntity?e:null}function DA(r){const e=r.extends.find(t=>t.type===n.CustomEntity);return e&&e.type===n.CustomEntity?e:null}function Qn(r){const e=[...r.implements,...r.extends].reduce((t,i)=>i.type===n.BuiltInBaseEntity?[...t,i]:i.type===n.CustomEntity?[...t,...Qn(i)]:t,[]);return b(e)}function Gu(r){return r.type===n.PrimitiveEntity?!0:r.type===n.BuiltInBaseEntity?r.interactive:!Qn(r).find(i=>!i.interactive)}function m7(r){return r.parent===r.project&&r.project.variableDeclarations.includes(r)}function $u(r){return r.parent!==r.project?!1:n.VariableDeclaration===r.type?r.project.variableDeclarations.includes(r):n.VariableInstance===r.type?r.project.variableInstances.includes(r):n.FunctionCall===r.type?r.project.functionCalls.includes(r):n.Condition===r.type?r.project.conditions.includes(r):n.Operation===r.type?r.project.operations.includes(r):n.Loop===r.type?r.project.loops.includes(r):n.Search===r.type?r.project.searches.includes(r):!1}function PA(r){if([...Fe,n.CustomEntity,n.InstalledProject,n.Project].includes(r.type)||$u(r))return!1;const e=jr(r);return e.length===0?!0:e.some(t=>PA(t))}function Fu(r){return[...Fe,n.CustomEntity,n.InstalledProject,n.Project].includes(r.type)||$u(r)?!1:jr(r).length===0}function AA(r,e=0){if(Fu(r)){const t=jr(r);return t.length===0?r:t.map(a=>AA(a,e+1)).reduce((a,s)=>a?s&&s.x<a.x?s:a:s,null)}return null}function OA(r){const e=[];if(Fu(r))e.push(r);else return[];return jr(r).forEach(i=>{e.push(...OA(i))}),e}function SA(r){return r.type===n.FunctionDeclaration&&r.parent!==r.project&&!![n.CustomEntity,n.Loop,n.InstalledProject].includes(r.parent.type)}function T7(r,e){const t=new Map;return r.forEach(i=>{t.set(i.id,i)}),e.forEach(i=>{t.set(i.id,i)}),Array.from(t.values())}function Jo(r){switch(r){case n.CustomEntity:return kr;case n.FunctionDeclaration:return Br;case n.VariableDeclaration:return Mr;case n.VariableInstance:return Vr;case n.FunctionCall:return xr;case n.Operation:return wr;case n.Condition:return Nr;case n.ReturnStatement:return Fr;case n.Loop:return _r;case n.Search:return Lr;case n.InputMap:return On;case n.OutputMap:return Sn;case n.ArgumentDeclaration:return $r;case n.ReturnDeclaration:return _t;case n.Property:return Cr;case n.InstalledProject:return Gr;case n.Project:return _;case n.BuiltInBaseEntity:return xt;default:return null}}function vt(r,e){if(ut.includes(r.type))return r;if(Yr.includes(r.type))return null;const t=r.parent;if(!t)return null;if(t.type===n.GenericReference){const i=N(t);if(!i)return null;const a=e.get(i);return a?vt(a,e):null}else return t===e?e:vt(t,e)}function Uu(r,e){if(Yr.includes(r.type)||e.getBuiltIn(r.id))return null;const t=Nt(r.parent,e);return t?t===e?ut.includes(r.type)?r:null:t.type===n.CustomEntity?r:Uu(t,e):null}function Wo(r,e,t){if(r===e||e===t||r===t)return!1;const i=vt(e.parent,t);return i===r?!0:Wo(i,e,t)}var Ho=(r=>(r.SameBothLocal="same-both-local",r.AInB="a-in-b",r.BInA="b-in-a",r.ParallelInCommonParent="parallel-in-common-parent",r.ParallelInProject="parallel-in-project",r.AIsGlobalBIsNot="a-is-global-b-is-not",r.BIsGlobalAIsNot="b-is-global-a-is-not",r.SameBothGlobal="same-both-global",r))(Ho||{});function xa(r,e,t){const i=vt(r,t),a=vt(e,t);if(!i)throw new Error("Could not find scope owner for the entity: "+r.id);if(!a)throw new Error("Could not find scope owner for the entity: "+e.id);if(i===a&&i.type!==n.Project)return{compatible:!0,type:"same-both-local",commonAncestorScope:i};if(i===a&&i.type===n.Project)return{compatible:!0,type:"same-both-global",commonAncestorScope:i};if(i.type===n.Project&&a.type!==n.Project)return{compatible:!1,type:"a-is-global-b-is-not",commonAncestorScope:i};if(i.type!==n.Project&&a.type===n.Project)return{compatible:!1,type:"b-is-global-a-is-not",commonAncestorScope:a};if(Wo(i,a,t))return{compatible:!0,type:"b-in-a",commonAncestorScope:i};if(Wo(a,i,t))return{compatible:!0,type:"a-in-b",commonAncestorScope:a};const l=Bu(i,a);return l===t?{compatible:!1,type:"parallel-in-project",commonAncestorScope:l}:l?{compatible:!1,type:"parallel-in-common-parent",commonAncestorScope:vt(l,t)}:{compatible:!1,type:"parallel-in-project",commonAncestorScope:t}}function CA(r,e,t){const i=xa(r,e,t);if(!i.compatible||i.type!=="same-both-local")return null;if(r===e)return r;let a=vt(r.parent,t);if(a){if(a===e)return e;if(a.type===n.Project)return r}else return r;for(;a;){if(a){if(a===e)return e;if(a.type===n.Project)return r}else return r;a=vt(a.parent,t)}let s=vt(e.parent,t);if(s){if(s===r)return r;if(s.type===n.Project)return e}else return e;for(;s;){if(s){if(s===r)return r;if(s.type===n.Project)return e}else return e;s=vt(s.parent,t)}return null}function BA(r){return r.length===0?null:r.length===1?r[0]:r.reduce((t,i)=>{const a=CA(t,i,i.project);return!a||a===i?t:i},r[0])}function Nt(r,e){let t;return typeof r=="string"?t=r:r.type===n.GenericReference?t=N(r):t=r.id,t===e.id?e:e.get(t)}function er(r){if(!r)return null;if(Yr.includes(r.type))return r;if(r.type===n.Project)return null;if(r.project.getBuiltIn(r.id))return r;const e=r.parent;return!e||e.type===n.Project?null:er(e)}function ja(r,e){var t;if(r.readsValue){const i=Nt(r.readsValue,e.project);e.setValueWriter(i),i.addValueReader(e)}else r.readsValue===null&&((t=e.readsValue)==null||t.removeValueReader(e),e.readsValue=null);return e}function ka(r){const e=[];function t(s,o){return e.some(l=>l.blockedByCaller===s&&l.blockedByCalling===o)}function i(s,o){t(s,o)||e.push({blockedByCaller:s,blockedByCalling:o})}const a=Uu(r,r.project);return r.calledBySuccess.forEach(s=>{[...s.successCalls||[]].forEach(p=>{Ue.includes(p.type)&&p!==r&&(Ne(r).find(m=>m===p)||i(s,p))});let l;if(je.includes(s.type)&&(l=s),l){const p=ka(l);p.reachable||Ne(r).find(m=>m===s)||p.blocks.forEach(m=>{i(s,m.blockedByCalling)})}}),r.calledByError.forEach(s=>{[...s.errorCalls||[]].forEach(p=>{Ue.includes(p.type)&&p!==r&&(Ne(r).find(m=>m===p)||i(s,p))});let l;if(je.includes(s.type)&&(l=s),l){const p=ka(l);p.reachable||Ne(r).find(m=>m===s)||p.blocks.forEach(m=>{i(s,m.blockedByCalling)})}}),r.calledByEntry.forEach(s=>{if([...s.calls||[]].forEach(p=>{Ue.includes(p.type)&&p!==r&&(Ne(r).find(m=>m===p)||i(s,p))}),s===a)return;let l;if(s.type===n.FunctionDeclaration){const p=tt(s);if(p.type===n.CustomEntity)return;p.type===n.Loop&&(l=p)}if(l){const p=ka(l);p.reachable||p.blocks.forEach(y=>{i(s,y.blockedByCalling)})}}),{reachable:e.length===0,entryPoint:a,blocks:e}}function E7(r){return Xo.includes(r.type)?r.type===n.FunctionDeclaration?!SA(r):!0:!1}function b7(r){if(n.ActionDescriptor===r.type){if(r.project.operationDeclarations.find(s=>s.id===r.id))return n.Operation;if(r.project.globalEventActionDescriptors.find(s=>s.id===r.id))return n.GlobalEvent;if(r.project.loopDeclarations.find(s=>s.id===r.id))return n.Loop;if(r.project.conditionDeclarations.find(s=>s.id===r.id))return n.Condition}return r.type}function R7(r,e){const t=[];if(r.parent)if(r.id===r.parent)t.push(new E({id:`${r.id}--${r.parent}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'parent'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}));else{const i=e.get(r.parent);i?[n.Project,n.DataType].includes(i.type)||t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type 'project' or 'data-type'.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}return r.implements&&Array.isArray(r.implements)?r.implements.forEach(i=>{if(r.id===i){t.push(new E({id:`${r.id}--${i}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at one of the 'implements' references. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}));return}const a=e.get(i);a?[n.CustomEntity,n.BuiltInBaseEntity].includes(a.type)?a.abstract||t.push(new E({id:`${r.id}--${i}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an abstract entity.`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an entity of type 'custom-entity' or 'built-in-base-entity'.`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${i}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}):t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' property that isn't an array.`,issue:null})),r.extends&&Array.isArray(r.extends)&&r.extends.forEach(i=>{const a=e.get(i);a?[n.CustomEntity,n.BuiltInBaseEntity].includes(a.type)?a.abstract&&t.push(new E({id:`${r.id}--${i}--${f.InvalidExtendsReference}`,code:f.InvalidExtendsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'extends' reference that isn't pointing to a non-abstract entity. Did you want to use the property 'implements', which holds a list of references to absract entities, instead?`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.InvalidExtendsReference}`,code:f.InvalidExtendsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'extends' reference that isn't pointing to an entity of type 'custom-entity' or 'built-in-base-entity'.`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${i}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}),t}const _e=class _e{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"static");d(this,"abstract");d(this,"type",n.CustomEntity);d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"implements",[]);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestedProperties",[]);d(this,"suggestedMethods",[]);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=e.x,this.y=e.y,this.static=e.static,this.abstract=e.abstract}static fromGenerationTarget(e,t){let i=t;if(e.parent){const p=N(e.parent);i=t.get(p)}const a=[];e.implements&&e.implements.forEach(p=>{a.push(t.get(p)||t.getBuiltIn(p))});const s=[];e.extends&&e.extends.forEach(p=>{s.push(t.get(p)||t.getBuiltIn(p))});const o={id:e.id,version:1,name:e.name,type:n.CustomEntity,description:e.description,static:e.static,abstract:e.abstract,properties:[],methods:[],abstractMethods:[],extends:s,implements:a,x:0,y:0,parent:i},l=v(o,t);return l.setParent(i),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=R7(i,t),o=Bo(i,t);a.push(...s,...o,...Ve(i));const l=i.parent?t.get(i.parent):null;if(l&&l.type===n.DataType){const p=l;p.entity&&a.push(new E({id:`${e.id}--${f.NewEntityWouldOverriteExisting}`,code:f.NewEntityWouldOverriteExisting,severity:T.Error,message:`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${p.id}' because it already has an 'entity' child. Data type entities can only have one 'entity' as children.
368
+ You shouldn't have to manually update a 'parent' property. The equivalent result is to change its callers, the value writters of its inputs, or the value readers of its outputs.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){var a;const e=[this],t=[],i=[];return this.parent===this.project&&this.project.addFunctionCall(this),(a=this.process)==null||a.writesValues.forEach(s=>{s.setValueWriter(this.process),e.push(s)}),this.successCalls.forEach(s=>{s.addSuccessCaller(this),e.push(s)}),this.errorCalls.forEach(s=>{s.addErrorCaller(this),e.push(s)}),this.calledBySuccess.forEach(s=>{s.addSuccessCall(this),e.push(s)}),this.calledByError.forEach(s=>{s.addErrorCall(this),e.push(s)}),this.calledByEntry.forEach(s=>{s.addCall(this),e.push(s)}),{updated:b(e),added:b(t),removed:b(i),self:this}}get calledBy(){return[...this.calledByEntry,...this.calledBySuccess,...this.calledByError]}removeInput(e){const t=this.inputs.findIndex(i=>i.id===e.id);return t>-1&&this.inputs.splice(t,1),this}addInput(e){return this.inputs.includes(e)?this:(this.inputs.push(e),this)}addOutput(e){return this.outputs.includes(e)?this:(this.outputs.push(e),this)}removeOutput(e){const t=this.outputs.findIndex(i=>i.id===e.id);return t>-1&&this.outputs.splice(t,1),this}addValueReader(e){var t;return(t=this.process)==null||t.addValueReader(e),this}removeValueReader(e){var t;return(t=this.process)==null||t.removeValueReader(e),this}addSuccessCaller(e){return this.calledBySuccess.find(t=>t.id===e.id)||this.calledBySuccess.push(e),this}addErrorCaller(e){return this.calledByError.find(t=>t.id===e.id)||this.calledByError.push(e),this}addEntryCaller(e){return this.calledByEntry.find(t=>t.id===e.id)||this.calledByEntry.push(e),this}addErrorCall(e){return this.errorCalls.push(e),this}addSuccessCall(e){return this.successCalls.push(e),this}removeCall(e){const t=this.successCalls.findIndex(a=>a.id===e.id);t>-1&&this.successCalls.splice(t,1);const i=this.errorCalls.findIndex(a=>a.id===e.id);return i>-1&&this.errorCalls.splice(i,1),this}removeCaller(e){return this.calledBySuccess=this.calledBySuccess.filter(t=>t.id!==e.id),this.calledByError=this.calledByError.filter(t=>t.id!==e.id),this.calledByEntry=this.calledByEntry.filter(t=>t.id!==e.id),this}setParent(e){return this.parent=e,this}initChildren(){if(this.initialized)return this;if(this.initialized=!0,this.initialData.declaration.type===n.FunctionDeclaration){const e=v(this.initialData.declaration,this.project);this.declaration=e}else{const e=N(this.initialData.declaration),t=this.project.get(e);this.declaration=t}return this.successCalls=this.initialData.successCalls.map(e=>{const t=v(e,this.project);return t.addSuccessCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.errorCalls=this.initialData.errorCalls.map(e=>{const t=v(e,this.project);return t.addErrorCaller(this),[n.BreakStatement,n.ContinueStatement].includes(t.type)?(t.setParent(this.parent.parent),t.initChildren()):t.type!==n.InternalCall&&(t.setParent(this.parent),t.initChildren()),t}),this.inputs=this.initialData.inputs.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.initialData.process&&(this.process=v(this.initialData.process,this.project),this.process.setParent(this),this.process.initChildren()),this.initialData.error&&(this.error=v(this.initialData.error,this.project),this.error.setParent(this),this.error.initChildren()),this.syncMissingFixedInputs(),this.syncMissingFixedOutputs(),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){var s;const i=[],a=[];if(t.has(this.id))return{affected:[],removed:[]};if(t.add(this.id),a.push(this),this.unsubscribe(),this.process){const{affected:o,removed:l}=(s=this.process)==null?void 0:s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}if(this.inputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.outputs.forEach(o=>{const{affected:l,removed:p}=o.remove({ignoreUpstream:!0,seenEntities:t});i.push(...l),a.push(...p)}),this.error){const{affected:o,removed:l}=this.error.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}return this.successCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),this.errorCalls.forEach(o=>{i.push(o),o.removeCaller(this)}),e||this.calledBy.forEach(o=>{i.push(o),o.removeCall(this)}),{affected:b(i),removed:b(a)}}restore({seenEntities:e}={seenEntities:new Set}){const t=[];if(e.has(this.id))return{affected:[],self:this};if(e.add(this.id),this.subscribe(),this.process){const{affected:i}=this.process.restore({seenEntities:e});t.push(...i)}return this.inputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.outputs.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.successCalls.forEach(i=>{t.push(i),i.addSuccessCaller(this)}),this.errorCalls.forEach(i=>{t.push(i),i.addErrorCaller(this)}),this.calledBySuccess.forEach(i=>{t.push(i),i.addSuccessCall(this)}),this.calledByError.forEach(i=>{t.push(i),i.addErrorCall(this)}),this.calledByEntry.forEach(i=>{t.push(i),i.addCall(this)}),{affected:b(t),self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.successCalls.flatMap(i=>i.toFlat(e)),...this.errorCalls.flatMap(i=>i.toFlat(e)),...this.inputs.flatMap(i=>i.toFlat(e)),...this.outputs.flatMap(i=>i.toFlat(e)),...this.process?this.process.toFlat(e):[],...this.error?this.error.toFlat(e):[]])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.successCalls.flatMap(i=>i.toFlatIds(e)),...this.errorCalls.flatMap(i=>i.toFlatIds(e)),...this.inputs.flatMap(i=>i.toFlatIds(e)),...this.outputs.flatMap(i=>i.toFlatIds(e))])}toJSON(){var e,t;return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,successCalls:this.successCalls.map(i=>i.toJSON()),errorCalls:this.errorCalls.map(i=>i.toJSON()),calledBySuccess:this.calledBySuccess.map(i=>i.toReference()),calledByError:this.calledByError.map(i=>i.toReference()),calledByEntry:this.calledByEntry.map(i=>i.toReference()),process:(e=this.process)==null?void 0:e.toJSON(),declaration:this.declaration.toJSON(),inputs:this.inputs.map(i=>i.toJSON()),outputs:this.outputs.map(i=>i.toJSON()),parent:this.parent.toReference(),error:(t=this.error)==null?void 0:t.toJSON()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,x:this.x,y:this.y,process:this.process?this.process.toReference():null,inputs:this.inputs.map(e=>e.toReference()),outputs:this.outputs.map(e=>e.toReference()),declaration:this.declaration.toReference(),successCalls:this.successCalls.map(e=>e.toReference()),errorCalls:this.errorCalls.map(e=>e.toReference()),calledBySuccess:this.calledBySuccess.map(e=>e.toReference()),calledByError:this.calledByError.map(e=>e.toReference()),calledByEntry:this.calledByEntry.map(e=>e.toReference()),error:this.error?this.error.toReference():null,parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.successCalls.flatMap(i=>i.toFlatJSON(e)),...this.errorCalls.flatMap(i=>i.toFlatJSON(e)),...this.inputs.flatMap(i=>i.toFlatJSON(e)),...this.outputs.flatMap(i=>i.toFlatJSON(e)),...this.process?this.process.toFlatJSON(e):[],...this.error?this.error.toFlatJSON(e):[]])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,version:this.version,type:this.type,calledByEntry:this.calledByEntry.map(t=>t.id),calledBySuccess:this.calledBySuccess.map(t=>t.id),calledByError:this.calledByError.map(t=>t.id),declaration:this.declaration.id,parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.successCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.errorCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.inputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.outputs.flatMap(i=>i.toFlatGenerationTarget(e)),...this.process?this.process.toFlatGenerationTarget(e):[],...this.error?this.error.toFlatGenerationTarget(e):[]])}clearErrors(){var e,t;return this.errors=[],this.inputs.forEach(i=>i.clearErrors()),this.outputs.forEach(i=>i.clearErrors()),this.successCalls.forEach(i=>i.clearErrors()),this.errorCalls.forEach(i=>i.clearErrors()),(e=this.process)==null||e.clearErrors(),(t=this.error)==null||t.clearErrors(),this}validate(){const e=e7(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.inputs.flatMap(t=>t.getErrors()),...this.outputs.flatMap(t=>t.getErrors()),...this.error?this.error.getErrors():[],...this.process?this.process.getErrors():[]]}getShallowErrors(){return this.errors}clone(e){return new we(this.toJSON(),this.project)}removeUnrecognizedInputs(){const e=[],t=[],i=[];return this.inputs.forEach(a=>{if(!this.declaration.inputs.find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}removeUnrecognizedOutputs(){const e=[],t=[],i=[];return this.outputs.forEach(a=>{if(!this.declaration.getUniqueReturnDeclarations().find(o=>o.id===a.declaration.id)){const o=a.remove();i.push(...o.removed),e.push(...o.affected)}}),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedInputs(){const e=[],t=[],i=[],a=this.declaration.inputs.filter(p=>!this.inputs.find(y=>y.declaration.id===p.id));this.inputs.sort((p,y)=>p.index-y.index),a.forEach(p=>{this.inputs.forEach(m=>{m.index>=p.index&&m.sync({index:m.index+1})});const y={id:_.UUID.uuid(),version:1,type:n.InputMap,declaration:p.toJSON(),readsValue:null,defaultValue:null,index:p.index,name:null,description:null,parent:this.toReference()},h=v(y,this.project);h.setParent(this),h.initChildren(),h.addSelfToProject(),t.push(h)}),this.inputs.sort((p,y)=>p.index-y.index);const{updated:s,added:o,removed:l}=this.removeUnrecognizedInputs();return e.push(...s),t.push(...o),i.push(...l),{updated:b(e),added:b(t),removed:b(i),self:this}}syncMissingFixedOutputs(){const e=[],t=[],i=[],a=[];this.outputs=this.initialData.outputs.map(y=>{const h=v(y,this.project);return a.push(h.index),h.setParent(this),h.initChildren(),h});const s=this.declaration.getUniqueReturnDeclarations().filter(y=>!this.outputs.find(h=>h.declaration.id===y.id));this.outputs.sort((y,h)=>y.index-h.index),s.forEach((y,h)=>{this.outputs.forEach(D=>{D.index>=y.index&&D.index++});const m=a.includes(y.index)?this.outputs.length-1+h:y.index,R={id:_.UUID.uuid(),version:1,type:n.OutputMap,declaration:y.toJSON(),writesValues:[],index:m,parent:this.toReference()},g=v(R,this.project);g.setParent(this),g.initChildren(),g.addSelfToProject()}),this.outputs.sort((y,h)=>y.index-h.index);const{updated:o,added:l,removed:p}=this.removeUnrecognizedOutputs();return e.push(...o),t.push(...l),i.push(...p),{updated:b(e),added:b(t),removed:b(i),self:this}}};d(we,"MUTABLE_BASE_PROPERTIES",[]),d(we,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(we,"BASE_PROPERTIES",[...we.MUTABLE_BASE_PROPERTIES,...we.INMUTABLE_BASE_PROPERTIES]),d(we,"MUTABLE_META_PROPERTIES",["x","y"]),d(we,"INMUTABLE_META_PROPERTIES",[...we.INMUTABLE_BASE_PROPERTIES]),d(we,"META_PROPERTIES",[...we.MUTABLE_META_PROPERTIES,...we.INMUTABLE_META_PROPERTIES]),d(we,"MUTABLE_UPSTREAM_PROPERTIES",["calledBySuccess","calledByError","calledByEntry"]),d(we,"INMUTABLE_UPSTREAM_PROPERTIES",["declaration","parent"]),d(we,"UPSTREAM_PROPERTIES",[...we.MUTABLE_UPSTREAM_PROPERTIES,...we.INMUTABLE_UPSTREAM_PROPERTIES]),d(we,"MUTABLE_DOWNSTREAM_PROPERTIES",["successCalls","errorCalls","writesValues","inputs","outputs","error"]),d(we,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(we,"DOWNSTREAM_PROPERTIES",[...we.MUTABLE_DOWNSTREAM_PROPERTIES,...we.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(we,"PROPERTIES",[...we.META_PROPERTIES,...we.UPSTREAM_PROPERTIES,...we.DOWNSTREAM_PROPERTIES]);let xr=we;function nA(r){var e,t,i;switch(r.id){case B["built-in-base-entity"].BUILT_IN_PERSISTED_ENTITY_ENTITY.id:{const a=r.project.entities.filter(h=>!!h.implements.find(m=>m.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.id));if(a.find(h=>!!h.properties.find(m=>{var R;return m.implements&&m.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id&&((R=m.getDefaultValue())==null?void 0:R.value)===!0}))){const m=a[0].properties.find(g=>g.implements&&g.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id),R=(e=m==null?void 0:m.dataType)==null?void 0:e.defaultValue;if(R)R.value=!0;else if(m!=null&&m.dataType){const g=(t=m==null?void 0:m.dataType)==null?void 0:t.id.split("-id")[0],D=v({id:g+"-default-value-id",version:1,type:n.PrimitiveValue,name:P.EntityTemplate,autogeneration:null,value:!0,valueAsType:null,parent:m==null?void 0:m.dataType.toReference()},r.project);return D.setParent(m==null?void 0:m.dataType),D.initChildren(),D.addSelfToProject(),{newEntities:[D]}}return{newEntities:[]}}const o=r.project.get(B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.id),l=Fo(o,"Main database");if(l.errors.length>0)return{newEntities:[]};const p=l.implemented.properties.find(h=>h.implements&&h.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id),y=(i=p==null?void 0:p.dataType)==null?void 0:i.defaultValue;if(y)y.value=!0;else if(p!=null&&p.dataType){const h=p==null?void 0:p.dataType.id.split("-id")[0],m=v({id:h+"-default-value-id",version:1,type:n.PrimitiveValue,name:P.EntityTemplate,autogeneration:null,value:!0,valueAsType:null,parent:p==null?void 0:p.dataType.toReference()},r.project);m.setParent(p==null?void 0:p.dataType),m.initChildren(),m.addSelfToProject()}return{newEntities:[l.implemented]}}}return{newEntities:[]}}function rA(r){return r.implements.filter(t=>t.type===n.BuiltInBaseEntity).map(t=>{var i;switch(t.id){case B["built-in-base-entity"].BUILT_IN_PERSISTED_ENTITY_ENTITY.id:{const s=r.project.entities.filter(p=>p.implements.find(y=>y.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.id)).find(p=>!!p.properties.find(y=>{var h;return y.implements&&y.implements.id===B["built-in-base-entity"].BUILT_IN_RELATIONAL_DATABASE_ENTITY.properties.default.id&&((h=y.getDefaultValue())==null?void 0:h.value)===!0}));if(!s)return{newEntities:[]};const o=r.properties.find(p=>p.implements&&p.implements.id===B["built-in-base-entity"].BUILT_IN_PERSISTED_ENTITY_ENTITY.properties.database.id),l=(i=o==null?void 0:o.dataType)==null?void 0:i.defaultValue;if(o&&(o!=null&&o.dataType)&&!l){const p=o==null?void 0:o.dataType.id.split("-id")[0],y=v({id:p+"-default-value-id",version:1,type:n.PrimitiveValue,name:P.EntityTemplate,autogeneration:null,value:null,valueAsType:s,parent:o==null?void 0:o.dataType.toReference()},r.project);return y.setParent(o==null?void 0:o.dataType),y.initChildren(),y.addSelfToProject(),{newEntities:[y]}}return{newEntities:[]}}}}),{newEntities:[]}}function Fo(r,e,t){const i=t||Ze(e,n.CustomEntity,r.project),a=i.split("-id"),s=a[a.length-1||0]||i,o={id:i,version:1,name:e,type:n.CustomEntity,description:null,static:!1,abstract:!1,properties:[],methods:[],abstractMethods:[],extends:[],implements:[r],x:0,y:0,parent:r.project},l=Bo(o,r.project);if(l.length>0)return{errors:l,implemented:null,entitiesChanges:{new:[],updated:[],deleted:[]}};const p=nA(r),y=v(o,r.project);y.setParent(r.project),y.initChildren();const h=r.properties.map(g=>{const D=s+"-"+Ze(C(g,r.project),n.Property,r.project),A=g.clone(y,D);return A.abstract=!1,A.implements=g,A.setParent(y),y.addProperty(A),A}),m=r.abstractMethods.map(g=>{const D=s+Ze(g.name,n.FunctionDeclaration,r.project),A=g.implementAsFunctionDeclaration(D),I={id:D+"-parent-ref-id",type:n.GenericReference,entityId:i,entityType:n.CustomEntity},F={...A,implements:g,parent:I},k=v(F,r.project);return y.addMethod(k),k.setParent(y),k.initChildren(),k.implements=g,k});o.properties=h,o.methods=m;const R=rA(y);return{implemented:y,errors:[],entitiesChanges:{new:[y,...p.newEntities,...R.newEntities],updated:[y],deleted:[]}}}function Su(r,e){return e.entities.find(a=>{const s=a.properties,o=s.map(m=>m.name),l=r.every(m=>o.includes(m)),p=o.filter(m=>!r.includes(m)),y=s.every(m=>!p.includes(m.name)||!m.required);return l&&y})||null}function iA(r,e,t=Ke.OrDataTypeGroup){const i=[],a=[],s=[],l={id:e.id+"--nested-data-type-id-"+r.id,version:1,type:n.DataType,entity:r.toJSON(),isList:!1,isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parentRelationType:t,parent:e.toReference()},p=v(l,r.project);return a.push(p),p.setParent(e),p.initChildren(),p.setEntity(r),p.addSelfToProject(),{updated:b(i),added:b(a),removed:b(s),self:p}}function Cu(r,e,t,i){const a=[],s=[],o=[];switch(typeof r){case"string":let l=!1;const p=new Date(r);if(p instanceof Date&&!isNaN(p.valueOf())&&(l=!0),l){const y=e.project.getBuiltIn(B[n.PrimitiveEntity][P.Date].id);e.setEntity(y);break}else{const y=e.project.getBuiltIn(B[n.PrimitiveEntity][P.String].id);e.setEntity(y);break}case"number":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Number].id));break;case"boolean":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Boolean].id));break;case"object":if(r===null){e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Null].id));break}else if(Array.isArray(r))if(e.sync({isList:!0}),r.length>0){const y=r.slice(0,5).filter(m=>m!==void 0);if(y.every(m=>typeof m==typeof y[0])&&(typeof y[0]!="object"||y[0]===null))switch(typeof y[0]){case"string":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.String].id));break;case"number":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Number].id));break;case"boolean":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Boolean].id));break;case"object":e.setEntity(e.project.getBuiltIn(B[n.PrimitiveEntity][P.Null].id));break}else{const m=[];let R=!1;y.forEach((D,A)=>{if(Array.isArray(D)&&(R=!0),typeof D=="object"&&!Array.isArray(D)&&D!==null){const I=Uo(D,e.project,{...t,id:e.id+"--or-child-data-type-entity-id-"+A},i);I.hasCreated&&m.push(I.changeSet.self),a.push(...I.changeSet.updated),s.push(...I.changeSet.added),o.push(...I.changeSet.removed)}});const g=b(m);if(!g.length&&!R){y.forEach(D=>{const A={id:_.UUID.uuid(),version:1,type:n.DataType,entity:null,isList:!1,isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parentRelationType:Ke.OrDataTypeGroup,parent:e.toReference()},I=v(A,e.project);switch(I.setParent(e),I.initChildren(),I.addSelfToProject(),typeof D){case"string":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.String].id));break;case"number":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.Number].id));break;case"boolean":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.Boolean].id));break;case"object":I.setEntity(I.project.getBuiltIn(B[n.PrimitiveEntity][P.Null].id));break}});break}else g.length===1&&!R?e.setEntity(g[0]):y.forEach((D,A)=>{if(typeof D=="object"&&!Array.isArray(D)&&D!==null){const I=Su(Object.keys(D),e.project);if(I){const F=iA(I||g[0],e,Ke.OrDataTypeGroup);a.push(...F.updated),s.push(...F.added),o.push(...F.removed)}}else{const I={id:e.id+"--or-child-data-type-id--"+A,version:1,type:n.DataType,entity:null,isList:Array.isArray(D),isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parentRelationType:Ke.OrDataTypeGroup,parent:e.toReference()},F=v(I,e.project);F.setParent(e),F.initChildren(),F.addSelfToProject();const k=Cu(D,F,{...t,id:e.id+"--or-child-data-type-entity-id-"+A},i);a.push(...k.updated),s.push(...k.added),o.push(...k.removed)}})}}else{const y=Uo(r[0],e.project,{...t},i);e.setEntity(y.changeSet.self),a.push(...y.changeSet.updated),s.push(...y.changeSet.added),o.push(...y.changeSet.removed);break}else{const y=Uo(r,e.project,{...t},i);e.setEntity(y.changeSet.self),a.push(...y.changeSet.updated),s.push(...y.changeSet.added),o.push(...y.changeSet.removed);break}}return{updated:b(a),added:b(s),removed:b(o),self:e}}function Uo(r,e,t,i){const a=[],s=[],o=[],l=Object.keys(r),p=Su(l,e);if(p)return{hasCreated:!1,changeSet:{updated:[],added:[],removed:[],self:p}};const y=i?t.name+" of "+i.name:t.name,m={id:t.id||Ze(y,n.CustomEntity,e),version:1,name:y,type:n.CustomEntity,description:t.description||null,static:t.static||!1,abstract:t.abstract||!1,properties:[],methods:[],abstractMethods:[],extends:[],implements:[],x:0,y:0,parent:e.toReference()},R=v(m,e);return R.setParent(e),R.initChildren(),R.addSelfToProject(),s.push(R),l.forEach((g,D)=>{const A=Ze(y+" "+g,n.Property,e),I={id:A,version:1,name:g,type:n.Property,description:null,static:!1,abstract:!1,dataType:null,implements:null,index:D,hidden:!1,private:!1,required:!0,parent:R.toReference()},F=v(I,e);F.setParent(R),F.initChildren(),F.addSelfToProject(),s.push(F);const k=r[g],fe={id:A+"--data-type-id",version:1,type:n.DataType,entity:null,isList:!1,isNullable:!1,defaultValue:null,asType:null,andChildrenGroup:null,orChildrenGroup:null,like:!0,inferred:!1,constant:!1,parent:F.toReference()},ae=v(fe,e);ae.setParent(F),ae.initChildren(),ae.addSelfToProject(),s.push(ae);const Je=Cu(k,ae,{...t,name:g,id:A+"--data-type-entity-id"},i||R);a.push(...Je.updated),s.push(...Je.added),o.push(...Je.removed)}),{hasCreated:!0,changeSet:{updated:b(a),added:b(s),removed:b(o),self:R}}}function xo(r,e){const t=jr(r);if(t.length===0)return{list:[],last:null};let i=null;return{list:t.flatMap(s=>{if(s===e)return i=s,[s];const o=xo(s,e);return o.last&&(i=o.last),[s,...o.list]}),last:i}}function aA(r,e,t=new Set){const i=Xn(r),a=Xn(e),s=i.filter(p=>!a.includes(p)),o=i.filter(p=>a.includes(p)),l=s.reduce((p,y)=>t.has(y.id)?p:(t.add(y.id),b([...p,...aA(y,e,t)])),[]);return b([...o,...l])}function Ua(r,e){const t=xo(r,e);return t.last===e&&t.list.length>0&&t.list[0]!==e}function t7(r,e){return!!xo(r,e).last}function n7(r){if(Ue.includes(r.type))return r;if([...wn,n.VariableDeclaration].includes(r.type)){const e=r.parent;return Ue.includes(e.type)?e:null}return null}function Bu(r,e){if(!r||!e)throw new Error("Both entities must be defined to find a common ancestor");if(r===e)return r;const t=r.parent;if(t){if(t===e)return e;if(t.type===n.Project)return null}else return null;const i=e.parent;if(i){if(i===r)return r;if(i.type===n.Project)return null}else return null;return Bu(t,i)}function tt(r){if(Xo.includes(r.type)){if(r.type===n.FunctionDeclaration){const e=r.parent;if(e.type===n.CustomEntity)return e;if(e.type===n.Loop)return e}return r}else{const e=r.parent;return e?tt(e):null}}function r7(r){return r.type===n.VariableDeclaration?[r]:je.includes(r.type)?[...r.inputs,...r.outputs||[]]:Ve.includes(r.type)?r.outputs:Hr.includes(r.type)||r.type===n.FunctionDeclaration?r.inputs:[]}function i7(r){const e=Xn(r),t=[],i=[];ju.includes(r.type)&&t.push(...wu(r));const a=e.filter(s=>{const o=t.includes(s);return o?!1:wn.includes(s.type)&&!o?(i.push(s),!1):!0});return t.sort((s,o)=>Ua(o,s)?-1:0),i.sort((s,o)=>Ua(o,s)?-1:0),[...t,...i,...a]}function sA(r){return[...r].sort((e,t)=>Ua(t,e)?-1:0)}function a7(r){const e=sA(r),t=[];return e.forEach(i=>{const a=t[t.length-1];if(a){const s=a[a.length-1];Ua(i,s)?t.push([i]):a.push(i)}else t.push([i])}),t}function Rt(r){const e=r.map(t=>tt(t));return b(e)}function wu(r){return je.includes(r.type)?[...Rt(r.successCalls),...Rt(r.errorCalls)]:Ue.includes(r.type)?Rt(r.calls):[]}function s7(r,e){return wu(r).includes(e)}function _u(r){return r.writesValues||[]}function o7(r,e){return _u(r).includes(e)}function oA(r){var e;return Fe.includes((e=r==null?void 0:r.readsValue)==null?void 0:e.type)?r.readsValue:null}function l7(r){return r.writesValues}function lA(r=[]){return r.map(oA).filter(e=>!!e)}function jo(r=[]){return r.map(e=>e.writesValues).flat().filter(e=>Fe.includes(e.type))}function cA(r=[]){return r.map(e=>e.readsValue).filter(e=>!!e&&Fe.includes(e.type))}function dA(r){return Fe.includes(r.type)?r:null}function uA(r){return r.writesValues.map(dA).filter(e=>!!e)}function pA(r=[]){return r.reduce((e,t)=>t.type===n.OutputMap?[...e,...uA(t)]:e,[])}function Ne(r){return je.includes(r.type)?[...cn(Rt(r.successCalls)),...cn(Rt(r.errorCalls))]:Ue.includes(r.type)?cn(Rt(r.calls)):[]}function c7(r){return je.includes(r.type)?[...cn(Rt(r.successCalls)),...cn(Rt(r.errorCalls))]:Ue.includes(r.type)?cn(Rt(r.calls)):[]}function yA(r,e=new Set){return r.writesValues.filter(i=>Fe.includes(i.type)&&!e.has(i.id)).reduce((i,a)=>e.has(a.id)?i:[...i,...re(a,e)],[])}function hA(r,e=new Set){var i;return(((i=r.readsValue)==null?void 0:i.writesValues)||[]).filter(a=>Fe.includes(a.type)&&!e.has(a.id)).reduce((a,s)=>e.has(s.id)?a:[...a,...re(s,e)],[])}function re(r,e=new Set){if(e.has(r.id))return[];if(r.type===n.ReturnStatement)return cA(r.outputs).reduce((i,a)=>[...i,...re(a,e)],[]);if(r.type===n.FunctionCall||r.type===n.Operation||r.type===n.Condition)return[...Ne(r).reduce((s,o)=>{const l=tt(o);return[...s,...re(l||o,e)]},[]),...lA(r.inputs),...pA(r.outputs)].reduce((s,o)=>[...s,...re(o,e)],[]);if(Hr.includes(r.type)){const t=jo(r.inputs),a=Ne(r).reduce((s,o)=>{const l=tt(o);return[...s,...re(l||o,e)]},[]);return t.push(...a),t.reduce((s,o)=>[...s,...re(o,e)],[])}if(r.type===n.FunctionDeclaration){const t=[...jo(r.inputs)],a=Ne(r).reduce((s,o)=>{const l=tt(o);return[...s,...re(l||o,e)]},[]);return t.push(...a),t.reduce((s,o)=>[...s,...re(o)],[])}if(Fe.includes(r.type)){e.add(r.id);const i=Ne(r).reduce((a,s)=>{const o=tt(s);return[...a,...re(o||s,e)]},[]);return[r,...i,...hA(r,e),...yA(r,e)]}return[]}function St(r,e=new Set){return e.has(r.id)?[]:(e.add(r.id),[...Xn(r).reduce((a,s)=>[...a,s,...St(s,e)],[])])}function cn(r){return r.reduce((e,t)=>t.type===n.ReturnStatement||t.type===n.ContinueStatement||t.type===n.BreakStatement?[...e,t]:[...e,t,...Ne(t)],[])}function fA(r){const e=r.entities||[],t=[...e,...r.functions||[],...r.events||[],...r.projects||[]],i=e.reduce((p,y)=>[...p,...y.properties],[]),a=e.reduce((p,y)=>[...p,...y.methods],[]),s=a.reduce((p,y)=>[...p,...jo(y.inputs),...cn(Rt(y.calls)),...y.returnStatements],[]),o=r.functions.reduce((p,y)=>[...p,...cn(Rt(y.calls)),...y.returnStatements],[]),l=r.events.reduce((p,y)=>[...p,...cn(Rt(y.calls)),...y.returnStatements],[]);return[...t,...i,...a,...s,...o,...l]}function mA(r,e){return e.filter(i=>{if(!i)return!1;switch(i.type){case n.FunctionCall:return i.inputs.find(a=>a.id===r.id)!==void 0||i.outputs.find(a=>a.id===r.id)!==void 0;case n.Condition:return i.successCalls.find(a=>a.id===r.id)!==void 0||i.errorCalls.find(a=>a.id===r.id)!==void 0||i.inputs.find(a=>a.id===r.id)!==void 0;case n.Operation:return i.outputs.find(a=>a.id===r.id)!==void 0;case n.VariableDeclaration:return je.includes(r.type)?TA(r).find(s=>{var o;return((o=s.readsValue)==null?void 0:o.id)===i.id})!==void 0:!1;case n.CustomEntity:return i.properties.find(a=>a.id===r.id)!==void 0||i.methods.find(a=>a.id===r.id)!==void 0;case n.FunctionDeclaration:return i.inputs.find(a=>a.id===r.id)!==void 0||(i.returnStatements.map(a=>a.outputs).flat()||[]).find(a=>a.id===r.id)!==void 0;default:return!1}})}function d7(r){const e=fA(r.project);return mA(r,e)}function jr(r){const e=[];if(wn.includes(r.type)){r.calledBy.forEach(a=>{const s=tt(a);s&&e.push(s)});const i=[...r.inputs||[],...r.outputs||[]].map(a=>Mu(a)).filter(a=>a!==null);e.push(...b(i))}if(Fe.includes(r.type)){const t=Mu(r);t&&e.push(t)}return b(e)}function Nu(r){return r.type===n.FunctionCall||r.type===n.InternalCall||[n.Operation,n.Condition,n.Loop].includes(r.type)?r.declaration.inputs:r.type===n.FunctionDeclaration||Hr.includes(r.type)?r.inputs:r.type===n.Search?r.inputsDeclarations:[]}function u7(r,e){return e.type===n.Condition?e.inputs.find(t=>t.declaration.id===r.id):e.type===n.FunctionCall||e.type===n.Operation?e.inputs.find(t=>t.declaration.id===r.id):null}function TA(r){return je.includes(r.type)?r.inputs:[]}function EA(r){var e;return r.type===n.FunctionCall?((e=r.declaration.returnStatements[0])==null?void 0:e.outputs)||[]:[n.Operation,n.Condition,n.Loop].includes(r.type)?r.declaration.outputs:r.type===n.Search?r.outputsDeclarations:Ve.includes(r.type)?r.outputs:[]}function p7(r,e){return e.type===n.Condition?null:e.type===n.FunctionCall||e.type===n.Operation?e.outputs.find(t=>t.declaration.id===r.id):null}function y7(r){return r.type===n.Condition?[]:je.includes(r.type)?r.outputs:[]}function Mu(r){const e=r.readsValue;return e?tt(e):null}function bA(r){const e=r.internalCalls||[];return b(Rt(b(e.flatMap(t=>[...t.successCalls,...t.errorCalls]))))}function wi(r){const e=_u(r),t=[];return e.forEach(i=>{if(Fe.includes(i.type))t.push(i);else if(Bn.includes(i.type)){const a=i.parent;t.push(a)}}),t}function b(r){const e=new Set;return r.filter(t=>!t||e.has(t.id)?!1:(e.add(t.id),!0))}function Xn(r,e=!1){const t=[];if(r.type===n.Project&&t.push(...(r==null?void 0:r.entities)||[],...(r==null?void 0:r.functions)||[],...(r==null?void 0:r.variableDeclarations)||[],...(r==null?void 0:r.variableInstances)||[],...(r==null?void 0:r.searches)||[],...(r==null?void 0:r.loops)||[],...(r==null?void 0:r.operations)||[],...(r==null?void 0:r.conditions)||[],...(r==null?void 0:r.functionCalls)||[],...(r==null?void 0:r.events)||[],...(r==null?void 0:r.projects)||[]),ut.includes(r.type)&&t.push(...(r==null?void 0:r.detachedChildren)||[]),r.type===n.CustomEntity){const i=[...r.suggestedMethods,...r.methods].flatMap(a=>a.collapsed&&e?[]:Xn(a));t.push(...i)}if(r.type===n.Condition){const i=r.successCalls.map(s=>tt(s)),a=r.errorCalls.map(s=>tt(s));t.push(...i,...a)}if(Hr.includes(r.type)){if(r.collapsed&&e)return[];const i=r.inputs.map(s=>wi(s)).flat(),a=r.calls.map(s=>tt(s));t.push(...b(i),...a)}if(je.includes(r.type)&&r.type!==n.Condition&&r.type!==n.Loop){const i=r==null?void 0:r.outputs.map(o=>wi(o)).flat(),a=r.successCalls.map(o=>tt(o)),s=r.errorCalls.map(o=>tt(o));t.push(...b(i),...a,...s)}if(Fe.includes(r.type)){const i=wi(r),a=bA(r);t.push(...i,...a)}if(r.type===n.Loop){const i=r.outputs.map(o=>wi(o)).flat();if(r.body){const o=Xn(r.body,e);t.push(...o)}const a=r.errorCalls.map(o=>tt(o)),s=r.successCalls.map(o=>tt(o));t.push(...b(i),...s,...a)}if(r.type===n.FunctionDeclaration){if(r.collapsed&&e)return[];const i=r.inputs.map(s=>wi(s)).flat(),a=r.calls.map(s=>tt(s));t.push(...b(i),...a)}return b(t)}function RA(r,e=!1){const t=Xn(r,e),i=[...t,...t.reduce((a,s)=>[...a,...RA(s,e)],[])];return b(i)}function vA(r){const e=jr(r),t=[...e,...e.reduce((i,a)=>[...i,...vA(a)],[])];return b(t)}function ko(r){return r.implements.reduce((e,t)=>t.type===n.CustomEntity?[...e,n.CustomEntity,...ko(t),...qo(t)]:[...e,t.name],[])}function qo(r){return r.extends.reduce((e,t)=>t.type===n.CustomEntity?[...e,n.CustomEntity,...qo(t),...ko(t)]:[...e,t.name],[])}function Vu(r){return r.extends.reduce((e,t)=>t.type===n.CustomEntity?[...e,t,...Vu(t),...Lu(t)]:[...e,t],[])}function Lu(r){return r.implements.reduce((e,t)=>t.type===n.CustomEntity?[...e,t,...Lu(t),...Vu(t)]:[...e,t],[])}function gA(r){return[...qo(r),...ko(r)].filter((t,i,a)=>a.indexOf(t)===i)}function IA(r){return r.implements.length===0&&r.extends.length===0?null:r.implements.find(i=>i.type===n.BuiltInBaseEntity&&i.name===L.PERSISTED_ENTITY)?r:[...r.implements,...r.extends].reduce((i,a)=>{if(a.type===n.CustomEntity){const s=IA(a);if(s)return s}return i},null)}function h7(r){const e=r.extends.find(t=>t.type===n.BuiltInBaseEntity);return e&&e.type===n.BuiltInBaseEntity?e:null}function f7(r){const e=r.implements.find(t=>t.type===n.BuiltInBaseEntity);return e&&e.type===n.BuiltInBaseEntity?e:null}function DA(r){const e=r.extends.find(t=>t.type===n.CustomEntity);return e&&e.type===n.CustomEntity?e:null}function Qn(r){const e=[...r.implements,...r.extends].reduce((t,i)=>i.type===n.BuiltInBaseEntity?[...t,i]:i.type===n.CustomEntity?[...t,...Qn(i)]:t,[]);return b(e)}function Gu(r){return r.type===n.PrimitiveEntity?!0:r.type===n.BuiltInBaseEntity?r.interactive:!Qn(r).find(i=>!i.interactive)}function m7(r){return r.parent===r.project&&r.project.variableDeclarations.includes(r)}function $u(r){return r.parent!==r.project?!1:n.VariableDeclaration===r.type?r.project.variableDeclarations.includes(r):n.VariableInstance===r.type?r.project.variableInstances.includes(r):n.FunctionCall===r.type?r.project.functionCalls.includes(r):n.Condition===r.type?r.project.conditions.includes(r):n.Operation===r.type?r.project.operations.includes(r):n.Loop===r.type?r.project.loops.includes(r):n.Search===r.type?r.project.searches.includes(r):!1}function PA(r){if([...Ue,n.CustomEntity,n.InstalledProject,n.Project].includes(r.type)||$u(r))return!1;const e=jr(r);return e.length===0?!0:e.some(t=>PA(t))}function Fu(r){return[...Ue,n.CustomEntity,n.InstalledProject,n.Project].includes(r.type)||$u(r)?!1:jr(r).length===0}function AA(r,e=0){if(Fu(r)){const t=jr(r);return t.length===0?r:t.map(a=>AA(a,e+1)).reduce((a,s)=>a?s&&s.x<a.x?s:a:s,null)}return null}function OA(r){const e=[];if(Fu(r))e.push(r);else return[];return jr(r).forEach(i=>{e.push(...OA(i))}),e}function SA(r){return r.type===n.FunctionDeclaration&&r.parent!==r.project&&!![n.CustomEntity,n.Loop,n.InstalledProject].includes(r.parent.type)}function T7(r,e){const t=new Map;return r.forEach(i=>{t.set(i.id,i)}),e.forEach(i=>{t.set(i.id,i)}),Array.from(t.values())}function Jo(r){switch(r){case n.CustomEntity:return kr;case n.FunctionDeclaration:return Br;case n.VariableDeclaration:return Mr;case n.VariableInstance:return Vr;case n.FunctionCall:return xr;case n.Operation:return wr;case n.Condition:return Nr;case n.ReturnStatement:return Fr;case n.Loop:return _r;case n.Search:return Lr;case n.InputMap:return On;case n.OutputMap:return Sn;case n.ArgumentDeclaration:return $r;case n.ReturnDeclaration:return _t;case n.Property:return Cr;case n.InstalledProject:return Gr;case n.Project:return _;case n.BuiltInBaseEntity:return xt;default:return null}}function vt(r,e){if(ut.includes(r.type))return r;if(Yr.includes(r.type))return null;const t=r.parent;if(!t)return null;if(t.type===n.GenericReference){const i=N(t);if(!i)return null;const a=e.get(i);return a?vt(a,e):null}else return t===e?e:vt(t,e)}function Uu(r,e){if(Yr.includes(r.type)||e.getBuiltIn(r.id))return null;const t=Nt(r.parent,e);return t?t===e?ut.includes(r.type)?r:null:t.type===n.CustomEntity?r:Uu(t,e):null}function Wo(r,e,t){if(r===e||e===t||r===t)return!1;const i=vt(e.parent,t);return i===r?!0:Wo(i,e,t)}var Ho=(r=>(r.SameBothLocal="same-both-local",r.AInB="a-in-b",r.BInA="b-in-a",r.ParallelInCommonParent="parallel-in-common-parent",r.ParallelInProject="parallel-in-project",r.AIsGlobalBIsNot="a-is-global-b-is-not",r.BIsGlobalAIsNot="b-is-global-a-is-not",r.SameBothGlobal="same-both-global",r))(Ho||{});function xa(r,e,t){const i=vt(r,t),a=vt(e,t);if(!i)throw new Error("Could not find scope owner for the entity: "+r.id);if(!a)throw new Error("Could not find scope owner for the entity: "+e.id);if(i===a&&i.type!==n.Project)return{compatible:!0,type:"same-both-local",commonAncestorScope:i};if(i===a&&i.type===n.Project)return{compatible:!0,type:"same-both-global",commonAncestorScope:i};if(i.type===n.Project&&a.type!==n.Project)return{compatible:!1,type:"a-is-global-b-is-not",commonAncestorScope:i};if(i.type!==n.Project&&a.type===n.Project)return{compatible:!1,type:"b-is-global-a-is-not",commonAncestorScope:a};if(Wo(i,a,t))return{compatible:!0,type:"b-in-a",commonAncestorScope:i};if(Wo(a,i,t))return{compatible:!0,type:"a-in-b",commonAncestorScope:a};const l=Bu(i,a);return l===t?{compatible:!1,type:"parallel-in-project",commonAncestorScope:l}:l?{compatible:!1,type:"parallel-in-common-parent",commonAncestorScope:vt(l,t)}:{compatible:!1,type:"parallel-in-project",commonAncestorScope:t}}function CA(r,e,t){const i=xa(r,e,t);if(!i.compatible||i.type!=="same-both-local")return null;if(r===e)return r;let a=vt(r.parent,t);if(a){if(a===e)return e;if(a.type===n.Project)return r}else return r;for(;a;){if(a){if(a===e)return e;if(a.type===n.Project)return r}else return r;a=vt(a.parent,t)}let s=vt(e.parent,t);if(s){if(s===r)return r;if(s.type===n.Project)return e}else return e;for(;s;){if(s){if(s===r)return r;if(s.type===n.Project)return e}else return e;s=vt(s.parent,t)}return null}function BA(r){return r.length===0?null:r.length===1?r[0]:r.reduce((t,i)=>{const a=CA(t,i,i.project);return!a||a===i?t:i},r[0])}function Nt(r,e){let t;return typeof r=="string"?t=r:r.type===n.GenericReference?t=N(r):t=r.id,t===e.id?e:e.get(t)}function er(r){if(!r)return null;if(Yr.includes(r.type))return r;if(r.type===n.Project)return null;if(r.project.getBuiltIn(r.id))return r;const e=r.parent;return!e||e.type===n.Project?null:er(e)}function ja(r,e){var t;if(r.readsValue){const i=Nt(r.readsValue,e.project);e.setValueWriter(i),i.addValueReader(e)}else r.readsValue===null&&((t=e.readsValue)==null||t.removeValueReader(e),e.readsValue=null);return e}function ka(r){const e=[];function t(s,o){return e.some(l=>l.blockedByCaller===s&&l.blockedByCalling===o)}function i(s,o){t(s,o)||e.push({blockedByCaller:s,blockedByCalling:o})}const a=Uu(r,r.project);return r.calledBySuccess.forEach(s=>{[...s.successCalls||[]].forEach(p=>{Ve.includes(p.type)&&p!==r&&(Ne(r).find(m=>m===p)||i(s,p))});let l;if(je.includes(s.type)&&(l=s),l){const p=ka(l);p.reachable||Ne(r).find(m=>m===s)||p.blocks.forEach(m=>{i(s,m.blockedByCalling)})}}),r.calledByError.forEach(s=>{[...s.errorCalls||[]].forEach(p=>{Ve.includes(p.type)&&p!==r&&(Ne(r).find(m=>m===p)||i(s,p))});let l;if(je.includes(s.type)&&(l=s),l){const p=ka(l);p.reachable||Ne(r).find(m=>m===s)||p.blocks.forEach(m=>{i(s,m.blockedByCalling)})}}),r.calledByEntry.forEach(s=>{if([...s.calls||[]].forEach(p=>{Ve.includes(p.type)&&p!==r&&(Ne(r).find(m=>m===p)||i(s,p))}),s===a)return;let l;if(s.type===n.FunctionDeclaration){const p=tt(s);if(p.type===n.CustomEntity)return;p.type===n.Loop&&(l=p)}if(l){const p=ka(l);p.reachable||p.blocks.forEach(y=>{i(s,y.blockedByCalling)})}}),{reachable:e.length===0,entryPoint:a,blocks:e}}function E7(r){return Xo.includes(r.type)?r.type===n.FunctionDeclaration?!SA(r):!0:!1}function b7(r){if(n.ActionDescriptor===r.type){if(r.project.operationDeclarations.find(s=>s.id===r.id))return n.Operation;if(r.project.globalEventActionDescriptors.find(s=>s.id===r.id))return n.GlobalEvent;if(r.project.loopDeclarations.find(s=>s.id===r.id))return n.Loop;if(r.project.conditionDeclarations.find(s=>s.id===r.id))return n.Condition}return r.type}function R7(r,e){const t=[];if(r.parent)if(r.id===r.parent)t.push(new E({id:`${r.id}--${r.parent}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at 'parent'. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}));else{const i=e.get(r.parent);i?[n.Project,n.DataType].includes(i.type)||t.push(new E({id:`${r.id}--${r.parent}--${f.InvalidParentReference}`,code:f.InvalidParentReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a parent reference that isn't pointing to an entity of type 'project' or 'data-type'.`,issue:null})):t.push(new E({id:`${r.id}--${r.parent}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${r.parent}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}return r.implements&&Array.isArray(r.implements)?r.implements.forEach(i=>{if(r.id===i){t.push(new E({id:`${r.id}--${i}--${f.SelfReference}`,code:f.SelfReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has a reference to itself at one of the 'implements' references. This is not allowed. Change the reference string or the 'entityId' property of the reference object.`,issue:null}));return}const a=e.get(i);a?[n.CustomEntity,n.BuiltInBaseEntity].includes(a.type)?a.abstract||t.push(new E({id:`${r.id}--${i}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an abstract entity.`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.InvalidImplementsReference}`,code:f.InvalidImplementsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' reference that isn't pointing to an entity of type 'custom-entity' or 'built-in-base-entity'.`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${i}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}):t.push(new E({id:`${r.id}--${S.InvalidObjectStructure}`,code:S.InvalidObjectStructure,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'implements' property that isn't an array.`,issue:null})),r.extends&&Array.isArray(r.extends)&&r.extends.forEach(i=>{const a=e.get(i);a?[n.CustomEntity,n.BuiltInBaseEntity].includes(a.type)?a.abstract&&t.push(new E({id:`${r.id}--${i}--${f.InvalidExtendsReference}`,code:f.InvalidExtendsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'extends' reference that isn't pointing to a non-abstract entity. Did you want to use the property 'implements', which holds a list of references to absract entities, instead?`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.InvalidExtendsReference}`,code:f.InvalidExtendsReference,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", has an 'extends' reference that isn't pointing to an entity of type 'custom-entity' or 'built-in-base-entity'.`,issue:null})):t.push(new E({id:`${r.id}--${i}--${f.ReferencedEntityNotFound}`,code:f.ReferencedEntityNotFound,severity:T.Error,message:`Entity of type "${r.type}" with id "${r.id}", is referencing an entity with id "${i}" that isn't yet found in the project. Perhaps it should be created first. Or perhaps the ID is incorrect.`,issue:null}))}),t}const _e=class _e{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"x");d(this,"y");d(this,"static");d(this,"abstract");d(this,"type",n.CustomEntity);d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"implements",[]);d(this,"project");d(this,"errors",[]);d(this,"parent");d(this,"initialized",!1);d(this,"suggestedProperties",[]);d(this,"suggestedMethods",[]);this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=e.x,this.y=e.y,this.static=e.static,this.abstract=e.abstract}static fromGenerationTarget(e,t){let i=t;if(e.parent){const p=N(e.parent);i=t.get(p)}const a=[];e.implements&&e.implements.forEach(p=>{a.push(t.get(p)||t.getBuiltIn(p))});const s=[];e.extends&&e.extends.forEach(p=>{s.push(t.get(p)||t.getBuiltIn(p))});const o={id:e.id,version:1,name:e.name,type:n.CustomEntity,description:e.description,static:e.static,abstract:e.abstract,properties:[],methods:[],abstractMethods:[],extends:s,implements:a,x:0,y:0,parent:i},l=v(o,t);return l.setParent(i),l.initChildren(),l}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[],s=R7(i,t),o=Bo(i,t);a.push(...s,...o,...Le(i));const l=i.parent?t.get(i.parent):null;if(l&&l.type===n.DataType){const p=l;p.entity&&a.push(new E({id:`${e.id}--${f.NewEntityWouldOverriteExisting}`,code:f.NewEntityWouldOverriteExisting,severity:T.Error,message:`The entity of type '${e.type}' with id '${e.id}' can't be added to the 'parent' entity with id '${p.id}' because it already has an 'entity' child. Data type entities can only have one 'entity' as children.
369
369
  You can inspect the existing 'entity' field with the 'describe_entity' action. Like so:
370
370
  ${ln({describe_entity:p.entity.id})}
371
- Alternatively you can update the parent data-type entity with 'update' action to remove the existing value of the field.`,issue:null}))}return{errors:a,modifiedData:i}}get extendedProperties(){return b([...this.extends.reduce((e,t)=>[...[...t.properties,...t.extendedProperties].filter(a=>!a.abstract),...e],[]),...this.implements.reduce((e,t)=>[...[...t.properties,...t.extendedProperties].filter(a=>!a.abstract),...e],[])])}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on an '${this.type}', must be the root project as it is a globally declared entity.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];if(this.parent.type===n.DataType){const a=this.parent;a.entity=this,e.push(a)}else this.project.addCustomEntity(this);return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}removeProperty(e){return this.properties=this.properties.filter(t=>t.id!==e.id),this}addMethod(e){return this.methods.includes(e)||(this.methods.push(e),this.suggestedMethods=this.suggestedMethods.filter(t=>t.name!==e.name)),this}removeMethod(e){return this.methods=this.methods.filter(t=>t.id!==e.id),this}addProperty(e){return this.properties.includes(e)||(this.properties.push(e),this.suggestedProperties=this.suggestedProperties.filter(t=>t.name!==e.name)),this}addSuggestedProperty(e){return this.suggestedProperties.includes(e)||this.suggestedProperties.push(e),this}addSuggestedMethod(e){return this.suggestedMethods.includes(e)||this.suggestedMethods.push(e),this}removeSuggestedProperty(e){return this.suggestedProperties=this.suggestedProperties.filter(t=>t.id!==e.id),this}removeSuggestedMethod(e){return this.suggestedMethods=this.suggestedMethods.filter(t=>t.id!==e.id),this}addAbstractMethod(e){return this.abstractMethods.includes(e)||this.abstractMethods.push(e),this}removeAbstractMethod(e){return this.abstractMethods=this.abstractMethods.filter(t=>t.id!==e.id),this}initChildren(){return this.initialized?this:(this.initialized=!0,this.properties=this.initialData.properties.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.methods=this.initialData.methods.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.abstractMethods=this.initialData.abstractMethods.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.extends=this.initialData.extends.map(e=>v(e,this.project)),this.implements=this.initialData.implements.map(e=>v(e,this.project)),this.addSuggestions(),this)}addSuggestions(){return this.implements.forEach(e=>{Z3(this,e).forEach(a=>{const s=a.toJSON();s.id=`_suggestion--parent--${this.id}--${a.id}`;const o=v(s,this.project);o.suggestion=!0,o.setParent(this),o.initChildren(),this.addSuggestedProperty(o)}),K3(this,e).forEach(a=>{const s=`_suggestion--parent--${this.id}--${a.id}`,o=a.implementAsFunctionDeclaration(s),l=v(o,this.project);if(l.suggestion=!0,l.setParent(this),l.initChildren(),l.inputs.forEach(p=>{p.suggestion=!0}),l.returnStatements.length){const p=l.returnStatements[0];p.suggestion=!0,p.outputs.forEach(y=>{y.suggestion=!0})}this.addSuggestedMethod(l)})}),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.x=e.x||this.x,this.y=e.y||this.y,this.static=e.static||this.static,this.abstract=e.abstract||this.abstract,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.properties.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.methods.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.abstractMethods.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.suggestedProperties.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.suggestedMethods.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.properties.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.methods.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.abstractMethods.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.suggestedProperties.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.suggestedMethods.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),{affected:b(t),self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.extends.flatMap(i=>i.toFlat(e)),...this.implements.flatMap(i=>i.toFlat(e)),...this.properties.flatMap(i=>i.toFlat(e)),...this.methods.flatMap(i=>i.toFlat(e)),...this.abstractMethods.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.extends.flatMap(i=>i.toFlatIds(e)),...this.implements.flatMap(i=>i.toFlatIds(e)),...this.properties.flatMap(i=>i.toFlatIds(e)),...this.methods.flatMap(i=>i.toFlatIds(e)),...this.abstractMethods.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,x:this.x,y:this.y,static:this.static,abstract:this.abstract,properties:this.properties.map(e=>e.toJSON()),methods:this.methods.map(e=>e.toJSON()),abstractMethods:this.abstractMethods.map(e=>e.toJSON()),implements:this.implements.map(e=>e.toJSON()),extends:this.extends.map(e=>e.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,x:this.x,y:this.y,static:this.static,abstract:this.abstract,properties:this.properties.map(e=>e.toReference()),methods:this.methods.map(e=>e.toReference()),abstractMethods:this.abstractMethods.map(e=>e.toReference()),implements:this.implements.map(e=>e.toReference()),extends:this.extends.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.properties.flatMap(i=>i.toFlatJSON(e)),...this.methods.flatMap(i=>i.toFlatJSON(e)),...this.abstractMethods.flatMap(i=>i.toFlatJSON(e)),...this.implements.flatMap(i=>i.toFlatJSON(e)),...this.extends.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,name:this.name,description:this.description,type:this.type,static:this.static,abstract:this.abstract,extends:this.extends.map(t=>t.id),implements:this.implements.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.properties.flatMap(i=>i.toFlatGenerationTarget(e)),...this.methods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.abstractMethods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.implements.filter(i=>i.type===n.CustomEntity).flatMap(i=>i.toFlatGenerationTarget(e)),...this.implements.filter(i=>i.type===n.CustomEntity).flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.properties.forEach(e=>e.clearErrors()),this.methods.forEach(e=>e.clearErrors()),this.abstractMethods.forEach(e=>e.clearErrors()),this}validate(){return this.errors=z3(this),{success:!0,error:null,data:null}}getErrors(){return[...this.errors,...this.properties.flatMap(t=>t.getErrors()),...this.methods.flatMap(t=>t.getErrors()),...this.abstractMethods.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){var R,g,D;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.CustomEntity,this.project);a.properties=[],a.methods=[],a.abstractMethods=[];const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e&&p.setParent(e),i&&p.subscribe(),p.initChildren();const y=(R=this.properties)==null?void 0:R.map((A,I)=>A.clone(p,l+"-property-"+I+"-id",i));p.properties=y;const h=(g=this.methods)==null?void 0:g.map((A,I)=>A.clone(p,l+"-method-"+I+"-id",i));p.methods=h;const m=(D=this.abstractMethods)==null?void 0:D.map((A,I)=>A.clone(p,l+"-abstract-method-"+I+"-id",i));return p.abstractMethods=m,p}getFunctionDeclaration(e){return this.methods.find(t=>t.id===e)}implement(e,t){return Fo(this,e,t)}getAllInteractiveMethods(){const e=this.implements.filter(i=>i.type===n.CustomEntity||i.type===n.BuiltInBaseEntity&&i.interactive);return b([...this.methods,...this.extends.flatMap(i=>i.getAllInteractiveMethods()),...e.flatMap(i=>i.getAllInteractiveMethods())])}inferFromInputs(e){if(this.parent.type!==n.DataType||!this.parent.inferred)return this;const t=[];e.forEach(s=>{t.find(l=>C(l,this.project)===C(s,this.project))||t.push(s)});const i=this.properties.filter(s=>!s.getDataType());t.forEach(s=>{const o=i.find(m=>C(m,this.project)===C(s,this.project));if(!o)return;const p=Sr(s.parent).getMasterInputWithValueWritterFromAllInstances(s),y=on(p),h=y==null?void 0:y.clone(o,o.id+"--data-type",!0);h&&o.setDataType(h),s.setDeclaration(o)});const a=[];return t.forEach(s=>{if(!s.declaration){a.push(s);return}}),a.length===0?this:(a.forEach(s=>{const o=this.properties.find(g=>C(g,this.project)===C(s,this.project));if(o){if(s.setDeclaration(o),!o.getDataType()){const D=Sr(s.parent).getMasterInputWithValueWritterFromAllInstances(s),A=on(D),I=A==null?void 0:A.clone(o,o.id+"--data-type",!0);I&&o.setDataType(I)}return}const l={id:s.id+"--inferred-property",type:n.Property,version:1,name:C(s,this.project),description:s.description,static:!0,abstract:!1,private:!1,hidden:!1,required:!1,index:s.index,implements:null,dataType:null,parent:this.toReference()},p=v(l,this.project);p.setParent(this),p.initChildren();const h=Sr(s.parent).getMasterInputWithValueWritterFromAllInstances(s),m=on(h),R=m==null?void 0:m.clone(p,l.id+"--data-type",!0);return R&&p.setDataType(R),this.addProperty(p),s.setDeclaration(p),p}),this)}};d(_e,"MUTABLE_BASE_PROPERTIES",["name","description","static","abstract"]),d(_e,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(_e,"BASE_PROPERTIES",[..._e.MUTABLE_BASE_PROPERTIES,..._e.INMUTABLE_BASE_PROPERTIES]),d(_e,"MUTABLE_META_PROPERTIES",[..._e.MUTABLE_BASE_PROPERTIES,"x","y"]),d(_e,"INMUTABLE_META_PROPERTIES",[..._e.INMUTABLE_BASE_PROPERTIES]),d(_e,"META_PROPERTIES",[..._e.MUTABLE_META_PROPERTIES,..._e.INMUTABLE_META_PROPERTIES]),d(_e,"MUTABLE_UPSTREAM_PROPERTIES",["extends","implements"]),d(_e,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(_e,"UPSTREAM_PROPERTIES",[..._e.MUTABLE_UPSTREAM_PROPERTIES,..._e.INMUTABLE_UPSTREAM_PROPERTIES]),d(_e,"MUTABLE_DOWNSTREAM_PROPERTIES",["properties","methods","abstractMethods"]),d(_e,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(_e,"DOWNSTREAM_PROPERTIES",[..._e.MUTABLE_DOWNSTREAM_PROPERTIES,..._e.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(_e,"PROPERTIES",[..._e.META_PROPERTIES,..._e.UPSTREAM_PROPERTIES,..._e.DOWNSTREAM_PROPERTIES]);let kr=_e;function v7(r){const e=A9(),t=r.toJSON();e.safeParse(t).success;const a=[];return ie(r.errors,a)}class xt{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"type",n.BuiltInBaseEntity);d(this,"abstract",!1);d(this,"static");d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"interactive",!1);d(this,"errors",[]);d(this,"project");this.initialData=this.initialData||e,this.project=this.project||t,this.id=this.id||e.id,this.version=this.version||e.version,this.name=this.name||e.name,this.static=this.static||e.static,this.interactive=this.interactive||e.interactive,this.abstract=e.abstract,this.properties=this.initialData.properties.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.methods=this.initialData.methods.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.abstractMethods=this.initialData.abstractMethods.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.extends=this.initialData.extends.map(i=>v(i,this.project))}get extendedProperties(){return b(this.extends.reduce((e,t)=>{const i=[...t.properties,...t.extendedProperties].filter(a=>!a.abstract);return[...e,...i]},[]))}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}async load(){return this}remove(e={ignoreUpstream:!1,seenEntities:new Set}){return{affected:[],removed:[]}}restore({seenEntities:e}={seenEntities:new Set}){return{affected:[],self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.properties.flatMap(i=>i.toFlat(e)),...this.methods.flatMap(i=>i.toFlat(e)),...this.abstractMethods.flatMap(i=>i.toFlat(e)),...this.extends.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.properties.flatMap(i=>i.toFlatIds(e)),...this.methods.flatMap(i=>i.toFlatIds(e)),...this.abstractMethods.flatMap(i=>i.toFlatIds(e)),...this.extends.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,abstract:this.abstract,static:this.static,interactive:this.interactive,properties:this.properties.map(e=>e.toJSON()),methods:this.methods.map(e=>e.toJSON()),abstractMethods:this.abstractMethods.map(e=>e.toJSON()),extends:this.extends.map(e=>e.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,abstract:this.abstract,static:this.static,interactive:this.interactive,properties:this.properties.map(e=>e.toReference()),methods:this.methods.map(e=>e.toReference()),abstractMethods:this.abstractMethods.map(e=>e.toReference()),extends:this.extends.map(e=>e.toReference())}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.properties.flatMap(i=>i.toFlatJSON(e)),...this.methods.flatMap(i=>i.toFlatJSON(e)),...this.abstractMethods.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,name:this.name,description:this.description,static:this.static,abstract:this.abstract,interactive:this.interactive,extends:this.extends.map(e=>e.id)}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.properties.flatMap(i=>i.toFlatGenerationTarget(e)),...this.methods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.abstractMethods.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.properties.forEach(e=>e.clearErrors()),this.methods.forEach(e=>e.clearErrors()),this.abstractMethods.forEach(e=>e.clearErrors()),this}validate(){const e=v7(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.properties.flatMap(t=>t.getErrors()),...this.methods.flatMap(t=>t.getErrors()),...this.abstractMethods.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new xt(this.toJSON(),this.project)}implement(e,t){return Fo(this,e,t)}getAllInteractiveMethods(){const e=[];return this.interactive&&(e.push(...this.methods),this.extends.filter(i=>i.type===n.BuiltInBaseEntity&&i.interactive||i.type===n.PrimitiveEntity).forEach(i=>{i instanceof xt&&e.push(...i.getAllInteractiveMethods())})),b(e)}}function g7(r){const e=T9(),t=r.toJSON();e.safeParse(t).success;const a=[];return ie(r.errors,a)}class jt{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"type",n.PrimitiveEntity);d(this,"static");d(this,"abstract");d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"errors",[]);d(this,"project");this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.static=e.static,this.abstract=e.abstract,this.properties=this.initialData.properties.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.methods=this.initialData.methods.map(i=>{const a=v(i,this.project);return a.parent=this,a}),this.abstractMethods=this.initialData.abstractMethods.map(i=>{const a=v(i,this.project);return a.parent=this,a})}get extendedProperties(){return b(this.extends.reduce((e,t)=>{const i=[...t.properties,...t.extendedProperties].filter(a=>!a.abstract);return[...e,...i]},[]))}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}async load(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){return{affected:[],removed:[]}}restore({seenEntities:e}={seenEntities:new Set}){return{affected:[],self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.properties.flatMap(i=>i.toFlat(e)),...this.methods.flatMap(i=>i.toFlat(e)),...this.abstractMethods.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.properties.flatMap(i=>i.toFlatIds(e)),...this.methods.flatMap(i=>i.toFlatIds(e)),...this.abstractMethods.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,static:this.static,abstract:this.abstract,properties:this.properties.map(e=>e.toJSON()),methods:this.methods.map(e=>e.toJSON()),abstractMethods:this.abstractMethods.map(e=>e.toJSON()),extends:this.extends.map(e=>e.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,abstract:this.abstract,static:this.static,properties:this.properties.map(e=>e.toReference()),methods:this.methods.map(e=>e.toReference()),abstractMethods:this.abstractMethods.map(e=>e.toReference()),extends:this.extends.map(e=>e.toReference())}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.properties.flatMap(i=>i.toFlatJSON(e)),...this.methods.flatMap(i=>i.toFlatJSON(e)),...this.abstractMethods.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,name:this.name,description:this.description,static:this.static,abstract:this.abstract,extends:this.extends.map(e=>e.id)}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.properties.flatMap(i=>i.toFlatGenerationTarget(e)),...this.methods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.abstractMethods.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.properties.forEach(e=>e.clearErrors()),this.methods.forEach(e=>e.clearErrors()),this.abstractMethods.forEach(e=>e.clearErrors()),this}validate(){const e=g7(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.properties.flatMap(t=>t.getErrors()),...this.methods.flatMap(t=>t.getErrors()),...this.abstractMethods.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new jt(this.toJSON(),this.project)}getAllInteractiveMethods(){const e=[];return e.push(...this.methods),this.extends.filter(i=>i.type===n.BuiltInBaseEntity&&i.interactive||i.type===n.PrimitiveEntity).forEach(i=>{i instanceof xt&&e.push(...i.getAllInteractiveMethods())}),b(e)}}function kt(r,e){if(!r)throw new Error("Entity is null");const t=e.get(r.id);switch(r.type){case n.PrimitiveValue:return t||new Ci(r,e);case n.CustomEntity:return t||new kr(r,e);case n.PrimitiveEntity:return t||new jt(r,e);case n.FunctionDeclaration:return t||new Br(r,e);case n.GlobalEvent:return t||new Oi(r,e);case n.DataType:return t||new Ai(r,e);case n.Property:return t||new Cr(r,e);case n.FunctionCall:return t||new xr(r,e);case n.Condition:return t||new Nr(r,e);case n.Operation:return t||new wr(r,e);case n.VariableDeclaration:return t||new Mr(r,e);case n.VariableInstance:return t||new Vr(r,e);case n.OutputMap:return t||new Sn(r,e);case n.ReturnDeclaration:return t||new _t(r,e);case n.ArgumentDeclaration:return t||new $r(r,e);case n.InputMap:return t||new On(r,e);case n.Project:return t||new _(r);case n.InstalledProject:return t||new Gr(r,e);case n.ActionDescriptor:return t||new te(r,e);case n.ReturnStatement:return t||new Fr(r,e);case n.Loop:return t||new _r(r,e);case n.Search:return t||new Lr(r,e);case n.ValueDescriptor:return t||new Ur(r,e);case n.BuiltInBaseEntity:return t||new xt(r,e);case n.InternalCall:return t||new Si(r,e);case n.ContinueStatement:return t||new bt(r,e);case n.BreakStatement:return t||new Bi(r,e);default:throw new Error("Invalid entity type: "+r.type)}}function v(r,e){if(!r)throw new Error("Entity is null");const t=kt(r,e);return t.subscribe(),t}function I7(r,e){if(!r)throw new Error("Entity is null");switch(r.type){case n.PrimitiveValue:return Ci.fromGenerationTarget(r,e);case n.CustomEntity:return kr.fromGenerationTarget(r,e);case n.FunctionDeclaration:return Br.fromGenerationTarget(r,e);case n.GlobalEvent:return Oi.fromGenerationTarget(r,e);case n.DataType:return Ai.fromGenerationTarget(r,e);case n.Property:return Cr.fromGenerationTarget(r,e);case n.FunctionCall:return xr.fromGenerationTarget(r,e);case n.Condition:return Nr.fromGenerationTarget(r,e);case n.Operation:return wr.fromGenerationTarget(r,e);case n.VariableDeclaration:return Mr.fromGenerationTarget(r,e);case n.VariableInstance:return Vr.fromGenerationTarget(r,e);case n.OutputMap:return Sn.fromGenerationTarget(r,e);case n.ReturnDeclaration:return _t.fromGenerationTarget(r,e);case n.ArgumentDeclaration:return $r.fromGenerationTarget(r,e);case n.InputMap:return On.fromGenerationTarget(r,e);case n.InstalledProject:return Gr.fromGenerationTarget(r,e);case n.ReturnStatement:return Fr.fromGenerationTarget(r,e);case n.Loop:return _r.fromGenerationTarget(r,e);case n.Search:return Lr.fromGenerationTarget(r,e);case n.ActionDescriptor:return te.fromGenerationTarget(r,e);case n.ValueDescriptor:return Ur.fromGenerationTarget(r,e);case n.InternalCall:return Si.fromGenerationTarget(r,e);case n.ContinueStatement:return bt.fromGenerationTarget(r,e);case n.BreakStatement:return Bi.fromGenerationTarget(r,e);default:throw new Error("Invalid entity type: "+r.type)}}const ee=class ee{constructor(e){d(this,"initialData");d(this,"id");d(this,"version");d(this,"type",n.Project);d(this,"name",null);d(this,"description",null);d(this,"x");d(this,"y");d(this,"entities",[]);d(this,"projects",[]);d(this,"functions",[]);d(this,"events",[]);d(this,"variableDeclarations",[]);d(this,"variableInstances",[]);d(this,"conditions",[]);d(this,"operations",[]);d(this,"functionCalls",[]);d(this,"loops",[]);d(this,"searches",[]);d(this,"primitives",[]);d(this,"builtInBaseEntities",[]);d(this,"operationDeclarations",[]);d(this,"globalEventActionDescriptors",[]);d(this,"loopDeclarations",[]);d(this,"loopDeclarationsBodies",[]);d(this,"conditionDeclarations",[]);d(this,"valueDescriptors",[]);d(this,"dataTypes",[]);d(this,"project");d(this,"instances",{});d(this,"builtInInstances",{});d(this,"errors",[]);d(this,"references",[]);this.initialData=e,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=0,this.y=0;try{(!ee.UUID||ee.UUID.isBackup)&&(ee.UUID=$s==null?void 0:$s()),ee.UUID||(ee.UUID={isBackup:!0,uuid:()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15),fromUUID:t=>t})}catch(t){console.error("Error initializing UUID module",t),ee.UUID={isBackup:!0,uuid:()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15),fromUUID:i=>i}}}static injectUUIDModule(e){ee.UUID=e}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[];return a.push(...Ve(i)),{errors:a,modifiedData:i}}async inject(...e){return await Promise.all(e.map(t=>new Promise(async i=>{await t.init(this),i(null)}))),this}validateGeneratedUpdate(e){return{errors:[],modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return{updated:b(e),added:b(t),removed:b(i),self:this}}get instancesList(){return Object.values(this.instances)}isOperationDeclaration(e){return this.operationDeclarations.includes(e)}isGlobalEventActionDescriptor(e){return this.globalEventActionDescriptors.includes(e)}isLoopDeclaration(e){return this.loopDeclarations.includes(e)}isConditionDeclaration(e){return this.conditionDeclarations.includes(e)}initChildren(){return this.entities=this.initialData.entities.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.projects=this.initialData.projects.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.functions=this.initialData.functions.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.events=this.initialData.events.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.variableDeclarations=this.initialData.variableDeclarations.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.variableInstances=this.initialData.variableInstances.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.conditions=this.initialData.conditions.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.operations=this.initialData.operations.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.functionCalls=this.initialData.functionCalls.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.loops=this.initialData.loops.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.searches=this.initialData.searches.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.attachOrphanReferences(),this.validate(),this}subscribeInstance(e){return(!this.instances[e.id]||this.instances[e.id]!==e)&&(this.instances[e.id]=e),this}subscribeBuiltInInstance(e){return(!this.builtInInstances[e.id]||this.builtInInstances[e.id]!==e)&&(this.builtInInstances[e.id]=e),this}subscribe(){return this}unsubscribe(){return this}unsubscribeInstance(e){return delete this.instances[e.id],this}findSubscribedInstance(e){return this.instances[e.id]||null}findSubscribedBuiltInInstance(e){return this.builtInInstances[e.id]||null}get(e){return this.instances[e]||this.builtInInstances[e]||null}getManaged(e){return this.instances[e]||null}getBuiltIn(e){return this.builtInInstances[e]||null}findSubscribedInstanceFromReference(e){return this.instances[e.entityId]||null}findSubscribedBuiltInInstanceFromReference(e){return this.builtInInstances[e.entityId]||null}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e}={ignoreUpstream:!1}){return{affected:[],removed:[]}}restore({seenEntities:e}={seenEntities:new Set}){return{affected:[],self:this}}getAllBuiltInIds(){const e=new Set;return[...this.primitives.flatMap(t=>t.toFlatIds(e)),...this.builtInBaseEntities.flatMap(t=>t.toFlatIds(e)),...this.operationDeclarations.flatMap(t=>t.toFlatIds(e)),...this.globalEventActionDescriptors.flatMap(t=>t.toFlatIds(e)),...this.loopDeclarations.flatMap(t=>t.toFlatIds(e)),...this.conditionDeclarations.flatMap(t=>t.toFlatIds(e)),...this.valueDescriptors.flatMap(t=>t.toFlatIds(e)),...this.dataTypes.flatMap(t=>t.toFlatIds(e))]}getAllBuiltIn(){const e=new Set;return[...this.primitives.flatMap(t=>t.toFlat(e)),...this.builtInBaseEntities.flatMap(t=>t.toFlat(e)),...this.operationDeclarations.flatMap(t=>t.toFlat(e)),...this.globalEventActionDescriptors.flatMap(t=>t.toFlat(e)),...this.loopDeclarations.flatMap(t=>t.toFlat(e)),...this.conditionDeclarations.flatMap(t=>t.toFlat(e)),...this.valueDescriptors.flatMap(t=>t.toFlat(e)),...this.dataTypes.flatMap(t=>t.toFlat(e))]}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.entities.flatMap(i=>i.toFlat(e)),...this.functions.flatMap(i=>i.toFlat(e)),...this.events.flatMap(i=>i.toFlat(e)),...this.projects.flatMap(i=>i.toFlat(e)),...this.variableDeclarations.flatMap(i=>i.toFlat(e)),...this.variableInstances.flatMap(i=>i.toFlat(e)),...this.conditions.flatMap(i=>i.toFlat(e)),...this.operations.flatMap(i=>i.toFlat(e)),...this.functionCalls.flatMap(i=>i.toFlat(e)),...this.loops.flatMap(i=>i.toFlat(e)),...this.searches.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),Array.from(e))}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,entities:this.entities.map(e=>e.toJSON()),functions:this.functions.map(e=>e.toJSON()),events:this.events.map(e=>e.toJSON()),projects:this.projects.map(e=>e.toJSON()),variableDeclarations:this.variableDeclarations.map(e=>e.toJSON()),variableInstances:this.variableInstances.map(e=>e.toJSON()),conditions:this.conditions.map(e=>e.toJSON()),operations:this.operations.map(e=>e.toJSON()),functionCalls:this.functionCalls.map(e=>e.toJSON()),loops:this.loops.map(e=>e.toJSON()),searches:this.searches.map(e=>e.toJSON())}}toReference(){return{id:this.id+"--"+ee.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,entities:this.entities.map(e=>e.toReference()),functions:this.functions.map(e=>e.toReference()),events:this.events.map(e=>e.toReference()),projects:this.projects.map(e=>e.toReference()),variableDeclarations:this.variableDeclarations.map(e=>e.toReference()),variableInstances:this.variableInstances.map(e=>e.toReference()),conditions:this.conditions.map(e=>e.toReference()),operations:this.operations.map(e=>e.toReference()),functionCalls:this.functionCalls.map(e=>e.toReference()),loops:this.loops.map(e=>e.toReference()),searches:this.searches.map(e=>e.toReference())}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.entities.flatMap(i=>i.toFlatJSON(e)),...this.functions.flatMap(i=>i.toFlatJSON(e)),...this.events.flatMap(i=>i.toFlatJSON(e)),...this.projects.flatMap(i=>i.toFlatJSON(e)),...this.variableDeclarations.flatMap(i=>i.toFlatJSON(e)),...this.variableInstances.flatMap(i=>i.toFlatJSON(e)),...this.conditions.flatMap(i=>i.toFlatJSON(e)),...this.operations.flatMap(i=>i.toFlatJSON(e)),...this.functionCalls.flatMap(i=>i.toFlatJSON(e)),...this.loops.flatMap(i=>i.toFlatJSON(e)),...this.searches.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,name:this.name,description:this.description}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.entities.flatMap(i=>i.toFlatGenerationTarget(e)),...this.functions.flatMap(i=>i.toFlatGenerationTarget(e)),...this.events.flatMap(i=>i.toFlatGenerationTarget(e)),...this.projects.flatMap(i=>i.toFlatGenerationTarget(e)),...this.variableDeclarations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.variableInstances.flatMap(i=>i.toFlatGenerationTarget(e)),...this.conditions.flatMap(i=>i.toFlatGenerationTarget(e)),...this.operations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.functionCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.loops.flatMap(i=>i.toFlatGenerationTarget(e)),...this.searches.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.entities.forEach(e=>e.clearErrors()),this.projects.forEach(e=>e.clearErrors()),this.functions.forEach(e=>e.clearErrors()),this.events.forEach(e=>e.clearErrors()),this.variableDeclarations.forEach(e=>e.clearErrors()),this.variableInstances.forEach(e=>e.clearErrors()),this.conditions.forEach(e=>e.clearErrors()),this.operations.forEach(e=>e.clearErrors()),this.functionCalls.forEach(e=>e.clearErrors()),this.loops.forEach(e=>e.clearErrors()),this.searches.forEach(e=>e.clearErrors()),this}validate(){const e=k3(),t=this.toJSON();return e.safeParse(t),this.validateChildren(),{success:!0,error:null,data:t}}validateChildren(){this.entities.forEach(e=>e.validate()),this.projects.forEach(e=>e.validate()),this.functions.forEach(e=>e.validate()),this.events.forEach(e=>e.validate()),this.variableDeclarations.forEach(e=>e.validate()),this.variableInstances.forEach(e=>e.validate()),this.conditions.forEach(e=>e.validate()),this.operations.forEach(e=>e.validate()),this.functionCalls.forEach(e=>e.validate()),this.loops.forEach(e=>e.validate()),this.searches.forEach(e=>e.validate())}getErrors(){return[...this.errors,...this.entities.flatMap(t=>t.getErrors()),...this.projects.flatMap(t=>t.getErrors()),...this.functions.flatMap(t=>t.getErrors()),...this.events.flatMap(t=>t.getErrors()),...this.variableDeclarations.flatMap(t=>t.getErrors()),...this.variableInstances.flatMap(t=>t.getErrors()),...this.conditions.flatMap(t=>t.getErrors()),...this.operations.flatMap(t=>t.getErrors()),...this.functionCalls.flatMap(t=>t.getErrors()),...this.loops.flatMap(t=>t.getErrors()),...this.searches.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new ee(this.toJSON())}getCustomEntity(e){return this.entities.find(t=>t.id===e)||null}addCustomEntityFromTransfer(e){const t=v(e,this);return this.addCustomEntity(t),t}addCustomEntity(e){return this.entities.includes(e)||this.entities.push(e),e}addFunctionDeclarationFromTransfer(e){const t=v(e,this);return this.addFunctionDeclaration(t),t}addFunctionDeclaration(e){return this.functions.includes(e)||this.functions.push(e),e}addFunctionCallFromTransfer(e){const t=v(e,this);return this.addFunctionCall(t),t}addFunctionCall(e){return this.functionCalls.includes(e)||this.functionCalls.push(e),e}addVariableDeclarationFromTransfer(e){const t=v(e,this);return this.addVariableDeclaration(t),t}addVariableDeclaration(e){return this.variableDeclarations.includes(e)||this.variableDeclarations.push(e),e}addVariableInstanceFromTransfer(e){const t=v(e,this);return this.addVariableInstance(t),t}addVariableInstance(e){return this.variableInstances.includes(e)||this.variableInstances.push(e),e}addInstalledProjectFromTransfer(e){const t=v(e,this);return this.addInstalledProject(t),this}addInstalledProject(e){return this.projects.includes(e)||this.projects.push(e),this}addGlobalEventFromTransfer(e){const t=v(e,this);return this.addGlobalEvent(t),this}addGlobalEvent(e){return this.events.includes(e)||this.events.push(e),this}addConditionFromTransfer(e){const t=v(e,this);return this.addCondition(t),this}addCondition(e){return this.conditions.includes(e)||this.conditions.push(e),this}addOperationFromTransfer(e){const t=v(e,this);return this.addOperation(t),this}addOperation(e){return this.operations.includes(e)||this.operations.push(e),this}addLoopFromTransfer(e){const t=v(e,this);return this.addLoop(t),this}addLoop(e){return this.loops.includes(e)||this.loops.push(e),this}addSearchFromTransfer(e){const t=v(e,this);return this.addSearch(t),this}addSearch(e){return this.searches.includes(e)||this.searches.push(e),this}removeCustomEntity(e){const t=this.entities.findIndex(i=>i.id===e.id);if(t>-1){const i=this.entities[t];return this.entities.splice(t,1),i}return null}removeFunctionDeclaration(e){const t=this.functions.findIndex(i=>i.id===e.id);if(t>-1){const i=this.functions[t];return this.functions.splice(t,1),i}return null}removeExternalProject(e){const t=this.projects.findIndex(i=>i.id===e.id);if(t>-1){const i=this.projects[t];return this.projects.splice(t,1),i}return null}removeGlobalEvent(e){const t=this.events.findIndex(i=>i.id===e.id);if(t>-1){const i=this.events[t];return this.events.splice(t,1),i}return null}removeTopLevelVariableDeclaration(e){if(e.type!==n.VariableDeclaration)return null;const t=this.variableDeclarations.findIndex(i=>i.id===e.id);if(t>-1){const i=this.variableDeclarations[t];return this.variableDeclarations.splice(t,1),i}return null}getEntryPoints(){return[...this.functions,...this.events,...this.entities.flatMap(t=>t.methods)]}getFunctionDeclaration(e){return this.functions.find(t=>t.id===e)||null}getConditions(){return[...this.conditions,...this.getEntryPoints().reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.functionCalls.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.operations.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.loops.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.searches.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[])]}getOperations(){return[...this.operations,...this.getEntryPoints().reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.functionCalls.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.conditions.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.loops.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.searches.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[])]}getFunctionCalls(){return[...this.functionCalls,...this.getEntryPoints().reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.conditions.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.operations.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.loops.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.searches.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[])]}getVariables(){return[...this.variableDeclarations,...this.getEntryPoints().reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.functionCalls.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.conditions.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.operations.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.loops.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.searches.reduce((t,i)=>{const a=re(i);return[...t,...a]},[])]}getVariableInstances(){return[...this.variableInstances,...this.getEntryPoints().reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.functionCalls.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.conditions.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.operations.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.loops.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.searches.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[])]}getVariableDeclarations(){return b([...this.variableDeclarations,...this.getEntryPoints().reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.functionCalls.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.conditions.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.operations.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.loops.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.searches.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[])])}attachOrphanReferences(){const e=this.getVariableInstances(),t=this.getVariableDeclarations();return e.forEach(i=>{if(!i.declaration){const a=i.initialData,s=a.declaration.entityId||a.declaration.id,o=t.find(l=>l.id===s);o&&i.setDeclaration(o)}}),this}getBuiltInPersistedEntity(){return this.builtInBaseEntities.find(e=>e.name===L.PERSISTED_ENTITY)||null}};d(ee,"UUID",{isBackup:!0,uuid:()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15),fromUUID:e=>e}),d(ee,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(ee,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ee,"BASE_PROPERTIES",[...ee.MUTABLE_BASE_PROPERTIES,...ee.INMUTABLE_BASE_PROPERTIES]),d(ee,"MUTABLE_META_PROPERTIES",[...ee.MUTABLE_BASE_PROPERTIES,"x","y"]),d(ee,"INMUTABLE_META_PROPERTIES",[...ee.INMUTABLE_BASE_PROPERTIES]),d(ee,"META_PROPERTIES",[...ee.MUTABLE_META_PROPERTIES,...ee.INMUTABLE_META_PROPERTIES]),d(ee,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(ee,"INMUTABLE_UPSTREAM_PROPERTIES",["primitives","builtInBaseEntities","operationDeclarations","globalEventActionDescriptors","loopDeclarations","builtInInstances"]),d(ee,"UPSTREAM_PROPERTIES",[...ee.MUTABLE_UPSTREAM_PROPERTIES,...ee.INMUTABLE_UPSTREAM_PROPERTIES]),d(ee,"MUTABLE_DOWNSTREAM_PROPERTIES",["entities","projects","functions","events","variableDeclarations","variableInstances","conditions","operations","functionCalls","loops","searches"]),d(ee,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ee,"DOWNSTREAM_PROPERTIES",[...ee.MUTABLE_DOWNSTREAM_PROPERTIES,...ee.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ee,"PROPERTIES",[...ee.META_PROPERTIES,...ee.UPSTREAM_PROPERTIES,...ee.DOWNSTREAM_PROPERTIES]);let _=ee;class wA extends te{constructor(t){super(Wt,t);d(this,"id",Me.Parallel);d(this,"name",Me.Parallel);d(this,"description","Execute a list of actions one after the other");d(this,"version",1);d(this,"autoexecutable",!0);d(this,"initialData",Wt);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"project");this.project=t,this.inputs=Wt.inputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.outputs=Wt.outputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.error=Wt.error?v(Wt.error,this.project):null}}class _A extends te{constructor(t){super(pt,t);d(this,"id",pt.id);d(this,"name",pt.name);d(this,"description",pt.description);d(this,"version",pt.version);d(this,"autoexecutable",!1);d(this,"initialData",pt);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"project");this.project=t,this.inputs=pt.inputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.outputs=pt.outputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.error=pt.error?v(pt.error,this.project):null}}class NA extends te{constructor(t){super(mn,t);d(this,"id",Me.Sequential);d(this,"name",Me.Sequential);d(this,"description","Execute a list of actions one after the other");d(this,"version",1);d(this,"autoexecutable",!0);d(this,"initialData",mn);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"project");this.project=t,this.inputs=mn.inputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.outputs=mn.outputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.error=mn.error?v(mn.error,this.project):null}}class D7 extends te{constructor(e){super(Mi,e)}}class P7 extends te{constructor(e){super(nr,e)}}class A7 extends te{constructor(t){super(rr,t);d(this,"autoexecutable",!0)}getEntityToMatchInputMap(t){return t.inputs.find(i=>{var a;return((a=i.declaration)==null?void 0:a.id)===B.operation[le.Validate].inputs.entityToMatch.id})||null}getDataToValidateInputMap(t){return t.inputs.find(i=>{var a;return((a=i.declaration)==null?void 0:a.id)===B.operation[le.Validate].inputs.dataToValidate.id})||null}getOutputDataOutputMap(t){return t.outputs.find(i=>{var a;return((a=i.declaration)==null?void 0:a.id)===B.operation[le.Validate].outputs.outputEntity.id})||null}getEntityToMatch(t){let i=null;if(t.readsValue){const s=t.readsValue.getDataType();s&&s.entity&&s.entity.type===n.CustomEntity&&(i=s.entity)}const a=t.getDefaultValue();return!i&&a&&a.valueAsType&&!Array.isArray(a.valueAsType)&&a.valueAsType.type===n.CustomEntity&&(i=a.valueAsType),i}syncOperationInstance(t){const i=this.getEntityToMatchInputMap(t);i&&this.syncEntityToMatchInputMapDataType(i);const a=this.getDataToValidateInputMap(t);a&&this.syncDataToValidateInputMapDataType(a);const s=this.getOutputDataOutputMap(t);return s&&this.syncOutputDataOutputMapDataType(s),t}syncEntityToMatchInputMapDataType(t){var a,s,o;if(((a=t.declaration)==null?void 0:a.id)!==B.operation[le.Validate].inputs.entityToMatch.id)return null;if(!t.dataType){const l={id:t.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!0,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:t.toReference()},p=v(l,t.project);p.setParent(t),p.initChildren(),t.setDataType(p)}(s=t.dataType)==null||s.sync({inferred:!0,like:!1,asType:!0});const i=this.getEntityToMatch(t);return(o=t.dataType)==null||o.setEntity(i),t.dataType}syncDataToValidateInputMapDataType(t){var o,l,p;if(((o=t.declaration)==null?void 0:o.id)!==B.operation[le.Validate].inputs.dataToValidate.id)return null;const i=this.getEntityToMatchInputMap(t.parent);if(!i||!this.getEntityToMatch(i))return null;if(!t.dataType){const y={id:t.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:t.toReference()},h=v(y,t.project);h.setParent(t),h.initChildren(),t.setDataType(h)}(l=t.dataType)==null||l.sync({inferred:!0,like:!0,asType:!1});const s=this.getEntityToMatch(i);return(p=t.dataType)==null||p.setEntity(s),t.dataType}syncOutputDataOutputMapDataType(t){var o,l,p;if(((o=t.declaration)==null?void 0:o.id)!==B.operation[le.Validate].outputs.outputEntity.id)return null;const i=this.getEntityToMatchInputMap(t.parent);if(!i||!this.getEntityToMatch(i))return null;if(!t.dataType){const y={id:t.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:t.toReference()},h=v(y,t.project);h.setParent(t),h.initChildren(),t.setDataType(h)}(l=t.dataType)==null||l.sync({inferred:!0,like:!0,asType:!1});const s=this.getEntityToMatch(i);return(p=t.dataType)==null||p.setEntity(s),t.dataType}inferInputMapDataType(t){var i,a;return((i=t.declaration)==null?void 0:i.id)===B.operation[le.Validate].inputs.entityToMatch.id?this.syncEntityToMatchInputMapDataType(t):((a=t.declaration)==null?void 0:a.id)===B.operation[le.Validate].inputs.dataToValidate.id?this.syncDataToValidateInputMapDataType(t):null}inferOutputMapDataType(t){var i;return((i=t.declaration)==null?void 0:i.id)===B.operation[le.Validate].outputs.outputEntity.id?this.syncOutputDataOutputMapDataType(t):null}}class O7 extends te{constructor(e){super(ll,e)}}class S7 extends te{constructor(e){super(dl,e)}}class C7 extends te{constructor(e){super(ul,e)}}class B7 extends te{constructor(e){super(Ya,e)}}class w7 extends te{constructor(e){super(Ja,e)}}class _7 extends te{constructor(e){super(Ni,e)}}function N7(r){const e=[new NA(r),new wA(r),new _A(r),new D7(r),new P7(r),new A7(r),new B7(r),new O7(r),new C7(r),new S7(r),new w7(r),new _7(r),new te(ol,r),new te(sl,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.operationDeclarations=e,e}class MA extends xt{constructor(t){super(ke,t);d(this,"initialData");d(this,"id",L.PERSISTED_ENTITY);d(this,"version",1);d(this,"name",L.PERSISTED_ENTITY);d(this,"description",ke.description);d(this,"type",n.BuiltInBaseEntity);d(this,"abstract",ke.abstract);d(this,"static",ke.static);d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"errors",[]);d(this,"project");this.initialData=ke,this.project=t,this.id=ke.id,this.version=ke.version,this.name=ke.name,this.static=ke.static,this.abstract=ke.abstract,this.properties=this.initialData.properties.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.methods=this.initialData.methods.map(i=>{const a=v(i,this.project);return a.parent=this,a}),this.abstractMethods=this.initialData.abstractMethods.map(i=>{const a=v(i,this.project);return a.parent=this,a}),this.extends=this.initialData.extends.map(i=>v(i,this.project))}}function M7(r){const e=[new MA(r),new xt(ls,r),new xt(Mn,r),new xt(ql,r),new xt(os,r)];return e.forEach(t=>{r.subscribeBuiltInInstance(t)}),r.builtInBaseEntities=e,e}function V7(r){const e=[new jt(x,r),new jt(_n,r),new jt(X,r),new jt(Xe,r),new jt(Nn,r),new jt(pn,r),new jt(qa,r),new jt(el,r)];return e.forEach(t=>{r.subscribeBuiltInInstance(t)}),r.primitives=e,e}function L7(r){const e=[new te(ys,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.globalEventActionDescriptors=e,e}function G7(r){const e=[new te(as,r),new te(ir,r),new te(is,r),new te(Li,r),new te(Gi,r),new te(Rl,r)];e.forEach(i=>{i.initChildren(),r.subscribeBuiltInInstance(i)}),r.loopDeclarations=e;const t=[new te(Cl,r),new te(rs,r),new te(Pl,r),new te(yT,r),new te(_T,r),new te(gl,r)];return t.forEach(i=>{i.initChildren(),r.subscribeBuiltInInstance(i)}),r.loopDeclarationsBodies=t,e}function $7(r){const e=[new Ur(Yl,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.valueDescriptors=e,e}function F7(r){const e=[new te(cr,r),new te(Xr,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.operationDeclarations=e,e}const qr={},Yo={};async function U7(r,e={}){const t={...JI};return t.id=r.id,e.empty?{data:{id:r.id,type:n.Project,version:1,name:null,description:null,projects:[],entities:[],operations:[],functions:[],variableDeclarations:[],variableInstances:[],functionCalls:[],conditions:[],loops:[],searches:[],events:[]}}:{data:t}}function VA(r){const e=new _(r);return V7(e),M7(e),N7(e),L7(e),G7(e),$7(e),F7(e),e.getAllBuiltIn().forEach(i=>{e.builtInInstances[i.id]||(e.builtInInstances[i.id]=i,delete e.instances[i.id])}),e.initChildren(),e}async function x7(r,e={}){if(r.id&&qr[r.id])return qr[r.id];if(r.id&&Yo[r.id])return await Yo[r.id],qr[r.id];const t=U7(r,e);r.id&&(Yo[r.id]=t);const i=await t;if(i.data){const a=VA(i.data);return qr[r.id]=a,r.id&&delete Yo[r.id],a}return null}function j7(r){return qr[r.id]&&delete qr[r.id],null}const k7="test_primitive_entities_export";c.AI_VALUE_CONNECTION_GENERATION_ACTION_EXPLANATION=Pu,c.ActionDescriptorState=te,c.ActionInputMapState=B2,c.ActionOutputMapState=N2,c.AppendToListOperationInputIds=nh,c.AppendToListOperationOutputIds=rh,c.ArgumentDeclarationState=$r,c.BREAK_AND_CONTINUE_STATEMENTS_RETURN_DECLARATIONS_EXPLANATION=vu,c.BUILT_IN_BASE_ENTITY_IDS=B,c.BUILT_IN_ENTITY_TYPES=Yr,c.BaseCanvasDraggableState=h2,c.BaseEntityNames=L,c.BaseState=y2,c.BaseValueDescriptorIds=Qo,c.BreakStatementState=Bi,c.BuiltInBaseEntityState=xt,c.CACHED_PROJECTS_BY_ID=qr,c.CALLABLE_ENTITIES_EXPLANATION=J2,c.CALLABLE_TYPES=wn,c.CALLER_ENTITIES_EXPLANATION=WP,c.CALLER_TYPES=un,c.CALLS_UPDATE_EXPLANATION=Zn,c.COMPARISON_CONDITIONS=Lb,c.CONDITIONS=uO,c.CUSTOM_ENTITY_OPERATIONS=Df,c.CallableEntityClass=m2,c.CallerEntityClass=Tu,c.ChildEntityState=f2,c.ComparisonOperatorTypes=Ge,c.ConditionState=Nr,c.ContinueStatementState=bt,c.CreateNewInputIds=Kh,c.CreateNewOutputIds=Xh,c.CustomEntityState=kr,c.DRAGGABLE_CALLABLE_TYPES=Ko,c.DRAGGABLE_CALLER_TYPES=ju,c.DRAGGABLE_ELEMENT_TYPES=Xo,c.DRAGGABLE_EXECUTABLE_TYPES=GA,c.DRAGGABLE_PASS_THROUGH_CALLABLE_TYPES=Zo,c.DataTypeCompatibilityTypes=Ft,c.DataTypeParentChildRelation=Ke,c.DataTypeState=Ai,c.ENTITIES_WITH_VALLUES_EXPLANATION=Mo,c.ENTITY_TYPES=$A,c.ENTITY_WITH_LOGIC_SCOPE_TYPES=ut,c.ENTITY_WITH_NAMES_TYPES=ku,c.ENTITY_WITH_VALUE_TYPES=xu,c.ENTRY_POINT_ENTITIES_EXPLANATION=$a,c.ENTRY_POINT_TYPES=Fe,c.EVENT_TYPES=Hr,c.EXECUTABLE_TYPES=LA,c.EXECUTION_OPERATIONS=Zh,c.EntityError=Tr,c.EntityErrorSeverity=T,c.EntityGenerationError=E,c.EntityGenerationErrorCode=f,c.EntityInstanceErrorCode=M,c.EntityOperations=le,c.EntityType=n,c.EntityWithLogicScopeClass=R2,c.EntityWithValueClass=b2,c.EntryPointEntityClass=T2,c.ExecutionOperations=Me,c.ExecutionTerminationType=kP,c.FunctionCallState=xr,c.FunctionDeclarationState=Br,c.GLOBAL_EVENT_DECLARATIONS=pO,c.GetLastInListOperationInputIds=qy,c.GetLastInListOperationOutputIds=Jy,c.GlobalEventNames=dn,c.GlobalEventState=Oi,c.HTTPOperations=nt,c.HTTP_OPERATIONS=im,c.InputMapState=On,c.InstalledProjectState=Gr,c.InternalCallState=Si,c.JoinListOperationInputIds=dy,c.JoinListOperationOutputIds=uy,c.LIST_OPERATIONS=mh,c.ListOperations=W,c.LoopState=_r,c.LoopTypes=$,c.NON_INTERACTIVE_BASE_ENTITIES_EXPLANATION=Kn,c.NUMBER_OPERATIONS=Dp,c.NumberOperations=me,c.OPERATION_DECLARATIONS=jA,c.OperationState=wr,c.OutputMapParentChildRelation=Wr,c.OutputMapState=Sn,c.PARENT_AUTO_CALCULATION_FROM_CALLER_EXPLANATION=Vo,c.PASS_THROUGH_CALLABLE_ENTITIES_EXPLANATION=zn,c.PASS_THROUGH_CALLABLE_TYPES=je,c.PROPERTY_NOT_VALUE_READER_WRITTER_EXPLANATION=Du,c.ParallelExecutionOperation=wA,c.ParallelExecutionOperationInputIds=Th,c.ParallelExecutionOperationOutputIds=Eh,c.PassThroughCallableEntityClass=E2,c.PersistedEntity=MA,c.PersistedEntityMethods=Ct,c.PrimitiveEntityState=jt,c.PrimitiveTypes=P,c.PrimitiveValueState=Ci,c.ProjectState=_,c.PropertyState=Cr,c.RETURN_STATEMENT_RETURN_DECLARATIONS_EXPLANATION=W2,c.ReturnDeclarationState=_t,c.ReturnStatementState=Fr,c.STANDALONE_CONDITIONS=Ob,c.STRING_OPERATIONS=cy,c.ScopeCompatibilityType=Ho,c.SearchState=Lr,c.SequentialExecutionOperation=NA,c.SequentialExecutionOperationInputIds=Gh,c.SequentialExecutionOperationOutputIds=$h,c.SharedEntityErrorCode=S,c.SharedStateFunctionality=jP,c.SplitListOperationInputIds=Ay,c.SplitListOperationOutputIds=Oy,c.StandaloneOperatorTypes=Mt,c.StringOperations=K,c.TERMINATION_TYPES=Ue,c.USER_MANAGED_ENTITY_TYPES=FA,c.UserManagedEntityStateFunctionality=p2,c.VALUE_READING_ENTITIES_EXPLANATION=Iu,c.VALUE_READING_TYPES=Bn,c.VALUE_WRITING_ENTITIES_EXPLANATION=HP,c.VALUE_WRITING_TYPES=xe,c.VARIABLE_DATA_TYPE_INFERRANCE_EXPLANATION=gu,c.VARIABLE_TYPES=$e,c.ValueAutogenerationType=We,c.ValueDescriptorParentChildRelation=O,c.ValueDescriptorState=Ur,c.ValueReadingEntityClass=La,c.ValueWritingEntityClass=Ga,c.VariableDeclarationState=Mr,c.VariableInputMapState=C2,c.VariableInstanceState=Vr,c.VariableOutputMapState=_2,c.WaitOperation=_A,c.WaitOperationInputIds=Bh,c.WaitOperationOutputIds=wh,c.appendToListOperation=Ya,c.appendToListOperationElementToAppendArgument=yl,c.appendToListOperationElementToAppendArgumentParentRef=uh,c.appendToListOperationElementToAppendArgumentRef=sh,c.appendToListOperationError=fh,c.appendToListOperationErrorParentRef=hh,c.appendToListOperationListArgument=pl,c.appendToListOperationListArgumentParentRef=dh,c.appendToListOperationListArgumentRef=ih,c.appendToListOperationListDataType=ah,c.appendToListOperationResultListDataType=ch,c.appendToListOperationResultListReturn=yh,c.appendToListOperationResultListReturnParentRef=ph,c.appendToListOperationResultListReturnRef=lh,c.appendToListOperationSecondListDataType=oh,c.asGenerationActionExample=ln,c.booleanPrototype=_n,c.capitalizeFirstLetter=Ao,c.checkAreCustomEntitiesCompatibleAsDataType=CP,c.checkAreDataTypesCompatible=Ut,c.checkArePropertiesCompatibleAsDataType=SP,c.checkIsBranchDependentButNotDirectlyOnBranch=Ua,c.checkIsBranchDependentOnBranch=t7,c.checkIsCallableEntityReachable=ka,c.checkIsCanvasEntity=E7,c.checkIsDetachedBranch=PA,c.checkIsDetachedBranchShallow=Fu,c.checkIsGlobalVariable=m7,c.checkIsGloballyDeclared=$u,c.checkIsMethod=SA,c.checkIsNestedScope=Wo,c.checkScopeCompatibility=xa,c.countedLoopActionDescriptor=as,c.countedLoopActionDescriptorDynamicReturnDeclaration=xT,c.countedLoopActionDescriptorDynamicReturnDeclarationParentRef=UT,c.countedLoopActionDescriptorStringArgumentDeclaration=FT,c.countedLoopActionDescriptorStringArgumentDeclarationDataType=GT,c.countedLoopActionDescriptorStringArgumentDeclarationDataTypeDefaultValue=VT,c.countedLoopActionDescriptorStringArgumentDeclarationDataTypeDefaultValueParentRef=MT,c.countedLoopActionDescriptorStringArgumentDeclarationDataTypeParentRef=LT,c.countedLoopActionDescriptorStringArgumentDeclarationParentRef=$T,c.countedLoopBodyActionDescriptor=Cl,c.countedLoopBodyActionDescriptorAnyDynamicArgument=WT,c.countedLoopBodyActionDescriptorAnyDynamicArgumentParentRef=JT,c.countedLoopBodyActionDescriptorAnyDynamicReturn=YT,c.countedLoopBodyActionDescriptorAnyDynamicReturnParentRef=HT,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclaration=Sl,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=kT,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=jT,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=qT,c.createCustomEntityFromJSONObject=Uo,c.createEntityError=Y,c.createNestedDataTypeForEntity=iA,c.createNewInstanceOperation=nr,c.createNewInstanceOperationEntityToInstanciateArgument=of,c.createNewInstanceOperationEntityToInstanciateArgumentRef=rf,c.createNewInstanceOperationEntityToInstanciateDataType=af,c.createNewInstanceOperationError=uf,c.createNewInstanceOperationErrorParentRef=df,c.createNewInstanceOperationNewEntityDataArgument=nf,c.createNewInstanceOperationNewEntityDataArgumentDataType=tf,c.createNewInstanceOperationNewEntityDataArgumentDataTypeParentRef=ef,c.createNewInstanceOperationNewEntityDataArgumentParentRef=Qh,c.createNewInstanceOperationOutputEntityDeclaration=cf,c.createNewInstanceOperationOutputEntityDeclarationParentRef=lf,c.createNewInstanceOperationRef=sf,c.createSemanticId=Ze,c.createStateFromGenerationTargetType=I7,c.createStateFromType=kt,c.createStateFromTypeAndSubscribe=v,c.cronJobBuiltInBaseEntity=ql,c.cronJobBuiltInBaseEntityExpressionProperty=Ib,c.cronJobBuiltInBaseEntityExpressionPropertyDataTypeRef=lO,c.cronJobBuiltInBaseEntityExpressionPropertyRef=vb,c.cronJobBuiltInBaseEntityRef=gb,c.cronJobTriggeredFunctionDeclarationBlueprint=kl,c.cronJobTriggeredFunctionDeclarationBlueprintParentRef=bb,c.customEntityToZodSchema=eR,c.dataTypeCompatibilityToErrorExplanation=tA,c.datePrototype=pn,c.dateValueAutogenerationSchema=id,c.deletePersistedEntityMethod=jl,c.deletePersistedEntityMethodParentRef=KE,c.deleteRootProject=j7,c.endpointBuiltInBaseEntity=ls,c.endpointBuiltInBaseEntityRef=iE,c.endpointBuiltInBaseEntityRefFour=FE,c.endpointBuiltInBaseEntityRefThree=yE,c.endpointBuiltInBaseEntityRefTwo=cE,c.endpointBuiltInCorsProperty=aE,c.endpointBuiltInCorsPropertyDataType=rE,c.endpointBuiltInCorsPropertyDataTypeRef=tE,c.endpointBuiltInCorsPropertyRef=nE,c.endpointBuiltInMethodProperty=wl,c.endpointBuiltInMethodPropertyDataType=pE,c.endpointBuiltInMethodPropertyDataTypeRef=dE,c.endpointBuiltInMethodPropertyRef=uE,c.endpointBuiltInPathProperty=Bl,c.endpointBuiltInPathPropertyDataType=lE,c.endpointBuiltInPathPropertyDataTypeRef=sE,c.endpointBuiltInPathPropertyRef=oE,c.endpointPathParamsArgumentDeclaration=Nl,c.endpointPathParamsArgumentDeclarationRef=IE,c.endpointPathParamsVariableDataType=DE,c.endpointPathParamsVariableDataTypeRef=gE,c.endpointReachedTriggerActionDescriptor=Fl,c.endpointReachedTriggerActionDescriptorRef=PE,c.endpointReachedTriggerActionDescriptorRefFour=SE,c.endpointReachedTriggerActionDescriptorRefThree=OE,c.endpointReachedTriggerActionDescriptorRefTwo=AE,c.endpointRequestBodyArgumentDeclaration=Vl,c.endpointRequestBodyArgumentDeclarationRef=TE,c.endpointRequestBodyVariableDataType=EE,c.endpointRequestHeadersArgumentDeclaration=_l,c.endpointRequestHeadersArgumentDeclarationRef=fE,c.endpointRequestHeadersVariableDataType=mE,c.endpointRequestHeadersVariableDataTypeRef=hE,c.endpointRequestQueryParamsArgumentDeclaration=Ml,c.endpointRequestQueryParamsArgumentDeclarationRef=RE,c.endpointRequestQueryParamsVariableDataType=vE,c.endpointRequestQueryParamsVariableDataTypeRef=bE,c.endpointResponseBodyDataType=GE,c.endpointResponseBodyReturnDeclaration=$l,c.endpointResponseBodyReturnDeclarationRef=LE,c.endpointResponseCodeDataType=BE,c.endpointResponseCodeReturnDeclaration=Ll,c.endpointResponseCodeReturnDeclarationRef=CE,c.endpointResponseHeadersDataType=ME,c.endpointResponseHeadersDataTypeRef=_E,c.endpointResponseHeadersReturnDeclaration=Gl,c.endpointResponseHeadersReturnDeclarationRef=NE,c.endpointReturnStatementRef=wE,c.endpointReturnStatementRefThree=$E,c.endpointReturnStatementRefTwo=VE,c.enumOptionsProperty=Yu,c.enumOptionsPropertyDataType=Wu,c.enumOptionsPropertyDataTypeRef=qu,c.enumOptionsPropertyRef=Ju,c.enumPrototype=Nn,c.enumPrototypeRef=Hu,c.executionBuiltInEntity=Wl,c.executionBuiltInEntityAbortMethod=Jl,c.executionBuiltInEntityAbortMethodParentRef=Db,c.filterOutDuplicateEntities=b,c.filterOutDuplicateErrors=l9,c.findEntityFromKeys=Su,c.findReferenceToSelfInList=mA,c.findReferencesToSelfInProject=d7,c.flattenCalls=cn,c.flattenCanvasAncestorsUntil=xo,c.flattenCustomEntityExtensionAndImplementationTypes=gA,c.flattenCustomEntityExtensionTypes=qo,c.flattenCustomEntityExtensions=Vu,c.flattenCustomEntityImplementations=Lu,c.flattenCustomEntityImplementionTypes=ko,c.flattenDerivedCanvasEntities=St,c.flattenDetachedBranch=OA,c.flattenElementCalls=Ne,c.flattenElementCallsOnTheSameScope=c7,c.flattenProjectElements=fA,c.flattenRelatedCanvasElementsOnTheLeft=vA,c.flattenRelatedCanvasElementsOnTheRight=RA,c.flattenVariableReads=hA,c.flattenVariableWrites=yA,c.flattenVariables=re,c.fromZodParseToEntityGenerationErrors=Eu,c.generate=lC,c.generateActionExample=H2,c.generateExecutionDataType=H5,c.generateMutablePropertiesExplanation=wo,c.generateRandomBoolean=AR,c.generateRandomDate=iR,c.generateRandomDateAfter=tR,c.generateRandomDateBefore=nR,c.generateRandomDateBetweenRange=rR,c.generateRandomNumber=vR,c.generateRandomNumberAfter=ER,c.generateRandomNumberBefore=bR,c.generateRandomNumberBetweenRange=RR,c.generateRandomText=PR,c.generateRandomTextAfter=gR,c.generateRandomTextBefore=IR,c.generateRandomTextBetweenRange=DR,c.generateUniqueUUID=TR,c.getAllActionDescriptorsForConditions=$o,c.getAllActionDescriptorsForGlobalEvents=Lo,c.getAllActionDescriptorsForLoops=Go,c.getAllActionDescriptorsForOperations=K2,c.getAllGloballyDeclaredFunctionDeclarationsExplanation=XP,c.getBaseBuiltInEntities=Qn,c.getBaseSchemaBasedOnType=qP,c.getBuiltInEntityOwner=er,c.getCallableEntityReferenceSchema=ze,c.getCallableEntityTypeSchema=fD,c.getCallerEntityReferenceSchema=y3,c.getCallerEntityTypeSchema=p3,c.getCalls=wu,c.getCanvasEntitiesDerivedFromInternalCalls=bA,c.getCanvasEntitiesDerivedFromWrites=wi,c.getCanvasEntityDerivedFromValueReadingEntity=Mu,c.getCanvasEntityReferenceSchema=B3,c.getCanvasEntityTypeSchema=C3,c.getChildrenEntityWithValues=r7,c.getCommonAncestor=Bu,c.getCommonChildren=aA,c.getDeclaration=Sr,c.getDeepestScope=BA,c.getDraggableCallableEntityReferenceSchema=TD,c.getDraggableCallableEntityTypeSchema=mD,c.getDraggableCallerEntityReferenceSchema=f3,c.getDraggableCallerEntityTypeSchema=h3,c.getDraggableExecutableEntityReferenceSchema=b3,c.getDraggableExecutableEntityTypeSchema=E3,c.getDraggablePassThroughCallableEntityReferenceSchema=Eo,c.getDraggablePassThroughCallableEntityTypeSchema=To,c.getDraggablePlayableEntityReferenceSchema=D3,c.getDraggablePlayableEntityTypeSchema=I3,c.getEntityArgumentDeclarations=Nu,c.getEntityInputMaps=TA,c.getEntityOutputMaps=y7,c.getEntityReferenceSchema=S3,c.getEntityReturnDeclarations=EA,c.getEntityTypeSchema=O3,c.getEntityWithLogicScopeReferenceSchema=Dn,c.getEntityWithLogicScopeTypeSchema=R3,c.getEntityWithValueReferenceSchema=hD,c.getEntityWithValueTypeSchema=u3,c.getEntryPointEntityReferenceSchema=Ye,c.getEntryPointEntityTypeSchema=Wn,c.getEventEntityReferenceSchema=fo,c.getEventEntityTypeSchema=ho,c.getExecutableEntityReferenceSchema=T3,c.getExecutableEntityTypeSchema=m3,c.getExtendedBuiltInEntity=h7,c.getExtendedCustomEntity=DA,c.getGenerationTargetSchemaBasedOnType=JP,c.getHeadIfPartOfDetachedBranch=AA,c.getHighestScope=CA,c.getImplementedBuiltInEntity=f7,c.getIsInteractive=Gu,c.getLastInListOperation=ul,c.getLastInListOperationError=th,c.getLastInListOperationErrorParentRef=eh,c.getLastInListOperationInputListArgument=Ky,c.getLastInListOperationInputListArgumentParentRef=Zy,c.getLastInListOperationInputListArgumentRef=Wy,c.getLastInListOperationInputListDataType=Hy,c.getLastInListOperationOutputElementDataType=zy,c.getLastInListOperationOutputElementReturn=Qy,c.getLastInListOperationOutputElementReturnParentRef=Xy,c.getLastInListOperationOutputElementReturnRef=Yy,c.getLinkedEntitiesFromArgumentDeclaration=l7,c.getLowestPersistedEntityImplementation=IA,c.getParentCanvasEntities=Rt,c.getParentCanvasEntity=tt,c.getParentEntryPoint=n7,c.getPassThroughCallableEntityReferenceSchema=Te,c.getPassThroughCallableEntityTypeSchema=mo,c.getPlayableEntityReferenceSchema=g3,c.getPlayableEntityTypeSchema=v3,c.getProject=x7,c.getPrototypeByType=Jo,c.getReferenceEntityId=N,c.getReferencedEntitiesStateOrErrors=No,c.getReferencedEntityStateOrErrors=bu,c.getRelatedCanvasElementsOnTheLeft=jr,c.getRelatedCanvasElementsOnTheRight=Xn,c.getRootEntryPointScopeOwner=Uu,c.getScopeOwner=vt,c.getTerminationReferenceSchema=A3,c.getTerminationTypeSchema=P3,c.getUsedArgFromDeclaration=u7,c.getUsedReturnFromDeclaration=p7,c.getValueReadingEntityReferenceSchema=yD,c.getValueReadingEntityTypeSchema=In,c.getValueWritingEntityReferenceSchema=d3,c.getValueWritingEntityTypeSchema=Aa,c.getVariableFromInputMapping=oA,c.getVariableFromReturnVariablePointer=dA,c.getVariableReferenceSchema=Jn,c.getVariableTypeSchema=gr,c.getVariablesFromArgumentDeclarations=jo,c.getVariablesFromInputMaps=lA,c.getVariablesFromOutputMapping=uA,c.getVariablesFromOutputMaps=pA,c.getVariablesFromReturnDeclarations=cA,c.getVariablesInSameOrHigherScope=cu,c.getWrites=_u,c.groupCallsBasedOnParallelizableExecution=a7,c.handleAfterEntityImplementationSideEffects=rA,c.handleBeforeEntityImplementationSideEffects=nA,c.httpRequestBodyArgument=Xa,c.httpRequestBodyArgumentRef=Gf,c.httpRequestBodyDataType=$f,c.httpRequestHeadersArgument=Ka,c.httpRequestHeadersArgumentRef=Vf,c.httpRequestHeadersDataType=Lf,c.httpRequestMethodArgument=za,c.httpRequestMethodArgumentRef=Nf,c.httpRequestMethodDataType=Mf,c.httpRequestMethodDataTypeRef=wf,c.httpRequestOperation=Mi,c.httpRequestOperationErrorValueDescriptor=bl,c.httpRequestOperationErrorValueDescriptorDatatype=rm,c.httpRequestOperationErrorValueDescriptorRef=nm,c.httpRequestOperationRef=Xf,c.httpRequestOperationRefEight=em,c.httpRequestOperationRefFive=Zf,c.httpRequestOperationRefFour=zf,c.httpRequestOperationRefNine=tm,c.httpRequestOperationRefSeven=Qf,c.httpRequestOperationRefSix=Kf,c.httpRequestOperationRefThree=Yf,c.httpRequestOperationRefTwo=Hf,c.httpRequestQueryParamsArgument=El,c.httpRequestQueryParamsArgumentRef=Cf,c.httpRequestQueryParamsDataType=Bf,c.httpRequestVariableURLArgument=Za,c.httpRequestVariableURLArgumentRef=Of,c.httpRequestVariableURLDataType=Sf,c.httpRequestVariableURLDataTypeRef=Pf,c.httpResponseBodyReturnDataType=Wf,c.httpResponseBodyReturnDataTypeRef=qf,c.httpResponseBodyReturnReturn=ts,c.httpResponseBodyReturnReturnRef=Jf,c.httpResponseCodeDataType=Uf,c.httpResponseCodeReturn=Qa,c.httpResponseCodeReturnRef=Ff,c.httpResponseHeadersDataType=kf,c.httpResponseHeadersDataTypeRef=xf,c.httpResponseHeadersReturn=es,c.httpResponseHeadersReturnRef=jf,c.implement=Fo,c.inferArgumentDeclarationDataType=BP,c.inferDataType=on,c.inferInputMapDataType=su,c.inferOutputMapDataType=lu,c.inferPropertyDataType=NP,c.inferReturnDeclarationDataType=ou,c.inferValueDescriptorDataType=MP,c.inferVariableDeclarationDataType=_P,c.inferVariableInstanceDataType=wP,c.initProject=VA,c.iterateOverListActionDescriptorListArgumentDeclaration=Em,c.iterateOverListActionDescriptorListArgumentDeclarationDataType=mm,c.iterateOverListActionDescriptorListArgumentDeclarationDataTypeParentRef=fm,c.iterateOverListActionDescriptorListArgumentDeclarationParentRef=Tm,c.iterateOverListLoopActionDescriptor=ir,c.iterateOverListLoopActionDescriptorDynamicReturnDeclaration=Rm,c.iterateOverListLoopActionDescriptorDynamicReturnDeclarationParentRef=bm,c.iterateOverListLoopBodyActionDescriptor=rs,c.iterateOverListLoopBodyActionDescriptorAnyDynamicArgument=Cm,c.iterateOverListLoopBodyActionDescriptorAnyDynamicArgumentParentRef=Sm,c.iterateOverListLoopBodyActionDescriptorAnyDynamicReturn=wm,c.iterateOverListLoopBodyActionDescriptorAnyDynamicReturnParentRef=Bm,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclaration=ns,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=gm,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=vm,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=Im,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclaration=Om,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=Pm,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=Dm,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=Am,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclaration=Qm,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclarationDataType=Km,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclarationDataTypeParentRef=Zm,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclarationParentRef=Xm,c.iterateOverObjectKeysLoopActionDescriptor=Li,c.iterateOverObjectKeysLoopActionDescriptorDynamicReturnDeclaration=tT,c.iterateOverObjectKeysLoopActionDescriptorDynamicReturnDeclarationParentRef=eT,c.iterateOverObjectKeysLoopBodyActionDescriptor=yT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicArgument=dT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicArgumentParentRef=cT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicReturn=pT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicReturnParentRef=uT,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclaration=Al,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=rT,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=nT,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=iT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclaration=lT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=sT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=aT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=oT,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclaration=ET,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclarationDataType=mT,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclarationDataTypeParentRef=fT,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclarationParentRef=TT,c.iterateOverObjectValuesLoopActionDescriptor=Gi,c.iterateOverObjectValuesLoopActionDescriptorDynamicReturnDeclaration=RT,c.iterateOverObjectValuesLoopActionDescriptorDynamicReturnDeclarationParentRef=bT,c.iterateOverObjectValuesLoopBodyActionDescriptor=_T,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicArgument=CT,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicArgumentParentRef=ST,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicReturn=wT,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicReturnParentRef=BT,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclaration=Ol,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=gT,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=vT,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=IT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclaration=OT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=PT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=DT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=AT,c.iterateOverStringActionDescriptorDynamicReturnDeclaration=$m,c.iterateOverStringActionDescriptorDynamicReturnDeclarationParentRef=Gm,c.iterateOverStringActionDescriptorStringArgumentDeclaration=Lm,c.iterateOverStringActionDescriptorStringArgumentDeclarationDataType=Mm,c.iterateOverStringActionDescriptorStringArgumentDeclarationDataTypeParentRef=Nm,c.iterateOverStringActionDescriptorStringArgumentDeclarationParentRef=Vm,c.iterateOverStringLoopActionDescriptor=is,c.iterateOverStringLoopBodyActionDescriptor=Pl,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicArgument=Wm,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicArgumentParentRef=Jm,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicReturn=Ym,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicReturnParentRef=Hm,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclaration=Il,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=Um,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=Fm,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=xm,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclaration=Dl,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=km,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=jm,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=qm,c.joinListOperation=ll,c.joinListOperationError=Py,c.joinListOperationErrorParentRef=Dy,c.joinListOperationFirstListArgument=by,c.joinListOperationFirstListArgumentParentRef=Ey,c.joinListOperationFirstListArgumentRef=py,c.joinListOperationFirstListDataType=yy,c.joinListOperationResultListDataType=Ty,c.joinListOperationResultListReturn=Iy,c.joinListOperationResultListReturnParentRef=gy,c.joinListOperationResultListReturnRef=my,c.joinListOperationSecondListArgument=vy,c.joinListOperationSecondListArgumentParentRef=Ry,c.joinListOperationSecondListArgumentRef=hy,c.joinListOperationSecondListDataType=fy,c.joinListWithLastSeparator=U,c.joinStringsOperation=Ni,c.joinStringsOperationDynamicStringArgument=Jp,c.joinStringsOperationDynamicStringArgumentParentRef=qp,c.joinStringsOperationDynamicStringArgumentRef=jp,c.joinStringsOperationDynamicStringDataType=kp,c.joinStringsOperationError=xp,c.joinStringsOperationErrorParentRef=Up,c.joinStringsOperationFirstStringArgument=Wa,c.joinStringsOperationFirstStringArgumentParentRef=wp,c.joinStringsOperationFirstStringArgumentRef=Pp,c.joinStringsOperationFirstStringDataType=Ap,c.joinStringsOperationResultStringDataType=Bp,c.joinStringsOperationResultStringReturn=_i,c.joinStringsOperationResultStringReturnParentRef=Fp,c.joinStringsOperationResultStringReturnRef=Cp,c.joinStringsOperationSecondStringArgument=Ha,c.joinStringsOperationSecondStringArgumentParentRef=$p,c.joinStringsOperationSecondStringArgumentRef=Op,c.joinStringsOperationSecondStringDataType=Sp,c.joinStringsOperationSeparatorStringArgument=Gp,c.joinStringsOperationSeparatorStringArgumentParentRef=Lp,c.joinStringsOperationSeparatorStringArgumentRef=_p,c.joinStringsOperationSeparatorStringDataType=Vp,c.joinStringsOperationSeparatorStringDataTypeDefaultValue=Mp,c.joinStringsOperationSeparatorStringDataTypeDefaultValueParentRef=Np,c.jsonPrototype=el,c.keyValueParamBuiltInBaseEntity=os,c.keyValueParamBuiltInBaseEntityNameProperty=KT,c.keyValueParamBuiltInBaseEntityNamePropertyDataTypeRef=qA,c.keyValueParamBuiltInBaseEntityNamePropertyParentRef=ZT,c.keyValueParamBuiltInBaseEntityNamePropertyRef=zT,c.keyValueParamBuiltInBaseEntityValueProperty=eE,c.keyValueParamBuiltInBaseEntityValuePropertyDataTypeRef=WA,c.keyValueParamBuiltInBaseEntityValuePropertyParentRef=QT,c.keyValueParamBuiltInBaseEntityValuePropertyRef=XT,c.lowercaseFirstLetter=OP,c.manualFlowActionDescriptorDeclarationArgumentDeclaration=vl,c.manualFlowActionDescriptorDeclarationArgumentDeclarationDataType=lm,c.manualFlowActionDescriptorDeclarationArgumentDeclarationDataTypeParentRef=om,c.manualFlowActionDescriptorDeclarationArgumentDeclarationParentRef=cm,c.manualFlowLoopActionDescriptor=Rl,c.manualFlowLoopActionDescriptorDynamicReturnDeclaration=sm,c.manualFlowLoopActionDescriptorDynamicReturnDeclarationParentRef=am,c.manualFlowLoopBodyActionDescriptor=gl,c.manualFlowLoopBodyActionDescriptorAnyDynamicArgument=um,c.manualFlowLoopBodyActionDescriptorAnyDynamicArgumentParentRef=dm,c.manualFlowLoopBodyActionDescriptorAnyDynamicReturn=ym,c.manualFlowLoopBodyActionDescriptorAnyDynamicReturnParentRef=pm,c.mapActionDescriptorToTypeItRepresents=b7,c.mergeEntityErrorsList=c9,c.mergeListOfEntities=T7,c.methodDefaultValue=_f,c.mockClientProject=JI,c.moreThanOrEqualCondition=Xr,c.moreThanOrEqualConditionLeftHandArgument=wb,c.moreThanOrEqualConditionLeftHandArgumentDataType=Cb,c.moreThanOrEqualConditionLeftHandArgumentDataTypeParentRef=Sb,c.moreThanOrEqualConditionLeftHandArgumentParentRef=Bb,c.moreThanOrEqualConditionRightHandArgument=Vb,c.moreThanOrEqualConditionRightHandArgumentDataType=Nb,c.moreThanOrEqualConditionRightHandArgumentDataTypeParentRef=_b,c.moreThanOrEqualConditionRightHandArgumentParentRef=Mb,c.notEmptyCondition=cr,c.notEmptyConditionArgument=Ab,c.notEmptyConditionRef=Pb,c.nullPrototype=UA,c.numberAdditionOperation=Ja,c.numberAdditionOperationDynamicSummandArgument=op,c.numberAdditionOperationDynamicSummandArgumentType=sp,c.numberAdditionOperationDynamicSummandArgumentTypeParentRef=ap,c.numberAdditionOperationError=ip,c.numberAdditionOperationErrorParentRef=rp,c.numberAdditionOperationFirstNumberArgument=tl,c.numberAdditionOperationFirstNumberArgumentRef=zu,c.numberAdditionOperationFirstNumberDataType=Zu,c.numberAdditionOperationRef=tp,c.numberAdditionOperationRefThree=rl,c.numberAdditionOperationRefTwo=np,c.numberAdditionOperationResultNumberDataType=ep,c.numberAdditionOperationResultNumberReturn=il,c.numberAdditionOperationResultNumberReturnRef=Qu,c.numberAdditionOperationSecondNumberArgument=nl,c.numberAdditionOperationSecondNumberArgumentRef=Ku,c.numberAdditionOperationSecondNumberDataType=Xu,c.numberPrototype=X,c.numberSubtractionOperation=sl,c.numberSubtractionOperationDynamicSubtrahendArgument=Ip,c.numberSubtractionOperationDynamicSubtrahendArgumentType=gp,c.numberSubtractionOperationDynamicSubtrahendArgumentTypeParentRef=vp,c.numberSubtractionOperationError=Rp,c.numberSubtractionOperationErrorParentRef=bp,c.numberSubtractionOperationFirstNumberArgument=hp,c.numberSubtractionOperationFirstNumberArgumentRef=lp,c.numberSubtractionOperationFirstNumberDataType=cp,c.numberSubtractionOperationRef=al,c.numberSubtractionOperationRefThree=Tp,c.numberSubtractionOperationRefTwo=fp,c.numberSubtractionOperationResultNumberDataType=yp,c.numberSubtractionOperationResultNumberReturn=Ep,c.numberSubtractionOperationResultNumberReturnRef=pp,c.numberSubtractionOperationSecondNumberArgument=mp,c.numberSubtractionOperationSecondNumberArgumentRef=dp,c.numberSubtractionOperationSecondNumberDataType=up,c.numberValueAutogenerationSchema=rd,c.parallelExecutionOperation=Wt,c.parallelExecutionOperationError=Ch,c.parallelExecutionOperationErrorParentRef=Sh,c.parallelExecutionOperationListOfExecutionResultsDataType=Ph,c.parallelExecutionOperationListOfExecutionResultsReturn=fl,c.parallelExecutionOperationListOfExecutionResultsReturnRef=Dh,c.parallelExecutionOperationListOfFunctionsArgument=hl,c.parallelExecutionOperationListOfFunctionsArgumentDatatype=Ih,c.parallelExecutionOperationListOfFunctionsArgumentRef=gh,c.parallelExecutionOperationListOfFunctionsBlueprint=vh,c.parallelExecutionOperationListOfFunctionsBlueprintDynamicInput=Rh,c.parallelExecutionOperationListOfFunctionsBlueprintDynamicOutput=bh,c.parallelExecutionOperationRef=Ah,c.parallelExecutionOperationRefThree=Oh,c.persistedBuiltInBaseEntity=ke,c.persistedBuiltInBaseEntityCreatedAtProperty=hb,c.persistedBuiltInBaseEntityCreatedAtPropertyDataType=pb,c.persistedBuiltInBaseEntityCreatedAtPropertyDataTypeRef=sO,c.persistedBuiltInBaseEntityCreatedAtPropertyParentRef=yb,c.persistedBuiltInBaseEntityCreatedAtPropertyRef=ub,c.persistedBuiltInBaseEntityDatabaseProperty=Ui,c.persistedBuiltInBaseEntityDatabasePropertyDataTypeRef=nO,c.persistedBuiltInBaseEntityDatabasePropertyParentRef=nb,c.persistedBuiltInBaseEntityDatabasePropertyRef=tb,c.persistedBuiltInBaseEntityDeletedAtProperty=db,c.persistedBuiltInBaseEntityDeletedAtPropertyDataType=lb,c.persistedBuiltInBaseEntityDeletedAtPropertyDataTypeRef=aO,c.persistedBuiltInBaseEntityDeletedAtPropertyParentRef=cb,c.persistedBuiltInBaseEntityDeletedAtPropertyRef=ob,c.persistedBuiltInBaseEntityIdentifierProperty=sb,c.persistedBuiltInBaseEntityIdentifierPropertyDataTypeRef=rb,c.persistedBuiltInBaseEntityIdentifierPropertyParentRef=ab,c.persistedBuiltInBaseEntityIdentifierPropertyRef=ib,c.persistedBuiltInBaseEntityUpdatedAtProperty=Eb,c.persistedBuiltInBaseEntityUpdatedAtPropertyDataType=mb,c.persistedBuiltInBaseEntityUpdatedAtPropertyDataTypeRef=oO,c.persistedBuiltInBaseEntityUpdatedAtPropertyParentRef=Tb,c.persistedBuiltInBaseEntityUpdatedAtPropertyRef=fb,c.processOutputGlobalValueDescriptorDataType=$b,c.processOutputGlobalValueDescriptorReturn=Yl,c.processOutputGlobalValueDescriptorReturnRef=Gb,c.projectPublicationCompletedGlobalEvent=ys,c.propertyToZodSchema=Qb,c.relationalDatabaseBuiltInBaseEntity=Mn,c.relationalDatabaseBuiltInBaseEntityAutoscalingProperty=xl,c.relationalDatabaseBuiltInBaseEntityAutoscalingPropertyDataTypeRef=zE,c.relationalDatabaseBuiltInBaseEntityAutoscalingPropertyParentRef=ZE,c.relationalDatabaseBuiltInBaseEntityAutoscalingPropertyRef=YE,c.relationalDatabaseBuiltInBaseEntityDefaultProperty=Ul,c.relationalDatabaseBuiltInBaseEntityDefaultPropertyDataTypeRef=WE,c.relationalDatabaseBuiltInBaseEntityDefaultPropertyRef=HE,c.relationalDatabaseBuiltInBaseEntityIdentifierProperty=cs,c.relationalDatabaseBuiltInBaseEntityIdentifierPropertyDataTypeRef=UE,c.relationalDatabaseBuiltInBaseEntityIdentifierPropertyRef=xE,c.relationalDatabaseBuiltInBaseEntityMinSizeProperty=ps,c.relationalDatabaseBuiltInBaseEntityMinSizePropertyDataTypeRef=qE,c.relationalDatabaseBuiltInBaseEntityMinSizePropertyRef=JE,c.relationalDatabaseBuiltInBaseEntityPasswordProperty=us,c.relationalDatabaseBuiltInBaseEntityPasswordPropertyDataTypeRef=KA,c.relationalDatabaseBuiltInBaseEntityPasswordPropertyRef=kE,c.relationalDatabaseBuiltInBaseEntityRef=Zr,c.relationalDatabaseBuiltInBaseEntityUsernameProperty=ds,c.relationalDatabaseBuiltInBaseEntityUsernamePropertyDataTypeRef=zA,c.relationalDatabaseBuiltInBaseEntityUsernamePropertyRef=jE,c.resolveActionDescriptorName=xP,c.resolveBaseEntityName=LP,c.resolveBuiltInBaseEntityDataTypeLabel=GP,c.resolveConditionOperatorLabel=Co,c.resolveCustomEntityDataTypeLabel=$P,c.resolveDataType=Oo,c.resolveDataTypeEntityOrNestedChildrenFromLiteralValue=Cu,c.resolveDataTypeLabel=du,c.resolveEntityDataTypeLabel=K5,c.resolveEntityName=C,c.resolveFirstCallsSecond=s7,c.resolveFirstWritesSecond=o7,c.resolvePrimitiveEntityName=UP,c.resolveSearchName=FP,c.resolveVariableScope=Y5,c.sequentialExecutionOperation=mn,c.sequentialExecutionOperationError=zh,c.sequentialExecutionOperationErrorParentRef=Yh,c.sequentialExecutionOperationListOfExecutionResultsDataType=Jh,c.sequentialExecutionOperationListOfExecutionResultsReturn=Tl,c.sequentialExecutionOperationListOfExecutionResultsReturnParentRef=Hh,c.sequentialExecutionOperationListOfExecutionResultsReturnRef=qh,c.sequentialExecutionOperationListOfFunctionsArgument=ml,c.sequentialExecutionOperationListOfFunctionsArgumentDatatype=kh,c.sequentialExecutionOperationListOfFunctionsArgumentParentRef=Wh,c.sequentialExecutionOperationListOfFunctionsArgumentRef=jh,c.sequentialExecutionOperationListOfFunctionsBlueprint=xh,c.sequentialExecutionOperationListOfFunctionsBlueprintDynamicInput=Uh,c.sequentialExecutionOperationListOfFunctionsBlueprintDynamicOutput=Fh,c.softDeletePersistedEntityMethod=QE,c.softDeletePersistedEntityMethodParentRef=XE,c.sortCallsBasedOnExecutionDependencies=sA,c.sortChildrenEntitiesBasedOnExecutionDependencies=i7,c.splitListOperation=dl,c.splitListOperationError=ky,c.splitListOperationErrorParentRef=jy,c.splitListOperationFirstOutputListDataType=_y,c.splitListOperationFirstOutputListReturn=$y,c.splitListOperationFirstOutputListReturnParentRef=Gy,c.splitListOperationFirstOutputListReturnRef=cl,c.splitListOperationInputListArgument=My,c.splitListOperationInputListArgumentParentRef=Ny,c.splitListOperationInputListArgumentRef=Sy,c.splitListOperationInputListDataType=Cy,c.splitListOperationSecondOutputListDataType=Fy,c.splitListOperationSecondOutputListReturn=xy,c.splitListOperationSecondOutputListReturnParentRef=Uy,c.splitListOperationSplitIndexArgument=Ly,c.splitListOperationSplitIndexArgumentParentRef=Vy,c.splitListOperationSplitIndexArgumentRef=By,c.splitListOperationSplitIndexDataType=wy,c.splitStringOperation=ol,c.splitStringOperationError=ly,c.splitStringOperationErrorParentRef=oy,c.splitStringOperationFirstPartResultStringDataType=Kp,c.splitStringOperationFirstPartResultStringReturn=sy,c.splitStringOperationFirstPartResultStringReturnParentRef=ay,c.splitStringOperationFirstPartResultStringReturnRef=Zp,c.splitStringOperationIndexArgument=ry,c.splitStringOperationIndexArgumentParentRef=ny,c.splitStringOperationIndexArgumentRef=Yp,c.splitStringOperationIndexDataType=zp,c.splitStringOperationSecondPartResultStringDataType=Qp,c.splitStringOperationSecondPartResultStringReturn=xA,c.splitStringOperationSecondPartResultStringReturnParentRef=iy,c.splitStringOperationSecondPartResultStringReturnRef=Xp,c.splitStringOperationStringArgument=ty,c.splitStringOperationStringArgumentParentRef=ey,c.splitStringOperationStringArgumentRef=Wp,c.splitStringOperationStringDataType=Hp,c.stringPrototype=x,c.stringValueAutogenerationSchema=nd,c.suggestNewIdForEntity=mu,c.test_primitive_entities_export=k7,c.toCamelCase=z5,c.toEntityState=Nt,c.toKebabCase=VP,c.toLowerCaseKebabCase=So,c.toPascalCase=Z5,c.untypedObjectPrototype=Xe,c.updateErrorsList=ie,c.updateValueReader=ja,c.urlDefaultValue=Af,c.uuidPrototype=qa,c.validateArgumentDeclarationName=hu,c.validateCalledByErrorIdInAction=z2,c.validateCalledByIdInAction=Y2,c.validateCallers=KP,c.validateConditionEntityDeclaration=X2,c.validateCustomEntityName=Bo,c.validateDataOperation=rr,c.validateDataOperationDataToValidateArgument=ff,c.validateDataOperationDataToValidateArgumentParentRef=hf,c.validateDataOperationDataToValidateArgumentRef=pf,c.validateDataOperationDataToValidateDataType=yf,c.validateDataOperationEntityToMatchTypeArgument=bf,c.validateDataOperationEntityToMatchTypeArgumentParentRef=Ef,c.validateDataOperationEntityToMatchTypeArgumentRef=mf,c.validateDataOperationEntityToMatchTypeDataType=Tf,c.validateDataOperationError=If,c.validateDataOperationErrorParentRef=gf,c.validateDataOperationOutputEntityDeclaration=vf,c.validateDataOperationOutputEntityDeclarationParentRef=Rf,c.validateEntryCaller=ZP,c.validateErrorCaller=zP,c.validateFunctionCallDeclaration=QP,c.validateFunctionDeclarationName=uu,c.validateGeneratedEntityParentIsNotBuiltInEntity=q2,c.validateGeneration=j2,c.validateGenerationTarget=Ve,c.validateGenerationUpdate=k2,c.validateLoopEntityDeclaration=Q2,c.validateName=X5,c.validateOperationEntityDeclaration=eA,c.validatePropertyName=yu,c.validateReachability=Cn,c.validateReadsValueInActionPayload=Z2,c.validateReferenceObject=_o,c.validateReferenceToOne=Ru,c.validateReferences=He,c.validateReturnDeclarationName=fu,c.validateSuccessCaller=YP,c.validateValueReaderGenerationUpdate=Fa,c.validateValueWritter=Au,c.validateVariableDeclarationName=pu,c.validateVariableInternalCallUse=Ou,c.valueAutogenerationCurrentDateAndTimeSchema=HI,c.valueAutogenerationGenericSchema=Xs,c.valueAutogenerationOptions=ad,c.valueAutogenerationOptionsSchema=WI,c.valueAutogenerationRandomBooleanSchema=td,c.valueAutogenerationRandomDateBetweenSchema=nD,c.valueAutogenerationRandomDateFromSchema=eD,c.valueAutogenerationRandomDateSchema=to,c.valueAutogenerationRandomDateUntilSchema=tD,c.valueAutogenerationRandomNumberBetweenSchema=ZI,c.valueAutogenerationRandomNumberFromSchema=YI,c.valueAutogenerationRandomNumberSchema=Qs,c.valueAutogenerationRandomNumberUntilSchema=zI,c.valueAutogenerationRandomSchema=ba,c.valueAutogenerationRandomTextBetweenSchema=QI,c.valueAutogenerationRandomTextFromSchema=KI,c.valueAutogenerationRandomTextSchema=eo,c.valueAutogenerationRandomTextUntilSchema=XI,c.valueAutogenerationRangeValueTypesSchema=Ea,c.valueAutogenerationUniqueSchema=ed,c.waitOperation=pt,c.waitOperationMillisecondsNumberArgument=tr,c.waitOperationMillisecondsNumberArgumentRef=_h,c.waitOperationMillisecondsNumberDataType=Nh,c.waitOperationOperationError=Lh,c.waitOperationOperationErrorParentRef=Vh,c.waitOperationRef=Mh,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})});
371
+ Alternatively you can update the parent data-type entity with 'update' action to remove the existing value of the field.`,issue:null}))}return{errors:a,modifiedData:i}}get extendedProperties(){return b([...this.extends.reduce((e,t)=>[...[...t.properties,...t.extendedProperties].filter(a=>!a.abstract),...e],[]),...this.implements.reduce((e,t)=>[...[...t.properties,...t.extendedProperties].filter(a=>!a.abstract),...e],[])])}validateGeneratedUpdate(e){const t=[];return e.parent&&t.push(new E({id:`${this.id}--${f.InvalidParentUpdate}`,code:f.InvalidParentUpdate,severity:T.Error,message:`Entity of type '${this.type}' with id '${this.id}' cannot have the 'parent' property updated. The 'parent' on an '${this.type}', must be the root project as it is a globally declared entity.`,issue:null})),{errors:t,modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];if(this.parent.type===n.DataType){const a=this.parent;a.entity=this,e.push(a)}else this.project.addCustomEntity(this);return{updated:b(e),added:b(t),removed:b(i),self:this}}setParent(e){return this.parent=e,this}removeProperty(e){return this.properties=this.properties.filter(t=>t.id!==e.id),this}addMethod(e){return this.methods.includes(e)||(this.methods.push(e),this.suggestedMethods=this.suggestedMethods.filter(t=>t.name!==e.name)),this}removeMethod(e){return this.methods=this.methods.filter(t=>t.id!==e.id),this}addProperty(e){return this.properties.includes(e)||(this.properties.push(e),this.suggestedProperties=this.suggestedProperties.filter(t=>t.name!==e.name)),this}addSuggestedProperty(e){return this.suggestedProperties.includes(e)||this.suggestedProperties.push(e),this}addSuggestedMethod(e){return this.suggestedMethods.includes(e)||this.suggestedMethods.push(e),this}removeSuggestedProperty(e){return this.suggestedProperties=this.suggestedProperties.filter(t=>t.id!==e.id),this}removeSuggestedMethod(e){return this.suggestedMethods=this.suggestedMethods.filter(t=>t.id!==e.id),this}addAbstractMethod(e){return this.abstractMethods.includes(e)||this.abstractMethods.push(e),this}removeAbstractMethod(e){return this.abstractMethods=this.abstractMethods.filter(t=>t.id!==e.id),this}initChildren(){return this.initialized?this:(this.initialized=!0,this.properties=this.initialData.properties.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.methods=this.initialData.methods.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.abstractMethods=this.initialData.abstractMethods.map(e=>{const t=v(e,this.project);return t.setParent(this),t.initChildren(),t}),this.extends=this.initialData.extends.map(e=>v(e,this.project)),this.implements=this.initialData.implements.map(e=>v(e,this.project)),this.addSuggestions(),this)}addSuggestions(){return this.implements.forEach(e=>{Z3(this,e).forEach(a=>{const s=a.toJSON();s.id=`_suggestion--parent--${this.id}--${a.id}`;const o=v(s,this.project);o.suggestion=!0,o.setParent(this),o.initChildren(),this.addSuggestedProperty(o)}),K3(this,e).forEach(a=>{const s=`_suggestion--parent--${this.id}--${a.id}`,o=a.implementAsFunctionDeclaration(s),l=v(o,this.project);if(l.suggestion=!0,l.setParent(this),l.initChildren(),l.inputs.forEach(p=>{p.suggestion=!0}),l.returnStatements.length){const p=l.returnStatements[0];p.suggestion=!0,p.outputs.forEach(y=>{y.suggestion=!0})}this.addSuggestedMethod(l)})}),this}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.x=e.x||this.x,this.y=e.y||this.y,this.static=e.static||this.static,this.abstract=e.abstract||this.abstract,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){const i=[],a=[];return t.has(this.id)?{affected:[],removed:[]}:(t.add(this.id),a.push(this),this.unsubscribe(),this.properties.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.methods.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.abstractMethods.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.suggestedProperties.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),this.suggestedMethods.forEach(s=>{const{affected:o,removed:l}=s.remove({ignoreUpstream:!0,seenEntities:t});i.push(...o),a.push(...l)}),{affected:b(i),removed:b(a)})}restore({seenEntities:e}={seenEntities:new Set}){const t=[];return e.has(this.id)?{affected:[],self:this}:(e.add(this.id),this.subscribe(),this.properties.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.methods.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.abstractMethods.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.suggestedProperties.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),this.suggestedMethods.forEach(i=>{const{affected:a}=i.restore({seenEntities:e});t.push(...a)}),{affected:b(t),self:this})}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.extends.flatMap(i=>i.toFlat(e)),...this.implements.flatMap(i=>i.toFlat(e)),...this.properties.flatMap(i=>i.toFlat(e)),...this.methods.flatMap(i=>i.toFlat(e)),...this.abstractMethods.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.extends.flatMap(i=>i.toFlatIds(e)),...this.implements.flatMap(i=>i.toFlatIds(e)),...this.properties.flatMap(i=>i.toFlatIds(e)),...this.methods.flatMap(i=>i.toFlatIds(e)),...this.abstractMethods.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,x:this.x,y:this.y,static:this.static,abstract:this.abstract,properties:this.properties.map(e=>e.toJSON()),methods:this.methods.map(e=>e.toJSON()),abstractMethods:this.abstractMethods.map(e=>e.toJSON()),implements:this.implements.map(e=>e.toJSON()),extends:this.extends.map(e=>e.toJSON()),parent:this.parent.toReference()}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,name:this.name,description:this.description,type:this.type,x:this.x,y:this.y,static:this.static,abstract:this.abstract,properties:this.properties.map(e=>e.toReference()),methods:this.methods.map(e=>e.toReference()),abstractMethods:this.abstractMethods.map(e=>e.toReference()),implements:this.implements.map(e=>e.toReference()),extends:this.extends.map(e=>e.toReference()),parent:this.parent.toReference()}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.properties.flatMap(i=>i.toFlatJSON(e)),...this.methods.flatMap(i=>i.toFlatJSON(e)),...this.abstractMethods.flatMap(i=>i.toFlatJSON(e)),...this.implements.flatMap(i=>i.toFlatJSON(e)),...this.extends.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){const e=this.parent.type===n.Project?void 0:this.parent.id;return{id:this.id,name:this.name,description:this.description,type:this.type,static:this.static,abstract:this.abstract,extends:this.extends.map(t=>t.id),implements:this.implements.map(t=>t.id),parent:e}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.properties.flatMap(i=>i.toFlatGenerationTarget(e)),...this.methods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.abstractMethods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.implements.filter(i=>i.type===n.CustomEntity).flatMap(i=>i.toFlatGenerationTarget(e)),...this.implements.filter(i=>i.type===n.CustomEntity).flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.properties.forEach(e=>e.clearErrors()),this.methods.forEach(e=>e.clearErrors()),this.abstractMethods.forEach(e=>e.clearErrors()),this}validate(){return this.errors=z3(this),{success:!0,error:null,data:null}}getErrors(){return[...this.errors,...this.properties.flatMap(t=>t.getErrors()),...this.methods.flatMap(t=>t.getErrors()),...this.abstractMethods.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(e=null,t=null,i=!0){var R,g,D;const a=this.toJSON(),s=t||Ze(C(this,this.project),n.CustomEntity,this.project);a.properties=[],a.methods=[],a.abstractMethods=[];const o=s.split("-id"),l=o[o.length-1||0]||s;a.id=s;const p=kt(a,this.project);e&&p.setParent(e),i&&p.subscribe(),p.initChildren();const y=(R=this.properties)==null?void 0:R.map((A,I)=>A.clone(p,l+"-property-"+I+"-id",i));p.properties=y;const h=(g=this.methods)==null?void 0:g.map((A,I)=>A.clone(p,l+"-method-"+I+"-id",i));p.methods=h;const m=(D=this.abstractMethods)==null?void 0:D.map((A,I)=>A.clone(p,l+"-abstract-method-"+I+"-id",i));return p.abstractMethods=m,p}getFunctionDeclaration(e){return this.methods.find(t=>t.id===e)}implement(e,t){return Fo(this,e,t)}getAllInteractiveMethods(){const e=this.implements.filter(i=>i.type===n.CustomEntity||i.type===n.BuiltInBaseEntity&&i.interactive);return b([...this.methods,...this.extends.flatMap(i=>i.getAllInteractiveMethods()),...e.flatMap(i=>i.getAllInteractiveMethods())])}inferFromInputs(e){if(this.parent.type!==n.DataType||!this.parent.inferred)return this;const t=[];e.forEach(s=>{t.find(l=>C(l,this.project)===C(s,this.project))||t.push(s)});const i=this.properties.filter(s=>!s.getDataType());t.forEach(s=>{const o=i.find(m=>C(m,this.project)===C(s,this.project));if(!o)return;const p=Sr(s.parent).getMasterInputWithValueWritterFromAllInstances(s),y=on(p),h=y==null?void 0:y.clone(o,o.id+"--data-type",!0);h&&o.setDataType(h),s.setDeclaration(o)});const a=[];return t.forEach(s=>{if(!s.declaration){a.push(s);return}}),a.length===0?this:(a.forEach(s=>{const o=this.properties.find(g=>C(g,this.project)===C(s,this.project));if(o){if(s.setDeclaration(o),!o.getDataType()){const D=Sr(s.parent).getMasterInputWithValueWritterFromAllInstances(s),A=on(D),I=A==null?void 0:A.clone(o,o.id+"--data-type",!0);I&&o.setDataType(I)}return}const l={id:s.id+"--inferred-property",type:n.Property,version:1,name:C(s,this.project),description:s.description,static:!0,abstract:!1,private:!1,hidden:!1,required:!1,index:s.index,implements:null,dataType:null,parent:this.toReference()},p=v(l,this.project);p.setParent(this),p.initChildren();const h=Sr(s.parent).getMasterInputWithValueWritterFromAllInstances(s),m=on(h),R=m==null?void 0:m.clone(p,l.id+"--data-type",!0);return R&&p.setDataType(R),this.addProperty(p),s.setDeclaration(p),p}),this)}};d(_e,"MUTABLE_BASE_PROPERTIES",["name","description","static","abstract"]),d(_e,"INMUTABLE_BASE_PROPERTIES",["id","version","type"]),d(_e,"BASE_PROPERTIES",[..._e.MUTABLE_BASE_PROPERTIES,..._e.INMUTABLE_BASE_PROPERTIES]),d(_e,"MUTABLE_META_PROPERTIES",[..._e.MUTABLE_BASE_PROPERTIES,"x","y"]),d(_e,"INMUTABLE_META_PROPERTIES",[..._e.INMUTABLE_BASE_PROPERTIES]),d(_e,"META_PROPERTIES",[..._e.MUTABLE_META_PROPERTIES,..._e.INMUTABLE_META_PROPERTIES]),d(_e,"MUTABLE_UPSTREAM_PROPERTIES",["extends","implements"]),d(_e,"INMUTABLE_UPSTREAM_PROPERTIES",["parent"]),d(_e,"UPSTREAM_PROPERTIES",[..._e.MUTABLE_UPSTREAM_PROPERTIES,..._e.INMUTABLE_UPSTREAM_PROPERTIES]),d(_e,"MUTABLE_DOWNSTREAM_PROPERTIES",["properties","methods","abstractMethods"]),d(_e,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(_e,"DOWNSTREAM_PROPERTIES",[..._e.MUTABLE_DOWNSTREAM_PROPERTIES,..._e.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(_e,"PROPERTIES",[..._e.META_PROPERTIES,..._e.UPSTREAM_PROPERTIES,..._e.DOWNSTREAM_PROPERTIES]);let kr=_e;function v7(r){const e=A9(),t=r.toJSON();e.safeParse(t).success;const a=[];return ie(r.errors,a)}class xt{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"type",n.BuiltInBaseEntity);d(this,"abstract",!1);d(this,"static");d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"interactive",!1);d(this,"errors",[]);d(this,"project");this.initialData=this.initialData||e,this.project=this.project||t,this.id=this.id||e.id,this.version=this.version||e.version,this.name=this.name||e.name,this.static=this.static||e.static,this.interactive=this.interactive||e.interactive,this.abstract=e.abstract,this.properties=this.initialData.properties.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.methods=this.initialData.methods.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.abstractMethods=this.initialData.abstractMethods.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.extends=this.initialData.extends.map(i=>v(i,this.project))}get extendedProperties(){return b(this.extends.reduce((e,t)=>{const i=[...t.properties,...t.extendedProperties].filter(a=>!a.abstract);return[...e,...i]},[]))}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}async load(){return this}remove(e={ignoreUpstream:!1,seenEntities:new Set}){return{affected:[],removed:[]}}restore({seenEntities:e}={seenEntities:new Set}){return{affected:[],self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.properties.flatMap(i=>i.toFlat(e)),...this.methods.flatMap(i=>i.toFlat(e)),...this.abstractMethods.flatMap(i=>i.toFlat(e)),...this.extends.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.properties.flatMap(i=>i.toFlatIds(e)),...this.methods.flatMap(i=>i.toFlatIds(e)),...this.abstractMethods.flatMap(i=>i.toFlatIds(e)),...this.extends.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,abstract:this.abstract,static:this.static,interactive:this.interactive,properties:this.properties.map(e=>e.toJSON()),methods:this.methods.map(e=>e.toJSON()),abstractMethods:this.abstractMethods.map(e=>e.toJSON()),extends:this.extends.map(e=>e.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,abstract:this.abstract,static:this.static,interactive:this.interactive,properties:this.properties.map(e=>e.toReference()),methods:this.methods.map(e=>e.toReference()),abstractMethods:this.abstractMethods.map(e=>e.toReference()),extends:this.extends.map(e=>e.toReference())}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.properties.flatMap(i=>i.toFlatJSON(e)),...this.methods.flatMap(i=>i.toFlatJSON(e)),...this.abstractMethods.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,name:this.name,description:this.description,static:this.static,abstract:this.abstract,interactive:this.interactive,extends:this.extends.map(e=>e.id)}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.properties.flatMap(i=>i.toFlatGenerationTarget(e)),...this.methods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.abstractMethods.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.properties.forEach(e=>e.clearErrors()),this.methods.forEach(e=>e.clearErrors()),this.abstractMethods.forEach(e=>e.clearErrors()),this}validate(){const e=v7(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.properties.flatMap(t=>t.getErrors()),...this.methods.flatMap(t=>t.getErrors()),...this.abstractMethods.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new xt(this.toJSON(),this.project)}implement(e,t){return Fo(this,e,t)}getAllInteractiveMethods(){const e=[];return this.interactive&&(e.push(...this.methods),this.extends.filter(i=>i.type===n.BuiltInBaseEntity&&i.interactive||i.type===n.PrimitiveEntity).forEach(i=>{i instanceof xt&&e.push(...i.getAllInteractiveMethods())})),b(e)}}function g7(r){const e=T9(),t=r.toJSON();e.safeParse(t).success;const a=[];return ie(r.errors,a)}class jt{constructor(e,t){d(this,"initialData");d(this,"id");d(this,"version");d(this,"name");d(this,"description",null);d(this,"type",n.PrimitiveEntity);d(this,"static");d(this,"abstract");d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"errors",[]);d(this,"project");this.initialData=e,this.project=t,this.id=e.id,this.version=e.version,this.name=e.name,this.static=e.static,this.abstract=e.abstract,this.properties=this.initialData.properties.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.methods=this.initialData.methods.map(i=>{const a=v(i,this.project);return a.parent=this,a}),this.abstractMethods=this.initialData.abstractMethods.map(i=>{const a=v(i,this.project);return a.parent=this,a})}get extendedProperties(){return b(this.extends.reduce((e,t)=>{const i=[...t.properties,...t.extendedProperties].filter(a=>!a.abstract);return[...e,...i]},[]))}subscribe(){return this.project.subscribeInstance(this),this}unsubscribe(){return this.project.unsubscribeInstance(this),this}async load(){return this}remove({ignoreUpstream:e,seenEntities:t}={ignoreUpstream:!1,seenEntities:new Set}){return{affected:[],removed:[]}}restore({seenEntities:e}={seenEntities:new Set}){return{affected:[],self:this}}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this,...this.properties.flatMap(i=>i.toFlat(e)),...this.methods.flatMap(i=>i.toFlat(e)),...this.abstractMethods.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.id,...this.properties.flatMap(i=>i.toFlatIds(e)),...this.methods.flatMap(i=>i.toFlatIds(e)),...this.abstractMethods.flatMap(i=>i.toFlatIds(e))])}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,static:this.static,abstract:this.abstract,properties:this.properties.map(e=>e.toJSON()),methods:this.methods.map(e=>e.toJSON()),abstractMethods:this.abstractMethods.map(e=>e.toJSON()),extends:this.extends.map(e=>e.toJSON())}}toReference(){return{id:this.id+"--"+_.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,abstract:this.abstract,static:this.static,properties:this.properties.map(e=>e.toReference()),methods:this.methods.map(e=>e.toReference()),abstractMethods:this.abstractMethods.map(e=>e.toReference()),extends:this.extends.map(e=>e.toReference())}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toShallowJSON(),...this.properties.flatMap(i=>i.toFlatJSON(e)),...this.methods.flatMap(i=>i.toFlatJSON(e)),...this.abstractMethods.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,name:this.name,description:this.description,static:this.static,abstract:this.abstract,extends:this.extends.map(e=>e.id)}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[this.toGenerationTarget(),...this.properties.flatMap(i=>i.toFlatGenerationTarget(e)),...this.methods.flatMap(i=>i.toFlatGenerationTarget(e)),...this.abstractMethods.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.properties.forEach(e=>e.clearErrors()),this.methods.forEach(e=>e.clearErrors()),this.abstractMethods.forEach(e=>e.clearErrors()),this}validate(){const e=g7(this);return this.errors=e,{success:!0,error:null,data:this.toJSON()}}getErrors(){return[...this.errors,...this.properties.flatMap(t=>t.getErrors()),...this.methods.flatMap(t=>t.getErrors()),...this.abstractMethods.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new jt(this.toJSON(),this.project)}getAllInteractiveMethods(){const e=[];return e.push(...this.methods),this.extends.filter(i=>i.type===n.BuiltInBaseEntity&&i.interactive||i.type===n.PrimitiveEntity).forEach(i=>{i instanceof xt&&e.push(...i.getAllInteractiveMethods())}),b(e)}}function kt(r,e){if(!r)throw new Error("Entity is null");const t=e.get(r.id);switch(r.type){case n.PrimitiveValue:return t||new Ci(r,e);case n.CustomEntity:return t||new kr(r,e);case n.PrimitiveEntity:return t||new jt(r,e);case n.FunctionDeclaration:return t||new Br(r,e);case n.GlobalEvent:return t||new Oi(r,e);case n.DataType:return t||new Ai(r,e);case n.Property:return t||new Cr(r,e);case n.FunctionCall:return t||new xr(r,e);case n.Condition:return t||new Nr(r,e);case n.Operation:return t||new wr(r,e);case n.VariableDeclaration:return t||new Mr(r,e);case n.VariableInstance:return t||new Vr(r,e);case n.OutputMap:return t||new Sn(r,e);case n.ReturnDeclaration:return t||new _t(r,e);case n.ArgumentDeclaration:return t||new $r(r,e);case n.InputMap:return t||new On(r,e);case n.Project:return t||new _(r);case n.InstalledProject:return t||new Gr(r,e);case n.ActionDescriptor:return t||new te(r,e);case n.ReturnStatement:return t||new Fr(r,e);case n.Loop:return t||new _r(r,e);case n.Search:return t||new Lr(r,e);case n.ValueDescriptor:return t||new Ur(r,e);case n.BuiltInBaseEntity:return t||new xt(r,e);case n.InternalCall:return t||new Si(r,e);case n.ContinueStatement:return t||new bt(r,e);case n.BreakStatement:return t||new Bi(r,e);default:throw new Error("Invalid entity type: "+r.type)}}function v(r,e){if(!r)throw new Error("Entity is null");const t=kt(r,e);return t.subscribe(),t}function I7(r,e){if(!r)throw new Error("Entity is null");switch(r.type){case n.PrimitiveValue:return Ci.fromGenerationTarget(r,e);case n.CustomEntity:return kr.fromGenerationTarget(r,e);case n.FunctionDeclaration:return Br.fromGenerationTarget(r,e);case n.GlobalEvent:return Oi.fromGenerationTarget(r,e);case n.DataType:return Ai.fromGenerationTarget(r,e);case n.Property:return Cr.fromGenerationTarget(r,e);case n.FunctionCall:return xr.fromGenerationTarget(r,e);case n.Condition:return Nr.fromGenerationTarget(r,e);case n.Operation:return wr.fromGenerationTarget(r,e);case n.VariableDeclaration:return Mr.fromGenerationTarget(r,e);case n.VariableInstance:return Vr.fromGenerationTarget(r,e);case n.OutputMap:return Sn.fromGenerationTarget(r,e);case n.ReturnDeclaration:return _t.fromGenerationTarget(r,e);case n.ArgumentDeclaration:return $r.fromGenerationTarget(r,e);case n.InputMap:return On.fromGenerationTarget(r,e);case n.InstalledProject:return Gr.fromGenerationTarget(r,e);case n.ReturnStatement:return Fr.fromGenerationTarget(r,e);case n.Loop:return _r.fromGenerationTarget(r,e);case n.Search:return Lr.fromGenerationTarget(r,e);case n.ActionDescriptor:return te.fromGenerationTarget(r,e);case n.ValueDescriptor:return Ur.fromGenerationTarget(r,e);case n.InternalCall:return Si.fromGenerationTarget(r,e);case n.ContinueStatement:return bt.fromGenerationTarget(r,e);case n.BreakStatement:return Bi.fromGenerationTarget(r,e);default:throw new Error("Invalid entity type: "+r.type)}}const ee=class ee{constructor(e){d(this,"initialData");d(this,"id");d(this,"version");d(this,"type",n.Project);d(this,"name",null);d(this,"description",null);d(this,"x");d(this,"y");d(this,"entities",[]);d(this,"projects",[]);d(this,"functions",[]);d(this,"events",[]);d(this,"variableDeclarations",[]);d(this,"variableInstances",[]);d(this,"conditions",[]);d(this,"operations",[]);d(this,"functionCalls",[]);d(this,"loops",[]);d(this,"searches",[]);d(this,"primitives",[]);d(this,"builtInBaseEntities",[]);d(this,"operationDeclarations",[]);d(this,"globalEventActionDescriptors",[]);d(this,"loopDeclarations",[]);d(this,"loopDeclarationsBodies",[]);d(this,"conditionDeclarations",[]);d(this,"valueDescriptors",[]);d(this,"dataTypes",[]);d(this,"project");d(this,"instances",{});d(this,"builtInInstances",{});d(this,"errors",[]);d(this,"references",[]);this.initialData=e,this.id=e.id,this.version=e.version,this.name=e.name,this.description=e.description,this.x=0,this.y=0;try{(!ee.UUID||ee.UUID.isBackup)&&(ee.UUID=$s==null?void 0:$s()),ee.UUID||(ee.UUID={isBackup:!0,uuid:()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15),fromUUID:t=>t})}catch(t){console.error("Error initializing UUID module",t),ee.UUID={isBackup:!0,uuid:()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15),fromUUID:i=>i}}}static injectUUIDModule(e){ee.UUID=e}static validateGenerationTarget(e,t){let i=JSON.parse(JSON.stringify(e));const a=[];return a.push(...Le(i)),{errors:a,modifiedData:i}}async inject(...e){return await Promise.all(e.map(t=>new Promise(async i=>{await t.init(this),i(null)}))),this}validateGeneratedUpdate(e){return{errors:[],modifiedData:e}}addSelfToProject(){const e=[this],t=[],i=[];return{updated:b(e),added:b(t),removed:b(i),self:this}}get instancesList(){return Object.values(this.instances)}isOperationDeclaration(e){return this.operationDeclarations.includes(e)}isGlobalEventActionDescriptor(e){return this.globalEventActionDescriptors.includes(e)}isLoopDeclaration(e){return this.loopDeclarations.includes(e)}isConditionDeclaration(e){return this.conditionDeclarations.includes(e)}initChildren(){return this.entities=this.initialData.entities.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.projects=this.initialData.projects.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.functions=this.initialData.functions.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.events=this.initialData.events.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.variableDeclarations=this.initialData.variableDeclarations.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.variableInstances=this.initialData.variableInstances.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.conditions=this.initialData.conditions.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.operations=this.initialData.operations.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.functionCalls=this.initialData.functionCalls.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.loops=this.initialData.loops.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.searches=this.initialData.searches.map(e=>{const t=v(e,this);return t.setParent(this),t.initChildren(),t}),this.attachOrphanReferences(),this.validate(),this}subscribeInstance(e){return(!this.instances[e.id]||this.instances[e.id]!==e)&&(this.instances[e.id]=e),this}subscribeBuiltInInstance(e){return(!this.builtInInstances[e.id]||this.builtInInstances[e.id]!==e)&&(this.builtInInstances[e.id]=e),this}subscribe(){return this}unsubscribe(){return this}unsubscribeInstance(e){return delete this.instances[e.id],this}findSubscribedInstance(e){return this.instances[e.id]||null}findSubscribedBuiltInInstance(e){return this.builtInInstances[e.id]||null}get(e){return this.instances[e]||this.builtInInstances[e]||null}getManaged(e){return this.instances[e]||null}getBuiltIn(e){return this.builtInInstances[e]||null}findSubscribedInstanceFromReference(e){return this.instances[e.entityId]||null}findSubscribedBuiltInInstanceFromReference(e){return this.builtInInstances[e.entityId]||null}sync(e){return this.version=e.version||this.version,this.name=e.name||this.name,this.description=e.description||this.description,this.x=e.x||this.x,this.y=e.y||this.y,this}async load(){return this}async create(){return this}async update(e){return this}async delete(){return this}remove({ignoreUpstream:e}={ignoreUpstream:!1}){return{affected:[],removed:[]}}restore({seenEntities:e}={seenEntities:new Set}){return{affected:[],self:this}}getAllBuiltInIds(){const e=new Set;return[...this.primitives.flatMap(t=>t.toFlatIds(e)),...this.builtInBaseEntities.flatMap(t=>t.toFlatIds(e)),...this.operationDeclarations.flatMap(t=>t.toFlatIds(e)),...this.globalEventActionDescriptors.flatMap(t=>t.toFlatIds(e)),...this.loopDeclarations.flatMap(t=>t.toFlatIds(e)),...this.conditionDeclarations.flatMap(t=>t.toFlatIds(e)),...this.valueDescriptors.flatMap(t=>t.toFlatIds(e)),...this.dataTypes.flatMap(t=>t.toFlatIds(e))]}getAllBuiltIn(){const e=new Set;return[...this.primitives.flatMap(t=>t.toFlat(e)),...this.builtInBaseEntities.flatMap(t=>t.toFlat(e)),...this.operationDeclarations.flatMap(t=>t.toFlat(e)),...this.globalEventActionDescriptors.flatMap(t=>t.toFlat(e)),...this.loopDeclarations.flatMap(t=>t.toFlat(e)),...this.conditionDeclarations.flatMap(t=>t.toFlat(e)),...this.valueDescriptors.flatMap(t=>t.toFlat(e)),...this.dataTypes.flatMap(t=>t.toFlat(e))]}toFlat(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.entities.flatMap(i=>i.toFlat(e)),...this.functions.flatMap(i=>i.toFlat(e)),...this.events.flatMap(i=>i.toFlat(e)),...this.projects.flatMap(i=>i.toFlat(e)),...this.variableDeclarations.flatMap(i=>i.toFlat(e)),...this.variableInstances.flatMap(i=>i.toFlat(e)),...this.conditions.flatMap(i=>i.toFlat(e)),...this.operations.flatMap(i=>i.toFlat(e)),...this.functionCalls.flatMap(i=>i.toFlat(e)),...this.loops.flatMap(i=>i.toFlat(e)),...this.searches.flatMap(i=>i.toFlat(e))])}toFlatIds(e=new Set){return e.has(this.id)?[]:(e.add(this.id),Array.from(e))}toJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,entities:this.entities.map(e=>e.toJSON()),functions:this.functions.map(e=>e.toJSON()),events:this.events.map(e=>e.toJSON()),projects:this.projects.map(e=>e.toJSON()),variableDeclarations:this.variableDeclarations.map(e=>e.toJSON()),variableInstances:this.variableInstances.map(e=>e.toJSON()),conditions:this.conditions.map(e=>e.toJSON()),operations:this.operations.map(e=>e.toJSON()),functionCalls:this.functionCalls.map(e=>e.toJSON()),loops:this.loops.map(e=>e.toJSON()),searches:this.searches.map(e=>e.toJSON())}}toReference(){return{id:this.id+"--"+ee.UUID.uuid()+"--ref",type:n.GenericReference,entityId:this.id,entityType:this.type}}toShallowJSON(){return{id:this.id,version:this.version,type:this.type,name:this.name,description:this.description,entities:this.entities.map(e=>e.toReference()),functions:this.functions.map(e=>e.toReference()),events:this.events.map(e=>e.toReference()),projects:this.projects.map(e=>e.toReference()),variableDeclarations:this.variableDeclarations.map(e=>e.toReference()),variableInstances:this.variableInstances.map(e=>e.toReference()),conditions:this.conditions.map(e=>e.toReference()),operations:this.operations.map(e=>e.toReference()),functionCalls:this.functionCalls.map(e=>e.toReference()),loops:this.loops.map(e=>e.toReference()),searches:this.searches.map(e=>e.toReference())}}toFlatJSON(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.entities.flatMap(i=>i.toFlatJSON(e)),...this.functions.flatMap(i=>i.toFlatJSON(e)),...this.events.flatMap(i=>i.toFlatJSON(e)),...this.projects.flatMap(i=>i.toFlatJSON(e)),...this.variableDeclarations.flatMap(i=>i.toFlatJSON(e)),...this.variableInstances.flatMap(i=>i.toFlatJSON(e)),...this.conditions.flatMap(i=>i.toFlatJSON(e)),...this.operations.flatMap(i=>i.toFlatJSON(e)),...this.functionCalls.flatMap(i=>i.toFlatJSON(e)),...this.loops.flatMap(i=>i.toFlatJSON(e)),...this.searches.flatMap(i=>i.toFlatJSON(e))])}toGenerationTarget(){return{id:this.id,type:this.type,name:this.name,description:this.description}}toFlatGenerationTarget(e=new Set){return e.has(this.id)?[]:(e.add(this.id),[...this.entities.flatMap(i=>i.toFlatGenerationTarget(e)),...this.functions.flatMap(i=>i.toFlatGenerationTarget(e)),...this.events.flatMap(i=>i.toFlatGenerationTarget(e)),...this.projects.flatMap(i=>i.toFlatGenerationTarget(e)),...this.variableDeclarations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.variableInstances.flatMap(i=>i.toFlatGenerationTarget(e)),...this.conditions.flatMap(i=>i.toFlatGenerationTarget(e)),...this.operations.flatMap(i=>i.toFlatGenerationTarget(e)),...this.functionCalls.flatMap(i=>i.toFlatGenerationTarget(e)),...this.loops.flatMap(i=>i.toFlatGenerationTarget(e)),...this.searches.flatMap(i=>i.toFlatGenerationTarget(e))])}clearErrors(){return this.errors=[],this.entities.forEach(e=>e.clearErrors()),this.projects.forEach(e=>e.clearErrors()),this.functions.forEach(e=>e.clearErrors()),this.events.forEach(e=>e.clearErrors()),this.variableDeclarations.forEach(e=>e.clearErrors()),this.variableInstances.forEach(e=>e.clearErrors()),this.conditions.forEach(e=>e.clearErrors()),this.operations.forEach(e=>e.clearErrors()),this.functionCalls.forEach(e=>e.clearErrors()),this.loops.forEach(e=>e.clearErrors()),this.searches.forEach(e=>e.clearErrors()),this}validate(){const e=k3(),t=this.toJSON();return e.safeParse(t),this.validateChildren(),{success:!0,error:null,data:t}}validateChildren(){this.entities.forEach(e=>e.validate()),this.projects.forEach(e=>e.validate()),this.functions.forEach(e=>e.validate()),this.events.forEach(e=>e.validate()),this.variableDeclarations.forEach(e=>e.validate()),this.variableInstances.forEach(e=>e.validate()),this.conditions.forEach(e=>e.validate()),this.operations.forEach(e=>e.validate()),this.functionCalls.forEach(e=>e.validate()),this.loops.forEach(e=>e.validate()),this.searches.forEach(e=>e.validate())}getErrors(){return[...this.errors,...this.entities.flatMap(t=>t.getErrors()),...this.projects.flatMap(t=>t.getErrors()),...this.functions.flatMap(t=>t.getErrors()),...this.events.flatMap(t=>t.getErrors()),...this.variableDeclarations.flatMap(t=>t.getErrors()),...this.variableInstances.flatMap(t=>t.getErrors()),...this.conditions.flatMap(t=>t.getErrors()),...this.operations.flatMap(t=>t.getErrors()),...this.functionCalls.flatMap(t=>t.getErrors()),...this.loops.flatMap(t=>t.getErrors()),...this.searches.flatMap(t=>t.getErrors())]}getShallowErrors(){return this.errors}clone(){return new ee(this.toJSON())}getCustomEntity(e){return this.entities.find(t=>t.id===e)||null}addCustomEntityFromTransfer(e){const t=v(e,this);return this.addCustomEntity(t),t}addCustomEntity(e){return this.entities.includes(e)||this.entities.push(e),e}addFunctionDeclarationFromTransfer(e){const t=v(e,this);return this.addFunctionDeclaration(t),t}addFunctionDeclaration(e){return this.functions.includes(e)||this.functions.push(e),e}addFunctionCallFromTransfer(e){const t=v(e,this);return this.addFunctionCall(t),t}addFunctionCall(e){return this.functionCalls.includes(e)||this.functionCalls.push(e),e}addVariableDeclarationFromTransfer(e){const t=v(e,this);return this.addVariableDeclaration(t),t}addVariableDeclaration(e){return this.variableDeclarations.includes(e)||this.variableDeclarations.push(e),e}addVariableInstanceFromTransfer(e){const t=v(e,this);return this.addVariableInstance(t),t}addVariableInstance(e){return this.variableInstances.includes(e)||this.variableInstances.push(e),e}addInstalledProjectFromTransfer(e){const t=v(e,this);return this.addInstalledProject(t),this}addInstalledProject(e){return this.projects.includes(e)||this.projects.push(e),this}addGlobalEventFromTransfer(e){const t=v(e,this);return this.addGlobalEvent(t),this}addGlobalEvent(e){return this.events.includes(e)||this.events.push(e),this}addConditionFromTransfer(e){const t=v(e,this);return this.addCondition(t),this}addCondition(e){return this.conditions.includes(e)||this.conditions.push(e),this}addOperationFromTransfer(e){const t=v(e,this);return this.addOperation(t),this}addOperation(e){return this.operations.includes(e)||this.operations.push(e),this}addLoopFromTransfer(e){const t=v(e,this);return this.addLoop(t),this}addLoop(e){return this.loops.includes(e)||this.loops.push(e),this}addSearchFromTransfer(e){const t=v(e,this);return this.addSearch(t),this}addSearch(e){return this.searches.includes(e)||this.searches.push(e),this}removeCustomEntity(e){const t=this.entities.findIndex(i=>i.id===e.id);if(t>-1){const i=this.entities[t];return this.entities.splice(t,1),i}return null}removeFunctionDeclaration(e){const t=this.functions.findIndex(i=>i.id===e.id);if(t>-1){const i=this.functions[t];return this.functions.splice(t,1),i}return null}removeExternalProject(e){const t=this.projects.findIndex(i=>i.id===e.id);if(t>-1){const i=this.projects[t];return this.projects.splice(t,1),i}return null}removeGlobalEvent(e){const t=this.events.findIndex(i=>i.id===e.id);if(t>-1){const i=this.events[t];return this.events.splice(t,1),i}return null}removeTopLevelVariableDeclaration(e){if(e.type!==n.VariableDeclaration)return null;const t=this.variableDeclarations.findIndex(i=>i.id===e.id);if(t>-1){const i=this.variableDeclarations[t];return this.variableDeclarations.splice(t,1),i}return null}getEntryPoints(){return[...this.functions,...this.events,...this.entities.flatMap(t=>t.methods)]}getFunctionDeclaration(e){return this.functions.find(t=>t.id===e)||null}getConditions(){return[...this.conditions,...this.getEntryPoints().reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.functionCalls.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.operations.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.loops.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[]),...this.searches.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Condition)]},[])]}getOperations(){return[...this.operations,...this.getEntryPoints().reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.functionCalls.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.conditions.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.loops.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[]),...this.searches.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.Operation)]},[])]}getFunctionCalls(){return[...this.functionCalls,...this.getEntryPoints().reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.conditions.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.operations.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.loops.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[]),...this.searches.reduce((t,i)=>{const a=Ne(i);return[...t,...a.filter(s=>s.type===n.FunctionCall)]},[])]}getVariables(){return[...this.variableDeclarations,...this.getEntryPoints().reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.functionCalls.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.conditions.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.operations.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.loops.reduce((t,i)=>{const a=re(i);return[...t,...a]},[]),...this.searches.reduce((t,i)=>{const a=re(i);return[...t,...a]},[])]}getVariableInstances(){return[...this.variableInstances,...this.getEntryPoints().reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.functionCalls.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.conditions.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.operations.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.loops.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[]),...this.searches.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableInstance);return[...t,...s]},[])]}getVariableDeclarations(){return b([...this.variableDeclarations,...this.getEntryPoints().reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.functionCalls.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.conditions.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.operations.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.loops.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[]),...this.searches.reduce((t,i)=>{const s=re(i).filter(o=>o.type===n.VariableDeclaration);return[...t,...s]},[])])}attachOrphanReferences(){const e=this.getVariableInstances(),t=this.getVariableDeclarations();return e.forEach(i=>{if(!i.declaration){const a=i.initialData,s=a.declaration.entityId||a.declaration.id,o=t.find(l=>l.id===s);o&&i.setDeclaration(o)}}),this}getBuiltInPersistedEntity(){return this.builtInBaseEntities.find(e=>e.name===L.PERSISTED_ENTITY)||null}};d(ee,"UUID",{isBackup:!0,uuid:()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15),fromUUID:e=>e}),d(ee,"MUTABLE_BASE_PROPERTIES",["name","description"]),d(ee,"INMUTABLE_BASE_PROPERTIES",["id","type","version"]),d(ee,"BASE_PROPERTIES",[...ee.MUTABLE_BASE_PROPERTIES,...ee.INMUTABLE_BASE_PROPERTIES]),d(ee,"MUTABLE_META_PROPERTIES",[...ee.MUTABLE_BASE_PROPERTIES,"x","y"]),d(ee,"INMUTABLE_META_PROPERTIES",[...ee.INMUTABLE_BASE_PROPERTIES]),d(ee,"META_PROPERTIES",[...ee.MUTABLE_META_PROPERTIES,...ee.INMUTABLE_META_PROPERTIES]),d(ee,"MUTABLE_UPSTREAM_PROPERTIES",[]),d(ee,"INMUTABLE_UPSTREAM_PROPERTIES",["primitives","builtInBaseEntities","operationDeclarations","globalEventActionDescriptors","loopDeclarations","builtInInstances"]),d(ee,"UPSTREAM_PROPERTIES",[...ee.MUTABLE_UPSTREAM_PROPERTIES,...ee.INMUTABLE_UPSTREAM_PROPERTIES]),d(ee,"MUTABLE_DOWNSTREAM_PROPERTIES",["entities","projects","functions","events","variableDeclarations","variableInstances","conditions","operations","functionCalls","loops","searches"]),d(ee,"INMUTABLE_DOWNSTREAM_PROPERTIES",[]),d(ee,"DOWNSTREAM_PROPERTIES",[...ee.MUTABLE_DOWNSTREAM_PROPERTIES,...ee.INMUTABLE_DOWNSTREAM_PROPERTIES]),d(ee,"PROPERTIES",[...ee.META_PROPERTIES,...ee.UPSTREAM_PROPERTIES,...ee.DOWNSTREAM_PROPERTIES]);let _=ee;class wA extends te{constructor(t){super(Wt,t);d(this,"id",Me.Parallel);d(this,"name",Me.Parallel);d(this,"description","Execute a list of actions one after the other");d(this,"version",1);d(this,"autoexecutable",!0);d(this,"initialData",Wt);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"project");this.project=t,this.inputs=Wt.inputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.outputs=Wt.outputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.error=Wt.error?v(Wt.error,this.project):null}}class _A extends te{constructor(t){super(pt,t);d(this,"id",pt.id);d(this,"name",pt.name);d(this,"description",pt.description);d(this,"version",pt.version);d(this,"autoexecutable",!1);d(this,"initialData",pt);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"project");this.project=t,this.inputs=pt.inputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.outputs=pt.outputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.error=pt.error?v(pt.error,this.project):null}}class NA extends te{constructor(t){super(mn,t);d(this,"id",Me.Sequential);d(this,"name",Me.Sequential);d(this,"description","Execute a list of actions one after the other");d(this,"version",1);d(this,"autoexecutable",!0);d(this,"initialData",mn);d(this,"type",n.ActionDescriptor);d(this,"inputs",[]);d(this,"outputs",[]);d(this,"error",null);d(this,"project");this.project=t,this.inputs=mn.inputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.outputs=mn.outputs.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.error=mn.error?v(mn.error,this.project):null}}class D7 extends te{constructor(e){super(Mi,e)}}class P7 extends te{constructor(e){super(nr,e)}}class A7 extends te{constructor(t){super(rr,t);d(this,"autoexecutable",!0)}getEntityToMatchInputMap(t){return t.inputs.find(i=>{var a;return((a=i.declaration)==null?void 0:a.id)===B.operation[le.Validate].inputs.entityToMatch.id})||null}getDataToValidateInputMap(t){return t.inputs.find(i=>{var a;return((a=i.declaration)==null?void 0:a.id)===B.operation[le.Validate].inputs.dataToValidate.id})||null}getOutputDataOutputMap(t){return t.outputs.find(i=>{var a;return((a=i.declaration)==null?void 0:a.id)===B.operation[le.Validate].outputs.outputEntity.id})||null}getEntityToMatch(t){let i=null;if(t.readsValue){const s=t.readsValue.getDataType();s&&s.entity&&s.entity.type===n.CustomEntity&&(i=s.entity)}const a=t.getDefaultValue();return!i&&a&&a.valueAsType&&!Array.isArray(a.valueAsType)&&a.valueAsType.type===n.CustomEntity&&(i=a.valueAsType),i}syncOperationInstance(t){const i=this.getEntityToMatchInputMap(t);i&&this.syncEntityToMatchInputMapDataType(i);const a=this.getDataToValidateInputMap(t);a&&this.syncDataToValidateInputMapDataType(a);const s=this.getOutputDataOutputMap(t);return s&&this.syncOutputDataOutputMapDataType(s),t}syncEntityToMatchInputMapDataType(t){var a,s,o;if(((a=t.declaration)==null?void 0:a.id)!==B.operation[le.Validate].inputs.entityToMatch.id)return null;if(!t.dataType){const l={id:t.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!0,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:t.toReference()},p=v(l,t.project);p.setParent(t),p.initChildren(),t.setDataType(p)}(s=t.dataType)==null||s.sync({inferred:!0,like:!1,asType:!0});const i=this.getEntityToMatch(t);return(o=t.dataType)==null||o.setEntity(i),t.dataType}syncDataToValidateInputMapDataType(t){var o,l,p;if(((o=t.declaration)==null?void 0:o.id)!==B.operation[le.Validate].inputs.dataToValidate.id)return null;const i=this.getEntityToMatchInputMap(t.parent);if(!i||!this.getEntityToMatch(i))return null;if(!t.dataType){const y={id:t.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:t.toReference()},h=v(y,t.project);h.setParent(t),h.initChildren(),t.setDataType(h)}(l=t.dataType)==null||l.sync({inferred:!0,like:!0,asType:!1});const s=this.getEntityToMatch(i);return(p=t.dataType)==null||p.setEntity(s),t.dataType}syncOutputDataOutputMapDataType(t){var o,l,p;if(((o=t.declaration)==null?void 0:o.id)!==B.operation[le.Validate].outputs.outputEntity.id)return null;const i=this.getEntityToMatchInputMap(t.parent);if(!i||!this.getEntityToMatch(i))return null;if(!t.dataType){const y={id:t.id+"--infered-data-type",version:1,type:n.DataType,isList:!1,isNullable:!1,andChildrenGroup:null,orChildrenGroup:null,asType:!1,entity:null,constant:!1,like:!0,inferred:!0,defaultValue:null,parent:t.toReference()},h=v(y,t.project);h.setParent(t),h.initChildren(),t.setDataType(h)}(l=t.dataType)==null||l.sync({inferred:!0,like:!0,asType:!1});const s=this.getEntityToMatch(i);return(p=t.dataType)==null||p.setEntity(s),t.dataType}inferInputMapDataType(t){var i,a;return((i=t.declaration)==null?void 0:i.id)===B.operation[le.Validate].inputs.entityToMatch.id?this.syncEntityToMatchInputMapDataType(t):((a=t.declaration)==null?void 0:a.id)===B.operation[le.Validate].inputs.dataToValidate.id?this.syncDataToValidateInputMapDataType(t):null}inferOutputMapDataType(t){var i;return((i=t.declaration)==null?void 0:i.id)===B.operation[le.Validate].outputs.outputEntity.id?this.syncOutputDataOutputMapDataType(t):null}}class O7 extends te{constructor(e){super(ll,e)}}class S7 extends te{constructor(e){super(dl,e)}}class C7 extends te{constructor(e){super(ul,e)}}class B7 extends te{constructor(e){super(Ya,e)}}class w7 extends te{constructor(e){super(Ja,e)}}class _7 extends te{constructor(e){super(Ni,e)}}function N7(r){const e=[new NA(r),new wA(r),new _A(r),new D7(r),new P7(r),new A7(r),new B7(r),new O7(r),new C7(r),new S7(r),new w7(r),new _7(r),new te(ol,r),new te(sl,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.operationDeclarations=e,e}class MA extends xt{constructor(t){super(ke,t);d(this,"initialData");d(this,"id",L.PERSISTED_ENTITY);d(this,"version",1);d(this,"name",L.PERSISTED_ENTITY);d(this,"description",ke.description);d(this,"type",n.BuiltInBaseEntity);d(this,"abstract",ke.abstract);d(this,"static",ke.static);d(this,"properties",[]);d(this,"methods",[]);d(this,"abstractMethods",[]);d(this,"extends",[]);d(this,"errors",[]);d(this,"project");this.initialData=ke,this.project=t,this.id=ke.id,this.version=ke.version,this.name=ke.name,this.static=ke.static,this.abstract=ke.abstract,this.properties=this.initialData.properties.map(i=>{const a=v(i,this.project);return a.setParent(this),a.initChildren(),a}),this.methods=this.initialData.methods.map(i=>{const a=v(i,this.project);return a.parent=this,a}),this.abstractMethods=this.initialData.abstractMethods.map(i=>{const a=v(i,this.project);return a.parent=this,a}),this.extends=this.initialData.extends.map(i=>v(i,this.project))}}function M7(r){const e=[new MA(r),new xt(ls,r),new xt(Mn,r),new xt(ql,r),new xt(os,r)];return e.forEach(t=>{r.subscribeBuiltInInstance(t)}),r.builtInBaseEntities=e,e}function V7(r){const e=[new jt(x,r),new jt(_n,r),new jt(X,r),new jt(Xe,r),new jt(Nn,r),new jt(pn,r),new jt(qa,r),new jt(el,r)];return e.forEach(t=>{r.subscribeBuiltInInstance(t)}),r.primitives=e,e}function L7(r){const e=[new te(ys,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.globalEventActionDescriptors=e,e}function G7(r){const e=[new te(as,r),new te(ir,r),new te(is,r),new te(Li,r),new te(Gi,r),new te(Rl,r)];e.forEach(i=>{i.initChildren(),r.subscribeBuiltInInstance(i)}),r.loopDeclarations=e;const t=[new te(Cl,r),new te(rs,r),new te(Pl,r),new te(yT,r),new te(_T,r),new te(gl,r)];return t.forEach(i=>{i.initChildren(),r.subscribeBuiltInInstance(i)}),r.loopDeclarationsBodies=t,e}function $7(r){const e=[new Ur(Yl,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.valueDescriptors=e,e}function F7(r){const e=[new te(cr,r),new te(Xr,r)];return e.forEach(t=>{t.initChildren(),r.subscribeBuiltInInstance(t)}),r.operationDeclarations=e,e}const qr={},Yo={};async function U7(r,e={}){const t={...JI};return t.id=r.id,e.empty?{data:{id:r.id,type:n.Project,version:1,name:null,description:null,projects:[],entities:[],operations:[],functions:[],variableDeclarations:[],variableInstances:[],functionCalls:[],conditions:[],loops:[],searches:[],events:[]}}:{data:t}}function VA(r){const e=new _(r);return V7(e),M7(e),N7(e),L7(e),G7(e),$7(e),F7(e),e.getAllBuiltIn().forEach(i=>{e.builtInInstances[i.id]||(e.builtInInstances[i.id]=i,delete e.instances[i.id])}),e.initChildren(),e}async function x7(r,e={}){if(r.id&&qr[r.id])return qr[r.id];if(r.id&&Yo[r.id])return await Yo[r.id],qr[r.id];const t=U7(r,e);r.id&&(Yo[r.id]=t);const i=await t;if(i.data){const a=VA(i.data);return qr[r.id]=a,r.id&&delete Yo[r.id],a}return null}function j7(r){return qr[r.id]&&delete qr[r.id],null}const k7="test_primitive_entities_export";c.AI_VALUE_CONNECTION_GENERATION_ACTION_EXPLANATION=Pu,c.ActionDescriptorState=te,c.ActionInputMapState=B2,c.ActionOutputMapState=N2,c.AppendToListOperationInputIds=nh,c.AppendToListOperationOutputIds=rh,c.ArgumentDeclarationState=$r,c.BREAK_AND_CONTINUE_STATEMENTS_RETURN_DECLARATIONS_EXPLANATION=vu,c.BUILT_IN_BASE_ENTITY_IDS=B,c.BUILT_IN_ENTITY_TYPES=Yr,c.BaseCanvasDraggableState=h2,c.BaseEntityNames=L,c.BaseState=y2,c.BaseValueDescriptorIds=Qo,c.BreakStatementState=Bi,c.BuiltInBaseEntityState=xt,c.CACHED_PROJECTS_BY_ID=qr,c.CALLABLE_ENTITIES_EXPLANATION=J2,c.CALLABLE_TYPES=wn,c.CALLER_ENTITIES_EXPLANATION=WP,c.CALLER_TYPES=un,c.CALLS_UPDATE_EXPLANATION=Zn,c.COMPARISON_CONDITIONS=Lb,c.CONDITIONS=uO,c.CUSTOM_ENTITY_OPERATIONS=Df,c.CallableEntityClass=m2,c.CallerEntityClass=Tu,c.ChildEntityState=f2,c.ComparisonOperatorTypes=$e,c.ConditionState=Nr,c.ContinueStatementState=bt,c.CreateNewInputIds=Kh,c.CreateNewOutputIds=Xh,c.CustomEntityState=kr,c.DRAGGABLE_CALLABLE_TYPES=Ko,c.DRAGGABLE_CALLER_TYPES=ju,c.DRAGGABLE_ELEMENT_TYPES=Xo,c.DRAGGABLE_EXECUTABLE_TYPES=GA,c.DRAGGABLE_PASS_THROUGH_CALLABLE_TYPES=Zo,c.DataTypeCompatibilityTypes=Ft,c.DataTypeParentChildRelation=Ke,c.DataTypeState=Ai,c.ENTITIES_WITH_VALLUES_EXPLANATION=Mo,c.ENTITY_TYPES=$A,c.ENTITY_WITH_LOGIC_SCOPE_TYPES=ut,c.ENTITY_WITH_NAMES_TYPES=ku,c.ENTITY_WITH_VALUE_TYPES=xu,c.ENTRY_POINT_ENTITIES_EXPLANATION=$a,c.ENTRY_POINT_TYPES=Ue,c.EVENT_TYPES=Hr,c.EXECUTABLE_TYPES=LA,c.EXECUTION_OPERATIONS=Zh,c.EntityError=Tr,c.EntityErrorSeverity=T,c.EntityGenerationError=E,c.EntityGenerationErrorCode=f,c.EntityInstanceErrorCode=M,c.EntityOperations=le,c.EntityType=n,c.EntityWithLogicScopeClass=R2,c.EntityWithValueClass=b2,c.EntryPointEntityClass=T2,c.ExecutionOperations=Me,c.ExecutionTerminationType=kP,c.FunctionCallState=xr,c.FunctionDeclarationState=Br,c.GLOBAL_EVENT_DECLARATIONS=pO,c.GetLastInListOperationInputIds=qy,c.GetLastInListOperationOutputIds=Jy,c.GlobalEventNames=dn,c.GlobalEventState=Oi,c.HTTPOperations=nt,c.HTTP_OPERATIONS=im,c.InputMapState=On,c.InstalledProjectState=Gr,c.InternalCallState=Si,c.JoinListOperationInputIds=dy,c.JoinListOperationOutputIds=uy,c.LIST_OPERATIONS=mh,c.ListOperations=W,c.LoopState=_r,c.LoopTypes=$,c.NON_INTERACTIVE_BASE_ENTITIES_EXPLANATION=Kn,c.NUMBER_OPERATIONS=Dp,c.NumberOperations=me,c.OPERATION_DECLARATIONS=jA,c.OperationState=wr,c.OutputMapParentChildRelation=Wr,c.OutputMapState=Sn,c.PARENT_AUTO_CALCULATION_FROM_CALLER_EXPLANATION=Vo,c.PASS_THROUGH_CALLABLE_ENTITIES_EXPLANATION=zn,c.PASS_THROUGH_CALLABLE_TYPES=je,c.PROPERTY_NOT_VALUE_READER_WRITTER_EXPLANATION=Du,c.ParallelExecutionOperation=wA,c.ParallelExecutionOperationInputIds=Th,c.ParallelExecutionOperationOutputIds=Eh,c.PassThroughCallableEntityClass=E2,c.PersistedEntity=MA,c.PersistedEntityMethods=Ct,c.PrimitiveEntityState=jt,c.PrimitiveTypes=P,c.PrimitiveValueState=Ci,c.ProjectState=_,c.PropertyState=Cr,c.RETURN_STATEMENT_RETURN_DECLARATIONS_EXPLANATION=W2,c.ReturnDeclarationState=_t,c.ReturnStatementState=Fr,c.STANDALONE_CONDITIONS=Ob,c.STRING_OPERATIONS=cy,c.ScopeCompatibilityType=Ho,c.SearchState=Lr,c.SequentialExecutionOperation=NA,c.SequentialExecutionOperationInputIds=Gh,c.SequentialExecutionOperationOutputIds=$h,c.SharedEntityErrorCode=S,c.SharedStateFunctionality=jP,c.SplitListOperationInputIds=Ay,c.SplitListOperationOutputIds=Oy,c.StandaloneOperatorTypes=Mt,c.StringOperations=K,c.TERMINATION_TYPES=Ve,c.USER_MANAGED_ENTITY_TYPES=FA,c.UserManagedEntityStateFunctionality=p2,c.VALUE_READING_ENTITIES_EXPLANATION=Iu,c.VALUE_READING_TYPES=Bn,c.VALUE_WRITING_ENTITIES_EXPLANATION=HP,c.VALUE_WRITING_TYPES=xe,c.VARIABLE_DATA_TYPE_INFERRANCE_EXPLANATION=gu,c.VARIABLE_TYPES=Fe,c.ValueAutogenerationType=We,c.ValueDescriptorParentChildRelation=O,c.ValueDescriptorState=Ur,c.ValueReadingEntityClass=La,c.ValueWritingEntityClass=Ga,c.VariableDeclarationState=Mr,c.VariableInputMapState=C2,c.VariableInstanceState=Vr,c.VariableOutputMapState=_2,c.WaitOperation=_A,c.WaitOperationInputIds=Bh,c.WaitOperationOutputIds=wh,c.appendToListOperation=Ya,c.appendToListOperationElementToAppendArgument=yl,c.appendToListOperationElementToAppendArgumentParentRef=uh,c.appendToListOperationElementToAppendArgumentRef=sh,c.appendToListOperationError=fh,c.appendToListOperationErrorParentRef=hh,c.appendToListOperationListArgument=pl,c.appendToListOperationListArgumentParentRef=dh,c.appendToListOperationListArgumentRef=ih,c.appendToListOperationListDataType=ah,c.appendToListOperationResultListDataType=ch,c.appendToListOperationResultListReturn=yh,c.appendToListOperationResultListReturnParentRef=ph,c.appendToListOperationResultListReturnRef=lh,c.appendToListOperationSecondListDataType=oh,c.asGenerationActionExample=ln,c.booleanPrototype=_n,c.capitalizeFirstLetter=Ao,c.checkAreCustomEntitiesCompatibleAsDataType=CP,c.checkAreDataTypesCompatible=Ut,c.checkArePropertiesCompatibleAsDataType=SP,c.checkIsBranchDependentButNotDirectlyOnBranch=Ua,c.checkIsBranchDependentOnBranch=t7,c.checkIsCallableEntityReachable=ka,c.checkIsCanvasEntity=E7,c.checkIsDetachedBranch=PA,c.checkIsDetachedBranchShallow=Fu,c.checkIsGlobalVariable=m7,c.checkIsGloballyDeclared=$u,c.checkIsMethod=SA,c.checkIsNestedScope=Wo,c.checkScopeCompatibility=xa,c.countedLoopActionDescriptor=as,c.countedLoopActionDescriptorDynamicReturnDeclaration=xT,c.countedLoopActionDescriptorDynamicReturnDeclarationParentRef=UT,c.countedLoopActionDescriptorStringArgumentDeclaration=FT,c.countedLoopActionDescriptorStringArgumentDeclarationDataType=GT,c.countedLoopActionDescriptorStringArgumentDeclarationDataTypeDefaultValue=VT,c.countedLoopActionDescriptorStringArgumentDeclarationDataTypeDefaultValueParentRef=MT,c.countedLoopActionDescriptorStringArgumentDeclarationDataTypeParentRef=LT,c.countedLoopActionDescriptorStringArgumentDeclarationParentRef=$T,c.countedLoopBodyActionDescriptor=Cl,c.countedLoopBodyActionDescriptorAnyDynamicArgument=WT,c.countedLoopBodyActionDescriptorAnyDynamicArgumentParentRef=JT,c.countedLoopBodyActionDescriptorAnyDynamicReturn=YT,c.countedLoopBodyActionDescriptorAnyDynamicReturnParentRef=HT,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclaration=Sl,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=kT,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=jT,c.countedLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=qT,c.createCustomEntityFromJSONObject=Uo,c.createEntityError=Y,c.createNestedDataTypeForEntity=iA,c.createNewInstanceOperation=nr,c.createNewInstanceOperationEntityToInstanciateArgument=of,c.createNewInstanceOperationEntityToInstanciateArgumentRef=rf,c.createNewInstanceOperationEntityToInstanciateDataType=af,c.createNewInstanceOperationError=uf,c.createNewInstanceOperationErrorParentRef=df,c.createNewInstanceOperationNewEntityDataArgument=nf,c.createNewInstanceOperationNewEntityDataArgumentDataType=tf,c.createNewInstanceOperationNewEntityDataArgumentDataTypeParentRef=ef,c.createNewInstanceOperationNewEntityDataArgumentParentRef=Qh,c.createNewInstanceOperationOutputEntityDeclaration=cf,c.createNewInstanceOperationOutputEntityDeclarationParentRef=lf,c.createNewInstanceOperationRef=sf,c.createSemanticId=Ze,c.createStateFromGenerationTargetType=I7,c.createStateFromType=kt,c.createStateFromTypeAndSubscribe=v,c.cronJobBuiltInBaseEntity=ql,c.cronJobBuiltInBaseEntityExpressionProperty=Ib,c.cronJobBuiltInBaseEntityExpressionPropertyDataTypeRef=lO,c.cronJobBuiltInBaseEntityExpressionPropertyRef=vb,c.cronJobBuiltInBaseEntityRef=gb,c.cronJobTriggeredFunctionDeclarationBlueprint=kl,c.cronJobTriggeredFunctionDeclarationBlueprintParentRef=bb,c.customEntityToZodSchema=eR,c.dataTypeCompatibilityToErrorExplanation=tA,c.datePrototype=pn,c.dateValueAutogenerationSchema=id,c.deletePersistedEntityMethod=jl,c.deletePersistedEntityMethodParentRef=KE,c.deleteRootProject=j7,c.endpointBuiltInBaseEntity=ls,c.endpointBuiltInBaseEntityRef=iE,c.endpointBuiltInBaseEntityRefFour=FE,c.endpointBuiltInBaseEntityRefThree=yE,c.endpointBuiltInBaseEntityRefTwo=cE,c.endpointBuiltInCorsProperty=aE,c.endpointBuiltInCorsPropertyDataType=rE,c.endpointBuiltInCorsPropertyDataTypeRef=tE,c.endpointBuiltInCorsPropertyRef=nE,c.endpointBuiltInMethodProperty=wl,c.endpointBuiltInMethodPropertyDataType=pE,c.endpointBuiltInMethodPropertyDataTypeRef=dE,c.endpointBuiltInMethodPropertyRef=uE,c.endpointBuiltInPathProperty=Bl,c.endpointBuiltInPathPropertyDataType=lE,c.endpointBuiltInPathPropertyDataTypeRef=sE,c.endpointBuiltInPathPropertyRef=oE,c.endpointPathParamsArgumentDeclaration=Nl,c.endpointPathParamsArgumentDeclarationRef=IE,c.endpointPathParamsVariableDataType=DE,c.endpointPathParamsVariableDataTypeRef=gE,c.endpointReachedTriggerActionDescriptor=Fl,c.endpointReachedTriggerActionDescriptorRef=PE,c.endpointReachedTriggerActionDescriptorRefFour=SE,c.endpointReachedTriggerActionDescriptorRefThree=OE,c.endpointReachedTriggerActionDescriptorRefTwo=AE,c.endpointRequestBodyArgumentDeclaration=Vl,c.endpointRequestBodyArgumentDeclarationRef=TE,c.endpointRequestBodyVariableDataType=EE,c.endpointRequestHeadersArgumentDeclaration=_l,c.endpointRequestHeadersArgumentDeclarationRef=fE,c.endpointRequestHeadersVariableDataType=mE,c.endpointRequestHeadersVariableDataTypeRef=hE,c.endpointRequestQueryParamsArgumentDeclaration=Ml,c.endpointRequestQueryParamsArgumentDeclarationRef=RE,c.endpointRequestQueryParamsVariableDataType=vE,c.endpointRequestQueryParamsVariableDataTypeRef=bE,c.endpointResponseBodyDataType=GE,c.endpointResponseBodyReturnDeclaration=$l,c.endpointResponseBodyReturnDeclarationRef=LE,c.endpointResponseCodeDataType=BE,c.endpointResponseCodeReturnDeclaration=Ll,c.endpointResponseCodeReturnDeclarationRef=CE,c.endpointResponseHeadersDataType=ME,c.endpointResponseHeadersDataTypeRef=_E,c.endpointResponseHeadersReturnDeclaration=Gl,c.endpointResponseHeadersReturnDeclarationRef=NE,c.endpointReturnStatementRef=wE,c.endpointReturnStatementRefThree=$E,c.endpointReturnStatementRefTwo=VE,c.enumOptionsProperty=Yu,c.enumOptionsPropertyDataType=Wu,c.enumOptionsPropertyDataTypeRef=qu,c.enumOptionsPropertyRef=Ju,c.enumPrototype=Nn,c.enumPrototypeRef=Hu,c.executionBuiltInEntity=Wl,c.executionBuiltInEntityAbortMethod=Jl,c.executionBuiltInEntityAbortMethodParentRef=Db,c.filterOutDuplicateEntities=b,c.filterOutDuplicateErrors=l9,c.findEntityFromKeys=Su,c.findReferenceToSelfInList=mA,c.findReferencesToSelfInProject=d7,c.flattenCalls=cn,c.flattenCanvasAncestorsUntil=xo,c.flattenCustomEntityExtensionAndImplementationTypes=gA,c.flattenCustomEntityExtensionTypes=qo,c.flattenCustomEntityExtensions=Vu,c.flattenCustomEntityImplementations=Lu,c.flattenCustomEntityImplementionTypes=ko,c.flattenDerivedCanvasEntities=St,c.flattenDetachedBranch=OA,c.flattenElementCalls=Ne,c.flattenElementCallsOnTheSameScope=c7,c.flattenProjectElements=fA,c.flattenRelatedCanvasElementsOnTheLeft=vA,c.flattenRelatedCanvasElementsOnTheRight=RA,c.flattenVariableReads=hA,c.flattenVariableWrites=yA,c.flattenVariables=re,c.fromZodParseToEntityGenerationErrors=Eu,c.generate=lC,c.generateActionExample=H2,c.generateExecutionDataType=H5,c.generateMutablePropertiesExplanation=wo,c.generateRandomBoolean=AR,c.generateRandomDate=iR,c.generateRandomDateAfter=tR,c.generateRandomDateBefore=nR,c.generateRandomDateBetweenRange=rR,c.generateRandomNumber=vR,c.generateRandomNumberAfter=ER,c.generateRandomNumberBefore=bR,c.generateRandomNumberBetweenRange=RR,c.generateRandomText=PR,c.generateRandomTextAfter=gR,c.generateRandomTextBefore=IR,c.generateRandomTextBetweenRange=DR,c.generateUniqueUUID=TR,c.getAllActionDescriptorsForConditions=$o,c.getAllActionDescriptorsForGlobalEvents=Lo,c.getAllActionDescriptorsForLoops=Go,c.getAllActionDescriptorsForOperations=K2,c.getAllGloballyDeclaredFunctionDeclarationsExplanation=XP,c.getBaseBuiltInEntities=Qn,c.getBaseSchemaBasedOnType=qP,c.getBuiltInEntityOwner=er,c.getCallableEntityReferenceSchema=ze,c.getCallableEntityTypeSchema=fD,c.getCallerEntityReferenceSchema=y3,c.getCallerEntityTypeSchema=p3,c.getCalls=wu,c.getCanvasEntitiesDerivedFromInternalCalls=bA,c.getCanvasEntitiesDerivedFromWrites=wi,c.getCanvasEntityDerivedFromValueReadingEntity=Mu,c.getCanvasEntityReferenceSchema=B3,c.getCanvasEntityTypeSchema=C3,c.getChildrenEntityWithValues=r7,c.getCommonAncestor=Bu,c.getCommonChildren=aA,c.getDeclaration=Sr,c.getDeepestScope=BA,c.getDraggableCallableEntityReferenceSchema=TD,c.getDraggableCallableEntityTypeSchema=mD,c.getDraggableCallerEntityReferenceSchema=f3,c.getDraggableCallerEntityTypeSchema=h3,c.getDraggableExecutableEntityReferenceSchema=b3,c.getDraggableExecutableEntityTypeSchema=E3,c.getDraggablePassThroughCallableEntityReferenceSchema=Eo,c.getDraggablePassThroughCallableEntityTypeSchema=To,c.getDraggablePlayableEntityReferenceSchema=D3,c.getDraggablePlayableEntityTypeSchema=I3,c.getEntityArgumentDeclarations=Nu,c.getEntityInputMaps=TA,c.getEntityOutputMaps=y7,c.getEntityReferenceSchema=S3,c.getEntityReturnDeclarations=EA,c.getEntityTypeSchema=O3,c.getEntityWithLogicScopeReferenceSchema=Dn,c.getEntityWithLogicScopeTypeSchema=R3,c.getEntityWithValueReferenceSchema=hD,c.getEntityWithValueTypeSchema=u3,c.getEntryPointEntityReferenceSchema=Ye,c.getEntryPointEntityTypeSchema=Wn,c.getEventEntityReferenceSchema=fo,c.getEventEntityTypeSchema=ho,c.getExecutableEntityReferenceSchema=T3,c.getExecutableEntityTypeSchema=m3,c.getExtendedBuiltInEntity=h7,c.getExtendedCustomEntity=DA,c.getGenerationTargetSchemaBasedOnType=JP,c.getHeadIfPartOfDetachedBranch=AA,c.getHighestScope=CA,c.getImplementedBuiltInEntity=f7,c.getIsInteractive=Gu,c.getLastInListOperation=ul,c.getLastInListOperationError=th,c.getLastInListOperationErrorParentRef=eh,c.getLastInListOperationInputListArgument=Ky,c.getLastInListOperationInputListArgumentParentRef=Zy,c.getLastInListOperationInputListArgumentRef=Wy,c.getLastInListOperationInputListDataType=Hy,c.getLastInListOperationOutputElementDataType=zy,c.getLastInListOperationOutputElementReturn=Qy,c.getLastInListOperationOutputElementReturnParentRef=Xy,c.getLastInListOperationOutputElementReturnRef=Yy,c.getLinkedEntitiesFromArgumentDeclaration=l7,c.getLowestPersistedEntityImplementation=IA,c.getParentCanvasEntities=Rt,c.getParentCanvasEntity=tt,c.getParentEntryPoint=n7,c.getPassThroughCallableEntityReferenceSchema=Te,c.getPassThroughCallableEntityTypeSchema=mo,c.getPlayableEntityReferenceSchema=g3,c.getPlayableEntityTypeSchema=v3,c.getProject=x7,c.getPrototypeByType=Jo,c.getReferenceEntityId=N,c.getReferencedEntitiesStateOrErrors=No,c.getReferencedEntityStateOrErrors=bu,c.getRelatedCanvasElementsOnTheLeft=jr,c.getRelatedCanvasElementsOnTheRight=Xn,c.getRootEntryPointScopeOwner=Uu,c.getScopeOwner=vt,c.getTerminationReferenceSchema=A3,c.getTerminationTypeSchema=P3,c.getUsedArgFromDeclaration=u7,c.getUsedReturnFromDeclaration=p7,c.getValueReadingEntityReferenceSchema=yD,c.getValueReadingEntityTypeSchema=In,c.getValueWritingEntityReferenceSchema=d3,c.getValueWritingEntityTypeSchema=Aa,c.getVariableFromInputMapping=oA,c.getVariableFromReturnVariablePointer=dA,c.getVariableReferenceSchema=Jn,c.getVariableTypeSchema=gr,c.getVariablesFromArgumentDeclarations=jo,c.getVariablesFromInputMaps=lA,c.getVariablesFromOutputMapping=uA,c.getVariablesFromOutputMaps=pA,c.getVariablesFromReturnDeclarations=cA,c.getVariablesInSameOrHigherScope=cu,c.getWrites=_u,c.groupCallsBasedOnParallelizableExecution=a7,c.handleAfterEntityImplementationSideEffects=rA,c.handleBeforeEntityImplementationSideEffects=nA,c.httpRequestBodyArgument=Xa,c.httpRequestBodyArgumentRef=Gf,c.httpRequestBodyDataType=$f,c.httpRequestHeadersArgument=Ka,c.httpRequestHeadersArgumentRef=Vf,c.httpRequestHeadersDataType=Lf,c.httpRequestMethodArgument=za,c.httpRequestMethodArgumentRef=Nf,c.httpRequestMethodDataType=Mf,c.httpRequestMethodDataTypeRef=wf,c.httpRequestOperation=Mi,c.httpRequestOperationErrorValueDescriptor=bl,c.httpRequestOperationErrorValueDescriptorDatatype=rm,c.httpRequestOperationErrorValueDescriptorRef=nm,c.httpRequestOperationRef=Xf,c.httpRequestOperationRefEight=em,c.httpRequestOperationRefFive=Zf,c.httpRequestOperationRefFour=zf,c.httpRequestOperationRefNine=tm,c.httpRequestOperationRefSeven=Qf,c.httpRequestOperationRefSix=Kf,c.httpRequestOperationRefThree=Yf,c.httpRequestOperationRefTwo=Hf,c.httpRequestQueryParamsArgument=El,c.httpRequestQueryParamsArgumentRef=Cf,c.httpRequestQueryParamsDataType=Bf,c.httpRequestVariableURLArgument=Za,c.httpRequestVariableURLArgumentRef=Of,c.httpRequestVariableURLDataType=Sf,c.httpRequestVariableURLDataTypeRef=Pf,c.httpResponseBodyReturnDataType=Wf,c.httpResponseBodyReturnDataTypeRef=qf,c.httpResponseBodyReturnReturn=ts,c.httpResponseBodyReturnReturnRef=Jf,c.httpResponseCodeDataType=Uf,c.httpResponseCodeReturn=Qa,c.httpResponseCodeReturnRef=Ff,c.httpResponseHeadersDataType=kf,c.httpResponseHeadersDataTypeRef=xf,c.httpResponseHeadersReturn=es,c.httpResponseHeadersReturnRef=jf,c.implement=Fo,c.inferArgumentDeclarationDataType=BP,c.inferDataType=on,c.inferInputMapDataType=su,c.inferOutputMapDataType=lu,c.inferPropertyDataType=NP,c.inferReturnDeclarationDataType=ou,c.inferValueDescriptorDataType=MP,c.inferVariableDeclarationDataType=_P,c.inferVariableInstanceDataType=wP,c.initProject=VA,c.iterateOverListActionDescriptorListArgumentDeclaration=Em,c.iterateOverListActionDescriptorListArgumentDeclarationDataType=mm,c.iterateOverListActionDescriptorListArgumentDeclarationDataTypeParentRef=fm,c.iterateOverListActionDescriptorListArgumentDeclarationParentRef=Tm,c.iterateOverListLoopActionDescriptor=ir,c.iterateOverListLoopActionDescriptorDynamicReturnDeclaration=Rm,c.iterateOverListLoopActionDescriptorDynamicReturnDeclarationParentRef=bm,c.iterateOverListLoopBodyActionDescriptor=rs,c.iterateOverListLoopBodyActionDescriptorAnyDynamicArgument=Cm,c.iterateOverListLoopBodyActionDescriptorAnyDynamicArgumentParentRef=Sm,c.iterateOverListLoopBodyActionDescriptorAnyDynamicReturn=wm,c.iterateOverListLoopBodyActionDescriptorAnyDynamicReturnParentRef=Bm,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclaration=ns,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=gm,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=vm,c.iterateOverListLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=Im,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclaration=Om,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=Pm,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=Dm,c.iterateOverListLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=Am,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclaration=Qm,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclarationDataType=Km,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclarationDataTypeParentRef=Zm,c.iterateOverObjectKeysActionDescriptorObjectArgumentDeclarationParentRef=Xm,c.iterateOverObjectKeysLoopActionDescriptor=Li,c.iterateOverObjectKeysLoopActionDescriptorDynamicReturnDeclaration=tT,c.iterateOverObjectKeysLoopActionDescriptorDynamicReturnDeclarationParentRef=eT,c.iterateOverObjectKeysLoopBodyActionDescriptor=yT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicArgument=dT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicArgumentParentRef=cT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicReturn=pT,c.iterateOverObjectKeysLoopBodyActionDescriptorAnyDynamicReturnParentRef=uT,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclaration=Al,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=rT,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=nT,c.iterateOverObjectKeysLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=iT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclaration=lT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=sT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=aT,c.iterateOverObjectKeysLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=oT,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclaration=ET,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclarationDataType=mT,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclarationDataTypeParentRef=fT,c.iterateOverObjectValuesActionDescriptorObjectArgumentDeclarationParentRef=TT,c.iterateOverObjectValuesLoopActionDescriptor=Gi,c.iterateOverObjectValuesLoopActionDescriptorDynamicReturnDeclaration=RT,c.iterateOverObjectValuesLoopActionDescriptorDynamicReturnDeclarationParentRef=bT,c.iterateOverObjectValuesLoopBodyActionDescriptor=_T,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicArgument=CT,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicArgumentParentRef=ST,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicReturn=wT,c.iterateOverObjectValuesLoopBodyActionDescriptorAnyDynamicReturnParentRef=BT,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclaration=Ol,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=gT,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=vT,c.iterateOverObjectValuesLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=IT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclaration=OT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=PT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=DT,c.iterateOverObjectValuesLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=AT,c.iterateOverStringActionDescriptorDynamicReturnDeclaration=$m,c.iterateOverStringActionDescriptorDynamicReturnDeclarationParentRef=Gm,c.iterateOverStringActionDescriptorStringArgumentDeclaration=Lm,c.iterateOverStringActionDescriptorStringArgumentDeclarationDataType=Mm,c.iterateOverStringActionDescriptorStringArgumentDeclarationDataTypeParentRef=Nm,c.iterateOverStringActionDescriptorStringArgumentDeclarationParentRef=Vm,c.iterateOverStringLoopActionDescriptor=is,c.iterateOverStringLoopBodyActionDescriptor=Pl,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicArgument=Wm,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicArgumentParentRef=Jm,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicReturn=Ym,c.iterateOverStringLoopBodyActionDescriptorAnyDynamicReturnParentRef=Hm,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclaration=Il,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataType=Um,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclarationDataTypeParentRef=Fm,c.iterateOverStringLoopBodyActionDescriptorCurrentValueArgumentDeclarationParentRef=xm,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclaration=Dl,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataType=km,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclarationDataTypeParentRef=jm,c.iterateOverStringLoopBodyActionDescriptorIterationNumberArgumentDeclarationParentRef=qm,c.joinListOperation=ll,c.joinListOperationError=Py,c.joinListOperationErrorParentRef=Dy,c.joinListOperationFirstListArgument=by,c.joinListOperationFirstListArgumentParentRef=Ey,c.joinListOperationFirstListArgumentRef=py,c.joinListOperationFirstListDataType=yy,c.joinListOperationResultListDataType=Ty,c.joinListOperationResultListReturn=Iy,c.joinListOperationResultListReturnParentRef=gy,c.joinListOperationResultListReturnRef=my,c.joinListOperationSecondListArgument=vy,c.joinListOperationSecondListArgumentParentRef=Ry,c.joinListOperationSecondListArgumentRef=hy,c.joinListOperationSecondListDataType=fy,c.joinListWithLastSeparator=U,c.joinStringsOperation=Ni,c.joinStringsOperationDynamicStringArgument=Jp,c.joinStringsOperationDynamicStringArgumentParentRef=qp,c.joinStringsOperationDynamicStringArgumentRef=jp,c.joinStringsOperationDynamicStringDataType=kp,c.joinStringsOperationError=xp,c.joinStringsOperationErrorParentRef=Up,c.joinStringsOperationFirstStringArgument=Wa,c.joinStringsOperationFirstStringArgumentParentRef=wp,c.joinStringsOperationFirstStringArgumentRef=Pp,c.joinStringsOperationFirstStringDataType=Ap,c.joinStringsOperationResultStringDataType=Bp,c.joinStringsOperationResultStringReturn=_i,c.joinStringsOperationResultStringReturnParentRef=Fp,c.joinStringsOperationResultStringReturnRef=Cp,c.joinStringsOperationSecondStringArgument=Ha,c.joinStringsOperationSecondStringArgumentParentRef=$p,c.joinStringsOperationSecondStringArgumentRef=Op,c.joinStringsOperationSecondStringDataType=Sp,c.joinStringsOperationSeparatorStringArgument=Gp,c.joinStringsOperationSeparatorStringArgumentParentRef=Lp,c.joinStringsOperationSeparatorStringArgumentRef=_p,c.joinStringsOperationSeparatorStringDataType=Vp,c.joinStringsOperationSeparatorStringDataTypeDefaultValue=Mp,c.joinStringsOperationSeparatorStringDataTypeDefaultValueParentRef=Np,c.jsonPrototype=el,c.keyValueParamBuiltInBaseEntity=os,c.keyValueParamBuiltInBaseEntityNameProperty=KT,c.keyValueParamBuiltInBaseEntityNamePropertyDataTypeRef=qA,c.keyValueParamBuiltInBaseEntityNamePropertyParentRef=ZT,c.keyValueParamBuiltInBaseEntityNamePropertyRef=zT,c.keyValueParamBuiltInBaseEntityValueProperty=eE,c.keyValueParamBuiltInBaseEntityValuePropertyDataTypeRef=WA,c.keyValueParamBuiltInBaseEntityValuePropertyParentRef=QT,c.keyValueParamBuiltInBaseEntityValuePropertyRef=XT,c.lowercaseFirstLetter=OP,c.manualFlowActionDescriptorDeclarationArgumentDeclaration=vl,c.manualFlowActionDescriptorDeclarationArgumentDeclarationDataType=lm,c.manualFlowActionDescriptorDeclarationArgumentDeclarationDataTypeParentRef=om,c.manualFlowActionDescriptorDeclarationArgumentDeclarationParentRef=cm,c.manualFlowLoopActionDescriptor=Rl,c.manualFlowLoopActionDescriptorDynamicReturnDeclaration=sm,c.manualFlowLoopActionDescriptorDynamicReturnDeclarationParentRef=am,c.manualFlowLoopBodyActionDescriptor=gl,c.manualFlowLoopBodyActionDescriptorAnyDynamicArgument=um,c.manualFlowLoopBodyActionDescriptorAnyDynamicArgumentParentRef=dm,c.manualFlowLoopBodyActionDescriptorAnyDynamicReturn=ym,c.manualFlowLoopBodyActionDescriptorAnyDynamicReturnParentRef=pm,c.mapActionDescriptorToTypeItRepresents=b7,c.mergeEntityErrorsList=c9,c.mergeListOfEntities=T7,c.methodDefaultValue=_f,c.mockClientProject=JI,c.moreThanOrEqualCondition=Xr,c.moreThanOrEqualConditionLeftHandArgument=wb,c.moreThanOrEqualConditionLeftHandArgumentDataType=Cb,c.moreThanOrEqualConditionLeftHandArgumentDataTypeParentRef=Sb,c.moreThanOrEqualConditionLeftHandArgumentParentRef=Bb,c.moreThanOrEqualConditionRightHandArgument=Vb,c.moreThanOrEqualConditionRightHandArgumentDataType=Nb,c.moreThanOrEqualConditionRightHandArgumentDataTypeParentRef=_b,c.moreThanOrEqualConditionRightHandArgumentParentRef=Mb,c.notEmptyCondition=cr,c.notEmptyConditionArgument=Ab,c.notEmptyConditionRef=Pb,c.nullPrototype=UA,c.numberAdditionOperation=Ja,c.numberAdditionOperationDynamicSummandArgument=op,c.numberAdditionOperationDynamicSummandArgumentType=sp,c.numberAdditionOperationDynamicSummandArgumentTypeParentRef=ap,c.numberAdditionOperationError=ip,c.numberAdditionOperationErrorParentRef=rp,c.numberAdditionOperationFirstNumberArgument=tl,c.numberAdditionOperationFirstNumberArgumentRef=zu,c.numberAdditionOperationFirstNumberDataType=Zu,c.numberAdditionOperationRef=tp,c.numberAdditionOperationRefThree=rl,c.numberAdditionOperationRefTwo=np,c.numberAdditionOperationResultNumberDataType=ep,c.numberAdditionOperationResultNumberReturn=il,c.numberAdditionOperationResultNumberReturnRef=Qu,c.numberAdditionOperationSecondNumberArgument=nl,c.numberAdditionOperationSecondNumberArgumentRef=Ku,c.numberAdditionOperationSecondNumberDataType=Xu,c.numberPrototype=X,c.numberSubtractionOperation=sl,c.numberSubtractionOperationDynamicSubtrahendArgument=Ip,c.numberSubtractionOperationDynamicSubtrahendArgumentType=gp,c.numberSubtractionOperationDynamicSubtrahendArgumentTypeParentRef=vp,c.numberSubtractionOperationError=Rp,c.numberSubtractionOperationErrorParentRef=bp,c.numberSubtractionOperationFirstNumberArgument=hp,c.numberSubtractionOperationFirstNumberArgumentRef=lp,c.numberSubtractionOperationFirstNumberDataType=cp,c.numberSubtractionOperationRef=al,c.numberSubtractionOperationRefThree=Tp,c.numberSubtractionOperationRefTwo=fp,c.numberSubtractionOperationResultNumberDataType=yp,c.numberSubtractionOperationResultNumberReturn=Ep,c.numberSubtractionOperationResultNumberReturnRef=pp,c.numberSubtractionOperationSecondNumberArgument=mp,c.numberSubtractionOperationSecondNumberArgumentRef=dp,c.numberSubtractionOperationSecondNumberDataType=up,c.numberValueAutogenerationSchema=rd,c.parallelExecutionOperation=Wt,c.parallelExecutionOperationError=Ch,c.parallelExecutionOperationErrorParentRef=Sh,c.parallelExecutionOperationListOfExecutionResultsDataType=Ph,c.parallelExecutionOperationListOfExecutionResultsReturn=fl,c.parallelExecutionOperationListOfExecutionResultsReturnRef=Dh,c.parallelExecutionOperationListOfFunctionsArgument=hl,c.parallelExecutionOperationListOfFunctionsArgumentDatatype=Ih,c.parallelExecutionOperationListOfFunctionsArgumentRef=gh,c.parallelExecutionOperationListOfFunctionsBlueprint=vh,c.parallelExecutionOperationListOfFunctionsBlueprintDynamicInput=Rh,c.parallelExecutionOperationListOfFunctionsBlueprintDynamicOutput=bh,c.parallelExecutionOperationRef=Ah,c.parallelExecutionOperationRefThree=Oh,c.persistedBuiltInBaseEntity=ke,c.persistedBuiltInBaseEntityCreatedAtProperty=hb,c.persistedBuiltInBaseEntityCreatedAtPropertyDataType=pb,c.persistedBuiltInBaseEntityCreatedAtPropertyDataTypeRef=sO,c.persistedBuiltInBaseEntityCreatedAtPropertyParentRef=yb,c.persistedBuiltInBaseEntityCreatedAtPropertyRef=ub,c.persistedBuiltInBaseEntityDatabaseProperty=Ui,c.persistedBuiltInBaseEntityDatabasePropertyDataTypeRef=nO,c.persistedBuiltInBaseEntityDatabasePropertyParentRef=nb,c.persistedBuiltInBaseEntityDatabasePropertyRef=tb,c.persistedBuiltInBaseEntityDeletedAtProperty=db,c.persistedBuiltInBaseEntityDeletedAtPropertyDataType=lb,c.persistedBuiltInBaseEntityDeletedAtPropertyDataTypeRef=aO,c.persistedBuiltInBaseEntityDeletedAtPropertyParentRef=cb,c.persistedBuiltInBaseEntityDeletedAtPropertyRef=ob,c.persistedBuiltInBaseEntityIdentifierProperty=sb,c.persistedBuiltInBaseEntityIdentifierPropertyDataTypeRef=rb,c.persistedBuiltInBaseEntityIdentifierPropertyParentRef=ab,c.persistedBuiltInBaseEntityIdentifierPropertyRef=ib,c.persistedBuiltInBaseEntityUpdatedAtProperty=Eb,c.persistedBuiltInBaseEntityUpdatedAtPropertyDataType=mb,c.persistedBuiltInBaseEntityUpdatedAtPropertyDataTypeRef=oO,c.persistedBuiltInBaseEntityUpdatedAtPropertyParentRef=Tb,c.persistedBuiltInBaseEntityUpdatedAtPropertyRef=fb,c.processOutputGlobalValueDescriptorDataType=$b,c.processOutputGlobalValueDescriptorReturn=Yl,c.processOutputGlobalValueDescriptorReturnRef=Gb,c.projectPublicationCompletedGlobalEvent=ys,c.propertyToZodSchema=Qb,c.relationalDatabaseBuiltInBaseEntity=Mn,c.relationalDatabaseBuiltInBaseEntityAutoscalingProperty=xl,c.relationalDatabaseBuiltInBaseEntityAutoscalingPropertyDataTypeRef=zE,c.relationalDatabaseBuiltInBaseEntityAutoscalingPropertyParentRef=ZE,c.relationalDatabaseBuiltInBaseEntityAutoscalingPropertyRef=YE,c.relationalDatabaseBuiltInBaseEntityDefaultProperty=Ul,c.relationalDatabaseBuiltInBaseEntityDefaultPropertyDataTypeRef=WE,c.relationalDatabaseBuiltInBaseEntityDefaultPropertyRef=HE,c.relationalDatabaseBuiltInBaseEntityIdentifierProperty=cs,c.relationalDatabaseBuiltInBaseEntityIdentifierPropertyDataTypeRef=UE,c.relationalDatabaseBuiltInBaseEntityIdentifierPropertyRef=xE,c.relationalDatabaseBuiltInBaseEntityMinSizeProperty=ps,c.relationalDatabaseBuiltInBaseEntityMinSizePropertyDataTypeRef=qE,c.relationalDatabaseBuiltInBaseEntityMinSizePropertyRef=JE,c.relationalDatabaseBuiltInBaseEntityPasswordProperty=us,c.relationalDatabaseBuiltInBaseEntityPasswordPropertyDataTypeRef=KA,c.relationalDatabaseBuiltInBaseEntityPasswordPropertyRef=kE,c.relationalDatabaseBuiltInBaseEntityRef=Zr,c.relationalDatabaseBuiltInBaseEntityUsernameProperty=ds,c.relationalDatabaseBuiltInBaseEntityUsernamePropertyDataTypeRef=zA,c.relationalDatabaseBuiltInBaseEntityUsernamePropertyRef=jE,c.resolveActionDescriptorName=xP,c.resolveBaseEntityName=LP,c.resolveBuiltInBaseEntityDataTypeLabel=GP,c.resolveConditionOperatorLabel=Co,c.resolveCustomEntityDataTypeLabel=$P,c.resolveDataType=Oo,c.resolveDataTypeEntityOrNestedChildrenFromLiteralValue=Cu,c.resolveDataTypeLabel=du,c.resolveEntityDataTypeLabel=K5,c.resolveEntityName=C,c.resolveFirstCallsSecond=s7,c.resolveFirstWritesSecond=o7,c.resolvePrimitiveEntityName=UP,c.resolveSearchName=FP,c.resolveVariableScope=Y5,c.sequentialExecutionOperation=mn,c.sequentialExecutionOperationError=zh,c.sequentialExecutionOperationErrorParentRef=Yh,c.sequentialExecutionOperationListOfExecutionResultsDataType=Jh,c.sequentialExecutionOperationListOfExecutionResultsReturn=Tl,c.sequentialExecutionOperationListOfExecutionResultsReturnParentRef=Hh,c.sequentialExecutionOperationListOfExecutionResultsReturnRef=qh,c.sequentialExecutionOperationListOfFunctionsArgument=ml,c.sequentialExecutionOperationListOfFunctionsArgumentDatatype=kh,c.sequentialExecutionOperationListOfFunctionsArgumentParentRef=Wh,c.sequentialExecutionOperationListOfFunctionsArgumentRef=jh,c.sequentialExecutionOperationListOfFunctionsBlueprint=xh,c.sequentialExecutionOperationListOfFunctionsBlueprintDynamicInput=Uh,c.sequentialExecutionOperationListOfFunctionsBlueprintDynamicOutput=Fh,c.softDeletePersistedEntityMethod=QE,c.softDeletePersistedEntityMethodParentRef=XE,c.sortCallsBasedOnExecutionDependencies=sA,c.sortChildrenEntitiesBasedOnExecutionDependencies=i7,c.splitListOperation=dl,c.splitListOperationError=ky,c.splitListOperationErrorParentRef=jy,c.splitListOperationFirstOutputListDataType=_y,c.splitListOperationFirstOutputListReturn=$y,c.splitListOperationFirstOutputListReturnParentRef=Gy,c.splitListOperationFirstOutputListReturnRef=cl,c.splitListOperationInputListArgument=My,c.splitListOperationInputListArgumentParentRef=Ny,c.splitListOperationInputListArgumentRef=Sy,c.splitListOperationInputListDataType=Cy,c.splitListOperationSecondOutputListDataType=Fy,c.splitListOperationSecondOutputListReturn=xy,c.splitListOperationSecondOutputListReturnParentRef=Uy,c.splitListOperationSplitIndexArgument=Ly,c.splitListOperationSplitIndexArgumentParentRef=Vy,c.splitListOperationSplitIndexArgumentRef=By,c.splitListOperationSplitIndexDataType=wy,c.splitStringOperation=ol,c.splitStringOperationError=ly,c.splitStringOperationErrorParentRef=oy,c.splitStringOperationFirstPartResultStringDataType=Kp,c.splitStringOperationFirstPartResultStringReturn=sy,c.splitStringOperationFirstPartResultStringReturnParentRef=ay,c.splitStringOperationFirstPartResultStringReturnRef=Zp,c.splitStringOperationIndexArgument=ry,c.splitStringOperationIndexArgumentParentRef=ny,c.splitStringOperationIndexArgumentRef=Yp,c.splitStringOperationIndexDataType=zp,c.splitStringOperationSecondPartResultStringDataType=Qp,c.splitStringOperationSecondPartResultStringReturn=xA,c.splitStringOperationSecondPartResultStringReturnParentRef=iy,c.splitStringOperationSecondPartResultStringReturnRef=Xp,c.splitStringOperationStringArgument=ty,c.splitStringOperationStringArgumentParentRef=ey,c.splitStringOperationStringArgumentRef=Wp,c.splitStringOperationStringDataType=Hp,c.stringPrototype=x,c.stringValueAutogenerationSchema=nd,c.suggestNewIdForEntity=mu,c.test_primitive_entities_export=k7,c.toCamelCase=z5,c.toEntityState=Nt,c.toKebabCase=VP,c.toLowerCaseKebabCase=So,c.toPascalCase=Z5,c.untypedObjectPrototype=Xe,c.updateErrorsList=ie,c.updateValueReader=ja,c.urlDefaultValue=Af,c.uuidPrototype=qa,c.validateArgumentDeclarationName=hu,c.validateCalledByErrorIdInAction=z2,c.validateCalledByIdInAction=Y2,c.validateCallers=KP,c.validateConditionEntityDeclaration=X2,c.validateCustomEntityName=Bo,c.validateDataOperation=rr,c.validateDataOperationDataToValidateArgument=ff,c.validateDataOperationDataToValidateArgumentParentRef=hf,c.validateDataOperationDataToValidateArgumentRef=pf,c.validateDataOperationDataToValidateDataType=yf,c.validateDataOperationEntityToMatchTypeArgument=bf,c.validateDataOperationEntityToMatchTypeArgumentParentRef=Ef,c.validateDataOperationEntityToMatchTypeArgumentRef=mf,c.validateDataOperationEntityToMatchTypeDataType=Tf,c.validateDataOperationError=If,c.validateDataOperationErrorParentRef=gf,c.validateDataOperationOutputEntityDeclaration=vf,c.validateDataOperationOutputEntityDeclarationParentRef=Rf,c.validateEntryCaller=ZP,c.validateErrorCaller=zP,c.validateFunctionCallDeclaration=QP,c.validateFunctionDeclarationName=uu,c.validateGeneratedEntityParentIsNotBuiltInEntity=q2,c.validateGeneration=j2,c.validateGenerationTarget=Le,c.validateGenerationUpdate=k2,c.validateLoopEntityDeclaration=Q2,c.validateName=X5,c.validateOperationEntityDeclaration=eA,c.validatePropertyName=yu,c.validateReachability=Cn,c.validateReadsValueInActionPayload=Z2,c.validateReferenceObject=_o,c.validateReferenceToOne=Ru,c.validateReferences=He,c.validateReturnDeclarationName=fu,c.validateSuccessCaller=YP,c.validateValueReaderGenerationUpdate=Fa,c.validateValueWritter=Au,c.validateVariableDeclarationName=pu,c.validateVariableInternalCallUse=Ou,c.valueAutogenerationCurrentDateAndTimeSchema=HI,c.valueAutogenerationGenericSchema=Xs,c.valueAutogenerationOptions=ad,c.valueAutogenerationOptionsSchema=WI,c.valueAutogenerationRandomBooleanSchema=td,c.valueAutogenerationRandomDateBetweenSchema=nD,c.valueAutogenerationRandomDateFromSchema=eD,c.valueAutogenerationRandomDateSchema=to,c.valueAutogenerationRandomDateUntilSchema=tD,c.valueAutogenerationRandomNumberBetweenSchema=ZI,c.valueAutogenerationRandomNumberFromSchema=YI,c.valueAutogenerationRandomNumberSchema=Qs,c.valueAutogenerationRandomNumberUntilSchema=zI,c.valueAutogenerationRandomSchema=ba,c.valueAutogenerationRandomTextBetweenSchema=QI,c.valueAutogenerationRandomTextFromSchema=KI,c.valueAutogenerationRandomTextSchema=eo,c.valueAutogenerationRandomTextUntilSchema=XI,c.valueAutogenerationRangeValueTypesSchema=Ea,c.valueAutogenerationUniqueSchema=ed,c.waitOperation=pt,c.waitOperationMillisecondsNumberArgument=tr,c.waitOperationMillisecondsNumberArgumentRef=_h,c.waitOperationMillisecondsNumberDataType=Nh,c.waitOperationOperationError=Lh,c.waitOperationOperationErrorParentRef=Vh,c.waitOperationRef=Mh,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})});