@meshery/schemas 1.3.45 → 1.3.47

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,155 +1,605 @@
1
- var e={openapi:"3.0.0",info:{title:"Relationship",description:"OpenAPI schema for relationship definitions between Meshery components.",version:"v1beta3",contact:{name:"Meshery Maintainers",email:"maintainers@meshery.io",url:"https://meshery.io"},license:{name:"Apache 2.0",url:"https://www.apache.org/licenses/LICENSE-2.0.html"}},paths:{},components:{schemas:{RelationshipDefinition:{description:"Relationships define the nature of interaction between interconnected components in Meshery. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs.meshery.io/concepts/logical/relationships.",type:"object",additionalProperties:false,required:["schemaVersion","version","model","kind","type","subType","id"],properties:{id:{description:"Uniquely identifies the entity","x-go-type-skip-optional-pointer":true,"x-order":1,"x-oapi-codegen-extra-tags":{yaml:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},schemaVersion:{description:"Specifies the version of the schema used for the relationship definition.","x-order":8,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",json:"schemaVersion"},type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},version:{description:"Specifies the version of the relationship definition.","x-order":13,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},kind:{description:"Kind of the Relationship. Learn more about relationships - https://docs.meshery.io/concepts/logical/relationships.",type:"string",enum:["hierarchical","edge","sibling"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"kind",json:"kind"}},type:{description:"Classification of relationships. Used to group relationships similar in nature.",type:"string","x-go-name":"RelationshipType","x-go-type-skip-optional-pointer":true,"x-order":12,"x-oapi-codegen-extra-tags":{yaml:"type",json:"type",gorm:"column:type"},maxLength:255},subType:{description:"Most granular unit of relationship classification. The combination of Kind, Type and SubType together uniquely identify a Relationship.",type:"string","x-go-type-skip-optional-pointer":true,"x-order":10,"x-oapi-codegen-extra-tags":{yaml:"subType",json:"subType"},maxLength:255},status:{type:"string",description:"Status of the relationship.",enum:["enabled","ignored","deleted","approved","pending"],"x-order":11,"x-oapi-codegen-extra-tags":{yaml:"status",json:"status"}},capabilities:{type:"array",description:"Capabilities associated with the relationship.","x-order":2,items:{"x-go-type":"capabilityv1beta1.Capability","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/capability",name:"capabilityv1beta1"},$id:"https://schemas.meshery.io/capability.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery manages entities in accordance with their specific capabilities. This field explicitly identifies those capabilities largely by what actions a given component supports; e.g. metric-scrape, sub-interface, and so on. This field is extensible. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",additionalProperties:false,type:"object",required:["description","schemaVersion","version","displayName","kind","type","subType","entityState","key","status"],"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},properties:{schemaVersion:{description:"Specifies the version of the schema to which the capability definition conforms.",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},version:{description:"Version of the capability definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{description:"Name of the capability in human-readible format.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},description:{type:"string",description:"A written representation of the purpose and characteristics of the capability.",maxLength:5e3},kind:{description:"Top-level categorization of the capability",additionalProperties:false,anyOf:[{const:"action",description:"For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."},{const:"mutate",description:"For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."},{const:"view",description:"For capabilities related to viewing an entity. Example: the ability to view a components configuration."},{const:"interaction",description:"Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "}],type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},type:{description:"Classification of capabilities. Used to group capabilities similar in nature.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},subType:{description:"Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},key:{description:"Key that backs the capability.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},entityState:{description:"State of the entity in which the capability is applicable.",type:"array",items:{type:"string",enum:["declaration","instance"],pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",description:"A string starting with an alphanumeric character. Spaces and hyphens allowed."}},status:{type:"string",description:"Status of the capability",default:"enabled",enum:["enabled","disabled"]},metadata:{type:"object",description:"Metadata contains additional information associated with the capability. Extension point.",additionalProperties:true}},default:[{description:"Configure the visual styles for the component",displayName:"Styling",entityState:["declaration"],key:"",kind:"mutate",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"",type:"style",version:"0.7.0"},{description:"Change the shape of the component",displayName:"Change Shape",entityState:["declaration"],key:"",kind:"mutate",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"shape",type:"style",version:"0.7.0"},{description:"Drag and Drop a component into a parent component in graph view",displayName:"Compound Drag And Drop",entityState:["declaration"],key:"",kind:"interaction",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"compoundDnd",type:"graph",version:"0.7.0"},{description:"Add text to nodes body",displayName:"Body Text",entityState:["declaration"],key:"",kind:"mutate",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"body-text",type:"style",version:"0.7.0"}]},"x-oapi-codegen-extra-tags":{yaml:"capabilities",json:"capabilities,omitempty",gorm:"type:bytes;serializer:json"}},metadata:{"x-go-type":"RelationshipMetadata","x-order":5,"x-oapi-codegen-extra-tags":{gorm:"column:metadata;type:bytes;serializer:json",yaml:"metadata",json:"metadata,omitempty"},type:"object",description:"Metadata contains additional information associated with the Relationship.",additionalProperties:true,"x-go-name":"RelationshipMetadata",properties:{description:{description:"Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",type:"string","x-oapi-codegen-extra-tags":{json:"description"},maxLength:5e3},styles:{"x-go-type":"RelationshipDefinitionMetadataStyles","x-oapi-codegen-extra-tags":{json:"styles"},type:"object",description:"Visualization styles for a relationship",required:["primaryColor","svgColor","svgWhite"],properties:{primaryColor:{type:"string",description:"Primary color of the component used for UI representation.","x-oapi-codegen-extra-tags":{json:"primaryColor"},maxLength:500},secondaryColor:{type:"string",description:"Secondary color of the entity used for UI representation.","x-oapi-codegen-extra-tags":{json:"secondaryColor,omitempty"},maxLength:500},svgWhite:{type:"string",description:"White SVG of the entity used for UI representation on dark background.","x-oapi-codegen-extra-tags":{json:"svgWhite"},maxLength:500},svgColor:{type:"string",description:"Colored SVG of the entity used for UI representation on light background.","x-oapi-codegen-extra-tags":{json:"svgColor"},maxLength:500},svgComplete:{type:"string",description:"Complete SVG of the entity used for UI representation, often inclusive of background.","x-oapi-codegen-extra-tags":{json:"svgComplete,omitempty"},maxLength:500},color:{type:"string",description:"The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.","x-oapi-codegen-extra-tags":{json:"color,omitempty"},maxLength:500},textOpacity:{type:"number",format:"float",description:"The opacity of the label text, including its outline.","x-go-name":"TextOpacity","x-oapi-codegen-extra-tags":{json:"textOpacity,omitempty"},minimum:0,maximum:1},fontFamily:{type:"string",description:"A comma-separated list of font names to use on the label text.","x-go-name":"FontFamily","x-oapi-codegen-extra-tags":{json:"fontFamily,omitempty"},maxLength:500},fontSize:{type:"string",description:"The size of the label text.","x-go-name":"FontSize","x-oapi-codegen-extra-tags":{json:"fontSize,omitempty"},maxLength:500},fontStyle:{type:"string",description:"A CSS font style to be applied to the label text.","x-go-name":"FontStyle","x-oapi-codegen-extra-tags":{json:"fontStyle,omitempty"},maxLength:500},fontWeight:{type:"string",description:"A CSS font weight to be applied to the label text.","x-go-name":"FontWeight","x-oapi-codegen-extra-tags":{json:"fontWeight,omitempty"},maxLength:500},textTransform:{description:"A transformation to apply to the label text","x-go-name":"TextTransform","x-oapi-codegen-extra-tags":{json:"textTransform,omitempty"},type:"string",enum:["none","uppercase","lowercase"]},opacity:{type:"number",format:"float",description:"The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility","x-go-name":"Opacity","x-oapi-codegen-extra-tags":{json:"opacity,omitempty"},minimum:0,maximum:1},zIndex:{type:"integer",description:"An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index.","x-go-name":"ZIndex","x-oapi-codegen-extra-tags":{json:"zIndex,omitempty"},minimum:0},label:{type:"string",description:"The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"Label","x-oapi-codegen-extra-tags":{json:"label,omitempty"},maxLength:500},edgeAnimation:{type:"string",description:"The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .","x-go-name":"EdgeAnimation","x-oapi-codegen-extra-tags":{json:"edgeAnimation,omitempty"},maxLength:500},curveStyle:{"x-go-name":"CurveStyle","x-oapi-codegen-extra-tags":{json:"curveStyle,omitempty"},type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},lineColor:{type:"string",description:"The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"LineColor","x-oapi-codegen-extra-tags":{json:"lineColor,omitempty"},maxLength:500},lineStyle:{"x-go-name":"LineStyle","x-oapi-codegen-extra-tags":{json:"lineStyle,omitempty"},type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},lineCap:{"x-go-name":"LineCap","x-oapi-codegen-extra-tags":{json:"lineCap,omitempty"},type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},lineOpacity:{type:"number",format:"float",description:"The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.","x-go-name":"LineOpacity","x-oapi-codegen-extra-tags":{json:"lineOpacity,omitempty"},minimum:0,maximum:1},targetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"TargetArrowColor","x-oapi-codegen-extra-tags":{json:"targetArrowColor,omitempty"},maxLength:500},targetArrowShape:{"x-go-name":"TargetArrowShape","x-oapi-codegen-extra-tags":{json:"targetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},targetArrowFill:{"x-go-name":"TargetArrowFill","x-oapi-codegen-extra-tags":{json:"targetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},midTargetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"MidTargetArrowColor","x-oapi-codegen-extra-tags":{json:"midTargetArrowColor,omitempty"},maxLength:500},midTargetArrowShape:{"x-go-name":"MidTargetArrowShape","x-oapi-codegen-extra-tags":{json:"midTargetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},midTargetArrowFill:{"x-go-name":"MidTargetArrowFill","x-oapi-codegen-extra-tags":{json:"midTargetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},arrowScale:{type:"number",format:"float",description:"Scaling for the arrow size.","x-go-name":"ArrowScale","x-oapi-codegen-extra-tags":{json:"arrowScale,omitempty"},minimum:0},sourceLabel:{type:"string",description:"The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"SourceLabel","x-oapi-codegen-extra-tags":{json:"sourceLabel,omitempty"},maxLength:500},targetLabel:{type:"string",description:"The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"TargetLabel","x-oapi-codegen-extra-tags":{json:"targetLabel,omitempty"},maxLength:500}}},isAnnotation:{type:"boolean",description:"Indicates whether the relationship should be treated as a logical representation only","x-oapi-codegen-extra-tags":{json:"isAnnotation"}}}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},"x-go-type-skip-optional-pointer":true,"x-order":6,description:"Model Reference to the specific registered model to which the component belongs and from which model version, category, and other properties may be referenced. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{yaml:"model",json:"model",gorm:"type:bytes;serializer:json"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},modelId:{"x-go-type-skip-optional-pointer":true,"x-go-name":"ModelId","x-order":7,description:'Foreign key reference to the model. Not exposed on the wire (json:"-"); the snake_case DB column name lives in the gorm tag.',"x-oapi-codegen-extra-tags":{json:"-",gorm:"index:idx_relationship_definition_dbs_model_id,column:model_id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},evaluationQuery:{description:"Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs.",type:"string","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"evaluationQuery",json:"evaluationQuery"},maxLength:500},selectors:{"x-go-type":"SelectorSet","x-order":9,"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json",yaml:"selectors,omitempty",json:"selectors,omitempty"},type:"array",description:"Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",items:{"x-go-type":"SelectorSetItem",type:"object",description:"Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",required:["allow"],properties:{allow:{description:"Selectors used to define relationships which are allowed.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"allow"},type:"object",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
1
+ var e={openapi:"3.0.0",info:{title:"Relationship",description:"OpenAPI schema for relationship definitions between Meshery components.",version:"v1beta3",contact:{name:"Meshery Maintainers",email:"maintainers@meshery.io",url:"https://meshery.io"},license:{name:"Apache 2.0",url:"https://www.apache.org/licenses/LICENSE-2.0.html"}},paths:{},components:{schemas:{RelationshipDefinition:{description:"Relationships define the nature of interaction between interconnected components in Meshery. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs.meshery.io/concepts/logical/relationships.",type:"object",additionalProperties:false,required:["schemaVersion","version","model","kind","type","subType","id"],properties:{id:{description:"Uniquely identifies the entity","x-go-type-skip-optional-pointer":true,"x-order":1,"x-oapi-codegen-extra-tags":{yaml:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},schemaVersion:{description:"Specifies the version of the schema used for the relationship definition.","x-order":8,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",json:"schemaVersion"},type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},version:{description:"Specifies the version of the relationship definition.","x-order":13,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},kind:{description:`Kind of the Relationship. Enum: hierarchical, edge, sibling.
2
+
3
+ hierarchical: parent-child containment, nesting, or inheritance. from is the child; to is the parent.
4
+ edge: a connection between peers (network, mount, permission, reference, and similar).
5
+ sibling: schema-native encoding for peer grouping such as tagsets. In-tree Kubernetes models instead encode tagsets as kind=hierarchical, type=sibling, subType=matchlabels. Do not mix the two encodings in one model.
6
+
7
+ Learn more at https://docs.meshery.io/concepts/logical/relationships.
8
+ `,type:"string",enum:["hierarchical","edge","sibling"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"kind",json:"kind"}},type:{description:`Classification of relationships. Open string (not an enum). Used with kind and subType to select the visual paradigm and evaluation policy.
9
+
10
+ Canonical values: parent (with kind=hierarchical); binding (assigns, mounts, or entitles); non-binding (real link that does not provision the attachment); sibling (in-tree tagsets with kind=hierarchical); matchlabels (schema-native tagsets with kind=sibling).
11
+
12
+ Copy an established kind/type/subType combination rather than inventing a type. See docs/relationship-definition-taxonomy.md.
13
+ `,type:"string","x-go-name":"RelationshipType","x-go-type-skip-optional-pointer":true,"x-order":12,"x-oapi-codegen-extra-tags":{yaml:"type",json:"type",gorm:"column:type"},maxLength:255},subType:{description:`Most granular unit of relationship classification. Open string. Combined with kind and type, uniquely identifies the visual paradigm.
14
+
15
+ Canonical values: inventory, alias, wallet, matchlabels, tagsets, reference, network, firewall, permission, mount, annotation.
16
+
17
+ badge is a visual-paradigm name only; there is no in-tree encoding. Do not invent subType=badge without a visualization and evaluation policy. See docs/relationship-definition-taxonomy.md.
18
+ `,type:"string","x-go-type-skip-optional-pointer":true,"x-order":10,"x-oapi-codegen-extra-tags":{yaml:"subType",json:"subType"},maxLength:255},status:{type:"string",description:"Status of the relationship.",enum:["enabled","ignored","deleted","approved","pending"],"x-order":11,"x-oapi-codegen-extra-tags":{yaml:"status",json:"status"}},capabilities:{type:"array",description:"Capabilities associated with the relationship.","x-order":2,items:{"x-go-type":"capabilityv1beta1.Capability","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/capability",name:"capabilityv1beta1"},$id:"https://schemas.meshery.io/capability.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery manages entities in accordance with their specific capabilities. This field explicitly identifies those capabilities largely by what actions a given component supports; e.g. metric-scrape, sub-interface, and so on. This field is extensible. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",additionalProperties:false,type:"object",required:["description","schemaVersion","version","displayName","kind","type","subType","entityState","key","status"],"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},properties:{schemaVersion:{description:"Specifies the version of the schema to which the capability definition conforms.",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},version:{description:"Version of the capability definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{description:"Name of the capability in human-readible format.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},description:{type:"string",description:"A written representation of the purpose and characteristics of the capability.",maxLength:5e3},kind:{description:"Top-level categorization of the capability",additionalProperties:false,anyOf:[{const:"action",description:"For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."},{const:"mutate",description:"For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."},{const:"view",description:"For capabilities related to viewing an entity. Example: the ability to view a components configuration."},{const:"interaction",description:"Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "}],type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},type:{description:"Classification of capabilities. Used to group capabilities similar in nature.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},subType:{description:"Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},key:{description:"Key that backs the capability.",type:"string",pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"},entityState:{description:"State of the entity in which the capability is applicable.",type:"array",items:{type:"string",enum:["declaration","instance"],pattern:"^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",description:"A string starting with an alphanumeric character. Spaces and hyphens allowed."}},status:{type:"string",description:"Status of the capability",default:"enabled",enum:["enabled","disabled"]},metadata:{type:"object",description:"Metadata contains additional information associated with the capability. Extension point.",additionalProperties:true}},default:[{description:"Configure the visual styles for the component",displayName:"Styling",entityState:["declaration"],key:"",kind:"mutate",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"",type:"style",version:"0.7.0"},{description:"Change the shape of the component",displayName:"Change Shape",entityState:["declaration"],key:"",kind:"mutate",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"shape",type:"style",version:"0.7.0"},{description:"Drag and Drop a component into a parent component in graph view",displayName:"Compound Drag And Drop",entityState:["declaration"],key:"",kind:"interaction",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"compoundDnd",type:"graph",version:"0.7.0"},{description:"Add text to nodes body",displayName:"Body Text",entityState:["declaration"],key:"",kind:"mutate",schemaVersion:"capability.meshery.io/v1beta1",status:"enabled",subType:"body-text",type:"style",version:"0.7.0"}]},"x-oapi-codegen-extra-tags":{yaml:"capabilities",json:"capabilities,omitempty",gorm:"type:bytes;serializer:json"}},metadata:{"x-go-type":"RelationshipMetadata","x-order":5,"x-oapi-codegen-extra-tags":{gorm:"column:metadata;type:bytes;serializer:json",yaml:"metadata",json:"metadata,omitempty"},type:"object",description:"Metadata contains additional information associated with the Relationship.",additionalProperties:true,"x-go-name":"RelationshipMetadata",properties:{description:{description:"Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",type:"string","x-oapi-codegen-extra-tags":{json:"description"},maxLength:5e3},styles:{"x-go-type":"RelationshipDefinitionMetadataStyles","x-oapi-codegen-extra-tags":{json:"styles"},type:"object",description:"Visualization styles for a relationship",required:["primaryColor","svgColor","svgWhite"],properties:{primaryColor:{type:"string",description:"Primary color of the component used for UI representation.","x-oapi-codegen-extra-tags":{json:"primaryColor"},maxLength:500},secondaryColor:{type:"string",description:"Secondary color of the entity used for UI representation.","x-oapi-codegen-extra-tags":{json:"secondaryColor,omitempty"},maxLength:500},svgWhite:{type:"string",description:"White SVG of the entity used for UI representation on dark background.","x-oapi-codegen-extra-tags":{json:"svgWhite"},maxLength:500},svgColor:{type:"string",description:"Colored SVG of the entity used for UI representation on light background.","x-oapi-codegen-extra-tags":{json:"svgColor"},maxLength:500},svgComplete:{type:"string",description:"Complete SVG of the entity used for UI representation, often inclusive of background.","x-oapi-codegen-extra-tags":{json:"svgComplete,omitempty"},maxLength:500},color:{type:"string",description:"The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.","x-oapi-codegen-extra-tags":{json:"color,omitempty"},maxLength:500},textOpacity:{type:"number",format:"float",description:"The opacity of the label text, including its outline.","x-go-name":"TextOpacity","x-oapi-codegen-extra-tags":{json:"textOpacity,omitempty"},minimum:0,maximum:1},fontFamily:{type:"string",description:"A comma-separated list of font names to use on the label text.","x-go-name":"FontFamily","x-oapi-codegen-extra-tags":{json:"fontFamily,omitempty"},maxLength:500},fontSize:{type:"string",description:"The size of the label text.","x-go-name":"FontSize","x-oapi-codegen-extra-tags":{json:"fontSize,omitempty"},maxLength:500},fontStyle:{type:"string",description:"A CSS font style to be applied to the label text.","x-go-name":"FontStyle","x-oapi-codegen-extra-tags":{json:"fontStyle,omitempty"},maxLength:500},fontWeight:{type:"string",description:"A CSS font weight to be applied to the label text.","x-go-name":"FontWeight","x-oapi-codegen-extra-tags":{json:"fontWeight,omitempty"},maxLength:500},textTransform:{description:"A transformation to apply to the label text","x-go-name":"TextTransform","x-oapi-codegen-extra-tags":{json:"textTransform,omitempty"},type:"string",enum:["none","uppercase","lowercase"]},opacity:{type:"number",format:"float",description:"The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility","x-go-name":"Opacity","x-oapi-codegen-extra-tags":{json:"opacity,omitempty"},minimum:0,maximum:1},zIndex:{type:"integer",description:"An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index.","x-go-name":"ZIndex","x-oapi-codegen-extra-tags":{json:"zIndex,omitempty"},minimum:0},label:{type:"string",description:"The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"Label","x-oapi-codegen-extra-tags":{json:"label,omitempty"},maxLength:500},edgeAnimation:{type:"string",description:"The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .","x-go-name":"EdgeAnimation","x-oapi-codegen-extra-tags":{json:"edgeAnimation,omitempty"},maxLength:500},curveStyle:{"x-go-name":"CurveStyle","x-oapi-codegen-extra-tags":{json:"curveStyle,omitempty"},type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},lineColor:{type:"string",description:"The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"LineColor","x-oapi-codegen-extra-tags":{json:"lineColor,omitempty"},maxLength:500},lineStyle:{"x-go-name":"LineStyle","x-oapi-codegen-extra-tags":{json:"lineStyle,omitempty"},type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},lineCap:{"x-go-name":"LineCap","x-oapi-codegen-extra-tags":{json:"lineCap,omitempty"},type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},lineOpacity:{type:"number",format:"float",description:"The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.","x-go-name":"LineOpacity","x-oapi-codegen-extra-tags":{json:"lineOpacity,omitempty"},minimum:0,maximum:1},targetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"TargetArrowColor","x-oapi-codegen-extra-tags":{json:"targetArrowColor,omitempty"},maxLength:500},targetArrowShape:{"x-go-name":"TargetArrowShape","x-oapi-codegen-extra-tags":{json:"targetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},targetArrowFill:{"x-go-name":"TargetArrowFill","x-oapi-codegen-extra-tags":{json:"targetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},midTargetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"MidTargetArrowColor","x-oapi-codegen-extra-tags":{json:"midTargetArrowColor,omitempty"},maxLength:500},midTargetArrowShape:{"x-go-name":"MidTargetArrowShape","x-oapi-codegen-extra-tags":{json:"midTargetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},midTargetArrowFill:{"x-go-name":"MidTargetArrowFill","x-oapi-codegen-extra-tags":{json:"midTargetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},arrowScale:{type:"number",format:"float",description:"Scaling for the arrow size.","x-go-name":"ArrowScale","x-oapi-codegen-extra-tags":{json:"arrowScale,omitempty"},minimum:0},sourceLabel:{type:"string",description:"The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"SourceLabel","x-oapi-codegen-extra-tags":{json:"sourceLabel,omitempty"},maxLength:500},targetLabel:{type:"string",description:"The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"TargetLabel","x-oapi-codegen-extra-tags":{json:"targetLabel,omitempty"},maxLength:500}}},isAnnotation:{type:"boolean",description:"Indicates whether the relationship should be treated as a logical representation only","x-oapi-codegen-extra-tags":{json:"isAnnotation"}}}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},"x-go-type-skip-optional-pointer":true,"x-order":6,description:"Model Reference to the specific registered model to which the component belongs and from which model version, category, and other properties may be referenced. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{yaml:"model",json:"model",gorm:"type:bytes;serializer:json"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},modelId:{"x-go-type-skip-optional-pointer":true,"x-go-name":"ModelId","x-order":7,description:'Foreign key reference to the model. Not exposed on the wire (json:"-"); the snake_case DB column name lives in the gorm tag.',"x-oapi-codegen-extra-tags":{json:"-",gorm:"index:idx_relationship_definition_dbs_model_id,column:model_id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},evaluationQuery:{description:"Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs.",type:"string","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"evaluationQuery",json:"evaluationQuery"},maxLength:500},selectors:{"x-go-type":"SelectorSet","x-order":9,"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json",yaml:"selectors,omitempty",json:"selectors,omitempty"},type:"array",description:"Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",items:{"x-go-type":"SelectorSetItem",type:"object",description:"Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",required:["allow"],properties:{allow:{description:"Selectors used to define relationships which are allowed.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"allow"},type:"object",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
19
+
20
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
21
+
22
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
23
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
24
+
25
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
26
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
27
+
28
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
29
+
30
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
31
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
32
+
33
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
34
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
35
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
2
36
 
3
37
  add: Inserts a value into an array or adds a member to an object.
4
38
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
5
39
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
6
40
  remove: Removes a value.
41
+ replace: Replaces the value at the target location.
7
42
  copy: Copies a value from one location to another.
8
43
  move: Moves a value from one location to another.
9
44
  test: Tests that a value at the target location is equal to a specified value.
10
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
45
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
46
+
47
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
48
+
49
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
50
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
51
+
52
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
53
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
54
+
55
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
56
+
57
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
58
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
59
+
60
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
61
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
62
+
63
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
64
+
65
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
66
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
67
+
68
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
69
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
70
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
11
71
 
12
72
  add: Inserts a value into an array or adds a member to an object.
13
73
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
14
74
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
15
75
  remove: Removes a value.
76
+ replace: Replaces the value at the target location.
16
77
  copy: Copies a value from one location to another.
17
78
  move: Moves a value from one location to another.
18
79
  test: Tests that a value at the target location is equal to a specified value.
19
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},deny:{description:"Optional selectors used to define relationships which should not be created / is restricted.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"deny,omitempty"},type:"object",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
80
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
81
+
82
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
83
+
84
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
85
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
86
+
87
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
88
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},deny:{description:"Optional selectors used to define relationships which should not be created / is restricted.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"deny,omitempty"},type:"object",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
89
+
90
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
91
+
92
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
93
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
94
+
95
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
96
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
97
+
98
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
99
+
100
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
101
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
102
+
103
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
104
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
105
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
20
106
 
21
107
  add: Inserts a value into an array or adds a member to an object.
22
108
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
23
109
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
24
110
  remove: Removes a value.
111
+ replace: Replaces the value at the target location.
25
112
  copy: Copies a value from one location to another.
26
113
  move: Moves a value from one location to another.
27
114
  test: Tests that a value at the target location is equal to a specified value.
28
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
115
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
116
+
117
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
118
+
119
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
120
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
121
+
122
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
123
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
124
+
125
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
126
+
127
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
128
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
129
+
130
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
131
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
132
+
133
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
134
+
135
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
136
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
137
+
138
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
139
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
140
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
29
141
 
30
142
  add: Inserts a value into an array or adds a member to an object.
31
143
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
32
144
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
33
145
  remove: Removes a value.
146
+ replace: Replaces the value at the target location.
34
147
  copy: Copies a value from one location to another.
35
148
  move: Moves a value from one location to another.
36
149
  test: Tests that a value at the target location is equal to a specified value.
37
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}}}}}}},MutatorRef:{type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},MutatedRef:{type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}},RelationshipDefinitionSelectorsPatchStrategy:{type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
150
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
151
+
152
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
153
+
154
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
155
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
156
+
157
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
158
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}}}}}}},MutatorRef:{type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
159
+
160
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
161
+
162
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
163
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},MutatedRef:{type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
164
+
165
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
166
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}},RelationshipDefinitionSelectorsPatchStrategy:{type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
38
167
 
39
168
  add: Inserts a value into an array or adds a member to an object.
40
169
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
41
170
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
42
171
  remove: Removes a value.
172
+ replace: Replaces the value at the target location.
43
173
  copy: Copies a value from one location to another.
44
174
  move: Moves a value from one location to another.
45
175
  test: Tests that a value at the target location is equal to a specified value.
46
- `,enum:["merge","strategic","add","remove","copy","move","test"]},RelationshipDefinitionSelectorsPatch:{type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
176
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},RelationshipDefinitionSelectorsPatch:{type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
177
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
47
178
 
48
179
  add: Inserts a value into an array or adds a member to an object.
49
180
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
50
181
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
51
182
  remove: Removes a value.
183
+ replace: Replaces the value at the target location.
52
184
  copy: Copies a value from one location to another.
53
185
  move: Moves a value from one location to another.
54
186
  test: Tests that a value at the target location is equal to a specified value.
55
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},MatchSelectorItem:{type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},MatchSelector:{type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}},"x-oapi-codegen-extra-tags":{json:"match,omitempty"}},SelectorItem:{type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
187
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
188
+
189
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
190
+
191
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
192
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
193
+
194
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
195
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},MatchSelectorItem:{type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
196
+
197
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
198
+
199
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
200
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
201
+
202
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
203
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},MatchSelector:{type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
204
+
205
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
206
+
207
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
208
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
209
+
210
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
211
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
212
+
213
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
214
+
215
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
216
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
217
+
218
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
219
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}},"x-oapi-codegen-extra-tags":{json:"match,omitempty"}},SelectorItem:{type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
220
+
221
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
222
+
223
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
224
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
225
+
226
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
227
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
228
+
229
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
230
+
231
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
232
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
233
+
234
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
235
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
236
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
56
237
 
57
238
  add: Inserts a value into an array or adds a member to an object.
58
239
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
59
240
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
60
241
  remove: Removes a value.
242
+ replace: Replaces the value at the target location.
61
243
  copy: Copies a value from one location to another.
62
244
  move: Moves a value from one location to another.
63
245
  test: Tests that a value at the target location is equal to a specified value.
64
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},Selector:{type:"object",description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
246
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
247
+
248
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
249
+
250
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
251
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
252
+
253
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
254
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},Selector:{type:"object",description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
255
+
256
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
257
+
258
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
259
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
260
+
261
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
262
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
263
+
264
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
265
+
266
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
267
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
268
+
269
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
270
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
271
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
65
272
 
66
273
  add: Inserts a value into an array or adds a member to an object.
67
274
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
68
275
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
69
276
  remove: Removes a value.
277
+ replace: Replaces the value at the target location.
70
278
  copy: Copies a value from one location to another.
71
279
  move: Moves a value from one location to another.
72
280
  test: Tests that a value at the target location is equal to a specified value.
73
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
281
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
282
+
283
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
284
+
285
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
286
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
287
+
288
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
289
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
290
+
291
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
292
+
293
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
294
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
295
+
296
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
297
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
298
+
299
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
300
+
301
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
302
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
303
+
304
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
305
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
306
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
74
307
 
75
308
  add: Inserts a value into an array or adds a member to an object.
76
309
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
77
310
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
78
311
  remove: Removes a value.
312
+ replace: Replaces the value at the target location.
79
313
  copy: Copies a value from one location to another.
80
314
  move: Moves a value from one location to another.
81
315
  test: Tests that a value at the target location is equal to a specified value.
82
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},SelectorSetItem:{type:"object",description:"Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",required:["allow"],properties:{allow:{description:"Selectors used to define relationships which are allowed.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"allow"},type:"object",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
316
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
317
+
318
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
319
+
320
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
321
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
322
+
323
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
324
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},SelectorSetItem:{type:"object",description:"Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",required:["allow"],properties:{allow:{description:"Selectors used to define relationships which are allowed.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"allow"},type:"object",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
325
+
326
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
327
+
328
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
329
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
330
+
331
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
332
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
333
+
334
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
335
+
336
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
337
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
338
+
339
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
340
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
341
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
83
342
 
84
343
  add: Inserts a value into an array or adds a member to an object.
85
344
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
86
345
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
87
346
  remove: Removes a value.
347
+ replace: Replaces the value at the target location.
88
348
  copy: Copies a value from one location to another.
89
349
  move: Moves a value from one location to another.
90
350
  test: Tests that a value at the target location is equal to a specified value.
91
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
351
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
352
+
353
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
354
+
355
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
356
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
357
+
358
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
359
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
360
+
361
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
362
+
363
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
364
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
365
+
366
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
367
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
368
+
369
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
370
+
371
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
372
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
373
+
374
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
375
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
376
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
92
377
 
93
378
  add: Inserts a value into an array or adds a member to an object.
94
379
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
95
380
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
96
381
  remove: Removes a value.
382
+ replace: Replaces the value at the target location.
97
383
  copy: Copies a value from one location to another.
98
384
  move: Moves a value from one location to another.
99
385
  test: Tests that a value at the target location is equal to a specified value.
100
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},deny:{description:"Optional selectors used to define relationships which should not be created / is restricted.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"deny,omitempty"},type:"object",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
386
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
387
+
388
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
389
+
390
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
391
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
392
+
393
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
394
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},deny:{description:"Optional selectors used to define relationships which should not be created / is restricted.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"deny,omitempty"},type:"object",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
395
+
396
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
397
+
398
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
399
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
400
+
401
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
402
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
403
+
404
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
405
+
406
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
407
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
408
+
409
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
410
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
411
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
101
412
 
102
413
  add: Inserts a value into an array or adds a member to an object.
103
414
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
104
415
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
105
416
  remove: Removes a value.
417
+ replace: Replaces the value at the target location.
106
418
  copy: Copies a value from one location to another.
107
419
  move: Moves a value from one location to another.
108
420
  test: Tests that a value at the target location is equal to a specified value.
109
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
421
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
422
+
423
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
424
+
425
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
426
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
427
+
428
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
429
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
430
+
431
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
432
+
433
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
434
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
435
+
436
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
437
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
438
+
439
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
440
+
441
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
442
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
443
+
444
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
445
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
446
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
110
447
 
111
448
  add: Inserts a value into an array or adds a member to an object.
112
449
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
113
450
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
114
451
  remove: Removes a value.
452
+ replace: Replaces the value at the target location.
115
453
  copy: Copies a value from one location to another.
116
454
  move: Moves a value from one location to another.
117
455
  test: Tests that a value at the target location is equal to a specified value.
118
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}}}},SelectorSet:{type:"array",description:"Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.","x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},items:{"x-go-type":"SelectorSetItem",type:"object",description:"Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",required:["allow"],properties:{allow:{description:"Selectors used to define relationships which are allowed.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"allow"},type:"object",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
456
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
457
+
458
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
459
+
460
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
461
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
462
+
463
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
464
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}}}},SelectorSet:{type:"array",description:"Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.","x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},items:{"x-go-type":"SelectorSetItem",type:"object",description:"Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",required:["allow"],properties:{allow:{description:"Selectors used to define relationships which are allowed.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"allow"},type:"object",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
465
+
466
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
467
+
468
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
469
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
470
+
471
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
472
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
473
+
474
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
475
+
476
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
477
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
478
+
479
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
480
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
481
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
119
482
 
120
483
  add: Inserts a value into an array or adds a member to an object.
121
484
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
122
485
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
123
486
  remove: Removes a value.
487
+ replace: Replaces the value at the target location.
124
488
  copy: Copies a value from one location to another.
125
489
  move: Moves a value from one location to another.
126
490
  test: Tests that a value at the target location is equal to a specified value.
127
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
491
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
492
+
493
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
494
+
495
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
496
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
497
+
498
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
499
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
500
+
501
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
502
+
503
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
504
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
505
+
506
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
507
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
508
+
509
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
510
+
511
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
512
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
513
+
514
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
515
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
516
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
128
517
 
129
518
  add: Inserts a value into an array or adds a member to an object.
130
519
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
131
520
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
132
521
  remove: Removes a value.
522
+ replace: Replaces the value at the target location.
133
523
  copy: Copies a value from one location to another.
134
524
  move: Moves a value from one location to another.
135
525
  test: Tests that a value at the target location is equal to a specified value.
136
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},deny:{description:"Optional selectors used to define relationships which should not be created / is restricted.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"deny,omitempty"},type:"object",required:["from","to"],properties:{from:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
526
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
527
+
528
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
529
+
530
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
531
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
532
+
533
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
534
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}},deny:{description:"Optional selectors used to define relationships which should not be created / is restricted.","x-go-type":"Selector","x-oapi-codegen-extra-tags":{json:"deny,omitempty"},type:"object",required:["from","to"],properties:{from:{description:"Originator side of the selector. For kind=hierarchical, from is the child. Each from item relates to each to item in the same selector (1:many).",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
535
+
536
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
537
+
538
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
539
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
540
+
541
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
542
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
543
+
544
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
545
+
546
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
547
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
548
+
549
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
550
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
551
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
137
552
 
138
553
  add: Inserts a value into an array or adds a member to an object.
139
554
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
140
555
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
141
556
  remove: Removes a value.
557
+ replace: Replaces the value at the target location.
142
558
  copy: Copies a value from one location to another.
143
559
  move: Moves a value from one location to another.
144
560
  test: Tests that a value at the target location is equal to a specified value.
145
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:"Patch configuration for the selector","x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
561
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
562
+
563
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
564
+
565
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
566
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
567
+
568
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
569
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"from"}},to:{description:"Destination side of the selector. For kind=hierarchical, to is the parent.",type:"array",items:{"x-go-type":"SelectorItem",type:"object",description:"Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},match:{"x-go-type":"MatchSelector","x-oapi-codegen-extra-tags":{json:"match,omitempty"},type:"object",description:"Match configuration for selector",properties:{refs:{type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"refs,omitempty"},description:"The refs of the matchselector."},from:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
570
+
571
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
572
+
573
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
574
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
575
+
576
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
577
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"from,omitempty"},description:"The from of the matchselector."},to:{type:"array",items:{"x-go-type":"MatchSelectorItem",type:"object",description:"Match selector item for binding between nodes",required:["kind"],properties:{id:{"x-oapi-codegen-extra-tags":{json:"id"},type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},kind:{type:"string","x-oapi-codegen-extra-tags":{json:"kind"},description:"Kind of the resource.",maxLength:255},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
578
+
579
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
580
+
581
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
582
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
583
+
584
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
585
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}},"x-oapi-codegen-extra-tags":{json:"to,omitempty"},description:"The to of the matchselector."}}},matchStrategyMatrix:{description:"Match strategy matrix for the selector",type:"array",items:{type:"array",items:{type:"string"}},"x-oapi-codegen-extra-tags":{json:"matchStrategyMatrix"}},model:{"x-go-type":"modelv1beta1.ModelReference","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/model",name:"modelv1beta1"},description:"Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models","x-oapi-codegen-extra-tags":{json:"model,omitempty"},"x-generate-db-helpers":true,type:"object",required:["id","name","version","displayName","model","registrant"],properties:{id:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"]},version:{description:"Version of the model definition.",type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"},displayName:{type:"string",description:"Human-readable name for the model.",minLength:1,maxLength:100,pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"]},model:{type:"object",description:"Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",required:["version"],properties:{version:{description:"Version of the model as defined by the registrant.","x-oapi-codegen-extra-tags":{json:"version"},"x-order":1,type:"string",minLength:5,maxLength:100,pattern:"^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string",description:"Kind of the registrant.",maxLength:255}}}}},patch:{"x-go-type":"RelationshipDefinitionSelectorsPatch","x-oapi-codegen-extra-tags":{json:"patch"},type:"object",description:`Patch configuration for a matched selector. mutatorRef is the value source; mutatedRef is the value sink. Sequence lengths must match, and the two sequences pair across the related selector items - the source paths on one item feed the sink paths on the related item of the other side, index by index. Omit this object when the relationship only matches.
586
+ `,"x-go-name":"RelationshipDefinitionSelectorsPatch",properties:{patchStrategy:{"x-oapi-codegen-extra-tags":{json:"patchStrategy,omitempty"},type:"string",description:`patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
146
587
 
147
588
  add: Inserts a value into an array or adds a member to an object.
148
589
  merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.
149
590
  strategic: specific to Kubernetes and understands the structure of Kubernetes objects.
150
591
  remove: Removes a value.
592
+ replace: Replaces the value at the target location.
151
593
  copy: Copies a value from one location to another.
152
594
  move: Moves a value from one location to another.
153
595
  test: Tests that a value at the target location is equal to a specified value.
154
- `,enum:["merge","strategic","add","remove","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:"JSON ref to value from where patch should be applied.",items:{type:"array",items:{type:"string"},description:"The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",items:{type:"array",items:{type:"string"},description:"JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}}}}},RelationshipDefinitionMetadataStylesTextTransform:{type:"string",description:"A transformation to apply to the label text",enum:["none","uppercase","lowercase"]},RelationshipDefinitionMetadataStylesLineStyle:{type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},RelationshipDefinitionMetadataStylesCurveStyle:{type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},RelationshipDefinitionMetadataStylesLineCap:{type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},RelationshipDefinitionMetadataStylesArrowShape:{type:"string",description:"The shape of the edge's arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},RelationshipDefinitionMetadataStylesMidTargetArrowShape:{type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},RelationshipDefinitionMetadataStylesMidTargetArrowFill:{type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},RelationshipDefinitionMetadataStylesTargetArrowShape:{type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},RelationshipDefinitionMetadataStylesTargetArrowFill:{type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},RelationshipDefinitionMetadataStyles:{type:"object",description:"Visualization styles for a relationship",required:["primaryColor","svgColor","svgWhite"],properties:{primaryColor:{type:"string",description:"Primary color of the component used for UI representation.","x-oapi-codegen-extra-tags":{json:"primaryColor"},maxLength:500},secondaryColor:{type:"string",description:"Secondary color of the entity used for UI representation.","x-oapi-codegen-extra-tags":{json:"secondaryColor,omitempty"},maxLength:500},svgWhite:{type:"string",description:"White SVG of the entity used for UI representation on dark background.","x-oapi-codegen-extra-tags":{json:"svgWhite"},maxLength:500},svgColor:{type:"string",description:"Colored SVG of the entity used for UI representation on light background.","x-oapi-codegen-extra-tags":{json:"svgColor"},maxLength:500},svgComplete:{type:"string",description:"Complete SVG of the entity used for UI representation, often inclusive of background.","x-oapi-codegen-extra-tags":{json:"svgComplete,omitempty"},maxLength:500},color:{type:"string",description:"The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.","x-oapi-codegen-extra-tags":{json:"color,omitempty"},maxLength:500},textOpacity:{type:"number",format:"float",description:"The opacity of the label text, including its outline.","x-go-name":"TextOpacity","x-oapi-codegen-extra-tags":{json:"textOpacity,omitempty"},minimum:0,maximum:1},fontFamily:{type:"string",description:"A comma-separated list of font names to use on the label text.","x-go-name":"FontFamily","x-oapi-codegen-extra-tags":{json:"fontFamily,omitempty"},maxLength:500},fontSize:{type:"string",description:"The size of the label text.","x-go-name":"FontSize","x-oapi-codegen-extra-tags":{json:"fontSize,omitempty"},maxLength:500},fontStyle:{type:"string",description:"A CSS font style to be applied to the label text.","x-go-name":"FontStyle","x-oapi-codegen-extra-tags":{json:"fontStyle,omitempty"},maxLength:500},fontWeight:{type:"string",description:"A CSS font weight to be applied to the label text.","x-go-name":"FontWeight","x-oapi-codegen-extra-tags":{json:"fontWeight,omitempty"},maxLength:500},textTransform:{description:"A transformation to apply to the label text","x-go-name":"TextTransform","x-oapi-codegen-extra-tags":{json:"textTransform,omitempty"},type:"string",enum:["none","uppercase","lowercase"]},opacity:{type:"number",format:"float",description:"The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility","x-go-name":"Opacity","x-oapi-codegen-extra-tags":{json:"opacity,omitempty"},minimum:0,maximum:1},zIndex:{type:"integer",description:"An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index.","x-go-name":"ZIndex","x-oapi-codegen-extra-tags":{json:"zIndex,omitempty"},minimum:0},label:{type:"string",description:"The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"Label","x-oapi-codegen-extra-tags":{json:"label,omitempty"},maxLength:500},edgeAnimation:{type:"string",description:"The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .","x-go-name":"EdgeAnimation","x-oapi-codegen-extra-tags":{json:"edgeAnimation,omitempty"},maxLength:500},curveStyle:{"x-go-name":"CurveStyle","x-oapi-codegen-extra-tags":{json:"curveStyle,omitempty"},type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},lineColor:{type:"string",description:"The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"LineColor","x-oapi-codegen-extra-tags":{json:"lineColor,omitempty"},maxLength:500},lineStyle:{"x-go-name":"LineStyle","x-oapi-codegen-extra-tags":{json:"lineStyle,omitempty"},type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},lineCap:{"x-go-name":"LineCap","x-oapi-codegen-extra-tags":{json:"lineCap,omitempty"},type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},lineOpacity:{type:"number",format:"float",description:"The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.","x-go-name":"LineOpacity","x-oapi-codegen-extra-tags":{json:"lineOpacity,omitempty"},minimum:0,maximum:1},targetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"TargetArrowColor","x-oapi-codegen-extra-tags":{json:"targetArrowColor,omitempty"},maxLength:500},targetArrowShape:{"x-go-name":"TargetArrowShape","x-oapi-codegen-extra-tags":{json:"targetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},targetArrowFill:{"x-go-name":"TargetArrowFill","x-oapi-codegen-extra-tags":{json:"targetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},midTargetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"MidTargetArrowColor","x-oapi-codegen-extra-tags":{json:"midTargetArrowColor,omitempty"},maxLength:500},midTargetArrowShape:{"x-go-name":"MidTargetArrowShape","x-oapi-codegen-extra-tags":{json:"midTargetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},midTargetArrowFill:{"x-go-name":"MidTargetArrowFill","x-oapi-codegen-extra-tags":{json:"midTargetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},arrowScale:{type:"number",format:"float",description:"Scaling for the arrow size.","x-go-name":"ArrowScale","x-oapi-codegen-extra-tags":{json:"arrowScale,omitempty"},minimum:0},sourceLabel:{type:"string",description:"The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"SourceLabel","x-oapi-codegen-extra-tags":{json:"sourceLabel,omitempty"},maxLength:500},targetLabel:{type:"string",description:"The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"TargetLabel","x-oapi-codegen-extra-tags":{json:"targetLabel,omitempty"},maxLength:500}}},RelationshipMetadata:{type:"object",description:"Metadata contains additional information associated with the Relationship.",additionalProperties:true,"x-go-name":"RelationshipMetadata","x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},properties:{description:{description:"Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",type:"string","x-oapi-codegen-extra-tags":{json:"description"},maxLength:5e3},styles:{"x-go-type":"RelationshipDefinitionMetadataStyles","x-oapi-codegen-extra-tags":{json:"styles"},type:"object",description:"Visualization styles for a relationship",required:["primaryColor","svgColor","svgWhite"],properties:{primaryColor:{type:"string",description:"Primary color of the component used for UI representation.","x-oapi-codegen-extra-tags":{json:"primaryColor"},maxLength:500},secondaryColor:{type:"string",description:"Secondary color of the entity used for UI representation.","x-oapi-codegen-extra-tags":{json:"secondaryColor,omitempty"},maxLength:500},svgWhite:{type:"string",description:"White SVG of the entity used for UI representation on dark background.","x-oapi-codegen-extra-tags":{json:"svgWhite"},maxLength:500},svgColor:{type:"string",description:"Colored SVG of the entity used for UI representation on light background.","x-oapi-codegen-extra-tags":{json:"svgColor"},maxLength:500},svgComplete:{type:"string",description:"Complete SVG of the entity used for UI representation, often inclusive of background.","x-oapi-codegen-extra-tags":{json:"svgComplete,omitempty"},maxLength:500},color:{type:"string",description:"The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.","x-oapi-codegen-extra-tags":{json:"color,omitempty"},maxLength:500},textOpacity:{type:"number",format:"float",description:"The opacity of the label text, including its outline.","x-go-name":"TextOpacity","x-oapi-codegen-extra-tags":{json:"textOpacity,omitempty"},minimum:0,maximum:1},fontFamily:{type:"string",description:"A comma-separated list of font names to use on the label text.","x-go-name":"FontFamily","x-oapi-codegen-extra-tags":{json:"fontFamily,omitempty"},maxLength:500},fontSize:{type:"string",description:"The size of the label text.","x-go-name":"FontSize","x-oapi-codegen-extra-tags":{json:"fontSize,omitempty"},maxLength:500},fontStyle:{type:"string",description:"A CSS font style to be applied to the label text.","x-go-name":"FontStyle","x-oapi-codegen-extra-tags":{json:"fontStyle,omitempty"},maxLength:500},fontWeight:{type:"string",description:"A CSS font weight to be applied to the label text.","x-go-name":"FontWeight","x-oapi-codegen-extra-tags":{json:"fontWeight,omitempty"},maxLength:500},textTransform:{description:"A transformation to apply to the label text","x-go-name":"TextTransform","x-oapi-codegen-extra-tags":{json:"textTransform,omitempty"},type:"string",enum:["none","uppercase","lowercase"]},opacity:{type:"number",format:"float",description:"The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility","x-go-name":"Opacity","x-oapi-codegen-extra-tags":{json:"opacity,omitempty"},minimum:0,maximum:1},zIndex:{type:"integer",description:"An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index.","x-go-name":"ZIndex","x-oapi-codegen-extra-tags":{json:"zIndex,omitempty"},minimum:0},label:{type:"string",description:"The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"Label","x-oapi-codegen-extra-tags":{json:"label,omitempty"},maxLength:500},edgeAnimation:{type:"string",description:"The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .","x-go-name":"EdgeAnimation","x-oapi-codegen-extra-tags":{json:"edgeAnimation,omitempty"},maxLength:500},curveStyle:{"x-go-name":"CurveStyle","x-oapi-codegen-extra-tags":{json:"curveStyle,omitempty"},type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},lineColor:{type:"string",description:"The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"LineColor","x-oapi-codegen-extra-tags":{json:"lineColor,omitempty"},maxLength:500},lineStyle:{"x-go-name":"LineStyle","x-oapi-codegen-extra-tags":{json:"lineStyle,omitempty"},type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},lineCap:{"x-go-name":"LineCap","x-oapi-codegen-extra-tags":{json:"lineCap,omitempty"},type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},lineOpacity:{type:"number",format:"float",description:"The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.","x-go-name":"LineOpacity","x-oapi-codegen-extra-tags":{json:"lineOpacity,omitempty"},minimum:0,maximum:1},targetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"TargetArrowColor","x-oapi-codegen-extra-tags":{json:"targetArrowColor,omitempty"},maxLength:500},targetArrowShape:{"x-go-name":"TargetArrowShape","x-oapi-codegen-extra-tags":{json:"targetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},targetArrowFill:{"x-go-name":"TargetArrowFill","x-oapi-codegen-extra-tags":{json:"targetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},midTargetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"MidTargetArrowColor","x-oapi-codegen-extra-tags":{json:"midTargetArrowColor,omitempty"},maxLength:500},midTargetArrowShape:{"x-go-name":"MidTargetArrowShape","x-oapi-codegen-extra-tags":{json:"midTargetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},midTargetArrowFill:{"x-go-name":"MidTargetArrowFill","x-oapi-codegen-extra-tags":{json:"midTargetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},arrowScale:{type:"number",format:"float",description:"Scaling for the arrow size.","x-go-name":"ArrowScale","x-oapi-codegen-extra-tags":{json:"arrowScale,omitempty"},minimum:0},sourceLabel:{type:"string",description:"The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"SourceLabel","x-oapi-codegen-extra-tags":{json:"sourceLabel,omitempty"},maxLength:500},targetLabel:{type:"string",description:"The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"TargetLabel","x-oapi-codegen-extra-tags":{json:"targetLabel,omitempty"},maxLength:500}}},isAnnotation:{type:"boolean",description:"Indicates whether the relationship should be treated as a logical representation only","x-oapi-codegen-extra-tags":{json:"isAnnotation"}}}}}}},t=e;
596
+ `,enum:["merge","strategic","add","remove","replace","copy","move","test"]},mutatorRef:{"x-oapi-codegen-extra-tags":{json:"mutatorRef,omitempty"},type:"array",description:`Source of a patch: nested JSON path segments of the value to read. Pair with mutatedRef; sequences must be the same length. Index i of mutatorRef is copied onto index i of mutatedRef.
597
+
598
+ The pairing spans the two related selector items: a mutatorRef on one side (commonly the \`from\` item) supplies values to the mutatedRef on the related item of the other side, entry by entry, by index. Each path resolves relative to its own selector item's component document.
599
+
600
+ Example: mutatorRef [[config, url], [config, name]] patches onto mutatedRef [[configPatch, value], [name]]. Paths are relative to the Meshery component document (configuration, displayName, component.kind), not raw Kubernetes YAML. "_" may mark only the first array position in a path.
601
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, metadata, name]."}},mutatedRef:{"x-oapi-codegen-extra-tags":{json:"mutatedRef,omitempty"},type:"array",description:`Sink of a patch: nested JSON path segments (JSONPath) of the field to write. Pair with mutatorRef; sequences must be the same length. The mutatorRef it pairs with lives on the related selector item of the other side, and each path resolves relative to its own selector item's component document.
602
+
603
+ mutatedRef currently does not support patching an array value itself. Omit patch entirely when the relationship only matches (tagsets, annotation).
604
+ `,items:{type:"array",items:{type:"string"},description:"One path as an array of string segments, e.g. [configuration, spec, containers, _, name]."}}}}}},"x-oapi-codegen-extra-tags":{json:"to"}}}}}}},RelationshipDefinitionMetadataStylesTextTransform:{type:"string",description:"A transformation to apply to the label text",enum:["none","uppercase","lowercase"]},RelationshipDefinitionMetadataStylesLineStyle:{type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},RelationshipDefinitionMetadataStylesCurveStyle:{type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},RelationshipDefinitionMetadataStylesLineCap:{type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},RelationshipDefinitionMetadataStylesArrowShape:{type:"string",description:"The shape of the edge's arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},RelationshipDefinitionMetadataStylesMidTargetArrowShape:{type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},RelationshipDefinitionMetadataStylesMidTargetArrowFill:{type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},RelationshipDefinitionMetadataStylesTargetArrowShape:{type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},RelationshipDefinitionMetadataStylesTargetArrowFill:{type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},RelationshipDefinitionMetadataStyles:{type:"object",description:"Visualization styles for a relationship",required:["primaryColor","svgColor","svgWhite"],properties:{primaryColor:{type:"string",description:"Primary color of the component used for UI representation.","x-oapi-codegen-extra-tags":{json:"primaryColor"},maxLength:500},secondaryColor:{type:"string",description:"Secondary color of the entity used for UI representation.","x-oapi-codegen-extra-tags":{json:"secondaryColor,omitempty"},maxLength:500},svgWhite:{type:"string",description:"White SVG of the entity used for UI representation on dark background.","x-oapi-codegen-extra-tags":{json:"svgWhite"},maxLength:500},svgColor:{type:"string",description:"Colored SVG of the entity used for UI representation on light background.","x-oapi-codegen-extra-tags":{json:"svgColor"},maxLength:500},svgComplete:{type:"string",description:"Complete SVG of the entity used for UI representation, often inclusive of background.","x-oapi-codegen-extra-tags":{json:"svgComplete,omitempty"},maxLength:500},color:{type:"string",description:"The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.","x-oapi-codegen-extra-tags":{json:"color,omitempty"},maxLength:500},textOpacity:{type:"number",format:"float",description:"The opacity of the label text, including its outline.","x-go-name":"TextOpacity","x-oapi-codegen-extra-tags":{json:"textOpacity,omitempty"},minimum:0,maximum:1},fontFamily:{type:"string",description:"A comma-separated list of font names to use on the label text.","x-go-name":"FontFamily","x-oapi-codegen-extra-tags":{json:"fontFamily,omitempty"},maxLength:500},fontSize:{type:"string",description:"The size of the label text.","x-go-name":"FontSize","x-oapi-codegen-extra-tags":{json:"fontSize,omitempty"},maxLength:500},fontStyle:{type:"string",description:"A CSS font style to be applied to the label text.","x-go-name":"FontStyle","x-oapi-codegen-extra-tags":{json:"fontStyle,omitempty"},maxLength:500},fontWeight:{type:"string",description:"A CSS font weight to be applied to the label text.","x-go-name":"FontWeight","x-oapi-codegen-extra-tags":{json:"fontWeight,omitempty"},maxLength:500},textTransform:{description:"A transformation to apply to the label text","x-go-name":"TextTransform","x-oapi-codegen-extra-tags":{json:"textTransform,omitempty"},type:"string",enum:["none","uppercase","lowercase"]},opacity:{type:"number",format:"float",description:"The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility","x-go-name":"Opacity","x-oapi-codegen-extra-tags":{json:"opacity,omitempty"},minimum:0,maximum:1},zIndex:{type:"integer",description:"An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index.","x-go-name":"ZIndex","x-oapi-codegen-extra-tags":{json:"zIndex,omitempty"},minimum:0},label:{type:"string",description:"The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"Label","x-oapi-codegen-extra-tags":{json:"label,omitempty"},maxLength:500},edgeAnimation:{type:"string",description:"The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .","x-go-name":"EdgeAnimation","x-oapi-codegen-extra-tags":{json:"edgeAnimation,omitempty"},maxLength:500},curveStyle:{"x-go-name":"CurveStyle","x-oapi-codegen-extra-tags":{json:"curveStyle,omitempty"},type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},lineColor:{type:"string",description:"The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"LineColor","x-oapi-codegen-extra-tags":{json:"lineColor,omitempty"},maxLength:500},lineStyle:{"x-go-name":"LineStyle","x-oapi-codegen-extra-tags":{json:"lineStyle,omitempty"},type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},lineCap:{"x-go-name":"LineCap","x-oapi-codegen-extra-tags":{json:"lineCap,omitempty"},type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},lineOpacity:{type:"number",format:"float",description:"The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.","x-go-name":"LineOpacity","x-oapi-codegen-extra-tags":{json:"lineOpacity,omitempty"},minimum:0,maximum:1},targetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"TargetArrowColor","x-oapi-codegen-extra-tags":{json:"targetArrowColor,omitempty"},maxLength:500},targetArrowShape:{"x-go-name":"TargetArrowShape","x-oapi-codegen-extra-tags":{json:"targetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},targetArrowFill:{"x-go-name":"TargetArrowFill","x-oapi-codegen-extra-tags":{json:"targetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},midTargetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"MidTargetArrowColor","x-oapi-codegen-extra-tags":{json:"midTargetArrowColor,omitempty"},maxLength:500},midTargetArrowShape:{"x-go-name":"MidTargetArrowShape","x-oapi-codegen-extra-tags":{json:"midTargetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},midTargetArrowFill:{"x-go-name":"MidTargetArrowFill","x-oapi-codegen-extra-tags":{json:"midTargetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},arrowScale:{type:"number",format:"float",description:"Scaling for the arrow size.","x-go-name":"ArrowScale","x-oapi-codegen-extra-tags":{json:"arrowScale,omitempty"},minimum:0},sourceLabel:{type:"string",description:"The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"SourceLabel","x-oapi-codegen-extra-tags":{json:"sourceLabel,omitempty"},maxLength:500},targetLabel:{type:"string",description:"The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"TargetLabel","x-oapi-codegen-extra-tags":{json:"targetLabel,omitempty"},maxLength:500}}},RelationshipMetadata:{type:"object",description:"Metadata contains additional information associated with the Relationship.",additionalProperties:true,"x-go-name":"RelationshipMetadata","x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},properties:{description:{description:"Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",type:"string","x-oapi-codegen-extra-tags":{json:"description"},maxLength:5e3},styles:{"x-go-type":"RelationshipDefinitionMetadataStyles","x-oapi-codegen-extra-tags":{json:"styles"},type:"object",description:"Visualization styles for a relationship",required:["primaryColor","svgColor","svgWhite"],properties:{primaryColor:{type:"string",description:"Primary color of the component used for UI representation.","x-oapi-codegen-extra-tags":{json:"primaryColor"},maxLength:500},secondaryColor:{type:"string",description:"Secondary color of the entity used for UI representation.","x-oapi-codegen-extra-tags":{json:"secondaryColor,omitempty"},maxLength:500},svgWhite:{type:"string",description:"White SVG of the entity used for UI representation on dark background.","x-oapi-codegen-extra-tags":{json:"svgWhite"},maxLength:500},svgColor:{type:"string",description:"Colored SVG of the entity used for UI representation on light background.","x-oapi-codegen-extra-tags":{json:"svgColor"},maxLength:500},svgComplete:{type:"string",description:"Complete SVG of the entity used for UI representation, often inclusive of background.","x-oapi-codegen-extra-tags":{json:"svgComplete,omitempty"},maxLength:500},color:{type:"string",description:"The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.","x-oapi-codegen-extra-tags":{json:"color,omitempty"},maxLength:500},textOpacity:{type:"number",format:"float",description:"The opacity of the label text, including its outline.","x-go-name":"TextOpacity","x-oapi-codegen-extra-tags":{json:"textOpacity,omitempty"},minimum:0,maximum:1},fontFamily:{type:"string",description:"A comma-separated list of font names to use on the label text.","x-go-name":"FontFamily","x-oapi-codegen-extra-tags":{json:"fontFamily,omitempty"},maxLength:500},fontSize:{type:"string",description:"The size of the label text.","x-go-name":"FontSize","x-oapi-codegen-extra-tags":{json:"fontSize,omitempty"},maxLength:500},fontStyle:{type:"string",description:"A CSS font style to be applied to the label text.","x-go-name":"FontStyle","x-oapi-codegen-extra-tags":{json:"fontStyle,omitempty"},maxLength:500},fontWeight:{type:"string",description:"A CSS font weight to be applied to the label text.","x-go-name":"FontWeight","x-oapi-codegen-extra-tags":{json:"fontWeight,omitempty"},maxLength:500},textTransform:{description:"A transformation to apply to the label text","x-go-name":"TextTransform","x-oapi-codegen-extra-tags":{json:"textTransform,omitempty"},type:"string",enum:["none","uppercase","lowercase"]},opacity:{type:"number",format:"float",description:"The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility","x-go-name":"Opacity","x-oapi-codegen-extra-tags":{json:"opacity,omitempty"},minimum:0,maximum:1},zIndex:{type:"integer",description:"An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index.","x-go-name":"ZIndex","x-oapi-codegen-extra-tags":{json:"zIndex,omitempty"},minimum:0},label:{type:"string",description:"The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"Label","x-oapi-codegen-extra-tags":{json:"label,omitempty"},maxLength:500},edgeAnimation:{type:"string",description:"The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .","x-go-name":"EdgeAnimation","x-oapi-codegen-extra-tags":{json:"edgeAnimation,omitempty"},maxLength:500},curveStyle:{"x-go-name":"CurveStyle","x-oapi-codegen-extra-tags":{json:"curveStyle,omitempty"},type:"string",description:"The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",enum:["haystack","straight","bezier","unbundled-bezier","segments","taxi"]},lineColor:{type:"string",description:"The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"LineColor","x-oapi-codegen-extra-tags":{json:"lineColor,omitempty"},maxLength:500},lineStyle:{"x-go-name":"LineStyle","x-oapi-codegen-extra-tags":{json:"lineStyle,omitempty"},type:"string",description:"The style of the edge's line.",enum:["solid","dotted","dashed"]},lineCap:{"x-go-name":"LineCap","x-oapi-codegen-extra-tags":{json:"lineCap,omitempty"},type:"string",description:"The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",enum:["butt","round","square"]},lineOpacity:{type:"number",format:"float",description:"The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.","x-go-name":"LineOpacity","x-oapi-codegen-extra-tags":{json:"lineOpacity,omitempty"},minimum:0,maximum:1},targetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"TargetArrowColor","x-oapi-codegen-extra-tags":{json:"targetArrowColor,omitempty"},maxLength:500},targetArrowShape:{"x-go-name":"TargetArrowShape","x-oapi-codegen-extra-tags":{json:"targetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},targetArrowFill:{"x-go-name":"TargetArrowFill","x-oapi-codegen-extra-tags":{json:"targetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},midTargetArrowColor:{type:"string",description:"The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.","x-go-name":"MidTargetArrowColor","x-oapi-codegen-extra-tags":{json:"midTargetArrowColor,omitempty"},maxLength:500},midTargetArrowShape:{"x-go-name":"MidTargetArrowShape","x-oapi-codegen-extra-tags":{json:"midTargetArrowShape,omitempty"},type:"string",description:"The shape of the edge's source arrow",enum:["triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","tee","square","circle","diamond","chevron","none"]},midTargetArrowFill:{"x-go-name":"MidTargetArrowFill","x-oapi-codegen-extra-tags":{json:"midTargetArrowFill,omitempty"},type:"string",description:"The fill state of the edge's source arrow",enum:["filled","hollow"]},arrowScale:{type:"number",format:"float",description:"Scaling for the arrow size.","x-go-name":"ArrowScale","x-oapi-codegen-extra-tags":{json:"arrowScale,omitempty"},minimum:0},sourceLabel:{type:"string",description:"The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"SourceLabel","x-oapi-codegen-extra-tags":{json:"sourceLabel,omitempty"},maxLength:500},targetLabel:{type:"string",description:"The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id","x-go-name":"TargetLabel","x-oapi-codegen-extra-tags":{json:"targetLabel,omitempty"},maxLength:500}}},isAnnotation:{type:"boolean",description:"Indicates whether the relationship should be treated as a logical representation only","x-oapi-codegen-extra-tags":{json:"isAnnotation"}}}}}}},t=e;
155
605
  export{t as default};