@meshery/schemas 0.8.128 → 0.8.129

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.
Files changed (137) hide show
  1. package/dist/{Core-vaTzd8cz.d.mts → Core-BiYtFM4v.d.mts} +1 -1
  2. package/dist/{Core-vaTzd8cz.d.ts → Core-BiYtFM4v.d.ts} +1 -1
  3. package/dist/cloudApi.d.mts +13676 -3825
  4. package/dist/cloudApi.d.ts +13676 -3825
  5. package/dist/cloudApi.js +1 -1
  6. package/dist/cloudApi.mjs +1 -1
  7. package/dist/constructs/v1alpha1/capability/CapabilitySchema.d.mts +1 -159
  8. package/dist/constructs/v1alpha1/capability/CapabilitySchema.d.ts +1 -159
  9. package/dist/constructs/v1alpha1/core/Core.d.mts +1 -1
  10. package/dist/constructs/v1alpha1/core/Core.d.ts +1 -1
  11. package/dist/constructs/v1alpha1/core/CoreSchema.d.mts +1 -1652
  12. package/dist/constructs/v1alpha1/core/CoreSchema.d.ts +1 -1652
  13. package/dist/constructs/v1alpha1/core/CoreSchema.js +1 -1
  14. package/dist/constructs/v1alpha1/core/CoreSchema.mjs +1 -1
  15. package/dist/constructs/v1alpha2/catalog/CatalogSchema.d.mts +1 -84
  16. package/dist/constructs/v1alpha2/catalog/CatalogSchema.d.ts +1 -84
  17. package/dist/constructs/v1alpha3/relationship/Relationship.d.mts +32 -128
  18. package/dist/constructs/v1alpha3/relationship/Relationship.d.ts +32 -128
  19. package/dist/constructs/v1alpha3/relationship/RelationshipSchema.d.mts +1 -6983
  20. package/dist/constructs/v1alpha3/relationship/RelationshipSchema.d.ts +1 -6983
  21. package/dist/constructs/v1alpha3/relationship/RelationshipSchema.js +15 -15
  22. package/dist/constructs/v1alpha3/relationship/RelationshipSchema.mjs +15 -15
  23. package/dist/constructs/v1beta1/academy/Academy.d.mts +749 -319
  24. package/dist/constructs/v1beta1/academy/Academy.d.ts +749 -319
  25. package/dist/constructs/v1beta1/academy/AcademySchema.d.mts +1 -11842
  26. package/dist/constructs/v1beta1/academy/AcademySchema.d.ts +1 -11842
  27. package/dist/constructs/v1beta1/academy/AcademySchema.js +1 -1
  28. package/dist/constructs/v1beta1/academy/AcademySchema.mjs +1 -1
  29. package/dist/constructs/v1beta1/badge/BadgeSchema.d.mts +1 -522
  30. package/dist/constructs/v1beta1/badge/BadgeSchema.d.ts +1 -522
  31. package/dist/constructs/v1beta1/category/CategorySchema.d.mts +1 -64
  32. package/dist/constructs/v1beta1/category/CategorySchema.d.ts +1 -64
  33. package/dist/constructs/v1beta1/component/Component.d.mts +6 -12
  34. package/dist/constructs/v1beta1/component/Component.d.ts +6 -12
  35. package/dist/constructs/v1beta1/component/ComponentSchema.d.mts +1 -1781
  36. package/dist/constructs/v1beta1/component/ComponentSchema.d.ts +1 -1781
  37. package/dist/constructs/v1beta1/component/ComponentSchema.js +3 -3
  38. package/dist/constructs/v1beta1/component/ComponentSchema.mjs +3 -3
  39. package/dist/constructs/v1beta1/connection/Connection.d.mts +12 -12
  40. package/dist/constructs/v1beta1/connection/Connection.d.ts +12 -12
  41. package/dist/constructs/v1beta1/connection/ConnectionSchema.d.mts +1 -2978
  42. package/dist/constructs/v1beta1/connection/ConnectionSchema.d.ts +1 -2978
  43. package/dist/constructs/v1beta1/connection/ConnectionSchema.js +1 -1
  44. package/dist/constructs/v1beta1/connection/ConnectionSchema.mjs +1 -1
  45. package/dist/constructs/v1beta1/credential/Credential.d.mts +517 -0
  46. package/dist/constructs/v1beta1/credential/Credential.d.ts +517 -0
  47. package/dist/constructs/v1beta1/credential/Credential.js +1 -0
  48. package/dist/constructs/v1beta1/credential/Credential.mjs +0 -0
  49. package/dist/constructs/v1beta1/credential/CredentialSchema.d.mts +7 -0
  50. package/dist/constructs/v1beta1/credential/CredentialSchema.d.ts +7 -0
  51. package/dist/constructs/v1beta1/credential/CredentialSchema.js +9 -0
  52. package/dist/constructs/v1beta1/credential/CredentialSchema.mjs +9 -0
  53. package/dist/constructs/v1beta1/environment/Environment.d.mts +4 -4
  54. package/dist/constructs/v1beta1/environment/Environment.d.ts +4 -4
  55. package/dist/constructs/v1beta1/environment/EnvironmentSchema.d.mts +1 -958
  56. package/dist/constructs/v1beta1/environment/EnvironmentSchema.d.ts +1 -958
  57. package/dist/constructs/v1beta1/environment/EnvironmentSchema.js +1 -1
  58. package/dist/constructs/v1beta1/environment/EnvironmentSchema.mjs +1 -1
  59. package/dist/constructs/v1beta1/evaluation/Evaluation.d.mts +68 -212
  60. package/dist/constructs/v1beta1/evaluation/Evaluation.d.ts +68 -212
  61. package/dist/constructs/v1beta1/evaluation/EvaluationSchema.d.mts +1 -16516
  62. package/dist/constructs/v1beta1/evaluation/EvaluationSchema.d.ts +1 -16516
  63. package/dist/constructs/v1beta1/evaluation/EvaluationSchema.js +25 -25
  64. package/dist/constructs/v1beta1/evaluation/EvaluationSchema.mjs +25 -25
  65. package/dist/constructs/v1beta1/event/EventSchema.d.mts +1 -364
  66. package/dist/constructs/v1beta1/event/EventSchema.d.ts +1 -364
  67. package/dist/constructs/v1beta1/feature/FeatureSchema.d.mts +1 -776
  68. package/dist/constructs/v1beta1/feature/FeatureSchema.d.ts +1 -776
  69. package/dist/constructs/v1beta1/feature/FeatureSchema.js +1 -1
  70. package/dist/constructs/v1beta1/feature/FeatureSchema.mjs +1 -1
  71. package/dist/constructs/v1beta1/invitation/InvitationSchema.d.mts +1 -1655
  72. package/dist/constructs/v1beta1/invitation/InvitationSchema.d.ts +1 -1655
  73. package/dist/constructs/v1beta1/key/KeySchema.d.mts +1 -1229
  74. package/dist/constructs/v1beta1/key/KeySchema.d.ts +1 -1229
  75. package/dist/constructs/v1beta1/key/KeySchema.js +1 -1
  76. package/dist/constructs/v1beta1/key/KeySchema.mjs +1 -1
  77. package/dist/constructs/v1beta1/keychain/KeychainSchema.d.mts +1 -1553
  78. package/dist/constructs/v1beta1/keychain/KeychainSchema.d.ts +1 -1553
  79. package/dist/constructs/v1beta1/keychain/KeychainSchema.js +1 -1
  80. package/dist/constructs/v1beta1/keychain/KeychainSchema.mjs +1 -1
  81. package/dist/constructs/v1beta1/model/Model.d.mts +7 -13
  82. package/dist/constructs/v1beta1/model/Model.d.ts +7 -13
  83. package/dist/constructs/v1beta1/model/ModelSchema.d.mts +1 -1311
  84. package/dist/constructs/v1beta1/model/ModelSchema.d.ts +1 -1311
  85. package/dist/constructs/v1beta1/model/ModelSchema.js +2 -2
  86. package/dist/constructs/v1beta1/model/ModelSchema.mjs +2 -2
  87. package/dist/constructs/v1beta1/organization/OrganizationSchema.d.mts +1 -1498
  88. package/dist/constructs/v1beta1/organization/OrganizationSchema.d.ts +1 -1498
  89. package/dist/constructs/v1beta1/pattern/Pattern.d.mts +7481 -212
  90. package/dist/constructs/v1beta1/pattern/Pattern.d.ts +7481 -212
  91. package/dist/constructs/v1beta1/pattern/PatternSchema.d.mts +1 -16713
  92. package/dist/constructs/v1beta1/pattern/PatternSchema.d.ts +1 -16713
  93. package/dist/constructs/v1beta1/pattern/PatternSchema.js +265 -25
  94. package/dist/constructs/v1beta1/pattern/PatternSchema.mjs +265 -25
  95. package/dist/constructs/v1beta1/plan/PlanSchema.d.mts +1 -326
  96. package/dist/constructs/v1beta1/plan/PlanSchema.d.ts +1 -326
  97. package/dist/constructs/v1beta1/role/Role.d.mts +614 -0
  98. package/dist/constructs/v1beta1/role/Role.d.ts +614 -0
  99. package/dist/constructs/v1beta1/role/Role.js +1 -0
  100. package/dist/constructs/v1beta1/role/Role.mjs +0 -0
  101. package/dist/constructs/v1beta1/role/RoleSchema.d.mts +7 -0
  102. package/dist/constructs/v1beta1/role/RoleSchema.d.ts +7 -0
  103. package/dist/constructs/v1beta1/role/RoleSchema.js +2 -0
  104. package/dist/constructs/v1beta1/role/RoleSchema.mjs +2 -0
  105. package/dist/constructs/v1beta1/schedule/Schedule.d.mts +371 -0
  106. package/dist/constructs/v1beta1/schedule/Schedule.d.ts +371 -0
  107. package/dist/constructs/v1beta1/schedule/Schedule.js +1 -0
  108. package/dist/constructs/v1beta1/schedule/Schedule.mjs +0 -0
  109. package/dist/constructs/v1beta1/schedule/ScheduleSchema.d.mts +7 -0
  110. package/dist/constructs/v1beta1/schedule/ScheduleSchema.d.ts +7 -0
  111. package/dist/constructs/v1beta1/schedule/ScheduleSchema.js +13 -0
  112. package/dist/constructs/v1beta1/schedule/ScheduleSchema.mjs +13 -0
  113. package/dist/constructs/v1beta1/subcategory/SubcategorySchema.d.mts +1 -37
  114. package/dist/constructs/v1beta1/subcategory/SubcategorySchema.d.ts +1 -37
  115. package/dist/constructs/v1beta1/subscription/SubscriptionSchema.d.mts +1 -1645
  116. package/dist/constructs/v1beta1/subscription/SubscriptionSchema.d.ts +1 -1645
  117. package/dist/constructs/v1beta1/subscription/SubscriptionSchema.js +1 -1
  118. package/dist/constructs/v1beta1/subscription/SubscriptionSchema.mjs +1 -1
  119. package/dist/constructs/v1beta1/team/Team.d.mts +46 -16
  120. package/dist/constructs/v1beta1/team/Team.d.ts +46 -16
  121. package/dist/constructs/v1beta1/team/TeamSchema.d.mts +1 -2022
  122. package/dist/constructs/v1beta1/team/TeamSchema.d.ts +1 -2022
  123. package/dist/constructs/v1beta1/team/TeamSchema.js +1 -1
  124. package/dist/constructs/v1beta1/team/TeamSchema.mjs +1 -1
  125. package/dist/constructs/v1beta1/user/UserSchema.d.mts +1 -1116
  126. package/dist/constructs/v1beta1/user/UserSchema.d.ts +1 -1116
  127. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.d.mts +1 -964
  128. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.d.ts +1 -964
  129. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.js +1 -1
  130. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.mjs +1 -1
  131. package/dist/index.d.mts +1 -1
  132. package/dist/index.d.ts +1 -1
  133. package/dist/index.js +283 -43
  134. package/dist/index.mjs +283 -43
  135. package/dist/mesheryApi.d.mts +268 -244
  136. package/dist/mesheryApi.d.ts +268 -244
  137. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
- 'use strict';var e={openapi:"3.0.0",info:{title:"Model",description:"OpenAPI schema for Meshery model registration and management.",version:"v1beta1",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:{"/api/meshmodels/register":{post:{summary:"Register mesh models",operationId:"RegisterMeshmodels",requestBody:{required:true,content:{"multipart/form-data":{schema:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}}}}},responses:{200:{description:"Successful registration",content:{"application/json":{schema:{type:"object",properties:{message:{type:"string"}}}}}},400:{description:"Invalid request format"},500:{description:"Internal server error"}}}}},components:{schemas:{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.",allOf:[{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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."}],"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},"x-order":1}}},ModelDefinition:{$id:"https://schemas.meshery.io/model.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",additionalProperties:false,type:"object",properties:{id:{description:"Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).","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 definition.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",json:"schemaVersion"},default:"models.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1.","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",helperText:"Model name should be in lowercase with hyphens, not whitespaces.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name"},default:"untitled-model"},displayName:{description:"Human-readable name for the model.",helperText:"Model display name may include letters, numbers, and spaces. Special characters are not allowed.",minLength:1,maxLength:100,type:"string",pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"],"x-order":5,"x-oapi-codegen-extra-tags":{yaml:"displayName",json:"displayName"},default:"Untitled Model"},description:{type:"string",default:"A new Meshery model.",description:"Description of the model.",minLength:1,maxLength:1e3,"x-order":6,"x-oapi-codegen-extra-tags":{yaml:"description,omitempty",json:"description,omitempty"}},status:{type:"string",description:`Status of model, including:
1
+ 'use strict';var e={openapi:"3.0.0",info:{title:"Model",description:"OpenAPI schema for Meshery model registration and management.",version:"v1beta1",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:{"/api/meshmodels/register":{post:{summary:"Register mesh models",operationId:"RegisterMeshmodels",requestBody:{required:true,content:{"multipart/form-data":{schema:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}}}}},responses:{200:{description:"Successful registration",content:{"application/json":{schema:{type:"object",properties:{message:{type:"string"}}}}}},400:{description:"Invalid request format"},500:{description:"Internal server error"}}}}},components:{schemas:{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":{yaml:"version",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-]+)*)?$"}}},ModelDefinition:{$id:"https://schemas.meshery.io/model.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",additionalProperties:false,type:"object",properties:{id:{description:"Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).","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 definition.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",json:"schemaVersion"},default:"models.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[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 model definition.",type:"string","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},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-]+)*)?$"},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",helperText:"Model name should be in lowercase with hyphens, not whitespaces.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name"},default:"untitled-model"},displayName:{description:"Human-readable name for the model.",helperText:"Model display name may include letters, numbers, and spaces. Special characters are not allowed.",minLength:1,maxLength:100,type:"string",pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"],"x-order":5,"x-oapi-codegen-extra-tags":{yaml:"displayName",json:"displayName"},default:"Untitled Model"},description:{type:"string",default:"A new Meshery model.",description:"Description of the model.",minLength:1,maxLength:1e3,"x-order":6,"x-oapi-codegen-extra-tags":{yaml:"description,omitempty",json:"description,omitempty"}},status:{type:"string",description:`Status of model, including:
2
2
  - duplicate: this component is a duplicate of another. The component that is to be the canonical reference and that is duplicated by other components should not be assigned the 'duplicate' status.
3
3
  - maintenance: model is unavailable for a period of time.
4
4
  - enabled: model is available for use for all users of this Meshery Server.
5
- - ignored: model is unavailable for use for all users of this Meshery Server.`,enum:["ignored","enabled","duplicate"],"x-order":7,"x-oapi-codegen-extra-tags":{yaml:"status",json:"status"},default:"enabled"},registrant:{"x-oapi-codegen-extra-tags":{yaml:"registrant",json:"registrant",gorm:"foreignKey:RegistrantId;references:ID"},"x-order":8,"x-go-type":"connection.Connection","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/connection"},$id:"https://schemas.meshery.io/connection.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections",additionalProperties:false,type:"object",required:["id","schemaVersion","name","type","sub_type","kind","status"],properties:{id:{description:"Connection ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":2,type:"string",description:"Connection Name"},credential_id:{"x-go-name":"CredentialID","x-oapi-codegen-extra-tags":{db:"credential_id",yaml:"credential_id"},"x-order":3,description:"Associated Credential ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},type:{"x-oapi-codegen-extra-tags":{db:"type",yaml:"type"},"x-order":4,type:"string",description:"Connection Type (platform, telemetry, collaboration)"},sub_type:{"x-oapi-codegen-extra-tags":{db:"sub_type",yaml:"sub_type"},"x-order":5,type:"string",description:"Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"},kind:{"x-oapi-codegen-extra-tags":{db:"kind",yaml:"kind"},"x-order":6,type:"string",description:"Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":7,"x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-go-type-skip-optional-pointer":true,type:"object",description:"Additional connection metadata"},status:{"x-oapi-codegen-extra-tags":{db:"status",yaml:"status"},"x-order":8,description:"Connection Status",type:"string",enum:["discovered","registered","connected","ignored","maintenance","disconnected","deleted","not found"]},user_id:{"x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id",yaml:"user_id"},"x-order":9,description:"User ID who owns this connection",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":11,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-order":12,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},environments:{type:"array",description:"Associated environments for this connection",items:{"x-go-type":"*environment.Environment","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/environment"},$id:"https://schemas.meshery.io/environment.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Environments allow you to logically group related Connections and their associated Credentials.. Learn more at https://docs.meshery.io/concepts/logical/environments",additionalProperties:false,type:"object",required:["id","schemaVersion","name","description","organization_id"],properties:{id:{description:"ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"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 to which the environment conforms.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"environments.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":3,type:"string",description:"Environment name"},description:{"x-oapi-codegen-extra-tags":{db:"description",yaml:"description"},"x-order":4,type:"string",description:"Environment description"},organization_id:{"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id",yaml:"organization_id"},"x-order":5,description:"Environment organization ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},owner:{"x-oapi-codegen-extra-tags":{db:"owner",yaml:"owner"},"x-order":6,description:"Environment owner",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":8,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object"},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-go-type":"core.NullTime","x-go-import":"database/sql","x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-oapi-codegen-extra-tags":{db:"-",yaml:"environments",gorm:"-"},"x-go-type-skip-optional-pointer":true,"x-order":13},schemaVersion:{description:"Specifies the version of the schema used for the definition.","x-order":14,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"connections.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]}}},registrantId:{description:"ID of the registrant.","x-oapi-codegen-extra-tags":{yaml:"connection_id",json:"connection_id",gorm:"column:connection_id"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},categoryId:{description:"ID of the category.","x-oapi-codegen-extra-tags":{yaml:"-",json:"-",gorm:"categoryID"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},category:{"x-order":9,"x-oapi-codegen-extra-tags":{yaml:"category",json:"category",gorm:"foreignKey:CategoryId;references:Id"},"x-go-type":"category.CategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/category"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"object",description:"Category of the model.",required:["id","name","metadata"],properties:{id:{"x-order":1,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",minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name",gorm:"name"},default:"Uncategorized",description:"The category of the model that determines the main grouping.",enum:["Analytics","App Definition and Development","Cloud Native Network","Cloud Native Storage","Database","Machine Learning","Observability and Analysis","Orchestration & Management","Platform","Provisioning","Runtime","Security & Compliance","Serverless","Tools","Uncategorized"],"x-order":2},metadata:{type:"object","x-oapi-codegen-extra-tags":{yaml:"metadata,omitempty",json:"metadata,omitempty",gorm:"type:bytes;serializer:json"},"x-order":3}}},subCategory:{"x-order":10,"x-go-type":"subcategory.SubCategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/subcategory"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"string",title:"SubCategory",description:"Sub category of the model determines the secondary grouping.",default:"Uncategorized",enum:["API Gateway","API Integration","Application Definition & Image Build","Automation & Configuration","Certified Kubernetes - Distribution","Chaos Engineering","Cloud Native Storage","Cloud Provider","CNI","Compute","Container Registry","Container Runtime","Container Security","Container","Content Delivery Network","Continuous Integration & Delivery","Coordination & Service Discovery","Database","Flowchart","Framework","Installable Platform","Key Management","Key Management Service","Kubernetes","Logging","Machine Learning","Management Governance","Metrics","Monitoring","Networking Content Delivery","Operating System","Query","Remote Procedure Call","Scheduling & Orchestration","Secrets Management","Security Identity & Compliance","Service Mesh","Service Proxy","Source Version Control","Storage","Specifications","Streaming & Messaging","Tools","Tracing","Uncategorized","Video Conferencing"],minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"subCategory",json:"subCategory"}},metadata:{type:"object",description:"Metadata containing additional information associated with the model.",required:["svgWhite","svgColor"],properties:{capabilities:{type:"array",description:"Capabilities associated with the model",items:{"x-go-type":"capability.Capability","x-go-type-import":{path:"github.com/meshery/schemas/models/v1alpha1/capability"},$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]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."},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."},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/v1alpha1",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/v1alpha1",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/v1alpha1",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/v1alpha1",status:"enabled",subType:"body-text",type:"style",version:"0.7.0"}]},"x-order":1},isAnnotation:{type:"boolean",description:"Indicates whether the model and its entities should be treated as deployable entities or as logical representations.","x-oapi-codegen-extra-tags":{yaml:"isAnnotation",json:"isAnnotation"},"x-order":2,default:false},primaryColor:{type:"string",description:"Primary color associated with the model.",minLength:1,maxLength:50,default:"#00b39f","x-oapi-codegen-extra-tags":{yaml:"primaryColor",json:"primaryColor"},"x-order":3},secondaryColor:{type:"string",description:"Secondary color associated with the model.",minLength:1,maxLength:50,default:"#00D3A9","x-oapi-codegen-extra-tags":{yaml:"secondaryColor",json:"secondaryColor"},"x-order":4},svgWhite:{type:"string",description:"SVG representation of the model in white color.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgWhite",json:"svgWhite"},"x-order":5,default:'<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.405 8.732v6.57l5.694-3.297-5.694-3.273Zm0 7.942v6.602l5.747-3.285-5.747-3.317Z" fill="#fff"/><path d="M15.586 15.256v-6.47l-5.622 3.225 5.622 3.245ZM4.307 23.252a13.809 13.809 0 0 0 4.362 4.39v-6.914l-4.362 2.524Zm11.279-.008v-6.52L9.95 19.985l5.636 3.258Z" fill="#fff" fill-opacity=".8"/><path d="m9.49 27.23 5.707-3.263-5.707-3.3v6.563Z" fill="#fff"/><path d="M22.54 27.265v-6.553l-5.699 3.259 5.7 3.294Zm5.58-4.773a13.697 13.697 0 0 0 1.612-5.895l-5.934 3.397 4.323 2.498Z" fill="#fff" fill-opacity=".8"/><path d="m23.362 19.298 5.728-3.276-5.728-3.291v6.567Z" fill="#fff"/><path d="M22.541 11.315V4.8l-5.673 3.253 5.673 3.262Zm0 7.955v-6.574l-5.685 3.292 5.685 3.281Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 12.684v6.622l5.728-3.316-5.728-3.306Z" fill="#fff"/><path d="M15.586 2.25a13.69 13.69 0 0 0-6.037 1.595l6.037 3.463V2.25Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 4.756v6.583l5.732-3.288L9.49 4.756Z" fill="#fff"/><path d="M8.669 4.356a13.83 13.83 0 0 0-4.362 4.39l4.362 2.518V4.356Z" fill="#fff" fill-opacity=".8"/><path d="M22.504 3.88a13.695 13.695 0 0 0-6.099-1.63v5.123l6.1-3.493ZM2.25 16.483c.071 2.12.634 4.196 1.644 6.062l4.418-2.559-6.062-3.503Zm1.644-7.028a13.68 13.68 0 0 0-1.644 6.036l6.068-3.482-4.424-2.554Z" fill="#fff"/><path d="M9.539 28.147a13.673 13.673 0 0 0 6.047 1.603v-5.062L9.54 28.147Z" fill="#fff" fill-opacity=".8"/><path d="M27.697 8.768a13.83 13.83 0 0 0-4.335-4.383v6.889l4.335-2.506ZM23.362 27.62a13.851 13.851 0 0 0 4.351-4.417l-4.351-2.514v6.93Z" fill="#fff"/><path d="M29.75 15.452a13.659 13.659 0 0 0-1.63-5.979l-4.381 2.53 6.011 3.45Z" fill="#fff" fill-opacity=".8"/><path d="M16.405 29.75a13.673 13.673 0 0 0 6.036-1.595l-6.036-3.498v5.093Z" fill="#fff"/><path d="M8.669 19.247v-6.494L3.03 15.986l5.639 3.261Z" fill="#fff" fill-opacity=".8"/></svg>'},svgColor:{type:"string",description:"SVG representation of the model in colored format.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgColor",json:"svgColor"},"x-order":6,default:'<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 134.95 135.02"><defs><style>.cls-1{fill:#00d3a9}.cls-2{fill:#00b39f}</style></defs><title>meshery-logo-light</title><polygon points="69.49 31.82 69.49 64.07 97.44 47.89 69.49 31.82" class="cls-1"/><polygon points="69.49 70.81 69.49 103.22 97.7 87.09 69.49 70.81" class="cls-1"/><polygon points="65.47 63.85 65.47 32.09 37.87 47.92 65.47 63.85" class="cls-2"/><path d="M10.1,103.1a67.79,67.79,0,0,0,21.41,21.55V90.71Z" class="cls-2"/><polygon points="65.47 103.06 65.47 71.05 37.8 87.07 65.47 103.06" class="cls-2"/><polygon points="35.54 122.63 63.56 106.61 35.54 90.41 35.54 122.63" class="cls-1"/><polygon points="99.61 122.8 99.61 90.63 71.63 106.63 99.61 122.8" class="cls-2"/><path d="M127,99.37a67.22,67.22,0,0,0,7.91-28.94L105.78,87.11Z" class="cls-2"/><polygon points="103.64 83.69 131.76 67.61 103.64 51.45 103.64 83.69" class="cls-1"/><polygon points="99.61 44.5 99.61 12.52 71.76 28.49 99.61 44.5" class="cls-2"/><polygon points="99.61 83.55 99.61 51.28 71.7 67.44 99.61 83.55" class="cls-2"/><polygon points="67.48 135.02 67.49 135.02 67.48 135.02 67.48 135.02" class="cls-2"/><polygon points="35.54 51.22 35.54 83.73 63.66 67.45 35.54 51.22" class="cls-1"/><path d="M65.47,0A67.2,67.2,0,0,0,35.83,7.83l29.64,17Z" class="cls-2"/><polygon points="35.54 12.3 35.54 44.62 63.68 28.48 35.54 12.3" class="cls-1"/><path d="M31.51,10.34A67.89,67.89,0,0,0,10.1,31.89L31.51,44.25Z" class="cls-2"/><path d="M99.43,8A67.23,67.23,0,0,0,69.49,0V25.15Z" class="cls-1"/><path d="M0,69.87A67.27,67.27,0,0,0,8.07,99.63L29.76,87.07Z" class="cls-1"/><path d="M8.07,35.37A67.16,67.16,0,0,0,0,65L29.79,47.91Z" class="cls-1"/><path d="M35.78,127.13A67.13,67.13,0,0,0,65.47,135V110.15Z" class="cls-2"/><path d="M124.92,32a67.9,67.9,0,0,0-21.28-21.52V44.3Z" class="cls-1"/><path d="M103.64,124.54A68,68,0,0,0,125,102.86L103.64,90.52Z" class="cls-1"/><path d="M135,64.81a67.06,67.06,0,0,0-8-29.35L105.49,47.88Z" class="cls-2"/><path d="M69.49,135a67.12,67.12,0,0,0,29.63-7.83L69.49,110Z" class="cls-1"/><polygon points="31.51 83.44 31.51 51.56 3.83 67.43 31.51 83.44" class="cls-2"/></svg>'},svgComplete:{type:"string",description:"SVG representation of the complete model.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgComplete",json:"svgComplete"},"x-order":7},shape:{"x-order":8,type:"string",description:"The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)",enum:["ellipse","triangle","round-triangle","rectangle","round-rectangle","bottom-round-rectangle","cut-rectangle","barrel","rhomboid","diamond","round-diamond","pentagon","round-pentagon","hexagon","round-hexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","star","tag","round-tag","vee","polygon"]}},"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json",json:"metadata",yaml:"metadata"},"x-order":11,additionalProperties:true},model:{"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},"x-order":12,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.",allOf:[{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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."}],"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},"x-order":1}}},relationships:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships",yaml:"relationships"}},components:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"components",yaml:"components"}},componentsCount:{type:"integer",description:"Number of components associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{json:"components_count",yaml:"components_count",gorm:"-"},default:0},relationshipsCount:{type:"integer",description:"Number of relationships associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships_count",yaml:"relationships_count"},default:0},created_at:{"x-order":14,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":15,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true}},required:["id","schemaVersion","displayName","status","subCategory","model","name","description","version","registrant","category","categoryId","registrantId","relationshipsCount","componentsCount","components","relationships"]},RegistrantReference:{type:"object",required:["kind"],properties:{kind:{type:"string"}}},ModelReference:{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.",helperText:"Model name should be in lowercase with hyphens, not whitespaces.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name"},default:"untitled-model"},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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1.","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"}},displayName:{description:"Human-readable name for the model.",helperText:"Model display name may include letters, numbers, and spaces. Special characters are not allowed.",minLength:1,maxLength:100,type:"string",pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"],"x-order":5,"x-oapi-codegen-extra-tags":{yaml:"displayName",json:"displayName"},default:"Untitled Model"},model:{"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},"x-order":12,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.",allOf:[{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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."}],"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},"x-order":1}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{yaml:"registrant",json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string"}}}},description:"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"},ImportRequest:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}},ImportBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]}}}},t=e;
5
+ - ignored: model is unavailable for use for all users of this Meshery Server.`,enum:["ignored","enabled","duplicate"],"x-order":7,"x-oapi-codegen-extra-tags":{yaml:"status",json:"status"},default:"enabled"},registrant:{"x-oapi-codegen-extra-tags":{yaml:"registrant",json:"registrant",gorm:"foreignKey:RegistrantId;references:ID"},"x-order":8,"x-go-type":"connectionv1beta1.Connection","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/connection",name:"connectionv1beta1"},$id:"https://schemas.meshery.io/connection.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections",additionalProperties:false,type:"object",required:["id","schemaVersion","name","type","sub_type","kind","status"],properties:{id:{description:"Connection ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":2,type:"string",description:"Connection Name"},credential_id:{"x-go-name":"CredentialID","x-oapi-codegen-extra-tags":{db:"credential_id",yaml:"credential_id"},"x-order":3,description:"Associated Credential ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},type:{"x-oapi-codegen-extra-tags":{db:"type",yaml:"type"},"x-order":4,type:"string",description:"Connection Type (platform, telemetry, collaboration)"},sub_type:{"x-oapi-codegen-extra-tags":{db:"sub_type",yaml:"sub_type"},"x-order":5,type:"string",description:"Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"},kind:{"x-oapi-codegen-extra-tags":{db:"kind",yaml:"kind"},"x-order":6,type:"string",description:"Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":7,"x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-go-type-skip-optional-pointer":true,type:"object",description:"Additional connection metadata"},status:{"x-oapi-codegen-extra-tags":{db:"status",yaml:"status"},"x-order":8,description:"Connection Status",type:"string",enum:["discovered","registered","connected","ignored","maintenance","disconnected","deleted","not found"]},user_id:{"x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id",yaml:"user_id"},"x-order":9,description:"User ID who owns this connection",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":11,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-order":12,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true},environments:{type:"array",description:"Associated environments for this connection",items:{"x-go-type":"*environmentv1beta1.Environment","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/environment",name:"environmentv1beta1"},$id:"https://schemas.meshery.io/environment.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Environments allow you to logically group related Connections and their associated Credentials.. Learn more at https://docs.meshery.io/concepts/logical/environments",additionalProperties:false,type:"object",required:["id","schemaVersion","name","description","organization_id"],properties:{id:{description:"ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"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 to which the environment conforms.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"environments.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":3,type:"string",description:"Environment name"},description:{"x-oapi-codegen-extra-tags":{db:"description",yaml:"description"},"x-order":4,type:"string",description:"Environment description"},organization_id:{"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id",yaml:"organization_id"},"x-order":5,description:"Environment organization ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},owner:{"x-oapi-codegen-extra-tags":{db:"owner",yaml:"owner"},"x-order":6,description:"Environment owner",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":8,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object"},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-order":10,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-oapi-codegen-extra-tags":{db:"-",yaml:"environments",gorm:"-"},"x-go-type-skip-optional-pointer":true,"x-order":13},schemaVersion:{description:"Specifies the version of the schema used for the definition.","x-order":14,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"connections.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]}}},registrantId:{description:"ID of the registrant.","x-oapi-codegen-extra-tags":{yaml:"connection_id",json:"connection_id",gorm:"column:connection_id"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},categoryId:{description:"ID of the category.","x-oapi-codegen-extra-tags":{yaml:"-",json:"-",gorm:"categoryID"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},category:{"x-order":9,"x-oapi-codegen-extra-tags":{yaml:"category",json:"category",gorm:"foreignKey:CategoryId;references:ID"},"x-go-type":"categoryv1beta1.CategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/category",name:"categoryv1beta1"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"object",description:"Category of the model.",required:["id","name","metadata"],properties:{id:{"x-order":1,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",minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name",gorm:"name"},default:"Uncategorized",description:"The category of the model that determines the main grouping.",enum:["Analytics","App Definition and Development","Cloud Native Network","Cloud Native Storage","Database","Machine Learning","Observability and Analysis","Orchestration & Management","Platform","Provisioning","Runtime","Security & Compliance","Serverless","Tools","Uncategorized"],"x-order":2},metadata:{type:"object","x-oapi-codegen-extra-tags":{yaml:"metadata,omitempty",json:"metadata,omitempty",gorm:"type:bytes;serializer:json"},"x-order":3}}},subCategory:{"x-order":10,"x-go-type":"subcategoryv1beta1.SubCategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/subcategory",name:"subcategoryv1beta1"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"string",title:"SubCategory",description:"Sub category of the model determines the secondary grouping.",default:"Uncategorized",enum:["API Gateway","API Integration","Application Definition & Image Build","Automation & Configuration","Certified Kubernetes - Distribution","Chaos Engineering","Cloud Native Storage","Cloud Provider","CNI","Compute","Container Registry","Container Runtime","Container Security","Container","Content Delivery Network","Continuous Integration & Delivery","Coordination & Service Discovery","Database","Flowchart","Framework","Installable Platform","Key Management","Key Management Service","Kubernetes","Logging","Machine Learning","Management Governance","Metrics","Monitoring","Networking Content Delivery","Operating System","Query","Remote Procedure Call","Scheduling & Orchestration","Secrets Management","Security Identity & Compliance","Service Mesh","Service Proxy","Source Version Control","Storage","Specifications","Streaming & Messaging","Tools","Tracing","Uncategorized","Video Conferencing"],minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"subCategory",json:"subCategory"}},metadata:{type:"object",description:"Metadata containing additional information associated with the model.",required:["svgWhite","svgColor"],properties:{capabilities:{type:"array",description:"Capabilities associated with the model",items:{"x-go-type":"capabilityv1alpha1.Capability","x-go-type-import":{path:"github.com/meshery/schemas/models/v1alpha1/capability",name:"capabilityv1alpha1"},$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]+)([.-][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."},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/v1alpha1",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/v1alpha1",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/v1alpha1",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/v1alpha1",status:"enabled",subType:"body-text",type:"style",version:"0.7.0"}]},"x-order":1},isAnnotation:{type:"boolean",description:"Indicates whether the model and its entities should be treated as deployable entities or as logical representations.","x-oapi-codegen-extra-tags":{yaml:"isAnnotation",json:"isAnnotation"},"x-order":2,default:false},primaryColor:{type:"string",description:"Primary color associated with the model.",minLength:1,maxLength:50,default:"#00b39f","x-oapi-codegen-extra-tags":{yaml:"primaryColor",json:"primaryColor"},"x-order":3},secondaryColor:{type:"string",description:"Secondary color associated with the model.",minLength:1,maxLength:50,default:"#00D3A9","x-oapi-codegen-extra-tags":{yaml:"secondaryColor",json:"secondaryColor"},"x-order":4},svgWhite:{type:"string",description:"SVG representation of the model in white color.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgWhite",json:"svgWhite"},"x-order":5,default:'<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.405 8.732v6.57l5.694-3.297-5.694-3.273Zm0 7.942v6.602l5.747-3.285-5.747-3.317Z" fill="#fff"/><path d="M15.586 15.256v-6.47l-5.622 3.225 5.622 3.245ZM4.307 23.252a13.809 13.809 0 0 0 4.362 4.39v-6.914l-4.362 2.524Zm11.279-.008v-6.52L9.95 19.985l5.636 3.258Z" fill="#fff" fill-opacity=".8"/><path d="m9.49 27.23 5.707-3.263-5.707-3.3v6.563Z" fill="#fff"/><path d="M22.54 27.265v-6.553l-5.699 3.259 5.7 3.294Zm5.58-4.773a13.697 13.697 0 0 0 1.612-5.895l-5.934 3.397 4.323 2.498Z" fill="#fff" fill-opacity=".8"/><path d="m23.362 19.298 5.728-3.276-5.728-3.291v6.567Z" fill="#fff"/><path d="M22.541 11.315V4.8l-5.673 3.253 5.673 3.262Zm0 7.955v-6.574l-5.685 3.292 5.685 3.281Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 12.684v6.622l5.728-3.316-5.728-3.306Z" fill="#fff"/><path d="M15.586 2.25a13.69 13.69 0 0 0-6.037 1.595l6.037 3.463V2.25Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 4.756v6.583l5.732-3.288L9.49 4.756Z" fill="#fff"/><path d="M8.669 4.356a13.83 13.83 0 0 0-4.362 4.39l4.362 2.518V4.356Z" fill="#fff" fill-opacity=".8"/><path d="M22.504 3.88a13.695 13.695 0 0 0-6.099-1.63v5.123l6.1-3.493ZM2.25 16.483c.071 2.12.634 4.196 1.644 6.062l4.418-2.559-6.062-3.503Zm1.644-7.028a13.68 13.68 0 0 0-1.644 6.036l6.068-3.482-4.424-2.554Z" fill="#fff"/><path d="M9.539 28.147a13.673 13.673 0 0 0 6.047 1.603v-5.062L9.54 28.147Z" fill="#fff" fill-opacity=".8"/><path d="M27.697 8.768a13.83 13.83 0 0 0-4.335-4.383v6.889l4.335-2.506ZM23.362 27.62a13.851 13.851 0 0 0 4.351-4.417l-4.351-2.514v6.93Z" fill="#fff"/><path d="M29.75 15.452a13.659 13.659 0 0 0-1.63-5.979l-4.381 2.53 6.011 3.45Z" fill="#fff" fill-opacity=".8"/><path d="M16.405 29.75a13.673 13.673 0 0 0 6.036-1.595l-6.036-3.498v5.093Z" fill="#fff"/><path d="M8.669 19.247v-6.494L3.03 15.986l5.639 3.261Z" fill="#fff" fill-opacity=".8"/></svg>'},svgColor:{type:"string",description:"SVG representation of the model in colored format.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgColor",json:"svgColor"},"x-order":6,default:'<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 134.95 135.02"><defs><style>.cls-1{fill:#00d3a9}.cls-2{fill:#00b39f}</style></defs><title>meshery-logo-light</title><polygon points="69.49 31.82 69.49 64.07 97.44 47.89 69.49 31.82" class="cls-1"/><polygon points="69.49 70.81 69.49 103.22 97.7 87.09 69.49 70.81" class="cls-1"/><polygon points="65.47 63.85 65.47 32.09 37.87 47.92 65.47 63.85" class="cls-2"/><path d="M10.1,103.1a67.79,67.79,0,0,0,21.41,21.55V90.71Z" class="cls-2"/><polygon points="65.47 103.06 65.47 71.05 37.8 87.07 65.47 103.06" class="cls-2"/><polygon points="35.54 122.63 63.56 106.61 35.54 90.41 35.54 122.63" class="cls-1"/><polygon points="99.61 122.8 99.61 90.63 71.63 106.63 99.61 122.8" class="cls-2"/><path d="M127,99.37a67.22,67.22,0,0,0,7.91-28.94L105.78,87.11Z" class="cls-2"/><polygon points="103.64 83.69 131.76 67.61 103.64 51.45 103.64 83.69" class="cls-1"/><polygon points="99.61 44.5 99.61 12.52 71.76 28.49 99.61 44.5" class="cls-2"/><polygon points="99.61 83.55 99.61 51.28 71.7 67.44 99.61 83.55" class="cls-2"/><polygon points="67.48 135.02 67.49 135.02 67.48 135.02 67.48 135.02" class="cls-2"/><polygon points="35.54 51.22 35.54 83.73 63.66 67.45 35.54 51.22" class="cls-1"/><path d="M65.47,0A67.2,67.2,0,0,0,35.83,7.83l29.64,17Z" class="cls-2"/><polygon points="35.54 12.3 35.54 44.62 63.68 28.48 35.54 12.3" class="cls-1"/><path d="M31.51,10.34A67.89,67.89,0,0,0,10.1,31.89L31.51,44.25Z" class="cls-2"/><path d="M99.43,8A67.23,67.23,0,0,0,69.49,0V25.15Z" class="cls-1"/><path d="M0,69.87A67.27,67.27,0,0,0,8.07,99.63L29.76,87.07Z" class="cls-1"/><path d="M8.07,35.37A67.16,67.16,0,0,0,0,65L29.79,47.91Z" class="cls-1"/><path d="M35.78,127.13A67.13,67.13,0,0,0,65.47,135V110.15Z" class="cls-2"/><path d="M124.92,32a67.9,67.9,0,0,0-21.28-21.52V44.3Z" class="cls-1"/><path d="M103.64,124.54A68,68,0,0,0,125,102.86L103.64,90.52Z" class="cls-1"/><path d="M135,64.81a67.06,67.06,0,0,0-8-29.35L105.49,47.88Z" class="cls-2"/><path d="M69.49,135a67.12,67.12,0,0,0,29.63-7.83L69.49,110Z" class="cls-1"/><polygon points="31.51 83.44 31.51 51.56 3.83 67.43 31.51 83.44" class="cls-2"/></svg>'},svgComplete:{type:"string",description:"SVG representation of the complete model.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgComplete",json:"svgComplete"},"x-order":7},shape:{"x-order":8,type:"string",description:"The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)",enum:["ellipse","triangle","round-triangle","rectangle","round-rectangle","bottom-round-rectangle","cut-rectangle","barrel","rhomboid","diamond","round-diamond","pentagon","round-pentagon","hexagon","round-hexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","star","tag","round-tag","vee","polygon"]}},"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json",json:"metadata",yaml:"metadata"},"x-order":11,additionalProperties:true},model:{"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},"x-order":12,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":{yaml:"version",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-]+)*)?$"}}},relationships:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships",yaml:"relationships"}},components:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"components",yaml:"components"}},componentsCount:{type:"integer",description:"Number of components associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{json:"components_count",yaml:"components_count",gorm:"-"},default:0},relationshipsCount:{type:"integer",description:"Number of relationships associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships_count",yaml:"relationships_count"},default:0},created_at:{"x-order":14,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":15,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true}},required:["id","schemaVersion","displayName","status","subCategory","model","name","description","version","registrant","category","categoryId","registrantId","relationshipsCount","componentsCount","components","relationships"]},RegistrantReference:{type:"object",required:["kind"],properties:{kind:{type:"string"}}},ModelReference:{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":{yaml:"version",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":{yaml:"registrant",json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string"}}}},description:"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"},ImportRequest:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}},ImportBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]}}}},t=e;
6
6
  module.exports=t;
@@ -1,6 +1,6 @@
1
- var e={openapi:"3.0.0",info:{title:"Model",description:"OpenAPI schema for Meshery model registration and management.",version:"v1beta1",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:{"/api/meshmodels/register":{post:{summary:"Register mesh models",operationId:"RegisterMeshmodels",requestBody:{required:true,content:{"multipart/form-data":{schema:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}}}}},responses:{200:{description:"Successful registration",content:{"application/json":{schema:{type:"object",properties:{message:{type:"string"}}}}}},400:{description:"Invalid request format"},500:{description:"Internal server error"}}}}},components:{schemas:{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.",allOf:[{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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."}],"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},"x-order":1}}},ModelDefinition:{$id:"https://schemas.meshery.io/model.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",additionalProperties:false,type:"object",properties:{id:{description:"Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).","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 definition.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",json:"schemaVersion"},default:"models.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1.","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"}},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",helperText:"Model name should be in lowercase with hyphens, not whitespaces.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name"},default:"untitled-model"},displayName:{description:"Human-readable name for the model.",helperText:"Model display name may include letters, numbers, and spaces. Special characters are not allowed.",minLength:1,maxLength:100,type:"string",pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"],"x-order":5,"x-oapi-codegen-extra-tags":{yaml:"displayName",json:"displayName"},default:"Untitled Model"},description:{type:"string",default:"A new Meshery model.",description:"Description of the model.",minLength:1,maxLength:1e3,"x-order":6,"x-oapi-codegen-extra-tags":{yaml:"description,omitempty",json:"description,omitempty"}},status:{type:"string",description:`Status of model, including:
1
+ var e={openapi:"3.0.0",info:{title:"Model",description:"OpenAPI schema for Meshery model registration and management.",version:"v1beta1",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:{"/api/meshmodels/register":{post:{summary:"Register mesh models",operationId:"RegisterMeshmodels",requestBody:{required:true,content:{"multipart/form-data":{schema:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}}}}},responses:{200:{description:"Successful registration",content:{"application/json":{schema:{type:"object",properties:{message:{type:"string"}}}}}},400:{description:"Invalid request format"},500:{description:"Internal server error"}}}}},components:{schemas:{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":{yaml:"version",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-]+)*)?$"}}},ModelDefinition:{$id:"https://schemas.meshery.io/model.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",additionalProperties:false,type:"object",properties:{id:{description:"Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).","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 definition.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",json:"schemaVersion"},default:"models.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[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 model definition.",type:"string","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},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-]+)*)?$"},name:{type:"string",description:"The unique name for the model within the scope of a registrant.",helperText:"Model name should be in lowercase with hyphens, not whitespaces.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name"},default:"untitled-model"},displayName:{description:"Human-readable name for the model.",helperText:"Model display name may include letters, numbers, and spaces. Special characters are not allowed.",minLength:1,maxLength:100,type:"string",pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"],"x-order":5,"x-oapi-codegen-extra-tags":{yaml:"displayName",json:"displayName"},default:"Untitled Model"},description:{type:"string",default:"A new Meshery model.",description:"Description of the model.",minLength:1,maxLength:1e3,"x-order":6,"x-oapi-codegen-extra-tags":{yaml:"description,omitempty",json:"description,omitempty"}},status:{type:"string",description:`Status of model, including:
2
2
  - duplicate: this component is a duplicate of another. The component that is to be the canonical reference and that is duplicated by other components should not be assigned the 'duplicate' status.
3
3
  - maintenance: model is unavailable for a period of time.
4
4
  - enabled: model is available for use for all users of this Meshery Server.
5
- - ignored: model is unavailable for use for all users of this Meshery Server.`,enum:["ignored","enabled","duplicate"],"x-order":7,"x-oapi-codegen-extra-tags":{yaml:"status",json:"status"},default:"enabled"},registrant:{"x-oapi-codegen-extra-tags":{yaml:"registrant",json:"registrant",gorm:"foreignKey:RegistrantId;references:ID"},"x-order":8,"x-go-type":"connection.Connection","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/connection"},$id:"https://schemas.meshery.io/connection.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections",additionalProperties:false,type:"object",required:["id","schemaVersion","name","type","sub_type","kind","status"],properties:{id:{description:"Connection ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":2,type:"string",description:"Connection Name"},credential_id:{"x-go-name":"CredentialID","x-oapi-codegen-extra-tags":{db:"credential_id",yaml:"credential_id"},"x-order":3,description:"Associated Credential ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},type:{"x-oapi-codegen-extra-tags":{db:"type",yaml:"type"},"x-order":4,type:"string",description:"Connection Type (platform, telemetry, collaboration)"},sub_type:{"x-oapi-codegen-extra-tags":{db:"sub_type",yaml:"sub_type"},"x-order":5,type:"string",description:"Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"},kind:{"x-oapi-codegen-extra-tags":{db:"kind",yaml:"kind"},"x-order":6,type:"string",description:"Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":7,"x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-go-type-skip-optional-pointer":true,type:"object",description:"Additional connection metadata"},status:{"x-oapi-codegen-extra-tags":{db:"status",yaml:"status"},"x-order":8,description:"Connection Status",type:"string",enum:["discovered","registered","connected","ignored","maintenance","disconnected","deleted","not found"]},user_id:{"x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id",yaml:"user_id"},"x-order":9,description:"User ID who owns this connection",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":11,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-order":12,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},environments:{type:"array",description:"Associated environments for this connection",items:{"x-go-type":"*environment.Environment","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/environment"},$id:"https://schemas.meshery.io/environment.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Environments allow you to logically group related Connections and their associated Credentials.. Learn more at https://docs.meshery.io/concepts/logical/environments",additionalProperties:false,type:"object",required:["id","schemaVersion","name","description","organization_id"],properties:{id:{description:"ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"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 to which the environment conforms.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"environments.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":3,type:"string",description:"Environment name"},description:{"x-oapi-codegen-extra-tags":{db:"description",yaml:"description"},"x-order":4,type:"string",description:"Environment description"},organization_id:{"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id",yaml:"organization_id"},"x-order":5,description:"Environment organization ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},owner:{"x-oapi-codegen-extra-tags":{db:"owner",yaml:"owner"},"x-order":6,description:"Environment owner",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":8,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object"},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-go-type":"core.NullTime","x-go-import":"database/sql","x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-oapi-codegen-extra-tags":{db:"-",yaml:"environments",gorm:"-"},"x-go-type-skip-optional-pointer":true,"x-order":13},schemaVersion:{description:"Specifies the version of the schema used for the definition.","x-order":14,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"connections.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]}}},registrantId:{description:"ID of the registrant.","x-oapi-codegen-extra-tags":{yaml:"connection_id",json:"connection_id",gorm:"column:connection_id"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},categoryId:{description:"ID of the category.","x-oapi-codegen-extra-tags":{yaml:"-",json:"-",gorm:"categoryID"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},category:{"x-order":9,"x-oapi-codegen-extra-tags":{yaml:"category",json:"category",gorm:"foreignKey:CategoryId;references:Id"},"x-go-type":"category.CategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/category"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"object",description:"Category of the model.",required:["id","name","metadata"],properties:{id:{"x-order":1,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",minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name",gorm:"name"},default:"Uncategorized",description:"The category of the model that determines the main grouping.",enum:["Analytics","App Definition and Development","Cloud Native Network","Cloud Native Storage","Database","Machine Learning","Observability and Analysis","Orchestration & Management","Platform","Provisioning","Runtime","Security & Compliance","Serverless","Tools","Uncategorized"],"x-order":2},metadata:{type:"object","x-oapi-codegen-extra-tags":{yaml:"metadata,omitempty",json:"metadata,omitempty",gorm:"type:bytes;serializer:json"},"x-order":3}}},subCategory:{"x-order":10,"x-go-type":"subcategory.SubCategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/subcategory"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"string",title:"SubCategory",description:"Sub category of the model determines the secondary grouping.",default:"Uncategorized",enum:["API Gateway","API Integration","Application Definition & Image Build","Automation & Configuration","Certified Kubernetes - Distribution","Chaos Engineering","Cloud Native Storage","Cloud Provider","CNI","Compute","Container Registry","Container Runtime","Container Security","Container","Content Delivery Network","Continuous Integration & Delivery","Coordination & Service Discovery","Database","Flowchart","Framework","Installable Platform","Key Management","Key Management Service","Kubernetes","Logging","Machine Learning","Management Governance","Metrics","Monitoring","Networking Content Delivery","Operating System","Query","Remote Procedure Call","Scheduling & Orchestration","Secrets Management","Security Identity & Compliance","Service Mesh","Service Proxy","Source Version Control","Storage","Specifications","Streaming & Messaging","Tools","Tracing","Uncategorized","Video Conferencing"],minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"subCategory",json:"subCategory"}},metadata:{type:"object",description:"Metadata containing additional information associated with the model.",required:["svgWhite","svgColor"],properties:{capabilities:{type:"array",description:"Capabilities associated with the model",items:{"x-go-type":"capability.Capability","x-go-type-import":{path:"github.com/meshery/schemas/models/v1alpha1/capability"},$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]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."},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."},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/v1alpha1",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/v1alpha1",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/v1alpha1",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/v1alpha1",status:"enabled",subType:"body-text",type:"style",version:"0.7.0"}]},"x-order":1},isAnnotation:{type:"boolean",description:"Indicates whether the model and its entities should be treated as deployable entities or as logical representations.","x-oapi-codegen-extra-tags":{yaml:"isAnnotation",json:"isAnnotation"},"x-order":2,default:false},primaryColor:{type:"string",description:"Primary color associated with the model.",minLength:1,maxLength:50,default:"#00b39f","x-oapi-codegen-extra-tags":{yaml:"primaryColor",json:"primaryColor"},"x-order":3},secondaryColor:{type:"string",description:"Secondary color associated with the model.",minLength:1,maxLength:50,default:"#00D3A9","x-oapi-codegen-extra-tags":{yaml:"secondaryColor",json:"secondaryColor"},"x-order":4},svgWhite:{type:"string",description:"SVG representation of the model in white color.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgWhite",json:"svgWhite"},"x-order":5,default:'<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.405 8.732v6.57l5.694-3.297-5.694-3.273Zm0 7.942v6.602l5.747-3.285-5.747-3.317Z" fill="#fff"/><path d="M15.586 15.256v-6.47l-5.622 3.225 5.622 3.245ZM4.307 23.252a13.809 13.809 0 0 0 4.362 4.39v-6.914l-4.362 2.524Zm11.279-.008v-6.52L9.95 19.985l5.636 3.258Z" fill="#fff" fill-opacity=".8"/><path d="m9.49 27.23 5.707-3.263-5.707-3.3v6.563Z" fill="#fff"/><path d="M22.54 27.265v-6.553l-5.699 3.259 5.7 3.294Zm5.58-4.773a13.697 13.697 0 0 0 1.612-5.895l-5.934 3.397 4.323 2.498Z" fill="#fff" fill-opacity=".8"/><path d="m23.362 19.298 5.728-3.276-5.728-3.291v6.567Z" fill="#fff"/><path d="M22.541 11.315V4.8l-5.673 3.253 5.673 3.262Zm0 7.955v-6.574l-5.685 3.292 5.685 3.281Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 12.684v6.622l5.728-3.316-5.728-3.306Z" fill="#fff"/><path d="M15.586 2.25a13.69 13.69 0 0 0-6.037 1.595l6.037 3.463V2.25Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 4.756v6.583l5.732-3.288L9.49 4.756Z" fill="#fff"/><path d="M8.669 4.356a13.83 13.83 0 0 0-4.362 4.39l4.362 2.518V4.356Z" fill="#fff" fill-opacity=".8"/><path d="M22.504 3.88a13.695 13.695 0 0 0-6.099-1.63v5.123l6.1-3.493ZM2.25 16.483c.071 2.12.634 4.196 1.644 6.062l4.418-2.559-6.062-3.503Zm1.644-7.028a13.68 13.68 0 0 0-1.644 6.036l6.068-3.482-4.424-2.554Z" fill="#fff"/><path d="M9.539 28.147a13.673 13.673 0 0 0 6.047 1.603v-5.062L9.54 28.147Z" fill="#fff" fill-opacity=".8"/><path d="M27.697 8.768a13.83 13.83 0 0 0-4.335-4.383v6.889l4.335-2.506ZM23.362 27.62a13.851 13.851 0 0 0 4.351-4.417l-4.351-2.514v6.93Z" fill="#fff"/><path d="M29.75 15.452a13.659 13.659 0 0 0-1.63-5.979l-4.381 2.53 6.011 3.45Z" fill="#fff" fill-opacity=".8"/><path d="M16.405 29.75a13.673 13.673 0 0 0 6.036-1.595l-6.036-3.498v5.093Z" fill="#fff"/><path d="M8.669 19.247v-6.494L3.03 15.986l5.639 3.261Z" fill="#fff" fill-opacity=".8"/></svg>'},svgColor:{type:"string",description:"SVG representation of the model in colored format.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgColor",json:"svgColor"},"x-order":6,default:'<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 134.95 135.02"><defs><style>.cls-1{fill:#00d3a9}.cls-2{fill:#00b39f}</style></defs><title>meshery-logo-light</title><polygon points="69.49 31.82 69.49 64.07 97.44 47.89 69.49 31.82" class="cls-1"/><polygon points="69.49 70.81 69.49 103.22 97.7 87.09 69.49 70.81" class="cls-1"/><polygon points="65.47 63.85 65.47 32.09 37.87 47.92 65.47 63.85" class="cls-2"/><path d="M10.1,103.1a67.79,67.79,0,0,0,21.41,21.55V90.71Z" class="cls-2"/><polygon points="65.47 103.06 65.47 71.05 37.8 87.07 65.47 103.06" class="cls-2"/><polygon points="35.54 122.63 63.56 106.61 35.54 90.41 35.54 122.63" class="cls-1"/><polygon points="99.61 122.8 99.61 90.63 71.63 106.63 99.61 122.8" class="cls-2"/><path d="M127,99.37a67.22,67.22,0,0,0,7.91-28.94L105.78,87.11Z" class="cls-2"/><polygon points="103.64 83.69 131.76 67.61 103.64 51.45 103.64 83.69" class="cls-1"/><polygon points="99.61 44.5 99.61 12.52 71.76 28.49 99.61 44.5" class="cls-2"/><polygon points="99.61 83.55 99.61 51.28 71.7 67.44 99.61 83.55" class="cls-2"/><polygon points="67.48 135.02 67.49 135.02 67.48 135.02 67.48 135.02" class="cls-2"/><polygon points="35.54 51.22 35.54 83.73 63.66 67.45 35.54 51.22" class="cls-1"/><path d="M65.47,0A67.2,67.2,0,0,0,35.83,7.83l29.64,17Z" class="cls-2"/><polygon points="35.54 12.3 35.54 44.62 63.68 28.48 35.54 12.3" class="cls-1"/><path d="M31.51,10.34A67.89,67.89,0,0,0,10.1,31.89L31.51,44.25Z" class="cls-2"/><path d="M99.43,8A67.23,67.23,0,0,0,69.49,0V25.15Z" class="cls-1"/><path d="M0,69.87A67.27,67.27,0,0,0,8.07,99.63L29.76,87.07Z" class="cls-1"/><path d="M8.07,35.37A67.16,67.16,0,0,0,0,65L29.79,47.91Z" class="cls-1"/><path d="M35.78,127.13A67.13,67.13,0,0,0,65.47,135V110.15Z" class="cls-2"/><path d="M124.92,32a67.9,67.9,0,0,0-21.28-21.52V44.3Z" class="cls-1"/><path d="M103.64,124.54A68,68,0,0,0,125,102.86L103.64,90.52Z" class="cls-1"/><path d="M135,64.81a67.06,67.06,0,0,0-8-29.35L105.49,47.88Z" class="cls-2"/><path d="M69.49,135a67.12,67.12,0,0,0,29.63-7.83L69.49,110Z" class="cls-1"/><polygon points="31.51 83.44 31.51 51.56 3.83 67.43 31.51 83.44" class="cls-2"/></svg>'},svgComplete:{type:"string",description:"SVG representation of the complete model.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgComplete",json:"svgComplete"},"x-order":7},shape:{"x-order":8,type:"string",description:"The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)",enum:["ellipse","triangle","round-triangle","rectangle","round-rectangle","bottom-round-rectangle","cut-rectangle","barrel","rhomboid","diamond","round-diamond","pentagon","round-pentagon","hexagon","round-hexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","star","tag","round-tag","vee","polygon"]}},"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json",json:"metadata",yaml:"metadata"},"x-order":11,additionalProperties:true},model:{"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},"x-order":12,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.",allOf:[{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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."}],"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},"x-order":1}}},relationships:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships",yaml:"relationships"}},components:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"components",yaml:"components"}},componentsCount:{type:"integer",description:"Number of components associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{json:"components_count",yaml:"components_count",gorm:"-"},default:0},relationshipsCount:{type:"integer",description:"Number of relationships associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships_count",yaml:"relationships_count"},default:0},created_at:{"x-order":14,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":15,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true}},required:["id","schemaVersion","displayName","status","subCategory","model","name","description","version","registrant","category","categoryId","registrantId","relationshipsCount","componentsCount","components","relationships"]},RegistrantReference:{type:"object",required:["kind"],properties:{kind:{type:"string"}}},ModelReference:{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.",helperText:"Model name should be in lowercase with hyphens, not whitespaces.",pattern:"^[a-z0-9-]+$",examples:["cert-manager"],"x-order":4,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name"},default:"untitled-model"},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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1.","x-order":3,"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"}},displayName:{description:"Human-readable name for the model.",helperText:"Model display name may include letters, numbers, and spaces. Special characters are not allowed.",minLength:1,maxLength:100,type:"string",pattern:"^[a-zA-Z0-9 ]+$",examples:["Cert Manager"],"x-order":5,"x-oapi-codegen-extra-tags":{yaml:"displayName",json:"displayName"},default:"Untitled Model"},model:{"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},"x-order":12,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.",allOf:[{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-]+)*)?$",description:"A valid semantic version string between 5 and 256 characters. The pattern allows for a major.minor.patch version followed by an optional pre-release tag like '-alpha' or '-beta.2' and an optional build metadata tag like '+build.1."}],"x-oapi-codegen-extra-tags":{yaml:"version",json:"version"},"x-order":1}}},registrant:{"x-go-type":"RegistrantReference","x-oapi-codegen-extra-tags":{yaml:"registrant",json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string"}}}},description:"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"},ImportRequest:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}},ImportBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]}}}},t=e;
5
+ - ignored: model is unavailable for use for all users of this Meshery Server.`,enum:["ignored","enabled","duplicate"],"x-order":7,"x-oapi-codegen-extra-tags":{yaml:"status",json:"status"},default:"enabled"},registrant:{"x-oapi-codegen-extra-tags":{yaml:"registrant",json:"registrant",gorm:"foreignKey:RegistrantId;references:ID"},"x-order":8,"x-go-type":"connectionv1beta1.Connection","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/connection",name:"connectionv1beta1"},$id:"https://schemas.meshery.io/connection.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections",additionalProperties:false,type:"object",required:["id","schemaVersion","name","type","sub_type","kind","status"],properties:{id:{description:"Connection ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":2,type:"string",description:"Connection Name"},credential_id:{"x-go-name":"CredentialID","x-oapi-codegen-extra-tags":{db:"credential_id",yaml:"credential_id"},"x-order":3,description:"Associated Credential ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},type:{"x-oapi-codegen-extra-tags":{db:"type",yaml:"type"},"x-order":4,type:"string",description:"Connection Type (platform, telemetry, collaboration)"},sub_type:{"x-oapi-codegen-extra-tags":{db:"sub_type",yaml:"sub_type"},"x-order":5,type:"string",description:"Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"},kind:{"x-oapi-codegen-extra-tags":{db:"kind",yaml:"kind"},"x-order":6,type:"string",description:"Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":7,"x-go-type":"core.Map","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-go-type-skip-optional-pointer":true,type:"object",description:"Additional connection metadata"},status:{"x-oapi-codegen-extra-tags":{db:"status",yaml:"status"},"x-order":8,description:"Connection Status",type:"string",enum:["discovered","registered","connected","ignored","maintenance","disconnected","deleted","not found"]},user_id:{"x-go-name":"UserID","x-oapi-codegen-extra-tags":{db:"user_id",yaml:"user_id"},"x-order":9,description:"User ID who owns this connection",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":11,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-order":12,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true},environments:{type:"array",description:"Associated environments for this connection",items:{"x-go-type":"*environmentv1beta1.Environment","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/environment",name:"environmentv1beta1"},$id:"https://schemas.meshery.io/environment.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"Meshery Environments allow you to logically group related Connections and their associated Credentials.. Learn more at https://docs.meshery.io/concepts/logical/environments",additionalProperties:false,type:"object",required:["id","schemaVersion","name","description","organization_id"],properties:{id:{description:"ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",yaml:"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 to which the environment conforms.","x-order":2,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"environments.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]},name:{"x-oapi-codegen-extra-tags":{db:"name",yaml:"name"},"x-order":3,type:"string",description:"Environment name"},description:{"x-oapi-codegen-extra-tags":{db:"description",yaml:"description"},"x-order":4,type:"string",description:"Environment description"},organization_id:{"x-go-name":"OrganizationID","x-oapi-codegen-extra-tags":{db:"organization_id",yaml:"organization_id"},"x-order":5,description:"Environment organization ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},owner:{"x-oapi-codegen-extra-tags":{db:"owner",yaml:"owner"},"x-order":6,description:"Environment owner",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},created_at:{"x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata",yaml:"metadata"},"x-order":8,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object"},updated_at:{"x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at",yaml:"deleted_at"},"x-order":10,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-oapi-codegen-extra-tags":{db:"-",yaml:"environments",gorm:"-"},"x-go-type-skip-optional-pointer":true,"x-order":13},schemaVersion:{description:"Specifies the version of the schema used for the definition.","x-order":14,"x-oapi-codegen-extra-tags":{yaml:"schemaVersion",db:"-",gorm:"-"},default:"connections.meshery.io/v1beta1",type:"string",minLength:2,maxLength:100,pattern:"^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+)([.-][a-z0-9]+)*$",example:["v1","v1alpha1","v2beta3","v1.custom-suffix","models.meshery.io/v1beta1","capability.meshery.io/v1alpha1"]}}},registrantId:{description:"ID of the registrant.","x-oapi-codegen-extra-tags":{yaml:"connection_id",json:"connection_id",gorm:"column:connection_id"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},categoryId:{description:"ID of the category.","x-oapi-codegen-extra-tags":{yaml:"-",json:"-",gorm:"categoryID"},"x-order":8,type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},category:{"x-order":9,"x-oapi-codegen-extra-tags":{yaml:"category",json:"category",gorm:"foreignKey:CategoryId;references:ID"},"x-go-type":"categoryv1beta1.CategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/category",name:"categoryv1beta1"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"object",description:"Category of the model.",required:["id","name","metadata"],properties:{id:{"x-order":1,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",minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"name",json:"name",gorm:"name"},default:"Uncategorized",description:"The category of the model that determines the main grouping.",enum:["Analytics","App Definition and Development","Cloud Native Network","Cloud Native Storage","Database","Machine Learning","Observability and Analysis","Orchestration & Management","Platform","Provisioning","Runtime","Security & Compliance","Serverless","Tools","Uncategorized"],"x-order":2},metadata:{type:"object","x-oapi-codegen-extra-tags":{yaml:"metadata,omitempty",json:"metadata,omitempty",gorm:"type:bytes;serializer:json"},"x-order":3}}},subCategory:{"x-order":10,"x-go-type":"subcategoryv1beta1.SubCategoryDefinition","x-go-type-import":{path:"github.com/meshery/schemas/models/v1beta1/subcategory",name:"subcategoryv1beta1"},$id:"https://schemas.meshery.io/category.yaml",$schema:"http://json-schema.org/draft-07/schema#",type:"string",title:"SubCategory",description:"Sub category of the model determines the secondary grouping.",default:"Uncategorized",enum:["API Gateway","API Integration","Application Definition & Image Build","Automation & Configuration","Certified Kubernetes - Distribution","Chaos Engineering","Cloud Native Storage","Cloud Provider","CNI","Compute","Container Registry","Container Runtime","Container Security","Container","Content Delivery Network","Continuous Integration & Delivery","Coordination & Service Discovery","Database","Flowchart","Framework","Installable Platform","Key Management","Key Management Service","Kubernetes","Logging","Machine Learning","Management Governance","Metrics","Monitoring","Networking Content Delivery","Operating System","Query","Remote Procedure Call","Scheduling & Orchestration","Secrets Management","Security Identity & Compliance","Service Mesh","Service Proxy","Source Version Control","Storage","Specifications","Streaming & Messaging","Tools","Tracing","Uncategorized","Video Conferencing"],minLength:1,maxLength:100,"x-oapi-codegen-extra-tags":{yaml:"subCategory",json:"subCategory"}},metadata:{type:"object",description:"Metadata containing additional information associated with the model.",required:["svgWhite","svgColor"],properties:{capabilities:{type:"array",description:"Capabilities associated with the model",items:{"x-go-type":"capabilityv1alpha1.Capability","x-go-type-import":{path:"github.com/meshery/schemas/models/v1alpha1/capability",name:"capabilityv1alpha1"},$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]+)([.-][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."},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/v1alpha1",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/v1alpha1",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/v1alpha1",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/v1alpha1",status:"enabled",subType:"body-text",type:"style",version:"0.7.0"}]},"x-order":1},isAnnotation:{type:"boolean",description:"Indicates whether the model and its entities should be treated as deployable entities or as logical representations.","x-oapi-codegen-extra-tags":{yaml:"isAnnotation",json:"isAnnotation"},"x-order":2,default:false},primaryColor:{type:"string",description:"Primary color associated with the model.",minLength:1,maxLength:50,default:"#00b39f","x-oapi-codegen-extra-tags":{yaml:"primaryColor",json:"primaryColor"},"x-order":3},secondaryColor:{type:"string",description:"Secondary color associated with the model.",minLength:1,maxLength:50,default:"#00D3A9","x-oapi-codegen-extra-tags":{yaml:"secondaryColor",json:"secondaryColor"},"x-order":4},svgWhite:{type:"string",description:"SVG representation of the model in white color.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgWhite",json:"svgWhite"},"x-order":5,default:'<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.405 8.732v6.57l5.694-3.297-5.694-3.273Zm0 7.942v6.602l5.747-3.285-5.747-3.317Z" fill="#fff"/><path d="M15.586 15.256v-6.47l-5.622 3.225 5.622 3.245ZM4.307 23.252a13.809 13.809 0 0 0 4.362 4.39v-6.914l-4.362 2.524Zm11.279-.008v-6.52L9.95 19.985l5.636 3.258Z" fill="#fff" fill-opacity=".8"/><path d="m9.49 27.23 5.707-3.263-5.707-3.3v6.563Z" fill="#fff"/><path d="M22.54 27.265v-6.553l-5.699 3.259 5.7 3.294Zm5.58-4.773a13.697 13.697 0 0 0 1.612-5.895l-5.934 3.397 4.323 2.498Z" fill="#fff" fill-opacity=".8"/><path d="m23.362 19.298 5.728-3.276-5.728-3.291v6.567Z" fill="#fff"/><path d="M22.541 11.315V4.8l-5.673 3.253 5.673 3.262Zm0 7.955v-6.574l-5.685 3.292 5.685 3.281Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 12.684v6.622l5.728-3.316-5.728-3.306Z" fill="#fff"/><path d="M15.586 2.25a13.69 13.69 0 0 0-6.037 1.595l6.037 3.463V2.25Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 4.756v6.583l5.732-3.288L9.49 4.756Z" fill="#fff"/><path d="M8.669 4.356a13.83 13.83 0 0 0-4.362 4.39l4.362 2.518V4.356Z" fill="#fff" fill-opacity=".8"/><path d="M22.504 3.88a13.695 13.695 0 0 0-6.099-1.63v5.123l6.1-3.493ZM2.25 16.483c.071 2.12.634 4.196 1.644 6.062l4.418-2.559-6.062-3.503Zm1.644-7.028a13.68 13.68 0 0 0-1.644 6.036l6.068-3.482-4.424-2.554Z" fill="#fff"/><path d="M9.539 28.147a13.673 13.673 0 0 0 6.047 1.603v-5.062L9.54 28.147Z" fill="#fff" fill-opacity=".8"/><path d="M27.697 8.768a13.83 13.83 0 0 0-4.335-4.383v6.889l4.335-2.506ZM23.362 27.62a13.851 13.851 0 0 0 4.351-4.417l-4.351-2.514v6.93Z" fill="#fff"/><path d="M29.75 15.452a13.659 13.659 0 0 0-1.63-5.979l-4.381 2.53 6.011 3.45Z" fill="#fff" fill-opacity=".8"/><path d="M16.405 29.75a13.673 13.673 0 0 0 6.036-1.595l-6.036-3.498v5.093Z" fill="#fff"/><path d="M8.669 19.247v-6.494L3.03 15.986l5.639 3.261Z" fill="#fff" fill-opacity=".8"/></svg>'},svgColor:{type:"string",description:"SVG representation of the model in colored format.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgColor",json:"svgColor"},"x-order":6,default:'<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 134.95 135.02"><defs><style>.cls-1{fill:#00d3a9}.cls-2{fill:#00b39f}</style></defs><title>meshery-logo-light</title><polygon points="69.49 31.82 69.49 64.07 97.44 47.89 69.49 31.82" class="cls-1"/><polygon points="69.49 70.81 69.49 103.22 97.7 87.09 69.49 70.81" class="cls-1"/><polygon points="65.47 63.85 65.47 32.09 37.87 47.92 65.47 63.85" class="cls-2"/><path d="M10.1,103.1a67.79,67.79,0,0,0,21.41,21.55V90.71Z" class="cls-2"/><polygon points="65.47 103.06 65.47 71.05 37.8 87.07 65.47 103.06" class="cls-2"/><polygon points="35.54 122.63 63.56 106.61 35.54 90.41 35.54 122.63" class="cls-1"/><polygon points="99.61 122.8 99.61 90.63 71.63 106.63 99.61 122.8" class="cls-2"/><path d="M127,99.37a67.22,67.22,0,0,0,7.91-28.94L105.78,87.11Z" class="cls-2"/><polygon points="103.64 83.69 131.76 67.61 103.64 51.45 103.64 83.69" class="cls-1"/><polygon points="99.61 44.5 99.61 12.52 71.76 28.49 99.61 44.5" class="cls-2"/><polygon points="99.61 83.55 99.61 51.28 71.7 67.44 99.61 83.55" class="cls-2"/><polygon points="67.48 135.02 67.49 135.02 67.48 135.02 67.48 135.02" class="cls-2"/><polygon points="35.54 51.22 35.54 83.73 63.66 67.45 35.54 51.22" class="cls-1"/><path d="M65.47,0A67.2,67.2,0,0,0,35.83,7.83l29.64,17Z" class="cls-2"/><polygon points="35.54 12.3 35.54 44.62 63.68 28.48 35.54 12.3" class="cls-1"/><path d="M31.51,10.34A67.89,67.89,0,0,0,10.1,31.89L31.51,44.25Z" class="cls-2"/><path d="M99.43,8A67.23,67.23,0,0,0,69.49,0V25.15Z" class="cls-1"/><path d="M0,69.87A67.27,67.27,0,0,0,8.07,99.63L29.76,87.07Z" class="cls-1"/><path d="M8.07,35.37A67.16,67.16,0,0,0,0,65L29.79,47.91Z" class="cls-1"/><path d="M35.78,127.13A67.13,67.13,0,0,0,65.47,135V110.15Z" class="cls-2"/><path d="M124.92,32a67.9,67.9,0,0,0-21.28-21.52V44.3Z" class="cls-1"/><path d="M103.64,124.54A68,68,0,0,0,125,102.86L103.64,90.52Z" class="cls-1"/><path d="M135,64.81a67.06,67.06,0,0,0-8-29.35L105.49,47.88Z" class="cls-2"/><path d="M69.49,135a67.12,67.12,0,0,0,29.63-7.83L69.49,110Z" class="cls-1"/><polygon points="31.51 83.44 31.51 51.56 3.83 67.43 31.51 83.44" class="cls-2"/></svg>'},svgComplete:{type:"string",description:"SVG representation of the complete model.",minLength:1,"x-oapi-codegen-extra-tags":{yaml:"svgComplete",json:"svgComplete"},"x-order":7},shape:{"x-order":8,type:"string",description:"The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)",enum:["ellipse","triangle","round-triangle","rectangle","round-rectangle","bottom-round-rectangle","cut-rectangle","barrel","rhomboid","diamond","round-diamond","pentagon","round-pentagon","hexagon","round-hexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","star","tag","round-tag","vee","polygon"]}},"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json",json:"metadata",yaml:"metadata"},"x-order":11,additionalProperties:true},model:{"x-oapi-codegen-extra-tags":{gorm:"type:bytes;serializer:json"},"x-order":12,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":{yaml:"version",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-]+)*)?$"}}},relationships:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships",yaml:"relationships"}},components:{type:"array","x-go-type":"interface{}","x-oapi-codegen-extra-tags":{gorm:"-",json:"components",yaml:"components"}},componentsCount:{type:"integer",description:"Number of components associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{json:"components_count",yaml:"components_count",gorm:"-"},default:0},relationshipsCount:{type:"integer",description:"Number of relationships associated with the model.","x-order":13,"x-oapi-codegen-extra-tags":{gorm:"-",json:"relationships_count",yaml:"relationships_count"},default:0},created_at:{"x-order":14,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":15,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true}},required:["id","schemaVersion","displayName","status","subCategory","model","name","description","version","registrant","category","categoryId","registrantId","relationshipsCount","componentsCount","components","relationships"]},RegistrantReference:{type:"object",required:["kind"],properties:{kind:{type:"string"}}},ModelReference:{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":{yaml:"version",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":{yaml:"registrant",json:"registrant"},type:"object",required:["kind"],properties:{kind:{type:"string"}}}},description:"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"},ImportRequest:{type:"object",required:["importBody","uploadType","register"],properties:{importBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]},uploadType:{type:"string",title:"Upload method",enum:["file","urlImport","csv","url"],enumDescriptions:["Upload a model file (.tar, .tar.gz, .tgz) from your local system","Import a model file using a direct URL to the source","Upload separate CSV files for model definitions, components, and their relationships"],description:"Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."},register:{type:"boolean",nullable:false}}},ImportBody:{oneOf:[{title:"File Import",type:"object",required:["fileName","modelFile"],properties:{fileName:{type:"string",description:"Name of the file being uploaded."},modelFile:{type:"string",format:"file",description:"Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"URL Import",type:"object",required:["url"],properties:{url:{type:"string",format:"uri",description:"A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"}}},{title:"CSV Import",type:"object",required:["modelCsv","componentCsv","relationshipCsv"],properties:{modelCsv:{type:"string",format:"binary",description:"Upload a CSV file containing model definitions"},componentCsv:{type:"string",format:"binary",description:"Upload a CSV file containing component definitions"},relationshipCsv:{type:"string",format:"binary",description:"Upload a CSV file containing relationship definitions"}}},{title:"Model Create",type:"object",required:["model","url"],properties:{url:{type:"string",description:"URI to the source code or package of the model.",format:"uri",oneOf:[{title:"GitHub",type:"string",pattern:"^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",description:"Git protocol URL for GitHub repository or specific resource path",example:"git://github.com/cert-manager/cert-manager/master/deploy/crds","x-metadata":{uiType:"url",validationHint:"Enter a git protocol URL (e.g., git://github.com/owner/repo)"}},{title:"Artifact Hub",type:"string",pattern:"^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",description:"Artifact Hub package URL or search query URL with model name parameter",example:"https://artifacthub.io/packages/search?ts_query_web={model-name}","x-metadata":{uiType:"url",validationHint:"Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"}}]}}}]}}}},t=e;
6
6
  export{t as default};