@kong-ui-public/entities-plugins 9.125.1-pr.2708.4a8df182b.0 → 9.125.1-pr.2708.ec98b1953.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/dist/entities-plugins.es.js +7493 -7382
  2. package/dist/entities-plugins.umd.js +32 -32
  3. package/dist/style.css +1 -1
  4. package/dist/types/components/PluginCatalog.vue.d.ts +2 -1
  5. package/dist/types/components/PluginCatalog.vue.d.ts.map +1 -1
  6. package/dist/types/components/PluginConfigCard.vue.d.ts +3 -2
  7. package/dist/types/components/PluginConfigCard.vue.d.ts.map +1 -1
  8. package/dist/types/components/PluginEntityForm.vue.d.ts +3 -2
  9. package/dist/types/components/PluginEntityForm.vue.d.ts.map +1 -1
  10. package/dist/types/components/PluginFieldRuleAlerts.vue.d.ts +2 -1
  11. package/dist/types/components/PluginFieldRuleAlerts.vue.d.ts.map +1 -1
  12. package/dist/types/components/PluginForm.vue.d.ts +3 -2
  13. package/dist/types/components/PluginForm.vue.d.ts.map +1 -1
  14. package/dist/types/components/PluginFormActionsWrapper.vue.d.ts +7 -6
  15. package/dist/types/components/PluginFormActionsWrapper.vue.d.ts.map +1 -1
  16. package/dist/types/components/PluginList.vue.d.ts +3 -2
  17. package/dist/types/components/PluginList.vue.d.ts.map +1 -1
  18. package/dist/types/components/PluginSelect.vue.d.ts +6 -5
  19. package/dist/types/components/PluginSelect.vue.d.ts.map +1 -1
  20. package/dist/types/components/custom-plugins/DeleteCustomPluginSchemaModal.vue.d.ts +3 -2
  21. package/dist/types/components/custom-plugins/DeleteCustomPluginSchemaModal.vue.d.ts.map +1 -1
  22. package/dist/types/components/custom-plugins/PluginCustomGrid.vue.d.ts +3 -2
  23. package/dist/types/components/custom-plugins/PluginCustomGrid.vue.d.ts.map +1 -1
  24. package/dist/types/components/fields/key-auth-identity-realms/Base.vue.d.ts +4 -3
  25. package/dist/types/components/fields/key-auth-identity-realms/Base.vue.d.ts.map +1 -1
  26. package/dist/types/components/fields/key-auth-identity-realms/FreeFormAdapter.vue.d.ts +5 -4
  27. package/dist/types/components/fields/key-auth-identity-realms/FreeFormAdapter.vue.d.ts.map +1 -1
  28. package/dist/types/components/fields/key-auth-identity-realms/VfgAdapter.vue.d.ts +2 -1
  29. package/dist/types/components/fields/key-auth-identity-realms/VfgAdapter.vue.d.ts.map +1 -1
  30. package/dist/types/components/free-form/AIMcpProxy/AIMcpProxyForm.vue.d.ts +3 -2
  31. package/dist/types/components/free-form/AIMcpProxy/AIMcpProxyForm.vue.d.ts.map +1 -1
  32. package/dist/types/components/free-form/AIMcpProxy/ConfigForm.vue.d.ts +2 -1
  33. package/dist/types/components/free-form/AIMcpProxy/ConfigForm.vue.d.ts.map +1 -1
  34. package/dist/types/components/free-form/Common/CommonForm.vue.d.ts +3 -2
  35. package/dist/types/components/free-form/Common/CommonForm.vue.d.ts.map +1 -1
  36. package/dist/types/components/free-form/Common/ConfigForm.vue.d.ts +2 -1
  37. package/dist/types/components/free-form/Common/ConfigForm.vue.d.ts.map +1 -1
  38. package/dist/types/components/free-form/Datakit/CodeEditor.vue.d.ts +2 -1
  39. package/dist/types/components/free-form/Datakit/CodeEditor.vue.d.ts.map +1 -1
  40. package/dist/types/components/free-form/Datakit/DatakitConfigCardCanvas.vue.d.ts +2 -1
  41. package/dist/types/components/free-form/Datakit/DatakitConfigCardCanvas.vue.d.ts.map +1 -1
  42. package/dist/types/components/free-form/Datakit/DatakitForm.vue.d.ts +2 -1
  43. package/dist/types/components/free-form/Datakit/DatakitForm.vue.d.ts.map +1 -1
  44. package/dist/types/components/free-form/Datakit/flow-editor/FlowCanvas.vue.d.ts +2 -1
  45. package/dist/types/components/free-form/Datakit/flow-editor/FlowCanvas.vue.d.ts.map +1 -1
  46. package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts +2 -1
  47. package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts.map +1 -1
  48. package/dist/types/components/free-form/Datakit/flow-editor/FlowPanels.vue.d.ts +2 -1
  49. package/dist/types/components/free-form/Datakit/flow-editor/FlowPanels.vue.d.ts.map +1 -1
  50. package/dist/types/components/free-form/Datakit/flow-editor/HotkeyLabel.vue.d.ts +2 -1
  51. package/dist/types/components/free-form/Datakit/flow-editor/HotkeyLabel.vue.d.ts.map +1 -1
  52. package/dist/types/components/free-form/Datakit/flow-editor/VaultSecretPicker.vue.d.ts +2 -1
  53. package/dist/types/components/free-form/Datakit/flow-editor/VaultSecretPicker.vue.d.ts.map +1 -1
  54. package/dist/types/components/free-form/Datakit/flow-editor/modal/ConflictModal.vue.d.ts +2 -1
  55. package/dist/types/components/free-form/Datakit/flow-editor/modal/ConflictModal.vue.d.ts.map +1 -1
  56. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorContent.vue.d.ts +2 -1
  57. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorContent.vue.d.ts.map +1 -1
  58. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorMain.vue.d.ts +3 -2
  59. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorMain.vue.d.ts.map +1 -1
  60. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorModal.vue.d.ts +4 -3
  61. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorModal.vue.d.ts.map +1 -1
  62. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorNav.vue.d.ts +2 -1
  63. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorNav.vue.d.ts.map +1 -1
  64. package/dist/types/components/free-form/Datakit/flow-editor/node/FlowNode.vue.d.ts +2 -1
  65. package/dist/types/components/free-form/Datakit/flow-editor/node/FlowNode.vue.d.ts.map +1 -1
  66. package/dist/types/components/free-form/Datakit/flow-editor/node/GroupNode.vue.d.ts +2 -1
  67. package/dist/types/components/free-form/Datakit/flow-editor/node/GroupNode.vue.d.ts.map +1 -1
  68. package/dist/types/components/free-form/Datakit/flow-editor/node/HandleTwig.vue.d.ts +2 -1
  69. package/dist/types/components/free-form/Datakit/flow-editor/node/HandleTwig.vue.d.ts.map +1 -1
  70. package/dist/types/components/free-form/Datakit/flow-editor/node/NodeBadge.vue.d.ts +2 -1
  71. package/dist/types/components/free-form/Datakit/flow-editor/node/NodeBadge.vue.d.ts.map +1 -1
  72. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePanelItem.vue.d.ts +2 -1
  73. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePanelItem.vue.d.ts.map +1 -1
  74. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePortal.vue.d.ts +2 -1
  75. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePortal.vue.d.ts.map +1 -1
  76. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePropertiesPanel.vue.d.ts +2 -1
  77. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePropertiesPanel.vue.d.ts.map +1 -1
  78. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/HttpMethodField.vue.d.ts +2 -1
  79. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/HttpMethodField.vue.d.ts.map +1 -1
  80. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsField.vue.d.ts +5 -4
  81. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsField.vue.d.ts.map +1 -1
  82. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsMapField.vue.d.ts +5 -4
  83. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsMapField.vue.d.ts.map +1 -1
  84. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsRecordField.vue.d.ts +5 -4
  85. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsRecordField.vue.d.ts.map +1 -1
  86. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NameField.vue.d.ts +2 -1
  87. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NameField.vue.d.ts.map +1 -1
  88. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormBranch.vue.d.ts +2 -1
  89. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormBranch.vue.d.ts.map +1 -1
  90. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCache.vue.d.ts +2 -1
  91. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCache.vue.d.ts.map +1 -1
  92. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCall.vue.d.ts +2 -1
  93. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCall.vue.d.ts.map +1 -1
  94. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormExit.vue.d.ts +2 -1
  95. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormExit.vue.d.ts.map +1 -1
  96. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormJq.vue.d.ts +2 -1
  97. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormJq.vue.d.ts.map +1 -1
  98. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormProperty.vue.d.ts +2 -1
  99. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormProperty.vue.d.ts.map +1 -1
  100. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormResponse.vue.d.ts +2 -1
  101. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormResponse.vue.d.ts.map +1 -1
  102. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormServiceRequest.vue.d.ts +2 -1
  103. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormServiceRequest.vue.d.ts.map +1 -1
  104. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormStatic.vue.d.ts +2 -1
  105. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormStatic.vue.d.ts.map +1 -1
  106. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/OutputValueField.vue.d.ts +2 -1
  107. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/OutputValueField.vue.d.ts.map +1 -1
  108. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/PropertiesField.vue.d.ts +2 -1
  109. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/PropertiesField.vue.d.ts.map +1 -1
  110. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/SourceItem.vue.d.ts +2 -1
  111. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/SourceItem.vue.d.ts.map +1 -1
  112. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/CacheField.vue.d.ts +2 -1
  113. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/CacheField.vue.d.ts.map +1 -1
  114. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/NodePanel.vue.d.ts +2 -1
  115. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/NodePanel.vue.d.ts.map +1 -1
  116. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/ResourcesPanel.vue.d.ts +2 -1
  117. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/ResourcesPanel.vue.d.ts.map +1 -1
  118. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/SidePanel.vue.d.ts +2 -1
  119. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/SidePanel.vue.d.ts.map +1 -1
  120. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/VaultField.vue.d.ts +2 -1
  121. package/dist/types/components/free-form/Datakit/flow-editor/side-panel/VaultField.vue.d.ts.map +1 -1
  122. package/dist/types/components/free-form/RequestCallout/CalloutForm.vue.d.ts +2 -1
  123. package/dist/types/components/free-form/RequestCallout/CalloutForm.vue.d.ts.map +1 -1
  124. package/dist/types/components/free-form/RequestCallout/CalloutsForm.vue.d.ts +2 -1
  125. package/dist/types/components/free-form/RequestCallout/CalloutsForm.vue.d.ts.map +1 -1
  126. package/dist/types/components/free-form/RequestCallout/ConfigForm.vue.d.ts +2 -1
  127. package/dist/types/components/free-form/RequestCallout/ConfigForm.vue.d.ts.map +1 -1
  128. package/dist/types/components/free-form/RequestCallout/RequestCalloutForm.vue.d.ts +3 -2
  129. package/dist/types/components/free-form/RequestCallout/RequestCalloutForm.vue.d.ts.map +1 -1
  130. package/dist/types/components/free-form/ServiceProtection/ConfigForm.vue.d.ts +2 -1
  131. package/dist/types/components/free-form/ServiceProtection/ConfigForm.vue.d.ts.map +1 -1
  132. package/dist/types/components/free-form/ServiceProtection/ErrorMessageForm.vue.d.ts +2 -1
  133. package/dist/types/components/free-form/ServiceProtection/ErrorMessageForm.vue.d.ts.map +1 -1
  134. package/dist/types/components/free-form/ServiceProtection/RedisField.vue.d.ts +2 -1
  135. package/dist/types/components/free-form/ServiceProtection/RedisField.vue.d.ts.map +1 -1
  136. package/dist/types/components/free-form/ServiceProtection/RequestLimitsForm.vue.d.ts +2 -1
  137. package/dist/types/components/free-form/ServiceProtection/RequestLimitsForm.vue.d.ts.map +1 -1
  138. package/dist/types/components/free-form/ServiceProtection/ServiceProtectionForm.vue.d.ts +3 -2
  139. package/dist/types/components/free-form/ServiceProtection/ServiceProtectionForm.vue.d.ts.map +1 -1
  140. package/dist/types/components/free-form/shared/AdvancedFields.vue.d.ts +5 -4
  141. package/dist/types/components/free-form/shared/AdvancedFields.vue.d.ts.map +1 -1
  142. package/dist/types/components/free-form/shared/ArrayField.vue.d.ts +14 -9
  143. package/dist/types/components/free-form/shared/ArrayField.vue.d.ts.map +1 -1
  144. package/dist/types/components/free-form/shared/BooleanField.vue.d.ts +5 -4
  145. package/dist/types/components/free-form/shared/BooleanField.vue.d.ts.map +1 -1
  146. package/dist/types/components/free-form/shared/EnhancedInput.vue.d.ts +3 -2
  147. package/dist/types/components/free-form/shared/EnhancedInput.vue.d.ts.map +1 -1
  148. package/dist/types/components/free-form/shared/EntityChecksAlert.vue.d.ts +2 -1
  149. package/dist/types/components/free-form/shared/EntityChecksAlert.vue.d.ts.map +1 -1
  150. package/dist/types/components/free-form/shared/EnumField.vue.d.ts +7 -6
  151. package/dist/types/components/free-form/shared/EnumField.vue.d.ts.map +1 -1
  152. package/dist/types/components/free-form/shared/Field.vue.d.ts +3 -2
  153. package/dist/types/components/free-form/shared/Field.vue.d.ts.map +1 -1
  154. package/dist/types/components/free-form/shared/FieldRenderer.vue.d.ts +3 -2
  155. package/dist/types/components/free-form/shared/FieldRenderer.vue.d.ts.map +1 -1
  156. package/dist/types/components/free-form/shared/ForeignField.vue.d.ts +5 -4
  157. package/dist/types/components/free-form/shared/ForeignField.vue.d.ts.map +1 -1
  158. package/dist/types/components/free-form/shared/Form.vue.d.ts +15 -10
  159. package/dist/types/components/free-form/shared/Form.vue.d.ts.map +1 -1
  160. package/dist/types/components/free-form/shared/JsonField.vue.d.ts +5 -4
  161. package/dist/types/components/free-form/shared/JsonField.vue.d.ts.map +1 -1
  162. package/dist/types/components/free-form/shared/KeyValueField.vue.d.ts +5 -4
  163. package/dist/types/components/free-form/shared/KeyValueField.vue.d.ts.map +1 -1
  164. package/dist/types/components/free-form/shared/NumberField.vue.d.ts +5 -4
  165. package/dist/types/components/free-form/shared/NumberField.vue.d.ts.map +1 -1
  166. package/dist/types/components/free-form/shared/ObjectField.vue.d.ts +8 -6
  167. package/dist/types/components/free-form/shared/ObjectField.vue.d.ts.map +1 -1
  168. package/dist/types/components/free-form/shared/PluginFormWrapper.vue.d.ts +11 -6
  169. package/dist/types/components/free-form/shared/PluginFormWrapper.vue.d.ts.map +1 -1
  170. package/dist/types/components/free-form/shared/RadioField.vue.d.ts +2 -1
  171. package/dist/types/components/free-form/shared/RadioField.vue.d.ts.map +1 -1
  172. package/dist/types/components/free-form/shared/RedisConfigCard.vue.d.ts +2 -1
  173. package/dist/types/components/free-form/shared/RedisConfigCard.vue.d.ts.map +1 -1
  174. package/dist/types/components/free-form/shared/RedisSelector.vue.d.ts +2 -1
  175. package/dist/types/components/free-form/shared/RedisSelector.vue.d.ts.map +1 -1
  176. package/dist/types/components/free-form/shared/SlideTransition.vue.d.ts +3 -2
  177. package/dist/types/components/free-form/shared/SlideTransition.vue.d.ts.map +1 -1
  178. package/dist/types/components/free-form/shared/StringArrayField.vue.d.ts +5 -4
  179. package/dist/types/components/free-form/shared/StringArrayField.vue.d.ts.map +1 -1
  180. package/dist/types/components/free-form/shared/StringField.vue.d.ts +6 -5
  181. package/dist/types/components/free-form/shared/StringField.vue.d.ts.map +1 -1
  182. package/dist/types/components/free-form/shared/VFGField.vue.d.ts +2 -1
  183. package/dist/types/components/free-form/shared/VFGField.vue.d.ts.map +1 -1
  184. package/dist/types/components/free-form/shared/composables.d.ts.map +1 -1
  185. package/dist/types/components/free-form/shared/layout/StandardLayout.vue.d.ts +11 -6
  186. package/dist/types/components/free-form/shared/layout/StandardLayout.vue.d.ts.map +1 -1
  187. package/dist/types/components/select/PluginCatalogCard.vue.d.ts +2 -1
  188. package/dist/types/components/select/PluginCatalogCard.vue.d.ts.map +1 -1
  189. package/dist/types/components/select/PluginCatalogGrid.vue.d.ts +4 -1
  190. package/dist/types/components/select/PluginCatalogGrid.vue.d.ts.map +1 -1
  191. package/dist/types/components/select/PluginCatalogGroup.vue.d.ts +2 -1
  192. package/dist/types/components/select/PluginCatalogGroup.vue.d.ts.map +1 -1
  193. package/dist/types/components/select/PluginCatalogListView.vue.d.ts +2 -1
  194. package/dist/types/components/select/PluginCatalogListView.vue.d.ts.map +1 -1
  195. package/dist/types/components/select/PluginSelectCard.vue.d.ts +3 -2
  196. package/dist/types/components/select/PluginSelectCard.vue.d.ts.map +1 -1
  197. package/dist/types/components/select/PluginSelectGrid.vue.d.ts +3 -2
  198. package/dist/types/components/select/PluginSelectGrid.vue.d.ts.map +1 -1
  199. package/dist/types/components/select/PluginSelectGroup.vue.d.ts +3 -2
  200. package/dist/types/components/select/PluginSelectGroup.vue.d.ts.map +1 -1
  201. package/package.json +8 -8
@@ -1,51 +1,51 @@
1
- (function(Ie,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@vueuse/core"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js"),require("@shikijs/core"),require("@shikijs/engine-javascript"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js","@shikijs/core","@shikijs/engine-javascript","zod","@kong-ui-public/entities-plugins-icon"],t):(Ie=typeof globalThis<"u"?globalThis:Ie||self,t(Ie["kong-ui-public-entities-plugins"]={},Ie.Vue,Ie["kong-ui-public-entities-shared"],Ie.marked,Ie.VueRouter,Ie["kong-ui-public-i18n"],Ie.entitiesPluginsMetadata,Ie.forms,Ie.entitiesVaults,null,Ie.core$1,Ie.KongIcons,Ie.Kongponents,Ie.entitiesRedisConfigurations,null,Ie.monaco,null,Ie.core$2,Ie.engineJavascript,Ie.zod,Ie.entitiesPluginsIcon))})(this,function(Ie,t,he,Pr,vn,Xe,Q,De,Ro,qL,He,Ee,Oe,Us,zL,Eg,HL,Ks,Ng,oe,An){"use strict";var jL=Object.defineProperty;var GL=(Ie,t,he)=>t in Ie?jL(Ie,t,{enumerable:!0,configurable:!0,writable:!0,value:he}):Ie[t]=he;var rt=(Ie,t,he)=>GL(Ie,typeof t!="symbol"?t+"":t,he);function xg(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return n.default=e,Object.freeze(n)}const Tr=xg(Eg),Je={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",configure:"Configure",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON",deck:"decK"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."},"ai-lakera-guard":{name:"AI Lakera Guard",description:"Audit and enforce safety policies on LLM requests and responses using the AI AWS Lakera plugin before they reach upstream LLMs."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",show_all:"Show all",view_more:"View more",view_less:"View less",filter:{title:"Filter Plugins",featured:"Featured",type:"Type"},list:{table_headers:{name:"Plugin",description:"Description"}},tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View advanced parameters",hide:"Hide advanced parameters"}},field_rules:{at_least_one_of:"At least one of the following values is required: {parameters}.",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These values must be used together: {parameters}.",mutually_exclusive:"Only one of these values can be used: {parameters}.",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{default_acl_item_label:"Default ACL #{index}",tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},datakit:{plugin_config:{title:"Flow editor"},description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Build flows visually with a drag-and-drop editor for Datakit. Visualize node connections, inputs, and outputs as you design.",description_example:"Start with a use case:",detected_config_format:"Detected {format} configuration. Do you want to convert it to Datakit configuration?",detected_config_format_title:"Convert configuration",detected_config_format_confirm:"Convert",examples:{authenticate:"Authenticate Kong to a third-party service",vault:"Authenticate to a third-party service using vault secrets",combine:"Combine multiple API responses",cache:"Conditionally fetch or store cache data",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow editor",name:"Datakit flow editor",cta:"Go to flow editor",disabled_tooltip:"The flow editor is unavailable. To switch, fix configuration errors or remove unsupported nodes.",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",canvas_panel:{request:"Request",response:"Response",node_count_plural:"{count} nodes",node_count_singular:"1 node"},panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The <code>jq</code> node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis Configuration",shared_configuration:{label:"Shared configuration",description:"Select an existing shared Redis configuration or create a new one. Changes to this configuration automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed."},dedicated_configuration:{label:"Dedicated configuration",description:"Create a Redis configuration that is used only by this plugin. Changes won’t affect other plugins."},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
1
+ (function(Ie,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@vueuse/core"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js"),require("@shikijs/core"),require("@shikijs/engine-javascript"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js","@shikijs/core","@shikijs/engine-javascript","zod","@kong-ui-public/entities-plugins-icon"],t):(Ie=typeof globalThis<"u"?globalThis:Ie||self,t(Ie["kong-ui-public-entities-plugins"]={},Ie.Vue,Ie["kong-ui-public-entities-shared"],Ie.marked,Ie.VueRouter,Ie["kong-ui-public-i18n"],Ie.entitiesPluginsMetadata,Ie.forms,Ie.entitiesVaults,null,Ie.core$1,Ie.KongIcons,Ie.Kongponents,Ie.entitiesRedisConfigurations,null,Ie.monaco,null,Ie.core$2,Ie.engineJavascript,Ie.zod,Ie.entitiesPluginsIcon))})(this,function(Ie,t,ge,Br,vn,Xe,X,De,Do,Z2,He,Ee,Oe,Ks,J2,vg,Q2,js,Ag,re,An){"use strict";var W2=Object.defineProperty;var X2=(Ie,t,ge)=>t in Ie?W2(Ie,t,{enumerable:!0,configurable:!0,writable:!0,value:ge}):Ie[t]=ge;var rt=(Ie,t,ge)=>X2(Ie,typeof t!="symbol"?t+"":t,ge);function Ig(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return n.default=e,Object.freeze(n)}const Vr=Ig(vg),Je={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",configure:"Configure",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON",deck:"decK"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins",search_plugins:"Search plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."},"ai-lakera-guard":{name:"AI Lakera Guard",description:"Audit and enforce safety policies on LLM requests and responses using the AI AWS Lakera plugin before they reach upstream LLMs."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",show_all:"Show all",view_more:"View more",view_less:"View less",filter:{title:"Filter Plugins",featured:"Featured",type:"Type"},list:{table_headers:{name:"Plugin",description:"Description"}},tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View advanced parameters",hide:"Hide advanced parameters"}},field_rules:{at_least_one_of:"At least one of the following values is required: {parameters}.",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These values must be used together: {parameters}.",mutually_exclusive:"Only one of these values can be used: {parameters}.",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{default_acl_item_label:"Default ACL #{index}",tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},datakit:{plugin_config:{title:"Flow editor"},description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Build flows visually with a drag-and-drop editor for Datakit. Visualize node connections, inputs, and outputs as you design.",description_example:"Start with a use case:",detected_config_format:"Detected {format} configuration. Do you want to convert it to Datakit configuration?",detected_config_format_title:"Convert configuration",detected_config_format_confirm:"Convert",examples:{authenticate:"Authenticate Kong to a third-party service",vault:"Authenticate to a third-party service using vault secrets",combine:"Combine multiple API responses",cache:"Conditionally fetch or store cache data",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow editor",name:"Datakit flow editor",cta:"Go to flow editor",disabled_tooltip:"The flow editor is unavailable. To switch, fix configuration errors or remove unsupported nodes.",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",canvas_panel:{request:"Request",response:"Response",node_count_plural:"{count} nodes",node_count_singular:"1 node"},panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The <code>jq</code> node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis Configuration",shared_configuration:{label:"Shared configuration",description:"Select an existing shared Redis configuration or create a new one. Changes to this configuration automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed."},dedicated_configuration:{label:"Dedicated configuration",description:"Create a Redis configuration that is used only by this plugin. Changes won’t affect other plugins."},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
2
2
  If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
3
- will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function $e(){const e=Xe.createI18n("en-us",Je);return{i18n:e,i18nT:Xe.i18nTComponent(e)}}function js(){const{capitalize:e}=he.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var g,_,y;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:he.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:he.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:he.ConfigurationSchemaType.Text,...u[p]};break;case"set":((g=m.elements)==null?void 0:g.type)==="string"&&(u[p]={type:he.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:he.ConfigurationSchemaType.BadgeMethod,...u[p]}:((_=m.elements)==null?void 0:_.type)==="string"?m.encrypted?u[p]={type:he.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:he.ConfigurationSchemaType.BadgeTag,...u[p]}:((y=m.elements)==null?void 0:y.type)==="record"&&(u[p]={type:he.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:he.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:he.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const g=m.split(".");g.reduce((_,y,h)=>_[y]||(_[y]=isNaN(g[h+1])?g.length-1===h?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",g=!1)=>{const _=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(y=>{y.match(_)&&delete u[y]}):g?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const g=u[m].$el;p=g.offsetHeight>p?g.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,g;if(u&&p){const _=(g=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:g.split(" ").length;return p>_}return!0}}}var Or=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Or||{});const $r=["Featured"],Do=[Q.PluginGroup.AUTHENTICATION,Q.PluginGroup.AI,Q.PluginGroup.SECURITY,Q.PluginGroup.TRAFFIC_CONTROL,Q.PluginGroup.SERVERLESS,Q.PluginGroup.ANALYTICS_AND_MONITORING,Q.PluginGroup.TRANSFORMATIONS,Q.PluginGroup.LOGGING,Q.PluginGroup.DEPLOYMENT,Q.PluginGroup.WEBSOCKET,Q.PluginGroup.CUSTOM_PLUGINS],da={[Q.PluginGroup.AUTHENTICATION]:!1,[Q.PluginGroup.AI]:!1,[Q.PluginGroup.SECURITY]:!1,[Q.PluginGroup.TRAFFIC_CONTROL]:!1,[Q.PluginGroup.SERVERLESS]:!1,[Q.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[Q.PluginGroup.TRANSFORMATIONS]:!1,[Q.PluginGroup.LOGGING]:!1,[Q.PluginGroup.DEPLOYMENT]:!1,[Q.PluginGroup.CUSTOM_PLUGINS]:!1};var In=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(In||{});const Pn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Tn={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},lo={getColumnFields:Pn,tags:Tn,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const n=e.inputAttributes||{};return delete e.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},Gs={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Tn}]},Sg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},qs={fields:[{username:{}},{password:{inputType:"password"}},{tags:Tn}]},vg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0}},{password:{type:"string",required:!0,encrypted:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},zs=t.defineComponent({name:"KeyAuthIdentityRealmsBase",__name:"Base",props:{modelValue:{default:[{scope:"cp",id:null,region:null}]},modelModifiers:{}},emits:["update:modelValue"],setup(e){const n=t.useModel(e,"modelValue"),{i18n:o}=Ve.useI18n(),{t:r}=o,i={value:"current-cp",label:r("custom_field.key_auth_identity_realms.cp_label"),group:r("custom_field.key_auth_identity_realms.cp_group_label")},a=t.inject(De.FORMS_CONFIG),{axiosInstance:l}=he.useAxios(a==null?void 0:a.axiosRequestConfig),s=()=>{if((a==null?void 0:a.app)==="konnect"){const m=/\b(us|eu|au|me|in)\b/.exec((a==null?void 0:a.apiBaseUrl)||"");if(m)return{region:m[1]}}return{}},c=t.ref(!0),d=t.ref([i]),f=async()=>{if((a==null?void 0:a.app)==="konnect")try{c.value=!0;let m=`${a==null?void 0:a.apiBaseUrl}/v1/realms`;const g=[];do{const _=await l.get(m);_&&_.data&&_.data.data&&g.push(..._.data.data.map(y=>({value:y.id,label:y.name,group:r("custom_field.key_auth_identity_realms.realm_group_label")}))),m=_.data.meta.next?`${a==null?void 0:a.apiBaseUrl}${_.data.meta.next}`:null}while(m);d.value=[i,...g]}catch(m){console.error("Failed to fetch Konnect realms",m)}finally{c.value=!1}},u=t.computed(()=>n.value.map(m=>m.id||"current-cp")),p=m=>{const g=m.includes("current-cp")?[{scope:"cp",id:null,region:null}]:[],_=n.value.filter(({scope:E})=>E!=="cp").map(({id:E})=>E),y=m.filter(E=>E!=="current-cp"),b=(_.length!==y.length||_.some(E=>!y.includes(E))?y.filter(E=>!_.includes(E)):y).map(E=>({...s(),scope:"realm",id:E}));n.value=[...g,...b]};return t.onMounted(()=>{f()}),(m,g)=>{const _=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(_,{items:d.value,loading:c.value,"model-value":u.value,"onUpdate:modelValue":p},null,8,["items","loading","model-value"])}}}),Ag={class:"field-wrapper"},Ig=t.defineComponent({__name:"VfgAdapter",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=De.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:s=>{i("modelUpdated",s.value,s.model)}});return n({clearValidationErrors:a}),(s,c)=>(t.openBlock(),t.createElementBlock("div",Ag,[t.createVNode(zs,{modelValue:t.unref(l),"onUpdate:modelValue":c[0]||(c[0]=d=>t.isRef(l)?l.value=d:null)},null,8,["modelValue"])]))}}),Ae=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},Pg=Ae(Ig,[["__scopeId","data-v-269e85ed"]]),Hs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
- client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Tn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Tg=e=>{var n;return(e==null?void 0:e.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"],shamefullyTransformPayload:({payload:o})=>{(e!=null&&e.credential&&typeof o.ttl!="number"||Number.isNaN(o.ttl))&&(o.ttl=0)}}:{"config-identity_realms":{component:((n=e==null?void 0:e.experimentalRenders)==null?void 0:n.keyAuthIdentityRealms)??!1?t.markRaw(Pg):null}}},Og={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Ys={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
3
+ will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function $e(){const e=Xe.createI18n("en-us",Je);return{i18n:e,i18nT:Xe.i18nTComponent(e)}}function Gs(){const{capitalize:e}=ge.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var g,_,h;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ge.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ge.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ge.ConfigurationSchemaType.Text,...u[p]};break;case"set":((g=m.elements)==null?void 0:g.type)==="string"&&(u[p]={type:ge.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ge.ConfigurationSchemaType.BadgeMethod,...u[p]}:((_=m.elements)==null?void 0:_.type)==="string"?m.encrypted?u[p]={type:ge.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ge.ConfigurationSchemaType.BadgeTag,...u[p]}:((h=m.elements)==null?void 0:h.type)==="record"&&(u[p]={type:ge.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ge.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ge.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const g=m.split(".");g.reduce((_,h,y)=>_[h]||(_[h]=isNaN(g[y+1])?g.length-1===y?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",g=!1)=>{const _=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(h=>{h.match(_)&&delete u[h]}):g?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const g=u[m].$el;p=g.offsetHeight>p?g.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,g;if(u&&p){const _=(g=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:g.split(" ").length;return p>_}return!0}}}var Rr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Rr||{});const Dr=["Featured"],Mo=[X.PluginGroup.AUTHENTICATION,X.PluginGroup.AI,X.PluginGroup.SECURITY,X.PluginGroup.TRAFFIC_CONTROL,X.PluginGroup.SERVERLESS,X.PluginGroup.ANALYTICS_AND_MONITORING,X.PluginGroup.TRANSFORMATIONS,X.PluginGroup.LOGGING,X.PluginGroup.DEPLOYMENT,X.PluginGroup.WEBSOCKET,X.PluginGroup.CUSTOM_PLUGINS],pa={[X.PluginGroup.AUTHENTICATION]:!1,[X.PluginGroup.AI]:!1,[X.PluginGroup.SECURITY]:!1,[X.PluginGroup.TRAFFIC_CONTROL]:!1,[X.PluginGroup.SERVERLESS]:!1,[X.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[X.PluginGroup.TRANSFORMATIONS]:!1,[X.PluginGroup.LOGGING]:!1,[X.PluginGroup.DEPLOYMENT]:!1,[X.PluginGroup.CUSTOM_PLUGINS]:!1};var In=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(In||{});const Pn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Tn={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},lo={getColumnFields:Pn,tags:Tn,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const n=e.inputAttributes||{};return delete e.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},qs={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Tn}]},Pg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},zs={fields:[{username:{}},{password:{inputType:"password"}},{tags:Tn}]},Tg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0}},{password:{type:"string",required:!0,encrypted:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Hs=t.defineComponent({name:"KeyAuthIdentityRealmsBase",__name:"Base",props:{modelValue:{default:[{scope:"cp",id:null,region:null}]},modelModifiers:{}},emits:["update:modelValue"],setup(e){const n=t.useModel(e,"modelValue"),{i18n:o}=Ve.useI18n(),{t:r}=o,i={value:"current-cp",label:r("custom_field.key_auth_identity_realms.cp_label"),group:r("custom_field.key_auth_identity_realms.cp_group_label")},a=t.inject(De.FORMS_CONFIG),{axiosInstance:l}=ge.useAxios(a==null?void 0:a.axiosRequestConfig),s=()=>{if((a==null?void 0:a.app)==="konnect"){const m=/\b(us|eu|au|me|in)\b/.exec((a==null?void 0:a.apiBaseUrl)||"");if(m)return{region:m[1]}}return{}},c=t.ref(!0),d=t.ref([i]),f=async()=>{if((a==null?void 0:a.app)==="konnect")try{c.value=!0;let m=`${a==null?void 0:a.apiBaseUrl}/v1/realms`;const g=[];do{const _=await l.get(m);_&&_.data&&_.data.data&&g.push(..._.data.data.map(h=>({value:h.id,label:h.name,group:r("custom_field.key_auth_identity_realms.realm_group_label")}))),m=_.data.meta.next?`${a==null?void 0:a.apiBaseUrl}${_.data.meta.next}`:null}while(m);d.value=[i,...g]}catch(m){console.error("Failed to fetch Konnect realms",m)}finally{c.value=!1}},u=t.computed(()=>n.value.map(m=>m.id||"current-cp")),p=m=>{const g=m.includes("current-cp")?[{scope:"cp",id:null,region:null}]:[],_=n.value.filter(({scope:E})=>E!=="cp").map(({id:E})=>E),h=m.filter(E=>E!=="current-cp"),b=(_.length!==h.length||_.some(E=>!h.includes(E))?h.filter(E=>!_.includes(E)):h).map(E=>({...s(),scope:"realm",id:E}));n.value=[...g,...b]};return t.onMounted(()=>{f()}),(m,g)=>{const _=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(_,{items:d.value,loading:c.value,"model-value":u.value,"onUpdate:modelValue":p},null,8,["items","loading","model-value"])}}}),Og={class:"field-wrapper"},$g=t.defineComponent({__name:"VfgAdapter",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=De.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:s=>{i("modelUpdated",s.value,s.model)}});return n({clearValidationErrors:a}),(s,c)=>(t.openBlock(),t.createElementBlock("div",Og,[t.createVNode(Hs,{modelValue:t.unref(l),"onUpdate:modelValue":c[0]||(c[0]=d=>t.isRef(l)?l.value=d:null)},null,8,["modelValue"])]))}}),Ae=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},Bg=Ae($g,[["__scopeId","data-v-269e85ed"]]),Ys={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
+ client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Tn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Vg=e=>{var n;return(e==null?void 0:e.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"],shamefullyTransformPayload:({payload:o})=>{(e!=null&&e.credential&&typeof o.ttl!="number"||Number.isNaN(o.ttl))&&(o.ttl=0)}}:{"config-identity_realms":{component:((n=e==null?void 0:e.experimentalRenders)==null?void 0:n.keyAuthIdentityRealms)??!1?t.markRaw(Bg):null}}},Rg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Ws={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
5
5
  if this parameter isn’t provided, Kong will generate a value for you and
6
- send it as part of the response body.`}},{tags:Tn}]},$g={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",encrypted:!0,hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Bg={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
6
+ send it as part of the response body.`}},{tags:Tn}]},Dg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",encrypted:!0,hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Mg={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
7
7
  be auto-generated.`}},{algorithm:{order:1,hint:"The algorithm used to verify the token’s signature."}},{rsa_public_key:{order:2,type:"textArea",label:"RSA public-key",hint:`If algorithm is RSA or ECDSA, the public key (in PEM format) to
8
8
  use to verify the token’s signature.`,rows:10,visible:e=>e&&e.algorithm&&/^((RS|PS|ES)(256|384|512)|EdDSA)$/.test(e.algorithm)}},{secret:{inputType:"text",hint:`If algorithm is HMAC, the secret used to sign JWTs for
9
- this credential. If left out, will be auto-generated.`}},{tags:Tn}]},Vg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ws={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
9
+ this credential. If left out, will be auto-generated.`}},{tags:Tn}]},Lg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Xs={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
10
10
  will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
11
11
  it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:lo.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
12
- authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:lo.tags}]},Rg={fields:[{id:{uuid:!0,auto:!0,type:"string",description:"A string representing a UUID (universally unique identifier)."}},{created_at:{description:"An integer representing an automatic Unix timestamp in seconds.",timestamp:!0,auto:!0,type:"integer"}},{consumer:{on_delete:"cascade",type:"foreign",reference:"consumers",required:!0}},{name:{required:!0,type:"string"}},{client_id:{required:!1,hint:"You can optionally set your own unique client_id. If missing, it will be generated for you.",unique:!0,auto:!0,type:"string"}},{client_secret:{required:!1,hint:"You can optionally set your own unique client_secret. If missing, it will be generated for you.",auto:!0,type:"string",encrypted:!0}},{hash_secret:{required:!0,type:"boolean",default:!1}},{redirect_uris:{required:!1,hint:"One or more URLs in your app where users will be sent after authorization (RFC 6742 Section 3.1.2)",type:"array",elements:{type:"string"}}},{tags:{elements:{required:!0,type:"string",description:"A string representing a tag."},type:"set",description:"A set of strings representing tags."}},{client_type:{required:!0,default:"confidential",type:"string",one_of:["confidential","public"]}}]},Xs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
13
- client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Tn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Dg=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(e!=null&&e.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},Mg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},vt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",freeformRenderRules:{dependencies:{"config.brute_force_protection.redis":["config.brute_force_protection.strategy","redis"]}},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},freeformRenderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.access_logs_endpoint","config.traces_endpoint","config.logs_endpoint"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",nameKey:"plugins.meta.tls-metadata-headers.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",nameKey:"plugins.meta.tls-handshake-modifier.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...Q.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...Q.PLUGIN_GROUP_AND_SCOPE_MAP["solace-log"]},"ai-llm-as-judge":{descriptionKey:"plugins.meta.ai-llm-as-judge.description",nameKey:"plugins.meta.ai-llm-as-judge.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-llm-as-judge"]},"ai-mcp-proxy":{descriptionKey:"plugins.meta.ai-mcp-proxy.description",nameKey:"plugins.meta.ai-mcp-proxy.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-proxy"]},"ai-gcp-model-armor":{descriptionKey:"plugins.meta.ai-gcp-model-armor.description",nameKey:"plugins.meta.ai-gcp-model-armor.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-gcp-model-armor"]},"ai-mcp-oauth2":{descriptionKey:"plugins.meta.ai-mcp-oauth2.description",nameKey:"plugins.meta.ai-mcp-oauth2.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-oauth2"]},"ai-semantic-response-guard":{descriptionKey:"plugins.meta.ai-semantic-response-guard.description",nameKey:"plugins.meta.ai-semantic-response-guard.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]},"ai-lakera-guard":{descriptionKey:"plugins.meta.ai-lakera-guard.description",nameKey:"plugins.meta.ai-lakera-guard.name",useLegacyForm:!0,...Q.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]}},so={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Gs,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Pn(Gs),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:qs,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Pn(qs)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Hs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Pn(Hs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Xs,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Pn(Xs)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ws,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Pn(Ws)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Ys,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Pn(Ys)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Bg,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Lg={acls:Sg,basicauth_credentials:vg,keyauth_credentials:Og,keyauth_enc_credentials:Mg,oauth2_credentials:Rg,hmacauth_credentials:$g,jwt_secrets:Vg},Fg=()=>{const{i18n:{t:e}}=$e(),n={},o={};for(const[i,a]of Object.entries(vt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(so))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:so,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Mo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Ug={"config-prompts-prepend":{...Mo,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Mo,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Kg={"config-templates":{...Mo,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},jg={shamefullyTransformPayload:({originalModel:e,model:n,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&n[l]?!0:e[l]===n[l]?!1:e[l]===null?n[l]!==""&&!Number.isNaN(n[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},Zs=e=>e.split(",").map(n=>n.trim()).filter(Boolean),Gg={shamefullyTransformPayload:({payload:e})=>{var n;(n=e==null?void 0:e.config)!=null&&n.collection_acl_config&&Object.values(e.config.collection_acl_config).forEach(o=>{typeof(o==null?void 0:o.allow)=="string"&&(o.allow=Zs(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=Zs(o.deny))})}},qg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},zg={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:lo.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Be={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},Br={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Hg={"config-metrics":{...Br,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},Yg={"config-functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},Wg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Xg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Zg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Jg={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Qg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Js=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:lo.fields.arrayItems({newElementButtonLabel:"Add"})}),Qg),Vr={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},eh={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},th=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:lo.fields.arrayItems({newElementButtonLabel:"Add"})}),eh),Qs={"config-add-json":{...Be,label:"Config.Add.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Be,label:"Config.Append.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Be,label:"Config.Remove.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Be,label:"Config.Rename.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Be,label:"Config.Replace.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},nh={...Qs,"config-allow-json":{...Be,label:"Config.Allow.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Be,label:"Config.Transform.Functions",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Be,label:"Config.Transform.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},oh={"config-rules":{...Mo,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},rh={"config-session_redis_cluster_nodes":{...Mo,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},ih={"config-flow-functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},ah={"config-message-functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},lh={"config-metrics":{...Br,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},sh={"config-metrics":{...Br,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},ch={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},dh={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var ec=typeof global=="object"&&global&&global.Object===Object&&global,uh=typeof self=="object"&&self&&self.Object===Object&&self,Ut=ec||uh||Function("return this")(),At=Ut.Symbol,tc=Object.prototype,fh=tc.hasOwnProperty,ph=tc.toString,Lo=At?At.toStringTag:void 0;function mh(e){var n=fh.call(e,Lo),o=e[Lo];try{e[Lo]=void 0;var r=!0}catch{}var i=ph.call(e);return r&&(n?e[Lo]=o:delete e[Lo]),i}var gh=Object.prototype,hh=gh.toString;function yh(e){return hh.call(e)}var _h="[object Null]",bh="[object Undefined]",nc=At?At.toStringTag:void 0;function On(e){return e==null?e===void 0?bh:_h:nc&&nc in Object(e)?mh(e):yh(e)}function Xt(e){return e!=null&&typeof e=="object"}var wh="[object Symbol]";function ua(e){return typeof e=="symbol"||Xt(e)&&On(e)==wh}function oc(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var Vt=Array.isArray,rc=At?At.prototype:void 0,ic=rc?rc.toString:void 0;function ac(e){if(typeof e=="string")return e;if(Vt(e))return oc(e,ac)+"";if(ua(e))return ic?ic.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function $n(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function kh(e){return e}var Ch="[object AsyncFunction]",Eh="[object Function]",Nh="[object GeneratorFunction]",xh="[object Proxy]";function Rr(e){if(!$n(e))return!1;var n=On(e);return n==Eh||n==Nh||n==Ch||n==xh}var fa=Ut["__core-js_shared__"],lc=function(){var e=/[^.]+$/.exec(fa&&fa.keys&&fa.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Sh(e){return!!lc&&lc in e}var vh=Function.prototype,Ah=vh.toString;function Bn(e){if(e!=null){try{return Ah.call(e)}catch{}try{return e+""}catch{}}return""}var Ih=/[\\^$.*+?()[\]{}|]/g,Ph=/^\[object .+?Constructor\]$/,Th=Function.prototype,Oh=Object.prototype,$h=Th.toString,Bh=Oh.hasOwnProperty,Vh=RegExp("^"+$h.call(Bh).replace(Ih,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Rh(e){if(!$n(e)||Sh(e))return!1;var n=Rr(e)?Vh:Ph;return n.test(Bn(e))}function Dh(e,n){return e==null?void 0:e[n]}function Vn(e,n){var o=Dh(e,n);return Rh(o)?o:void 0}var pa=Vn(Ut,"WeakMap"),sc=Object.create,Mh=function(){function e(){}return function(n){if(!$n(n))return{};if(sc)return sc(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Lh(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}function Fh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var Uh=800,Kh=16,jh=Date.now;function Gh(e){var n=0,o=0;return function(){var r=jh(),i=Kh-(r-o);if(o=r,i>0){if(++n>=Uh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function qh(e){return function(){return e}}var Dr=function(){try{var e=Vn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),zh=Dr?function(e,n){return Dr(e,"toString",{configurable:!0,enumerable:!1,value:qh(n),writable:!0})}:kh,Hh=Gh(zh);function Yh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var Wh=9007199254740991,Xh=/^(?:0|[1-9]\d*)$/;function ma(e,n){var o=typeof e;return n=n??Wh,!!n&&(o=="number"||o!="symbol"&&Xh.test(e))&&e>-1&&e%1==0&&e<n}function cc(e,n,o){n=="__proto__"&&Dr?Dr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function ga(e,n){return e===n||e!==e&&n!==n}var Zh=Object.prototype,Jh=Zh.hasOwnProperty;function ha(e,n,o){var r=e[n];(!(Jh.call(e,n)&&ga(r,o))||o===void 0&&!(n in e))&&cc(e,n,o)}function Fo(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?cc(o,s,c):ha(o,s,c)}return o}var dc=Math.max;function Qh(e,n,o){return n=dc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=dc(r.length-n,0),l=Array(a);++i<a;)l[i]=r[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=r[i];return s[n]=o(l),Lh(e,this,s)}}var ey=9007199254740991;function ya(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=ey}function _a(e){return e!=null&&ya(e.length)&&!Rr(e)}var ty=Object.prototype;function Mr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||ty;return e===o}function ny(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var oy="[object Arguments]";function uc(e){return Xt(e)&&On(e)==oy}var fc=Object.prototype,ry=fc.hasOwnProperty,iy=fc.propertyIsEnumerable,Lr=uc(function(){return arguments}())?uc:function(e){return Xt(e)&&ry.call(e,"callee")&&!iy.call(e,"callee")};function ay(){return!1}var pc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,mc=pc&&typeof module=="object"&&module&&!module.nodeType&&module,ly=mc&&mc.exports===pc,gc=ly?Ut.Buffer:void 0,sy=gc?gc.isBuffer:void 0,Uo=sy||ay,cy="[object Arguments]",dy="[object Array]",uy="[object Boolean]",fy="[object Date]",py="[object Error]",my="[object Function]",gy="[object Map]",hy="[object Number]",yy="[object Object]",_y="[object RegExp]",by="[object Set]",wy="[object String]",ky="[object WeakMap]",Cy="[object ArrayBuffer]",Ey="[object DataView]",Ny="[object Float32Array]",xy="[object Float64Array]",Sy="[object Int8Array]",vy="[object Int16Array]",Ay="[object Int32Array]",Iy="[object Uint8Array]",Py="[object Uint8ClampedArray]",Ty="[object Uint16Array]",Oy="[object Uint32Array]",Ue={};Ue[Ny]=Ue[xy]=Ue[Sy]=Ue[vy]=Ue[Ay]=Ue[Iy]=Ue[Py]=Ue[Ty]=Ue[Oy]=!0,Ue[cy]=Ue[dy]=Ue[Cy]=Ue[uy]=Ue[Ey]=Ue[fy]=Ue[py]=Ue[my]=Ue[gy]=Ue[hy]=Ue[yy]=Ue[_y]=Ue[by]=Ue[wy]=Ue[ky]=!1;function $y(e){return Xt(e)&&ya(e.length)&&!!Ue[On(e)]}function ba(e){return function(n){return e(n)}}var hc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,Ko=hc&&typeof module=="object"&&module&&!module.nodeType&&module,By=Ko&&Ko.exports===hc,wa=By&&ec.process,co=function(){try{var e=Ko&&Ko.require&&Ko.require("util").types;return e||wa&&wa.binding&&wa.binding("util")}catch{}}(),yc=co&&co.isTypedArray,ka=yc?ba(yc):$y,Vy=Object.prototype,Ry=Vy.hasOwnProperty;function _c(e,n){var o=Vt(e),r=!o&&Lr(e),i=!o&&!r&&Uo(e),a=!o&&!r&&!i&&ka(e),l=o||r||i||a,s=l?ny(e.length,String):[],c=s.length;for(var d in e)(n||Ry.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||ma(d,c)))&&s.push(d);return s}function bc(e,n){return function(o){return e(n(o))}}var Dy=bc(Object.keys,Object),My=Object.prototype,Ly=My.hasOwnProperty;function wc(e){if(!Mr(e))return Dy(e);var n=[];for(var o in Object(e))Ly.call(e,o)&&o!="constructor"&&n.push(o);return n}function Ca(e){return _a(e)?_c(e):wc(e)}function Fy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Uy=Object.prototype,Ky=Uy.hasOwnProperty;function jy(e){if(!$n(e))return Fy(e);var n=Mr(e),o=[];for(var r in e)r=="constructor"&&(n||!Ky.call(e,r))||o.push(r);return o}function Ea(e){return _a(e)?_c(e,!0):jy(e)}var Gy=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qy=/^\w*$/;function zy(e,n){if(Vt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||ua(e)?!0:qy.test(e)||!Gy.test(e)||n!=null&&e in Object(n)}var jo=Vn(Object,"create");function Hy(){this.__data__=jo?jo(null):{},this.size=0}function Yy(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var Wy="__lodash_hash_undefined__",Xy=Object.prototype,Zy=Xy.hasOwnProperty;function Jy(e){var n=this.__data__;if(jo){var o=n[e];return o===Wy?void 0:o}return Zy.call(n,e)?n[e]:void 0}var Qy=Object.prototype,e_=Qy.hasOwnProperty;function t_(e){var n=this.__data__;return jo?n[e]!==void 0:e_.call(n,e)}var n_="__lodash_hash_undefined__";function o_(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=jo&&n===void 0?n_:n,this}function Rn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Rn.prototype.clear=Hy,Rn.prototype.delete=Yy,Rn.prototype.get=Jy,Rn.prototype.has=t_,Rn.prototype.set=o_;function r_(){this.__data__=[],this.size=0}function Fr(e,n){for(var o=e.length;o--;)if(ga(e[o][0],n))return o;return-1}var i_=Array.prototype,a_=i_.splice;function l_(e){var n=this.__data__,o=Fr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():a_.call(n,o,1),--this.size,!0}function s_(e){var n=this.__data__,o=Fr(n,e);return o<0?void 0:n[o][1]}function c_(e){return Fr(this.__data__,e)>-1}function d_(e,n){var o=this.__data__,r=Fr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Zt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Zt.prototype.clear=r_,Zt.prototype.delete=l_,Zt.prototype.get=s_,Zt.prototype.has=c_,Zt.prototype.set=d_;var Go=Vn(Ut,"Map");function u_(){this.size=0,this.__data__={hash:new Rn,map:new(Go||Zt),string:new Rn}}function f_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Ur(e,n){var o=e.__data__;return f_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function p_(e){var n=Ur(this,e).delete(e);return this.size-=n?1:0,n}function m_(e){return Ur(this,e).get(e)}function g_(e){return Ur(this,e).has(e)}function h_(e,n){var o=Ur(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Jt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Jt.prototype.clear=u_,Jt.prototype.delete=p_,Jt.prototype.get=m_,Jt.prototype.has=g_,Jt.prototype.set=h_;var y_="Expected a function";function Na(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(y_);var o=function(){var r=arguments,i=n?n.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var l=e.apply(this,r);return o.cache=a.set(i,l)||a,l};return o.cache=new(Na.Cache||Jt),o}Na.Cache=Jt;var __=500;function b_(e){var n=Na(e,function(r){return o.size===__&&o.clear(),r}),o=n.cache;return n}var w_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,k_=/\\(\\)?/g,C_=b_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(w_,function(o,r,i,a){n.push(i?a.replace(k_,"$1"):r||o)}),n});function xa(e){return e==null?"":ac(e)}function uo(e,n){return Vt(e)?e:zy(e,n)?[e]:C_(xa(e))}function Kr(e){if(typeof e=="string"||ua(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Sa(e,n){n=uo(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Kr(n[o++])];return o&&o==r?e:void 0}function va(e,n,o){var r=e==null?void 0:Sa(e,n);return r===void 0?o:r}function Aa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var kc=At?At.isConcatSpreadable:void 0;function E_(e){return Vt(e)||Lr(e)||!!(kc&&e&&e[kc])}function N_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=E_),i||(i=[]);++a<l;){var s=e[a];o(s)?Aa(i,s):i[i.length]=s}return i}function x_(e){var n=e==null?0:e.length;return n?N_(e):[]}function Cc(e){return Hh(Qh(e,void 0,x_),e+"")}var Ia=bc(Object.getPrototypeOf,Object),S_="[object Object]",v_=Function.prototype,A_=Object.prototype,Ec=v_.toString,I_=A_.hasOwnProperty,P_=Ec.call(Object);function T_(e){if(!Xt(e)||On(e)!=S_)return!1;var n=Ia(e);if(n===null)return!0;var o=I_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&Ec.call(o)==P_}function Nc(e,n,o){var r=-1,i=e.length;n<0&&(n=-n>i?0:i+n),o=o>i?i:o,o<0&&(o+=i),i=n>o?0:o-n>>>0,n>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+n];return a}function O_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:Nc(e,n,o)}var $_="\\ud800-\\udfff",B_="\\u0300-\\u036f",V_="\\ufe20-\\ufe2f",R_="\\u20d0-\\u20ff",D_=B_+V_+R_,M_="\\ufe0e\\ufe0f",L_="\\u200d",F_=RegExp("["+L_+$_+D_+M_+"]");function xc(e){return F_.test(e)}function U_(e){return e.split("")}var Sc="\\ud800-\\udfff",K_="\\u0300-\\u036f",j_="\\ufe20-\\ufe2f",G_="\\u20d0-\\u20ff",q_=K_+j_+G_,z_="\\ufe0e\\ufe0f",H_="["+Sc+"]",Pa="["+q_+"]",Ta="\\ud83c[\\udffb-\\udfff]",Y_="(?:"+Pa+"|"+Ta+")",vc="[^"+Sc+"]",Ac="(?:\\ud83c[\\udde6-\\uddff]){2}",Ic="[\\ud800-\\udbff][\\udc00-\\udfff]",W_="\\u200d",Pc=Y_+"?",Tc="["+z_+"]?",X_="(?:"+W_+"(?:"+[vc,Ac,Ic].join("|")+")"+Tc+Pc+")*",Z_=Tc+Pc+X_,J_="(?:"+[vc+Pa+"?",Pa,Ac,Ic,H_].join("|")+")",Q_=RegExp(Ta+"(?="+Ta+")|"+J_+Z_,"g");function eb(e){return e.match(Q_)||[]}function tb(e){return xc(e)?eb(e):U_(e)}function nb(e){return function(n){n=xa(n);var o=xc(n)?tb(n):void 0,r=o?o[0]:n.charAt(0),i=o?O_(o,1).join(""):n.slice(1);return r[e]()+i}}var ob=nb("toUpperCase");function rb(){this.__data__=new Zt,this.size=0}function ib(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function ab(e){return this.__data__.get(e)}function lb(e){return this.__data__.has(e)}var sb=200;function cb(e,n){var o=this.__data__;if(o instanceof Zt){var r=o.__data__;if(!Go||r.length<sb-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Jt(r)}return o.set(e,n),this.size=o.size,this}function Qt(e){var n=this.__data__=new Zt(e);this.size=n.size}Qt.prototype.clear=rb,Qt.prototype.delete=ib,Qt.prototype.get=ab,Qt.prototype.has=lb,Qt.prototype.set=cb;function db(e,n){return e&&Fo(n,Ca(n),e)}function ub(e,n){return e&&Fo(n,Ea(n),e)}var Oc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,$c=Oc&&typeof module=="object"&&module&&!module.nodeType&&module,fb=$c&&$c.exports===Oc,Bc=fb?Ut.Buffer:void 0,Vc=Bc?Bc.allocUnsafe:void 0;function pb(e,n){if(n)return e.slice();var o=e.length,r=Vc?Vc(o):new e.constructor(o);return e.copy(r),r}function mb(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];n(l,o,e)&&(a[i++]=l)}return a}function Rc(){return[]}var gb=Object.prototype,hb=gb.propertyIsEnumerable,Dc=Object.getOwnPropertySymbols,Oa=Dc?function(e){return e==null?[]:(e=Object(e),mb(Dc(e),function(n){return hb.call(e,n)}))}:Rc;function yb(e,n){return Fo(e,Oa(e),n)}var _b=Object.getOwnPropertySymbols,Mc=_b?function(e){for(var n=[];e;)Aa(n,Oa(e)),e=Ia(e);return n}:Rc;function bb(e,n){return Fo(e,Mc(e),n)}function Lc(e,n,o){var r=n(e);return Vt(e)?r:Aa(r,o(e))}function $a(e){return Lc(e,Ca,Oa)}function Fc(e){return Lc(e,Ea,Mc)}var Ba=Vn(Ut,"DataView"),Va=Vn(Ut,"Promise"),Ra=Vn(Ut,"Set"),Uc="[object Map]",wb="[object Object]",Kc="[object Promise]",jc="[object Set]",Gc="[object WeakMap]",qc="[object DataView]",kb=Bn(Ba),Cb=Bn(Go),Eb=Bn(Va),Nb=Bn(Ra),xb=Bn(pa),It=On;(Ba&&It(new Ba(new ArrayBuffer(1)))!=qc||Go&&It(new Go)!=Uc||Va&&It(Va.resolve())!=Kc||Ra&&It(new Ra)!=jc||pa&&It(new pa)!=Gc)&&(It=function(e){var n=On(e),o=n==wb?e.constructor:void 0,r=o?Bn(o):"";if(r)switch(r){case kb:return qc;case Cb:return Uc;case Eb:return Kc;case Nb:return jc;case xb:return Gc}return n});var Sb=Object.prototype,vb=Sb.hasOwnProperty;function Ab(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&vb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var jr=Ut.Uint8Array;function Da(e){var n=new e.constructor(e.byteLength);return new jr(n).set(new jr(e)),n}function Ib(e,n){var o=n?Da(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Pb=/\w*$/;function Tb(e){var n=new e.constructor(e.source,Pb.exec(e));return n.lastIndex=e.lastIndex,n}var zc=At?At.prototype:void 0,Hc=zc?zc.valueOf:void 0;function Ob(e){return Hc?Object(Hc.call(e)):{}}function $b(e,n){var o=n?Da(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Bb="[object Boolean]",Vb="[object Date]",Rb="[object Map]",Db="[object Number]",Mb="[object RegExp]",Lb="[object Set]",Fb="[object String]",Ub="[object Symbol]",Kb="[object ArrayBuffer]",jb="[object DataView]",Gb="[object Float32Array]",qb="[object Float64Array]",zb="[object Int8Array]",Hb="[object Int16Array]",Yb="[object Int32Array]",Wb="[object Uint8Array]",Xb="[object Uint8ClampedArray]",Zb="[object Uint16Array]",Jb="[object Uint32Array]";function Qb(e,n,o){var r=e.constructor;switch(n){case Kb:return Da(e);case Bb:case Vb:return new r(+e);case jb:return Ib(e,o);case Gb:case qb:case zb:case Hb:case Yb:case Wb:case Xb:case Zb:case Jb:return $b(e,o);case Rb:return new r;case Db:case Fb:return new r(e);case Mb:return Tb(e);case Lb:return new r;case Ub:return Ob(e)}}function ew(e){return typeof e.constructor=="function"&&!Mr(e)?Mh(Ia(e)):{}}var tw="[object Map]";function nw(e){return Xt(e)&&It(e)==tw}var Yc=co&&co.isMap,ow=Yc?ba(Yc):nw,rw="[object Set]";function iw(e){return Xt(e)&&It(e)==rw}var Wc=co&&co.isSet,aw=Wc?ba(Wc):iw,lw=1,sw=2,cw=4,Xc="[object Arguments]",dw="[object Array]",uw="[object Boolean]",fw="[object Date]",pw="[object Error]",Zc="[object Function]",mw="[object GeneratorFunction]",gw="[object Map]",hw="[object Number]",Jc="[object Object]",yw="[object RegExp]",_w="[object Set]",bw="[object String]",ww="[object Symbol]",kw="[object WeakMap]",Cw="[object ArrayBuffer]",Ew="[object DataView]",Nw="[object Float32Array]",xw="[object Float64Array]",Sw="[object Int8Array]",vw="[object Int16Array]",Aw="[object Int32Array]",Iw="[object Uint8Array]",Pw="[object Uint8ClampedArray]",Tw="[object Uint16Array]",Ow="[object Uint32Array]",Le={};Le[Xc]=Le[dw]=Le[Cw]=Le[Ew]=Le[uw]=Le[fw]=Le[Nw]=Le[xw]=Le[Sw]=Le[vw]=Le[Aw]=Le[gw]=Le[hw]=Le[Jc]=Le[yw]=Le[_w]=Le[bw]=Le[ww]=Le[Iw]=Le[Pw]=Le[Tw]=Le[Ow]=!0,Le[pw]=Le[Zc]=Le[kw]=!1;function qo(e,n,o,r,i,a){var l,s=n&lw,c=n&sw,d=n&cw;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!$n(e))return e;var f=Vt(e);if(f){if(l=Ab(e),!s)return Fh(e,l)}else{var u=It(e),p=u==Zc||u==mw;if(Uo(e))return pb(e,s);if(u==Jc||u==Xc||p&&!i){if(l=c||p?{}:ew(e),!s)return c?bb(e,ub(l,e)):yb(e,db(l,e))}else{if(!Le[u])return i?e:{};l=Qb(e,u,s)}}a||(a=new Qt);var m=a.get(e);if(m)return m;a.set(e,l),aw(e)?e.forEach(function(y){l.add(qo(y,n,o,y,e,a))}):ow(e)&&e.forEach(function(y,h){l.set(h,qo(y,n,o,h,e,a))});var g=d?c?Fc:$a:c?Ea:Ca,_=f?void 0:g(e);return Yh(_||e,function(y,h){_&&(h=y,y=e[h]),ha(l,h,qo(y,n,o,h,e,a))}),l}var $w=1,Bw=4;function Dn(e){return qo(e,$w|Bw)}var Vw="__lodash_hash_undefined__";function Rw(e){return this.__data__.set(e,Vw),this}function Dw(e){return this.__data__.has(e)}function Gr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Jt;++n<o;)this.add(e[n])}Gr.prototype.add=Gr.prototype.push=Rw,Gr.prototype.has=Dw;function Mw(e,n){for(var o=-1,r=e==null?0:e.length;++o<r;)if(n(e[o],o,e))return!0;return!1}function Lw(e,n){return e.has(n)}var Fw=1,Uw=2;function Qc(e,n,o,r,i,a){var l=o&Fw,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&Uw?new Gr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var g=e[u],_=n[u];if(r)var y=l?r(_,g,u,n,e,a):r(g,_,u,e,n,a);if(y!==void 0){if(y)continue;p=!1;break}if(m){if(!Mw(n,function(h,k){if(!Lw(m,k)&&(g===h||i(g,h,o,r,a)))return m.push(k)})){p=!1;break}}else if(!(g===_||i(g,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Kw(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function jw(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var Gw=1,qw=2,zw="[object Boolean]",Hw="[object Date]",Yw="[object Error]",Ww="[object Map]",Xw="[object Number]",Zw="[object RegExp]",Jw="[object Set]",Qw="[object String]",e0="[object Symbol]",t0="[object ArrayBuffer]",n0="[object DataView]",ed=At?At.prototype:void 0,Ma=ed?ed.valueOf:void 0;function o0(e,n,o,r,i,a,l){switch(o){case n0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case t0:return!(e.byteLength!=n.byteLength||!a(new jr(e),new jr(n)));case zw:case Hw:case Xw:return ga(+e,+n);case Yw:return e.name==n.name&&e.message==n.message;case Zw:case Qw:return e==n+"";case Ww:var s=Kw;case Jw:var c=r&Gw;if(s||(s=jw),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=qw,l.set(e,n);var f=Qc(s(e),s(n),r,i,a,l);return l.delete(e),f;case e0:if(Ma)return Ma.call(e)==Ma.call(n)}return!1}var r0=1,i0=Object.prototype,a0=i0.hasOwnProperty;function l0(e,n,o,r,i,a){var l=o&r0,s=$a(e),c=s.length,d=$a(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:a0.call(n,p)))return!1}var m=a.get(e),g=a.get(n);if(m&&g)return m==n&&g==e;var _=!0;a.set(e,n),a.set(n,e);for(var y=l;++u<c;){p=s[u];var h=e[p],k=n[p];if(r)var b=l?r(k,h,p,n,e,a):r(h,k,p,e,n,a);if(!(b===void 0?h===k||i(h,k,o,r,a):b)){_=!1;break}y||(y=p=="constructor")}if(_&&!y){var E=e.constructor,N=n.constructor;E!=N&&"constructor"in e&&"constructor"in n&&!(typeof E=="function"&&E instanceof E&&typeof N=="function"&&N instanceof N)&&(_=!1)}return a.delete(e),a.delete(n),_}var s0=1,td="[object Arguments]",nd="[object Array]",qr="[object Object]",c0=Object.prototype,od=c0.hasOwnProperty;function d0(e,n,o,r,i,a){var l=Vt(e),s=Vt(n),c=l?nd:It(e),d=s?nd:It(n);c=c==td?qr:c,d=d==td?qr:d;var f=c==qr,u=d==qr,p=c==d;if(p&&Uo(e)){if(!Uo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Qt),l||ka(e)?Qc(e,n,o,r,i,a):o0(e,n,c,o,r,i,a);if(!(o&s0)){var m=f&&od.call(e,"__wrapped__"),g=u&&od.call(n,"__wrapped__");if(m||g){var _=m?e.value():e,y=g?n.value():n;return a||(a=new Qt),i(_,y,o,r,a)}}return p?(a||(a=new Qt),l0(e,n,o,r,i,a)):!1}function rd(e,n,o,r,i){return e===n?!0:e==null||n==null||!Xt(e)&&!Xt(n)?e!==e&&n!==n:d0(e,n,o,r,rd,i)}function u0(e,n){return e!=null&&n in Object(e)}function id(e,n,o){n=uo(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Kr(n[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&ya(i)&&ma(l,i)&&(Vt(e)||Lr(e)))}function f0(e,n){return e!=null&&id(e,n,u0)}function p0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}var m0=Object.prototype,g0=m0.hasOwnProperty;function h0(e,n){return e!=null&&g0.call(e,n)}function ad(e,n){return e!=null&&id(e,n,h0)}function y0(e,n){return n.length<2?e:Sa(e,Nc(n,0,-1))}var _0="[object Map]",b0="[object Set]",w0=Object.prototype,k0=w0.hasOwnProperty;function ld(e){if(e==null)return!0;if(_a(e)&&(Vt(e)||typeof e=="string"||typeof e.splice=="function"||Uo(e)||ka(e)||Lr(e)))return!e.length;var n=It(e);if(n==_0||n==b0)return!e.size;if(Mr(e))return!wc(e).length;for(var o in e)if(k0.call(e,o))return!1;return!0}function Mn(e,n){return rd(e,n)}function sd(e,n){return n=uo(n,e),e=y0(e,n),e==null||delete e[Kr(p0(n))]}function C0(e){return T_(e)?void 0:e}var E0=1,N0=2,x0=4,en=Cc(function(e,n){var o={};if(e==null)return o;var r=!1;n=oc(n,function(a){return a=uo(a,e),r||(r=a.length>1),a}),Fo(e,Fc(e),o),r&&(o=qo(o,E0|N0|x0,C0));for(var i=n.length;i--;)sd(o,n[i]);return o});function cd(e,n,o,r){if(!$n(e))return e;n=uo(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Kr(n[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];d=void 0,d===void 0&&(d=$n(f)?f:ma(n[i+1])?[]:{})}ha(s,c,d),s=s[c]}return e}function S0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Sa(e,l);o(s,l)&&cd(a,uo(l,e),s)}return a}function v0(e,n){return S0(e,n,function(o,r){return f0(e,r)})}var La=Cc(function(e,n){return e==null?{}:v0(e,n)});function dd(e,n,o){return e==null?e:cd(e,n,o)}var A0=0;function zr(e){var n=++A0;return xa(e)+n}function ud(e,n){return e==null?!0:sd(e,n)}const I0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Ln=e=>{var n,o,r,i,a,l;((o=(n=e.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client,delete e.confluent.authentication.basic),((i=(r=e.confluent)==null?void 0:r.authentication)==null?void 0:i.mode)==="basic"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client),((l=(a=e.confluent)==null?void 0:a.authentication)==null?void 0:l.mode)==="oauth2"&&delete e.confluent.authentication.basic,I0.some(s=>Mn(e.confluent,s))&&(e.confluent=null)};function P0(e,n){const o=e.split(""),r=n.split(""),i=o.length,a=r.length,l=Array.from({length:i+1},()=>Array(a+1).fill(0));for(let f=1;f<=i;f++)for(let u=1;u<=a;u++)o[f-1]===r[u-1]?l[f][u]=l[f-1][u-1]+1:l[f][u]=Math.max(l[f-1][u],l[f][u-1]);let s="",c=i,d=a;for(;c>0&&d>0;)o[c-1]===r[d-1]?(s=o[c-1]+s,c--,d--):l[c-1][d]>l[c][d-1]?c--:d--;return s}const T0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Ln((n=e.config)==null?void 0:n.schema_registry)}},O0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Ln((n=e.config)==null?void 0:n.schema_registry)}},$0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Ln((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Ln(i==null?void 0:i.schema_registry)})}},B0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Ln((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Ln(i==null?void 0:i.schema_registry)})}},V0={shamefullyTransformPayload:({payload:e})=>{var n;Ln((n=e.config)==null?void 0:n.schema_registry)}},R0={"config-static_tags":{...Br,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},D0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Fa(e,n){const o=D0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Ua=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),pn={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},fd=Symbol("TOASTER_PROVIDER");function pd(){return t.inject(Ua,[])}function M0(e){t.provide(Ua,e)}const L0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},md=(e,n)=>(e.order??0)-(n.order??0),gd=(e,n)=>L0(e,n)||md(e,n)||e.model.localeCompare(n.model),Ve={useI18n:$e,usePluginMetaData:Fg,usePluginHelpers:js,useSchemas:e=>{const{capitalize:n}=he.useStringHelpers(),{convertToDotNotation:o}=js(),{i18n:{t:r}}=$e(),i=pd(),a={"application-registration":{overwriteDefault:!0,formSchema:{...zg}},datadog:{...Hg},"exit-transformer":{...Yg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...lh},"statsd-advanced":{...sh},"route-by-header":{...oh},"ai-prompt-decorator":{...Ug},"ai-prompt-template":{...Kg},"ai-proxy-advanced":{...jg},"ai-rag-injector":{...Gg},"ai-llm-as-judge":{...qg},"vault-auth":{...dh},"oas-validation":{...Jg},mocking:{...Zg},"rate-limiting":{...Vr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Vr["config-consumer_groups"]}:{...Vr},"graphql-rate-limiting-advanced":{...Wg},"injection-protection":{...Xg},"response-ratelimiting":{...Vr},"pre-function":{...Js},"post-function":{...Js},"request-transformer-advanced":{...th},"response-transformer":{...Qs},"response-transformer-advanced":{...nh},zipkin:{...R0},"upstream-oauth":{...ch},saml:{...rh},"kafka-upstream":{...T0},"solace-consume":{...ih},"solace-upstream":{...ah},"key-auth":Tg(e),"key-auth-enc":Dg(e),confluent:{...O0},"confluent-consume":{...$0},"kafka-consume":{...B0},"kafka-log":{...V0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,x,I,A)=>{let B={};(x||C)&&(B=x||(C.fields?C.fields:C));const v=l().concat(C.blacklist?C.blacklist:[]),w=Object.keys(B).filter(U=>!v.includes(U)),M=w.indexOf("comparator");M>-1&&w.splice(M,1);let S={fields:[]};const F={};w.forEach(U=>{d(B[U],U,B,F,S,I)});const O=F.name,j=vt[O],X=[],L=U=>{const P=["cluster-cache"];for(const V of P)if(U.model.includes(V))return!1;return new RegExp("(?<=-redis-).*").test(U.model)};if(S._supported_redis_partial_type=C._supported_redis_partial_type,S._redis_partial_path=C._redis_partial_path,De.getSharedFormName(O)||Fa(O,i)||j!=null&&j.useLegacyForm||e!=null&&e.credential||A==="freeform"){if(j!=null&&j.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const U of S.fields)if(L(U)){X.push(U);continue}S.fields=S.fields.filter(U=>!L(U)),X.length&&S.fields.push({id:"_redis",fields:X,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}S.fields.sort((U,P)=>(U.order=U.order||0,P.order=P.order||0,U.order-P.order))}else{const U=[],P=[],V=[],G=[],Z={};if(j!=null&&j.fieldRules){const se=[...j.fieldRules.atLeastOneOf??[],...j.fieldRules.onlyOneOf??[],...j.fieldRules.mutuallyRequired??[]];if(j.fieldRules.onlyOneOfMutuallyRequired)for(const me of j.fieldRules.onlyOneOfMutuallyRequired)se.push(...me);for(const me of se)for(const ge of me)Z[ge.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const se of S.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&L(se)){G.push(se);continue}if(se.pinned){U.push(se);continue}if(se.required||Z[se.model]!==void 0){Z[se.model]===!1&&(Z[se.model]=!0),P.push(se);continue}V.push(se)}G.length&&V.push({id:"_redis",fields:G,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const K=Object.entries(Z).filter(([,se])=>!se).map(([se])=>se.replace(/-/g,".").replace(/_/g,"-"));K.length>0&&console.warn(`Unknown checked fields for plugin ${O}: ${K.join(", ")}`);const q=[];U.length>0&&q.push({fields:U.sort(md)}),(P.length>0||V.length>0)&&q.push({fields:P.sort(gd),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:V.sort(gd),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),S={groups:q}}return{schema:S,model:F,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,x,I,A,B,v)=>{const w=c(C);return A[x]=w?C.default:null,C.id=x,C.model=x,C.fields&&C.type==="record"?u(C,x,I,A,B,v):(I[x]=C,E(C,A),v&&v[x]&&f(I[x],v[x]),B.fields.push(C)),I},f=(C,x)=>(x&&(Object.assign(C,x),x.label&&(C.label=x.label)),C),u=(C,x,I,A,B,v)=>{C.fields.forEach(w=>{Object.keys(w).forEach(M=>{const S=w[M];I=d(S,x+"-"+M,I,A,B,v)})})},p=(C,x)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const I=e==null?void 0:e.entityId;x[C.model]=I?{id:I}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},g=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},_=C=>{C.type="checkbox",C.default=!0,C.required=!1},y=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:x}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Be,model:C.model,valueArrayType:x==="integer"?"number":x||"string",inputAttributes:{...Be.inputAttributes,type:x==="integer"?"number":"text",inputMode:x==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(x=>{const I=Object.keys(x)[0];return{model:I,type:"input",label:n(I),placeholder:I,inputType:x[I].type}})}}]})},h=C=>C.fields.reduce((x,I)=>(I.fields&&I.fields.forEach(A=>{x[A.model]=A}),I.model&&(x[I.model]=I),x),{}),k=(C,x)=>{if(!De.customFields.includes(C.model))return;const I=h(C);De.customFields.forEach(A=>{Object.keys(I).forEach(B=>{const v=c(I[B]);x[B]=v?I[B].default:null}),delete x[A]})},b=(C,x)=>C.inputType==="hidden"?"":o(n(C.label||x.replace(/_/g," "))),E=(C,x)=>{switch(k(C,x),C.type){case"foreign":p(C,x);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":g(C);break;case"boolean":_(C);break;case"map":y(C);break}C.inputType==="foreign"&&p(C,x),C.label=b(C,C.model)};function N(C,x){if(x==null||x.type&&x.type!=="record"||typeof C!="object"||C==null)return C;const I={};for(const A of x.fields){const B=Object.keys(A)[0],v=A[B];v.type==="record"?I[B]=N(C[B],v):v.type==="array"&&Array.isArray(C[B])&&v.elements.type==="record"?I[B]=C[B].map(w=>N(w,v.elements)):I[B]=C[B]}return I}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:lo,pruneRecord:N}},useExperimentalFreeForms:pd,useProvideExperimentalFreeForms:M0},ct="/v2/control-planes/{controlPlaneId}/core-entities",yt="/{workspace}",Ke={list:{konnect:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},kongManager:{all:`${yt}/plugins`,forEntity:`${yt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ct}/v1/available-plugins`,streamingCustomPlugins:`${ct}/custom-plugins`,schemaCustomPluginItem:`${ct}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ct}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${yt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},edit:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ct}/{resourceEndpoint}`,edit:`${ct}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ct}/{entity}/{id}`,entityGetAll:`${ct}/{entity}`,entityPeek:`${ct}/{entity}?size={amount}`},kongManager:{create:{all:`${yt}/plugins`,forEntity:`${yt}/{entityType}/{entityId}/plugins`},edit:{all:`${yt}/plugins/{id}`,forEntity:`${yt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${yt}/schemas/plugins/{plugin}`,credential:{create:`${yt}/{resourceEndpoint}`,edit:`${yt}/{resourceEndpoint}/{id}`},credentialSchema:`${yt}/schemas/{plugin}`,entityGetOne:`${yt}/{entity}/{id}`,entityGetAll:`${yt}/{entity}`}},item:{konnect:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${yt}/plugins/{id}`,forEntity:`${yt}/{entityType}/{entityId}/plugins/{id}`}}},F0={key:0},U0=Ae(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ve.usePluginHelpers(),{i18n:{t:r}}=Ve.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",F0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);function Ka(e){return e.map(n=>({value:n,label:`${n}`}))}const ja="*",Fn="$",Ga=".";function Ze(...e){return e.join(Ga)}function qa(...e){return Ze(Fn,...e)}function hd(e){return e.startsWith(Ze(Fn,""))}function Rt(e){return e.split(Ga).filter(n=>n!=="")}function zo(e){const n=Rt(e);return n[n.length-1]}function K0(e){return e.startsWith(Fn)&&(e=Ze(...Rt(e).slice(1))),e}function j0(e,n){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return n.filter(a=>{const l=a.model.match(o);return l&&!Object.keys(e).includes(l[0])}).map(a=>{const l=a.label.match(r);return{label:l?l[0]:a.label,key:a.model,value:"N/A",type:"text"}})}function G0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function yd(e,n){return[...e].sort((o,r)=>{const i=Object.keys(o)[0],a=Object.keys(r)[0],l=n.indexOf(i),s=n.indexOf(a);return l===-1&&s===-1?0:l===-1?1:s===-1?-1:l-s})}function _d(e,n){const o=new Map;e.forEach(d=>{const f=Object.keys(d)[0];o.set(f,d)});const r=new Map;n.forEach((d,f)=>{d.forEach((u,p)=>{r.has(u)||r.set(u,[]),r.get(u).push({bundleIndex:f,position:p})})});const i=new Set,a=[],l=new Set,s=d=>{const f=r.get(d);if(!f)return!0;for(const{bundleIndex:u,position:p}of f){const m=n[u];for(let g=0;g<p;g++){const _=m[g];if(o.has(_)&&!i.has(_))return!1}}return!0},c=d=>{if(i.has(d))return;const f=o.get(d);if(!f)return;a.push(f),i.add(d),l.delete(d);const u=r.get(d);if(u)for(const{bundleIndex:m,position:g}of u){const _=n[m];for(let y=g+1;y<_.length;y++){const h=_[y];if(!i.has(h)){const k=o.get(h);k&&(a.push(k),i.add(h),l.delete(h))}}}const p=Array.from(l);for(const m of p)s(m)&&c(m)};for(const d of e){const f=Object.keys(d)[0];i.has(f)||(s(f)?c(f):l.add(f))}return a}const[q0,z0]=He.createInjectionState(function(n){const{schema:o,propsData:r,onChange:i,propsRenderRules:a,propsConfig:l}=n,s=W0(o),c=new Map,d=t.reactive({}),f=t.toRef(()=>l??{}),u=t.useSlots();t.provide(za,en(u,"default",Un));const{useCurrentRules:p,createComputedRules:m,hiddenPaths:g,isFieldHidden:_}=nk(()=>i==null?void 0:i(E())),y=p({fieldPath:Fn,rules:a,parentValue:d});function h(N){Object.keys(d).forEach(C=>{delete d[C]}),Object.assign(d,N)}function k(N){let C;!N||!b(t.toValue(N))?C=s.getDefault():C=Dn(t.toValue(N)),Rr(f.value.prepareFormData)?h(f.value.prepareFormData(C)):h(C)}function b(N){return Rr(f.value.hasValue)?f.value.hasValue(N):!!N}function E(){const N=t.toValue(d),C=Dn(N);if(g.value.size>0)for(const x of g.value)dd(C,Rt(x),s.getEmptyOrDefault(x));return C}return t.watch(d,()=>{i==null||i(E())},{deep:!0}),t.watch(()=>r==null?void 0:r.value,N=>{k(N)},{deep:!0,immediate:!0}),{formData:d,schema:o,config:f,fieldRendererRegistry:c,setValue:h,useCurrentRenderRules:p,rootRenderRules:y,createComputedRenderRules:m,...s,getValue:E,isFieldHidden:_}}),bd=Symbol("free-form-field-path"),za=Symbol("free-form-field-renderer-slots"),wd=Symbol("free-form-field-reset-label-path-setting"),Un="free-form-field-renderers-slot",H0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Y0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,Ha(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Ya(e,n)),o}function Ha(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?Ze(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=Ha(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Ya(a,l);Object.assign(o,s)}}return o}function Ya(e,n=""){const o={};if(e.elements){const r=e.elements,i=Ze(n,ja);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=Ha(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Ya(r,i);Object.assign(o,a)}}return o}function Hr(e){const n=Rt(e).map(o=>/^\d+$/.test(o)?ja:o);return Ze(...n)}function W0(e){const n=t.toValue(e),o=t.computed(()=>n?Y0(n):{});function r(p){var m;return p==null?n:(m=o.value)==null?void 0:m[Hr(p)]}function i(p,m=!1){const g=r(p);return g?g.default!==void 0?g.default:m||g.required?g.type==="record"?a(g,p):g.type==="array"?[]:g.type==="map"?{}:null:null:null}function a(p,m){const g={};if(Array.isArray(p.fields))for(const _ of p.fields){const y=Object.keys(_)[0],h=m?`${m}.${y}`:y,k=i(h,!1);k!==void 0&&(g[y]=k)}return g}function l(p){return p?i(p,!0):a(r(),"")}function s(p){const m=r(p),g=m!=null&&m.description?Pr.marked.parse(m.description,{async:!1}):void 0;return{...H0,"data-testid":`ff-label-${p}`,info:g}}function c(p){var g;const m=r(p);return Ka((m==null?void 0:m.one_of)||((g=m.elements)==null?void 0:g.one_of)||[])}function d(p){const m=r(p),g=m==null?void 0:m.default;let _=null;if((m==null?void 0:m.type)==="foreign"&&(g!=null&&g.id))_=g.id;else{if(g==null||typeof g=="object"||g==="")return null;if(Array.isArray(g)){if(g.length===0)return null;_=g.join(", ")}else _=g.toString()}return`Default: ${_}`}function f(){return o.value}function u(p){const m=r(p);return(m==null?void 0:m.required)?l(p):null}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d,getEmptyOrDefault:u}}function Me(){const e=z0();if(!e)throw new Error("useFormShared() called without provider.");return e}const kd=e=>{const n=t.inject(bd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!hd(r)&&n.value&&(i=Ze(n.value,r)),hd(r)&&(i=i.slice(qa("").length)),i});return t.provide(bd,o),o},X0=e=>{const{getSchema:n,fieldRendererRegistry:o}=Me(),{default:r,...i}=t.useSlots(),a=t.inject(za),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==Un&&f!=="item").reduce((f,u)=>{const p=Hr(Ze(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(za,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[Hr(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},Z0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",api:"API",uri:"URI"};function J0(e){return Z0[e.toLocaleLowerCase()]??e}function Q0(e,n){const o=t.inject(wd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Ze(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?Ze(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),t.provide(wd,l),a}function Cd(e){return Rt(e).map(o=>o.split("_").map(J0).join(" ")).map(ob).join(" › ")}function ek(e,n){const o=t.toValue(e),r=zo(o),{config:i,getSchema:a}=Me(),l=Q0(r,n),s=Ed(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":Cd(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function Pt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Me(),a=t.toValue(e),l=t.toValue(n),s=ek(e,t.toRef(()=>t.toValue(n).resetLabelPath));return t.computed(()=>{var c;return{...l,placeholder:l.placeholder??r(a)??void 0,labelAttributes:l.labelAttributes??o(a),label:l.label??s.value,required:l.required??((c=i(a))==null?void 0:c.required)}})}function tk(e){var r;const n=Rt(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Ze(o.parent.path,i):i,o={parent:o}}return o}function Ed(e){return t.computed(()=>tk(t.toValue(e)))}function Nd(e){const{formData:n}=Me(),o=kd(e);return{value:t.computed({get:()=>va(n,Rt(o.value)),set:i=>dd(n,Rt(o.value),i)})}}function _t(e){const{getSchema:n,isFieldHidden:o,getEmptyOrDefault:r}=Me(),i=kd(e),a=X0(i),{value:l}=Nd(e),s=t.computed(()=>n(i.value)),c=t.computed(()=>o(i.value)),d=t.computed(()=>r(i.value));return s.value?{schema:s,path:i,renderer:a,value:l,ancestors:Ed(i),hide:c,emptyOrDefaultValue:d,error:null}:{error:new Error(`path '${i.value}' is not found in schema.`)}}function Ho(e){const{getSchema:n}=Me(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function xd(e,n){const o=new WeakMap,r=new Map;function i(){return zr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}function nk(e){const n=t.ref({}),o=t.ref(new Set);function r(g,_){const y=g.map(k=>Rt(k).length),h=y[0];if(!y.every(k=>k===h)){const k=g.map((b,E)=>` - '${b}' is at level ${y[E]}`).join(`
12
+ authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:lo.tags}]},Fg={fields:[{id:{uuid:!0,auto:!0,type:"string",description:"A string representing a UUID (universally unique identifier)."}},{created_at:{description:"An integer representing an automatic Unix timestamp in seconds.",timestamp:!0,auto:!0,type:"integer"}},{consumer:{on_delete:"cascade",type:"foreign",reference:"consumers",required:!0}},{name:{required:!0,type:"string"}},{client_id:{required:!1,hint:"You can optionally set your own unique client_id. If missing, it will be generated for you.",unique:!0,auto:!0,type:"string"}},{client_secret:{required:!1,hint:"You can optionally set your own unique client_secret. If missing, it will be generated for you.",auto:!0,type:"string",encrypted:!0}},{hash_secret:{required:!0,type:"boolean",default:!1}},{redirect_uris:{required:!1,hint:"One or more URLs in your app where users will be sent after authorization (RFC 6742 Section 3.1.2)",type:"array",elements:{type:"string"}}},{tags:{elements:{required:!0,type:"string",description:"A string representing a tag."},type:"set",description:"A set of strings representing tags."}},{client_type:{required:!0,default:"confidential",type:"string",one_of:["confidential","public"]}}]},Zs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
13
+ client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Tn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Ug=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(e!=null&&e.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},Kg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},vt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",freeformRenderRules:{dependencies:{"config.brute_force_protection.redis":["config.brute_force_protection.strategy","redis"]}},...X.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},freeformRenderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}},...X.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.access_logs_endpoint","config.traces_endpoint","config.logs_endpoint"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",nameKey:"plugins.meta.tls-metadata-headers.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",nameKey:"plugins.meta.tls-handshake-modifier.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...X.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...X.PLUGIN_GROUP_AND_SCOPE_MAP["solace-log"]},"ai-llm-as-judge":{descriptionKey:"plugins.meta.ai-llm-as-judge.description",nameKey:"plugins.meta.ai-llm-as-judge.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-llm-as-judge"]},"ai-mcp-proxy":{descriptionKey:"plugins.meta.ai-mcp-proxy.description",nameKey:"plugins.meta.ai-mcp-proxy.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-proxy"]},"ai-gcp-model-armor":{descriptionKey:"plugins.meta.ai-gcp-model-armor.description",nameKey:"plugins.meta.ai-gcp-model-armor.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-gcp-model-armor"]},"ai-mcp-oauth2":{descriptionKey:"plugins.meta.ai-mcp-oauth2.description",nameKey:"plugins.meta.ai-mcp-oauth2.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-oauth2"]},"ai-semantic-response-guard":{descriptionKey:"plugins.meta.ai-semantic-response-guard.description",nameKey:"plugins.meta.ai-semantic-response-guard.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]},"ai-lakera-guard":{descriptionKey:"plugins.meta.ai-lakera-guard.description",nameKey:"plugins.meta.ai-lakera-guard.name",useLegacyForm:!0,...X.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]}},so={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:qs,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Pn(qs),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:zs,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Pn(zs)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Ys,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Pn(Ys)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Zs,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Pn(Zs)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Xs,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Pn(Xs)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Ws,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Pn(Ws)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Mg,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},jg={acls:Pg,basicauth_credentials:Tg,keyauth_credentials:Rg,keyauth_enc_credentials:Kg,oauth2_credentials:Fg,hmacauth_credentials:Dg,jwt_secrets:Lg},Gg=()=>{const{i18n:{t:e}}=$e(),n={},o={};for(const[i,a]of Object.entries(vt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(so))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:so,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Lo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},qg={"config-prompts-prepend":{...Lo,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...Lo,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},zg={"config-templates":{...Lo,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},Hg={shamefullyTransformPayload:({originalModel:e,model:n,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&n[l]?!0:e[l]===n[l]?!1:e[l]===null?n[l]!==""&&!Number.isNaN(n[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},Js=e=>e.split(",").map(n=>n.trim()).filter(Boolean),Yg={shamefullyTransformPayload:({payload:e})=>{var n;(n=e==null?void 0:e.config)!=null&&n.collection_acl_config&&Object.values(e.config.collection_acl_config).forEach(o=>{typeof(o==null?void 0:o.allow)=="string"&&(o.allow=Js(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=Js(o.deny))})}},Wg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Xg={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:lo.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Be={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},Mr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Zg={"config-metrics":{...Mr,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},Jg={"config-functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},Qg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},eh={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},th={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},nh={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},oh={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Qs=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:lo.fields.arrayItems({newElementButtonLabel:"Add"})}),oh),Lr={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},rh={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},ih=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:lo.fields.arrayItems({newElementButtonLabel:"Add"})}),rh),ec={"config-add-json":{...Be,label:"Config.Add.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Be,label:"Config.Append.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Be,label:"Config.Remove.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Be,label:"Config.Rename.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Be,label:"Config.Replace.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},ah={...ec,"config-allow-json":{...Be,label:"Config.Allow.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Be,label:"Config.Transform.Functions",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Be,label:"Config.Transform.Json",inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},lh={"config-rules":{...Lo,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},sh={"config-session_redis_cluster_nodes":{...Lo,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},ch={"config-flow-functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},dh={"config-message-functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}}},uh={"config-metrics":{...Mr,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},fh={"config-metrics":{...Mr,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},ph={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},mh={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var tc=typeof global=="object"&&global&&global.Object===Object&&global,gh=typeof self=="object"&&self&&self.Object===Object&&self,Ut=tc||gh||Function("return this")(),At=Ut.Symbol,nc=Object.prototype,hh=nc.hasOwnProperty,yh=nc.toString,Fo=At?At.toStringTag:void 0;function _h(e){var n=hh.call(e,Fo),o=e[Fo];try{e[Fo]=void 0;var r=!0}catch{}var i=yh.call(e);return r&&(n?e[Fo]=o:delete e[Fo]),i}var bh=Object.prototype,wh=bh.toString;function kh(e){return wh.call(e)}var Ch="[object Null]",Eh="[object Undefined]",oc=At?At.toStringTag:void 0;function On(e){return e==null?e===void 0?Eh:Ch:oc&&oc in Object(e)?_h(e):kh(e)}function Xt(e){return e!=null&&typeof e=="object"}var Nh="[object Symbol]";function ma(e){return typeof e=="symbol"||Xt(e)&&On(e)==Nh}function rc(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var Vt=Array.isArray,ic=At?At.prototype:void 0,ac=ic?ic.toString:void 0;function lc(e){if(typeof e=="string")return e;if(Vt(e))return rc(e,lc)+"";if(ma(e))return ac?ac.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function $n(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function xh(e){return e}var Sh="[object AsyncFunction]",vh="[object Function]",Ah="[object GeneratorFunction]",Ih="[object Proxy]";function Fr(e){if(!$n(e))return!1;var n=On(e);return n==vh||n==Ah||n==Sh||n==Ih}var ga=Ut["__core-js_shared__"],sc=function(){var e=/[^.]+$/.exec(ga&&ga.keys&&ga.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Ph(e){return!!sc&&sc in e}var Th=Function.prototype,Oh=Th.toString;function Bn(e){if(e!=null){try{return Oh.call(e)}catch{}try{return e+""}catch{}}return""}var $h=/[\\^$.*+?()[\]{}|]/g,Bh=/^\[object .+?Constructor\]$/,Vh=Function.prototype,Rh=Object.prototype,Dh=Vh.toString,Mh=Rh.hasOwnProperty,Lh=RegExp("^"+Dh.call(Mh).replace($h,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Fh(e){if(!$n(e)||Ph(e))return!1;var n=Fr(e)?Lh:Bh;return n.test(Bn(e))}function Uh(e,n){return e==null?void 0:e[n]}function Vn(e,n){var o=Uh(e,n);return Fh(o)?o:void 0}var ha=Vn(Ut,"WeakMap"),cc=Object.create,Kh=function(){function e(){}return function(n){if(!$n(n))return{};if(cc)return cc(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function jh(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}function Gh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var qh=800,zh=16,Hh=Date.now;function Yh(e){var n=0,o=0;return function(){var r=Hh(),i=zh-(r-o);if(o=r,i>0){if(++n>=qh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function Wh(e){return function(){return e}}var Ur=function(){try{var e=Vn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Xh=Ur?function(e,n){return Ur(e,"toString",{configurable:!0,enumerable:!1,value:Wh(n),writable:!0})}:xh,Zh=Yh(Xh);function Jh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var Qh=9007199254740991,ey=/^(?:0|[1-9]\d*)$/;function ya(e,n){var o=typeof e;return n=n??Qh,!!n&&(o=="number"||o!="symbol"&&ey.test(e))&&e>-1&&e%1==0&&e<n}function dc(e,n,o){n=="__proto__"&&Ur?Ur(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function _a(e,n){return e===n||e!==e&&n!==n}var ty=Object.prototype,ny=ty.hasOwnProperty;function ba(e,n,o){var r=e[n];(!(ny.call(e,n)&&_a(r,o))||o===void 0&&!(n in e))&&dc(e,n,o)}function Uo(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?dc(o,s,c):ba(o,s,c)}return o}var uc=Math.max;function oy(e,n,o){return n=uc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=uc(r.length-n,0),l=Array(a);++i<a;)l[i]=r[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=r[i];return s[n]=o(l),jh(e,this,s)}}var ry=9007199254740991;function wa(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=ry}function ka(e){return e!=null&&wa(e.length)&&!Fr(e)}var iy=Object.prototype;function Kr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||iy;return e===o}function ay(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var ly="[object Arguments]";function fc(e){return Xt(e)&&On(e)==ly}var pc=Object.prototype,sy=pc.hasOwnProperty,cy=pc.propertyIsEnumerable,jr=fc(function(){return arguments}())?fc:function(e){return Xt(e)&&sy.call(e,"callee")&&!cy.call(e,"callee")};function dy(){return!1}var mc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,gc=mc&&typeof module=="object"&&module&&!module.nodeType&&module,uy=gc&&gc.exports===mc,hc=uy?Ut.Buffer:void 0,fy=hc?hc.isBuffer:void 0,Ko=fy||dy,py="[object Arguments]",my="[object Array]",gy="[object Boolean]",hy="[object Date]",yy="[object Error]",_y="[object Function]",by="[object Map]",wy="[object Number]",ky="[object Object]",Cy="[object RegExp]",Ey="[object Set]",Ny="[object String]",xy="[object WeakMap]",Sy="[object ArrayBuffer]",vy="[object DataView]",Ay="[object Float32Array]",Iy="[object Float64Array]",Py="[object Int8Array]",Ty="[object Int16Array]",Oy="[object Int32Array]",$y="[object Uint8Array]",By="[object Uint8ClampedArray]",Vy="[object Uint16Array]",Ry="[object Uint32Array]",Ue={};Ue[Ay]=Ue[Iy]=Ue[Py]=Ue[Ty]=Ue[Oy]=Ue[$y]=Ue[By]=Ue[Vy]=Ue[Ry]=!0,Ue[py]=Ue[my]=Ue[Sy]=Ue[gy]=Ue[vy]=Ue[hy]=Ue[yy]=Ue[_y]=Ue[by]=Ue[wy]=Ue[ky]=Ue[Cy]=Ue[Ey]=Ue[Ny]=Ue[xy]=!1;function Dy(e){return Xt(e)&&wa(e.length)&&!!Ue[On(e)]}function Ca(e){return function(n){return e(n)}}var yc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,jo=yc&&typeof module=="object"&&module&&!module.nodeType&&module,My=jo&&jo.exports===yc,Ea=My&&tc.process,co=function(){try{var e=jo&&jo.require&&jo.require("util").types;return e||Ea&&Ea.binding&&Ea.binding("util")}catch{}}(),_c=co&&co.isTypedArray,Na=_c?Ca(_c):Dy,Ly=Object.prototype,Fy=Ly.hasOwnProperty;function bc(e,n){var o=Vt(e),r=!o&&jr(e),i=!o&&!r&&Ko(e),a=!o&&!r&&!i&&Na(e),l=o||r||i||a,s=l?ay(e.length,String):[],c=s.length;for(var d in e)(n||Fy.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||ya(d,c)))&&s.push(d);return s}function wc(e,n){return function(o){return e(n(o))}}var Uy=wc(Object.keys,Object),Ky=Object.prototype,jy=Ky.hasOwnProperty;function kc(e){if(!Kr(e))return Uy(e);var n=[];for(var o in Object(e))jy.call(e,o)&&o!="constructor"&&n.push(o);return n}function xa(e){return ka(e)?bc(e):kc(e)}function Gy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var qy=Object.prototype,zy=qy.hasOwnProperty;function Hy(e){if(!$n(e))return Gy(e);var n=Kr(e),o=[];for(var r in e)r=="constructor"&&(n||!zy.call(e,r))||o.push(r);return o}function Sa(e){return ka(e)?bc(e,!0):Hy(e)}var Yy=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Wy=/^\w*$/;function Xy(e,n){if(Vt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||ma(e)?!0:Wy.test(e)||!Yy.test(e)||n!=null&&e in Object(n)}var Go=Vn(Object,"create");function Zy(){this.__data__=Go?Go(null):{},this.size=0}function Jy(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var Qy="__lodash_hash_undefined__",e_=Object.prototype,t_=e_.hasOwnProperty;function n_(e){var n=this.__data__;if(Go){var o=n[e];return o===Qy?void 0:o}return t_.call(n,e)?n[e]:void 0}var o_=Object.prototype,r_=o_.hasOwnProperty;function i_(e){var n=this.__data__;return Go?n[e]!==void 0:r_.call(n,e)}var a_="__lodash_hash_undefined__";function l_(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Go&&n===void 0?a_:n,this}function Rn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Rn.prototype.clear=Zy,Rn.prototype.delete=Jy,Rn.prototype.get=n_,Rn.prototype.has=i_,Rn.prototype.set=l_;function s_(){this.__data__=[],this.size=0}function Gr(e,n){for(var o=e.length;o--;)if(_a(e[o][0],n))return o;return-1}var c_=Array.prototype,d_=c_.splice;function u_(e){var n=this.__data__,o=Gr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():d_.call(n,o,1),--this.size,!0}function f_(e){var n=this.__data__,o=Gr(n,e);return o<0?void 0:n[o][1]}function p_(e){return Gr(this.__data__,e)>-1}function m_(e,n){var o=this.__data__,r=Gr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Zt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Zt.prototype.clear=s_,Zt.prototype.delete=u_,Zt.prototype.get=f_,Zt.prototype.has=p_,Zt.prototype.set=m_;var qo=Vn(Ut,"Map");function g_(){this.size=0,this.__data__={hash:new Rn,map:new(qo||Zt),string:new Rn}}function h_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function qr(e,n){var o=e.__data__;return h_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function y_(e){var n=qr(this,e).delete(e);return this.size-=n?1:0,n}function __(e){return qr(this,e).get(e)}function b_(e){return qr(this,e).has(e)}function w_(e,n){var o=qr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Jt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Jt.prototype.clear=g_,Jt.prototype.delete=y_,Jt.prototype.get=__,Jt.prototype.has=b_,Jt.prototype.set=w_;var k_="Expected a function";function va(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(k_);var o=function(){var r=arguments,i=n?n.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var l=e.apply(this,r);return o.cache=a.set(i,l)||a,l};return o.cache=new(va.Cache||Jt),o}va.Cache=Jt;var C_=500;function E_(e){var n=va(e,function(r){return o.size===C_&&o.clear(),r}),o=n.cache;return n}var N_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,x_=/\\(\\)?/g,S_=E_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(N_,function(o,r,i,a){n.push(i?a.replace(x_,"$1"):r||o)}),n});function Aa(e){return e==null?"":lc(e)}function uo(e,n){return Vt(e)?e:Xy(e,n)?[e]:S_(Aa(e))}function zr(e){if(typeof e=="string"||ma(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Ia(e,n){n=uo(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[zr(n[o++])];return o&&o==r?e:void 0}function Pa(e,n,o){var r=e==null?void 0:Ia(e,n);return r===void 0?o:r}function Ta(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var Cc=At?At.isConcatSpreadable:void 0;function v_(e){return Vt(e)||jr(e)||!!(Cc&&e&&e[Cc])}function A_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=v_),i||(i=[]);++a<l;){var s=e[a];o(s)?Ta(i,s):i[i.length]=s}return i}function I_(e){var n=e==null?0:e.length;return n?A_(e):[]}function Ec(e){return Zh(oy(e,void 0,I_),e+"")}var Oa=wc(Object.getPrototypeOf,Object),P_="[object Object]",T_=Function.prototype,O_=Object.prototype,Nc=T_.toString,$_=O_.hasOwnProperty,B_=Nc.call(Object);function V_(e){if(!Xt(e)||On(e)!=P_)return!1;var n=Oa(e);if(n===null)return!0;var o=$_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&Nc.call(o)==B_}function xc(e,n,o){var r=-1,i=e.length;n<0&&(n=-n>i?0:i+n),o=o>i?i:o,o<0&&(o+=i),i=n>o?0:o-n>>>0,n>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+n];return a}function R_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:xc(e,n,o)}var D_="\\ud800-\\udfff",M_="\\u0300-\\u036f",L_="\\ufe20-\\ufe2f",F_="\\u20d0-\\u20ff",U_=M_+L_+F_,K_="\\ufe0e\\ufe0f",j_="\\u200d",G_=RegExp("["+j_+D_+U_+K_+"]");function Sc(e){return G_.test(e)}function q_(e){return e.split("")}var vc="\\ud800-\\udfff",z_="\\u0300-\\u036f",H_="\\ufe20-\\ufe2f",Y_="\\u20d0-\\u20ff",W_=z_+H_+Y_,X_="\\ufe0e\\ufe0f",Z_="["+vc+"]",$a="["+W_+"]",Ba="\\ud83c[\\udffb-\\udfff]",J_="(?:"+$a+"|"+Ba+")",Ac="[^"+vc+"]",Ic="(?:\\ud83c[\\udde6-\\uddff]){2}",Pc="[\\ud800-\\udbff][\\udc00-\\udfff]",Q_="\\u200d",Tc=J_+"?",Oc="["+X_+"]?",eb="(?:"+Q_+"(?:"+[Ac,Ic,Pc].join("|")+")"+Oc+Tc+")*",tb=Oc+Tc+eb,nb="(?:"+[Ac+$a+"?",$a,Ic,Pc,Z_].join("|")+")",ob=RegExp(Ba+"(?="+Ba+")|"+nb+tb,"g");function rb(e){return e.match(ob)||[]}function ib(e){return Sc(e)?rb(e):q_(e)}function ab(e){return function(n){n=Aa(n);var o=Sc(n)?ib(n):void 0,r=o?o[0]:n.charAt(0),i=o?R_(o,1).join(""):n.slice(1);return r[e]()+i}}var lb=ab("toUpperCase");function sb(){this.__data__=new Zt,this.size=0}function cb(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function db(e){return this.__data__.get(e)}function ub(e){return this.__data__.has(e)}var fb=200;function pb(e,n){var o=this.__data__;if(o instanceof Zt){var r=o.__data__;if(!qo||r.length<fb-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Jt(r)}return o.set(e,n),this.size=o.size,this}function Qt(e){var n=this.__data__=new Zt(e);this.size=n.size}Qt.prototype.clear=sb,Qt.prototype.delete=cb,Qt.prototype.get=db,Qt.prototype.has=ub,Qt.prototype.set=pb;function mb(e,n){return e&&Uo(n,xa(n),e)}function gb(e,n){return e&&Uo(n,Sa(n),e)}var $c=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,Bc=$c&&typeof module=="object"&&module&&!module.nodeType&&module,hb=Bc&&Bc.exports===$c,Vc=hb?Ut.Buffer:void 0,Rc=Vc?Vc.allocUnsafe:void 0;function yb(e,n){if(n)return e.slice();var o=e.length,r=Rc?Rc(o):new e.constructor(o);return e.copy(r),r}function _b(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];n(l,o,e)&&(a[i++]=l)}return a}function Dc(){return[]}var bb=Object.prototype,wb=bb.propertyIsEnumerable,Mc=Object.getOwnPropertySymbols,Va=Mc?function(e){return e==null?[]:(e=Object(e),_b(Mc(e),function(n){return wb.call(e,n)}))}:Dc;function kb(e,n){return Uo(e,Va(e),n)}var Cb=Object.getOwnPropertySymbols,Lc=Cb?function(e){for(var n=[];e;)Ta(n,Va(e)),e=Oa(e);return n}:Dc;function Eb(e,n){return Uo(e,Lc(e),n)}function Fc(e,n,o){var r=n(e);return Vt(e)?r:Ta(r,o(e))}function Ra(e){return Fc(e,xa,Va)}function Uc(e){return Fc(e,Sa,Lc)}var Da=Vn(Ut,"DataView"),Ma=Vn(Ut,"Promise"),La=Vn(Ut,"Set"),Kc="[object Map]",Nb="[object Object]",jc="[object Promise]",Gc="[object Set]",qc="[object WeakMap]",zc="[object DataView]",xb=Bn(Da),Sb=Bn(qo),vb=Bn(Ma),Ab=Bn(La),Ib=Bn(ha),It=On;(Da&&It(new Da(new ArrayBuffer(1)))!=zc||qo&&It(new qo)!=Kc||Ma&&It(Ma.resolve())!=jc||La&&It(new La)!=Gc||ha&&It(new ha)!=qc)&&(It=function(e){var n=On(e),o=n==Nb?e.constructor:void 0,r=o?Bn(o):"";if(r)switch(r){case xb:return zc;case Sb:return Kc;case vb:return jc;case Ab:return Gc;case Ib:return qc}return n});var Pb=Object.prototype,Tb=Pb.hasOwnProperty;function Ob(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Tb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Hr=Ut.Uint8Array;function Fa(e){var n=new e.constructor(e.byteLength);return new Hr(n).set(new Hr(e)),n}function $b(e,n){var o=n?Fa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Bb=/\w*$/;function Vb(e){var n=new e.constructor(e.source,Bb.exec(e));return n.lastIndex=e.lastIndex,n}var Hc=At?At.prototype:void 0,Yc=Hc?Hc.valueOf:void 0;function Rb(e){return Yc?Object(Yc.call(e)):{}}function Db(e,n){var o=n?Fa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Mb="[object Boolean]",Lb="[object Date]",Fb="[object Map]",Ub="[object Number]",Kb="[object RegExp]",jb="[object Set]",Gb="[object String]",qb="[object Symbol]",zb="[object ArrayBuffer]",Hb="[object DataView]",Yb="[object Float32Array]",Wb="[object Float64Array]",Xb="[object Int8Array]",Zb="[object Int16Array]",Jb="[object Int32Array]",Qb="[object Uint8Array]",ew="[object Uint8ClampedArray]",tw="[object Uint16Array]",nw="[object Uint32Array]";function ow(e,n,o){var r=e.constructor;switch(n){case zb:return Fa(e);case Mb:case Lb:return new r(+e);case Hb:return $b(e,o);case Yb:case Wb:case Xb:case Zb:case Jb:case Qb:case ew:case tw:case nw:return Db(e,o);case Fb:return new r;case Ub:case Gb:return new r(e);case Kb:return Vb(e);case jb:return new r;case qb:return Rb(e)}}function rw(e){return typeof e.constructor=="function"&&!Kr(e)?Kh(Oa(e)):{}}var iw="[object Map]";function aw(e){return Xt(e)&&It(e)==iw}var Wc=co&&co.isMap,lw=Wc?Ca(Wc):aw,sw="[object Set]";function cw(e){return Xt(e)&&It(e)==sw}var Xc=co&&co.isSet,dw=Xc?Ca(Xc):cw,uw=1,fw=2,pw=4,Zc="[object Arguments]",mw="[object Array]",gw="[object Boolean]",hw="[object Date]",yw="[object Error]",Jc="[object Function]",_w="[object GeneratorFunction]",bw="[object Map]",ww="[object Number]",Qc="[object Object]",kw="[object RegExp]",Cw="[object Set]",Ew="[object String]",Nw="[object Symbol]",xw="[object WeakMap]",Sw="[object ArrayBuffer]",vw="[object DataView]",Aw="[object Float32Array]",Iw="[object Float64Array]",Pw="[object Int8Array]",Tw="[object Int16Array]",Ow="[object Int32Array]",$w="[object Uint8Array]",Bw="[object Uint8ClampedArray]",Vw="[object Uint16Array]",Rw="[object Uint32Array]",Le={};Le[Zc]=Le[mw]=Le[Sw]=Le[vw]=Le[gw]=Le[hw]=Le[Aw]=Le[Iw]=Le[Pw]=Le[Tw]=Le[Ow]=Le[bw]=Le[ww]=Le[Qc]=Le[kw]=Le[Cw]=Le[Ew]=Le[Nw]=Le[$w]=Le[Bw]=Le[Vw]=Le[Rw]=!0,Le[yw]=Le[Jc]=Le[xw]=!1;function zo(e,n,o,r,i,a){var l,s=n&uw,c=n&fw,d=n&pw;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!$n(e))return e;var f=Vt(e);if(f){if(l=Ob(e),!s)return Gh(e,l)}else{var u=It(e),p=u==Jc||u==_w;if(Ko(e))return yb(e,s);if(u==Qc||u==Zc||p&&!i){if(l=c||p?{}:rw(e),!s)return c?Eb(e,gb(l,e)):kb(e,mb(l,e))}else{if(!Le[u])return i?e:{};l=ow(e,u,s)}}a||(a=new Qt);var m=a.get(e);if(m)return m;a.set(e,l),dw(e)?e.forEach(function(h){l.add(zo(h,n,o,h,e,a))}):lw(e)&&e.forEach(function(h,y){l.set(y,zo(h,n,o,y,e,a))});var g=d?c?Uc:Ra:c?Sa:xa,_=f?void 0:g(e);return Jh(_||e,function(h,y){_&&(y=h,h=e[y]),ba(l,y,zo(h,n,o,y,e,a))}),l}var Dw=1,Mw=4;function Dn(e){return zo(e,Dw|Mw)}var Lw="__lodash_hash_undefined__";function Fw(e){return this.__data__.set(e,Lw),this}function Uw(e){return this.__data__.has(e)}function Yr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Jt;++n<o;)this.add(e[n])}Yr.prototype.add=Yr.prototype.push=Fw,Yr.prototype.has=Uw;function Kw(e,n){for(var o=-1,r=e==null?0:e.length;++o<r;)if(n(e[o],o,e))return!0;return!1}function jw(e,n){return e.has(n)}var Gw=1,qw=2;function ed(e,n,o,r,i,a){var l=o&Gw,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&qw?new Yr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var g=e[u],_=n[u];if(r)var h=l?r(_,g,u,n,e,a):r(g,_,u,e,n,a);if(h!==void 0){if(h)continue;p=!1;break}if(m){if(!Kw(n,function(y,k){if(!jw(m,k)&&(g===y||i(g,y,o,r,a)))return m.push(k)})){p=!1;break}}else if(!(g===_||i(g,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function zw(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function Hw(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var Yw=1,Ww=2,Xw="[object Boolean]",Zw="[object Date]",Jw="[object Error]",Qw="[object Map]",e0="[object Number]",t0="[object RegExp]",n0="[object Set]",o0="[object String]",r0="[object Symbol]",i0="[object ArrayBuffer]",a0="[object DataView]",td=At?At.prototype:void 0,Ua=td?td.valueOf:void 0;function l0(e,n,o,r,i,a,l){switch(o){case a0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case i0:return!(e.byteLength!=n.byteLength||!a(new Hr(e),new Hr(n)));case Xw:case Zw:case e0:return _a(+e,+n);case Jw:return e.name==n.name&&e.message==n.message;case t0:case o0:return e==n+"";case Qw:var s=zw;case n0:var c=r&Yw;if(s||(s=Hw),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=Ww,l.set(e,n);var f=ed(s(e),s(n),r,i,a,l);return l.delete(e),f;case r0:if(Ua)return Ua.call(e)==Ua.call(n)}return!1}var s0=1,c0=Object.prototype,d0=c0.hasOwnProperty;function u0(e,n,o,r,i,a){var l=o&s0,s=Ra(e),c=s.length,d=Ra(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:d0.call(n,p)))return!1}var m=a.get(e),g=a.get(n);if(m&&g)return m==n&&g==e;var _=!0;a.set(e,n),a.set(n,e);for(var h=l;++u<c;){p=s[u];var y=e[p],k=n[p];if(r)var b=l?r(k,y,p,n,e,a):r(y,k,p,e,n,a);if(!(b===void 0?y===k||i(y,k,o,r,a):b)){_=!1;break}h||(h=p=="constructor")}if(_&&!h){var E=e.constructor,N=n.constructor;E!=N&&"constructor"in e&&"constructor"in n&&!(typeof E=="function"&&E instanceof E&&typeof N=="function"&&N instanceof N)&&(_=!1)}return a.delete(e),a.delete(n),_}var f0=1,nd="[object Arguments]",od="[object Array]",Wr="[object Object]",p0=Object.prototype,rd=p0.hasOwnProperty;function m0(e,n,o,r,i,a){var l=Vt(e),s=Vt(n),c=l?od:It(e),d=s?od:It(n);c=c==nd?Wr:c,d=d==nd?Wr:d;var f=c==Wr,u=d==Wr,p=c==d;if(p&&Ko(e)){if(!Ko(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Qt),l||Na(e)?ed(e,n,o,r,i,a):l0(e,n,c,o,r,i,a);if(!(o&f0)){var m=f&&rd.call(e,"__wrapped__"),g=u&&rd.call(n,"__wrapped__");if(m||g){var _=m?e.value():e,h=g?n.value():n;return a||(a=new Qt),i(_,h,o,r,a)}}return p?(a||(a=new Qt),u0(e,n,o,r,i,a)):!1}function id(e,n,o,r,i){return e===n?!0:e==null||n==null||!Xt(e)&&!Xt(n)?e!==e&&n!==n:m0(e,n,o,r,id,i)}function g0(e,n){return e!=null&&n in Object(e)}function ad(e,n,o){n=uo(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=zr(n[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&wa(i)&&ya(l,i)&&(Vt(e)||jr(e)))}function h0(e,n){return e!=null&&ad(e,n,g0)}function y0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}var _0=Object.prototype,b0=_0.hasOwnProperty;function w0(e,n){return e!=null&&b0.call(e,n)}function ld(e,n){return e!=null&&ad(e,n,w0)}function k0(e,n){return n.length<2?e:Ia(e,xc(n,0,-1))}var C0="[object Map]",E0="[object Set]",N0=Object.prototype,x0=N0.hasOwnProperty;function sd(e){if(e==null)return!0;if(ka(e)&&(Vt(e)||typeof e=="string"||typeof e.splice=="function"||Ko(e)||Na(e)||jr(e)))return!e.length;var n=It(e);if(n==C0||n==E0)return!e.size;if(Kr(e))return!kc(e).length;for(var o in e)if(x0.call(e,o))return!1;return!0}function Mn(e,n){return id(e,n)}function cd(e,n){return n=uo(n,e),e=k0(e,n),e==null||delete e[zr(y0(n))]}function S0(e){return V_(e)?void 0:e}var v0=1,A0=2,I0=4,en=Ec(function(e,n){var o={};if(e==null)return o;var r=!1;n=rc(n,function(a){return a=uo(a,e),r||(r=a.length>1),a}),Uo(e,Uc(e),o),r&&(o=zo(o,v0|A0|I0,S0));for(var i=n.length;i--;)cd(o,n[i]);return o});function dd(e,n,o,r){if(!$n(e))return e;n=uo(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=zr(n[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];d=void 0,d===void 0&&(d=$n(f)?f:ya(n[i+1])?[]:{})}ba(s,c,d),s=s[c]}return e}function P0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Ia(e,l);o(s,l)&&dd(a,uo(l,e),s)}return a}function T0(e,n){return P0(e,n,function(o,r){return h0(e,r)})}var Ka=Ec(function(e,n){return e==null?{}:T0(e,n)});function ud(e,n,o){return e==null?e:dd(e,n,o)}var O0=0;function Xr(e){var n=++O0;return Aa(e)+n}function fd(e,n){return e==null?!0:cd(e,n)}const $0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Ln=e=>{var n,o,r,i,a,l;((o=(n=e.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client,delete e.confluent.authentication.basic),((i=(r=e.confluent)==null?void 0:r.authentication)==null?void 0:i.mode)==="basic"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client),((l=(a=e.confluent)==null?void 0:a.authentication)==null?void 0:l.mode)==="oauth2"&&delete e.confluent.authentication.basic,$0.some(s=>Mn(e.confluent,s))&&(e.confluent=null)};function B0(e,n){const o=e.split(""),r=n.split(""),i=o.length,a=r.length,l=Array.from({length:i+1},()=>Array(a+1).fill(0));for(let f=1;f<=i;f++)for(let u=1;u<=a;u++)o[f-1]===r[u-1]?l[f][u]=l[f-1][u-1]+1:l[f][u]=Math.max(l[f-1][u],l[f][u-1]);let s="",c=i,d=a;for(;c>0&&d>0;)o[c-1]===r[d-1]?(s=o[c-1]+s,c--,d--):l[c-1][d]>l[c][d-1]?c--:d--;return s}const V0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Ln((n=e.config)==null?void 0:n.schema_registry)}},R0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Ln((n=e.config)==null?void 0:n.schema_registry)}},D0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Ln((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Ln(i==null?void 0:i.schema_registry)})}},M0={"config-message_by_lua_functions":{...Be,inputAttributes:{...Be.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Ln((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Ln(i==null?void 0:i.schema_registry)})}},L0={shamefullyTransformPayload:({payload:e})=>{var n;Ln((n=e.config)==null?void 0:n.schema_registry)}},F0={"config-static_tags":{...Mr,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},U0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function ja(e,n){const o=U0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Ga=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),pn={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},pd=Symbol("TOASTER_PROVIDER");function md(){return t.inject(Ga,[])}function K0(e){t.provide(Ga,e)}const j0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},gd=(e,n)=>(e.order??0)-(n.order??0),hd=(e,n)=>j0(e,n)||gd(e,n)||e.model.localeCompare(n.model),Ve={useI18n:$e,usePluginMetaData:Gg,usePluginHelpers:Gs,useSchemas:e=>{const{capitalize:n}=ge.useStringHelpers(),{convertToDotNotation:o}=Gs(),{i18n:{t:r}}=$e(),i=md(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Xg}},datadog:{...Zg},"exit-transformer":{...Jg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...uh},"statsd-advanced":{...fh},"route-by-header":{...lh},"ai-prompt-decorator":{...qg},"ai-prompt-template":{...zg},"ai-proxy-advanced":{...Hg},"ai-rag-injector":{...Yg},"ai-llm-as-judge":{...Wg},"vault-auth":{...mh},"oas-validation":{...nh},mocking:{...th},"rate-limiting":{...Lr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Lr["config-consumer_groups"]}:{...Lr},"graphql-rate-limiting-advanced":{...Qg},"injection-protection":{...eh},"response-ratelimiting":{...Lr},"pre-function":{...Qs},"post-function":{...Qs},"request-transformer-advanced":{...ih},"response-transformer":{...ec},"response-transformer-advanced":{...ah},zipkin:{...F0},"upstream-oauth":{...ph},saml:{...sh},"kafka-upstream":{...V0},"solace-consume":{...ch},"solace-upstream":{...dh},"key-auth":Vg(e),"key-auth-enc":Ug(e),confluent:{...R0},"confluent-consume":{...D0},"kafka-consume":{...M0},"kafka-log":{...L0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,x,P,A)=>{let B={};(x||C)&&(B=x||(C.fields?C.fields:C));const v=l().concat(C.blacklist?C.blacklist:[]),w=Object.keys(B).filter(U=>!v.includes(U)),F=w.indexOf("comparator");F>-1&&w.splice(F,1);let S={fields:[]};const M={};w.forEach(U=>{d(B[U],U,B,M,S,P)});const O=M.name,j=vt[O],W=[],L=U=>{const T=["cluster-cache"];for(const V of T)if(U.model.includes(V))return!1;return new RegExp("(?<=-redis-).*").test(U.model)};if(S._supported_redis_partial_type=C._supported_redis_partial_type,S._redis_partial_path=C._redis_partial_path,De.getSharedFormName(O)||ja(O,i)||j!=null&&j.useLegacyForm||e!=null&&e.credential||A==="freeform"){if(j!=null&&j.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const U of S.fields)if(L(U)){W.push(U);continue}S.fields=S.fields.filter(U=>!L(U)),W.length&&S.fields.push({id:"_redis",fields:W,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}S.fields.sort((U,T)=>(U.order=U.order||0,T.order=T.order||0,U.order-T.order))}else{const U=[],T=[],V=[],G=[],se={};if(j!=null&&j.fieldRules){const ne=[...j.fieldRules.atLeastOneOf??[],...j.fieldRules.onlyOneOf??[],...j.fieldRules.mutuallyRequired??[]];if(j.fieldRules.onlyOneOfMutuallyRequired)for(const me of j.fieldRules.onlyOneOfMutuallyRequired)ne.push(...me);for(const me of ne)for(const ye of me)se[ye.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const ne of S.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&L(ne)){G.push(ne);continue}if(ne.pinned){U.push(ne);continue}if(ne.required||se[ne.model]!==void 0){se[ne.model]===!1&&(se[ne.model]=!0),T.push(ne);continue}V.push(ne)}G.length&&V.push({id:"_redis",fields:G,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const K=Object.entries(se).filter(([,ne])=>!ne).map(([ne])=>ne.replace(/-/g,".").replace(/_/g,"-"));K.length>0&&console.warn(`Unknown checked fields for plugin ${O}: ${K.join(", ")}`);const q=[];U.length>0&&q.push({fields:U.sort(gd)}),(T.length>0||V.length>0)&&q.push({fields:T.sort(hd),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:V.sort(hd),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),S={groups:q}}return{schema:S,model:M,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,x,P,A,B,v)=>{const w=c(C);return A[x]=w?C.default:null,C.id=x,C.model=x,C.fields&&C.type==="record"?u(C,x,P,A,B,v):(P[x]=C,E(C,A),v&&v[x]&&f(P[x],v[x]),B.fields.push(C)),P},f=(C,x)=>(x&&(Object.assign(C,x),x.label&&(C.label=x.label)),C),u=(C,x,P,A,B,v)=>{C.fields.forEach(w=>{Object.keys(w).forEach(F=>{const S=w[F];P=d(S,x+"-"+F,P,A,B,v)})})},p=(C,x)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const P=e==null?void 0:e.entityId;x[C.model]=P?{id:P}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},g=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},_=C=>{C.type="checkbox",C.default=!0,C.required=!1},h=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:x}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Be,model:C.model,valueArrayType:x==="integer"?"number":x||"string",inputAttributes:{...Be.inputAttributes,type:x==="integer"?"number":"text",inputMode:x==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(x=>{const P=Object.keys(x)[0];return{model:P,type:"input",label:n(P),placeholder:P,inputType:x[P].type}})}}]})},y=C=>C.fields.reduce((x,P)=>(P.fields&&P.fields.forEach(A=>{x[A.model]=A}),P.model&&(x[P.model]=P),x),{}),k=(C,x)=>{if(!De.customFields.includes(C.model))return;const P=y(C);De.customFields.forEach(A=>{Object.keys(P).forEach(B=>{const v=c(P[B]);x[B]=v?P[B].default:null}),delete x[A]})},b=(C,x)=>C.inputType==="hidden"?"":o(n(C.label||x.replace(/_/g," "))),E=(C,x)=>{switch(k(C,x),C.type){case"foreign":p(C,x);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":g(C);break;case"boolean":_(C);break;case"map":h(C);break}C.inputType==="foreign"&&p(C,x),C.label=b(C,C.model)};function N(C,x){if(x==null||x.type&&x.type!=="record"||typeof C!="object"||C==null)return C;const P={};for(const A of x.fields){const B=Object.keys(A)[0],v=A[B];v.type==="record"?P[B]=N(C[B],v):v.type==="array"&&Array.isArray(C[B])&&v.elements.type==="record"?P[B]=C[B].map(w=>N(w,v.elements)):P[B]=C[B]}return P}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:lo,pruneRecord:N}},useExperimentalFreeForms:md,useProvideExperimentalFreeForms:K0},ct="/v2/control-planes/{controlPlaneId}/core-entities",yt="/{workspace}",Ke={list:{konnect:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},kongManager:{all:`${yt}/plugins`,forEntity:`${yt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ct}/v1/available-plugins`,streamingCustomPlugins:`${ct}/custom-plugins`,schemaCustomPluginItem:`${ct}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ct}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${yt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},edit:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ct}/{resourceEndpoint}`,edit:`${ct}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ct}/{entity}/{id}`,entityGetAll:`${ct}/{entity}`,entityPeek:`${ct}/{entity}?size={amount}`},kongManager:{create:{all:`${yt}/plugins`,forEntity:`${yt}/{entityType}/{entityId}/plugins`},edit:{all:`${yt}/plugins/{id}`,forEntity:`${yt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${yt}/schemas/plugins/{plugin}`,credential:{create:`${yt}/{resourceEndpoint}`,edit:`${yt}/{resourceEndpoint}/{id}`},credentialSchema:`${yt}/schemas/{plugin}`,entityGetOne:`${yt}/{entity}/{id}`,entityGetAll:`${yt}/{entity}`}},item:{konnect:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${yt}/plugins/{id}`,forEntity:`${yt}/{entityType}/{entityId}/plugins/{id}`}}},G0={key:0},q0=Ae(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ve.usePluginHelpers(),{i18n:{t:r}}=Ve.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",G0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);function qa(e){return e.map(n=>({value:n,label:`${n}`}))}const za="*",Fn="$",Ha=".";function Ze(...e){return e.join(Ha)}function Ya(...e){return Ze(Fn,...e)}function yd(e){return e.startsWith(Ze(Fn,""))}function Rt(e){return e.split(Ha).filter(n=>n!=="")}function Ho(e){const n=Rt(e);return n[n.length-1]}function z0(e){return e.startsWith(Fn)&&(e=Ze(...Rt(e).slice(1))),e}function H0(e,n){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return n.filter(a=>{const l=a.model.match(o);return l&&!Object.keys(e).includes(l[0])}).map(a=>{const l=a.label.match(r);return{label:l?l[0]:a.label,key:a.model,value:"N/A",type:"text"}})}function Y0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function _d(e,n){return[...e].sort((o,r)=>{const i=Object.keys(o)[0],a=Object.keys(r)[0],l=n.indexOf(i),s=n.indexOf(a);return l===-1&&s===-1?0:l===-1?1:s===-1?-1:l-s})}function bd(e,n){const o=new Map;e.forEach(d=>{const f=Object.keys(d)[0];o.set(f,d)});const r=new Map;n.forEach((d,f)=>{d.forEach((u,p)=>{r.has(u)||r.set(u,[]),r.get(u).push({bundleIndex:f,position:p})})});const i=new Set,a=[],l=new Set,s=d=>{const f=r.get(d);if(!f)return!0;for(const{bundleIndex:u,position:p}of f){const m=n[u];for(let g=0;g<p;g++){const _=m[g];if(o.has(_)&&!i.has(_))return!1}}return!0},c=d=>{if(i.has(d))return;const f=o.get(d);if(!f)return;a.push(f),i.add(d),l.delete(d);const u=r.get(d);if(u)for(const{bundleIndex:m,position:g}of u){const _=n[m];for(let h=g+1;h<_.length;h++){const y=_[h];if(!i.has(y)){const k=o.get(y);k&&(a.push(k),i.add(y),l.delete(y))}}}const p=Array.from(l);for(const m of p)s(m)&&c(m)};for(const d of e){const f=Object.keys(d)[0];i.has(f)||(s(f)?c(f):l.add(f))}return a}const[W0,X0]=He.createInjectionState(function(n){const{schema:o,propsData:r,onChange:i,propsRenderRules:a,propsConfig:l}=n,s=Q0(o),c=new Map,d=t.reactive({}),f=t.toRef(()=>l??{}),u=t.useSlots();t.provide(Wa,en(u,"default",Un));const{useCurrentRules:p,createComputedRules:m,hiddenPaths:g,isFieldHidden:_}=ak(()=>i==null?void 0:i(E())),h=p({fieldPath:Fn,rules:a,parentValue:d});function y(N){Object.keys(d).forEach(C=>{delete d[C]}),Object.assign(d,N)}function k(N){let C;!N||!b(t.toValue(N))?C=s.getDefault():C=Dn(t.toValue(N)),Fr(f.value.prepareFormData)?y(f.value.prepareFormData(C)):y(C)}function b(N){return Fr(f.value.hasValue)?f.value.hasValue(N):!!N}function E(){const N=t.toValue(d),C=Dn(N);if(g.value.size>0)for(const x of g.value)ud(C,Rt(x),s.getEmptyOrDefault(x));return C}return t.watch(d,()=>{i==null||i(E())},{deep:!0}),t.watch(()=>r==null?void 0:r.value,N=>{k(N)},{deep:!0,immediate:!0}),{formData:d,schema:o,config:f,fieldRendererRegistry:c,setValue:y,useCurrentRenderRules:p,rootRenderRules:h,createComputedRenderRules:m,...s,getValue:E,isFieldHidden:_}}),wd=Symbol("free-form-field-path"),Wa=Symbol("free-form-field-renderer-slots"),kd=Symbol("free-form-field-reset-label-path-setting"),Un="free-form-field-renderers-slot",Z0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function J0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,Xa(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Za(e,n)),o}function Xa(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?Ze(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=Xa(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Za(a,l);Object.assign(o,s)}}return o}function Za(e,n=""){const o={};if(e.elements){const r=e.elements,i=Ze(n,za);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=Xa(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Za(r,i);Object.assign(o,a)}}return o}function Zr(e){const n=Rt(e).map(o=>/^\d+$/.test(o)?za:o);return Ze(...n)}function Q0(e){const n=t.toValue(e),o=t.computed(()=>n?J0(n):{});function r(p){var m;return p==null?n:(m=o.value)==null?void 0:m[Zr(p)]}function i(p,m=!1){const g=r(p);return g?g.default!==void 0?g.default:m||g.required?g.type==="record"?a(g,p):g.type==="array"?[]:g.type==="map"?{}:null:null:null}function a(p,m){const g={};if(Array.isArray(p.fields))for(const _ of p.fields){const h=Object.keys(_)[0],y=m?`${m}.${h}`:h,k=i(y,!1);k!==void 0&&(g[h]=k)}return g}function l(p){return p?i(p,!0):a(r(),"")}function s(p){const m=r(p),g=m!=null&&m.description?Br.marked.parse(m.description,{async:!1}):void 0;return{...Z0,"data-testid":`ff-label-${p}`,info:g}}function c(p){var g;const m=r(p);return qa((m==null?void 0:m.one_of)||((g=m.elements)==null?void 0:g.one_of)||[])}function d(p){const m=r(p),g=m==null?void 0:m.default;let _=null;if((m==null?void 0:m.type)==="foreign"&&(g!=null&&g.id))_=g.id;else{if(g==null||typeof g=="object"||g==="")return null;if(Array.isArray(g)){if(g.length===0)return null;_=g.join(", ")}else _=g.toString()}return`Default: ${_}`}function f(){return o.value}function u(p){const m=r(p);return(m==null?void 0:m.required)?l(p):null}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d,getEmptyOrDefault:u}}function Me(){const e=X0();if(!e)throw new Error("useFormShared() called without provider.");return e}const Cd=e=>{const n=t.inject(wd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!yd(r)&&n.value&&(i=Ze(n.value,r)),yd(r)&&(i=i.slice(Ya("").length)),i});return t.provide(wd,o),o},ek=e=>{const{getSchema:n,fieldRendererRegistry:o}=Me(),{default:r,...i}=t.useSlots(),a=t.inject(Wa),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==Un&&f!=="item").reduce((f,u)=>{const p=Zr(Ze(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(Wa,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[Zr(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},tk={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",https:"HTTPS",api:"API",uri:"URI",jq:"jq",vpn:"VPN",id:"ID",llm:"LLM",tls:"TLS",tcp:"TCP",udp:"UDP",lua:"Lua",jwt:"JWT",aws:"AWS",gcp:"GCP",azure:"Azure"};function nk(e){return tk[e.toLocaleLowerCase()]??e}function ok(e,n){const o=t.inject(kd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Ze(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?Ze(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),t.provide(kd,l),a}function Ed(e){return Rt(e).map(o=>o.split("_").map(nk).join(" ")).map(lb).join(" › ")}function rk(e,n){const o=t.toValue(e),r=Ho(o),{config:i,getSchema:a}=Me(),l=ok(r,n),s=Nd(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":Ed(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function Pt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Me(),a=t.toValue(e),l=t.toValue(n),s=rk(e,t.toRef(()=>t.toValue(n).resetLabelPath));return t.computed(()=>{var c;return{...l,placeholder:l.placeholder??r(a)??void 0,labelAttributes:l.labelAttributes??o(a),label:l.label??s.value,required:l.required??((c=i(a))==null?void 0:c.required)}})}function ik(e){var r;const n=Rt(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Ze(o.parent.path,i):i,o={parent:o}}return o}function Nd(e){return t.computed(()=>ik(t.toValue(e)))}function xd(e){const{formData:n}=Me(),o=Cd(e);return{value:t.computed({get:()=>Pa(n,Rt(o.value)),set:i=>ud(n,Rt(o.value),i)})}}function _t(e){const{getSchema:n,isFieldHidden:o,getEmptyOrDefault:r}=Me(),i=Cd(e),a=ek(i),{value:l}=xd(e),s=t.computed(()=>n(i.value)),c=t.computed(()=>o(i.value)),d=t.computed(()=>r(i.value));return s.value?{schema:s,path:i,renderer:a,value:l,ancestors:Nd(i),hide:c,emptyOrDefaultValue:d,error:null}:{error:new Error(`path '${i.value}' is not found in schema.`)}}function Yo(e){const{getSchema:n}=Me(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function Sd(e,n){const o=new WeakMap,r=new Map;function i(){return Xr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}function ak(e){const n=t.ref({}),o=t.ref(new Set);function r(g,_){const h=g.map(k=>Rt(k).length),y=h[0];if(!h.every(k=>k===y)){const k=g.map((b,E)=>` - '${b}' is at level ${h[E]}`).join(`
14
14
  `);throw new Error(`${_}: Fields must be at the same level. Found mixed levels:
15
- ${k}`)}}function i(g){for(const[_,y]of Object.entries(g)){if(!y.bundles)continue;for(const k of y.bundles)if(new Set(k).size!==k.length){const E=k.filter((N,C)=>k.indexOf(N)!==C);throw new Error(`Self-cycle detected in bundle: field '${E[0]}' appears multiple times in [${k.join(", ")}]`)}const h=new Map;for(const k of y.bundles)for(let b=1;b<k.length;b++){const E=k[b],N=k[b-1];h.has(E)||h.set(E,new Set),h.get(E).add(N)}for(const k of h.keys()){let b=function(C){if(N.includes(C)){const I=[...N,C].join(" -> ");throw new Error(`Circular bundle detected in path '${_}':
16
- ${I}`)}if(E.has(C))return;E.add(C),N.push(C);const x=h.get(C);if(x)for(const I of x)b(I);N.pop()};const E=new Set,N=[];b(k)}}}function a(g){for(const[_,y]of Object.entries(g))if(y.dependencies)for(const h of Object.keys(y.dependencies)){let k=function(N){if(E.includes(N)){const x=[...E,N].join(" -> ");throw new Error(`Circular dependency detected in path '${_}':
17
- ${x}`)}if(b.has(N))return;b.add(N),E.push(N);const C=y.dependencies[N];if(C){const[x]=C;y.dependencies[x]&&k(x)}E.pop()};const b=new Set,E=[];k(h)}}function l(g,_){const y=g.map(k=>_?Ze(_,k):k),h=Rt(y[0]);return h.pop(),Ze(...h)}function s(g,_){if(!_)return g;const y=`${_}${Ga}`;return g.startsWith(y)?g.slice(y.length):g}function c(g){const _=Rt(g);return _.pop(),Ze(..._)}const d=t.computed(()=>{const g={};for(const[_,y]of Object.entries(n.value)){const h=_===Fn?"":_;if(y.bundles)for(const k of y.bundles){if(k.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${k.length} field(s) in bundle: [${k.join(", ")}]`);const b=k.map(C=>h?Ze(h,C):C);r(b,`Bundle [${k.join(", ")}]`);const E=l(k,h)||Fn;g[E]||(g[E]={}),g[E].bundles||(g[E].bundles=[]);const N=b.map(C=>s(C,E));g[E].bundles.push(N)}if(y.dependencies)for(const[k,[b,E]]of Object.entries(y.dependencies)){const N=h?Ze(h,k):k,C=h?Ze(h,b):b;r([N,C],`Dependency '${k}' -> '${b}'`);const x=c(N)||Fn;g[x]||(g[x]={}),g[x].dependencies||(g[x].dependencies={});const I=s(N,x),A=s(C,x);g[x].dependencies[I]=[A,E]}}return i(g),a(g),g});function f(g){if(!g)return d.value;const _=Hr(g);return d.value[_]}function u(g){let _=!1;return t.computed(()=>{if(_)return;const y=t.toValue(g);try{return f(y)}catch(h){_=!0,console.error(`Failed to get render rules for path: \`${y}\`,`,h instanceof Error?h.message:"");return}})}function p(g){const{fieldPath:_,rules:y,parentValue:h,omittedFields:k}=g;t.watch([()=>t.toValue(y),()=>t.toValue(_)],([E,N],[,C])=>{E?n.value[N]=E:delete n.value[N],C&&C!==N&&delete n.value[C]},{immediate:!0,deep:!0});const b=u(_);return t.watch([()=>t.toValue(h),()=>{var E;return(E=t.toValue(b))==null?void 0:E.dependencies},()=>t.toValue(_),()=>t.toValue(k)],([E,N,C,x])=>{!N||!E||Object.entries(N).forEach(([I,[A,B]])=>{if(x!=null&&x.includes(I))return;const v=va(E,A),w=C?K0(Ze(C,I)):I;if(Mn(v,B)){o.value.delete(w),e();return}o.value.add(w),e()})},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{const E=t.toValue(_);delete n.value[E]}),b}function m(g){return o.value.has(g)}return{useCurrentRules:p,createComputedRules:u,hiddenPaths:t.readonly(o),isFieldHidden:m}}const ok="__request_callout_";function Sd(){return zr(ok)}const Kn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=t.useAttrs(),i=n,a=t.computed(()=>o.multiline?Oe.KTextArea:Oe.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{config:c}=Me(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,g)=>({name:g,fn:t.withCtx(_=>[t.renderSlot(u.$slots,g,t.normalizeProps(t.guardReactiveProps(_)))])}))]),1040,["character-limit","model-value","resizable"]))}}),rk=["innerHTML"],fo=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=$e(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=_t(t.toRef(()=>e.name)),d=Pt(c.path,t.toRef({...i,...o})),f=l==null?void 0:l.value;function u(k){f!==void 0&&k===""&&k!==f?(l.value=null,a("update:modelValue",null)):(l.value=k.trim(),a("update:modelValue",k.trim()))}const p=t.computed(()=>{var k;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((k=c.schema)==null?void 0:k.value).encrypted}),m=t.inject(De.AUTOFILL_SLOT,void 0),g=t.computed(()=>{var k;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((k=c.schema.value)!=null&&k.referenceable)}),_=t.computed(()=>({referenceable:g.value})),y=Ho(c.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:zo(e.name)==="name");return(k,b)=>{var N;const E=t.resolveComponent("KAlert");return c.error?(t.openBlock(),t.createBlock(E,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},k.$attrs)),[t.createVNode(Kn,t.mergeProps({...t.unref(d),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":h.value,"data-autofocus":t.unref(y),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,"onUpdate:modelValue":u}),t.createSlots({_:2},[(N=t.unref(d).labelAttributes)!=null&&N.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(k.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,rk)],!0)]),key:"0"}:void 0,!(e.multiline&&e.error)&&k.$slots.help?{name:"help",fn:t.withCtx(()=>[t.renderSlot(k.$slots,"help",{},void 0,!0)]),key:"1"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(m)&&g.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(m)),{key:0,schema:_.value,update:u,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),g.value&&!t.unref(m)?(t.openBlock(),t.createBlock(E,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${c.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16)),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-e685373f"]]),ik=["innerHTML"],Yr=Ae(t.defineComponent({__name:"BooleanField",props:{labelAttributes:{},modelValue:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,hide:i,...a}=_t(t.toRef(()=>e.name)),l=n,s=d=>{r.value=d,l("update:modelValue",d)},c=Pt(a.path,o);return(d,f)=>{var p;const u=t.resolveComponent("KAlert");return a.error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:a.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(Oe.KCheckbox),t.mergeProps({key:1},t.unref(c),{class:"ff-boolean-field","data-testid":`ff-${a.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":s}),t.createSlots({_:2},[(p=t.unref(c).labelAttributes)!=null&&p.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,ik)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"])),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-b4b15b33"]]),vd=Ae(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(g=>[g,m.getPropertyValue(g)]))}function a(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const g=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),ak={class:"ff-entity-checks-list"},Ad=Ae(t.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(e){const{i18n:{t:n}}=Ve.useI18n(),o=t.computed(()=>{if(!Array.isArray(e.entityChecks)||e.entityChecks.length===0)return null;const a=[],l=[{key:"at_least_one_of",i18nKey:"plugins.form.field_rules.at_least_one_of"},{key:"mutually_required",i18nKey:"plugins.form.field_rules.mutually_required"},{key:"mutually_exclusive",i18nKey:"plugins.form.field_rules.mutually_exclusive"}];for(const s of e.entityChecks)for(const{key:c,i18nKey:d}of l)if(c in s){const f=s[c];Array.isArray(f)&&f.length>0&&i(f)&&a.push(n(d,{parameters:r(f)}));break}return a.length?a:null});function r(a){return a.map(Cd).join(", ")}function i(a){return Array.isArray(e.omittedFields)&&e.omittedFields.length>0?a.filter(s=>!e.omittedFields.includes(s)).length>0:!0}return(a,l)=>{const s=t.resolveComponent("KAlert");return o.value?(t.openBlock(),t.createBlock(s,{key:0,"data-testid":"ff-entity-checks-alert"},{default:t.withCtx(()=>[t.createElementVNode("ul",ak,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.value,c=>(t.openBlock(),t.createElementBlock("li",{key:c,"data-testid":"ff-entity-check-item"},t.toDisplayString(c),1))),128))])]),_:1})):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-0b5baf37"]]),lk=["data-testid"],sk=["data-testid"],ck=["data-testid"],dk=["innerHTML"],uk={class:"ff-object-field-actions"},fk=["data-testid"],Ct=Ae(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{},renderRules:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,hide:r,...i}=_t(t.toRef(n,"name")),{getSchema:a,getDefault:l,useCurrentRenderRules:s}=Me(),c=s({fieldPath:i.path,rules:t.toRef(n,"renderRules"),omittedFields:t.toRef(()=>e.omit),parentValue:o}),d=t.useModel(e,"added"),f=t.useModel(e,"expanded"),u=t.computed(()=>_.value&&(e.collapsible?f.value??e.defaultExpanded:!1)),p=t.computed(()=>{var b,E;if((b=i.ancestors)!=null&&b.value){const N=i.ancestors.value.parent;if(N!=null&&N.path)return((E=a(N.path))==null?void 0:E.type)==="array"}return!1}),m=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:p.value?"reset":"inherit"),g=Pt(i.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:m.value}))),_=t.computed(()=>g.value.required?!0:d.value??e.defaultAdded),y=t.computed(()=>e.asChild!==void 0?e.asChild:p.value),h=t.computed(()=>{var E;let b=i.schema.value.fields;return e.omit&&(b=b.filter(N=>!e.omit.includes(Object.keys(N)[0]))),e.fieldsOrder?yd(b,e.fieldsOrder):((E=c.value)!=null&&E.bundles&&(b=_d([...b],c.value.bundles)),b)});function k(){d.value=!d.value,d.value?o.value=l(i.path.value):o.value=null}return t.watch(_,b=>{e.collapsible&&(f.value=b)}),t.onBeforeMount(()=>{d.value=!!(o!=null&&o.value)}),(b,E)=>{var C;const N=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(b.$slots[t.unref(Un)]))),i.error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):y.value?t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},b.$attrs,{"data-testid":`ff-object-${i.path.value}`}),[t.renderSlot(b.$slots,"default",{},()=>{var x;return[t.createVNode(Ad,{"entity-checks":(x=i.schema.value)==null?void 0:x.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,I=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(I)[0],name:Object.keys(I)[0]},null,8,["name"]))),128))]},!0)],16,lk)),[[t.vShow,!t.unref(r)]]):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!u.value}],"data-testid":`ff-object-${i.path.value}`},b.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${i.path.value}`},[t.createVNode(t.unref(Oe.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${i.path.value}`},{...t.unref(g),required:!1},{"tooltip-attributes":t.unref(g).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(g).label)+" ",1)]),_:2},[(C=t.unref(g).labelAttributes)!=null&&C.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(g).labelAttributes.info},null,8,dk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",uk,[e.collapsible&&_.value?(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${u.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${i.path.value}`,icon:"",onClick:E[0]||(E[0]=x=>f.value=!u.value)},{default:t.withCtx(()=>[_.value?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(g).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${_.value?"remove":"add"}`),"data-testid":`ff-object-${_.value?"remove":"add"}-btn-${i.path.value}`,icon:"",onClick:k},{default:t.withCtx(()=>[_.value?(t.openBlock(),t.createBlock(t.unref(Ee.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(Ee.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,ck),t.createVNode(vd,null,{default:t.withCtx(()=>[u.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${i.path.value}`},[t.renderSlot(b.$slots,"default",{},()=>{var x;return[t.createVNode(Ad,{"entity-checks":(x=i.schema.value)==null?void 0:x.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,I=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(I)[0],name:Object.keys(I)[0]},null,8,["name"]))),128))]},!0)],8,fk)):t.createCommentVNode("",!0)]),_:3})],16,sk)),[[t.vShow,!t.unref(r)]])],64)}}}),[["__scopeId","data-v-161e818f"]]),pk={key:1,class:"ff-number-field-wrapper"},mk=["innerHTML"],jn=Ae(t.defineComponent({__name:"NumberField",props:{showVaultSecretPicker:{type:Boolean,default:()=>{}},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["showVaultSecretPicker","name"]),{value:r,hide:i,...a}=_t(t.toRef(()=>e.name)),l=Pt(a.path,o),{i18n:s}=$e(),c=t.computed(()=>{var C;const b=(C=a.schema)==null?void 0:C.value;if(typeof b.gt=="number")return{min:b.type==="integer"?b.gt+1:b.gt};const[E,N]=b.between??[];return{min:o.min??E,max:o.max??N}}),d=n,f=r.value,u=t.computed(()=>{const b=r==null?void 0:r.value;if(b==null||b==="")return"";if(h.value)return`${b}`;const E=typeof b=="number"?b:Number(b);return Number.isFinite(E)?`${E}`:""});function p(b){const E=m(b);f!==void 0&&b===""&&E!==f?(r.value=null,d("update:modelValue",null)):(r.value=E,d("update:modelValue",E))}function m(b){if(b==="")return null;const E=b.trim();if(E==="")return null;const N=Number(E);return Number.isFinite(N)?N:h.value?b:null}const g=Ho(a.ancestors),_=t.inject(De.AUTOFILL_SLOT,void 0),y=t.computed(()=>({referenceable:h.value})),h=t.computed(()=>{var b;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((b=a.schema.value)!=null&&b.referenceable)}),k=t.computed(()=>h.value?"text":"number");return(b,E)=>{var C;const N=t.resolveComponent("KAlert");return a.error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:a.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",pk,[t.createVNode(Kn,t.mergeProps({class:"ff-number-field"},{...t.unref(l),min:c.value.min,max:c.value.max},{"data-autofocus":t.unref(g),"data-testid":`ff-${a.path.value}`,"model-value":u.value,type:k.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(C=t.unref(l).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,mk)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value","type"]),t.unref(_)&&h.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:y.value,update:p,value:t.unref(r)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),h.value&&!t.unref(_)?(t.openBlock(),t.createBlock(N,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${a.path.value}`,message:t.unref(s).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],512)),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-709884eb"]]),gk=["innerHTML"],Tt=Ae(t.defineComponent({__name:"EnumField",props:{labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean},name:{}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Me(),{value:a,hide:l,...s}=_t(t.toRef(()=>e.name)),c=Pt(s.path,r),d=t.computed(()=>e.items?e.items:s.path?i(s.path.value):[]),f=t.computed(()=>{var p;return e.multiple!==void 0?e.multiple:((p=s.schema.value)==null?void 0:p.type)==="set"}),u=t.computed(()=>f.value?Oe.KMultiselect:Oe.KSelect);return(p,m)=>{var _;const g=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(g,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(u),t.mergeProps({key:1},{...r,...t.unref(c)},{modelValue:t.unref(a),"onUpdate:modelValue":[m[0]||(m[0]=y=>t.isRef(a)?a.value=y:null),m[1]||(m[1]=y=>o("update",y))],class:"ff-enum-field",clearable:!t.unref(c).required,"data-testid":`ff-${s.path.value}`,items:d.value,"kpop-attributes":{"data-testid":`${s.path.value}-items`}}),t.createSlots({_:2},["tooltip"in p.$slots||(_=t.unref(c).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,gk)],!0)]),key:"0"}:void 0,p.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:y})=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(y)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"])),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-a339a451"]]);function Wr(e,n,o=!0){const{value:r,emptyOrDefaultValue:i,...a}=_t(t.toRef(e,"name")),l=Pt(a.path,t.toRef({...e,...t.useAttrs()})),s=t.ref(f(e.initialValue??t.toValue(r),e.keyOrder));function c(){return zr("ff-kv-field-")}function d(h,k,b){const E=b.indexOf(h),N=b.indexOf(k);return E===-1&&N===-1?0:E===-1?1:N===-1?-1:E-N}function f(h,k){if(!h)return[];const b=Object.entries(h).map(([E,N])=>({id:c(),key:E,value:N}));return k&&b.sort((E,N)=>d(E.key,N.key,k)),b}function u(){const h={id:c(),key:e.defaultKey||"",value:e.defaultValue||""};return s.value.push(h),h}function p(h){const k=s.value.findIndex(b=>b.id===h);k!==-1&&s.value.splice(k,1)}function m(){s.value=f(e.initialValue,e.keyOrder)}function g(h){s.value=f(h,e.keyOrder)}let _=r==null?void 0:r.value;t.watch(s,h=>{if(!o)return;const k=h.length?Object.fromEntries(h.map(({key:b,value:E})=>[b,E]).filter(([b])=>b)):i==null?void 0:i.value;k===null&&r.value!==null&&typeof r.value=="object"&&Object.keys(r.value).length===0||(r.value=k,_=k,n("change",k))},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,h=>{Mn(h,_)||y(h)},{deep:!0});function y(h){if(!h){s.value=[];return}const k=new Map;s.value.forEach(C=>{C.key&&k.set(C.key,C)});const b=[],E=Object.keys(h);(e.keyOrder?[...E].sort((C,x)=>d(C,x,e.keyOrder)):E).forEach(C=>{const x=h[C];if(k.has(C)){const I=k.get(C);I.value=x,b.push(I)}else b.push({id:c(),key:C,value:x})}),s.value=b}return{entries:s,addEntry:u,removeEntry:p,reset:m,setValue:g,labelAttrs:l,field:a}}const hk=["data-testid"],yk=["data-testid"],_k=["innerHTML"],bk=["data-testid"],wk=Ae(t.defineComponent({__name:"KeyValueField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{},name:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=$e(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=Wr(r,a),m=t.useTemplateRef("root");async function g(N,C="key"){var x;m.value&&(await t.nextTick(),(x=m.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function _(){s();const N=l.value.findIndex(({key:C})=>!C);g(N===-1?l.value.length-1:N)}function y(N){N===l.value.length-1&&s(),g(N+1)}const h=t.inject(De.AUTOFILL_SLOT,void 0),k=t.computed(()=>{var N,C;return e.showVaultSecretPicker??!!((C=(N=p.schema.value)==null?void 0:N.values)!=null&&C.referenceable)}),b=t.computed(()=>({referenceable:k.value}));function E(N,C){l.value[N].value=C}return n({reset:d,setValue:f}),(N,C)=>{var B;const x=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),A=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(I,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(B=t.unref(u).labelAttributes)!=null&&B.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,_k)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(A,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["data-testid"])],8,yk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(v,w)=>(t.openBlock(),t.createElementBlock("div",{key:v.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${w}`},[t.createVNode(Kn,{modelValue:v.key,"onUpdate:modelValue":M=>v.key=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":w,"data-testid":`ff-key-${t.unref(p).path.value}.${w}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(M=>g(w,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Kn,{modelValue:v.value,"onUpdate:modelValue":M=>v.value=M,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${w}`,"data-value-input":w,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(M=>y(w),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(h)&&k.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(h)),{key:0,schema:b.value,update:M=>E(w,M),value:v.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),k.value&&!t.unref(h)?(t.openBlock(),t.createBlock(x,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode(A,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${w}`,icon:"",onClick:M=>t.unref(c)(v.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,bk))),128))],8,hk)),[[t.vShow,!t.unref(p).hide.value]])}}}),[["__scopeId","data-v-6f20a032"]]),kk=["data-testid"],Ck=["innerHTML"],Wa=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{labelAttributes:{},multiline:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=_t(t.toRef(()=>e.name)),c=Pt(s.path,t.toRef({...r,...o})),d=t.computed(()=>{var y,h;return((h=(y=s.schema)==null?void 0:y.value)==null?void 0:h.len_min)&&s.schema.value.len_min>0}),f=t.ref("");function u(y){return y.map(h=>h.trim()).filter(Boolean).join(", ")}function p(y){return y.trim().split(",").map(h=>h.trim()).filter(Boolean)}function m(y){f.value=y;const h=p(y),k=!h.length&&d.value?null:h;a.value=k,i("update:modelValue",k)}const g=Ho(s.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:zo(e.name)==="name");return t.watch(a,y=>{const h=y?u(y):"";u(p(f.value))!==h&&(f.value=h)},{immediate:!0}),(y,h)=>{var b;const k=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(k,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${s.path.value}`},[t.createVNode(Kn,t.mergeProps(t.unref(c),{class:"ff-tag-field","data-1p-ignore":_.value,"data-autofocus":t.unref(g),"data-testid":`ff-${s.path.value}`,"model-value":f.value??"","onUpdate:modelValue":m}),t.createSlots({_:2},[(b=t.unref(c).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Ck)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,kk)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-5195e71a"]]),Ek=["data-testid"],Nk=["innerHTML"],xk=Ae(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{labelAttributes:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=_t(t.toRef(()=>e.name)),c=Pt(s.path,t.toRef({...r,...o})),d=t.ref("");function f(m){d.value=m;let g=m||null;try{const _=JSON.parse(m);_&&typeof _=="object"&&(g=_)}catch{}a.value=g,i("update:modelValue",g)}const u=Ho(s.ancestors),p=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:zo(e.name)==="name");return t.watch(a,m=>{if(m&&typeof m=="object"){try{const g=JSON.parse(d.value);Mn(g,m)||(d.value=JSON.stringify(m,null,2))}catch{d.value=JSON.stringify(m,null,2)}return}d.value=m||""},{immediate:!0}),(m,g)=>{var y;const _=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${s.path.value}`},[t.createVNode(Kn,t.mergeProps(t.unref(c),{class:"ff-json-field","data-1p-ignore":p.value,"data-autofocus":t.unref(u),"data-testid":`ff-${s.path.value}`,"model-value":d.value??"",multiline:"","onUpdate:modelValue":f}),t.createSlots({_:2},[(y=t.unref(c).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(m.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Nk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Ek)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-02205863"]]),Sk=["innerHTML"],vk=Ae(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=$e(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=_t(t.toRef(()=>e.name));if(c.error)throw new Error(c.error.message);const d=Pt(c.path,t.toRef({...i,...o})),f=l.value?l.value.id:null,u=t.computed(()=>{var y;return d.value.placeholder?d.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((y=c.schema.value)==null?void 0:y.reference)??"entity"})}),p=t.ref(f??"");function m(y){f!==void 0&&y===""&&y!==f?(l.value=null,a("update:modelValue",null)):(l.value={id:y.trim()},a("update:modelValue",l.value))}const g=Ho(c.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:zo(e.name)==="name");return(y,h)=>{var k;return t.withDirectives((t.openBlock(),t.createBlock(Kn,t.mergeProps(t.unref(d),{class:"ff-foreign-field","data-1p-ignore":_.value,"data-autofocus":t.unref(g),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":p.value,placeholder:u.value,"onUpdate:modelValue":m}),t.createSlots({_:2},[(k=t.unref(d).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Sk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-8626d32b"]]),mt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=_t(t.toRef(n,"name")),r=t.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?Tt:fo;case"boolean":return"one_of"in o.schema.value?Tt:Yr;case"number":case"integer":return"one_of"in o.schema.value?Tt:jn;case"array":return Yo;case"set":return G0(o.schema)?Wa:Tt;case"record":return Ct;case"map":return wk;case"json":return xk;case"foreign":return vk;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref(Un)]))),t.unref(o).error?(t.openBlock(),t.createBlock(l,{key:0,appearance:"danger",message:t.unref(o).error.message},null,8,["message"])):t.unref(o).renderer.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).renderer.value),{key:1,name:qa(t.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,name:qa(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),Ak=["data-testid"],Ik=["data-testid"],Pk=["innerHTML"],Tk=["data-testid"],Ok={class:"ff-array-field-item-content"},$k=["data-index","data-testid"],Yo=Ae(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var x;t.useCssVars(I=>({v547e409b:C.value}));const o=e,r=n,{i18n:{t:i}}=$e(),{getDefault:a,getSchema:l}=Me(),{value:s,hide:c,...d}=_t(t.toRef(o,"name")),f=Pt(d.path,t.toRef({...o,...t.useAttrs()})),u=t.computed(()=>{if(!d.path)throw new Error("Field path is required for sub-schema retrieval");const I=l(d.path.value);if(!I)throw new Error(`Schema not found for path: ${d.path.value}`);return I.elements}),p=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:m}=xd("ff-array-field",p),g=t.computed(()=>o.appearance==="card"?Oe.KCard:"div");function _(I,A){return typeof o.itemLabel=="function"?o.itemLabel(I,A):o.itemLabel||f.value.label||`Item #${A}`}const y=t.computed(()=>p.value.map((I,A)=>({hash:`#${m(I,A)}`,title:""}))),h=t.ref((x=y.value[0])==null?void 0:x.hash),k=async()=>{var A;const I=a(Ze(d.path.value,ja));Array.isArray(s.value)||(s.value=[]),s.value.push(I),r("add"),o.appearance==="tabs"&&(await t.nextTick(),h.value=(A=y.value[y.value.length-1])==null?void 0:A.hash),await t.nextTick(),N(p.value.length+1)},b=async I=>{var A;Array.isArray(s.value)&&s.value.splice(I,1),r("remove",I),o.appearance==="tabs"&&(h.value=(A=y.value[Math.max(0,I-1)])==null?void 0:A.hash)},E=t.useTemplateRef("root");function N(I){var B;if(!E.value)return;const A=Math.max(0,Math.min(I,p.value.length-1));(B=E.value.querySelector(`[data-index="${A}"] [data-autofocus]`))==null||B.focus()}const C=t.computed(()=>{const{appearance:I,stickyTabs:A}=o;return I!=="tabs"||A==null||A===!1?null:typeof A=="number"?`${o.stickyTabs}px`:typeof A=="string"?A:"0"});return(I,A)=>{var S;const B=t.resolveComponent("KAlert"),v=t.resolveComponent("KLabel"),w=t.resolveComponent("KButton"),M=t.resolveComponent("KTabs");return d.error?(t.openBlock(),t.createBlock(B,{key:0,appearance:"danger",message:d.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:E,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.stickyTabs}]),"data-testid":`ff-array-${d.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${d.path.value}`},[t.createVNode(v,t.mergeProps({class:"ff-array-field-label"},t.unref(f),{"data-testid":`ff-label-${d.path.value}`,"tooltip-attributes":t.unref(f).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(f).label)+" ",1)]),_:2},[(S=t.unref(f).labelAttributes)!=null&&S.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(I.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(f).labelAttributes.info},null,8,Pk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(w,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${d.path.value}`,icon:"",onClick:k},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Ik),p.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${d.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(F,O)=>(t.openBlock(),t.createBlock(t.unref(g),{key:t.unref(m)(F,O),class:"ff-array-field-item","data-index":O,"data-testid":`ff-array-item-${d.path.value}.${O}`},{default:t.withCtx(()=>[t.createElementVNode("div",Ok,[I.$slots.item?t.renderSlot(I.$slots,"item",{key:0,fieldName:String(O),index:O},void 0,!0):t.createCommentVNode("",!0),u.value.type==="array"&&u.value.elements.type==="string"?(t.openBlock(),t.createBlock(Wa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(O)},null,8,["help","name"])):(t.openBlock(),t.createBlock(mt,{key:2,name:String(O)},null,8,["name"]))]),t.createVNode(w,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${d.path.value}.${O}`,icon:"",onClick:j=>b(O)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Tk)):(t.openBlock(),t.createBlock(t.unref(Oe.KCard),{key:1,"data-testid":`ff-array-tab-container-${d.path.value}`},{default:t.withCtx(()=>[t.createVNode(M,{modelValue:h.value,"onUpdate:modelValue":A[0]||(A[0]=F=>h.value=F),"data-testid":`ff-array-tabs-${d.path.value}`,tabs:y.value},t.createSlots({_:2},[t.renderList(p.value,(F,O)=>({name:t.unref(m)(F,O),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":O,"data-testid":`ff-array-item-${d.path.value}.${O}`},[I.$slots.item?t.renderSlot(I.$slots,"item",{key:0,fieldName:String(O),index:O},void 0,!0):(t.openBlock(),t.createBlock(mt,{key:1,name:String(O)},null,8,["name"]))],8,$k)])})),t.renderList(p.value,(F,O)=>({name:`${t.unref(m)(F,O)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_(F,O))+" ",1),t.createVNode(w,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${d.path.value}.${O}`,icon:"",onClick:t.withModifiers(j=>b(O),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,Ak)),[[t.vShow,!t.unref(c)]])}}}),[["__scopeId","data-v-fd8cf789"]]),Wo=Symbol(),Bk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Me(),r=t.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[n.index])==null?void 0:c.name)})}),i=t.computed(()=>r.value.map(({[Wo]:l,name:s})=>({value:l,label:s}))),a=t.computed(()=>o.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(t.openBlock(),t.createBlock(Ct,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(Tt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(Ct,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(Tt,t.mergeProps(d,{items:t.unref(Ka)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Vk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Me();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Wo]=Sd())}return(r,i)=>(t.openBlock(),t.createBlock(Yo,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:t.withCtx(({index:a,fieldName:l})=>[t.createVNode(Bk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Xr=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=Me();return o&&r.set(n.match,o),(i,a)=>null}}),bt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{},renderRules:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),{getSchema:a,formData:l,setValue:s,getValue:c,rootRenderRules:d}=q0({schema:e.schema,propsData:t.computed(()=>e.data),propsConfig:e.config,propsRenderRules:t.toRef(()=>e.renderRules),onChange:u=>r("change",u)}),f=t.computed(()=>{var m;const{fields:u}=a();let p=[...u];return e.fieldsOrder?yd(p,e.fieldsOrder):((m=d.value)!=null&&m.bundles&&(p=_d([...p],d.value.bundles)),p)});return n({getValue:c,getRawValue:()=>t.toRaw(l),setValue:s}),(u,p)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Un)]))),t.renderSlot(u.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,m=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(m)[0],name:Object.keys(m)[0],onGlobalAction:p[0]||(p[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),Rk={class:"ff-advanced-fields"},Zr=Ae(t.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),{getSchema:o}=Me(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Oe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"data-testid":"view-advanced","trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",Rk,[e.hideGeneralFields?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(mt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(mt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Wa,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0)],64)),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-fb80aa6f"]]),Dk=Ae(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=$e();function a(d,f=!1){return d.reduce((u,{[Wo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=Dn(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[Wo]=Sd()});const p=a(u,!0);return u.forEach(g=>{g.depends_on=g.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=Dn(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Wo]:g,depends_on:_,...y}=m;return{depends_on:_.map(h=>u[h]).filter(h=>h!=null),...y}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(bt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(Un)]:t.withCtx(()=>[t.createVNode(Xr,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(fo,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(Xr,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(Yo,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Vk),t.createVNode(Ct,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(Ct,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(Ct,t.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),t.createVNode(Zr)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),Mk={class:"ff-form-pinned-fields"},Lk={class:"ff-form-config-form"},Xa=Ae(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return La(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",Mk,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Oe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Lk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),Fk=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Xa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Dk,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Uk={key:1},Kk=["innerHTML"],jk={class:"horizontal-container"},Id=Ae(t.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Me(),a=_t(t.toRef(()=>e.name)),l=Pt(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",Uk,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(l).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).label)+" ",1)]),_:2},[(m=t.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,Kk)]),key:"0"}:void 0]),1040),t.createElementVNode("div",jk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,g=>(t.openBlock(),t.createBlock(t.unref(Oe.KRadio),{key:g.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=_=>t.unref(a).value.value=_),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[t.vShow,!t.unref(a).hide.value]])}}}),[["__scopeId","data-v-910a1c85"]]),Gk={class:"sp-form-request-limits-subtitle"},qk={class:"sp-form-request-limits-content"},zk={class:"sp-form-window-type"},Hk={class:"sp-form-request-limits-items"},Yk={class:"sp-form-request-limits-row"},Wk=["id"],Xk={class:"sp-form-request-limits-actions"},Zk={key:0,class:"sp-form-request-limits-examples"},Jk={class:"sp-form-request-limits-examples-badges"},Za="config.window_type",Qk=Ae(t.defineComponent({__name:"RequestLimitsForm",setup(e){var y;const{t:n}=Xe.createI18n("en-us",Je),{formData:o,getSelectItems:r,getSchema:i}=Me(),a=t.computed(()=>{var k,b;const h=(b=(k=o.config)==null?void 0:k.limit)==null?void 0:b.map((E,N)=>{var C,x;return{limit:E,windowSize:(x=(C=o.config)==null?void 0:C.window_size)==null?void 0:x[N]}});return!Array.isArray(h)||h.length===0?[{limit:null,windowSize:null}]:h}),{getKey:l}=xd("request-limits",a),s=h=>{var k,b;p.value=void 0,o.config&&((k=o.config.limit)!=null&&k.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.length||(o.config.window_size=[null]),o.config.limit.splice(h+1,0,null),o.config.window_size.splice(h+1,0,null))},c=h=>{o.config&&(o.config.limit.splice(h,1),o.config.window_size.splice(h,1))},d=(y=i(Za))==null?void 0:y.default,f=t.computed(()=>va(o,Za)),u=t.computed(()=>r(Za).sort((h,k)=>h.value===d?-1:k.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),_=(h,k)=>{if(k===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=k}),o.config.limit=[h.config.limit],o.config.window_size=[h.config.window_size]};return(h,k)=>{const b=t.resolveComponent("KLabel"),E=t.resolveComponent("KButton"),N=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),x=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(x,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Gk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",qk,[t.createElementVNode("div",zk,[t.createVNode(Id,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=I=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",Hk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(I,A)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(I,A)},[t.createVNode(b,{for:`sp-form-request-limits-item-${A}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:A+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Yk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${A}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(jn,{name:`$.config.limit.${A}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(jn,{name:`$.config.window_size.${A}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,Wk),t.createElementVNode("div",Xk,[t.createVNode(E,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(A)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(E,{appearance:"tertiary",onClick:()=>s(A)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(t.openBlock(),t.createElementBlock("div",Zk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",Jk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,(I,A)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${A}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(I.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(I.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(I.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(N,{appearance:p.value===`${f.value}-${A}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(I,`${f.value}-${A}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(I.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),eC={id:"sp-form-error-legend",class:"sp-form-error-inputs"},tC=Ae(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Xe.createI18n("en-us",Je);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",eC,[t.createVNode(jn,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(fo,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),nC={class:"partial-config-card"},oC={class:"config-card-row-label"},rC={class:"label-text"},iC=["data-testid"],aC=["data-testid"],lC={key:1},sC=["data-testid"],cC=["data-testid"],dC=Ae(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Xe.createI18n("en-us",Je),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=he.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,g,_,y;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(g=r[u])!=null&&g.formatter?r[u].formatter(p):p,type:((_=r[u])==null?void 0:_.type)??l(u,p),order:((y=r[u])==null?void 0:y.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=j0(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",nC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:g,label:_,value:y,type:h})=>(t.openBlock(),t.createElementBlock("div",{key:g,class:"partial-config-card-row"},[t.createElementVNode("div",oC,[t.createElementVNode("div",rC,t.toDisplayString(_),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[a(y)?(t.openBlock(),t.createElementBlock("div",lC,[h==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(y)},null,8,["text"])],8,sC)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},t.toDisplayString(y),9,cC))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,aC))],8,iC)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Jr=Symbol("redis-partial-info"),uC={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}};function Ja(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(fd,e);return o=>n(o)}const fC={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},pC={class:"shared-redis-config"},mC={class:"shared-redis-config-title"},gC={class:"redis-config-select","data-testid":"redis-config-select"},hC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Pd=Ae(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(e){var B;const{t:n}=Xe.createI18n("en-us",Je),o=["host","port","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","timeout","read_timeout","send_timeout","connect_timeout","connection_is_proxied","redis_proxy_type","cloud_authentication"],r={dependencies:{"cloud_authentication.aws_cache_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_region":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_is_serverless":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_access_key_id":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_secret_access_key":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_assume_role_arn":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_role_session_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.gcp_service_account_json":["cloud_authentication.auth_provider","gcp"],"cloud_authentication.azure_client_id":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_client_secret":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_tenant_id":["cloud_authentication.auth_provider","azure"]}},i=e,a=Ja(),l=t.inject(Jr),s=(l==null?void 0:l.isEditing)||!1,c=t.computed(()=>{var v;return i.redisPath?i.redisPath:(v=l==null?void 0:l.redisPath)!=null&&v.value?"$."+l.redisPath.value:"$.config.redis"}),d=i.redisType||((B=l==null?void 0:l.redisType)==null?void 0:B.value),f=t.computed(()=>{var v;return!!((v=l==null?void 0:l.redisType)!=null&&v.value)}),u=t.ref(null),p=t.ref(!s),{getMessageFromError:m}=he.useErrors(),g=t.ref(i.defaultRedisConfigItem),_=t.ref({}),y=t.ref(),{value:h}=Nd("$.partials"),{value:k,hide:b}=_t(c),E=t.inject(De.FORMS_CONFIG),N=t.ref(null),C=v=>{let w=`${E.apiBaseUrl}${uC[E.app].getOne}`;return E.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,(E==null?void 0:E.controlPlaneId)||""):E.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,E!=null&&E.workspace?`/${E.workspace}`:"")),w=w.replace(/{id}/gi,String(v)),w},{axiosInstance:x}=he.useAxios(E==null?void 0:E.axiosRequestConfig),I=()=>{p.value?(y.value&&(h.value=y.value,g.value=y.value[0].id,k.value=void 0),k!=null&&k.value&&(_.value=k.value)):(Object.keys(_.value).length&&(k.value=_.value),h!=null&&h.value&&(y.value=h.value),h.value=s?null:void 0)},A=async v=>{if(v){g.value=v,h.value=[{id:v}],y.value=[{id:v}],k.value=void 0;try{const w=await x.get(C(v));if(w.data.config){const M=Object.assign(w.data,w.data.config);delete M.config,u.value=M}}catch(w){console.error(w)}}};return t.watch(()=>p.value,()=>{I()}),t.onBeforeMount(()=>{var v;if(i.defaultRedisConfigItem||h!=null&&h.value){const w=i.defaultRedisConfigItem||((v=h==null?void 0:h.value)==null?void 0:v[0].id);A(w),p.value=!0}else k!=null&&k.value&&(_.value=k.value)}),t.watch(()=>b==null?void 0:b.value,v=>{p.value&&(v&&h.value?h.value=s?null:void 0:v||y.value&&(h.value=y.value,A(y.value[0].id)))}),(v,w)=>{const M=t.resolveComponent("KRadio"),S=t.resolveComponent("KCard");return f.value?t.withDirectives((t.openBlock(),t.createBlock(S,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(n)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",fC,[t.createVNode(M,{modelValue:p.value,"onUpdate:modelValue":w[0]||(w[0]=F=>p.value=F),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(n)("redis.shared_configuration.description"),label:t.unref(n)("redis.shared_configuration.label"),"selected-value":!0},null,8,["modelValue","description","label"]),t.createVNode(M,{modelValue:p.value,"onUpdate:modelValue":w[1]||(w[1]=F=>p.value=F),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(n)("redis.dedicated_configuration.description"),label:t.unref(n)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),t.withDirectives(t.createElementVNode("div",pC,[t.createElementVNode("div",mC,t.toDisplayString(t.unref(n)("redis.shared_configuration.title")),1),t.createElementVNode("div",gC,[t.createVNode(t.unref(Us.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":g.value,"redis-type":t.unref(d),onErrorChange:w[2]||(w[2]=F=>N.value=F),onToast:t.unref(a),"onUpdate:modelValue":w[3]||(w[3]=F=>A(F))},null,8,["model-value","redis-type","onToast"])]),u.value?(t.openBlock(),t.createBlock(dC,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),N.value?(t.openBlock(),t.createElementBlock("p",hC,t.toDisplayString(N.value?t.unref(m)(N.value):t.unref(n)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)],512),[[t.vShow,p.value]]),p.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Ct,t.mergeProps({key:0},i,{"as-child":"","fields-order":o,name:c.value,"render-rules":r,"reset-label-path":"reset"}),null,16,["name"]))]),_:1},8,["title"])),[[t.vShow,!t.unref(b)]]):t.withDirectives((t.openBlock(),t.createBlock(Ct,t.mergeProps({key:1},i,{"fields-order":o,"hide-required-asterisk":"",name:c.value,"render-rules":r}),null,16,["name"])),[[t.vShow,!t.unref(b)]])}}}),[["__scopeId","data-v-437982e8"]]),yC=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=Me(),o=t.inject(Jr),r=(o==null?void 0:o.isEditing)||!1;return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=r?null:void 0)}),(i,a)=>(t.openBlock(),t.createBlock(vd,null,{default:t.withCtx(()=>{var l;return[((l=t.unref(n).config)==null?void 0:l.strategy)==="redis"?(t.openBlock(),t.createBlock(Pd,{key:0})):t.createCommentVNode("",!0)]}),_:1}))}}),_C=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],setup(e,{emit:n}){const o=n,r={hasValue:a=>!!(a!=null&&a.config)};function i(a){var l;((l=a.config)==null?void 0:l.namespace)===null&&delete a.config.namespace,o("change",a)}return(a,l)=>(t.openBlock(),t.createBlock(bt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Qk),t.createVNode(tC)]),_:1}),t.createVNode(Zr,null,{default:t.withCtx(()=>[t.createVNode(mt,{name:"config.dictionary_name"}),t.createVNode(mt,{name:"config.lock_dictionary_name"}),t.createVNode(mt,{name:"config.strategy"}),t.createVNode(yC),t.createVNode(mt,{name:"config.namespace"}),t.createVNode(mt,{name:"config.hide_client_headers"}),t.createVNode(mt,{name:"config.disable_penalty"}),t.createVNode(mt,{name:"config.retry_after_jitter_max"}),t.createVNode(mt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),bC=t.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Xa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(_C,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Qa=t.defineComponent({__name:"VFGField",props:{formOptions:{},vfgSchema:{}},setup(e){const n=Symbol("rawTagsString"),{formData:o,getSchema:r}=Me(),i=t.computed(()=>{const l={};return e.vfgSchema.fields.forEach(s=>{s.type==="AutoSuggest"?o[s.model.split("-")[0]]&&(l[s.model]=o[s.model.split("-")[0]].id):s.model==="tags"&&o[s.model]?l[s.model]=o[s.model][n]??o[s.model].join(", "):l[s.model]=o[s.model]}),l});function a(l,s){const c=s.split("-")[0],d=r(c);if(!d)throw new Error(`Field schema not found for path: ${c}`);if(d.type==="foreign")o[c]=l?{id:l}:null;else if(c==="tags"){const f=l.split(",").map(u=>u.trim()).filter(Boolean);o[c]=f,o[c][n]=l}else o[c]=l}return(l,s)=>(t.openBlock(),t.createBlock(t.unref(De.VueFormGenerator),{model:i.value,options:e.formOptions,schema:e.vfgSchema,onModelUpdated:a},null,8,["model","options","schema"]))}}),wC={"data-testid":"ff-identity-realms-field"},kC=["innerHTML"],CC=t.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(e){const n=e,{error:o,value:r,path:i}=_t(t.toRef(n,"name"));if(o)throw o;const a=Pt(t.toRef(n,"name"),n);return(l,s)=>{var d;const c=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",wC,[t.createVNode(c,t.mergeProps({class:"ff-array-field-label"},t.unref(a),{"data-testid":`ff-label-${t.unref(i)}`,"tooltip-attributes":t.unref(a).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a).label)+" ",1)]),_:2},[(d=t.unref(a).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(l.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,kC)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(zs,{modelValue:t.unref(r),"onUpdate:modelValue":s[0]||(s[0]=f=>t.isRef(r)?r.value=f:null)},null,8,["modelValue"])])}}}),EC={class:"enabled"},NC={class:"scope"},xC={key:0,class:"scope-detail"},Td=Ae(t.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=t.createPropsRestProxy(e,["editorMode"]),r=t.inject(Jr),i=t.useSlots(),a=t.computed(()=>o.formConfig??{hasValue:A=>!!A&&Object.keys(A).length>0}),l=t.computed(()=>{var A,B;return(A=o.formSchema)!=null&&A.groups?o.formSchema.groups.reduce((v,w)=>{var F,O;const M=w.fields,S=(O=(F=w.collapsible)==null?void 0:F.nestedCollapsible)!=null&&O.fields?M.concat(w.collapsible.nestedCollapsible.fields):M;return v.concat(S)},[]):((B=o.formSchema)==null?void 0:B.fields)||[]}),s=t.computed(()=>({fields:l.value.filter(A=>A.model==="enabled")})),c=t.computed(()=>l.value.find(A=>A.type==="selectionGroup")),d=t.computed(()=>{var A;return(((A=c.value)==null?void 0:A.fields)||[]).map(({label:B,description:v})=>({label:B,description:v}))}),f=t.computed(()=>{var A,B;return(B=(A=c.value)==null?void 0:A.fields)==null?void 0:B[1]}),u=t.computed(()=>{const A=["instance_name","protocols","tags"];return{fields:l.value.filter(B=>A.includes(B.model))}}),p=["config"],m=t.computed(()=>{var v;const A={type:"record",fields:o.schema.fields.filter(w=>p.includes(Object.keys(w)[0]))};return[...s.value.fields,...((v=f.value)==null?void 0:v.fields)??[],...u.value.fields].forEach(w=>{if(w.type==="AutoSuggest")A.fields.push({[w.model.split("-")[0]]:{type:"foreign",reference:w.entity,description:w.help}});else if(w.model==="enabled")A.fields.push({[w.model]:{type:"boolean",default:!0}});else if(w.model==="instance_name")A.fields.push({[w.model]:{type:"string",description:w.help}});else if(w.model==="protocols")A.fields.push({[w.model]:{type:"set",elements:{type:"string",one_of:w.values.map(M=>M.value)},default:[...w.default]}});else if(w.model==="tags")A.fields.push({[w.model]:{type:"set",elements:{type:"string"}}});else throw new Error(`Unsupported VFG field type '${w.type}' for model '${w.model}'`)}),A}),g=t.computed(()=>{const A=["config","partials","__ui_data","enabled","protocols","instance_name","tags","consumer","consumer_group","route","service"];return La(o.model,A)}),_=t.computed(()=>{var A;return((A=f.value)==null?void 0:A.fields.map(B=>B.model.split("-")[0]))??[]}),y=t.ref(La(g.value,_.value)),h=t.ref(Object.values(y.value).some(I)),k=t.ref(!0),b=t.useTemplateRef("form");let E=!1;function N(){if(!b.value)return;const{getRawValue:A,setValue:B}=b.value,w={...A()};h.value?_.value.forEach(M=>{w[M]=y.value[M]??null}):_.value.forEach(M=>{w[M]=null}),E=!0,B(w),t.nextTick(()=>{E=!1})}function C(A){if(E||x(A),e.editorMode==="code"){const B=_.value.some(v=>I(A[v]));B!==h.value&&(h.value=B)}o.onFormChange(A)}function x(A){_.value.forEach(B=>{const v=A[B];ad(v,"id")&&v.id!=null?y.value[B]=v:y.value[B]=null})}function I(A){return ad(A,"id")&&A.id!=null}return(A,B)=>{const v=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(bt,{ref:"form",class:"ff-standard-layout",config:a.value,data:g.value,"render-rules":e.renderRules,schema:m.value,tag:"div",onChange:C},{[t.unref(Un)]:t.withCtx(()=>[t.createVNode(Xr,{match:({path:w})=>{var M,S;return w===((S=(M=t.unref(r))==null?void 0:M.redisPath)==null?void 0:S.value)}},{default:t.withCtx(()=>[t.createVNode(Pd)]),_:1},8,["match"]),t.createVNode(Xr,{match:({path:w})=>e.pluginName==="key-auth"&&w==="config.identity_realms"},{default:t.withCtx(w=>[t.createVNode(CC,t.normalizeProps(t.guardReactiveProps(w)),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[e.editorMode==="form"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(t.unref(he.EntityFormBlock),{description:e.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:e.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",EC,[t.createVNode(Qa,{"form-options":e.formOptions,"vfg-schema":s.value},null,8,["form-options","vfg-schema"])]),t.createElementVNode("div",NC,[t.createVNode(t.unref(Oe.KRadio),t.mergeProps({modelValue:h.value,"onUpdate:modelValue":B[0]||(B[0]=w=>h.value=w),card:"","card-orientation":"horizontal"},d.value[0],{"selected-value":!1,"onUpdate:modelValue":N}),null,16,["modelValue"]),d.value[1]?(t.openBlock(),t.createBlock(t.unref(Oe.KRadio),t.mergeProps({key:0,modelValue:h.value,"onUpdate:modelValue":B[1]||(B[1]=w=>h.value=w),card:"","card-orientation":"horizontal"},d.value[1],{"selected-value":!0,"onUpdate:modelValue":N}),null,16,["modelValue"])):t.createCommentVNode("",!0)]),h.value&&f.value?(t.openBlock(),t.createElementBlock("div",xC,[t.createVNode(Qa,{"form-options":e.formOptions,"vfg-schema":f.value},null,8,["form-options","vfg-schema"])])):t.createCommentVNode("",!0),t.createVNode(v,{modelValue:k.value,"onUpdate:modelValue":B[2]||(B[2]=w=>k.value=w),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(Qa,{"form-options":e.formOptions,"vfg-schema":u.value},null,8,["form-options","vfg-schema"])]),_:1},8,["modelValue"])]),_:2},[i["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,i["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,i["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(he.EntityFormBlock),{description:e.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(A.$slots,"default",{},void 0,!0)]),_:2},[i["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,i["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,i["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])],64)):t.renderSlot(A.$slots,"code-editor",{key:1},void 0,!0)]),_:2},1032,["config","data","render-rules","schema"])}}}),[["__scopeId","data-v-ae2d8e84"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function Od(e){return typeof e>"u"||e===null}function SC(e){return typeof e=="object"&&e!==null}function vC(e){return Array.isArray(e)?e:Od(e)?[]:[e]}function AC(e,n){var o,r,i,a;if(n)for(a=Object.keys(n),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=n[i];return e}function IC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function PC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var TC=Od,OC=SC,$C=vC,BC=IC,VC=PC,RC=AC,it={isNothing:TC,isObject:OC,toArray:$C,repeat:BC,isNegativeZero:VC,extend:RC};function $d(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
15
+ ${k}`)}}function i(g){for(const[_,h]of Object.entries(g)){if(!h.bundles)continue;for(const k of h.bundles)if(new Set(k).size!==k.length){const E=k.filter((N,C)=>k.indexOf(N)!==C);throw new Error(`Self-cycle detected in bundle: field '${E[0]}' appears multiple times in [${k.join(", ")}]`)}const y=new Map;for(const k of h.bundles)for(let b=1;b<k.length;b++){const E=k[b],N=k[b-1];y.has(E)||y.set(E,new Set),y.get(E).add(N)}for(const k of y.keys()){let b=function(C){if(N.includes(C)){const P=[...N,C].join(" -> ");throw new Error(`Circular bundle detected in path '${_}':
16
+ ${P}`)}if(E.has(C))return;E.add(C),N.push(C);const x=y.get(C);if(x)for(const P of x)b(P);N.pop()};const E=new Set,N=[];b(k)}}}function a(g){for(const[_,h]of Object.entries(g))if(h.dependencies)for(const y of Object.keys(h.dependencies)){let k=function(N){if(E.includes(N)){const x=[...E,N].join(" -> ");throw new Error(`Circular dependency detected in path '${_}':
17
+ ${x}`)}if(b.has(N))return;b.add(N),E.push(N);const C=h.dependencies[N];if(C){const[x]=C;h.dependencies[x]&&k(x)}E.pop()};const b=new Set,E=[];k(y)}}function l(g,_){const h=g.map(k=>_?Ze(_,k):k),y=Rt(h[0]);return y.pop(),Ze(...y)}function s(g,_){if(!_)return g;const h=`${_}${Ha}`;return g.startsWith(h)?g.slice(h.length):g}function c(g){const _=Rt(g);return _.pop(),Ze(..._)}const d=t.computed(()=>{const g={};for(const[_,h]of Object.entries(n.value)){const y=_===Fn?"":_;if(h.bundles)for(const k of h.bundles){if(k.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${k.length} field(s) in bundle: [${k.join(", ")}]`);const b=k.map(C=>y?Ze(y,C):C);r(b,`Bundle [${k.join(", ")}]`);const E=l(k,y)||Fn;g[E]||(g[E]={}),g[E].bundles||(g[E].bundles=[]);const N=b.map(C=>s(C,E));g[E].bundles.push(N)}if(h.dependencies)for(const[k,[b,E]]of Object.entries(h.dependencies)){const N=y?Ze(y,k):k,C=y?Ze(y,b):b;r([N,C],`Dependency '${k}' -> '${b}'`);const x=c(N)||Fn;g[x]||(g[x]={}),g[x].dependencies||(g[x].dependencies={});const P=s(N,x),A=s(C,x);g[x].dependencies[P]=[A,E]}}return i(g),a(g),g});function f(g){if(!g)return d.value;const _=Zr(g);return d.value[_]}function u(g){let _=!1;return t.computed(()=>{if(_)return;const h=t.toValue(g);try{return f(h)}catch(y){_=!0,console.error(`Failed to get render rules for path: \`${h}\`,`,y instanceof Error?y.message:"");return}})}function p(g){const{fieldPath:_,rules:h,parentValue:y,omittedFields:k}=g;t.watch([()=>t.toValue(h),()=>t.toValue(_)],([E,N],[,C])=>{E?n.value[N]=E:delete n.value[N],C&&C!==N&&delete n.value[C]},{immediate:!0,deep:!0});const b=u(_);return t.watch([()=>t.toValue(y),()=>{var E;return(E=t.toValue(b))==null?void 0:E.dependencies},()=>t.toValue(_),()=>t.toValue(k)],([E,N,C,x])=>{!N||!E||Object.entries(N).forEach(([P,[A,B]])=>{if(x!=null&&x.includes(P))return;const v=Pa(E,A),w=C?z0(Ze(C,P)):P;if(Mn(v,B)){o.value.delete(w),e();return}o.value.add(w),e()})},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{const E=t.toValue(_);delete n.value[E]}),b}function m(g){return o.value.has(g)}return{useCurrentRules:p,createComputedRules:u,hiddenPaths:t.readonly(o),isFieldHidden:m}}const lk="__request_callout_";function vd(){return Xr(lk)}const Kn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=t.useAttrs(),i=n,a=t.computed(()=>o.multiline?Oe.KTextArea:Oe.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{config:c}=Me(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,g)=>({name:g,fn:t.withCtx(_=>[t.renderSlot(u.$slots,g,t.normalizeProps(t.guardReactiveProps(_)))])}))]),1040,["character-limit","model-value","resizable"]))}}),sk=["innerHTML"],fo=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=$e(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=_t(t.toRef(()=>e.name)),d=Pt(c.path,t.toRef({...i,...o})),f=l==null?void 0:l.value;function u(k){f!==void 0&&k===""&&k!==f?(l.value=null,a("update:modelValue",null)):(l.value=k.trim(),a("update:modelValue",k.trim()))}const p=t.computed(()=>{var k;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((k=c.schema)==null?void 0:k.value).encrypted}),m=t.inject(De.AUTOFILL_SLOT,void 0),g=t.computed(()=>{var k;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((k=c.schema.value)!=null&&k.referenceable)}),_=t.computed(()=>({referenceable:g.value})),h=Yo(c.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(k,b)=>{var N;const E=t.resolveComponent("KAlert");return c.error?(t.openBlock(),t.createBlock(E,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},k.$attrs)),[t.createVNode(Kn,t.mergeProps({...t.unref(d),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":y.value,"data-autofocus":t.unref(h),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,"onUpdate:modelValue":u}),t.createSlots({_:2},[(N=t.unref(d).labelAttributes)!=null&&N.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(k.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,sk)],!0)]),key:"0"}:void 0,!(e.multiline&&e.error)&&k.$slots.help?{name:"help",fn:t.withCtx(()=>[t.renderSlot(k.$slots,"help",{},void 0,!0)]),key:"1"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(m)&&g.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(m)),{key:0,schema:_.value,update:u,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),g.value&&!t.unref(m)?(t.openBlock(),t.createBlock(E,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${c.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16)),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-e685373f"]]),ck=["innerHTML"],Jr=Ae(t.defineComponent({__name:"BooleanField",props:{labelAttributes:{},modelValue:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,hide:i,...a}=_t(t.toRef(()=>e.name)),l=n,s=d=>{r.value=d,l("update:modelValue",d)},c=Pt(a.path,o);return(d,f)=>{var p;const u=t.resolveComponent("KAlert");return a.error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:a.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(Oe.KCheckbox),t.mergeProps({key:1},t.unref(c),{class:"ff-boolean-field","data-testid":`ff-${a.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":s}),t.createSlots({_:2},[(p=t.unref(c).labelAttributes)!=null&&p.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,ck)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"])),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-b4b15b33"]]),Ad=Ae(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(g=>[g,m.getPropertyValue(g)]))}function a(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const g=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),dk={class:"ff-entity-checks-list"},Id=Ae(t.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(e){const{i18n:{t:n}}=Ve.useI18n(),o=t.computed(()=>{if(!Array.isArray(e.entityChecks)||e.entityChecks.length===0)return null;const a=[],l=[{key:"at_least_one_of",i18nKey:"plugins.form.field_rules.at_least_one_of"},{key:"mutually_required",i18nKey:"plugins.form.field_rules.mutually_required"},{key:"mutually_exclusive",i18nKey:"plugins.form.field_rules.mutually_exclusive"}];for(const s of e.entityChecks)for(const{key:c,i18nKey:d}of l)if(c in s){const f=s[c];Array.isArray(f)&&f.length>0&&i(f)&&a.push(n(d,{parameters:r(f)}));break}return a.length?a:null});function r(a){return a.map(Ed).join(", ")}function i(a){return Array.isArray(e.omittedFields)&&e.omittedFields.length>0?a.filter(s=>!e.omittedFields.includes(s)).length>0:!0}return(a,l)=>{const s=t.resolveComponent("KAlert");return o.value?(t.openBlock(),t.createBlock(s,{key:0,"data-testid":"ff-entity-checks-alert"},{default:t.withCtx(()=>[t.createElementVNode("ul",dk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.value,c=>(t.openBlock(),t.createElementBlock("li",{key:c,"data-testid":"ff-entity-check-item"},t.toDisplayString(c),1))),128))])]),_:1})):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-0b5baf37"]]),uk=["data-testid"],fk=["data-testid"],pk=["data-testid"],mk=["innerHTML"],gk={class:"ff-object-field-actions"},hk=["data-testid"],Ct=Ae(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{},renderRules:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,hide:r,...i}=_t(t.toRef(n,"name")),{getSchema:a,getDefault:l,useCurrentRenderRules:s}=Me(),c=s({fieldPath:i.path,rules:t.toRef(n,"renderRules"),omittedFields:t.toRef(()=>e.omit),parentValue:o}),d=t.useModel(e,"added"),f=t.useModel(e,"expanded"),u=t.computed(()=>_.value&&(e.collapsible?f.value??e.defaultExpanded:!1)),p=t.computed(()=>{var b,E;if((b=i.ancestors)!=null&&b.value){const N=i.ancestors.value.parent;if(N!=null&&N.path)return((E=a(N.path))==null?void 0:E.type)==="array"}return!1}),m=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:p.value?"reset":"inherit"),g=Pt(i.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:m.value}))),_=t.computed(()=>g.value.required?!0:d.value??e.defaultAdded),h=t.computed(()=>e.asChild!==void 0?e.asChild:p.value),y=t.computed(()=>{var E;let b=i.schema.value.fields;return e.omit&&(b=b.filter(N=>!e.omit.includes(Object.keys(N)[0]))),e.fieldsOrder?_d(b,e.fieldsOrder):((E=c.value)!=null&&E.bundles&&(b=bd([...b],c.value.bundles)),b)});function k(){d.value=!d.value,d.value?o.value=l(i.path.value):o.value=null}return t.watch(_,b=>{e.collapsible&&(f.value=b)}),t.onBeforeMount(()=>{d.value=!!(o!=null&&o.value)}),(b,E)=>{var C;const N=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(b.$slots[t.unref(Un)]))),i.error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):h.value?t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},b.$attrs,{"data-testid":`ff-object-${i.path.value}`}),[t.renderSlot(b.$slots,"default",{},()=>{var x;return[t.createVNode(Id,{"entity-checks":(x=i.schema.value)==null?void 0:x.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,P=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(P)[0],name:Object.keys(P)[0]},null,8,["name"]))),128))]},!0)],16,uk)),[[t.vShow,!t.unref(r)]]):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!u.value}],"data-testid":`ff-object-${i.path.value}`},b.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${i.path.value}`},[t.createVNode(t.unref(Oe.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${i.path.value}`},{...t.unref(g),required:!1},{"tooltip-attributes":t.unref(g).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(g).label)+" ",1)]),_:2},[(C=t.unref(g).labelAttributes)!=null&&C.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(g).labelAttributes.info},null,8,mk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",gk,[e.collapsible&&_.value?(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${u.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${i.path.value}`,icon:"",onClick:E[0]||(E[0]=x=>f.value=!u.value)},{default:t.withCtx(()=>[_.value?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(g).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${_.value?"remove":"add"}`),"data-testid":`ff-object-${_.value?"remove":"add"}-btn-${i.path.value}`,icon:"",onClick:k},{default:t.withCtx(()=>[_.value?(t.openBlock(),t.createBlock(t.unref(Ee.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(Ee.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,pk),t.createVNode(Ad,null,{default:t.withCtx(()=>[u.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${i.path.value}`},[t.renderSlot(b.$slots,"default",{},()=>{var x;return[t.createVNode(Id,{"entity-checks":(x=i.schema.value)==null?void 0:x.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,P=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(P)[0],name:Object.keys(P)[0]},null,8,["name"]))),128))]},!0)],8,hk)):t.createCommentVNode("",!0)]),_:3})],16,fk)),[[t.vShow,!t.unref(r)]])],64)}}}),[["__scopeId","data-v-161e818f"]]),yk={key:1,class:"ff-number-field-wrapper"},_k=["innerHTML"],jn=Ae(t.defineComponent({__name:"NumberField",props:{showVaultSecretPicker:{type:Boolean,default:()=>{}},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["showVaultSecretPicker","name"]),{value:r,hide:i,...a}=_t(t.toRef(()=>e.name)),l=Pt(a.path,o),{i18n:s}=$e(),c=t.computed(()=>{var C;const b=(C=a.schema)==null?void 0:C.value;if(typeof b.gt=="number")return{min:b.type==="integer"?b.gt+1:b.gt};const[E,N]=b.between??[];return{min:o.min??E,max:o.max??N}}),d=n,f=r.value,u=t.computed(()=>{const b=r==null?void 0:r.value;if(b==null||b==="")return"";if(y.value)return`${b}`;const E=typeof b=="number"?b:Number(b);return Number.isFinite(E)?`${E}`:""});function p(b){const E=m(b);f!==void 0&&b===""&&E!==f?(r.value=null,d("update:modelValue",null)):(r.value=E,d("update:modelValue",E))}function m(b){if(b==="")return null;const E=b.trim();if(E==="")return null;const N=Number(E);return Number.isFinite(N)?N:y.value?b:null}const g=Yo(a.ancestors),_=t.inject(De.AUTOFILL_SLOT,void 0),h=t.computed(()=>({referenceable:y.value})),y=t.computed(()=>{var b;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((b=a.schema.value)!=null&&b.referenceable)}),k=t.computed(()=>y.value?"text":"number");return(b,E)=>{var C;const N=t.resolveComponent("KAlert");return a.error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:a.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",yk,[t.createVNode(Kn,t.mergeProps({class:"ff-number-field"},{...t.unref(l),min:c.value.min,max:c.value.max},{"data-autofocus":t.unref(g),"data-testid":`ff-${a.path.value}`,"model-value":u.value,type:k.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(C=t.unref(l).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,_k)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value","type"]),t.unref(_)&&y.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:h.value,update:p,value:t.unref(r)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),y.value&&!t.unref(_)?(t.openBlock(),t.createBlock(N,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${a.path.value}`,message:t.unref(s).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],512)),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-709884eb"]]),bk=["innerHTML"],Tt=Ae(t.defineComponent({__name:"EnumField",props:{labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean},name:{}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Me(),{value:a,hide:l,...s}=_t(t.toRef(()=>e.name)),c=Pt(s.path,r),d=t.computed(()=>e.items?e.items:s.path?i(s.path.value):[]),f=t.computed(()=>{var p;return e.multiple!==void 0?e.multiple:((p=s.schema.value)==null?void 0:p.type)==="set"}),u=t.computed(()=>f.value?Oe.KMultiselect:Oe.KSelect);return(p,m)=>{var _;const g=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(g,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(u),t.mergeProps({key:1},{...r,...t.unref(c)},{modelValue:t.unref(a),"onUpdate:modelValue":[m[0]||(m[0]=h=>t.isRef(a)?a.value=h:null),m[1]||(m[1]=h=>o("update",h))],class:"ff-enum-field",clearable:!t.unref(c).required,"data-testid":`ff-${s.path.value}`,items:d.value,"kpop-attributes":{"data-testid":`${s.path.value}-items`}}),t.createSlots({_:2},["tooltip"in p.$slots||(_=t.unref(c).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,bk)],!0)]),key:"0"}:void 0,p.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:h})=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"])),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-a339a451"]]);function Qr(e,n,o=!0){const{value:r,emptyOrDefaultValue:i,...a}=_t(t.toRef(e,"name")),l=Pt(a.path,t.toRef({...e,...t.useAttrs()})),s=t.ref(f(e.initialValue??t.toValue(r),e.keyOrder));function c(){return Xr("ff-kv-field-")}function d(y,k,b){const E=b.indexOf(y),N=b.indexOf(k);return E===-1&&N===-1?0:E===-1?1:N===-1?-1:E-N}function f(y,k){if(!y)return[];const b=Object.entries(y).map(([E,N])=>({id:c(),key:E,value:N}));return k&&b.sort((E,N)=>d(E.key,N.key,k)),b}function u(){const y={id:c(),key:e.defaultKey||"",value:e.defaultValue||""};return s.value.push(y),y}function p(y){const k=s.value.findIndex(b=>b.id===y);k!==-1&&s.value.splice(k,1)}function m(){s.value=f(e.initialValue,e.keyOrder)}function g(y){s.value=f(y,e.keyOrder)}let _=r==null?void 0:r.value;t.watch(s,y=>{if(!o)return;const k=y.length?Object.fromEntries(y.map(({key:b,value:E})=>[b,E]).filter(([b])=>b)):i==null?void 0:i.value;k===null&&r.value!==null&&typeof r.value=="object"&&Object.keys(r.value).length===0||(r.value=k,_=k,n("change",k))},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,y=>{Mn(y,_)||h(y)},{deep:!0});function h(y){if(!y){s.value=[];return}const k=new Map;s.value.forEach(C=>{C.key&&k.set(C.key,C)});const b=[],E=Object.keys(y);(e.keyOrder?[...E].sort((C,x)=>d(C,x,e.keyOrder)):E).forEach(C=>{const x=y[C];if(k.has(C)){const P=k.get(C);P.value=x,b.push(P)}else b.push({id:c(),key:C,value:x})}),s.value=b}return{entries:s,addEntry:u,removeEntry:p,reset:m,setValue:g,labelAttrs:l,field:a}}const wk=["data-testid"],kk=["data-testid"],Ck=["innerHTML"],Ek=["data-testid"],Nk=Ae(t.defineComponent({__name:"KeyValueField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{},name:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=$e(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=Qr(r,a),m=t.useTemplateRef("root");async function g(N,C="key"){var x;m.value&&(await t.nextTick(),(x=m.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function _(){s();const N=l.value.findIndex(({key:C})=>!C);g(N===-1?l.value.length-1:N)}function h(N){N===l.value.length-1&&s(),g(N+1)}const y=t.inject(De.AUTOFILL_SLOT,void 0),k=t.computed(()=>{var N,C;return e.showVaultSecretPicker??!!((C=(N=p.schema.value)==null?void 0:N.values)!=null&&C.referenceable)}),b=t.computed(()=>({referenceable:k.value}));function E(N,C){l.value[N].value=C}return n({reset:d,setValue:f}),(N,C)=>{var B;const x=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),A=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(P,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(B=t.unref(u).labelAttributes)!=null&&B.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,Ck)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(A,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["data-testid"])],8,kk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(v,w)=>(t.openBlock(),t.createElementBlock("div",{key:v.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${w}`},[t.createVNode(Kn,{modelValue:v.key,"onUpdate:modelValue":F=>v.key=F,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":w,"data-testid":`ff-key-${t.unref(p).path.value}.${w}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(F=>g(w,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Kn,{modelValue:v.value,"onUpdate:modelValue":F=>v.value=F,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${w}`,"data-value-input":w,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(F=>h(w),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(y)&&k.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(y)),{key:0,schema:b.value,update:F=>E(w,F),value:v.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),k.value&&!t.unref(y)?(t.openBlock(),t.createBlock(x,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode(A,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${w}`,icon:"",onClick:F=>t.unref(c)(v.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,Ek))),128))],8,wk)),[[t.vShow,!t.unref(p).hide.value]])}}}),[["__scopeId","data-v-6f20a032"]]),xk=["data-testid"],Sk=["innerHTML"],Ja=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{labelAttributes:{},multiline:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=_t(t.toRef(()=>e.name)),c=Pt(s.path,t.toRef({...r,...o})),d=t.computed(()=>{var h,y;return((y=(h=s.schema)==null?void 0:h.value)==null?void 0:y.len_min)&&s.schema.value.len_min>0}),f=t.ref("");function u(h){return h.map(y=>y.trim()).filter(Boolean).join(", ")}function p(h){return h.trim().split(",").map(y=>y.trim()).filter(Boolean)}function m(h){f.value=h;const y=p(h),k=!y.length&&d.value?null:y;a.value=k,i("update:modelValue",k)}const g=Yo(s.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,h=>{const y=h?u(h):"";u(p(f.value))!==y&&(f.value=y)},{immediate:!0}),(h,y)=>{var b;const k=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(k,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${s.path.value}`},[t.createVNode(Kn,t.mergeProps(t.unref(c),{class:"ff-tag-field","data-1p-ignore":_.value,"data-autofocus":t.unref(g),"data-testid":`ff-${s.path.value}`,"model-value":f.value??"","onUpdate:modelValue":m}),t.createSlots({_:2},[(b=t.unref(c).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Sk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,xk)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-5195e71a"]]),vk=["data-testid"],Ak=["innerHTML"],Ik=Ae(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{labelAttributes:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=_t(t.toRef(()=>e.name)),c=Pt(s.path,t.toRef({...r,...o})),d=t.ref("");function f(m){d.value=m;let g=m||null;try{const _=JSON.parse(m);_&&typeof _=="object"&&(g=_)}catch{}a.value=g,i("update:modelValue",g)}const u=Yo(s.ancestors),p=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,m=>{if(m&&typeof m=="object"){try{const g=JSON.parse(d.value);Mn(g,m)||(d.value=JSON.stringify(m,null,2))}catch{d.value=JSON.stringify(m,null,2)}return}d.value=m||""},{immediate:!0}),(m,g)=>{var h;const _=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${s.path.value}`},[t.createVNode(Kn,t.mergeProps(t.unref(c),{class:"ff-json-field","data-1p-ignore":p.value,"data-autofocus":t.unref(u),"data-testid":`ff-${s.path.value}`,"model-value":d.value??"",multiline:"","onUpdate:modelValue":f}),t.createSlots({_:2},[(h=t.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(m.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Ak)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,vk)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-02205863"]]),Pk=["innerHTML"],Tk=Ae(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=$e(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=_t(t.toRef(()=>e.name));if(c.error)throw new Error(c.error.message);const d=Pt(c.path,t.toRef({...i,...o})),f=l.value?l.value.id:null,u=t.computed(()=>{var h;return d.value.placeholder?d.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((h=c.schema.value)==null?void 0:h.reference)??"entity"})}),p=t.ref(f??"");function m(h){f!==void 0&&h===""&&h!==f?(l.value=null,a("update:modelValue",null)):(l.value={id:h.trim()},a("update:modelValue",l.value))}const g=Yo(c.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(h,y)=>{var k;return t.withDirectives((t.openBlock(),t.createBlock(Kn,t.mergeProps(t.unref(d),{class:"ff-foreign-field","data-1p-ignore":_.value,"data-autofocus":t.unref(g),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":p.value,placeholder:u.value,"onUpdate:modelValue":m}),t.createSlots({_:2},[(k=t.unref(d).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Pk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-8626d32b"]]),mt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=_t(t.toRef(n,"name")),r=t.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?Tt:fo;case"boolean":return"one_of"in o.schema.value?Tt:Jr;case"number":case"integer":return"one_of"in o.schema.value?Tt:jn;case"array":return Wo;case"set":return Y0(o.schema)?Ja:Tt;case"record":return Ct;case"map":return Nk;case"json":return Ik;case"foreign":return Tk;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref(Un)]))),t.unref(o).error?(t.openBlock(),t.createBlock(l,{key:0,appearance:"danger",message:t.unref(o).error.message},null,8,["message"])):t.unref(o).renderer.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).renderer.value),{key:1,name:Ya(t.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,name:Ya(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),Ok=["data-testid"],$k=["data-testid"],Bk=["innerHTML"],Vk=["data-testid"],Rk={class:"ff-array-field-item-content"},Dk=["data-index","data-testid"],Wo=Ae(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var x;t.useCssVars(P=>({v547e409b:C.value}));const o=e,r=n,{i18n:{t:i}}=$e(),{getDefault:a,getSchema:l}=Me(),{value:s,hide:c,...d}=_t(t.toRef(o,"name")),f=Pt(d.path,t.toRef({...o,...t.useAttrs()})),u=t.computed(()=>{if(!d.path)throw new Error("Field path is required for sub-schema retrieval");const P=l(d.path.value);if(!P)throw new Error(`Schema not found for path: ${d.path.value}`);return P.elements}),p=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:m}=Sd("ff-array-field",p),g=t.computed(()=>o.appearance==="card"?Oe.KCard:"div");function _(P,A){return typeof o.itemLabel=="function"?o.itemLabel(P,A):o.itemLabel||f.value.label||`Item #${A}`}const h=t.computed(()=>p.value.map((P,A)=>({hash:`#${m(P,A)}`,title:""}))),y=t.ref((x=h.value[0])==null?void 0:x.hash),k=async()=>{var A;const P=a(Ze(d.path.value,za));Array.isArray(s.value)||(s.value=[]),s.value.push(P),r("add"),o.appearance==="tabs"&&(await t.nextTick(),y.value=(A=h.value[h.value.length-1])==null?void 0:A.hash),await t.nextTick(),N(p.value.length+1)},b=async P=>{var A;Array.isArray(s.value)&&s.value.splice(P,1),r("remove",P),o.appearance==="tabs"&&(y.value=(A=h.value[Math.max(0,P-1)])==null?void 0:A.hash)},E=t.useTemplateRef("root");function N(P){var B;if(!E.value)return;const A=Math.max(0,Math.min(P,p.value.length-1));(B=E.value.querySelector(`[data-index="${A}"] [data-autofocus]`))==null||B.focus()}const C=t.computed(()=>{const{appearance:P,stickyTabs:A}=o;return P!=="tabs"||A==null||A===!1?null:typeof A=="number"?`${o.stickyTabs}px`:typeof A=="string"?A:"0"});return(P,A)=>{var S;const B=t.resolveComponent("KAlert"),v=t.resolveComponent("KLabel"),w=t.resolveComponent("KButton"),F=t.resolveComponent("KTabs");return d.error?(t.openBlock(),t.createBlock(B,{key:0,appearance:"danger",message:d.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:E,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.stickyTabs}]),"data-testid":`ff-array-${d.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${d.path.value}`},[t.createVNode(v,t.mergeProps({class:"ff-array-field-label"},t.unref(f),{"data-testid":`ff-label-${d.path.value}`,"tooltip-attributes":t.unref(f).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(f).label)+" ",1)]),_:2},[(S=t.unref(f).labelAttributes)!=null&&S.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(P.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(f).labelAttributes.info},null,8,Bk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(w,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${d.path.value}`,icon:"",onClick:k},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,$k),p.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${d.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(M,O)=>(t.openBlock(),t.createBlock(t.unref(g),{key:t.unref(m)(M,O),class:"ff-array-field-item","data-index":O,"data-testid":`ff-array-item-${d.path.value}.${O}`},{default:t.withCtx(()=>[t.createElementVNode("div",Rk,[P.$slots.item?t.renderSlot(P.$slots,"item",{key:0,fieldName:String(O),index:O},void 0,!0):t.createCommentVNode("",!0),u.value.type==="array"&&u.value.elements.type==="string"?(t.openBlock(),t.createBlock(Ja,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(O)},null,8,["help","name"])):(t.openBlock(),t.createBlock(mt,{key:2,name:String(O)},null,8,["name"]))]),t.createVNode(w,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${d.path.value}.${O}`,icon:"",onClick:j=>b(O)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Vk)):(t.openBlock(),t.createBlock(t.unref(Oe.KCard),{key:1,"data-testid":`ff-array-tab-container-${d.path.value}`},{default:t.withCtx(()=>[t.createVNode(F,{modelValue:y.value,"onUpdate:modelValue":A[0]||(A[0]=M=>y.value=M),"data-testid":`ff-array-tabs-${d.path.value}`,tabs:h.value},t.createSlots({_:2},[t.renderList(p.value,(M,O)=>({name:t.unref(m)(M,O),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":O,"data-testid":`ff-array-item-${d.path.value}.${O}`},[P.$slots.item?t.renderSlot(P.$slots,"item",{key:0,fieldName:String(O),index:O},void 0,!0):(t.openBlock(),t.createBlock(mt,{key:1,name:String(O)},null,8,["name"]))],8,Dk)])})),t.renderList(p.value,(M,O)=>({name:`${t.unref(m)(M,O)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_(M,O))+" ",1),t.createVNode(w,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${d.path.value}.${O}`,icon:"",onClick:t.withModifiers(j=>b(O),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,Ok)),[[t.vShow,!t.unref(c)]])}}}),[["__scopeId","data-v-fd8cf789"]]),Xo=Symbol(),Mk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Me(),r=t.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[n.index])==null?void 0:c.name)})}),i=t.computed(()=>r.value.map(({[Xo]:l,name:s})=>({value:l,label:s}))),a=t.computed(()=>o.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(t.openBlock(),t.createBlock(Ct,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(Tt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(Ct,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(Tt,t.mergeProps(d,{items:t.unref(qa)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Lk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Me();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Xo]=vd())}return(r,i)=>(t.openBlock(),t.createBlock(Wo,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:t.withCtx(({index:a,fieldName:l})=>[t.createVNode(Mk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),ei=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=Me();return o&&r.set(n.match,o),(i,a)=>null}}),bt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{},renderRules:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),{getSchema:a,formData:l,setValue:s,getValue:c,rootRenderRules:d}=W0({schema:e.schema,propsData:t.computed(()=>e.data),propsConfig:e.config,propsRenderRules:t.toRef(()=>e.renderRules),onChange:u=>r("change",u)}),f=t.computed(()=>{var m;const{fields:u}=a();let p=[...u];return e.fieldsOrder?_d(p,e.fieldsOrder):((m=d.value)!=null&&m.bundles&&(p=bd([...p],d.value.bundles)),p)});return n({getValue:c,getRawValue:()=>t.toRaw(l),setValue:s}),(u,p)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Un)]))),t.renderSlot(u.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,m=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(m)[0],name:Object.keys(m)[0],onGlobalAction:p[0]||(p[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),Fk={class:"ff-advanced-fields"},ti=Ae(t.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),{getSchema:o}=Me(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Oe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"data-testid":"view-advanced","trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",Fk,[e.hideGeneralFields?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(mt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(mt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Ja,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0)],64)),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-fb80aa6f"]]),Uk=Ae(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=$e();function a(d,f=!1){return d.reduce((u,{[Xo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=Dn(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[Xo]=vd()});const p=a(u,!0);return u.forEach(g=>{g.depends_on=g.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=Dn(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Xo]:g,depends_on:_,...h}=m;return{depends_on:_.map(y=>u[y]).filter(y=>y!=null),...h}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(bt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(Un)]:t.withCtx(()=>[t.createVNode(ei,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(fo,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(ei,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(Wo,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Lk),t.createVNode(Ct,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(Ct,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(Ct,t.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),t.createVNode(ti)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),Kk={class:"ff-form-pinned-fields"},jk={class:"ff-form-config-form"},Qa=Ae(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return Ka(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",Kk,[t.createVNode(t.unref(De.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Oe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",jk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),Gk=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Qa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Uk,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),qk={key:1},zk=["innerHTML"],Hk={class:"horizontal-container"},Pd=Ae(t.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Me(),a=_t(t.toRef(()=>e.name)),l=Pt(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",qk,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(l).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).label)+" ",1)]),_:2},[(m=t.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,zk)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Hk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,g=>(t.openBlock(),t.createBlock(t.unref(Oe.KRadio),{key:g.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=_=>t.unref(a).value.value=_),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[t.vShow,!t.unref(a).hide.value]])}}}),[["__scopeId","data-v-910a1c85"]]),Yk={class:"sp-form-request-limits-subtitle"},Wk={class:"sp-form-request-limits-content"},Xk={class:"sp-form-window-type"},Zk={class:"sp-form-request-limits-items"},Jk={class:"sp-form-request-limits-row"},Qk=["id"],eC={class:"sp-form-request-limits-actions"},tC={key:0,class:"sp-form-request-limits-examples"},nC={class:"sp-form-request-limits-examples-badges"},el="config.window_type",oC=Ae(t.defineComponent({__name:"RequestLimitsForm",setup(e){var h;const{t:n}=Xe.createI18n("en-us",Je),{formData:o,getSelectItems:r,getSchema:i}=Me(),a=t.computed(()=>{var k,b;const y=(b=(k=o.config)==null?void 0:k.limit)==null?void 0:b.map((E,N)=>{var C,x;return{limit:E,windowSize:(x=(C=o.config)==null?void 0:C.window_size)==null?void 0:x[N]}});return!Array.isArray(y)||y.length===0?[{limit:null,windowSize:null}]:y}),{getKey:l}=Sd("request-limits",a),s=y=>{var k,b;p.value=void 0,o.config&&((k=o.config.limit)!=null&&k.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.length||(o.config.window_size=[null]),o.config.limit.splice(y+1,0,null),o.config.window_size.splice(y+1,0,null))},c=y=>{o.config&&(o.config.limit.splice(y,1),o.config.window_size.splice(y,1))},d=(h=i(el))==null?void 0:h.default,f=t.computed(()=>Pa(o,el)),u=t.computed(()=>r(el).sort((y,k)=>y.value===d?-1:k.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),_=(y,k)=>{if(k===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=k}),o.config.limit=[y.config.limit],o.config.window_size=[y.config.window_size]};return(y,k)=>{const b=t.resolveComponent("KLabel"),E=t.resolveComponent("KButton"),N=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),x=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(x,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Yk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Wk,[t.createElementVNode("div",Xk,[t.createVNode(Pd,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=P=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",Zk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(P,A)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(P,A)},[t.createVNode(b,{for:`sp-form-request-limits-item-${A}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:A+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Jk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${A}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(jn,{name:`$.config.limit.${A}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(jn,{name:`$.config.window_size.${A}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,Qk),t.createElementVNode("div",eC,[t.createVNode(E,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(A)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(E,{appearance:"tertiary",onClick:()=>s(A)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(t.openBlock(),t.createElementBlock("div",tC,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",nC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,(P,A)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${A}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(P.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(P.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(P.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(N,{appearance:p.value===`${f.value}-${A}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(P,`${f.value}-${A}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(P.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),rC={id:"sp-form-error-legend",class:"sp-form-error-inputs"},iC=Ae(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Xe.createI18n("en-us",Je);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",rC,[t.createVNode(jn,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(fo,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),aC={class:"partial-config-card"},lC={class:"config-card-row-label"},sC={class:"label-text"},cC=["data-testid"],dC=["data-testid"],uC={key:1},fC=["data-testid"],pC=["data-testid"],mC=Ae(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Xe.createI18n("en-us",Je),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=ge.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,g,_,h;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(g=r[u])!=null&&g.formatter?r[u].formatter(p):p,type:((_=r[u])==null?void 0:_.type)??l(u,p),order:((h=r[u])==null?void 0:h.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=H0(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",aC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:g,label:_,value:h,type:y})=>(t.openBlock(),t.createElementBlock("div",{key:g,class:"partial-config-card-row"},[t.createElementVNode("div",lC,[t.createElementVNode("div",sC,t.toDisplayString(_),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[a(h)?(t.openBlock(),t.createElementBlock("div",uC,[y==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(h)},null,8,["text"])],8,fC)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},t.toDisplayString(h),9,pC))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,dC))],8,cC)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),ni=Symbol("redis-partial-info"),gC={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}};function tl(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(pd,e);return o=>n(o)}const hC={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},yC={class:"shared-redis-config"},_C={class:"shared-redis-config-title"},bC={class:"redis-config-select","data-testid":"redis-config-select"},wC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Td=Ae(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(e){var B;const{t:n}=Xe.createI18n("en-us",Je),o=["host","port","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","timeout","read_timeout","send_timeout","connect_timeout","connection_is_proxied","redis_proxy_type","cloud_authentication"],r={dependencies:{"cloud_authentication.aws_cache_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_region":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_is_serverless":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_access_key_id":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_secret_access_key":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_assume_role_arn":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_role_session_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.gcp_service_account_json":["cloud_authentication.auth_provider","gcp"],"cloud_authentication.azure_client_id":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_client_secret":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_tenant_id":["cloud_authentication.auth_provider","azure"]}},i=e,a=tl(),l=t.inject(ni),s=(l==null?void 0:l.isEditing)||!1,c=t.computed(()=>{var v;return i.redisPath?i.redisPath:(v=l==null?void 0:l.redisPath)!=null&&v.value?"$."+l.redisPath.value:"$.config.redis"}),d=i.redisType||((B=l==null?void 0:l.redisType)==null?void 0:B.value),f=t.computed(()=>{var v;return!!((v=l==null?void 0:l.redisType)!=null&&v.value)}),u=t.ref(null),p=t.ref(!s),{getMessageFromError:m}=ge.useErrors(),g=t.ref(i.defaultRedisConfigItem),_=t.ref({}),h=t.ref(),{value:y}=xd("$.partials"),{value:k,hide:b}=_t(c),E=t.inject(De.FORMS_CONFIG),N=t.ref(null),C=v=>{let w=`${E.apiBaseUrl}${gC[E.app].getOne}`;return E.app==="konnect"?w=w.replace(/{controlPlaneId}/gi,(E==null?void 0:E.controlPlaneId)||""):E.app==="kongManager"&&(w=w.replace(/\/{workspace}/gi,E!=null&&E.workspace?`/${E.workspace}`:"")),w=w.replace(/{id}/gi,String(v)),w},{axiosInstance:x}=ge.useAxios(E==null?void 0:E.axiosRequestConfig),P=()=>{p.value?(h.value&&(y.value=h.value,g.value=h.value[0].id,k.value=void 0),k!=null&&k.value&&(_.value=k.value)):(Object.keys(_.value).length&&(k.value=_.value),y!=null&&y.value&&(h.value=y.value),y.value=s?null:void 0)},A=async v=>{if(v){g.value=v,y.value=[{id:v}],h.value=[{id:v}],k.value=void 0;try{const w=await x.get(C(v));if(w.data.config){const F=Object.assign(w.data,w.data.config);delete F.config,u.value=F}}catch(w){console.error(w)}}};return t.watch(()=>p.value,()=>{P()}),t.onBeforeMount(()=>{var v;if(i.defaultRedisConfigItem||y!=null&&y.value){const w=i.defaultRedisConfigItem||((v=y==null?void 0:y.value)==null?void 0:v[0].id);A(w),p.value=!0}else k!=null&&k.value&&(_.value=k.value)}),t.watch(()=>b==null?void 0:b.value,v=>{p.value&&(v&&y.value?y.value=s?null:void 0:v||h.value&&(y.value=h.value,A(h.value[0].id)))}),(v,w)=>{const F=t.resolveComponent("KRadio"),S=t.resolveComponent("KCard");return f.value?t.withDirectives((t.openBlock(),t.createBlock(S,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(n)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",hC,[t.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":w[0]||(w[0]=M=>p.value=M),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(n)("redis.shared_configuration.description"),label:t.unref(n)("redis.shared_configuration.label"),"selected-value":!0},null,8,["modelValue","description","label"]),t.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":w[1]||(w[1]=M=>p.value=M),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(n)("redis.dedicated_configuration.description"),label:t.unref(n)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),t.withDirectives(t.createElementVNode("div",yC,[t.createElementVNode("div",_C,t.toDisplayString(t.unref(n)("redis.shared_configuration.title")),1),t.createElementVNode("div",bC,[t.createVNode(t.unref(Ks.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":g.value,"redis-type":t.unref(d),onErrorChange:w[2]||(w[2]=M=>N.value=M),onToast:t.unref(a),"onUpdate:modelValue":w[3]||(w[3]=M=>A(M))},null,8,["model-value","redis-type","onToast"])]),u.value?(t.openBlock(),t.createBlock(mC,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),N.value?(t.openBlock(),t.createElementBlock("p",wC,t.toDisplayString(N.value?t.unref(m)(N.value):t.unref(n)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)],512),[[t.vShow,p.value]]),p.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Ct,t.mergeProps({key:0},i,{"as-child":"","fields-order":o,name:c.value,"render-rules":r,"reset-label-path":"reset"}),null,16,["name"]))]),_:1},8,["title"])),[[t.vShow,!t.unref(b)]]):t.withDirectives((t.openBlock(),t.createBlock(Ct,t.mergeProps({key:1},i,{"fields-order":o,"hide-required-asterisk":"",name:c.value,"render-rules":r}),null,16,["name"])),[[t.vShow,!t.unref(b)]])}}}),[["__scopeId","data-v-437982e8"]]),kC=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=Me(),o=t.inject(ni),r=(o==null?void 0:o.isEditing)||!1;return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=r?null:void 0)}),(i,a)=>(t.openBlock(),t.createBlock(Ad,null,{default:t.withCtx(()=>{var l;return[((l=t.unref(n).config)==null?void 0:l.strategy)==="redis"?(t.openBlock(),t.createBlock(Td,{key:0})):t.createCommentVNode("",!0)]}),_:1}))}}),CC=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],setup(e,{emit:n}){const o=n,r={hasValue:a=>!!(a!=null&&a.config)};function i(a){var l;((l=a.config)==null?void 0:l.namespace)===null&&delete a.config.namespace,o("change",a)}return(a,l)=>(t.openBlock(),t.createBlock(bt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(oC),t.createVNode(iC)]),_:1}),t.createVNode(ti,null,{default:t.withCtx(()=>[t.createVNode(mt,{name:"config.dictionary_name"}),t.createVNode(mt,{name:"config.lock_dictionary_name"}),t.createVNode(mt,{name:"config.strategy"}),t.createVNode(kC),t.createVNode(mt,{name:"config.namespace"}),t.createVNode(mt,{name:"config.hide_client_headers"}),t.createVNode(mt,{name:"config.disable_penalty"}),t.createVNode(mt,{name:"config.retry_after_jitter_max"}),t.createVNode(mt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),EC=t.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Qa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(CC,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),nl=t.defineComponent({__name:"VFGField",props:{formOptions:{},vfgSchema:{}},setup(e){const n=Symbol("rawTagsString"),{formData:o,getSchema:r}=Me(),i=t.computed(()=>{const l={};return e.vfgSchema.fields.forEach(s=>{s.type==="AutoSuggest"?o[s.model.split("-")[0]]&&(l[s.model]=o[s.model.split("-")[0]].id):s.model==="tags"&&o[s.model]?l[s.model]=o[s.model][n]??o[s.model].join(", "):l[s.model]=o[s.model]}),l});function a(l,s){const c=s.split("-")[0],d=r(c);if(!d)throw new Error(`Field schema not found for path: ${c}`);if(d.type==="foreign")o[c]=l?{id:l}:null;else if(c==="tags"){const f=l.split(",").map(u=>u.trim()).filter(Boolean);o[c]=f,o[c][n]=l}else o[c]=l}return(l,s)=>(t.openBlock(),t.createBlock(t.unref(De.VueFormGenerator),{model:i.value,options:e.formOptions,schema:e.vfgSchema,onModelUpdated:a},null,8,["model","options","schema"]))}}),NC={"data-testid":"ff-identity-realms-field"},xC=["innerHTML"],SC=t.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(e){const n=e,{error:o,value:r,path:i}=_t(t.toRef(n,"name"));if(o)throw o;const a=Pt(t.toRef(n,"name"),n);return(l,s)=>{var d;const c=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",NC,[t.createVNode(c,t.mergeProps({class:"ff-array-field-label"},t.unref(a),{"data-testid":`ff-label-${t.unref(i)}`,"tooltip-attributes":t.unref(a).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a).label)+" ",1)]),_:2},[(d=t.unref(a).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(l.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,xC)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(Hs,{modelValue:t.unref(r),"onUpdate:modelValue":s[0]||(s[0]=f=>t.isRef(r)?r.value=f:null)},null,8,["modelValue"])])}}}),vC={class:"enabled"},AC={class:"scope"},IC={key:0,class:"scope-detail"},Od=Ae(t.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=t.createPropsRestProxy(e,["editorMode"]),r=t.inject(ni),i=t.useSlots(),a=t.computed(()=>o.formConfig??{hasValue:A=>!!A&&Object.keys(A).length>0}),l=t.computed(()=>{var A,B;return(A=o.formSchema)!=null&&A.groups?o.formSchema.groups.reduce((v,w)=>{var M,O;const F=w.fields,S=(O=(M=w.collapsible)==null?void 0:M.nestedCollapsible)!=null&&O.fields?F.concat(w.collapsible.nestedCollapsible.fields):F;return v.concat(S)},[]):((B=o.formSchema)==null?void 0:B.fields)||[]}),s=t.computed(()=>({fields:l.value.filter(A=>A.model==="enabled")})),c=t.computed(()=>l.value.find(A=>A.type==="selectionGroup")),d=t.computed(()=>{var A;return(((A=c.value)==null?void 0:A.fields)||[]).map(({label:B,description:v})=>({label:B,description:v}))}),f=t.computed(()=>{var A,B;return(B=(A=c.value)==null?void 0:A.fields)==null?void 0:B[1]}),u=t.computed(()=>{const A=["instance_name","protocols","tags"];return{fields:l.value.filter(B=>A.includes(B.model))}}),p=["config"],m=t.computed(()=>{var v;const A={type:"record",fields:o.schema.fields.filter(w=>p.includes(Object.keys(w)[0]))};return[...s.value.fields,...((v=f.value)==null?void 0:v.fields)??[],...u.value.fields].forEach(w=>{if(w.type==="AutoSuggest")A.fields.push({[w.model.split("-")[0]]:{type:"foreign",reference:w.entity,description:w.help}});else if(w.model==="enabled")A.fields.push({[w.model]:{type:"boolean",default:!0}});else if(w.model==="instance_name")A.fields.push({[w.model]:{type:"string",description:w.help}});else if(w.model==="protocols")A.fields.push({[w.model]:{type:"set",elements:{type:"string",one_of:w.values.map(F=>F.value)},default:[...w.default]}});else if(w.model==="tags")A.fields.push({[w.model]:{type:"set",elements:{type:"string"}}});else throw new Error(`Unsupported VFG field type '${w.type}' for model '${w.model}'`)}),A}),g=t.computed(()=>{const A=["config","partials","__ui_data","enabled","protocols","instance_name","tags","consumer","consumer_group","route","service"];return Ka(o.model,A)}),_=t.computed(()=>{var A;return((A=f.value)==null?void 0:A.fields.map(B=>B.model.split("-")[0]))??[]}),h=t.ref(Ka(g.value,_.value)),y=t.ref(Object.values(h.value).some(P)),k=t.ref(!0),b=t.useTemplateRef("form");let E=!1;function N(){if(!b.value)return;const{getRawValue:A,setValue:B}=b.value,w={...A()};y.value?_.value.forEach(F=>{w[F]=h.value[F]??null}):_.value.forEach(F=>{w[F]=null}),E=!0,B(w),t.nextTick(()=>{E=!1})}function C(A){if(E||x(A),e.editorMode==="code"){const B=_.value.some(v=>P(A[v]));B!==y.value&&(y.value=B)}o.onFormChange(A)}function x(A){_.value.forEach(B=>{const v=A[B];ld(v,"id")&&v.id!=null?h.value[B]=v:h.value[B]=null})}function P(A){return ld(A,"id")&&A.id!=null}return(A,B)=>{const v=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(bt,{ref:"form",class:"ff-standard-layout",config:a.value,data:g.value,"render-rules":e.renderRules,schema:m.value,tag:"div",onChange:C},{[t.unref(Un)]:t.withCtx(()=>[t.createVNode(ei,{match:({path:w})=>{var F,S;return w===((S=(F=t.unref(r))==null?void 0:F.redisPath)==null?void 0:S.value)}},{default:t.withCtx(()=>[t.createVNode(Td)]),_:1},8,["match"]),t.createVNode(ei,{match:({path:w})=>e.pluginName==="key-auth"&&w==="config.identity_realms"},{default:t.withCtx(w=>[t.createVNode(SC,t.normalizeProps(t.guardReactiveProps(w)),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[e.editorMode==="form"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(t.unref(ge.EntityFormBlock),{description:e.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:e.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",vC,[t.createVNode(nl,{"form-options":e.formOptions,"vfg-schema":s.value},null,8,["form-options","vfg-schema"])]),t.createElementVNode("div",AC,[t.createVNode(t.unref(Oe.KRadio),t.mergeProps({modelValue:y.value,"onUpdate:modelValue":B[0]||(B[0]=w=>y.value=w),card:"","card-orientation":"horizontal"},d.value[0],{"selected-value":!1,"onUpdate:modelValue":N}),null,16,["modelValue"]),d.value[1]?(t.openBlock(),t.createBlock(t.unref(Oe.KRadio),t.mergeProps({key:0,modelValue:y.value,"onUpdate:modelValue":B[1]||(B[1]=w=>y.value=w),card:"","card-orientation":"horizontal"},d.value[1],{"selected-value":!0,"onUpdate:modelValue":N}),null,16,["modelValue"])):t.createCommentVNode("",!0)]),y.value&&f.value?(t.openBlock(),t.createElementBlock("div",IC,[t.createVNode(nl,{"form-options":e.formOptions,"vfg-schema":f.value},null,8,["form-options","vfg-schema"])])):t.createCommentVNode("",!0),t.createVNode(v,{modelValue:k.value,"onUpdate:modelValue":B[2]||(B[2]=w=>k.value=w),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(nl,{"form-options":e.formOptions,"vfg-schema":u.value},null,8,["form-options","vfg-schema"])]),_:1},8,["modelValue"])]),_:2},[i["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,i["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,i["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ge.EntityFormBlock),{description:e.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(A.$slots,"default",{},void 0,!0)]),_:2},[i["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,i["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,i["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])],64)):t.renderSlot(A.$slots,"code-editor",{key:1},void 0,!0)]),_:2},1032,["config","data","render-rules","schema"])}}}),[["__scopeId","data-v-ae2d8e84"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function $d(e){return typeof e>"u"||e===null}function PC(e){return typeof e=="object"&&e!==null}function TC(e){return Array.isArray(e)?e:$d(e)?[]:[e]}function OC(e,n){var o,r,i,a;if(n)for(a=Object.keys(n),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=n[i];return e}function $C(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function BC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var VC=$d,RC=PC,DC=TC,MC=$C,LC=BC,FC=OC,it={isNothing:VC,isObject:RC,toArray:DC,repeat:MC,isNegativeZero:LC,extend:FC};function Bd(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
18
18
 
19
- `+e.mark.snippet),r+" "+o):r}function Xo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=$d(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Xo.prototype=Object.create(Error.prototype),Xo.prototype.constructor=Xo,Xo.prototype.toString=function(n){return this.name+": "+$d(this,n)};var wt=Xo;function el(e,n,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-n>s&&(a=" ... ",n=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(n,o).replace(/\t/g,"→")+l,pos:r-n+a.length}}function tl(e,n){return it.repeat(" ",n-e.length)+e}function DC(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],i=[],a,l=-1;a=o.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&l<0&&(l=r.length-2);l<0&&(l=r.length-1);var s="",c,d,f=Math.min(e.line+n.linesAfter,i.length).toString().length,u=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)d=el(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=it.repeat(" ",n.indent)+tl((e.line-c+1).toString(),f)+" | "+d.str+`
20
- `+s;for(d=el(e.buffer,r[l],i[l],e.position,u),s+=it.repeat(" ",n.indent)+tl((e.line+1).toString(),f)+" | "+d.str+`
19
+ `+e.mark.snippet),r+" "+o):r}function Zo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=Bd(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Zo.prototype=Object.create(Error.prototype),Zo.prototype.constructor=Zo,Zo.prototype.toString=function(n){return this.name+": "+Bd(this,n)};var wt=Zo;function ol(e,n,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-n>s&&(a=" ... ",n=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(n,o).replace(/\t/g,"→")+l,pos:r-n+a.length}}function rl(e,n){return it.repeat(" ",n-e.length)+e}function UC(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],i=[],a,l=-1;a=o.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&l<0&&(l=r.length-2);l<0&&(l=r.length-1);var s="",c,d,f=Math.min(e.line+n.linesAfter,i.length).toString().length,u=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)d=ol(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=it.repeat(" ",n.indent)+rl((e.line-c+1).toString(),f)+" | "+d.str+`
20
+ `+s;for(d=ol(e.buffer,r[l],i[l],e.position,u),s+=it.repeat(" ",n.indent)+rl((e.line+1).toString(),f)+" | "+d.str+`
21
21
  `,s+=it.repeat("-",n.indent+f+3+d.pos)+`^
22
- `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=el(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=it.repeat(" ",n.indent)+tl((e.line+c+1).toString(),f)+" | "+d.str+`
23
- `;return s.replace(/\n$/,"")}var MC=DC,LC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],FC=["scalar","sequence","mapping"];function UC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function KC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(LC.indexOf(o)===-1)throw new wt('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=n,this.tag=e,this.kind=n.kind||null,this.resolve=n.resolve||function(){return!0},this.construct=n.construct||function(o){return o},this.instanceOf=n.instanceOf||null,this.predicate=n.predicate||null,this.represent=n.represent||null,this.representName=n.representName||null,this.defaultStyle=n.defaultStyle||null,this.multi=n.multi||!1,this.styleAliases=UC(n.styleAliases||null),FC.indexOf(this.kind)===-1)throw new wt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var dt=KC;function Bd(e,n){var o=[];return e[n].forEach(function(r){var i=o.length;o.forEach(function(a,l){a.tag===r.tag&&a.kind===r.kind&&a.multi===r.multi&&(i=l)}),o[i]=r}),o}function jC(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,o;function r(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(r);return e}function nl(e){return this.extend(e)}nl.prototype.extend=function(n){var o=[],r=[];if(n instanceof dt)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.explicit));else throw new wt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new wt("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new wt("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(nl.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Bd(i,"implicit"),i.compiledExplicit=Bd(i,"explicit"),i.compiledTypeMap=jC(i.compiledImplicit,i.compiledExplicit),i};var Vd=nl,Rd=new dt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Dd=new dt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Md=new dt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Ld=new Vd({explicit:[Rd,Dd,Md]});function GC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function qC(){return null}function zC(e){return e===null}var Fd=new dt("tag:yaml.org,2002:null",{kind:"scalar",resolve:GC,construct:qC,predicate:zC,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function HC(e){if(e===null)return!1;var n=e.length;return n===4&&(e==="true"||e==="True"||e==="TRUE")||n===5&&(e==="false"||e==="False"||e==="FALSE")}function YC(e){return e==="true"||e==="True"||e==="TRUE"}function WC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Ud=new dt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:HC,construct:YC,predicate:WC,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function XC(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function ZC(e){return 48<=e&&e<=55}function JC(e){return 48<=e&&e<=57}function QC(e){if(e===null)return!1;var n=e.length,o=0,r=!1,i;if(!n)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===n)return!0;if(i=e[++o],i==="b"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!XC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!ZC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!JC(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function eE(e){var n=e,o=1,r;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),r=n[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),n=n.slice(1),r=n[0]),n==="0")return 0;if(r==="0"){if(n[1]==="b")return o*parseInt(n.slice(2),2);if(n[1]==="x")return o*parseInt(n.slice(2),16);if(n[1]==="o")return o*parseInt(n.slice(2),8)}return o*parseInt(n,10)}function tE(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!it.isNegativeZero(e)}var Kd=new dt("tag:yaml.org,2002:int",{kind:"scalar",resolve:QC,construct:eE,predicate:tE,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),nE=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function oE(e){return!(e===null||!nE.test(e)||e[e.length-1]==="_")}function rE(e){var n,o;return n=e.replace(/_/g,"").toLowerCase(),o=n[0]==="-"?-1:1,"+-".indexOf(n[0])>=0&&(n=n.slice(1)),n===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:n===".nan"?NaN:o*parseFloat(n,10)}var iE=/^[-+]?[0-9]+e/;function aE(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(it.isNegativeZero(e))return"-0.0";return o=e.toString(10),iE.test(o)?o.replace("e",".e"):o}function lE(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||it.isNegativeZero(e))}var jd=new dt("tag:yaml.org,2002:float",{kind:"scalar",resolve:oE,construct:rE,predicate:lE,represent:aE,defaultStyle:"lowercase"}),Gd=Ld.extend({implicit:[Fd,Ud,Kd,jd]}),qd=Gd,zd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Hd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function sE(e){return e===null?!1:zd.exec(e)!==null||Hd.exec(e)!==null}function cE(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=zd.exec(e),n===null&&(n=Hd.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],u=+(n[11]||0),d=(f*60+u)*6e4,n[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function dE(e){return e.toISOString()}var Yd=new dt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:sE,construct:cE,instanceOf:Date,represent:dE});function uE(e){return e==="<<"||e===null}var Wd=new dt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:uE}),ol=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
24
- \r`;function fE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=ol;for(o=0;o<i;o++)if(n=a.indexOf(e.charAt(o)),!(n>64)){if(n<0)return!1;r+=6}return r%8===0}function pE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=ol,l=0,s=[];for(n=0;n<i;n++)n%4===0&&n&&(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)),l=l<<6|a.indexOf(r.charAt(n));return o=i%4*6,o===0?(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)):o===18?(s.push(l>>10&255),s.push(l>>2&255)):o===12&&s.push(l>>4&255),new Uint8Array(s)}function mE(e){var n="",o=0,r,i,a=e.length,l=ol;for(r=0;r<a;r++)r%3===0&&r&&(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]),o=(o<<8)+e[r];return i=a%3,i===0?(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]):i===2?(n+=l[o>>10&63],n+=l[o>>4&63],n+=l[o<<2&63],n+=l[64]):i===1&&(n+=l[o>>2&63],n+=l[o<<4&63],n+=l[64],n+=l[64]),n}function gE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Xd=new dt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:fE,construct:pE,predicate:gE,represent:mE}),hE=Object.prototype.hasOwnProperty,yE=Object.prototype.toString;function _E(e){if(e===null)return!0;var n=[],o,r,i,a,l,s=e;for(o=0,r=s.length;o<r;o+=1){if(i=s[o],l=!1,yE.call(i)!=="[object Object]")return!1;for(a in i)if(hE.call(i,a))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(a)===-1)n.push(a);else return!1}return!0}function bE(e){return e!==null?e:[]}var Zd=new dt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:_E,construct:bE}),wE=Object.prototype.toString;function kE(e){if(e===null)return!0;var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1){if(r=l[n],wE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function CE(e){if(e===null)return[];var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1)r=l[n],i=Object.keys(r),a[n]=[i[0],r[i[0]]];return a}var Jd=new dt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:kE,construct:CE}),EE=Object.prototype.hasOwnProperty;function NE(e){if(e===null)return!0;var n,o=e;for(n in o)if(EE.call(o,n)&&o[n]!==null)return!1;return!0}function xE(e){return e!==null?e:{}}var Qd=new dt("tag:yaml.org,2002:set",{kind:"mapping",resolve:NE,construct:xE}),rl=qd.extend({implicit:[Yd,Wd],explicit:[Xd,Zd,Jd,Qd]}),mn=Object.prototype.hasOwnProperty,Qr=1,eu=2,tu=3,ei=4,il=1,SE=2,nu=3,vE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,AE=/[\x85\u2028\u2029]/,IE=/[,\[\]\{\}]/,ou=/^(?:!|!!|![a-z\-]+!)$/i,ru=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function iu(e){return Object.prototype.toString.call(e)}function Kt(e){return e===10||e===13}function Gn(e){return e===9||e===32}function Et(e){return e===9||e===32||e===10||e===13}function po(e){return e===44||e===91||e===93||e===123||e===125}function PE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function TE(e){return e===120?2:e===117?4:e===85?8:0}function OE(e){return 48<=e&&e<=57?e-48:-1}function au(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
25
- `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"…":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function $E(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function lu(e,n,o){n==="__proto__"?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:o}):e[n]=o}for(var su=new Array(256),cu=new Array(256),mo=0;mo<256;mo++)su[mo]=au(mo)?1:0,cu[mo]=au(mo);function BE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||rl,this.onWarning=n.onWarning||null,this.legacy=n.legacy||!1,this.json=n.json||!1,this.listener=n.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function du(e,n){var o={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return o.snippet=MC(o),new wt(n,o)}function Pe(e,n){throw du(e,n)}function ti(e,n){e.onWarning&&e.onWarning.call(null,du(e,n))}var uu={YAML:function(n,o,r){var i,a,l;n.version!==null&&Pe(n,"duplication of %YAML directive"),r.length!==1&&Pe(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Pe(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Pe(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&ti(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Pe(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],ou.test(i)||Pe(n,"ill-formed tag handle (first argument) of the TAG directive"),mn.call(n.tagMap,i)&&Pe(n,'there is a previously declared suffix for "'+i+'" tag handle'),ru.test(a)||Pe(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Pe(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function gn(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||Pe(e,"expected valid JSON character");else vE.test(s)&&Pe(e,"the stream contains non-printable characters");e.result+=s}}function fu(e,n,o,r){var i,a,l,s;for(it.isObject(o)||Pe(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],mn.call(n,a)||(lu(n,a,o[a]),r[a]=!0)}function go(e,n,o,r,i,a,l,s,c){var d,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,f=i.length;d<f;d+=1)Array.isArray(i[d])&&Pe(e,"nested arrays are not supported inside keys"),typeof i=="object"&&iu(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&iu(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,f=a.length;d<f;d+=1)fu(e,n,a[d],o);else fu(e,n,a,o);else!e.json&&!mn.call(o,i)&&mn.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Pe(e,"duplicated mapping key")),lu(n,i,a),delete o[i];return n}function al(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Pe(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Qe(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;Gn(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(n&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(Kt(i))for(al(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return o!==-1&&r!==0&&e.lineIndent<o&&ti(e,"deficient indentation"),r}function ni(e){var n=e.position,o;return o=e.input.charCodeAt(n),!!((o===45||o===46)&&o===e.input.charCodeAt(n+1)&&o===e.input.charCodeAt(n+2)&&(n+=3,o=e.input.charCodeAt(n),o===0||Et(o)))}function ll(e,n){n===1?e.result+=" ":n>1&&(e.result+=it.repeat(`
26
- `,n-1))}function VE(e,n,o){var r,i,a,l,s,c,d,f,u=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),Et(m)||po(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),Et(i)||o&&po(i)))return!1;for(e.kind="scalar",e.result="",a=l=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),Et(i)||o&&po(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),Et(r))break}else{if(e.position===e.lineStart&&ni(e)||o&&po(m))break;if(Kt(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Qe(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=f;break}}s&&(gn(e,a,l,!1),ll(e,e.line-c),a=l=e.position,s=!1),Gn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return gn(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function RE(e,n){var o,r,i;if(o=e.input.charCodeAt(e.position),o!==39)return!1;for(e.kind="scalar",e.result="",e.position++,r=i=e.position;(o=e.input.charCodeAt(e.position))!==0;)if(o===39)if(gn(e,r,e.position,!0),o=e.input.charCodeAt(++e.position),o===39)r=e.position,e.position++,i=e.position;else return!0;else Kt(o)?(gn(e,r,i,!0),ll(e,Qe(e,!1,n)),r=i=e.position):e.position===e.lineStart&&ni(e)?Pe(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Pe(e,"unexpected end of the stream within a single quoted scalar")}function DE(e,n){var o,r,i,a,l,s;if(s=e.input.charCodeAt(e.position),s!==34)return!1;for(e.kind="scalar",e.result="",e.position++,o=r=e.position;(s=e.input.charCodeAt(e.position))!==0;){if(s===34)return gn(e,o,e.position,!0),e.position++,!0;if(s===92){if(gn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Kt(s))Qe(e,!1,n);else if(s<256&&su[s])e.result+=cu[s],e.position++;else if((l=TE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=PE(s))>=0?a=(a<<4)+l:Pe(e,"expected hexadecimal character");e.result+=$E(a),e.position++}else Pe(e,"unknown escape sequence");o=r=e.position}else Kt(s)?(gn(e,o,r,!0),ll(e,Qe(e,!1,n)),o=r=e.position):e.position===e.lineStart&&ni(e)?Pe(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Pe(e,"unexpected end of the stream within a double quoted scalar")}function ME(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,g=Object.create(null),_,y,h,k;if(k=e.input.charCodeAt(e.position),k===91)f=93,m=!1,s=[];else if(k===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),k=e.input.charCodeAt(++e.position);k!==0;){if(Qe(e,!0,n),k=e.input.charCodeAt(e.position),k===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?k===44&&Pe(e,"expected the node content, but found ','"):Pe(e,"missed comma between flow collection entries"),y=_=h=null,u=p=!1,k===63&&(d=e.input.charCodeAt(e.position+1),Et(d)&&(u=p=!0,e.position++,Qe(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,ho(e,n,Qr,!1,!0),y=e.tag,_=e.result,Qe(e,!0,n),k=e.input.charCodeAt(e.position),(p||e.line===r)&&k===58&&(u=!0,k=e.input.charCodeAt(++e.position),Qe(e,!0,n),ho(e,n,Qr,!1,!0),h=e.result),m?go(e,s,g,y,_,h,r,i,a):u?s.push(go(e,null,g,y,_,h,r,i,a)):s.push(_),Qe(e,!0,n),k=e.input.charCodeAt(e.position),k===44?(o=!0,k=e.input.charCodeAt(++e.position)):o=!1}Pe(e,"unexpected end of the stream within a flow collection")}function LE(e,n){var o,r,i=il,a=!1,l=!1,s=n,c=0,d=!1,f,u;if(u=e.input.charCodeAt(e.position),u===124)r=!1;else if(u===62)r=!0;else return!1;for(e.kind="scalar",e.result="";u!==0;)if(u=e.input.charCodeAt(++e.position),u===43||u===45)il===i?i=u===43?nu:SE:Pe(e,"repeat of a chomping mode identifier");else if((f=OE(u))>=0)f===0?Pe(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Pe(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(Gn(u)){do u=e.input.charCodeAt(++e.position);while(Gn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!Kt(u)&&u!==0)}for(;u!==0;){for(al(e),e.lineIndent=0,u=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&u===32;)e.lineIndent++,u=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),Kt(u)){c++;continue}if(e.lineIndent<s){i===nu?e.result+=it.repeat(`
27
- `,a?1+c:c):i===il&&a&&(e.result+=`
22
+ `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=ol(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=it.repeat(" ",n.indent)+rl((e.line+c+1).toString(),f)+" | "+d.str+`
23
+ `;return s.replace(/\n$/,"")}var KC=UC,jC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],GC=["scalar","sequence","mapping"];function qC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function zC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(jC.indexOf(o)===-1)throw new wt('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=n,this.tag=e,this.kind=n.kind||null,this.resolve=n.resolve||function(){return!0},this.construct=n.construct||function(o){return o},this.instanceOf=n.instanceOf||null,this.predicate=n.predicate||null,this.represent=n.represent||null,this.representName=n.representName||null,this.defaultStyle=n.defaultStyle||null,this.multi=n.multi||!1,this.styleAliases=qC(n.styleAliases||null),GC.indexOf(this.kind)===-1)throw new wt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var dt=zC;function Vd(e,n){var o=[];return e[n].forEach(function(r){var i=o.length;o.forEach(function(a,l){a.tag===r.tag&&a.kind===r.kind&&a.multi===r.multi&&(i=l)}),o[i]=r}),o}function HC(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,o;function r(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(r);return e}function il(e){return this.extend(e)}il.prototype.extend=function(n){var o=[],r=[];if(n instanceof dt)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.explicit));else throw new wt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new wt("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new wt("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof dt))throw new wt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(il.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Vd(i,"implicit"),i.compiledExplicit=Vd(i,"explicit"),i.compiledTypeMap=HC(i.compiledImplicit,i.compiledExplicit),i};var Rd=il,Dd=new dt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Md=new dt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Ld=new dt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Fd=new Rd({explicit:[Dd,Md,Ld]});function YC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function WC(){return null}function XC(e){return e===null}var Ud=new dt("tag:yaml.org,2002:null",{kind:"scalar",resolve:YC,construct:WC,predicate:XC,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function ZC(e){if(e===null)return!1;var n=e.length;return n===4&&(e==="true"||e==="True"||e==="TRUE")||n===5&&(e==="false"||e==="False"||e==="FALSE")}function JC(e){return e==="true"||e==="True"||e==="TRUE"}function QC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Kd=new dt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:ZC,construct:JC,predicate:QC,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function eE(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function tE(e){return 48<=e&&e<=55}function nE(e){return 48<=e&&e<=57}function oE(e){if(e===null)return!1;var n=e.length,o=0,r=!1,i;if(!n)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===n)return!0;if(i=e[++o],i==="b"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!eE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!tE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!nE(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function rE(e){var n=e,o=1,r;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),r=n[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),n=n.slice(1),r=n[0]),n==="0")return 0;if(r==="0"){if(n[1]==="b")return o*parseInt(n.slice(2),2);if(n[1]==="x")return o*parseInt(n.slice(2),16);if(n[1]==="o")return o*parseInt(n.slice(2),8)}return o*parseInt(n,10)}function iE(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!it.isNegativeZero(e)}var jd=new dt("tag:yaml.org,2002:int",{kind:"scalar",resolve:oE,construct:rE,predicate:iE,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),aE=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function lE(e){return!(e===null||!aE.test(e)||e[e.length-1]==="_")}function sE(e){var n,o;return n=e.replace(/_/g,"").toLowerCase(),o=n[0]==="-"?-1:1,"+-".indexOf(n[0])>=0&&(n=n.slice(1)),n===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:n===".nan"?NaN:o*parseFloat(n,10)}var cE=/^[-+]?[0-9]+e/;function dE(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(it.isNegativeZero(e))return"-0.0";return o=e.toString(10),cE.test(o)?o.replace("e",".e"):o}function uE(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||it.isNegativeZero(e))}var Gd=new dt("tag:yaml.org,2002:float",{kind:"scalar",resolve:lE,construct:sE,predicate:uE,represent:dE,defaultStyle:"lowercase"}),qd=Fd.extend({implicit:[Ud,Kd,jd,Gd]}),zd=qd,Hd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Yd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function fE(e){return e===null?!1:Hd.exec(e)!==null||Yd.exec(e)!==null}function pE(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=Hd.exec(e),n===null&&(n=Yd.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],u=+(n[11]||0),d=(f*60+u)*6e4,n[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function mE(e){return e.toISOString()}var Wd=new dt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:fE,construct:pE,instanceOf:Date,represent:mE});function gE(e){return e==="<<"||e===null}var Xd=new dt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:gE}),al=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
24
+ \r`;function hE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=al;for(o=0;o<i;o++)if(n=a.indexOf(e.charAt(o)),!(n>64)){if(n<0)return!1;r+=6}return r%8===0}function yE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=al,l=0,s=[];for(n=0;n<i;n++)n%4===0&&n&&(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)),l=l<<6|a.indexOf(r.charAt(n));return o=i%4*6,o===0?(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)):o===18?(s.push(l>>10&255),s.push(l>>2&255)):o===12&&s.push(l>>4&255),new Uint8Array(s)}function _E(e){var n="",o=0,r,i,a=e.length,l=al;for(r=0;r<a;r++)r%3===0&&r&&(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]),o=(o<<8)+e[r];return i=a%3,i===0?(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]):i===2?(n+=l[o>>10&63],n+=l[o>>4&63],n+=l[o<<2&63],n+=l[64]):i===1&&(n+=l[o>>2&63],n+=l[o<<4&63],n+=l[64],n+=l[64]),n}function bE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Zd=new dt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:hE,construct:yE,predicate:bE,represent:_E}),wE=Object.prototype.hasOwnProperty,kE=Object.prototype.toString;function CE(e){if(e===null)return!0;var n=[],o,r,i,a,l,s=e;for(o=0,r=s.length;o<r;o+=1){if(i=s[o],l=!1,kE.call(i)!=="[object Object]")return!1;for(a in i)if(wE.call(i,a))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(a)===-1)n.push(a);else return!1}return!0}function EE(e){return e!==null?e:[]}var Jd=new dt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:CE,construct:EE}),NE=Object.prototype.toString;function xE(e){if(e===null)return!0;var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1){if(r=l[n],NE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function SE(e){if(e===null)return[];var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1)r=l[n],i=Object.keys(r),a[n]=[i[0],r[i[0]]];return a}var Qd=new dt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:xE,construct:SE}),vE=Object.prototype.hasOwnProperty;function AE(e){if(e===null)return!0;var n,o=e;for(n in o)if(vE.call(o,n)&&o[n]!==null)return!1;return!0}function IE(e){return e!==null?e:{}}var eu=new dt("tag:yaml.org,2002:set",{kind:"mapping",resolve:AE,construct:IE}),ll=zd.extend({implicit:[Wd,Xd],explicit:[Zd,Jd,Qd,eu]}),mn=Object.prototype.hasOwnProperty,oi=1,tu=2,nu=3,ri=4,sl=1,PE=2,ou=3,TE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,OE=/[\x85\u2028\u2029]/,$E=/[,\[\]\{\}]/,ru=/^(?:!|!!|![a-z\-]+!)$/i,iu=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function au(e){return Object.prototype.toString.call(e)}function Kt(e){return e===10||e===13}function Gn(e){return e===9||e===32}function Et(e){return e===9||e===32||e===10||e===13}function po(e){return e===44||e===91||e===93||e===123||e===125}function BE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function VE(e){return e===120?2:e===117?4:e===85?8:0}function RE(e){return 48<=e&&e<=57?e-48:-1}function lu(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
25
+ `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"…":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function DE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function su(e,n,o){n==="__proto__"?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:o}):e[n]=o}for(var cu=new Array(256),du=new Array(256),mo=0;mo<256;mo++)cu[mo]=lu(mo)?1:0,du[mo]=lu(mo);function ME(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||ll,this.onWarning=n.onWarning||null,this.legacy=n.legacy||!1,this.json=n.json||!1,this.listener=n.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function uu(e,n){var o={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return o.snippet=KC(o),new wt(n,o)}function Pe(e,n){throw uu(e,n)}function ii(e,n){e.onWarning&&e.onWarning.call(null,uu(e,n))}var fu={YAML:function(n,o,r){var i,a,l;n.version!==null&&Pe(n,"duplication of %YAML directive"),r.length!==1&&Pe(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Pe(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Pe(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&ii(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Pe(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],ru.test(i)||Pe(n,"ill-formed tag handle (first argument) of the TAG directive"),mn.call(n.tagMap,i)&&Pe(n,'there is a previously declared suffix for "'+i+'" tag handle'),iu.test(a)||Pe(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Pe(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function gn(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||Pe(e,"expected valid JSON character");else TE.test(s)&&Pe(e,"the stream contains non-printable characters");e.result+=s}}function pu(e,n,o,r){var i,a,l,s;for(it.isObject(o)||Pe(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],mn.call(n,a)||(su(n,a,o[a]),r[a]=!0)}function go(e,n,o,r,i,a,l,s,c){var d,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,f=i.length;d<f;d+=1)Array.isArray(i[d])&&Pe(e,"nested arrays are not supported inside keys"),typeof i=="object"&&au(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&au(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,f=a.length;d<f;d+=1)pu(e,n,a[d],o);else pu(e,n,a,o);else!e.json&&!mn.call(o,i)&&mn.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Pe(e,"duplicated mapping key")),su(n,i,a),delete o[i];return n}function cl(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Pe(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Qe(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;Gn(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(n&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(Kt(i))for(cl(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return o!==-1&&r!==0&&e.lineIndent<o&&ii(e,"deficient indentation"),r}function ai(e){var n=e.position,o;return o=e.input.charCodeAt(n),!!((o===45||o===46)&&o===e.input.charCodeAt(n+1)&&o===e.input.charCodeAt(n+2)&&(n+=3,o=e.input.charCodeAt(n),o===0||Et(o)))}function dl(e,n){n===1?e.result+=" ":n>1&&(e.result+=it.repeat(`
26
+ `,n-1))}function LE(e,n,o){var r,i,a,l,s,c,d,f,u=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),Et(m)||po(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),Et(i)||o&&po(i)))return!1;for(e.kind="scalar",e.result="",a=l=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),Et(i)||o&&po(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),Et(r))break}else{if(e.position===e.lineStart&&ai(e)||o&&po(m))break;if(Kt(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Qe(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=f;break}}s&&(gn(e,a,l,!1),dl(e,e.line-c),a=l=e.position,s=!1),Gn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return gn(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function FE(e,n){var o,r,i;if(o=e.input.charCodeAt(e.position),o!==39)return!1;for(e.kind="scalar",e.result="",e.position++,r=i=e.position;(o=e.input.charCodeAt(e.position))!==0;)if(o===39)if(gn(e,r,e.position,!0),o=e.input.charCodeAt(++e.position),o===39)r=e.position,e.position++,i=e.position;else return!0;else Kt(o)?(gn(e,r,i,!0),dl(e,Qe(e,!1,n)),r=i=e.position):e.position===e.lineStart&&ai(e)?Pe(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Pe(e,"unexpected end of the stream within a single quoted scalar")}function UE(e,n){var o,r,i,a,l,s;if(s=e.input.charCodeAt(e.position),s!==34)return!1;for(e.kind="scalar",e.result="",e.position++,o=r=e.position;(s=e.input.charCodeAt(e.position))!==0;){if(s===34)return gn(e,o,e.position,!0),e.position++,!0;if(s===92){if(gn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Kt(s))Qe(e,!1,n);else if(s<256&&cu[s])e.result+=du[s],e.position++;else if((l=VE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=BE(s))>=0?a=(a<<4)+l:Pe(e,"expected hexadecimal character");e.result+=DE(a),e.position++}else Pe(e,"unknown escape sequence");o=r=e.position}else Kt(s)?(gn(e,o,r,!0),dl(e,Qe(e,!1,n)),o=r=e.position):e.position===e.lineStart&&ai(e)?Pe(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Pe(e,"unexpected end of the stream within a double quoted scalar")}function KE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,g=Object.create(null),_,h,y,k;if(k=e.input.charCodeAt(e.position),k===91)f=93,m=!1,s=[];else if(k===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),k=e.input.charCodeAt(++e.position);k!==0;){if(Qe(e,!0,n),k=e.input.charCodeAt(e.position),k===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?k===44&&Pe(e,"expected the node content, but found ','"):Pe(e,"missed comma between flow collection entries"),h=_=y=null,u=p=!1,k===63&&(d=e.input.charCodeAt(e.position+1),Et(d)&&(u=p=!0,e.position++,Qe(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,ho(e,n,oi,!1,!0),h=e.tag,_=e.result,Qe(e,!0,n),k=e.input.charCodeAt(e.position),(p||e.line===r)&&k===58&&(u=!0,k=e.input.charCodeAt(++e.position),Qe(e,!0,n),ho(e,n,oi,!1,!0),y=e.result),m?go(e,s,g,h,_,y,r,i,a):u?s.push(go(e,null,g,h,_,y,r,i,a)):s.push(_),Qe(e,!0,n),k=e.input.charCodeAt(e.position),k===44?(o=!0,k=e.input.charCodeAt(++e.position)):o=!1}Pe(e,"unexpected end of the stream within a flow collection")}function jE(e,n){var o,r,i=sl,a=!1,l=!1,s=n,c=0,d=!1,f,u;if(u=e.input.charCodeAt(e.position),u===124)r=!1;else if(u===62)r=!0;else return!1;for(e.kind="scalar",e.result="";u!==0;)if(u=e.input.charCodeAt(++e.position),u===43||u===45)sl===i?i=u===43?ou:PE:Pe(e,"repeat of a chomping mode identifier");else if((f=RE(u))>=0)f===0?Pe(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Pe(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(Gn(u)){do u=e.input.charCodeAt(++e.position);while(Gn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!Kt(u)&&u!==0)}for(;u!==0;){for(cl(e),e.lineIndent=0,u=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&u===32;)e.lineIndent++,u=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),Kt(u)){c++;continue}if(e.lineIndent<s){i===ou?e.result+=it.repeat(`
27
+ `,a?1+c:c):i===sl&&a&&(e.result+=`
28
28
  `);break}for(r?Gn(u)?(d=!0,e.result+=it.repeat(`
29
29
  `,a?1+c:c)):d?(d=!1,e.result+=it.repeat(`
30
30
  `,c+1)):c===0?a&&(e.result+=" "):e.result+=it.repeat(`
31
31
  `,c):e.result+=it.repeat(`
32
- `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Kt(u)&&u!==0;)u=e.input.charCodeAt(++e.position);gn(e,o,e.position,!1)}return!0}function pu(e,n){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!Et(l))));){if(s=!0,e.position++,Qe(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,ho(e,n,tu,!1,!0),a.push(e.result),Qe(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Pe(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function FE(e,n,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,g=null,_=null,y=!1,h=!1,k;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),k=e.input.charCodeAt(e.position);k!==0;){if(!y&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(k===63||k===58)&&Et(r))k===63?(y&&(go(e,u,p,m,g,null,l,s,c),m=g=_=null),h=!0,y=!0,i=!0):y?(y=!1,i=!0):Pe(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,k=r;else{if(l=e.line,s=e.lineStart,c=e.position,!ho(e,o,eu,!1,!0))break;if(e.line===a){for(k=e.input.charCodeAt(e.position);Gn(k);)k=e.input.charCodeAt(++e.position);if(k===58)k=e.input.charCodeAt(++e.position),Et(k)||Pe(e,"a whitespace character is expected after the key-value separator within a block mapping"),y&&(go(e,u,p,m,g,null,l,s,c),m=g=_=null),h=!0,y=!1,i=!1,m=e.tag,g=e.result;else if(h)Pe(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(h)Pe(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=f,!0}if((e.line===a||e.lineIndent>n)&&(y&&(l=e.line,s=e.lineStart,c=e.position),ho(e,n,ei,!0,i)&&(y?g=e.result:_=e.result),y||(go(e,u,p,m,g,_,l,s,c),m=g=_=null),Qe(e,!0,-1),k=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&k!==0)Pe(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return y&&go(e,u,p,m,g,null,l,s,c),h&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),h}function UE(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&Pe(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):Pe(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!Et(l);)l===33&&(r?Pe(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),ou.test(i)||Pe(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),IE.test(a)&&Pe(e,"tag suffix cannot contain flow indicator characters")}a&&!ru.test(a)&&Pe(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Pe(e,"tag name is malformed: "+a)}return o?e.tag=a:mn.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Pe(e,'undeclared tag handle "'+i+'"'),!0}function KE(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Pe(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!Et(o)&&!po(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function jE(e){var n,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!Et(r)&&!po(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),mn.call(e.anchorMap,o)||Pe(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Qe(e,!0,-1),!0}function ho(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,g,_,y;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=ei===o||tu===o,r&&Qe(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;UE(e)||KE(e);)Qe(e,!0,-1)?(d=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||ei===o)&&(Qr===o||eu===o?_=n:_=n+1,y=e.position-e.lineStart,c===1?s&&(pu(e,y)||FE(e,y,_))||ME(e,_)?f=!0:(l&&LE(e,_)||RE(e,_)||DE(e,_)?f=!0:jE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Pe(e,"alias node should not have any properties")):VE(e,_,Qr===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&pu(e,y))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Pe(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(g=e.implicitTypes[u],g.resolve(e.result)){e.result=g.construct(e.result),e.tag=g.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(mn.call(e.typeMap[e.kind||"fallback"],e.tag))g=e.typeMap[e.kind||"fallback"][e.tag];else for(g=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){g=m[u];break}g||Pe(e,"unknown tag !<"+e.tag+">"),e.result!==null&&g.kind!==e.kind&&Pe(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Pe(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function GE(e){var n=e.position,o,r,i,a=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(Qe(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!Et(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Pe(e,"directive name must not be less than one character in length");l!==0;){for(;Gn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Kt(l));break}if(Kt(l))break;for(o=e.position;l!==0&&!Et(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&al(e),mn.call(uu,r)?uu[r](e,r,i):ti(e,'unknown document directive "'+r+'"')}if(Qe(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Qe(e,!0,-1)):a&&Pe(e,"directives end mark is expected"),ho(e,e.lineIndent-1,ei,!1,!0),Qe(e,!0,-1),e.checkLineBreaks&&AE.test(e.input.slice(n,e.position))&&ti(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&ni(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Qe(e,!0,-1));return}if(e.position<e.length-1)Pe(e,"end of the stream or a document separator is expected");else return}function mu(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
33
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new BE(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Pe(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)GE(o);return o.documents}function qE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=mu(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function zE(e,n){var o=mu(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new wt("expected a single document in the stream, but found more")}}var HE=qE,YE=zE,gu={loadAll:HE,load:YE},hu=Object.prototype.toString,yu=Object.prototype.hasOwnProperty,sl=65279,WE=9,Zo=10,XE=13,ZE=32,JE=33,QE=34,cl=35,eN=37,tN=38,nN=39,oN=42,_u=44,rN=45,oi=58,iN=61,aN=62,lN=63,sN=64,bu=91,wu=93,cN=96,ku=123,dN=124,Cu=125,gt={};gt[0]="\\0",gt[7]="\\a",gt[8]="\\b",gt[9]="\\t",gt[10]="\\n",gt[11]="\\v",gt[12]="\\f",gt[13]="\\r",gt[27]="\\e",gt[34]='\\"',gt[92]="\\\\",gt[133]="\\N",gt[160]="\\_",gt[8232]="\\L",gt[8233]="\\P";var uN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],fN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function pN(e,n){var o,r,i,a,l,s,c;if(n===null)return{};for(o={},r=Object.keys(n),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&yu.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function mN(e){var n,o,r;if(n=e.toString(16).toUpperCase(),e<=255)o="x",r=2;else if(e<=65535)o="u",r=4;else if(e<=4294967295)o="U",r=8;else throw new wt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+it.repeat("0",r-n.length)+n}var gN=1,Jo=2;function hN(e){this.schema=e.schema||rl,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=it.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=pN(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?Jo:gN,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Eu(e,n){for(var o=it.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
32
+ `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Kt(u)&&u!==0;)u=e.input.charCodeAt(++e.position);gn(e,o,e.position,!1)}return!0}function mu(e,n){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!Et(l))));){if(s=!0,e.position++,Qe(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,ho(e,n,nu,!1,!0),a.push(e.result),Qe(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Pe(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function GE(e,n,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,g=null,_=null,h=!1,y=!1,k;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),k=e.input.charCodeAt(e.position);k!==0;){if(!h&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(k===63||k===58)&&Et(r))k===63?(h&&(go(e,u,p,m,g,null,l,s,c),m=g=_=null),y=!0,h=!0,i=!0):h?(h=!1,i=!0):Pe(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,k=r;else{if(l=e.line,s=e.lineStart,c=e.position,!ho(e,o,tu,!1,!0))break;if(e.line===a){for(k=e.input.charCodeAt(e.position);Gn(k);)k=e.input.charCodeAt(++e.position);if(k===58)k=e.input.charCodeAt(++e.position),Et(k)||Pe(e,"a whitespace character is expected after the key-value separator within a block mapping"),h&&(go(e,u,p,m,g,null,l,s,c),m=g=_=null),y=!0,h=!1,i=!1,m=e.tag,g=e.result;else if(y)Pe(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(y)Pe(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=f,!0}if((e.line===a||e.lineIndent>n)&&(h&&(l=e.line,s=e.lineStart,c=e.position),ho(e,n,ri,!0,i)&&(h?g=e.result:_=e.result),h||(go(e,u,p,m,g,_,l,s,c),m=g=_=null),Qe(e,!0,-1),k=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&k!==0)Pe(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return h&&go(e,u,p,m,g,null,l,s,c),y&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),y}function qE(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&Pe(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):Pe(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!Et(l);)l===33&&(r?Pe(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),ru.test(i)||Pe(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),$E.test(a)&&Pe(e,"tag suffix cannot contain flow indicator characters")}a&&!iu.test(a)&&Pe(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Pe(e,"tag name is malformed: "+a)}return o?e.tag=a:mn.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Pe(e,'undeclared tag handle "'+i+'"'),!0}function zE(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Pe(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!Et(o)&&!po(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function HE(e){var n,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!Et(r)&&!po(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),mn.call(e.anchorMap,o)||Pe(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Qe(e,!0,-1),!0}function ho(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,g,_,h;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=ri===o||nu===o,r&&Qe(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;qE(e)||zE(e);)Qe(e,!0,-1)?(d=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||ri===o)&&(oi===o||tu===o?_=n:_=n+1,h=e.position-e.lineStart,c===1?s&&(mu(e,h)||GE(e,h,_))||KE(e,_)?f=!0:(l&&jE(e,_)||FE(e,_)||UE(e,_)?f=!0:HE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Pe(e,"alias node should not have any properties")):LE(e,_,oi===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&mu(e,h))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Pe(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(g=e.implicitTypes[u],g.resolve(e.result)){e.result=g.construct(e.result),e.tag=g.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(mn.call(e.typeMap[e.kind||"fallback"],e.tag))g=e.typeMap[e.kind||"fallback"][e.tag];else for(g=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){g=m[u];break}g||Pe(e,"unknown tag !<"+e.tag+">"),e.result!==null&&g.kind!==e.kind&&Pe(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Pe(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function YE(e){var n=e.position,o,r,i,a=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(Qe(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!Et(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Pe(e,"directive name must not be less than one character in length");l!==0;){for(;Gn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Kt(l));break}if(Kt(l))break;for(o=e.position;l!==0&&!Et(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&cl(e),mn.call(fu,r)?fu[r](e,r,i):ii(e,'unknown document directive "'+r+'"')}if(Qe(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Qe(e,!0,-1)):a&&Pe(e,"directives end mark is expected"),ho(e,e.lineIndent-1,ri,!1,!0),Qe(e,!0,-1),e.checkLineBreaks&&OE.test(e.input.slice(n,e.position))&&ii(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&ai(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Qe(e,!0,-1));return}if(e.position<e.length-1)Pe(e,"end of the stream or a document separator is expected");else return}function gu(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
33
+ `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new ME(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Pe(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)YE(o);return o.documents}function WE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=gu(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function XE(e,n){var o=gu(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new wt("expected a single document in the stream, but found more")}}var ZE=WE,JE=XE,hu={loadAll:ZE,load:JE},yu=Object.prototype.toString,_u=Object.prototype.hasOwnProperty,ul=65279,QE=9,Jo=10,eN=13,tN=32,nN=33,oN=34,fl=35,rN=37,iN=38,aN=39,lN=42,bu=44,sN=45,li=58,cN=61,dN=62,uN=63,fN=64,wu=91,ku=93,pN=96,Cu=123,mN=124,Eu=125,gt={};gt[0]="\\0",gt[7]="\\a",gt[8]="\\b",gt[9]="\\t",gt[10]="\\n",gt[11]="\\v",gt[12]="\\f",gt[13]="\\r",gt[27]="\\e",gt[34]='\\"',gt[92]="\\\\",gt[133]="\\N",gt[160]="\\_",gt[8232]="\\L",gt[8233]="\\P";var gN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],hN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function yN(e,n){var o,r,i,a,l,s,c;if(n===null)return{};for(o={},r=Object.keys(n),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&_u.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function _N(e){var n,o,r;if(n=e.toString(16).toUpperCase(),e<=255)o="x",r=2;else if(e<=65535)o="u",r=4;else if(e<=4294967295)o="U",r=8;else throw new wt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+it.repeat("0",r-n.length)+n}var bN=1,Qo=2;function wN(e){this.schema=e.schema||ll,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=it.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=yN(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?Qo:bN,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Nu(e,n){for(var o=it.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
34
34
  `,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
35
- `&&(a+=o),a+=l;return a}function dl(e,n){return`
36
- `+it.repeat(" ",e.indent*n)}function yN(e,n){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(n))return!0;return!1}function ri(e){return e===ZE||e===WE}function Qo(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==sl||65536<=e&&e<=1114111}function Nu(e){return Qo(e)&&e!==sl&&e!==XE&&e!==Zo}function xu(e,n,o){var r=Nu(e),i=r&&!ri(e);return(o?r:r&&e!==_u&&e!==bu&&e!==wu&&e!==ku&&e!==Cu)&&e!==cl&&!(n===oi&&!i)||Nu(n)&&!ri(n)&&e===cl||n===oi&&i}function _N(e){return Qo(e)&&e!==sl&&!ri(e)&&e!==rN&&e!==lN&&e!==oi&&e!==_u&&e!==bu&&e!==wu&&e!==ku&&e!==Cu&&e!==cl&&e!==tN&&e!==oN&&e!==JE&&e!==dN&&e!==iN&&e!==aN&&e!==nN&&e!==QE&&e!==eN&&e!==sN&&e!==cN}function bN(e){return!ri(e)&&e!==oi}function er(e,n){var o=e.charCodeAt(n),r;return o>=55296&&o<=56319&&n+1<e.length&&(r=e.charCodeAt(n+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function Su(e){var n=/^\n* /;return n.test(e)}var vu=1,ul=2,Au=3,Iu=4,yo=5;function wN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,g=-1,_=_N(er(e,0))&&bN(er(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=er(e,c),!Qo(d))return yo;_=_&&xu(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=er(e,c),d===Zo)u=!0,m&&(p=p||c-g-1>r&&e[g+1]!==" ",g=c);else if(!Qo(d))return yo;_=_&&xu(d,f,s),f=d}p=p||m&&c-g-1>r&&e[g+1]!==" "}return!u&&!p?_&&!l&&!i(e)?vu:a===Jo?yo:ul:o>9&&Su(e)?yo:l?a===Jo?yo:ul:p?Iu:Au}function kN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Jo?'""':"''";if(!e.noCompatMode&&(uN.indexOf(n)!==-1||fN.test(n)))return e.quotingType===Jo?'"'+n+'"':"'"+n+"'";var a=e.indent*Math.max(1,o),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&o>=e.flowLevel;function c(d){return yN(e,d)}switch(wN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case vu:return n;case ul:return"'"+n.replace(/'/g,"''")+"'";case Au:return"|"+Pu(n,e.indent)+Tu(Eu(n,a));case Iu:return">"+Pu(n,e.indent)+Tu(Eu(CN(n,l),a));case yo:return'"'+EN(n)+'"';default:throw new wt("impossible error: invalid scalar style")}}()}function Pu(e,n){var o=Su(e)?String(n):"",r=e[e.length-1]===`
35
+ `&&(a+=o),a+=l;return a}function pl(e,n){return`
36
+ `+it.repeat(" ",e.indent*n)}function kN(e,n){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(n))return!0;return!1}function si(e){return e===tN||e===QE}function er(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ul||65536<=e&&e<=1114111}function xu(e){return er(e)&&e!==ul&&e!==eN&&e!==Jo}function Su(e,n,o){var r=xu(e),i=r&&!si(e);return(o?r:r&&e!==bu&&e!==wu&&e!==ku&&e!==Cu&&e!==Eu)&&e!==fl&&!(n===li&&!i)||xu(n)&&!si(n)&&e===fl||n===li&&i}function CN(e){return er(e)&&e!==ul&&!si(e)&&e!==sN&&e!==uN&&e!==li&&e!==bu&&e!==wu&&e!==ku&&e!==Cu&&e!==Eu&&e!==fl&&e!==iN&&e!==lN&&e!==nN&&e!==mN&&e!==cN&&e!==dN&&e!==aN&&e!==oN&&e!==rN&&e!==fN&&e!==pN}function EN(e){return!si(e)&&e!==li}function tr(e,n){var o=e.charCodeAt(n),r;return o>=55296&&o<=56319&&n+1<e.length&&(r=e.charCodeAt(n+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function vu(e){var n=/^\n* /;return n.test(e)}var Au=1,ml=2,Iu=3,Pu=4,yo=5;function NN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,g=-1,_=CN(tr(e,0))&&EN(tr(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=tr(e,c),!er(d))return yo;_=_&&Su(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=tr(e,c),d===Jo)u=!0,m&&(p=p||c-g-1>r&&e[g+1]!==" ",g=c);else if(!er(d))return yo;_=_&&Su(d,f,s),f=d}p=p||m&&c-g-1>r&&e[g+1]!==" "}return!u&&!p?_&&!l&&!i(e)?Au:a===Qo?yo:ml:o>9&&vu(e)?yo:l?a===Qo?yo:ml:p?Pu:Iu}function xN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Qo?'""':"''";if(!e.noCompatMode&&(gN.indexOf(n)!==-1||hN.test(n)))return e.quotingType===Qo?'"'+n+'"':"'"+n+"'";var a=e.indent*Math.max(1,o),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&o>=e.flowLevel;function c(d){return kN(e,d)}switch(NN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Au:return n;case ml:return"'"+n.replace(/'/g,"''")+"'";case Iu:return"|"+Tu(n,e.indent)+Ou(Nu(n,a));case Pu:return">"+Tu(n,e.indent)+Ou(Nu(SN(n,l),a));case yo:return'"'+vN(n)+'"';default:throw new wt("impossible error: invalid scalar style")}}()}function Tu(e,n){var o=vu(e)?String(n):"",r=e[e.length-1]===`
37
37
  `,i=r&&(e[e.length-2]===`
38
38
  `||e===`
39
39
  `),a=i?"+":r?"":"-";return o+a+`
40
- `}function Tu(e){return e[e.length-1]===`
41
- `?e.slice(0,-1):e}function CN(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
42
- `);return d=d!==-1?d:e.length,o.lastIndex=d,Ou(e.slice(0,d),n)}(),i=e[0]===`
40
+ `}function Ou(e){return e[e.length-1]===`
41
+ `?e.slice(0,-1):e}function SN(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
42
+ `);return d=d!==-1?d:e.length,o.lastIndex=d,$u(e.slice(0,d),n)}(),i=e[0]===`
43
43
  `||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
44
- `:"")+Ou(c,n),i=a}return r}function Ou(e,n){if(e===""||e[0]===" ")return e;for(var o=/ [^ ]/g,r,i=0,a,l=0,s=0,c="";r=o.exec(e);)s=r.index,s-i>n&&(a=l>i?l:s,c+=`
44
+ `:"")+$u(c,n),i=a}return r}function $u(e,n){if(e===""||e[0]===" ")return e;for(var o=/ [^ ]/g,r,i=0,a,l=0,s=0,c="";r=o.exec(e);)s=r.index,s-i>n&&(a=l>i?l:s,c+=`
45
45
  `+e.slice(i,a),i=a+1),l=s;return c+=`
46
46
  `,e.length-i>n&&l>i?c+=e.slice(i,l)+`
47
- `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function EN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=er(e,i),r=gt[o],!r&&Qo(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||mN(o);return n}function NN(e,n,o){var r="",i=e.tag,a,l,s;for(a=0,l=o.length;a<l;a+=1)s=o[a],e.replacer&&(s=e.replacer.call(o,String(a),s)),(tn(e,n,s,!1,!1)||typeof s>"u"&&tn(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function $u(e,n,o,r){var i="",a=e.tag,l,s,c;for(l=0,s=o.length;l<s;l+=1)c=o[l],e.replacer&&(c=e.replacer.call(o,String(l),c)),(tn(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&tn(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=dl(e,n)),e.dump&&Zo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function xN(e,n,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,d,f;for(l=0,s=a.length;l<s;l+=1)f="",r!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=a[l],d=o[c],e.replacer&&(d=e.replacer.call(o,c,d)),tn(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),tn(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function SN(e,n,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,d,f,u,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new wt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=dl(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),tn(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Zo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=dl(e,n)),tn(e,n+1,f,!0,u)&&(e.dump&&Zo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Bu(e,n,o){var r,i,a,l,s,c;for(i=o?e.explicitTypes:e.implicitTypes,a=0,l=i.length;a<l;a+=1)if(s=i[a],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof n=="object"&&n instanceof s.instanceOf)&&(!s.predicate||s.predicate(n))){if(o?s.multi&&s.representName?e.tag=s.representName(n):e.tag=s.tag:e.tag="?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,hu.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(yu.call(s.represent,c))r=s.represent[c](n,c);else throw new wt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function tn(e,n,o,r,i,a,l){e.tag=null,e.dump=o,Bu(e,o,!1)||Bu(e,o,!0);var s=hu.call(e.dump),c=r,d;r&&(r=e.flowLevel<0||e.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",u,p;if(f&&(u=e.duplicates.indexOf(o),p=u!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&n>0)&&(i=!1),p&&e.usedDuplicates[u])e.dump="*ref_"+u;else{if(f&&p&&!e.usedDuplicates[u]&&(e.usedDuplicates[u]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(SN(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(xN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?$u(e,n-1,e.dump,i):$u(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(NN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&kN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new wt("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function vN(e,n){var o=[],r=[],i,a;for(fl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function fl(e,n,o){var r,i,a;if(e!==null&&typeof e=="object")if(i=n.indexOf(e),i!==-1)o.indexOf(i)===-1&&o.push(i);else if(n.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)fl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)fl(e[r[i]],n,o)}function AN(e,n){n=n||{};var o=new hN(n);o.noRefs||vN(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),tn(o,0,r,!0,!0)?o.dump+`
48
- `:""}var IN=AN,PN={dump:IN};function pl(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var TN=dt,ON=Vd,$N=Ld,_o=Gd,BN=qd,VN=rl,RN=gu.load,DN=gu.loadAll,MN=PN.dump,LN=wt,FN={binary:Xd,float:jd,map:Md,null:Fd,pairs:Jd,set:Qd,timestamp:Yd,bool:Ud,int:Kd,merge:Wd,omap:Zd,seq:Dd,str:Rd},UN=pl("safeLoad","load"),KN=pl("safeLoadAll","loadAll"),jN=pl("safeDump","dump"),hn={Type:TN,Schema:ON,FAILSAFE_SCHEMA:$N,JSON_SCHEMA:_o,CORE_SCHEMA:BN,DEFAULT_SCHEMA:VN,load:RN,loadAll:DN,dump:MN,YAMLException:LN,types:FN,safeLoad:UN,safeLoadAll:KN,safeDump:jN};const bo={authenticate:`nodes:
47
+ `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function vN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=tr(e,i),r=gt[o],!r&&er(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||_N(o);return n}function AN(e,n,o){var r="",i=e.tag,a,l,s;for(a=0,l=o.length;a<l;a+=1)s=o[a],e.replacer&&(s=e.replacer.call(o,String(a),s)),(tn(e,n,s,!1,!1)||typeof s>"u"&&tn(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Bu(e,n,o,r){var i="",a=e.tag,l,s,c;for(l=0,s=o.length;l<s;l+=1)c=o[l],e.replacer&&(c=e.replacer.call(o,String(l),c)),(tn(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&tn(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=pl(e,n)),e.dump&&Jo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function IN(e,n,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,d,f;for(l=0,s=a.length;l<s;l+=1)f="",r!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=a[l],d=o[c],e.replacer&&(d=e.replacer.call(o,c,d)),tn(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),tn(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function PN(e,n,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,d,f,u,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new wt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=pl(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),tn(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Jo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=pl(e,n)),tn(e,n+1,f,!0,u)&&(e.dump&&Jo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Vu(e,n,o){var r,i,a,l,s,c;for(i=o?e.explicitTypes:e.implicitTypes,a=0,l=i.length;a<l;a+=1)if(s=i[a],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof n=="object"&&n instanceof s.instanceOf)&&(!s.predicate||s.predicate(n))){if(o?s.multi&&s.representName?e.tag=s.representName(n):e.tag=s.tag:e.tag="?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,yu.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(_u.call(s.represent,c))r=s.represent[c](n,c);else throw new wt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function tn(e,n,o,r,i,a,l){e.tag=null,e.dump=o,Vu(e,o,!1)||Vu(e,o,!0);var s=yu.call(e.dump),c=r,d;r&&(r=e.flowLevel<0||e.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",u,p;if(f&&(u=e.duplicates.indexOf(o),p=u!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&n>0)&&(i=!1),p&&e.usedDuplicates[u])e.dump="*ref_"+u;else{if(f&&p&&!e.usedDuplicates[u]&&(e.usedDuplicates[u]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(PN(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(IN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?Bu(e,n-1,e.dump,i):Bu(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(AN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&xN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new wt("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function TN(e,n){var o=[],r=[],i,a;for(gl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function gl(e,n,o){var r,i,a;if(e!==null&&typeof e=="object")if(i=n.indexOf(e),i!==-1)o.indexOf(i)===-1&&o.push(i);else if(n.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)gl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)gl(e[r[i]],n,o)}function ON(e,n){n=n||{};var o=new wN(n);o.noRefs||TN(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),tn(o,0,r,!0,!0)?o.dump+`
48
+ `:""}var $N=ON,BN={dump:$N};function hl(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var VN=dt,RN=Rd,DN=Fd,_o=qd,MN=zd,LN=ll,FN=hu.load,UN=hu.loadAll,KN=BN.dump,jN=wt,GN={binary:Zd,float:Gd,map:Ld,null:Ud,pairs:Qd,set:eu,timestamp:Wd,bool:Kd,int:jd,merge:Xd,omap:Jd,seq:Md,str:Dd},qN=hl("safeLoad","load"),zN=hl("safeLoadAll","loadAll"),HN=hl("safeDump","dump"),hn={Type:VN,Schema:RN,FAILSAFE_SCHEMA:DN,JSON_SCHEMA:_o,CORE_SCHEMA:MN,DEFAULT_SCHEMA:LN,load:FN,loadAll:UN,dump:KN,YAMLException:jN,types:GN,safeLoad:qN,safeLoadAll:zN,safeDump:HN};const bo={authenticate:`nodes:
49
49
  - name: STATIC_INPUTS
50
50
  type: static
51
51
  values:
@@ -205,13 +205,13 @@ nodes:
205
205
  type: exit
206
206
  input: API
207
207
  status: 200
208
- `};function tr(e){return typeof e=="object"&&!Array.isArray(e)&&e!==null}const GN=[{name:"decK",extract(e){try{const n=hn.load(e);return tr(n)&&Array.isArray(n.plugins)&&n.plugins.find(r=>tr(r)&&r.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(e){let n=e;const o=e.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);o&&(n=o[1]||o[2]);try{const r=hn.load(n);if(!tr(r))return null;const i=tr(r.metadata)?r.metadata:{},a=r.plugin||i.name;return(r.kind==="KongPlugin"||r.kind==="KongClusterPlugin")&&a==="datakit"&&r||null}catch{return null}}},{name:"cURL",extract(e){if(!e.trim().startsWith("curl"))return null;const n=e.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!n)return null;let o=n[1]||n[2];n[2]&&(o=o.replace(/\\(["\\])/g,"$1"));try{const r=JSON.parse(o);return tr(r)&&r.name==="datakit"&&r||null}catch{return null}}}],qN={class:"dk-code-editor"},zN={class:"examples-content"},HN={ref:"editor-root",class:"editor"},ml="YAML Syntax",Vu="datakit.insert-example",YN="datakit.auto-convert",Ru=Ae(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const r=t.inject(pn.DATAKIT_M2,!1),{t:i}=Xe.createI18n("en-us",Je),{formData:a,setValue:l}=Me(),s=o,{getMessageFromError:c}=he.useErrors(),d=t.useTemplateRef("editor-root"),f=t.shallowRef(null);function u(N){return hn.dump(N,{schema:_o,noArrayIndent:!0})}const p=t.shallowRef(!1),m=t.shallowRef(null),g=t.shallowRef("");function _(){p.value=!1,m.value=null,g.value=""}function y(){if(!m.value)return;const N=f.value,C=N==null?void 0:N.getModel();if(!N||!C)return;const x=u(m.value);N.pushUndoStop(),N.executeEdits(YN,[{range:C.getFullModelRange(),text:x}]),N.pushUndoStop(),_()}const h=["vault","cache"],k=t.computed(()=>r?bo:en(bo,h));function b(N){const C=f.value,x=C==null?void 0:C.getModel();if(!C||!x)return;const I=bo[N];if(!r&&C.getValue()!==I&&(C.pushUndoStop(),C.executeEdits(Vu,[{range:x.getFullModelRange(),text:I}]),C.pushUndoStop()),r)try{const A=C.getValue()||"",B=hn.load(A,{schema:_o,json:!0}),v=hn.load(I,{schema:_o,json:!0});if(Mn(B.config,v))return;const w=en({...a,config:{...v}},["__ui_data"]);C.pushUndoStop(),C.executeEdits(Vu,[{range:x.getFullModelRange(),text:u(w)}]),C.pushUndoStop()}catch(A){s("error",c(A))}E()}function E(){const N=f.value,C=N==null?void 0:N.getModel();!N||!C||(N.setPosition(C.getFullModelRange().getEndPosition()),N.focus())}return t.onMounted(()=>{const N=Tr.editor.create(d.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(f.value=N,!r&&a.config&&Object.keys(a.config).length>0){const C={...a.config};C.nodes&&C.nodes.length===0&&delete C.nodes;const x=Object.keys(C).length===0?"":u(t.toRaw(C));N.setValue(x),E()}if(r){const C=en({...a},["__ui_data"]),x=u(C);N.setValue(x),E(),N.onDidPaste(I=>{const A=N.getModel();if(!A)return;const B=A.getValueInRange(I.range);for(const v of GN){const w=v.extract(B);if(w){m.value=w,g.value=v.name,p.value=!0;return}}})}N.onDidChangeModelContent(()=>{const C=N.getModel(),x=N.getValue()||"";try{const I=hn.load(x,{schema:_o,json:!0});Tr.editor.setModelMarkers(C,ml,[]),r?l(I):a.config=I,s("change",I)}catch(I){const{message:A,mark:B}=I,{line:v,column:w}=B||{line:0,column:0},M=A.split(`
209
- `)[0],S=[{startLineNumber:v+1,startColumn:w+1,endLineNumber:v+1,endColumn:w+2,message:M,severity:Tr.MarkerSeverity.Error,source:ml}];Tr.editor.setModelMarkers(C,ml,S),s("error",M)}})}),t.onBeforeUnmount(()=>{var N;(N=f.value)==null||N.dispose()}),n({setExampleCode:b}),(N,C)=>(t.openBlock(),t.createElementBlock("div",qN,[t.createVNode(t.unref(Oe.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ee.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",zN,[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(k.value,(x,I)=>(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:I,appearance:"secondary",size:"small",onClick:A=>b(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)(`plugins.free-form.datakit.examples.${I}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),t.createElementVNode("div",HN,null,512),t.createVNode(t.unref(Oe.KModal),{"action-button-text":t.unref(i)("plugins.free-form.datakit.detected_config_format_confirm"),title:t.unref(i)("plugins.free-form.datakit.detected_config_format_title"),visible:p.value,onCancel:_,onProceed:y},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.detected_config_format",{format:g.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-b7794fb4"]]),Du=["request","service_request","service_response","response","vault"],wo=Du,Mu=["call","jq","exit","property","static","branch","cache"],Lu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],WN="#ecfcff",XN="#f1f0ff",ZN="#52596e",JN="#e0e4ea",QN="#007d60",e1="#fffce0",t1="#6c7489",n1="#0044f4",o1="#5f9aff",gl="#000933",hl="#d60027",r1="#ffe5e5",i1="#00abd2",a1="#d60067",Fu="#6f28ff",Uu="#afb7c5",ko="#6c7489",l1="#0044f4",s1="#eefaff",c1="#007d60",d1="#ecfffb",u1="#995c00",f1="#306fff",ii="12px",ai="16px",nr="20px",p1="2px",Ku="8px",m1="32px",kt={call:{icon:Ee.NetworkIcon,colors:{foreground:u1,background:e1}},jq:{icon:Ee.CodeblockIcon,colors:{foreground:Fu,background:XN}},exit:{icon:Ee.GatewayIcon,colors:{foreground:hl,background:r1}},property:{icon:Ee.StackIcon,colors:{foreground:c1,background:d1}},static:{icon:Ee.DeployIcon,colors:{foreground:l1,background:s1}},branch:{icon:Ee.ArrowSplitIcon,colors:{foreground:i1,background:WN}},cache:{icon:Ee.CachedIcon,colors:{foreground:a1,background:"#fff0f7"}},vault:{icon:Ee.KeyIcon},request:{icon:Ee.CloudIcon},service_request:{icon:Ee.CloudIcon},service_response:{icon:Ee.CloudIcon},response:{icon:Ee.CloudIcon}},{t:yl}=Xe.createI18n("en-us",Je);function Ot(e){return yl(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function qn(e){return yl(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function g1(e){return yl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const _l={call:{type:"call",summary:qn("call"),description:Ot("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...kt.call},jq:{type:"jq",summary:qn("jq"),description:Ot("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.jq},exit:{type:"exit",summary:qn("exit"),description:Ot("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.exit},property:{type:"property",summary:qn("property"),description:Ot("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.property},static:{type:"static",summary:qn("static"),description:Ot("static"),io:{output:{fields:[],configurable:!0}},...kt.static},branch:{type:"branch",summary:qn("branch"),description:Ot("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...kt.branch},cache:{type:"cache",summary:qn("cache"),description:Ot("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...kt.cache}},li={request:{type:"request",description:Ot("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.request},service_request:{type:"service_request",description:Ot("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.service_request},service_response:{type:"service_response",description:Ot("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...kt.service_response},response:{type:"response",description:Ot("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...kt.vault,hidden:!0}},bl=Object.keys(li),wl=e=>bl.includes(e),h1=e=>[...bl,...Mu].includes(e),xt=e=>bl.includes(e),kl=e=>xt(e.type),Cl=e=>!!(e!=null&&e.startsWith("node:")),or=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function nn(e){return Dn(e)}function El(e,n){if(e.length!==n.length)return!1;if(e.length===0)return!0;const o=new Set(n);return e.every(r=>o.has(r))}function Co(e){return`${e}:${zr()}`}function si(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function ju(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Eo(e){return xt(e)?li[e]:_l[e]}function Gu(e){var i,a,l,s;const n=Eo(e),o=((a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields.map(({name:c})=>c))??[],r=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:r}}function rr(e){var o,r,i;return((i=(r=(o=Eo(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function qu(e){return(e??[]).map(n=>({id:Co("field"),name:n}))}function yn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function _n(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function Nl(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function zu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function y1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=li[e];return{name:e,phase:n,position:{x:0,y:0},fields:Gu(o.type),expanded:{},hidden:o.hidden}}function Hu(e,n){const r=(typeof e=="string"&&h1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function xl(e,n){return`${e}:${n}`}function _1(e){const n=e.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${e}`);const o=e.slice(0,n),r=e.slice(n+1);return{nodeId:o,branch:r}}function ci(e,n){return`${e}:${n}`}function Yu(e,n,o,r,i){return{id:xl(e,n),ownerId:e,branch:n,phase:o,memberIds:[...r],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function b1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function w1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Wu(e,n){return[...b1(e),...w1(n)]}function di(e,n){const o=new Map;for(const{source:r,target:i}of e)o.has(r)||o.set(r,[]),o.get(r).push(i),o.has(i)||o.set(i,[]);return n&&(o.has(n.source)||o.set(n.source,[]),o.get(n.source).push(n.target),o.has(n.target)||o.set(n.target,[])),o}function Sl(e){const n=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(n.has(i))return!1;n.add(i),o.add(i);for(const a of e.get(i)??[])if(r(a))return!0;return o.delete(i),!1}for(const i of e.keys())if(r(i))return!0;return!1}function vl(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&Cl(i)):[]}function k1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const v=new Map;for(const w of e.value.groups)for(const M of w.memberIds)v.set(M,{ownerId:w.ownerId,branch:w.branch});return v}),a=t.computed(()=>{const v=new Map;for(const w of e.value.groups)for(const M of w.memberIds)v.set(M,w);return v}),l=t.computed(()=>{const v=new Map;for(const w of e.value.groups)v.has(w.ownerId)||v.set(w.ownerId,[]),v.get(w.ownerId).push(w);return v}),s=t.computed(()=>Wu(e.value.edges,e.value.groups)),c=t.computed(()=>di(s.value));function d(v,w){return v?rr(v.type).includes(w):!1}function f(v,w){if(w===v.id)return!1;const M=o(w);return!(!M||xt(M.type)||M.phase!==v.phase)}function u(v,w){const M=[],S=new Set;for(const F of w)S.has(F)||(S.add(F),f(v,F)&&M.push(F));return M}function p(v,w,M){const S=o(v);return d(S,w)?u(S,M):[]}function m(v,w,M){const S=xl(v.id,w),F=n.value.get(S);M.length>0?F?(F.phase!==v.phase&&(F.phase=v.phase),El(F.memberIds,M)||(F.position=void 0,F.dimensions=void 0,F.memberIds=[...M])):e.value.groups.push(Yu(v.id,w,v.phase,M)):F&&(e.value.groups=e.value.groups.filter(O=>O.id!==S))}function g(v,w,M,S={}){const F=o(v);if(!d(F,w))return!1;const O=u(F,M),j=vl(F,w);if(El(j,O))return!1;const X=F.config??(F.config={});return O.length>0?X[w]=[...O]:(delete X[w],Object.keys(X).length===0&&delete F.config),m(F,w,O),(S.commit??!0)&&r.commit(S.tag),!0}function _(v,w={}){const M=e.value.groups.filter(S=>S.ownerId!==v);return M.length===e.value.groups.length?!1:(e.value.groups=M,(w.commit??!0)&&r.commit(w.tag),!0)}function y(v,w){const M=n.value.get(xl(v,w));if(M)return[...M.memberIds];const S=o(v);return S?vl(S,w):[]}function h(v){return i.value.get(v)}function k(v){const w=[];let M=a.value.get(v);for(;M;)w.push(M.id),M=a.value.get(M.ownerId);return w}function b(v,w){const M=k(w);if(M.length===0)return!1;const S=new Set(k(v));return S.size===0?!0:M.some(F=>!S.has(F))}function E(v,w){if(v===w)return!0;const M=new Set,S=[w];for(;S.length>0;){const F=S.pop();if(M.has(F))continue;if(M.add(F),F===v)return!0;const O=c.value.get(F);if(O)for(const j of O)M.has(j)||S.push(j)}return!1}function N(v,w,M){const S=o(v);return!(!d(S,w)||!f(S,M)||E(v,M))}function C(v,w,M,S={}){const F=o(v);if(!F||!N(v,w,M))return!1;const O=vl(F,w);if(O.includes(M))return!1;x(M,{commit:!1});const j=[...O,M];return g(v,w,j,{commit:!1})?((S.commit??!0)&&r.commit(S.tag),!0):!1}function x(v,w={}){const M=h(v);if(!M)return!1;const S=y(M.ownerId,M.branch),F=S.filter(O=>O!==v);return F.length===S.length?!1:g(M.ownerId,M.branch,F,w)}function I(v){let w=0;const M=new Set;let S=a.value.get(v);for(;S&&!M.has(S.id);)w+=1,M.add(S.id),S=a.value.get(S.ownerId);return w}function A(v){const w=n.value.get(v);return w?I(w.ownerId):0}function B(v){return v?n.value.has(v):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:h,getMembers:y,wouldCreateCycle:E,setMembers:g,prepareMembers:p,addMember:C,removeMember:x,clear:_,getNodeDepth:I,getGroupDepth:A,isGroupId:B,isEdgeEnteringGroup:b,canAddMember:N}}function C1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=He.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var E;(E=n==null?void 0:n.onHistoryChange)==null||E.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function g(){r(),u=void 0,p("undo")}function _(){i(),u=void 0,p("redo")}function y(){s(),u=void 0,p("clear")}function h(){c(),u=void 0,p("reset")}function k(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:g,redo:_,clear:y,reset:h,revert:k}}function E1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function N1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function x1(e){const n=Object.entries(e);if(n.length===0)return;const o={};for(const[r,i]of n)o[r]=i;return o}function Xu(e,n){var y,h,k,b,E,N,C;const o=((y=e.config)==null?void 0:y.nodes)??[],r=((h=e.__ui_data)==null?void 0:h.nodes)??[],i=((k=e.__ui_data)==null?void 0:k.groups)??[],a=new Map(r.map(x=>[x.name,x])),l=new Map(i.map(x=>[x.name,x])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=x=>{const I=new Set,A=[...x];for(;A.length>0;){const B=A.shift();if(!I.has(B)&&(I.add(B),wl(B)||(d.get(B).phase="request"),!!p.has(B)))for(const v of p.get(B))I.has(v)||A.push(v)}};let g=!1;for(const x of o){const I=a.get(x.name);!I&&!g&&(g=!0);const A=Ju({type:x.type,configNode:x,uiNode:I,pluginData:e});s.push(A),d.set(A.name,A)}for(const x of s){const I=rr(x.type);if(!I.length)continue;const A=x.config;if(A)for(const B of I){const v=A[B];if(!Array.isArray(v)){l.has(ci(x.name,B))&&(g=!0);continue}const w=[];for(const M of v){if(typeof M!="string")continue;const S=d.get(M);S&&!xt(S.type)&&w.push(S.id)}if(w.length){A[B]=w;const M=ci(x.name,B),S=l.get(M),F=S?{position:nn(S.position)}:void 0,O=Yu(x.id,B,x.phase,w,F);f.push(O),!S&&!g&&(g=!0)}else delete A[B],l.has(ci(x.name,B))&&(g=!0)}}for(const x of wo)if(!d.has(x)){let I=a.get(x);I||(g||(g=!0),I=y1(x));const A=Ju({type:x,uiNode:I,pluginData:e});s.push(A),d.set(A.name,A)}for(const x of o)A1(x,u);for(const x of u){const I=d.get(x.source),A=d.get(x.target);if(!I||!A){I||console.warn(`[initEditorState] skip: source "${x.source}" not found`),A||console.warn(`[initEditorState] skip: target "${x.target}" not found`);continue}p.has(x.source)||p.set(x.source,new Set),p.get(x.source).add(x.target),p.has(x.target)||p.set(x.target,new Set),p.get(x.target).add(x.source),c.push({id:Co("edge"),source:I.id,sourceField:(b=yn(I,"output",x.sourceField))==null?void 0:b.id,target:A.id,targetField:(E=yn(A,"input",x.targetField))==null?void 0:E.id})}m(["request","service_request"]);let _=null;return(C=(N=e.config)==null?void 0:N.resources)!=null&&C.cache&&(_={...e.config.resources.cache},e.partials&&(_.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:g?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,..._?{cacheConfig:_}:{}}}function Zu(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Gu(n),c=Eo(n);return{id:Co("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:qu((a==null?void 0:a.input)??s.input),output:qu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?nn(l):{}}}function S1(e){return xt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Ju({type:e,configNode:n,uiNode:o,pluginData:r}){return Zu({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??S1(e),position:o==null?void 0:o.position,fields:I1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:P1({type:e,configNode:n,pluginData:r})})}function v1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return nn(s)}function A1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=si(e.input);r&&n.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){if(!i)continue;const{nodeName:a,fieldName:l}=si(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=si(e.output);r&&n.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){if(!i)continue;const{nodeName:a,fieldName:l}=si(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function I1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=Eo(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=N1(r))}return Object.keys(l).length?l:void 0}function P1({type:e,configNode:n,pluginData:o}){return e==="vault"?E1(o):n?v1(n):void 0}function T1(e){const n=t.computed(()=>{const u=new Map;return e.value.nodes.forEach(p=>u.set(p.id,p)),u}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>Wu(o.value,r.value));function a(u){return di(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const g=zu(p,u.sourceField)&&!Nl(p,u.sourceField),_=Nl(m,u.targetField);return g&&_?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],g=n.value.get(p.source),_=n.value.get(p.target);if(g||m.push("source node not found"),_||m.push("target node not found"),!g||!_)return{ok:!1,errors:m};Nl(g,p.sourceField)||m.push("source handle is not an output field"),zu(_,p.targetField)||m.push("target handle is not an input field"),_.name==="request"&&m.push('cannot target "request"'),g.name==="response"&&m.push('cannot source from "response"');const y=o.value.some(b=>b.target===p.target&&!b.targetField),h=o.value.some(b=>b.target===p.target&&!!b.targetField);(y&&p.targetField||h&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(b=>b.target===p.target&&b.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(b=>b.target===p.target&&!b.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const k=a({source:p.source,target:p.target});return Sl(k)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of wo)[...n.value.values()].some(m=>m.name===p)||u.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&u.push(`edge "${p.id}" targets "request"`),m.name==="response"&&u.push(`edge "${p.id}" sources from "response"`)}return Sl(a())&&u.push("graph contains cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function d(u){return s(u).ok}function f(u){return!u.source||!u.target?!1:d({source:u.source,sourceField:u.sourceHandle,target:u.target,targetField:u.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:d,isValidVueFlowConnection:f,buildAdjacency:di}}const[Qu,O1]=He.createInjectionState(function(n,o={}){const r=t.ref(Xu(n)),i=t.ref(),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=C1(r,{capacity:200,clone:nn,onHistoryChange:Y=>{var te,ce;Y!=="clear"&&((ce=o.onChange)==null||ce.call(o,re(),le(),J(),(te=r.value.cacheConfig)==null?void 0:te.partial_id))}}),d=t.ref(!1),f=t.ref(new Set);function u(){r.value.pendingLayout=!1,c.commit("*")}function p(Y=!0){r.value.pendingFitView!==Y&&(r.value.pendingFitView=Y,c.commit("*"))}const m=t.computed(()=>{const Y={request:0,response:0};return r.value.nodes.forEach(te=>{xt(te.type)||Y[te.phase]++}),Y}),g=t.computed(()=>new Map(r.value.nodes.map(Y=>[Y.id,Y]))),_=t.computed(()=>new Map(r.value.nodes.map(Y=>[Y.name,Y]))),y=t.computed(()=>{const Y=new Map,te=new Map;for(const ce of r.value.edges)Y.set(ce.id,ce),te.has(ce.source)||te.set(ce.source,new Set),te.get(ce.source).add(ce.id),te.has(ce.target)||te.set(ce.target,new Set),te.get(ce.target).add(ce.id);return{edgeMapById:Y,edgeIdMapByNodeId:te}}),h=t.computed(()=>y.value.edgeMapById),k=t.computed(()=>y.value.edgeIdMapByNodeId),b=t.computed(()=>new Map(r.value.groups.map(Y=>[Y.id,Y]))),E=t.computed(()=>new Set(r.value.nodes.map(Y=>Y.name))),N=k1({state:r,groupMapById:b,getNodeById:v,history:c}),{canonicalizeConnection:C,validateConnection:x,validateGraph:I,isValidConnection:A,isValidVueFlowConnection:B}=T1(r);function v(Y){return g.value.get(Y)}function w(Y){return _.value.get(Y)}function M(Y){return h.value.get(Y)}function S(Y){if(!k.value.has(Y))return[];const te=[];return k.value.get(Y).forEach(ce=>{const be=M(ce);be&&te.push(be)}),te}function F(Y){return S(Y).filter(te=>te.target===Y)}function O(Y){return S(Y).filter(te=>te.source===Y)}const j=t.computed(()=>i.value?v(i.value):void 0);function X(Y){i.value=Y}function L(Y){a.value=Y}function U(Y){if(xt(Y.type))throw new Error("[createNode] implicit nodes are fixed.");return Zu({type:Y.type,name:Y.name||(xt(Y.type)?void 0:Hu(Y.type,E.value)),phase:Y.phase,position:Y.position,fields:Y.fields,config:Y.config})}function P(Y,te=!0){const ce=U(Y);if(ce)return r.value.nodes.push(ce),te&&c.commit(),d.value=!0,ce.id}function V(Y,te,ce=!0){const be=v(Y);if(!be||xt(be.type))return;const ne={...nn(be),id:Co("node"),name:Hu(be.name,E.value),position:te??{x:be.position.x+20,y:be.position.y+20}},_e=rr(ne.type);if(_e.length&&ne.config){for(const Ne of _e)delete ne.config[Ne];Object.keys(ne.config).length===0&&delete ne.config}return r.value.nodes.push(ne),ce&&c.commit(),d.value=!0,ne.id}function G(Y,te=!0){if(!v(Y))return;r.value.edges=r.value.edges.filter(ne=>ne.source!==Y&&ne.target!==Y),N.clear(Y,{commit:!1}),N.removeMember(Y,{commit:!1}),r.value.nodes=r.value.nodes.filter(ne=>ne.id!==Y),i.value===Y&&(i.value=void 0);const be=I();be.ok||console.warn("[removeNode] topology invalid:",be.errors.join("; ")),te&&c.commit()}function Z(Y,te,ce=!0,be){const ne=v(Y);if(!ne)return;if(wl(ne.name)){console.warn("[renameNode] implicit node name is reserved.");return}ne.name!==te&&(ne.name=te,ce&&c.commit(be))}function K(Y,te,ce=!0){const be=v(Y);be&&(be.position={...te},ce&&c.commit())}function q(Y,te,ce=!0){const be=b.value.get(Y);if(!be)return;const ne=be.position;ne&&ne.x===te.x&&ne.y===te.y||(be.position={...te},ce&&c.commit())}function se(Y,te,ce=!0){const be=b.value.get(Y);if(!be)return!1;const ne={...te.position},_e={...te.dimensions},Ne=be.position&&be.position.x===ne.x&&be.position.y===ne.y,pe=be.dimensions&&be.dimensions.width===_e.width&&be.dimensions.height===_e.height;return Ne&&pe?!1:(be.position=ne,be.dimensions=_e,ce&&c.commit(),!0)}function me(Y,te,ce,be=!0,ne){const _e=v(Y);if(!_e)return;const Ne=ce??!_e.expanded[te];Ne!==!!_e.expanded[te]&&(_e.expanded[te]=Ne,be&&c.commit(ne??`toggle:${Y}:${te}`))}function ge(Y,te,ce=!0,be){const ne=v(Y);ne&&(ne.config=nn(te),ce&&c.commit(be))}function ie(Y,te,ce,be=!0){const ne=v(Y);if(!ne)return;const _e=ne.fields[te];if(_e.some(Ne=>Ne.name===ce)){console.warn(`[addField] field "${ce}" already exists on ${te}.`);return}_e.push({id:Co("field"),name:ce}),te==="input"?ne.fields.input=_e:ne.fields.output=_e,be&&c.commit()}function W(Y,te,ce,be=!0){const ne=v(Y);if(!ne)return;const _e=ne.fields.input,Ne=ne.fields.output,pe=_e.find(fe=>fe.id===te)??Ne.find(fe=>fe.id===te);pe&&(pe.name=ce,be&&c.commit())}function ae(Y,te,ce=!0,be=!0){const ne=v(Y);if(!ne)return;const _e=ne.fields.input,Ne=ne.fields.output,pe=_e.findIndex(lt=>lt.id===te);pe>=0&&_e.splice(pe,1);const fe=Ne.findIndex(lt=>lt.id===te);fe>=0&&Ne.splice(fe,1),ne.fields.input=_e,ne.fields.output=Ne,ce&&(r.value.edges=r.value.edges.filter(lt=>lt.sourceField!==te&&lt.targetField!==te));const je=I();je.ok||console.warn("[removeField] topology invalid:",je.errors.join("; ")),be&&c.commit()}function de(Y,te=!0){const ce=C(Y),be=x(ce);if(!be.ok){console.warn("[connectEdge] invalid connection:",be.errors.join("; "));return}const ne={id:Co("edge"),...ce};r.value.edges.push(ne);const _e=I();if(!_e.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",_e.errors.join("; "));return}return te&&c.commit(),ne.id}function $(Y,te,ce=!0){T(Y,!1),de(te,!1),ce&&c.commit()}function T(Y,te=!0){const ce=r.value.edges.findIndex(_e=>_e.id===Y);if(ce<0)return;const be=r.value.edges[ce];r.value.edges.splice(ce,1);const ne=I();if(!ne.ok){r.value.edges.splice(ce,0,be),console.warn("[disconnectEdge] topology invalid:",ne.errors.join("; "));return}te&&c.commit()}function R(Y,te=!0){const ce=F(Y);for(const be of ce)T(be.id,!1);te&&c.commit()}function D(Y,te=!0){const ce=O(Y);for(const be of ce)T(be.id,!1);te&&c.commit()}function re(){var te,ce,be,ne,_e;const Y=[];for(const Ne of r.value.nodes){if(xt(Ne.type))continue;let pe;const fe={};let je;const lt={};for(const st of r.value.edges.filter(ue=>ue.target===Ne.id)){const ue=v(st.source);if(!ue)continue;const ye=(te=_n(ue,"output",st.sourceField))==null?void 0:te.name,Ce=ye?`${ue.name}.${ye}`:ue.name,ke=(ce=_n(Ne,"input",st.targetField))==null?void 0:ce.name;ke?fe[ke]=Ce:pe===void 0&&(pe=Ce)}for(const st of r.value.edges.filter(ue=>ue.source===Ne.id)){const ue=v(st.target);if(!ue)continue;const ye=ue.type;if(!xt(ye)||!((be=li[ye].io)!=null&&be.input))continue;const Ce=(ne=_n(ue,"input",st.targetField))==null?void 0:ne.name,ke=Ce?`${ue.name}.${Ce}`:ue.name,we=(_e=_n(Ne,"output",st.sourceField))==null?void 0:_e.name;we?lt[we]=ke:je===void 0&&(je=ke)}const ht={...nn(Ne.config),name:Ne.name,type:Ne.type},Wt=rr(Ne.type);if(Wt.length)for(const st of Wt){const ue=ht[st];if(!Array.isArray(ue))continue;const ye=[];for(const Ce of ue){const ke=v(Ce);ke&&ye.push(ke.name)}ye.length?ht[st]=Array.from(new Set(ye)):delete ht[st]}Object.keys(fe).length>0?ht.inputs=fe:pe!==void 0&&(ht.input=pe),Object.keys(lt).length>0?ht.outputs=lt:je!==void 0&&(ht.output=je),Y.push(ht)}return Y}function ee(){return r.value.nodes.map(Y=>nn({name:Y.name,phase:Y.phase,position:{...Y.position},expanded:{...Y.expanded},fields:{input:Y.fields.input.map(te=>te.name),output:Y.fields.output.map(te=>te.name)}}))}function J(){const Y={},te=w("vault");if(te){const ce=x1(te.config);ce&&Object.keys(ce).length>0&&(Y.vault=ce)}if(r.value.cacheConfig){const{strategy:ce,redis:be,memory:ne}=r.value.cacheConfig;Y.cache={strategy:ce,redis:be,memory:ne}}if(Object.keys(Y).length!==0)return Y}function z(){const Y=[];for(const te of r.value.groups){const ce=v(te.ownerId);if(!ce)continue;const be=te.position;be&&Y.push({name:ci(ce.name,te.branch),position:{...be}})}return Y}function le(){return{nodes:ee(),groups:z()}}function H(Y,te){te&&c.commit(),r.value=Xu(Y,te),te||c.clear()}return{state:r,selection:i,portalSelection:a,modalOpen:l,skipValidation:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:g,nodeMapByName:_,edgeMapById:h,edgeIdMapByNodeId:k,groupMapById:b,getNodeById:v,getNodeByName:w,getEdgeById:M,getEdgesByNodeId:S,getInEdgesByNodeId:F,getOutEdgesByNodeId:O,selectedNode:j,selectNode:X,selectPortalEdge:L,createNode:U,addNode:P,duplicateNode:V,removeNode:G,renameNode:Z,moveNode:K,moveGroup:q,setGroupLayout:se,toggleExpanded:me,replaceConfig:ge,branchGroups:N,addField:ie,renameField:W,removeField:ae,connectEdge:de,replaceConnection:$,disconnectEdge:T,disconnectInEdges:R,disconnectOutEdges:D,toConfigNodes:re,toUINodes:ee,toUIGroups:z,toUIData:le,load:H,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,revert:c.revert,isValidConnection:A,isValidVueFlowConnection:B,validateGraph:()=>I(),clearPendingLayout:u,setPendingFitView:p}});function Ye(){const e=O1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:$1}=Xe.createI18n("en-us",Je),ui=He.createGlobalState(()=>{const e=He.useLocalStorage("datakit-editor-mode","flow"),n=He.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=He.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:o}});function B1({enabled:e,confirm:n}){vn.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm($1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};He.useEventListener("beforeunload",o)}function fi(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function on(e){return typeof e=="function"?e():t.unref(e)}const V1=typeof window<"u"&&typeof document<"u",R1=e=>typeof e<"u",D1=Object.prototype.toString,M1=e=>D1.call(e)==="[object Object]",L1=()=>{};function F1(e,n){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(i).catch(a)})}return o}const ef=e=>e();function U1(e=ef){const n=t.ref(!0);function o(){n.value=!1}function r(){n.value=!0}const i=(...a)=>{n.value&&e(...a)};return{isActive:t.readonly(n),pause:o,resume:r,eventFilter:i}}function tf(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function K1(e,n,o={}){const{eventFilter:r=ef,...i}=o;return t.watch(e,F1(r,n),i)}function No(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=U1(r);return{stop:K1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function j1(e,n={}){if(!t.isRef(e))return t.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=t.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=on(n.replaceRef))!=null?a:!0)if(Array.isArray(e.value)){const s=[...e.value];s[r]=i,e.value=s}else{const s={...e.value,[r]:i};Object.setPrototypeOf(s,Object.getPrototypeOf(e.value)),e.value=s}else e.value[r]=i}}));return o}function Al(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:g,throwOnTimeout:_}={}){let y=null;const k=[new Promise(b=>{y=t.watch(e,E=>{u(E)!==n&&(y==null||y(),b(E))},{flush:p,deep:m,immediate:!0})})];return g!=null&&k.push(tf(g,_).then(()=>on(e)).finally(()=>y==null?void 0:y())),Promise.race(k)}function r(u,p){if(!t.isRef(u))return o(E=>E===u,p);const{flush:m="sync",deep:g=!1,timeout:_,throwOnTimeout:y}=p??{};let h=null;const b=[new Promise(E=>{h=t.watch([e,u],([N,C])=>{n!==(N===C)&&(h==null||h(),E(N))},{flush:m,deep:g,immediate:!0})})];return _!=null&&b.push(tf(_,y).then(()=>on(e)).finally(()=>(h==null||h(),on(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const g=Array.from(m);return g.includes(u)||g.includes(on(u))},p)}function d(u){return f(1,u)}function f(u=1,p){let m=-1;return o(()=>(m+=1,m>=u),p)}return Array.isArray(on(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return Al(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return Al(e,!n)}}}function Il(e){return Al(e)}function G1(e){var n;const o=on(e);return(n=o==null?void 0:o.$el)!=null?n:o}const nf=V1?window:void 0;function of(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=nf):[n,o,r,i]=e,!n)return L1;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,u,p,m)=>(f.addEventListener(u,p,m),()=>f.removeEventListener(u,p,m)),c=t.watch(()=>[G1(n),on(i)],([f,u])=>{if(l(),!f)return;const p=M1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(g=>s(f,m,g,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return fi(d),d}function q1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function rf(...e){let n,o,r={};e.length===3?(n=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(n=!0,o=e[0],r=e[1]):(n=e[0],o=e[1]):(n=!0,o=e[0]);const{target:i=nf,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=q1(n);return of(i,a,f=>{f.repeat&&on(s)||c(f)&&o(f)},l)}function z1(e){return JSON.parse(JSON.stringify(e))}function Pl(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),g=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let _=d;n||(n="modelValue"),_=_||`update:${n.toString()}`;const y=b=>s?typeof s=="function"?s(b):z1(b):b,h=()=>R1(e[n])?y(e[n]):u,k=b=>{p?p(b)&&g(_,b):g(_,b)};if(c){const b=h(),E=t.ref(b);let N=!1;return t.watch(()=>e[n],C=>{N||(N=!0,E.value=y(C),t.nextTick(()=>N=!1))}),t.watch(E,C=>{!N&&(C!==e[n]||f)&&k(C)},{deep:f}),E}else return t.computed({get(){return h()},set(b){k(b)}})}var H1={value:()=>{}};function pi(){for(var e=0,n=arguments.length,o={},r;e<n;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new mi(o)}function mi(e){this._=e}function Y1(e,n){return e.trim().split(/^|\s+/).map(function(o){var r="",i=o.indexOf(".");if(i>=0&&(r=o.slice(i+1),o=o.slice(0,i)),o&&!n.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}mi.prototype=pi.prototype={constructor:mi,on:function(e,n){var o=this._,r=Y1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=W1(o[i],e.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++a<l;)if(i=(e=r[a]).type)o[i]=af(o[i],e.name,n);else if(n==null)for(i in o)o[i]=af(o[i],e.name,null);return this},copy:function(){var e={},n=this._;for(var o in n)e[o]=n[o].slice();return new mi(e)},call:function(e,n){if((i=arguments.length-2)>0)for(var o=new Array(i),r=0,i,a;r<i;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(n,o)},apply:function(e,n,o){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(n,o)}};function W1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function af(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=H1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Tl="http://www.w3.org/1999/xhtml";const lf={svg:"http://www.w3.org/2000/svg",xhtml:Tl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function gi(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),lf.hasOwnProperty(n)?{space:lf[n],local:e}:e}function X1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Tl&&n.documentElement.namespaceURI===Tl?n.createElement(e):n.createElementNS(o,e)}}function Z1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function sf(e){var n=gi(e);return(n.local?Z1:X1)(n)}function J1(){}function Ol(e){return e==null?J1:function(){return this.querySelector(e)}}function Q1(e){typeof e!="function"&&(e=Ol(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=new Array(l),c,d,f=0;f<l;++f)(c=a[f])&&(d=e.call(c,c.__data__,f,a))&&("__data__"in c&&(d.__data__=c.__data__),s[f]=d);return new St(r,this._parents)}function ex(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function tx(){return[]}function cf(e){return e==null?tx:function(){return this.querySelectorAll(e)}}function nx(e){return function(){return ex(e.apply(this,arguments))}}function ox(e){typeof e=="function"?e=nx(e):e=cf(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new St(r,i)}function df(e){return function(){return this.matches(e)}}function uf(e){return function(n){return n.matches(e)}}var rx=Array.prototype.find;function ix(e){return function(){return rx.call(this.children,e)}}function ax(){return this.firstElementChild}function lx(e){return this.select(e==null?ax:ix(typeof e=="function"?e:uf(e)))}var sx=Array.prototype.filter;function cx(){return Array.from(this.children)}function dx(e){return function(){return sx.call(this.children,e)}}function ux(e){return this.selectAll(e==null?cx:dx(typeof e=="function"?e:uf(e)))}function fx(e){typeof e!="function"&&(e=df(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new St(r,this._parents)}function ff(e){return new Array(e.length)}function px(){return new St(this._enter||this._groups.map(ff),this._parents)}function hi(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}hi.prototype={constructor:hi,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function mx(e){return function(){return e}}function gx(e,n,o,r,i,a){for(var l=0,s,c=n.length,d=a.length;l<d;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new hi(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function hx(e,n,o,r,i,a,l){var s,c,d=new Map,f=n.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<u;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new hi(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function yx(e){return e.__data__}function _x(e,n){if(!arguments.length)return Array.from(this,yx);var o=n?hx:gx,r=this._parents,i=this._groups;typeof e!="function"&&(e=mx(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),d=0;d<a;++d){var f=r[d],u=i[d],p=u.length,m=bx(e.call(f,f&&f.__data__,d,r)),g=m.length,_=s[d]=new Array(g),y=l[d]=new Array(g),h=c[d]=new Array(p);o(f,u,_,y,h,m,n);for(var k=0,b=0,E,N;k<g;++k)if(E=_[k]){for(k>=b&&(b=k+1);!(N=y[b])&&++b<g;);E._next=N||null}}return l=new St(l,r),l._enter=s,l._exit=c,l}function bx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function wx(){return new St(this._exit||this._groups.map(ff),this._parents)}function kx(e,n,o){var r=this.enter(),i=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),n!=null&&(i=n(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function Cx(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,g=0;g<u;++g)(m=d[g]||f[g])&&(p[g]=m);for(;c<i;++c)s[c]=o[c];return new St(s,this._parents)}function Ex(){for(var e=this._groups,n=-1,o=e.length;++n<o;)for(var r=e[n],i=r.length-1,a=r[i],l;--i>=0;)(l=r[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function Nx(e){e||(e=xx);function n(u,p){return u&&p?e(u.__data__,p.__data__):!u-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),d,f=0;f<s;++f)(d=l[f])&&(c[f]=d);c.sort(n)}return new St(i,this._parents).order()}function xx(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function Sx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function vx(){return Array.from(this)}function Ax(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function Ix(){let e=0;for(const n of this)++e;return e}function Px(){return!this.node()}function Tx(e){for(var n=this._groups,o=0,r=n.length;o<r;++o)for(var i=n[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function Ox(e){return function(){this.removeAttribute(e)}}function $x(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Bx(e,n){return function(){this.setAttribute(e,n)}}function Vx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Rx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function Dx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function Mx(e,n){var o=gi(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((n==null?o.local?$x:Ox:typeof n=="function"?o.local?Dx:Rx:o.local?Vx:Bx)(o,n))}function pf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Lx(e){return function(){this.style.removeProperty(e)}}function Fx(e,n,o){return function(){this.style.setProperty(e,n,o)}}function Ux(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function Kx(e,n,o){return arguments.length>1?this.each((n==null?Lx:typeof n=="function"?Ux:Fx)(e,n,o??"")):xo(this.node(),e)}function xo(e,n){return e.style.getPropertyValue(n)||pf(e).getComputedStyle(e,null).getPropertyValue(n)}function jx(e){return function(){delete this[e]}}function Gx(e,n){return function(){this[e]=n}}function qx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function zx(e,n){return arguments.length>1?this.each((n==null?jx:typeof n=="function"?qx:Gx)(e,n)):this.node()[e]}function mf(e){return e.trim().split(/^|\s+/)}function $l(e){return e.classList||new gf(e)}function gf(e){this._node=e,this._names=mf(e.getAttribute("class")||"")}gf.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function hf(e,n){for(var o=$l(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function yf(e,n){for(var o=$l(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Hx(e){return function(){hf(this,e)}}function Yx(e){return function(){yf(this,e)}}function Wx(e,n){return function(){(n.apply(this,arguments)?hf:yf)(this,e)}}function Xx(e,n){var o=mf(e+"");if(arguments.length<2){for(var r=$l(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Wx:n?Hx:Yx)(o,n))}function Zx(){this.textContent=""}function Jx(e){return function(){this.textContent=e}}function Qx(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function eS(e){return arguments.length?this.each(e==null?Zx:(typeof e=="function"?Qx:Jx)(e)):this.node().textContent}function tS(){this.innerHTML=""}function nS(e){return function(){this.innerHTML=e}}function oS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function rS(e){return arguments.length?this.each(e==null?tS:(typeof e=="function"?oS:nS)(e)):this.node().innerHTML}function iS(){this.nextSibling&&this.parentNode.appendChild(this)}function aS(){return this.each(iS)}function lS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function sS(){return this.each(lS)}function cS(e){var n=typeof e=="function"?e:sf(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function dS(){return null}function uS(e,n){var o=typeof e=="function"?e:sf(e),r=n==null?dS:typeof n=="function"?n:Ol(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function fS(){var e=this.parentNode;e&&e.removeChild(this)}function pS(){return this.each(fS)}function mS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function gS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function hS(e){return this.select(e?gS:mS)}function yS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function _S(e){return function(n){e.call(this,n,this.__data__)}}function bS(e){return e.trim().split(/^|\s+/).map(function(n){var o="",r=n.indexOf(".");return r>=0&&(o=n.slice(r+1),n=n.slice(0,r)),{type:n,name:o}})}function wS(e){return function(){var n=this.__on;if(n){for(var o=0,r=-1,i=n.length,a;o<i;++o)a=n[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++r]=a;++r?n.length=r:delete this.__on}}}function kS(e,n,o){return function(){var r=this.__on,i,a=_S(n);if(r){for(var l=0,s=r.length;l<s;++l)if((i=r[l]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=o),i.value=n;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:n,listener:a,options:o},r?r.push(i):this.__on=[i]}}function CS(e,n,o){var r=bS(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,f;c<d;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=n?kS:wS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function _f(e,n,o){var r=pf(e),i=r.CustomEvent;typeof i=="function"?i=new i(n,o):(i=r.document.createEvent("Event"),o?(i.initEvent(n,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(n,!1,!1)),e.dispatchEvent(i)}function ES(e,n){return function(){return _f(this,e,n)}}function NS(e,n){return function(){return _f(this,e,n.apply(this,arguments))}}function xS(e,n){return this.each((typeof n=="function"?NS:ES)(e,n))}function*SS(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var bf=[null];function St(e,n){this._groups=e,this._parents=n}function ir(){return new St([[document.documentElement]],bf)}function vS(){return this}St.prototype=ir.prototype={constructor:St,select:Q1,selectAll:ox,selectChild:lx,selectChildren:ux,filter:fx,data:_x,enter:px,exit:wx,join:kx,merge:Cx,selection:vS,order:Ex,sort:Nx,call:Sx,nodes:vx,node:Ax,size:Ix,empty:Px,each:Tx,attr:Mx,style:Kx,property:zx,classed:Xx,text:eS,html:rS,raise:aS,lower:sS,append:cS,insert:uS,remove:pS,clone:hS,datum:yS,on:CS,dispatch:xS,[Symbol.iterator]:SS};function Dt(e){return typeof e=="string"?new St([[document.querySelector(e)]],[document.documentElement]):new St([[e]],bf)}function AS(e){let n;for(;n=e.sourceEvent;)e=n;return e}function jt(e,n){if(e=AS(e),n===void 0&&(n=e.currentTarget),n){var o=n.ownerSVGElement||n;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[e.clientX-i.left-n.clientLeft,e.clientY-i.top-n.clientTop]}}return[e.pageX,e.pageY]}const IS={passive:!1},ar={capture:!0,passive:!1};function Bl(e){e.stopImmediatePropagation()}function So(e){e.preventDefault(),e.stopImmediatePropagation()}function wf(e){var n=e.document.documentElement,o=Dt(e).on("dragstart.drag",So,ar);"onselectstart"in n?o.on("selectstart.drag",So,ar):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function kf(e,n){var o=e.document.documentElement,r=Dt(e).on("dragstart.drag",null);n&&(r.on("click.drag",So,ar),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const yi=e=>()=>e;function Vl(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:f}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:f}})}Vl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function PS(e){return!e.ctrlKey&&!e.button}function TS(){return this.parentNode}function OS(e,n){return n??{x:e.x,y:e.y}}function $S(){return navigator.maxTouchPoints||"ontouchstart"in this}function BS(){var e=PS,n=TS,o=OS,r=$S,i={},a=pi("start","drag","end"),l=0,s,c,d,f,u=0;function p(E){E.on("mousedown.drag",m).filter(r).on("touchstart.drag",y).on("touchmove.drag",h,IS).on("touchend.drag touchcancel.drag",k).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(E,N){if(!(f||!e.call(this,E,N))){var C=b(this,n.call(this,E,N),E,N,"mouse");C&&(Dt(E.view).on("mousemove.drag",g,ar).on("mouseup.drag",_,ar),wf(E.view),Bl(E),d=!1,s=E.clientX,c=E.clientY,C("start",E))}}function g(E){if(So(E),!d){var N=E.clientX-s,C=E.clientY-c;d=N*N+C*C>u}i.mouse("drag",E)}function _(E){Dt(E.view).on("mousemove.drag mouseup.drag",null),kf(E.view,d),So(E),i.mouse("end",E)}function y(E,N){if(e.call(this,E,N)){var C=E.changedTouches,x=n.call(this,E,N),I=C.length,A,B;for(A=0;A<I;++A)(B=b(this,x,E,N,C[A].identifier,C[A]))&&(Bl(E),B("start",E,C[A]))}}function h(E){var N=E.changedTouches,C=N.length,x,I;for(x=0;x<C;++x)(I=i[N[x].identifier])&&(So(E),I("drag",E,N[x]))}function k(E){var N=E.changedTouches,C=N.length,x,I;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),x=0;x<C;++x)(I=i[N[x].identifier])&&(Bl(E),I("end",E,N[x]))}function b(E,N,C,x,I,A){var B=a.copy(),v=jt(A||C,N),w,M,S;if((S=o.call(E,new Vl("beforestart",{sourceEvent:C,target:p,identifier:I,active:l,x:v[0],y:v[1],dx:0,dy:0,dispatch:B}),x))!=null)return w=S.x-v[0]||0,M=S.y-v[1]||0,function F(O,j,X){var L=v,U;switch(O){case"start":i[I]=F,U=l++;break;case"end":delete i[I],--l;case"drag":v=jt(X||j,N),U=l;break}B.call(O,E,new Vl(O,{sourceEvent:j,subject:S,target:p,identifier:I,active:U,x:v[0]+w,y:v[1]+M,dx:v[0]-L[0],dy:v[1]-L[1],dispatch:B}),x)}}return p.filter=function(E){return arguments.length?(e=typeof E=="function"?E:yi(!!E),p):e},p.container=function(E){return arguments.length?(n=typeof E=="function"?E:yi(E),p):n},p.subject=function(E){return arguments.length?(o=typeof E=="function"?E:yi(E),p):o},p.touchable=function(E){return arguments.length?(r=typeof E=="function"?E:yi(!!E),p):r},p.on=function(){var E=a.on.apply(a,arguments);return E===a?p:E},p.clickDistance=function(E){return arguments.length?(u=(E=+E)*E,p):Math.sqrt(u)},p}function Rl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Cf(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function lr(){}var sr=.7,_i=1/sr,vo="\\s*([+-]?\\d+)\\s*",cr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Gt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",VS=/^#([0-9a-f]{3,8})$/,RS=new RegExp(`^rgb\\(${vo},${vo},${vo}\\)$`),DS=new RegExp(`^rgb\\(${Gt},${Gt},${Gt}\\)$`),MS=new RegExp(`^rgba\\(${vo},${vo},${vo},${cr}\\)$`),LS=new RegExp(`^rgba\\(${Gt},${Gt},${Gt},${cr}\\)$`),FS=new RegExp(`^hsl\\(${cr},${Gt},${Gt}\\)$`),US=new RegExp(`^hsla\\(${cr},${Gt},${Gt},${cr}\\)$`),Ef={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Rl(lr,zn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Nf,formatHex:Nf,formatHex8:KS,formatHsl:jS,formatRgb:xf,toString:xf});function Nf(){return this.rgb().formatHex()}function KS(){return this.rgb().formatHex8()}function jS(){return Pf(this).formatHsl()}function xf(){return this.rgb().formatRgb()}function zn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=VS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?Sf(n):o===3?new Nt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?bi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?bi(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=RS.exec(e))?new Nt(n[1],n[2],n[3],1):(n=DS.exec(e))?new Nt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=MS.exec(e))?bi(n[1],n[2],n[3],n[4]):(n=LS.exec(e))?bi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=FS.exec(e))?If(n[1],n[2]/100,n[3]/100,1):(n=US.exec(e))?If(n[1],n[2]/100,n[3]/100,n[4]):Ef.hasOwnProperty(e)?Sf(Ef[e]):e==="transparent"?new Nt(NaN,NaN,NaN,0):null}function Sf(e){return new Nt(e>>16&255,e>>8&255,e&255,1)}function bi(e,n,o,r){return r<=0&&(e=n=o=NaN),new Nt(e,n,o,r)}function GS(e){return e instanceof lr||(e=zn(e)),e?(e=e.rgb(),new Nt(e.r,e.g,e.b,e.opacity)):new Nt}function Dl(e,n,o,r){return arguments.length===1?GS(e):new Nt(e,n,o,r??1)}function Nt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Rl(Nt,Dl,Cf(lr,{brighter(e){return e=e==null?_i:Math.pow(_i,e),new Nt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?sr:Math.pow(sr,e),new Nt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Nt(Hn(this.r),Hn(this.g),Hn(this.b),wi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:vf,formatHex:vf,formatHex8:qS,formatRgb:Af,toString:Af}));function vf(){return`#${Yn(this.r)}${Yn(this.g)}${Yn(this.b)}`}function qS(){return`#${Yn(this.r)}${Yn(this.g)}${Yn(this.b)}${Yn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Af(){const e=wi(this.opacity);return`${e===1?"rgb(":"rgba("}${Hn(this.r)}, ${Hn(this.g)}, ${Hn(this.b)}${e===1?")":`, ${e})`}`}function wi(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Hn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Yn(e){return e=Hn(e),(e<16?"0":"")+e.toString(16)}function If(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Mt(e,n,o,r)}function Pf(e){if(e instanceof Mt)return new Mt(e.h,e.s,e.l,e.opacity);if(e instanceof lr||(e=zn(e)),!e)return new Mt;if(e instanceof Mt)return e;e=e.rgb();var n=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(n,o,r),a=Math.max(n,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(n===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-n)/s+2:l=(n-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new Mt(l,s,c,e.opacity)}function zS(e,n,o,r){return arguments.length===1?Pf(e):new Mt(e,n,o,r??1)}function Mt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Rl(Mt,zS,Cf(lr,{brighter(e){return e=e==null?_i:Math.pow(_i,e),new Mt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?sr:Math.pow(sr,e),new Mt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new Nt(Ml(e>=240?e-240:e+120,i,r),Ml(e,i,r),Ml(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Mt(Tf(this.h),ki(this.s),ki(this.l),wi(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=wi(this.opacity);return`${e===1?"hsl(":"hsla("}${Tf(this.h)}, ${ki(this.s)*100}%, ${ki(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Tf(e){return e=(e||0)%360,e<0?e+360:e}function ki(e){return Math.max(0,Math.min(1,e||0))}function Ml(e,n,o){return(e<60?n+(o-n)*e/60:e<180?o:e<240?n+(o-n)*(240-e)/60:n)*255}const Ll=e=>()=>e;function HS(e,n){return function(o){return e+o*n}}function YS(e,n,o){return e=Math.pow(e,o),n=Math.pow(n,o)-e,o=1/o,function(r){return Math.pow(e+r*n,o)}}function WS(e){return(e=+e)==1?Of:function(n,o){return o-n?YS(n,o,e):Ll(isNaN(n)?o:n)}}function Of(e,n){var o=n-e;return o?HS(e,o):Ll(isNaN(e)?n:e)}const Ci=function e(n){var o=WS(n);function r(i,a){var l=o((i=Dl(i)).r,(a=Dl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Of(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=d(f),i+""}}return r.gamma=e,r}(1);function XS(e,n){n||(n=[]);var o=e?Math.min(n.length,e.length):0,r=n.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+n[i]*a;return r}}function ZS(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function JS(e,n){var o=n?n.length:0,r=e?Math.min(o,e.length):0,i=new Array(r),a=new Array(o),l;for(l=0;l<r;++l)i[l]=dr(e[l],n[l]);for(;l<o;++l)a[l]=n[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function QS(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function qt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function ev(e,n){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in e?o[i]=dr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Fl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ul=new RegExp(Fl.source,"g");function tv(e){return function(){return e}}function nv(e){return function(n){return e(n)+""}}function $f(e,n){var o=Fl.lastIndex=Ul.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Fl.exec(e))&&(i=Ul.exec(n));)(a=i.index)>o&&(a=n.slice(o,a),s[l]?s[l]+=a:s[++l]=a),(r=r[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:qt(r,i)})),o=Ul.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?nv(c[0].x):tv(n):(n=c.length,function(d){for(var f=0,u;f<n;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function dr(e,n){var o=typeof n,r;return n==null||o==="boolean"?Ll(n):(o==="number"?qt:o==="string"?(r=zn(n))?(n=r,Ci):$f:n instanceof zn?Ci:n instanceof Date?QS:ZS(n)?XS:Array.isArray(n)?JS:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?ev:qt)(e,n)}var Bf=180/Math.PI,Kl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Vf(e,n,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+n*n))&&(e/=l,n/=l),(c=e*o+n*r)&&(o-=e*c,r-=n*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<n*o&&(e=-e,n=-n,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(n,e)*Bf,skewX:Math.atan(c)*Bf,scaleX:l,scaleY:s}}var Ei;function ov(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Kl:Vf(n.a,n.b,n.c,n.d,n.e,n.f)}function rv(e){return e==null||(Ei||(Ei=document.createElementNS("http://www.w3.org/2000/svg","g")),Ei.setAttribute("transform",e),!(e=Ei.transform.baseVal.consolidate()))?Kl:(e=e.matrix,Vf(e.a,e.b,e.c,e.d,e.e,e.f))}function Rf(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push("translate(",null,n,null,o);g.push({i:_-4,x:qt(d,u)},{i:_-2,x:qt(f,p)})}else(u||p)&&m.push("translate("+u+n+p+o)}function l(d,f,u,p){d!==f?(d-f>180?f+=360:f-d>180&&(d+=360),p.push({i:u.push(i(u)+"rotate(",null,r)-2,x:qt(d,f)})):f&&u.push(i(u)+"rotate("+f+r)}function s(d,f,u,p){d!==f?p.push({i:u.push(i(u)+"skewX(",null,r)-2,x:qt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");g.push({i:_-4,x:qt(d,u)},{i:_-2,x:qt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var g=-1,_=p.length,y;++g<_;)u[(y=p[g]).i]=y.x(m);return u.join("")}}}var iv=Rf(ov,"px, ","px)","deg)"),av=Rf(rv,", ",")",")"),lv=1e-12;function Df(e){return((e=Math.exp(e))+1/e)/2}function sv(e){return((e=Math.exp(e))-1/e)/2}function cv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Ni=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,g=u-c,_=m*m+g*g,y,h;if(_<lv)h=Math.log(p/d)/n,y=function(x){return[s+x*m,c+x*g,d*Math.exp(n*x*h)]};else{var k=Math.sqrt(_),b=(p*p-d*d+r*_)/(2*d*o*k),E=(p*p-d*d-r*_)/(2*p*o*k),N=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(E*E+1)-E);h=(C-N)/n,y=function(x){var I=x*h,A=Df(N),B=d/(o*k)*(A*cv(n*I+N)-sv(N));return[s+B*m,c+B*g,d*A/Df(n*I+N)]}}return y.duration=h*1e3*n/Math.SQRT2,y}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var Ao=0,ur=0,fr=0,Mf=1e3,xi,pr,Si=0,Wn=0,vi=0,mr=typeof performance=="object"&&performance.now?performance:Date,Lf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function jl(){return Wn||(Lf(dv),Wn=mr.now()+vi)}function dv(){Wn=0}function Ai(){this._call=this._time=this._next=null}Ai.prototype=Ff.prototype={constructor:Ai,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?jl():+o)+(n==null?0:+n),!this._next&&pr!==this&&(pr?pr._next=this:xi=this,pr=this),this._call=e,this._time=o,Gl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Gl())}};function Ff(e,n,o){var r=new Ai;return r.restart(e,n,o),r}function uv(){jl(),++Ao;for(var e=xi,n;e;)(n=Wn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Ao}function Uf(){Wn=(Si=mr.now())+vi,Ao=ur=0;try{uv()}finally{Ao=0,pv(),Wn=0}}function fv(){var e=mr.now(),n=e-Si;n>Mf&&(vi-=n,Si=e)}function pv(){for(var e,n=xi,o,r=1/0;n;)n._call?(r>n._time&&(r=n._time),e=n,n=n._next):(o=n._next,n._next=null,n=e?e._next=o:xi=o);pr=e,Gl(r)}function Gl(e){if(!Ao){ur&&(ur=clearTimeout(ur));var n=e-Wn;n>24?(e<1/0&&(ur=setTimeout(Uf,e-mr.now()-vi)),fr&&(fr=clearInterval(fr))):(fr||(Si=mr.now(),fr=setInterval(fv,Mf)),Ao=1,Lf(Uf))}}function Kf(e,n,o){var r=new Ai;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var mv=pi("start","end","cancel","interrupt"),gv=[],jf=0,Gf=1,ql=2,Ii=3,qf=4,zl=5,Pi=6;function Ti(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;hv(e,o,{name:n,index:r,group:i,on:mv,tween:gv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:jf})}function Hl(e,n){var o=Lt(e,n);if(o.state>jf)throw new Error("too late; already scheduled");return o}function zt(e,n){var o=Lt(e,n);if(o.state>Ii)throw new Error("too late; already running");return o}function Lt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function hv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Ff(a,0,o.time);function a(d){o.state=Gf,o.timer.restart(l,o.delay,o.time),o.delay<=d&&l(d-o.delay)}function l(d){var f,u,p,m;if(o.state!==Gf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Ii)return Kf(l);m.state===qf?(m.state=Pi,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Pi,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Kf(function(){o.state===Ii&&(o.state=qf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=ql,o.on.call("start",e,e.__data__,o.index,o.group),o.state===ql){for(o.state=Ii,i=new Array(p=o.tween.length),f=0,u=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++u]=m);i.length=u+1}}function s(d){for(var f=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=zl,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===zl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Pi,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Oi(e,n){var o=e.__transition,r,i,a=!0,l;if(o){n=n==null?null:n+"";for(l in o){if((r=o[l]).name!==n){a=!1;continue}i=r.state>ql&&r.state<zl,r.state=Pi,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function yv(e){return this.each(function(){Oi(this,e)})}function _v(e,n){var o,r;return function(){var i=zt(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function bv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=zt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function wv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Lt(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((n==null?_v:bv)(o,e,n))}function Yl(e,n,o){var r=e._id;return e.each(function(){var i=zt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Lt(i,r).value[n]}}function zf(e,n){var o;return(typeof n=="number"?qt:n instanceof zn?Ci:(o=zn(n))?(n=o,Ci):$f)(e,n)}function kv(e){return function(){this.removeAttribute(e)}}function Cv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Ev(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=n(r=l,o)}}function Nv(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=n(r=l,o)}}function xv(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttribute(e):(l=this.getAttribute(e),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function Sv(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function vv(e,n){var o=gi(e),r=o==="transform"?av:zf;return this.attrTween(e,typeof n=="function"?(o.local?Sv:xv)(o,r,Yl(this,"attr."+e,n)):n==null?(o.local?Cv:kv)(o):(o.local?Nv:Ev)(o,r,n))}function Av(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function Iv(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function Pv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Iv(e,a)),o}return i._value=n,i}function Tv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Av(e,a)),o}return i._value=n,i}function Ov(e,n){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(n==null)return this.tween(o,null);if(typeof n!="function")throw new Error;var r=gi(e);return this.tween(o,(r.local?Pv:Tv)(r,n))}function $v(e,n){return function(){Hl(this,e).delay=+n.apply(this,arguments)}}function Bv(e,n){return n=+n,function(){Hl(this,e).delay=n}}function Vv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?$v:Bv)(n,e)):Lt(this.node(),n).delay}function Rv(e,n){return function(){zt(this,e).duration=+n.apply(this,arguments)}}function Dv(e,n){return n=+n,function(){zt(this,e).duration=n}}function Mv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Rv:Dv)(n,e)):Lt(this.node(),n).duration}function Lv(e,n){if(typeof n!="function")throw new Error;return function(){zt(this,e).ease=n}}function Fv(e){var n=this._id;return arguments.length?this.each(Lv(n,e)):Lt(this.node(),n).ease}function Uv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;zt(this,e).ease=o}}function Kv(e){if(typeof e!="function")throw new Error;return this.each(Uv(this._id,e))}function jv(e){typeof e!="function"&&(e=df(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new rn(r,this._parents,this._name,this._id)}function Gv(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[s],d=o[s],f=c.length,u=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||d[m])&&(u[m]=p);for(;s<r;++s)l[s]=n[s];return new rn(l,this._parents,this._name,this._id)}function qv(e){return(e+"").trim().split(/^|\s+/).every(function(n){var o=n.indexOf(".");return o>=0&&(n=n.slice(0,o)),!n||n==="start"})}function zv(e,n,o){var r,i,a=qv(n)?Hl:zt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Hv(e,n){var o=this._id;return arguments.length<2?Lt(this.node(),o).on.on(e):this.each(zv(o,e,n))}function Yv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Wv(){return this.on("end.remove",Yv(this._id))}function Xv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Ol(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),f,u,p=0;p<c;++p)(f=s[p])&&(u=e.call(f,f.__data__,p,s))&&("__data__"in f&&(u.__data__=f.__data__),d[p]=u,Ti(d[p],n,o,p,d,Lt(f,o)));return new rn(a,this._parents,n,o)}function Zv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=cf(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,g=Lt(f,o),_=0,y=p.length;_<y;++_)(m=p[_])&&Ti(m,n,o,_,p,g);a.push(p),l.push(f)}return new rn(a,l,n,o)}var Jv=ir.prototype.constructor;function Qv(){return new Jv(this._groups,this._parents)}function eA(e,n){var o,r,i;return function(){var a=xo(this,e),l=(this.style.removeProperty(e),xo(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Hf(e){return function(){this.style.removeProperty(e)}}function tA(e,n,o){var r,i=o+"",a;return function(){var l=xo(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function nA(e,n,o){var r,i,a;return function(){var l=xo(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),xo(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function oA(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=zt(this,e),d=c.on,f=c.value[a]==null?s||(s=Hf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function rA(e,n,o){var r=(e+="")=="transform"?iv:zf;return n==null?this.styleTween(e,eA(e,r)).on("end.style."+e,Hf(e)):typeof n=="function"?this.styleTween(e,nA(e,r,Yl(this,"style."+e,n))).each(oA(this._id,e)):this.styleTween(e,tA(e,r,n),o).on("end.style."+e,null)}function iA(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function aA(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&iA(e,l,o)),r}return a._value=n,a}function lA(e,n,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,aA(e,n,o??""))}function sA(e){return function(){this.textContent=e}}function cA(e){return function(){var n=e(this);this.textContent=n??""}}function dA(e){return this.tween("text",typeof e=="function"?cA(Yl(this,"text",e)):sA(e==null?"":e+""))}function uA(e){return function(n){this.textContent=e.call(this,n)}}function fA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&uA(i)),n}return r._value=e,r}function pA(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,fA(e))}function mA(){for(var e=this._name,n=this._id,o=Yf(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=Lt(c,n);Ti(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new rn(r,this._parents,e,o)}function gA(){var e,n,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var d=zt(this,r),f=d.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),d.on=n}),i===0&&a()})}var hA=0;function rn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Yf(){return++hA}var an=ir.prototype;rn.prototype={constructor:rn,select:Xv,selectAll:Zv,selectChild:an.selectChild,selectChildren:an.selectChildren,filter:jv,merge:Gv,selection:Qv,transition:mA,call:an.call,nodes:an.nodes,node:an.node,size:an.size,empty:an.empty,each:an.each,on:Hv,attr:vv,attrTween:Ov,style:rA,styleTween:lA,text:dA,textTween:pA,remove:Wv,tween:wv,delay:Vv,duration:Mv,ease:Fv,easeVarying:Kv,end:gA,[Symbol.iterator]:an[Symbol.iterator]};function yA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var _A={time:null,delay:0,duration:250,ease:yA};function bA(e,n){for(var o;!(o=e.__transition)||!(o=o[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return o}function wA(e){var n,o;e instanceof rn?(n=e._id,e=e._name):(n=Yf(),(o=_A).time=jl(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&Ti(c,e,n,d,l,o||bA(c,n));return new rn(r,this._parents,e,n)}ir.prototype.interrupt=yv,ir.prototype.transition=wA;const $i=e=>()=>e;function kA(e,{sourceEvent:n,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function ln(e,n,o){this.k=e,this.x=n,this.y=o}ln.prototype={constructor:ln,scale:function(e){return e===1?this:new ln(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new ln(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Io=new ln(1,0,0);ln.prototype;function Wl(e){e.stopImmediatePropagation()}function gr(e){e.preventDefault(),e.stopImmediatePropagation()}function CA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function EA(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Wf(){return this.__zoom||Io}function NA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function xA(){return navigator.maxTouchPoints||"ontouchstart"in this}function SA(e,n,o){var r=e.invertX(n[0][0])-o[0][0],i=e.invertX(n[1][0])-o[1][0],a=e.invertY(n[0][1])-o[0][1],l=e.invertY(n[1][1])-o[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function vA(){var e=CA,n=EA,o=SA,r=NA,i=xA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Ni,d=pi("start","zoom","end"),f,u,p,m=500,g=150,_=0,y=10;function h(S){S.property("__zoom",Wf).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",A).on("dblclick.zoom",B).filter(i).on("touchstart.zoom",v).on("touchmove.zoom",w).on("touchend.zoom touchcancel.zoom",M).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}h.transform=function(S,F,O,j){var X=S.selection?S.selection():S;X.property("__zoom",Wf),S!==X?N(S,F,O,j):X.interrupt().each(function(){C(this,arguments).event(j).start().zoom(null,typeof F=="function"?F.apply(this,arguments):F).end()})},h.scaleBy=function(S,F,O,j){h.scaleTo(S,function(){var X=this.__zoom.k,L=typeof F=="function"?F.apply(this,arguments):F;return X*L},O,j)},h.scaleTo=function(S,F,O,j){h.transform(S,function(){var X=n.apply(this,arguments),L=this.__zoom,U=O==null?E(X):typeof O=="function"?O.apply(this,arguments):O,P=L.invert(U),V=typeof F=="function"?F.apply(this,arguments):F;return o(b(k(L,V),U,P),X,l)},O,j)},h.translateBy=function(S,F,O,j){h.transform(S,function(){return o(this.__zoom.translate(typeof F=="function"?F.apply(this,arguments):F,typeof O=="function"?O.apply(this,arguments):O),n.apply(this,arguments),l)},null,j)},h.translateTo=function(S,F,O,j,X){h.transform(S,function(){var L=n.apply(this,arguments),U=this.__zoom,P=j==null?E(L):typeof j=="function"?j.apply(this,arguments):j;return o(Io.translate(P[0],P[1]).scale(U.k).translate(typeof F=="function"?-F.apply(this,arguments):-F,typeof O=="function"?-O.apply(this,arguments):-O),L,l)},j,X)};function k(S,F){return F=Math.max(a[0],Math.min(a[1],F)),F===S.k?S:new ln(F,S.x,S.y)}function b(S,F,O){var j=F[0]-O[0]*S.k,X=F[1]-O[1]*S.k;return j===S.x&&X===S.y?S:new ln(S.k,j,X)}function E(S){return[(+S[0][0]+ +S[1][0])/2,(+S[0][1]+ +S[1][1])/2]}function N(S,F,O,j){S.on("start.zoom",function(){C(this,arguments).event(j).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(j).end()}).tween("zoom",function(){var X=this,L=arguments,U=C(X,L).event(j),P=n.apply(X,L),V=O==null?E(P):typeof O=="function"?O.apply(X,L):O,G=Math.max(P[1][0]-P[0][0],P[1][1]-P[0][1]),Z=X.__zoom,K=typeof F=="function"?F.apply(X,L):F,q=c(Z.invert(V).concat(G/Z.k),K.invert(V).concat(G/K.k));return function(se){if(se===1)se=K;else{var me=q(se),ge=G/me[2];se=new ln(ge,V[0]-me[0]*ge,V[1]-me[1]*ge)}U.zoom(null,se)}})}function C(S,F,O){return!O&&S.__zooming||new x(S,F)}function x(S,F){this.that=S,this.args=F,this.active=0,this.sourceEvent=null,this.extent=n.apply(S,F),this.taps=0}x.prototype={event:function(S){return S&&(this.sourceEvent=S),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(S,F){return this.mouse&&S!=="mouse"&&(this.mouse[1]=F.invert(this.mouse[0])),this.touch0&&S!=="touch"&&(this.touch0[1]=F.invert(this.touch0[0])),this.touch1&&S!=="touch"&&(this.touch1[1]=F.invert(this.touch1[0])),this.that.__zoom=F,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(S){var F=Dt(this.that).datum();d.call(S,this.that,new kA(S,{sourceEvent:this.sourceEvent,target:h,transform:this.that.__zoom,dispatch:d}),F)}};function I(S,...F){if(!e.apply(this,arguments))return;var O=C(this,F).event(S),j=this.__zoom,X=Math.max(a[0],Math.min(a[1],j.k*Math.pow(2,r.apply(this,arguments)))),L=jt(S);if(O.wheel)(O.mouse[0][0]!==L[0]||O.mouse[0][1]!==L[1])&&(O.mouse[1]=j.invert(O.mouse[0]=L)),clearTimeout(O.wheel);else{if(j.k===X)return;O.mouse=[L,j.invert(L)],Oi(this),O.start()}gr(S),O.wheel=setTimeout(U,g),O.zoom("mouse",o(b(k(j,X),O.mouse[0],O.mouse[1]),O.extent,l));function U(){O.wheel=null,O.end()}}function A(S,...F){if(p||!e.apply(this,arguments))return;var O=S.currentTarget,j=C(this,F,!0).event(S),X=Dt(S.view).on("mousemove.zoom",V,!0).on("mouseup.zoom",G,!0),L=jt(S,O),U=S.clientX,P=S.clientY;wf(S.view),Wl(S),j.mouse=[L,this.__zoom.invert(L)],Oi(this),j.start();function V(Z){if(gr(Z),!j.moved){var K=Z.clientX-U,q=Z.clientY-P;j.moved=K*K+q*q>_}j.event(Z).zoom("mouse",o(b(j.that.__zoom,j.mouse[0]=jt(Z,O),j.mouse[1]),j.extent,l))}function G(Z){X.on("mousemove.zoom mouseup.zoom",null),kf(Z.view,j.moved),gr(Z),j.event(Z).end()}}function B(S,...F){if(e.apply(this,arguments)){var O=this.__zoom,j=jt(S.changedTouches?S.changedTouches[0]:S,this),X=O.invert(j),L=O.k*(S.shiftKey?.5:2),U=o(b(k(O,L),j,X),n.apply(this,F),l);gr(S),s>0?Dt(this).transition().duration(s).call(N,U,j,S):Dt(this).call(h.transform,U,j,S)}}function v(S,...F){if(e.apply(this,arguments)){var O=S.touches,j=O.length,X=C(this,F,S.changedTouches.length===j).event(S),L,U,P,V;for(Wl(S),U=0;U<j;++U)P=O[U],V=jt(P,this),V=[V,this.__zoom.invert(V),P.identifier],X.touch0?!X.touch1&&X.touch0[2]!==V[2]&&(X.touch1=V,X.taps=0):(X.touch0=V,L=!0,X.taps=1+!!f);f&&(f=clearTimeout(f)),L&&(X.taps<2&&(u=V[0],f=setTimeout(function(){f=null},m)),Oi(this),X.start())}}function w(S,...F){if(this.__zooming){var O=C(this,F).event(S),j=S.changedTouches,X=j.length,L,U,P,V;for(gr(S),L=0;L<X;++L)U=j[L],P=jt(U,this),O.touch0&&O.touch0[2]===U.identifier?O.touch0[0]=P:O.touch1&&O.touch1[2]===U.identifier&&(O.touch1[0]=P);if(U=O.that.__zoom,O.touch1){var G=O.touch0[0],Z=O.touch0[1],K=O.touch1[0],q=O.touch1[1],se=(se=K[0]-G[0])*se+(se=K[1]-G[1])*se,me=(me=q[0]-Z[0])*me+(me=q[1]-Z[1])*me;U=k(U,Math.sqrt(se/me)),P=[(G[0]+K[0])/2,(G[1]+K[1])/2],V=[(Z[0]+q[0])/2,(Z[1]+q[1])/2]}else if(O.touch0)P=O.touch0[0],V=O.touch0[1];else return;O.zoom("touch",o(b(U,P,V),O.extent,l))}}function M(S,...F){if(this.__zooming){var O=C(this,F).event(S),j=S.changedTouches,X=j.length,L,U;for(Wl(S),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),L=0;L<X;++L)U=j[L],O.touch0&&O.touch0[2]===U.identifier?delete O.touch0:O.touch1&&O.touch1[2]===U.identifier&&delete O.touch1;if(O.touch1&&!O.touch0&&(O.touch0=O.touch1,delete O.touch1),O.touch0)O.touch0[1]=this.__zoom.invert(O.touch0[0]);else if(O.end(),O.taps===2&&(U=jt(U,this),Math.hypot(u[0]-U[0],u[1]-U[1])<y)){var P=Dt(this).on("dblclick.zoom");P&&P.apply(this,arguments)}}}return h.wheelDelta=function(S){return arguments.length?(r=typeof S=="function"?S:$i(+S),h):r},h.filter=function(S){return arguments.length?(e=typeof S=="function"?S:$i(!!S),h):e},h.touchable=function(S){return arguments.length?(i=typeof S=="function"?S:$i(!!S),h):i},h.extent=function(S){return arguments.length?(n=typeof S=="function"?S:$i([[+S[0][0],+S[0][1]],[+S[1][0],+S[1][1]]]),h):n},h.scaleExtent=function(S){return arguments.length?(a[0]=+S[0],a[1]=+S[1],h):[a[0],a[1]]},h.translateExtent=function(S){return arguments.length?(l[0][0]=+S[0][0],l[1][0]=+S[1][0],l[0][1]=+S[0][1],l[1][1]=+S[1][1],h):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},h.constrain=function(S){return arguments.length?(o=S,h):o},h.duration=function(S){return arguments.length?(s=+S,h):s},h.interpolate=function(S){return arguments.length?(c=S,h):c},h.on=function(){var S=d.on.apply(d,arguments);return S===d?h:S},h.clickDistance=function(S){return arguments.length?(_=(S=+S)*S,h):Math.sqrt(_)},h.tapDistance=function(S){return arguments.length?(y=+S,h):y},h}var ve=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ve||{}),Xl=(e=>(e.Partial="partial",e.Full="full",e))(Xl||{}),Xn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(Xn||{}),bn=(e=>(e.Strict="strict",e.Loose="loose",e))(bn||{}),hr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(hr||{}),yr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(yr||{}),Xf=(e=>(e.TopLeft="top-left",e.TopCenter="top-center",e.TopRight="top-right",e.BottomLeft="bottom-left",e.BottomCenter="bottom-center",e.BottomRight="bottom-right",e))(Xf||{});const AA=["INPUT","SELECT","TEXTAREA"],IA=typeof document<"u"?document:null;function Zl(e){var n,o;const r=((o=(n=e.composedPath)==null?void 0:n.call(e))==null?void 0:o[0])||e.target,i=typeof(r==null?void 0:r.hasAttribute)=="function"?r.hasAttribute("contenteditable"):!1,a=typeof(r==null?void 0:r.closest)=="function"?r.closest(".nokey"):null;return AA.includes(r==null?void 0:r.nodeName)||i||!!a}function PA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Zf(e,n,o,r){const i=n.replace("+",`
208
+ `};function nr(e){return typeof e=="object"&&!Array.isArray(e)&&e!==null}const YN=[{name:"decK",extract(e){try{const n=hn.load(e);return nr(n)&&Array.isArray(n.plugins)&&n.plugins.find(r=>nr(r)&&r.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(e){let n=e;const o=e.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);o&&(n=o[1]||o[2]);try{const r=hn.load(n);if(!nr(r))return null;const i=nr(r.metadata)?r.metadata:{},a=r.plugin||i.name;return(r.kind==="KongPlugin"||r.kind==="KongClusterPlugin")&&a==="datakit"&&r||null}catch{return null}}},{name:"cURL",extract(e){if(!e.trim().startsWith("curl"))return null;const n=e.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!n)return null;let o=n[1]||n[2];n[2]&&(o=o.replace(/\\(["\\])/g,"$1"));try{const r=JSON.parse(o);return nr(r)&&r.name==="datakit"&&r||null}catch{return null}}}],WN={class:"dk-code-editor"},XN={class:"examples-content"},ZN={ref:"editor-root",class:"editor"},yl="YAML Syntax",Ru="datakit.insert-example",JN="datakit.auto-convert",Du=Ae(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const r=t.inject(pn.DATAKIT_M2,!1),{t:i}=Xe.createI18n("en-us",Je),{formData:a,setValue:l}=Me(),s=o,{getMessageFromError:c}=ge.useErrors(),d=t.useTemplateRef("editor-root"),f=t.shallowRef(null);function u(N){return hn.dump(N,{schema:_o,noArrayIndent:!0})}const p=t.shallowRef(!1),m=t.shallowRef(null),g=t.shallowRef("");function _(){p.value=!1,m.value=null,g.value=""}function h(){if(!m.value)return;const N=f.value,C=N==null?void 0:N.getModel();if(!N||!C)return;const x=u(m.value);N.pushUndoStop(),N.executeEdits(JN,[{range:C.getFullModelRange(),text:x}]),N.pushUndoStop(),_()}const y=["vault","cache"],k=t.computed(()=>r?bo:en(bo,y));function b(N){const C=f.value,x=C==null?void 0:C.getModel();if(!C||!x)return;const P=bo[N];if(!r&&C.getValue()!==P&&(C.pushUndoStop(),C.executeEdits(Ru,[{range:x.getFullModelRange(),text:P}]),C.pushUndoStop()),r)try{const A=C.getValue()||"",B=hn.load(A,{schema:_o,json:!0}),v=hn.load(P,{schema:_o,json:!0});if(Mn(B.config,v))return;const w=en({...a,config:{...v}},["__ui_data"]);C.pushUndoStop(),C.executeEdits(Ru,[{range:x.getFullModelRange(),text:u(w)}]),C.pushUndoStop()}catch(A){s("error",c(A))}E()}function E(){const N=f.value,C=N==null?void 0:N.getModel();!N||!C||(N.setPosition(C.getFullModelRange().getEndPosition()),N.focus())}return t.onMounted(()=>{const N=Vr.editor.create(d.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(f.value=N,!r&&a.config&&Object.keys(a.config).length>0){const C={...a.config};C.nodes&&C.nodes.length===0&&delete C.nodes;const x=Object.keys(C).length===0?"":u(t.toRaw(C));N.setValue(x),E()}if(r){const C=en({...a},["__ui_data"]),x=u(C);N.setValue(x),E(),N.onDidPaste(P=>{const A=N.getModel();if(!A)return;const B=A.getValueInRange(P.range);for(const v of YN){const w=v.extract(B);if(w){m.value=w,g.value=v.name,p.value=!0;return}}})}N.onDidChangeModelContent(()=>{const C=N.getModel(),x=N.getValue()||"";try{const P=hn.load(x,{schema:_o,json:!0});Vr.editor.setModelMarkers(C,yl,[]),r?l(P):a.config=P,s("change",P)}catch(P){const{message:A,mark:B}=P,{line:v,column:w}=B||{line:0,column:0},F=A.split(`
209
+ `)[0],S=[{startLineNumber:v+1,startColumn:w+1,endLineNumber:v+1,endColumn:w+2,message:F,severity:Vr.MarkerSeverity.Error,source:yl}];Vr.editor.setModelMarkers(C,yl,S),s("error",F)}})}),t.onBeforeUnmount(()=>{var N;(N=f.value)==null||N.dispose()}),n({setExampleCode:b}),(N,C)=>(t.openBlock(),t.createElementBlock("div",WN,[t.createVNode(t.unref(Oe.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ee.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",XN,[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(k.value,(x,P)=>(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:P,appearance:"secondary",size:"small",onClick:A=>b(P)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)(`plugins.free-form.datakit.examples.${P}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),t.createElementVNode("div",ZN,null,512),t.createVNode(t.unref(Oe.KModal),{"action-button-text":t.unref(i)("plugins.free-form.datakit.detected_config_format_confirm"),title:t.unref(i)("plugins.free-form.datakit.detected_config_format_title"),visible:p.value,onCancel:_,onProceed:h},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.detected_config_format",{format:g.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-b7794fb4"]]),Mu=["request","service_request","service_response","response","vault"],wo=Mu,Lu=["call","jq","exit","property","static","branch","cache"],Fu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],QN="#ecfcff",e1="#f1f0ff",t1="#52596e",n1="#e0e4ea",o1="#007d60",r1="#fffce0",i1="#6c7489",a1="#0044f4",l1="#5f9aff",_l="#000933",bl="#d60027",s1="#ffe5e5",c1="#00abd2",d1="#d60067",Uu="#6f28ff",Ku="#afb7c5",ko="#6c7489",u1="#0044f4",f1="#eefaff",p1="#007d60",m1="#ecfffb",g1="#995c00",h1="#306fff",ci="12px",di="16px",or="20px",y1="2px",ju="8px",_1="32px",kt={call:{icon:Ee.NetworkIcon,colors:{foreground:g1,background:r1}},jq:{icon:Ee.CodeblockIcon,colors:{foreground:Uu,background:e1}},exit:{icon:Ee.GatewayIcon,colors:{foreground:bl,background:s1}},property:{icon:Ee.StackIcon,colors:{foreground:p1,background:m1}},static:{icon:Ee.DeployIcon,colors:{foreground:u1,background:f1}},branch:{icon:Ee.ArrowSplitIcon,colors:{foreground:c1,background:QN}},cache:{icon:Ee.CachedIcon,colors:{foreground:d1,background:"#fff0f7"}},vault:{icon:Ee.KeyIcon},request:{icon:Ee.CloudIcon},service_request:{icon:Ee.CloudIcon},service_response:{icon:Ee.CloudIcon},response:{icon:Ee.CloudIcon}},{t:wl}=Xe.createI18n("en-us",Je);function Ot(e){return wl(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function qn(e){return wl(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function b1(e){return wl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const kl={call:{type:"call",summary:qn("call"),description:Ot("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...kt.call},jq:{type:"jq",summary:qn("jq"),description:Ot("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.jq},exit:{type:"exit",summary:qn("exit"),description:Ot("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.exit},property:{type:"property",summary:qn("property"),description:Ot("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...kt.property},static:{type:"static",summary:qn("static"),description:Ot("static"),io:{output:{fields:[],configurable:!0}},...kt.static},branch:{type:"branch",summary:qn("branch"),description:Ot("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...kt.branch},cache:{type:"cache",summary:qn("cache"),description:Ot("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...kt.cache}},ui={request:{type:"request",description:Ot("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.request},service_request:{type:"service_request",description:Ot("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...kt.service_request},service_response:{type:"service_response",description:Ot("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...kt.service_response},response:{type:"response",description:Ot("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...kt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...kt.vault,hidden:!0}},Cl=Object.keys(ui),El=e=>Cl.includes(e),w1=e=>[...Cl,...Lu].includes(e),xt=e=>Cl.includes(e),Nl=e=>xt(e.type),xl=e=>!!(e!=null&&e.startsWith("node:")),rr=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function nn(e){return Dn(e)}function Sl(e,n){if(e.length!==n.length)return!1;if(e.length===0)return!0;const o=new Set(n);return e.every(r=>o.has(r))}function Co(e){return`${e}:${Xr()}`}function fi(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Gu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Eo(e){return xt(e)?ui[e]:kl[e]}function qu(e){var i,a,l,s;const n=Eo(e),o=((a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields.map(({name:c})=>c))??[],r=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:r}}function ir(e){var o,r,i;return((i=(r=(o=Eo(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function zu(e){return(e??[]).map(n=>({id:Co("field"),name:n}))}function yn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function _n(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function vl(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Hu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function k1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=ui[e];return{name:e,phase:n,position:{x:0,y:0},fields:qu(o.type),expanded:{},hidden:o.hidden}}function Yu(e,n){const r=(typeof e=="string"&&w1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function Al(e,n){return`${e}:${n}`}function C1(e){const n=e.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${e}`);const o=e.slice(0,n),r=e.slice(n+1);return{nodeId:o,branch:r}}function pi(e,n){return`${e}:${n}`}function Wu(e,n,o,r,i){return{id:Al(e,n),ownerId:e,branch:n,phase:o,memberIds:[...r],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function E1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function N1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Xu(e,n){return[...E1(e),...N1(n)]}function mi(e,n){const o=new Map;for(const{source:r,target:i}of e)o.has(r)||o.set(r,[]),o.get(r).push(i),o.has(i)||o.set(i,[]);return n&&(o.has(n.source)||o.set(n.source,[]),o.get(n.source).push(n.target),o.has(n.target)||o.set(n.target,[])),o}function Il(e){const n=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(n.has(i))return!1;n.add(i),o.add(i);for(const a of e.get(i)??[])if(r(a))return!0;return o.delete(i),!1}for(const i of e.keys())if(r(i))return!0;return!1}function Pl(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&xl(i)):[]}function x1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const v=new Map;for(const w of e.value.groups)for(const F of w.memberIds)v.set(F,{ownerId:w.ownerId,branch:w.branch});return v}),a=t.computed(()=>{const v=new Map;for(const w of e.value.groups)for(const F of w.memberIds)v.set(F,w);return v}),l=t.computed(()=>{const v=new Map;for(const w of e.value.groups)v.has(w.ownerId)||v.set(w.ownerId,[]),v.get(w.ownerId).push(w);return v}),s=t.computed(()=>Xu(e.value.edges,e.value.groups)),c=t.computed(()=>mi(s.value));function d(v,w){return v?ir(v.type).includes(w):!1}function f(v,w){if(w===v.id)return!1;const F=o(w);return!(!F||xt(F.type)||F.phase!==v.phase)}function u(v,w){const F=[],S=new Set;for(const M of w)S.has(M)||(S.add(M),f(v,M)&&F.push(M));return F}function p(v,w,F){const S=o(v);return d(S,w)?u(S,F):[]}function m(v,w,F){const S=Al(v.id,w),M=n.value.get(S);F.length>0?M?(M.phase!==v.phase&&(M.phase=v.phase),Sl(M.memberIds,F)||(M.position=void 0,M.dimensions=void 0,M.memberIds=[...F])):e.value.groups.push(Wu(v.id,w,v.phase,F)):M&&(e.value.groups=e.value.groups.filter(O=>O.id!==S))}function g(v,w,F,S={}){const M=o(v);if(!d(M,w))return!1;const O=u(M,F),j=Pl(M,w);if(Sl(j,O))return!1;const W=M.config??(M.config={});return O.length>0?W[w]=[...O]:(delete W[w],Object.keys(W).length===0&&delete M.config),m(M,w,O),(S.commit??!0)&&r.commit(S.tag),!0}function _(v,w={}){const F=e.value.groups.filter(S=>S.ownerId!==v);return F.length===e.value.groups.length?!1:(e.value.groups=F,(w.commit??!0)&&r.commit(w.tag),!0)}function h(v,w){const F=n.value.get(Al(v,w));if(F)return[...F.memberIds];const S=o(v);return S?Pl(S,w):[]}function y(v){return i.value.get(v)}function k(v){const w=[];let F=a.value.get(v);for(;F;)w.push(F.id),F=a.value.get(F.ownerId);return w}function b(v,w){const F=k(w);if(F.length===0)return!1;const S=new Set(k(v));return S.size===0?!0:F.some(M=>!S.has(M))}function E(v,w){if(v===w)return!0;const F=new Set,S=[w];for(;S.length>0;){const M=S.pop();if(F.has(M))continue;if(F.add(M),M===v)return!0;const O=c.value.get(M);if(O)for(const j of O)F.has(j)||S.push(j)}return!1}function N(v,w,F){const S=o(v);return!(!d(S,w)||!f(S,F)||E(v,F))}function C(v,w,F,S={}){const M=o(v);if(!M||!N(v,w,F))return!1;const O=Pl(M,w);if(O.includes(F))return!1;x(F,{commit:!1});const j=[...O,F];return g(v,w,j,{commit:!1})?((S.commit??!0)&&r.commit(S.tag),!0):!1}function x(v,w={}){const F=y(v);if(!F)return!1;const S=h(F.ownerId,F.branch),M=S.filter(O=>O!==v);return M.length===S.length?!1:g(F.ownerId,F.branch,M,w)}function P(v){let w=0;const F=new Set;let S=a.value.get(v);for(;S&&!F.has(S.id);)w+=1,F.add(S.id),S=a.value.get(S.ownerId);return w}function A(v){const w=n.value.get(v);return w?P(w.ownerId):0}function B(v){return v?n.value.has(v):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:y,getMembers:h,wouldCreateCycle:E,setMembers:g,prepareMembers:p,addMember:C,removeMember:x,clear:_,getNodeDepth:P,getGroupDepth:A,isGroupId:B,isEdgeEnteringGroup:b,canAddMember:N}}function S1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=He.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var E;(E=n==null?void 0:n.onHistoryChange)==null||E.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function g(){r(),u=void 0,p("undo")}function _(){i(),u=void 0,p("redo")}function h(){s(),u=void 0,p("clear")}function y(){c(),u=void 0,p("reset")}function k(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:g,redo:_,clear:h,reset:y,revert:k}}function v1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function A1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function I1(e){const n=Object.entries(e);if(n.length===0)return;const o={};for(const[r,i]of n)o[r]=i;return o}function Zu(e,n){var h,y,k,b,E,N,C;const o=((h=e.config)==null?void 0:h.nodes)??[],r=((y=e.__ui_data)==null?void 0:y.nodes)??[],i=((k=e.__ui_data)==null?void 0:k.groups)??[],a=new Map(r.map(x=>[x.name,x])),l=new Map(i.map(x=>[x.name,x])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=x=>{const P=new Set,A=[...x];for(;A.length>0;){const B=A.shift();if(!P.has(B)&&(P.add(B),El(B)||(d.get(B).phase="request"),!!p.has(B)))for(const v of p.get(B))P.has(v)||A.push(v)}};let g=!1;for(const x of o){const P=a.get(x.name);!P&&!g&&(g=!0);const A=Qu({type:x.type,configNode:x,uiNode:P,pluginData:e});s.push(A),d.set(A.name,A)}for(const x of s){const P=ir(x.type);if(!P.length)continue;const A=x.config;if(A)for(const B of P){const v=A[B];if(!Array.isArray(v)){l.has(pi(x.name,B))&&(g=!0);continue}const w=[];for(const F of v){if(typeof F!="string")continue;const S=d.get(F);S&&!xt(S.type)&&w.push(S.id)}if(w.length){A[B]=w;const F=pi(x.name,B),S=l.get(F),M=S?{position:nn(S.position)}:void 0,O=Wu(x.id,B,x.phase,w,M);f.push(O),!S&&!g&&(g=!0)}else delete A[B],l.has(pi(x.name,B))&&(g=!0)}}for(const x of wo)if(!d.has(x)){let P=a.get(x);P||(g||(g=!0),P=k1(x));const A=Qu({type:x,uiNode:P,pluginData:e});s.push(A),d.set(A.name,A)}for(const x of o)O1(x,u);for(const x of u){const P=d.get(x.source),A=d.get(x.target);if(!P||!A){P||console.warn(`[initEditorState] skip: source "${x.source}" not found`),A||console.warn(`[initEditorState] skip: target "${x.target}" not found`);continue}p.has(x.source)||p.set(x.source,new Set),p.get(x.source).add(x.target),p.has(x.target)||p.set(x.target,new Set),p.get(x.target).add(x.source),c.push({id:Co("edge"),source:P.id,sourceField:(b=yn(P,"output",x.sourceField))==null?void 0:b.id,target:A.id,targetField:(E=yn(A,"input",x.targetField))==null?void 0:E.id})}m(["request","service_request"]);let _=null;return(C=(N=e.config)==null?void 0:N.resources)!=null&&C.cache&&(_={...e.config.resources.cache},e.partials&&(_.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:g?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,..._?{cacheConfig:_}:{}}}function Ju(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=qu(n),c=Eo(n);return{id:Co("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:zu((a==null?void 0:a.input)??s.input),output:zu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?nn(l):{}}}function P1(e){return xt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Qu({type:e,configNode:n,uiNode:o,pluginData:r}){return Ju({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??P1(e),position:o==null?void 0:o.position,fields:$1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:B1({type:e,configNode:n,pluginData:r})})}function T1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return nn(s)}function O1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=fi(e.input);r&&n.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){if(!i)continue;const{nodeName:a,fieldName:l}=fi(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=fi(e.output);r&&n.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){if(!i)continue;const{nodeName:a,fieldName:l}=fi(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function $1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=Eo(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=A1(r))}return Object.keys(l).length?l:void 0}function B1({type:e,configNode:n,pluginData:o}){return e==="vault"?v1(o):n?T1(n):void 0}function V1(e){const n=t.computed(()=>{const u=new Map;return e.value.nodes.forEach(p=>u.set(p.id,p)),u}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>Xu(o.value,r.value));function a(u){return mi(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const g=Hu(p,u.sourceField)&&!vl(p,u.sourceField),_=vl(m,u.targetField);return g&&_?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],g=n.value.get(p.source),_=n.value.get(p.target);if(g||m.push("source node not found"),_||m.push("target node not found"),!g||!_)return{ok:!1,errors:m};vl(g,p.sourceField)||m.push("source handle is not an output field"),Hu(_,p.targetField)||m.push("target handle is not an input field"),_.name==="request"&&m.push('cannot target "request"'),g.name==="response"&&m.push('cannot source from "response"');const h=o.value.some(b=>b.target===p.target&&!b.targetField),y=o.value.some(b=>b.target===p.target&&!!b.targetField);(h&&p.targetField||y&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(b=>b.target===p.target&&b.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(b=>b.target===p.target&&!b.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const k=a({source:p.source,target:p.target});return Il(k)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of wo)[...n.value.values()].some(m=>m.name===p)||u.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&u.push(`edge "${p.id}" targets "request"`),m.name==="response"&&u.push(`edge "${p.id}" sources from "response"`)}return Il(a())&&u.push("graph contains cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function d(u){return s(u).ok}function f(u){return!u.source||!u.target?!1:d({source:u.source,sourceField:u.sourceHandle,target:u.target,targetField:u.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:d,isValidVueFlowConnection:f,buildAdjacency:mi}}const[ef,R1]=He.createInjectionState(function(n,o={}){const r=t.ref(Zu(n)),i=t.ref(),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=S1(r,{capacity:200,clone:nn,onHistoryChange:Y=>{var Q,ce;Y!=="clear"&&((ce=o.onChange)==null||ce.call(o,ee(),ae(),Z(),(Q=r.value.cacheConfig)==null?void 0:Q.partial_id))}}),d=t.ref(!1),f=t.ref(new Set);function u(){r.value.pendingLayout=!1,c.commit("*")}function p(Y=!0){r.value.pendingFitView!==Y&&(r.value.pendingFitView=Y,c.commit("*"))}const m=t.computed(()=>{const Y={request:0,response:0};return r.value.nodes.forEach(Q=>{xt(Q.type)||Y[Q.phase]++}),Y}),g=t.computed(()=>new Map(r.value.nodes.map(Y=>[Y.id,Y]))),_=t.computed(()=>new Map(r.value.nodes.map(Y=>[Y.name,Y]))),h=t.computed(()=>{const Y=new Map,Q=new Map;for(const ce of r.value.edges)Y.set(ce.id,ce),Q.has(ce.source)||Q.set(ce.source,new Set),Q.get(ce.source).add(ce.id),Q.has(ce.target)||Q.set(ce.target,new Set),Q.get(ce.target).add(ce.id);return{edgeMapById:Y,edgeIdMapByNodeId:Q}}),y=t.computed(()=>h.value.edgeMapById),k=t.computed(()=>h.value.edgeIdMapByNodeId),b=t.computed(()=>new Map(r.value.groups.map(Y=>[Y.id,Y]))),E=t.computed(()=>new Set(r.value.nodes.map(Y=>Y.name))),N=x1({state:r,groupMapById:b,getNodeById:v,history:c}),{canonicalizeConnection:C,validateConnection:x,validateGraph:P,isValidConnection:A,isValidVueFlowConnection:B}=V1(r);function v(Y){return g.value.get(Y)}function w(Y){return _.value.get(Y)}function F(Y){return y.value.get(Y)}function S(Y){if(!k.value.has(Y))return[];const Q=[];return k.value.get(Y).forEach(ce=>{const be=F(ce);be&&Q.push(be)}),Q}function M(Y){return S(Y).filter(Q=>Q.target===Y)}function O(Y){return S(Y).filter(Q=>Q.source===Y)}const j=t.computed(()=>i.value?v(i.value):void 0);function W(Y){i.value=Y}function L(Y){a.value=Y}function U(Y){if(xt(Y.type))throw new Error("[createNode] implicit nodes are fixed.");return Ju({type:Y.type,name:Y.name||(xt(Y.type)?void 0:Yu(Y.type,E.value)),phase:Y.phase,position:Y.position,fields:Y.fields,config:Y.config})}function T(Y,Q=!0){const ce=U(Y);if(ce)return r.value.nodes.push(ce),Q&&c.commit(),d.value=!0,ce.id}function V(Y,Q,ce=!0){const be=v(Y);if(!be||xt(be.type))return;const te={...nn(be),id:Co("node"),name:Yu(be.name,E.value),position:Q??{x:be.position.x+20,y:be.position.y+20}},_e=ir(te.type);if(_e.length&&te.config){for(const Ne of _e)delete te.config[Ne];Object.keys(te.config).length===0&&delete te.config}return r.value.nodes.push(te),ce&&c.commit(),d.value=!0,te.id}function G(Y,Q=!0){if(!v(Y))return;r.value.edges=r.value.edges.filter(te=>te.source!==Y&&te.target!==Y),N.clear(Y,{commit:!1}),N.removeMember(Y,{commit:!1}),r.value.nodes=r.value.nodes.filter(te=>te.id!==Y),i.value===Y&&(i.value=void 0);const be=P();be.ok||console.warn("[removeNode] topology invalid:",be.errors.join("; ")),Q&&c.commit()}function se(Y,Q,ce=!0,be){const te=v(Y);if(!te)return;if(El(te.name)){console.warn("[renameNode] implicit node name is reserved.");return}te.name!==Q&&(te.name=Q,ce&&c.commit(be))}function K(Y,Q,ce=!0){const be=v(Y);be&&(be.position={...Q},ce&&c.commit())}function q(Y,Q,ce=!0){const be=b.value.get(Y);if(!be)return;const te=be.position;te&&te.x===Q.x&&te.y===Q.y||(be.position={...Q},ce&&c.commit())}function ne(Y,Q,ce=!0){const be=b.value.get(Y);if(!be)return!1;const te={...Q.position},_e={...Q.dimensions},Ne=be.position&&be.position.x===te.x&&be.position.y===te.y,pe=be.dimensions&&be.dimensions.width===_e.width&&be.dimensions.height===_e.height;return Ne&&pe?!1:(be.position=te,be.dimensions=_e,ce&&c.commit(),!0)}function me(Y,Q,ce,be=!0,te){const _e=v(Y);if(!_e)return;const Ne=ce??!_e.expanded[Q];Ne!==!!_e.expanded[Q]&&(_e.expanded[Q]=Ne,be&&c.commit(te??`toggle:${Y}:${Q}`))}function ye(Y,Q,ce=!0,be){const te=v(Y);te&&(te.config=nn(Q),ce&&c.commit(be))}function ie(Y,Q,ce,be=!0){const te=v(Y);if(!te)return;const _e=te.fields[Q];if(_e.some(Ne=>Ne.name===ce)){console.warn(`[addField] field "${ce}" already exists on ${Q}.`);return}_e.push({id:Co("field"),name:ce}),Q==="input"?te.fields.input=_e:te.fields.output=_e,be&&c.commit()}function oe(Y,Q,ce,be=!0){const te=v(Y);if(!te)return;const _e=te.fields.input,Ne=te.fields.output,pe=_e.find(fe=>fe.id===Q)??Ne.find(fe=>fe.id===Q);pe&&(pe.name=ce,be&&c.commit())}function le(Y,Q,ce=!0,be=!0){const te=v(Y);if(!te)return;const _e=te.fields.input,Ne=te.fields.output,pe=_e.findIndex(lt=>lt.id===Q);pe>=0&&_e.splice(pe,1);const fe=Ne.findIndex(lt=>lt.id===Q);fe>=0&&Ne.splice(fe,1),te.fields.input=_e,te.fields.output=Ne,ce&&(r.value.edges=r.value.edges.filter(lt=>lt.sourceField!==Q&&lt.targetField!==Q));const je=P();je.ok||console.warn("[removeField] topology invalid:",je.errors.join("; ")),be&&c.commit()}function de(Y,Q=!0){const ce=C(Y),be=x(ce);if(!be.ok){console.warn("[connectEdge] invalid connection:",be.errors.join("; "));return}const te={id:Co("edge"),...ce};r.value.edges.push(te);const _e=P();if(!_e.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",_e.errors.join("; "));return}return Q&&c.commit(),te.id}function $(Y,Q,ce=!0){I(Y,!1),de(Q,!1),ce&&c.commit()}function I(Y,Q=!0){const ce=r.value.edges.findIndex(_e=>_e.id===Y);if(ce<0)return;const be=r.value.edges[ce];r.value.edges.splice(ce,1);const te=P();if(!te.ok){r.value.edges.splice(ce,0,be),console.warn("[disconnectEdge] topology invalid:",te.errors.join("; "));return}Q&&c.commit()}function D(Y,Q=!0){const ce=M(Y);for(const be of ce)I(be.id,!1);Q&&c.commit()}function R(Y,Q=!0){const ce=O(Y);for(const be of ce)I(be.id,!1);Q&&c.commit()}function ee(){var Q,ce,be,te,_e;const Y=[];for(const Ne of r.value.nodes){if(xt(Ne.type))continue;let pe;const fe={};let je;const lt={};for(const st of r.value.edges.filter(ue=>ue.target===Ne.id)){const ue=v(st.source);if(!ue)continue;const he=(Q=_n(ue,"output",st.sourceField))==null?void 0:Q.name,Ce=he?`${ue.name}.${he}`:ue.name,ke=(ce=_n(Ne,"input",st.targetField))==null?void 0:ce.name;ke?fe[ke]=Ce:pe===void 0&&(pe=Ce)}for(const st of r.value.edges.filter(ue=>ue.source===Ne.id)){const ue=v(st.target);if(!ue)continue;const he=ue.type;if(!xt(he)||!((be=ui[he].io)!=null&&be.input))continue;const Ce=(te=_n(ue,"input",st.targetField))==null?void 0:te.name,ke=Ce?`${ue.name}.${Ce}`:ue.name,we=(_e=_n(Ne,"output",st.sourceField))==null?void 0:_e.name;we?lt[we]=ke:je===void 0&&(je=ke)}const ht={...nn(Ne.config),name:Ne.name,type:Ne.type},Wt=ir(Ne.type);if(Wt.length)for(const st of Wt){const ue=ht[st];if(!Array.isArray(ue))continue;const he=[];for(const Ce of ue){const ke=v(Ce);ke&&he.push(ke.name)}he.length?ht[st]=Array.from(new Set(he)):delete ht[st]}Object.keys(fe).length>0?ht.inputs=fe:pe!==void 0&&(ht.input=pe),Object.keys(lt).length>0?ht.outputs=lt:je!==void 0&&(ht.output=je),Y.push(ht)}return Y}function J(){return r.value.nodes.map(Y=>nn({name:Y.name,phase:Y.phase,position:{...Y.position},expanded:{...Y.expanded},fields:{input:Y.fields.input.map(Q=>Q.name),output:Y.fields.output.map(Q=>Q.name)}}))}function Z(){const Y={},Q=w("vault");if(Q){const ce=I1(Q.config);ce&&Object.keys(ce).length>0&&(Y.vault=ce)}if(r.value.cacheConfig){const{strategy:ce,redis:be,memory:te}=r.value.cacheConfig;Y.cache={strategy:ce,redis:be,memory:te}}if(Object.keys(Y).length!==0)return Y}function z(){const Y=[];for(const Q of r.value.groups){const ce=v(Q.ownerId);if(!ce)continue;const be=Q.position;be&&Y.push({name:pi(ce.name,Q.branch),position:{...be}})}return Y}function ae(){return{nodes:J(),groups:z()}}function H(Y,Q){Q&&c.commit(),r.value=Zu(Y,Q),Q||c.clear()}return{state:r,selection:i,portalSelection:a,modalOpen:l,skipValidation:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:g,nodeMapByName:_,edgeMapById:y,edgeIdMapByNodeId:k,groupMapById:b,getNodeById:v,getNodeByName:w,getEdgeById:F,getEdgesByNodeId:S,getInEdgesByNodeId:M,getOutEdgesByNodeId:O,selectedNode:j,selectNode:W,selectPortalEdge:L,createNode:U,addNode:T,duplicateNode:V,removeNode:G,renameNode:se,moveNode:K,moveGroup:q,setGroupLayout:ne,toggleExpanded:me,replaceConfig:ye,branchGroups:N,addField:ie,renameField:oe,removeField:le,connectEdge:de,replaceConnection:$,disconnectEdge:I,disconnectInEdges:D,disconnectOutEdges:R,toConfigNodes:ee,toUINodes:J,toUIGroups:z,toUIData:ae,load:H,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,revert:c.revert,isValidConnection:A,isValidVueFlowConnection:B,validateGraph:()=>P(),clearPendingLayout:u,setPendingFitView:p}});function Ye(){const e=R1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:D1}=Xe.createI18n("en-us",Je),gi=He.createGlobalState(()=>{const e=He.useLocalStorage("datakit-editor-mode","flow"),n=He.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=He.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:o}});function M1({enabled:e,confirm:n}){vn.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(D1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};He.useEventListener("beforeunload",o)}function ar(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function on(e){return typeof e=="function"?e():t.unref(e)}const L1=typeof window<"u"&&typeof document<"u",F1=e=>typeof e<"u",U1=Object.prototype.toString,K1=e=>U1.call(e)==="[object Object]",j1=()=>{};function G1(e,n){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(i).catch(a)})}return o}const tf=e=>e();function q1(e=tf){const n=t.ref(!0);function o(){n.value=!1}function r(){n.value=!0}const i=(...a)=>{n.value&&e(...a)};return{isActive:t.readonly(n),pause:o,resume:r,eventFilter:i}}function nf(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function z1(e,n,o={}){const{eventFilter:r=tf,...i}=o;return t.watch(e,G1(r,n),i)}function No(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=q1(r);return{stop:z1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function H1(e,n={}){if(!t.isRef(e))return t.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=t.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=on(n.replaceRef))!=null?a:!0)if(Array.isArray(e.value)){const s=[...e.value];s[r]=i,e.value=s}else{const s={...e.value,[r]:i};Object.setPrototypeOf(s,Object.getPrototypeOf(e.value)),e.value=s}else e.value[r]=i}}));return o}function Tl(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:g,throwOnTimeout:_}={}){let h=null;const k=[new Promise(b=>{h=t.watch(e,E=>{u(E)!==n&&(h==null||h(),b(E))},{flush:p,deep:m,immediate:!0})})];return g!=null&&k.push(nf(g,_).then(()=>on(e)).finally(()=>h==null?void 0:h())),Promise.race(k)}function r(u,p){if(!t.isRef(u))return o(E=>E===u,p);const{flush:m="sync",deep:g=!1,timeout:_,throwOnTimeout:h}=p??{};let y=null;const b=[new Promise(E=>{y=t.watch([e,u],([N,C])=>{n!==(N===C)&&(y==null||y(),E(N))},{flush:m,deep:g,immediate:!0})})];return _!=null&&b.push(nf(_,h).then(()=>on(e)).finally(()=>(y==null||y(),on(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const g=Array.from(m);return g.includes(u)||g.includes(on(u))},p)}function d(u){return f(1,u)}function f(u=1,p){let m=-1;return o(()=>(m+=1,m>=u),p)}return Array.isArray(on(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return Tl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return Tl(e,!n)}}}function Ol(e){return Tl(e)}function Y1(e){var n;const o=on(e);return(n=o==null?void 0:o.$el)!=null?n:o}const of=L1?window:void 0;function rf(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=of):[n,o,r,i]=e,!n)return j1;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,u,p,m)=>(f.addEventListener(u,p,m),()=>f.removeEventListener(u,p,m)),c=t.watch(()=>[Y1(n),on(i)],([f,u])=>{if(l(),!f)return;const p=K1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(g=>s(f,m,g,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return ar(d),d}function W1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function af(...e){let n,o,r={};e.length===3?(n=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(n=!0,o=e[0],r=e[1]):(n=e[0],o=e[1]):(n=!0,o=e[0]);const{target:i=of,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=W1(n);return rf(i,a,f=>{f.repeat&&on(s)||c(f)&&o(f)},l)}function X1(e){return JSON.parse(JSON.stringify(e))}function $l(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),g=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let _=d;n||(n="modelValue"),_=_||`update:${n.toString()}`;const h=b=>s?typeof s=="function"?s(b):X1(b):b,y=()=>F1(e[n])?h(e[n]):u,k=b=>{p?p(b)&&g(_,b):g(_,b)};if(c){const b=y(),E=t.ref(b);let N=!1;return t.watch(()=>e[n],C=>{N||(N=!0,E.value=h(C),t.nextTick(()=>N=!1))}),t.watch(E,C=>{!N&&(C!==e[n]||f)&&k(C)},{deep:f}),E}else return t.computed({get(){return y()},set(b){k(b)}})}var Z1={value:()=>{}};function hi(){for(var e=0,n=arguments.length,o={},r;e<n;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new yi(o)}function yi(e){this._=e}function J1(e,n){return e.trim().split(/^|\s+/).map(function(o){var r="",i=o.indexOf(".");if(i>=0&&(r=o.slice(i+1),o=o.slice(0,i)),o&&!n.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}yi.prototype=hi.prototype={constructor:yi,on:function(e,n){var o=this._,r=J1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=Q1(o[i],e.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++a<l;)if(i=(e=r[a]).type)o[i]=lf(o[i],e.name,n);else if(n==null)for(i in o)o[i]=lf(o[i],e.name,null);return this},copy:function(){var e={},n=this._;for(var o in n)e[o]=n[o].slice();return new yi(e)},call:function(e,n){if((i=arguments.length-2)>0)for(var o=new Array(i),r=0,i,a;r<i;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(n,o)},apply:function(e,n,o){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(n,o)}};function Q1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function lf(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=Z1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Bl="http://www.w3.org/1999/xhtml";const sf={svg:"http://www.w3.org/2000/svg",xhtml:Bl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function _i(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),sf.hasOwnProperty(n)?{space:sf[n],local:e}:e}function ex(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Bl&&n.documentElement.namespaceURI===Bl?n.createElement(e):n.createElementNS(o,e)}}function tx(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function cf(e){var n=_i(e);return(n.local?tx:ex)(n)}function nx(){}function Vl(e){return e==null?nx:function(){return this.querySelector(e)}}function ox(e){typeof e!="function"&&(e=Vl(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=new Array(l),c,d,f=0;f<l;++f)(c=a[f])&&(d=e.call(c,c.__data__,f,a))&&("__data__"in c&&(d.__data__=c.__data__),s[f]=d);return new St(r,this._parents)}function rx(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function ix(){return[]}function df(e){return e==null?ix:function(){return this.querySelectorAll(e)}}function ax(e){return function(){return rx(e.apply(this,arguments))}}function lx(e){typeof e=="function"?e=ax(e):e=df(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new St(r,i)}function uf(e){return function(){return this.matches(e)}}function ff(e){return function(n){return n.matches(e)}}var sx=Array.prototype.find;function cx(e){return function(){return sx.call(this.children,e)}}function dx(){return this.firstElementChild}function ux(e){return this.select(e==null?dx:cx(typeof e=="function"?e:ff(e)))}var fx=Array.prototype.filter;function px(){return Array.from(this.children)}function mx(e){return function(){return fx.call(this.children,e)}}function gx(e){return this.selectAll(e==null?px:mx(typeof e=="function"?e:ff(e)))}function hx(e){typeof e!="function"&&(e=uf(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new St(r,this._parents)}function pf(e){return new Array(e.length)}function yx(){return new St(this._enter||this._groups.map(pf),this._parents)}function bi(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}bi.prototype={constructor:bi,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function _x(e){return function(){return e}}function bx(e,n,o,r,i,a){for(var l=0,s,c=n.length,d=a.length;l<d;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new bi(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function wx(e,n,o,r,i,a,l){var s,c,d=new Map,f=n.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<u;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new bi(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function kx(e){return e.__data__}function Cx(e,n){if(!arguments.length)return Array.from(this,kx);var o=n?wx:bx,r=this._parents,i=this._groups;typeof e!="function"&&(e=_x(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),d=0;d<a;++d){var f=r[d],u=i[d],p=u.length,m=Ex(e.call(f,f&&f.__data__,d,r)),g=m.length,_=s[d]=new Array(g),h=l[d]=new Array(g),y=c[d]=new Array(p);o(f,u,_,h,y,m,n);for(var k=0,b=0,E,N;k<g;++k)if(E=_[k]){for(k>=b&&(b=k+1);!(N=h[b])&&++b<g;);E._next=N||null}}return l=new St(l,r),l._enter=s,l._exit=c,l}function Ex(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Nx(){return new St(this._exit||this._groups.map(pf),this._parents)}function xx(e,n,o){var r=this.enter(),i=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),n!=null&&(i=n(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function Sx(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,g=0;g<u;++g)(m=d[g]||f[g])&&(p[g]=m);for(;c<i;++c)s[c]=o[c];return new St(s,this._parents)}function vx(){for(var e=this._groups,n=-1,o=e.length;++n<o;)for(var r=e[n],i=r.length-1,a=r[i],l;--i>=0;)(l=r[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function Ax(e){e||(e=Ix);function n(u,p){return u&&p?e(u.__data__,p.__data__):!u-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),d,f=0;f<s;++f)(d=l[f])&&(c[f]=d);c.sort(n)}return new St(i,this._parents).order()}function Ix(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function Px(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Tx(){return Array.from(this)}function Ox(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function $x(){let e=0;for(const n of this)++e;return e}function Bx(){return!this.node()}function Vx(e){for(var n=this._groups,o=0,r=n.length;o<r;++o)for(var i=n[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function Rx(e){return function(){this.removeAttribute(e)}}function Dx(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Mx(e,n){return function(){this.setAttribute(e,n)}}function Lx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Fx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function Ux(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function Kx(e,n){var o=_i(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((n==null?o.local?Dx:Rx:typeof n=="function"?o.local?Ux:Fx:o.local?Lx:Mx)(o,n))}function mf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function jx(e){return function(){this.style.removeProperty(e)}}function Gx(e,n,o){return function(){this.style.setProperty(e,n,o)}}function qx(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function zx(e,n,o){return arguments.length>1?this.each((n==null?jx:typeof n=="function"?qx:Gx)(e,n,o??"")):xo(this.node(),e)}function xo(e,n){return e.style.getPropertyValue(n)||mf(e).getComputedStyle(e,null).getPropertyValue(n)}function Hx(e){return function(){delete this[e]}}function Yx(e,n){return function(){this[e]=n}}function Wx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Xx(e,n){return arguments.length>1?this.each((n==null?Hx:typeof n=="function"?Wx:Yx)(e,n)):this.node()[e]}function gf(e){return e.trim().split(/^|\s+/)}function Rl(e){return e.classList||new hf(e)}function hf(e){this._node=e,this._names=gf(e.getAttribute("class")||"")}hf.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function yf(e,n){for(var o=Rl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function _f(e,n){for(var o=Rl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Zx(e){return function(){yf(this,e)}}function Jx(e){return function(){_f(this,e)}}function Qx(e,n){return function(){(n.apply(this,arguments)?yf:_f)(this,e)}}function eS(e,n){var o=gf(e+"");if(arguments.length<2){for(var r=Rl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Qx:n?Zx:Jx)(o,n))}function tS(){this.textContent=""}function nS(e){return function(){this.textContent=e}}function oS(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function rS(e){return arguments.length?this.each(e==null?tS:(typeof e=="function"?oS:nS)(e)):this.node().textContent}function iS(){this.innerHTML=""}function aS(e){return function(){this.innerHTML=e}}function lS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function sS(e){return arguments.length?this.each(e==null?iS:(typeof e=="function"?lS:aS)(e)):this.node().innerHTML}function cS(){this.nextSibling&&this.parentNode.appendChild(this)}function dS(){return this.each(cS)}function uS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function fS(){return this.each(uS)}function pS(e){var n=typeof e=="function"?e:cf(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function mS(){return null}function gS(e,n){var o=typeof e=="function"?e:cf(e),r=n==null?mS:typeof n=="function"?n:Vl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function hS(){var e=this.parentNode;e&&e.removeChild(this)}function yS(){return this.each(hS)}function _S(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function bS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function wS(e){return this.select(e?bS:_S)}function kS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function CS(e){return function(n){e.call(this,n,this.__data__)}}function ES(e){return e.trim().split(/^|\s+/).map(function(n){var o="",r=n.indexOf(".");return r>=0&&(o=n.slice(r+1),n=n.slice(0,r)),{type:n,name:o}})}function NS(e){return function(){var n=this.__on;if(n){for(var o=0,r=-1,i=n.length,a;o<i;++o)a=n[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++r]=a;++r?n.length=r:delete this.__on}}}function xS(e,n,o){return function(){var r=this.__on,i,a=CS(n);if(r){for(var l=0,s=r.length;l<s;++l)if((i=r[l]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=o),i.value=n;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:n,listener:a,options:o},r?r.push(i):this.__on=[i]}}function SS(e,n,o){var r=ES(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,f;c<d;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=n?xS:NS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function bf(e,n,o){var r=mf(e),i=r.CustomEvent;typeof i=="function"?i=new i(n,o):(i=r.document.createEvent("Event"),o?(i.initEvent(n,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(n,!1,!1)),e.dispatchEvent(i)}function vS(e,n){return function(){return bf(this,e,n)}}function AS(e,n){return function(){return bf(this,e,n.apply(this,arguments))}}function IS(e,n){return this.each((typeof n=="function"?AS:vS)(e,n))}function*PS(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var wf=[null];function St(e,n){this._groups=e,this._parents=n}function lr(){return new St([[document.documentElement]],wf)}function TS(){return this}St.prototype=lr.prototype={constructor:St,select:ox,selectAll:lx,selectChild:ux,selectChildren:gx,filter:hx,data:Cx,enter:yx,exit:Nx,join:xx,merge:Sx,selection:TS,order:vx,sort:Ax,call:Px,nodes:Tx,node:Ox,size:$x,empty:Bx,each:Vx,attr:Kx,style:zx,property:Xx,classed:eS,text:rS,html:sS,raise:dS,lower:fS,append:pS,insert:gS,remove:yS,clone:wS,datum:kS,on:SS,dispatch:IS,[Symbol.iterator]:PS};function Dt(e){return typeof e=="string"?new St([[document.querySelector(e)]],[document.documentElement]):new St([[e]],wf)}function OS(e){let n;for(;n=e.sourceEvent;)e=n;return e}function jt(e,n){if(e=OS(e),n===void 0&&(n=e.currentTarget),n){var o=n.ownerSVGElement||n;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[e.clientX-i.left-n.clientLeft,e.clientY-i.top-n.clientTop]}}return[e.pageX,e.pageY]}const $S={passive:!1},sr={capture:!0,passive:!1};function Dl(e){e.stopImmediatePropagation()}function So(e){e.preventDefault(),e.stopImmediatePropagation()}function kf(e){var n=e.document.documentElement,o=Dt(e).on("dragstart.drag",So,sr);"onselectstart"in n?o.on("selectstart.drag",So,sr):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Cf(e,n){var o=e.document.documentElement,r=Dt(e).on("dragstart.drag",null);n&&(r.on("click.drag",So,sr),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const wi=e=>()=>e;function Ml(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:f}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:f}})}Ml.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function BS(e){return!e.ctrlKey&&!e.button}function VS(){return this.parentNode}function RS(e,n){return n??{x:e.x,y:e.y}}function DS(){return navigator.maxTouchPoints||"ontouchstart"in this}function MS(){var e=BS,n=VS,o=RS,r=DS,i={},a=hi("start","drag","end"),l=0,s,c,d,f,u=0;function p(E){E.on("mousedown.drag",m).filter(r).on("touchstart.drag",h).on("touchmove.drag",y,$S).on("touchend.drag touchcancel.drag",k).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(E,N){if(!(f||!e.call(this,E,N))){var C=b(this,n.call(this,E,N),E,N,"mouse");C&&(Dt(E.view).on("mousemove.drag",g,sr).on("mouseup.drag",_,sr),kf(E.view),Dl(E),d=!1,s=E.clientX,c=E.clientY,C("start",E))}}function g(E){if(So(E),!d){var N=E.clientX-s,C=E.clientY-c;d=N*N+C*C>u}i.mouse("drag",E)}function _(E){Dt(E.view).on("mousemove.drag mouseup.drag",null),Cf(E.view,d),So(E),i.mouse("end",E)}function h(E,N){if(e.call(this,E,N)){var C=E.changedTouches,x=n.call(this,E,N),P=C.length,A,B;for(A=0;A<P;++A)(B=b(this,x,E,N,C[A].identifier,C[A]))&&(Dl(E),B("start",E,C[A]))}}function y(E){var N=E.changedTouches,C=N.length,x,P;for(x=0;x<C;++x)(P=i[N[x].identifier])&&(So(E),P("drag",E,N[x]))}function k(E){var N=E.changedTouches,C=N.length,x,P;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),x=0;x<C;++x)(P=i[N[x].identifier])&&(Dl(E),P("end",E,N[x]))}function b(E,N,C,x,P,A){var B=a.copy(),v=jt(A||C,N),w,F,S;if((S=o.call(E,new Ml("beforestart",{sourceEvent:C,target:p,identifier:P,active:l,x:v[0],y:v[1],dx:0,dy:0,dispatch:B}),x))!=null)return w=S.x-v[0]||0,F=S.y-v[1]||0,function M(O,j,W){var L=v,U;switch(O){case"start":i[P]=M,U=l++;break;case"end":delete i[P],--l;case"drag":v=jt(W||j,N),U=l;break}B.call(O,E,new Ml(O,{sourceEvent:j,subject:S,target:p,identifier:P,active:U,x:v[0]+w,y:v[1]+F,dx:v[0]-L[0],dy:v[1]-L[1],dispatch:B}),x)}}return p.filter=function(E){return arguments.length?(e=typeof E=="function"?E:wi(!!E),p):e},p.container=function(E){return arguments.length?(n=typeof E=="function"?E:wi(E),p):n},p.subject=function(E){return arguments.length?(o=typeof E=="function"?E:wi(E),p):o},p.touchable=function(E){return arguments.length?(r=typeof E=="function"?E:wi(!!E),p):r},p.on=function(){var E=a.on.apply(a,arguments);return E===a?p:E},p.clickDistance=function(E){return arguments.length?(u=(E=+E)*E,p):Math.sqrt(u)},p}function Ll(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Ef(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function cr(){}var dr=.7,ki=1/dr,vo="\\s*([+-]?\\d+)\\s*",ur="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Gt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",LS=/^#([0-9a-f]{3,8})$/,FS=new RegExp(`^rgb\\(${vo},${vo},${vo}\\)$`),US=new RegExp(`^rgb\\(${Gt},${Gt},${Gt}\\)$`),KS=new RegExp(`^rgba\\(${vo},${vo},${vo},${ur}\\)$`),jS=new RegExp(`^rgba\\(${Gt},${Gt},${Gt},${ur}\\)$`),GS=new RegExp(`^hsl\\(${ur},${Gt},${Gt}\\)$`),qS=new RegExp(`^hsla\\(${ur},${Gt},${Gt},${ur}\\)$`),Nf={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Ll(cr,zn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:xf,formatHex:xf,formatHex8:zS,formatHsl:HS,formatRgb:Sf,toString:Sf});function xf(){return this.rgb().formatHex()}function zS(){return this.rgb().formatHex8()}function HS(){return Tf(this).formatHsl()}function Sf(){return this.rgb().formatRgb()}function zn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=LS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?vf(n):o===3?new Nt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?Ci(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?Ci(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=FS.exec(e))?new Nt(n[1],n[2],n[3],1):(n=US.exec(e))?new Nt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=KS.exec(e))?Ci(n[1],n[2],n[3],n[4]):(n=jS.exec(e))?Ci(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=GS.exec(e))?Pf(n[1],n[2]/100,n[3]/100,1):(n=qS.exec(e))?Pf(n[1],n[2]/100,n[3]/100,n[4]):Nf.hasOwnProperty(e)?vf(Nf[e]):e==="transparent"?new Nt(NaN,NaN,NaN,0):null}function vf(e){return new Nt(e>>16&255,e>>8&255,e&255,1)}function Ci(e,n,o,r){return r<=0&&(e=n=o=NaN),new Nt(e,n,o,r)}function YS(e){return e instanceof cr||(e=zn(e)),e?(e=e.rgb(),new Nt(e.r,e.g,e.b,e.opacity)):new Nt}function Fl(e,n,o,r){return arguments.length===1?YS(e):new Nt(e,n,o,r??1)}function Nt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Ll(Nt,Fl,Ef(cr,{brighter(e){return e=e==null?ki:Math.pow(ki,e),new Nt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?dr:Math.pow(dr,e),new Nt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Nt(Hn(this.r),Hn(this.g),Hn(this.b),Ei(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Af,formatHex:Af,formatHex8:WS,formatRgb:If,toString:If}));function Af(){return`#${Yn(this.r)}${Yn(this.g)}${Yn(this.b)}`}function WS(){return`#${Yn(this.r)}${Yn(this.g)}${Yn(this.b)}${Yn((isNaN(this.opacity)?1:this.opacity)*255)}`}function If(){const e=Ei(this.opacity);return`${e===1?"rgb(":"rgba("}${Hn(this.r)}, ${Hn(this.g)}, ${Hn(this.b)}${e===1?")":`, ${e})`}`}function Ei(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Hn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Yn(e){return e=Hn(e),(e<16?"0":"")+e.toString(16)}function Pf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Mt(e,n,o,r)}function Tf(e){if(e instanceof Mt)return new Mt(e.h,e.s,e.l,e.opacity);if(e instanceof cr||(e=zn(e)),!e)return new Mt;if(e instanceof Mt)return e;e=e.rgb();var n=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(n,o,r),a=Math.max(n,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(n===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-n)/s+2:l=(n-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new Mt(l,s,c,e.opacity)}function XS(e,n,o,r){return arguments.length===1?Tf(e):new Mt(e,n,o,r??1)}function Mt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Ll(Mt,XS,Ef(cr,{brighter(e){return e=e==null?ki:Math.pow(ki,e),new Mt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?dr:Math.pow(dr,e),new Mt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new Nt(Ul(e>=240?e-240:e+120,i,r),Ul(e,i,r),Ul(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Mt(Of(this.h),Ni(this.s),Ni(this.l),Ei(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Ei(this.opacity);return`${e===1?"hsl(":"hsla("}${Of(this.h)}, ${Ni(this.s)*100}%, ${Ni(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Of(e){return e=(e||0)%360,e<0?e+360:e}function Ni(e){return Math.max(0,Math.min(1,e||0))}function Ul(e,n,o){return(e<60?n+(o-n)*e/60:e<180?o:e<240?n+(o-n)*(240-e)/60:n)*255}const Kl=e=>()=>e;function ZS(e,n){return function(o){return e+o*n}}function JS(e,n,o){return e=Math.pow(e,o),n=Math.pow(n,o)-e,o=1/o,function(r){return Math.pow(e+r*n,o)}}function QS(e){return(e=+e)==1?$f:function(n,o){return o-n?JS(n,o,e):Kl(isNaN(n)?o:n)}}function $f(e,n){var o=n-e;return o?ZS(e,o):Kl(isNaN(e)?n:e)}const xi=function e(n){var o=QS(n);function r(i,a){var l=o((i=Fl(i)).r,(a=Fl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=$f(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=d(f),i+""}}return r.gamma=e,r}(1);function ev(e,n){n||(n=[]);var o=e?Math.min(n.length,e.length):0,r=n.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+n[i]*a;return r}}function tv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function nv(e,n){var o=n?n.length:0,r=e?Math.min(o,e.length):0,i=new Array(r),a=new Array(o),l;for(l=0;l<r;++l)i[l]=fr(e[l],n[l]);for(;l<o;++l)a[l]=n[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function ov(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function qt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function rv(e,n){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in e?o[i]=fr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var jl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Gl=new RegExp(jl.source,"g");function iv(e){return function(){return e}}function av(e){return function(n){return e(n)+""}}function Bf(e,n){var o=jl.lastIndex=Gl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=jl.exec(e))&&(i=Gl.exec(n));)(a=i.index)>o&&(a=n.slice(o,a),s[l]?s[l]+=a:s[++l]=a),(r=r[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:qt(r,i)})),o=Gl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?av(c[0].x):iv(n):(n=c.length,function(d){for(var f=0,u;f<n;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function fr(e,n){var o=typeof n,r;return n==null||o==="boolean"?Kl(n):(o==="number"?qt:o==="string"?(r=zn(n))?(n=r,xi):Bf:n instanceof zn?xi:n instanceof Date?ov:tv(n)?ev:Array.isArray(n)?nv:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?rv:qt)(e,n)}var Vf=180/Math.PI,ql={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Rf(e,n,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+n*n))&&(e/=l,n/=l),(c=e*o+n*r)&&(o-=e*c,r-=n*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<n*o&&(e=-e,n=-n,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(n,e)*Vf,skewX:Math.atan(c)*Vf,scaleX:l,scaleY:s}}var Si;function lv(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?ql:Rf(n.a,n.b,n.c,n.d,n.e,n.f)}function sv(e){return e==null||(Si||(Si=document.createElementNS("http://www.w3.org/2000/svg","g")),Si.setAttribute("transform",e),!(e=Si.transform.baseVal.consolidate()))?ql:(e=e.matrix,Rf(e.a,e.b,e.c,e.d,e.e,e.f))}function Df(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push("translate(",null,n,null,o);g.push({i:_-4,x:qt(d,u)},{i:_-2,x:qt(f,p)})}else(u||p)&&m.push("translate("+u+n+p+o)}function l(d,f,u,p){d!==f?(d-f>180?f+=360:f-d>180&&(d+=360),p.push({i:u.push(i(u)+"rotate(",null,r)-2,x:qt(d,f)})):f&&u.push(i(u)+"rotate("+f+r)}function s(d,f,u,p){d!==f?p.push({i:u.push(i(u)+"skewX(",null,r)-2,x:qt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");g.push({i:_-4,x:qt(d,u)},{i:_-2,x:qt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var g=-1,_=p.length,h;++g<_;)u[(h=p[g]).i]=h.x(m);return u.join("")}}}var cv=Df(lv,"px, ","px)","deg)"),dv=Df(sv,", ",")",")"),uv=1e-12;function Mf(e){return((e=Math.exp(e))+1/e)/2}function fv(e){return((e=Math.exp(e))-1/e)/2}function pv(e){return((e=Math.exp(2*e))-1)/(e+1)}const vi=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,g=u-c,_=m*m+g*g,h,y;if(_<uv)y=Math.log(p/d)/n,h=function(x){return[s+x*m,c+x*g,d*Math.exp(n*x*y)]};else{var k=Math.sqrt(_),b=(p*p-d*d+r*_)/(2*d*o*k),E=(p*p-d*d-r*_)/(2*p*o*k),N=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(E*E+1)-E);y=(C-N)/n,h=function(x){var P=x*y,A=Mf(N),B=d/(o*k)*(A*pv(n*P+N)-fv(N));return[s+B*m,c+B*g,d*A/Mf(n*P+N)]}}return h.duration=y*1e3*n/Math.SQRT2,h}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var Ao=0,pr=0,mr=0,Lf=1e3,Ai,gr,Ii=0,Wn=0,Pi=0,hr=typeof performance=="object"&&performance.now?performance:Date,Ff=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function zl(){return Wn||(Ff(mv),Wn=hr.now()+Pi)}function mv(){Wn=0}function Ti(){this._call=this._time=this._next=null}Ti.prototype=Uf.prototype={constructor:Ti,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?zl():+o)+(n==null?0:+n),!this._next&&gr!==this&&(gr?gr._next=this:Ai=this,gr=this),this._call=e,this._time=o,Hl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Hl())}};function Uf(e,n,o){var r=new Ti;return r.restart(e,n,o),r}function gv(){zl(),++Ao;for(var e=Ai,n;e;)(n=Wn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Ao}function Kf(){Wn=(Ii=hr.now())+Pi,Ao=pr=0;try{gv()}finally{Ao=0,yv(),Wn=0}}function hv(){var e=hr.now(),n=e-Ii;n>Lf&&(Pi-=n,Ii=e)}function yv(){for(var e,n=Ai,o,r=1/0;n;)n._call?(r>n._time&&(r=n._time),e=n,n=n._next):(o=n._next,n._next=null,n=e?e._next=o:Ai=o);gr=e,Hl(r)}function Hl(e){if(!Ao){pr&&(pr=clearTimeout(pr));var n=e-Wn;n>24?(e<1/0&&(pr=setTimeout(Kf,e-hr.now()-Pi)),mr&&(mr=clearInterval(mr))):(mr||(Ii=hr.now(),mr=setInterval(hv,Lf)),Ao=1,Ff(Kf))}}function jf(e,n,o){var r=new Ti;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var _v=hi("start","end","cancel","interrupt"),bv=[],Gf=0,qf=1,Yl=2,Oi=3,zf=4,Wl=5,$i=6;function Bi(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;wv(e,o,{name:n,index:r,group:i,on:_v,tween:bv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Gf})}function Xl(e,n){var o=Lt(e,n);if(o.state>Gf)throw new Error("too late; already scheduled");return o}function zt(e,n){var o=Lt(e,n);if(o.state>Oi)throw new Error("too late; already running");return o}function Lt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function wv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Uf(a,0,o.time);function a(d){o.state=qf,o.timer.restart(l,o.delay,o.time),o.delay<=d&&l(d-o.delay)}function l(d){var f,u,p,m;if(o.state!==qf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Oi)return jf(l);m.state===zf?(m.state=$i,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=$i,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(jf(function(){o.state===Oi&&(o.state=zf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Yl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Yl){for(o.state=Oi,i=new Array(p=o.tween.length),f=0,u=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++u]=m);i.length=u+1}}function s(d){for(var f=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=Wl,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Wl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=$i,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Vi(e,n){var o=e.__transition,r,i,a=!0,l;if(o){n=n==null?null:n+"";for(l in o){if((r=o[l]).name!==n){a=!1;continue}i=r.state>Yl&&r.state<Wl,r.state=$i,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function kv(e){return this.each(function(){Vi(this,e)})}function Cv(e,n){var o,r;return function(){var i=zt(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Ev(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=zt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function Nv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Lt(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((n==null?Cv:Ev)(o,e,n))}function Zl(e,n,o){var r=e._id;return e.each(function(){var i=zt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Lt(i,r).value[n]}}function Hf(e,n){var o;return(typeof n=="number"?qt:n instanceof zn?xi:(o=zn(n))?(n=o,xi):Bf)(e,n)}function xv(e){return function(){this.removeAttribute(e)}}function Sv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function vv(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=n(r=l,o)}}function Av(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=n(r=l,o)}}function Iv(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttribute(e):(l=this.getAttribute(e),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function Pv(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function Tv(e,n){var o=_i(e),r=o==="transform"?dv:Hf;return this.attrTween(e,typeof n=="function"?(o.local?Pv:Iv)(o,r,Zl(this,"attr."+e,n)):n==null?(o.local?Sv:xv)(o):(o.local?Av:vv)(o,r,n))}function Ov(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function $v(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function Bv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&$v(e,a)),o}return i._value=n,i}function Vv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Ov(e,a)),o}return i._value=n,i}function Rv(e,n){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(n==null)return this.tween(o,null);if(typeof n!="function")throw new Error;var r=_i(e);return this.tween(o,(r.local?Bv:Vv)(r,n))}function Dv(e,n){return function(){Xl(this,e).delay=+n.apply(this,arguments)}}function Mv(e,n){return n=+n,function(){Xl(this,e).delay=n}}function Lv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Dv:Mv)(n,e)):Lt(this.node(),n).delay}function Fv(e,n){return function(){zt(this,e).duration=+n.apply(this,arguments)}}function Uv(e,n){return n=+n,function(){zt(this,e).duration=n}}function Kv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Fv:Uv)(n,e)):Lt(this.node(),n).duration}function jv(e,n){if(typeof n!="function")throw new Error;return function(){zt(this,e).ease=n}}function Gv(e){var n=this._id;return arguments.length?this.each(jv(n,e)):Lt(this.node(),n).ease}function qv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;zt(this,e).ease=o}}function zv(e){if(typeof e!="function")throw new Error;return this.each(qv(this._id,e))}function Hv(e){typeof e!="function"&&(e=uf(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new rn(r,this._parents,this._name,this._id)}function Yv(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[s],d=o[s],f=c.length,u=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||d[m])&&(u[m]=p);for(;s<r;++s)l[s]=n[s];return new rn(l,this._parents,this._name,this._id)}function Wv(e){return(e+"").trim().split(/^|\s+/).every(function(n){var o=n.indexOf(".");return o>=0&&(n=n.slice(0,o)),!n||n==="start"})}function Xv(e,n,o){var r,i,a=Wv(n)?Xl:zt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Zv(e,n){var o=this._id;return arguments.length<2?Lt(this.node(),o).on.on(e):this.each(Xv(o,e,n))}function Jv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Qv(){return this.on("end.remove",Jv(this._id))}function eA(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Vl(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),f,u,p=0;p<c;++p)(f=s[p])&&(u=e.call(f,f.__data__,p,s))&&("__data__"in f&&(u.__data__=f.__data__),d[p]=u,Bi(d[p],n,o,p,d,Lt(f,o)));return new rn(a,this._parents,n,o)}function tA(e){var n=this._name,o=this._id;typeof e!="function"&&(e=df(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,g=Lt(f,o),_=0,h=p.length;_<h;++_)(m=p[_])&&Bi(m,n,o,_,p,g);a.push(p),l.push(f)}return new rn(a,l,n,o)}var nA=lr.prototype.constructor;function oA(){return new nA(this._groups,this._parents)}function rA(e,n){var o,r,i;return function(){var a=xo(this,e),l=(this.style.removeProperty(e),xo(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Yf(e){return function(){this.style.removeProperty(e)}}function iA(e,n,o){var r,i=o+"",a;return function(){var l=xo(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function aA(e,n,o){var r,i,a;return function(){var l=xo(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),xo(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function lA(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=zt(this,e),d=c.on,f=c.value[a]==null?s||(s=Yf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function sA(e,n,o){var r=(e+="")=="transform"?cv:Hf;return n==null?this.styleTween(e,rA(e,r)).on("end.style."+e,Yf(e)):typeof n=="function"?this.styleTween(e,aA(e,r,Zl(this,"style."+e,n))).each(lA(this._id,e)):this.styleTween(e,iA(e,r,n),o).on("end.style."+e,null)}function cA(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function dA(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&cA(e,l,o)),r}return a._value=n,a}function uA(e,n,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,dA(e,n,o??""))}function fA(e){return function(){this.textContent=e}}function pA(e){return function(){var n=e(this);this.textContent=n??""}}function mA(e){return this.tween("text",typeof e=="function"?pA(Zl(this,"text",e)):fA(e==null?"":e+""))}function gA(e){return function(n){this.textContent=e.call(this,n)}}function hA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&gA(i)),n}return r._value=e,r}function yA(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,hA(e))}function _A(){for(var e=this._name,n=this._id,o=Wf(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=Lt(c,n);Bi(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new rn(r,this._parents,e,o)}function bA(){var e,n,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var d=zt(this,r),f=d.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),d.on=n}),i===0&&a()})}var wA=0;function rn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Wf(){return++wA}var an=lr.prototype;rn.prototype={constructor:rn,select:eA,selectAll:tA,selectChild:an.selectChild,selectChildren:an.selectChildren,filter:Hv,merge:Yv,selection:oA,transition:_A,call:an.call,nodes:an.nodes,node:an.node,size:an.size,empty:an.empty,each:an.each,on:Zv,attr:Tv,attrTween:Rv,style:sA,styleTween:uA,text:mA,textTween:yA,remove:Qv,tween:Nv,delay:Lv,duration:Kv,ease:Gv,easeVarying:zv,end:bA,[Symbol.iterator]:an[Symbol.iterator]};function kA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var CA={time:null,delay:0,duration:250,ease:kA};function EA(e,n){for(var o;!(o=e.__transition)||!(o=o[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return o}function NA(e){var n,o;e instanceof rn?(n=e._id,e=e._name):(n=Wf(),(o=CA).time=zl(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&Bi(c,e,n,d,l,o||EA(c,n));return new rn(r,this._parents,e,n)}lr.prototype.interrupt=kv,lr.prototype.transition=NA;const Ri=e=>()=>e;function xA(e,{sourceEvent:n,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function ln(e,n,o){this.k=e,this.x=n,this.y=o}ln.prototype={constructor:ln,scale:function(e){return e===1?this:new ln(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new ln(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Io=new ln(1,0,0);ln.prototype;function Jl(e){e.stopImmediatePropagation()}function yr(e){e.preventDefault(),e.stopImmediatePropagation()}function SA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function vA(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Xf(){return this.__zoom||Io}function AA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function IA(){return navigator.maxTouchPoints||"ontouchstart"in this}function PA(e,n,o){var r=e.invertX(n[0][0])-o[0][0],i=e.invertX(n[1][0])-o[1][0],a=e.invertY(n[0][1])-o[0][1],l=e.invertY(n[1][1])-o[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function TA(){var e=SA,n=vA,o=PA,r=AA,i=IA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=vi,d=hi("start","zoom","end"),f,u,p,m=500,g=150,_=0,h=10;function y(S){S.property("__zoom",Xf).on("wheel.zoom",P,{passive:!1}).on("mousedown.zoom",A).on("dblclick.zoom",B).filter(i).on("touchstart.zoom",v).on("touchmove.zoom",w).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}y.transform=function(S,M,O,j){var W=S.selection?S.selection():S;W.property("__zoom",Xf),S!==W?N(S,M,O,j):W.interrupt().each(function(){C(this,arguments).event(j).start().zoom(null,typeof M=="function"?M.apply(this,arguments):M).end()})},y.scaleBy=function(S,M,O,j){y.scaleTo(S,function(){var W=this.__zoom.k,L=typeof M=="function"?M.apply(this,arguments):M;return W*L},O,j)},y.scaleTo=function(S,M,O,j){y.transform(S,function(){var W=n.apply(this,arguments),L=this.__zoom,U=O==null?E(W):typeof O=="function"?O.apply(this,arguments):O,T=L.invert(U),V=typeof M=="function"?M.apply(this,arguments):M;return o(b(k(L,V),U,T),W,l)},O,j)},y.translateBy=function(S,M,O,j){y.transform(S,function(){return o(this.__zoom.translate(typeof M=="function"?M.apply(this,arguments):M,typeof O=="function"?O.apply(this,arguments):O),n.apply(this,arguments),l)},null,j)},y.translateTo=function(S,M,O,j,W){y.transform(S,function(){var L=n.apply(this,arguments),U=this.__zoom,T=j==null?E(L):typeof j=="function"?j.apply(this,arguments):j;return o(Io.translate(T[0],T[1]).scale(U.k).translate(typeof M=="function"?-M.apply(this,arguments):-M,typeof O=="function"?-O.apply(this,arguments):-O),L,l)},j,W)};function k(S,M){return M=Math.max(a[0],Math.min(a[1],M)),M===S.k?S:new ln(M,S.x,S.y)}function b(S,M,O){var j=M[0]-O[0]*S.k,W=M[1]-O[1]*S.k;return j===S.x&&W===S.y?S:new ln(S.k,j,W)}function E(S){return[(+S[0][0]+ +S[1][0])/2,(+S[0][1]+ +S[1][1])/2]}function N(S,M,O,j){S.on("start.zoom",function(){C(this,arguments).event(j).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(j).end()}).tween("zoom",function(){var W=this,L=arguments,U=C(W,L).event(j),T=n.apply(W,L),V=O==null?E(T):typeof O=="function"?O.apply(W,L):O,G=Math.max(T[1][0]-T[0][0],T[1][1]-T[0][1]),se=W.__zoom,K=typeof M=="function"?M.apply(W,L):M,q=c(se.invert(V).concat(G/se.k),K.invert(V).concat(G/K.k));return function(ne){if(ne===1)ne=K;else{var me=q(ne),ye=G/me[2];ne=new ln(ye,V[0]-me[0]*ye,V[1]-me[1]*ye)}U.zoom(null,ne)}})}function C(S,M,O){return!O&&S.__zooming||new x(S,M)}function x(S,M){this.that=S,this.args=M,this.active=0,this.sourceEvent=null,this.extent=n.apply(S,M),this.taps=0}x.prototype={event:function(S){return S&&(this.sourceEvent=S),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(S,M){return this.mouse&&S!=="mouse"&&(this.mouse[1]=M.invert(this.mouse[0])),this.touch0&&S!=="touch"&&(this.touch0[1]=M.invert(this.touch0[0])),this.touch1&&S!=="touch"&&(this.touch1[1]=M.invert(this.touch1[0])),this.that.__zoom=M,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(S){var M=Dt(this.that).datum();d.call(S,this.that,new xA(S,{sourceEvent:this.sourceEvent,target:y,transform:this.that.__zoom,dispatch:d}),M)}};function P(S,...M){if(!e.apply(this,arguments))return;var O=C(this,M).event(S),j=this.__zoom,W=Math.max(a[0],Math.min(a[1],j.k*Math.pow(2,r.apply(this,arguments)))),L=jt(S);if(O.wheel)(O.mouse[0][0]!==L[0]||O.mouse[0][1]!==L[1])&&(O.mouse[1]=j.invert(O.mouse[0]=L)),clearTimeout(O.wheel);else{if(j.k===W)return;O.mouse=[L,j.invert(L)],Vi(this),O.start()}yr(S),O.wheel=setTimeout(U,g),O.zoom("mouse",o(b(k(j,W),O.mouse[0],O.mouse[1]),O.extent,l));function U(){O.wheel=null,O.end()}}function A(S,...M){if(p||!e.apply(this,arguments))return;var O=S.currentTarget,j=C(this,M,!0).event(S),W=Dt(S.view).on("mousemove.zoom",V,!0).on("mouseup.zoom",G,!0),L=jt(S,O),U=S.clientX,T=S.clientY;kf(S.view),Jl(S),j.mouse=[L,this.__zoom.invert(L)],Vi(this),j.start();function V(se){if(yr(se),!j.moved){var K=se.clientX-U,q=se.clientY-T;j.moved=K*K+q*q>_}j.event(se).zoom("mouse",o(b(j.that.__zoom,j.mouse[0]=jt(se,O),j.mouse[1]),j.extent,l))}function G(se){W.on("mousemove.zoom mouseup.zoom",null),Cf(se.view,j.moved),yr(se),j.event(se).end()}}function B(S,...M){if(e.apply(this,arguments)){var O=this.__zoom,j=jt(S.changedTouches?S.changedTouches[0]:S,this),W=O.invert(j),L=O.k*(S.shiftKey?.5:2),U=o(b(k(O,L),j,W),n.apply(this,M),l);yr(S),s>0?Dt(this).transition().duration(s).call(N,U,j,S):Dt(this).call(y.transform,U,j,S)}}function v(S,...M){if(e.apply(this,arguments)){var O=S.touches,j=O.length,W=C(this,M,S.changedTouches.length===j).event(S),L,U,T,V;for(Jl(S),U=0;U<j;++U)T=O[U],V=jt(T,this),V=[V,this.__zoom.invert(V),T.identifier],W.touch0?!W.touch1&&W.touch0[2]!==V[2]&&(W.touch1=V,W.taps=0):(W.touch0=V,L=!0,W.taps=1+!!f);f&&(f=clearTimeout(f)),L&&(W.taps<2&&(u=V[0],f=setTimeout(function(){f=null},m)),Vi(this),W.start())}}function w(S,...M){if(this.__zooming){var O=C(this,M).event(S),j=S.changedTouches,W=j.length,L,U,T,V;for(yr(S),L=0;L<W;++L)U=j[L],T=jt(U,this),O.touch0&&O.touch0[2]===U.identifier?O.touch0[0]=T:O.touch1&&O.touch1[2]===U.identifier&&(O.touch1[0]=T);if(U=O.that.__zoom,O.touch1){var G=O.touch0[0],se=O.touch0[1],K=O.touch1[0],q=O.touch1[1],ne=(ne=K[0]-G[0])*ne+(ne=K[1]-G[1])*ne,me=(me=q[0]-se[0])*me+(me=q[1]-se[1])*me;U=k(U,Math.sqrt(ne/me)),T=[(G[0]+K[0])/2,(G[1]+K[1])/2],V=[(se[0]+q[0])/2,(se[1]+q[1])/2]}else if(O.touch0)T=O.touch0[0],V=O.touch0[1];else return;O.zoom("touch",o(b(U,T,V),O.extent,l))}}function F(S,...M){if(this.__zooming){var O=C(this,M).event(S),j=S.changedTouches,W=j.length,L,U;for(Jl(S),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),L=0;L<W;++L)U=j[L],O.touch0&&O.touch0[2]===U.identifier?delete O.touch0:O.touch1&&O.touch1[2]===U.identifier&&delete O.touch1;if(O.touch1&&!O.touch0&&(O.touch0=O.touch1,delete O.touch1),O.touch0)O.touch0[1]=this.__zoom.invert(O.touch0[0]);else if(O.end(),O.taps===2&&(U=jt(U,this),Math.hypot(u[0]-U[0],u[1]-U[1])<h)){var T=Dt(this).on("dblclick.zoom");T&&T.apply(this,arguments)}}}return y.wheelDelta=function(S){return arguments.length?(r=typeof S=="function"?S:Ri(+S),y):r},y.filter=function(S){return arguments.length?(e=typeof S=="function"?S:Ri(!!S),y):e},y.touchable=function(S){return arguments.length?(i=typeof S=="function"?S:Ri(!!S),y):i},y.extent=function(S){return arguments.length?(n=typeof S=="function"?S:Ri([[+S[0][0],+S[0][1]],[+S[1][0],+S[1][1]]]),y):n},y.scaleExtent=function(S){return arguments.length?(a[0]=+S[0],a[1]=+S[1],y):[a[0],a[1]]},y.translateExtent=function(S){return arguments.length?(l[0][0]=+S[0][0],l[1][0]=+S[1][0],l[0][1]=+S[0][1],l[1][1]=+S[1][1],y):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},y.constrain=function(S){return arguments.length?(o=S,y):o},y.duration=function(S){return arguments.length?(s=+S,y):s},y.interpolate=function(S){return arguments.length?(c=S,y):c},y.on=function(){var S=d.on.apply(d,arguments);return S===d?y:S},y.clickDistance=function(S){return arguments.length?(_=(S=+S)*S,y):Math.sqrt(_)},y.tapDistance=function(S){return arguments.length?(h=+S,y):h},y}var ve=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ve||{}),Ql=(e=>(e.Partial="partial",e.Full="full",e))(Ql||{}),Xn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(Xn||{}),bn=(e=>(e.Strict="strict",e.Loose="loose",e))(bn||{}),_r=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(_r||{}),br=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(br||{}),Zf=(e=>(e.TopLeft="top-left",e.TopCenter="top-center",e.TopRight="top-right",e.BottomLeft="bottom-left",e.BottomCenter="bottom-center",e.BottomRight="bottom-right",e))(Zf||{});const OA=["INPUT","SELECT","TEXTAREA"],$A=typeof document<"u"?document:null;function es(e){var n,o;const r=((o=(n=e.composedPath)==null?void 0:n.call(e))==null?void 0:o[0])||e.target,i=typeof(r==null?void 0:r.hasAttribute)=="function"?r.hasAttribute("contenteditable"):!1,a=typeof(r==null?void 0:r.closest)=="function"?r.closest(".nokey"):null;return OA.includes(r==null?void 0:r.nodeName)||i||!!a}function BA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Jf(e,n,o,r){const i=n.replace("+",`
210
210
  `).replace(`
211
211
 
212
212
  `,`
213
213
  +`).split(`
214
- `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===n.toLowerCase();r||o.add(e.toLowerCase());const a=i.every((l,s)=>o.has(l)&&Array.from(o.values())[s]===i[s]);return r&&o.delete(e.toLowerCase()),a}function TA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=OA(o.code,e);return Array.isArray(e)?e.some(i=>Zf(o[r],i,n,o.type==="keyup")):Zf(o[r],e,n,o.type==="keyup")}}function OA(e,n){return n.includes(e)?"code":"key"}function _r(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??IA),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),of(["blur","contextmenu"],s),rf((...d)=>l(...d),d=>{var f,u;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=PA(d),(!i||i&&!p)&&Zl(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,y=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!y)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),rf((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Zl(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(d){return d===null?(s(),()=>!1):typeof d=="boolean"?(s(),r.value=d,()=>!1):Array.isArray(d)||typeof d=="string"?TA(d,a):d}return r}const Jf="vue-flow__node-desc",Qf="vue-flow__edge-desc",$A="vue-flow__aria-live",ep=["Enter"," ","Escape"],Po={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Bi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Vi(e,n){const o=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),r=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(o*r)}function Ri(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Zn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function tp(e,n){return{x:Zn(e.x,n[0][0],n[1][0]),y:Zn(e.y,n[0][1],n[1][1])}}function np(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function wn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Jn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!wn(e)}function br(e){return Jn(e)&&"computedPosition"in e}function Di(e){return!Number.isNaN(e)&&Number.isFinite(e)}function BA(e){return Di(e.width)&&Di(e.height)&&Di(e.x)&&Di(e.y)}function VA(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function op(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function rp(e,n,o,r){const i=typeof e=="string"?e:e.id,a=new Set,l=r==="source"?"target":"source";for(const s of o)s[l]===i&&a.add(s[r]);return n.filter(s=>a.has(s.id))}function RA(...e){if(e.length===3){const[a,l,s]=e;return rp(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>wn(a)&&a.source===r).map(a=>o.find(l=>Jn(l)&&l.id===a.target))}function DA(...e){if(e.length===3){const[a,l,s]=e;return rp(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>wn(a)&&a.target===r).map(a=>o.find(l=>Jn(l)&&l.id===a.source))}function ip({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function MA(e,n){return n.some(o=>wn(o)&&o.source===e.source&&o.target===e.target&&(o.sourceHandle===e.sourceHandle||!o.sourceHandle&&!e.sourceHandle)&&(o.targetHandle===e.targetHandle||!o.targetHandle&&!e.targetHandle))}function Jl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function wr({x:e,y:n},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(n-r)/i};return a?Li(s,l):s}function LA(e,n){return{x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}}function ap({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function FA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function lp(e){let n={x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};for(let o=0;o<e.length;o++){const r=e[o];n=LA(n,ap({...r.computedPosition,...r.dimensions}))}return FA(n)}function sp(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...wr(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:f=!1}=s,u=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||f)continue;const m=Vi(a,Bi(s)),g=u===null||p===null,_=r&&m>0,y=(u??0)*(p??0);(g||_||m>=y||s.dragging)&&l.push(s)}return l}function cp(e,n){const o=new Set;if(typeof e=="string")o.add(e);else if(e.length>=1)for(const r of e)o.add(r.id);return n.filter(r=>o.has(r.source)||o.has(r.target))}function dp(e,n,o,r,i,a=.1,l={x:0,y:0}){const s=n/(e.width*(1+a)),c=o/(e.height*(1+a)),d=Math.min(s,c),f=Zn(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=n/2-u*f+(l.x??0),g=o/2-p*f+(l.y??0);return{x:m,y:g,zoom:f}}function UA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function up(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:up(o,n):!1}function kr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function fp(e,n,o){return e<n?Zn(Math.abs(e-n),1,n)/n:e>o?-Zn(Math.abs(e-o),1,n)/n:0}function pp(e,n,o=15,r=40){const i=fp(e.x,r,n.width-r)*o,a=fp(e.y,r,n.height-r)*o;return[i,a]}function Ql(e,n){if(n){const o=e.position.x+e.dimensions.width-n.dimensions.width,r=e.position.y+e.dimensions.height-n.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof n.style=="function"?i={...n.style(n)}:n.style&&(i={...n.style}),i.width=i.width??`${n.dimensions.width}px`,i.height=i.height??`${n.dimensions.height}px`,o>0)if(typeof i.width=="string"){const a=Number(i.width.replace("px",""));i.width=`${a+o}px`}else i.width+=o;if(r>0)if(typeof i.height=="string"){const a=Number(i.height.replace("px",""));i.height=`${a+r}px`}else i.height+=r;if(e.position.x<0){const a=Math.abs(e.position.x);if(n.position.x=n.position.x-a,typeof i.width=="string"){const l=Number(i.width.replace("px",""));i.width=`${l+a}px`}else i.width+=a;e.position.x=0}if(e.position.y<0){const a=Math.abs(e.position.y);if(n.position.y=n.position.y-a,typeof i.height=="string"){const l=Number(i.height.replace("px",""));i.height=`${l+a}px`}else i.height+=a;e.position.y=0}n.dimensions.width=Number(i.width.toString().replace("px","")),n.dimensions.height=Number(i.height.toString().replace("px","")),typeof n.style=="function"?n.style=a=>{const l=n.style;return{...l(a),...i}}:n.style={...n.style,...i}}}}function mp(e,n){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")n.findIndex(c=>c.id===l.item.id)===-1&&n.push(l.item);else if(l.type==="remove"){const s=n.findIndex(c=>c.id===l.id);s!==-1&&n.splice(s,1)}const a=n.map(l=>l.id);for(const l of n)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if(br(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&br(c)&&Ql(l,c)}break;case"dimensions":if(br(l)&&(typeof s.dimensions<"u"&&(l.dimensions=s.dimensions),typeof s.updateStyle<"u"&&s.updateStyle&&(l.style={...l.style||{},width:`${(o=s.dimensions)==null?void 0:o.width}px`,height:`${(r=s.dimensions)==null?void 0:r.height}px`}),typeof s.resizing<"u"&&(l.resizing=s.resizing),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&br(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Ql(l,c):t.nextTick(()=>{Ql(l,c)}))}break}return n}function kn(e,n){return{id:e,type:"select",selected:n}}function gp(e){return{item:e,type:"add"}}function hp(e){return{id:e,type:"remove"}}function yp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function Cn(e,n=new Set,o=!1){const r=[];for(const[i,a]of e){const l=n.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(kn(a.id,l)))}return r}function Se(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return fi(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function _p(e,n,o){let r=e;do{if(r&&r.matches(n))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function KA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!up(c,r))&&(c.draggable||n&&typeof c.draggable>"u")&&s.push(t.markRaw({id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((a=c.computedPosition)==null?void 0:a.x)||0,y:o.y-((l=c.computedPosition)==null?void 0:l.y)||0},from:c.computedPosition,extent:c.extent,parentNode:c.parentNode,dimensions:c.dimensions,expandParent:c.expandParent}));return s}function es({id:e,dragItems:n,findNode:o}){const r=[];for(const i of n){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function bp(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function jA(e,n,o){const[r,i,a,l]=typeof e!="string"?bp(e.padding):[0,0,0,0];return o&&typeof o.computedPosition.x<"u"&&typeof o.computedPosition.y<"u"&&typeof o.dimensions.width<"u"&&typeof o.dimensions.height<"u"?[[o.computedPosition.x+l,o.computedPosition.y+r],[o.computedPosition.x+o.dimensions.width-i,o.computedPosition.y+o.dimensions.height-a]]:!1}function GA(e,n,o,r){let i=e.extent||o;if((i==="parent"||!Array.isArray(i)&&(i==null?void 0:i.range)==="parent")&&!e.expandParent)if(e.parentNode&&r&&e.dimensions.width&&e.dimensions.height){const a=jA(i,e,r);a&&(i=a)}else n(new at(et.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=bp(i.padding),d=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+d+c,i.range[0][1]+f+a],[i.range[1][0]+d-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function qA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function ts(e,n,o,r,i){const a=qA(e.dimensions,GA(e,o,r,i)),l=tp(n,a);return{position:{x:l.x-((i==null?void 0:i.computedPosition.x)||0),y:l.y-((i==null?void 0:i.computedPosition.y)||0)},computedPosition:l}}function To(e,n,o=ve.Left,r=!1){const i=((n==null?void 0:n.x)??0)+e.computedPosition.x,a=((n==null?void 0:n.y)??0)+e.computedPosition.y,{width:l,height:s}=n??WA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case ve.Top:return{x:i+l/2,y:a};case ve.Right:return{x:i+l,y:a+s/2};case ve.Bottom:return{x:i+l/2,y:a+s};case ve.Left:return{x:i,y:a+s/2}}}function wp(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function zA({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=ap({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),u=Math.max(0,Math.min(f.x2,d.x2)-Math.max(f.x,d.x)),p=Math.max(0,Math.min(f.y2,d.y2)-Math.max(f.y,d.y));return Math.ceil(u*p)>0}function HA(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var et=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(et||{});const kp={MISSING_STYLES:()=>"It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly",MISSING_VIEWPORT_DIMENSIONS:()=>"The Vue Flow parent container needs a width and a height to render the graph",NODE_INVALID:e=>`Node is invalid
214
+ `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===n.toLowerCase();r||o.add(e.toLowerCase());const a=i.every((l,s)=>o.has(l)&&Array.from(o.values())[s]===i[s]);return r&&o.delete(e.toLowerCase()),a}function VA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=RA(o.code,e);return Array.isArray(e)?e.some(i=>Jf(o[r],i,n,o.type==="keyup")):Jf(o[r],e,n,o.type==="keyup")}}function RA(e,n){return n.includes(e)?"code":"key"}function wr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??$A),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),rf(["blur","contextmenu"],s),af((...d)=>l(...d),d=>{var f,u;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=BA(d),(!i||i&&!p)&&es(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,h=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!h)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),af((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&es(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(d){return d===null?(s(),()=>!1):typeof d=="boolean"?(s(),r.value=d,()=>!1):Array.isArray(d)||typeof d=="string"?VA(d,a):d}return r}const Qf="vue-flow__node-desc",ep="vue-flow__edge-desc",DA="vue-flow__aria-live",tp=["Enter"," ","Escape"],Po={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Di(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Mi(e,n){const o=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),r=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(o*r)}function Li(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Zn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function np(e,n){return{x:Zn(e.x,n[0][0],n[1][0]),y:Zn(e.y,n[0][1],n[1][1])}}function op(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function wn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Jn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!wn(e)}function kr(e){return Jn(e)&&"computedPosition"in e}function Fi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function MA(e){return Fi(e.width)&&Fi(e.height)&&Fi(e.x)&&Fi(e.y)}function LA(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function rp(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function ip(e,n,o,r){const i=typeof e=="string"?e:e.id,a=new Set,l=r==="source"?"target":"source";for(const s of o)s[l]===i&&a.add(s[r]);return n.filter(s=>a.has(s.id))}function FA(...e){if(e.length===3){const[a,l,s]=e;return ip(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>wn(a)&&a.source===r).map(a=>o.find(l=>Jn(l)&&l.id===a.target))}function UA(...e){if(e.length===3){const[a,l,s]=e;return ip(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>wn(a)&&a.target===r).map(a=>o.find(l=>Jn(l)&&l.id===a.source))}function ap({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function KA(e,n){return n.some(o=>wn(o)&&o.source===e.source&&o.target===e.target&&(o.sourceHandle===e.sourceHandle||!o.sourceHandle&&!e.sourceHandle)&&(o.targetHandle===e.targetHandle||!o.targetHandle&&!e.targetHandle))}function Cr({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function Er({x:e,y:n},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(n-r)/i};return a?Ki(s,l):s}function jA(e,n){return{x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}}function lp({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function GA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function sp(e){let n={x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};for(let o=0;o<e.length;o++){const r=e[o];n=jA(n,lp({...r.computedPosition,...r.dimensions}))}return GA(n)}function cp(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Er(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:f=!1}=s,u=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||f)continue;const m=Mi(a,Di(s)),g=u===null||p===null,_=r&&m>0,h=(u??0)*(p??0);(g||_||m>=h||s.dragging)&&l.push(s)}return l}function dp(e,n){const o=new Set;if(typeof e=="string")o.add(e);else if(e.length>=1)for(const r of e)o.add(r.id);return n.filter(r=>o.has(r.source)||o.has(r.target))}function To(e,n){if(typeof e=="number")return Math.floor((n-n/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const o=Number.parseFloat(e);if(!Number.isNaN(o))return Math.floor(o)}if(typeof e=="string"&&e.endsWith("%")){const o=Number.parseFloat(e);if(!Number.isNaN(o))return Math.floor(n*o*.01)}return xr(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function qA(e,n,o){if(typeof e=="string"||typeof e=="number"){const r=To(e,o),i=To(e,n);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e=="object"){const r=To(e.top??e.y??0,o),i=To(e.bottom??e.y??0,o),a=To(e.left??e.x??0,n),l=To(e.right??e.x??0,n);return{top:r,right:l,bottom:i,left:a,x:a+l,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function zA(e,n,o,r,i,a){const{x:l,y:s}=Cr(e,{x:n,y:o,zoom:r}),{x:c,y:d}=Cr({x:e.x+e.width,y:e.y+e.height},{x:n,y:o,zoom:r}),f=i-c,u=a-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(f),bottom:Math.floor(u)}}function up(e,n,o,r,i,a=.1){const l=qA(a,n,o),s=(n-l.x)/e.width,c=(o-l.y)/e.height,d=Math.min(s,c),f=Zn(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=n/2-u*f,g=o/2-p*f,_=zA(e,m,g,f,n,o),h={left:Math.min(_.left-l.left,0),top:Math.min(_.top-l.top,0),right:Math.min(_.right-l.right,0),bottom:Math.min(_.bottom-l.bottom,0)};return{x:m-h.left+h.right,y:g-h.top+h.bottom,zoom:f}}function HA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function fp(e,n){if(!e.parentNode)return!1;const o=n.get(e.parentNode);return o?o.selected?!0:fp(o,n):!1}function Nr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function pp(e){const n=e.ctrlKey&&Ui()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*n}function mp(e,n,o){return e<n?Zn(Math.abs(e-n),1,n)/n:e>o?-Zn(Math.abs(e-o),1,n)/n:0}function gp(e,n,o=15,r=40){const i=mp(e.x,r,n.width-r)*o,a=mp(e.y,r,n.height-r)*o;return[i,a]}function ts(e,n){if(n){const o=e.position.x+e.dimensions.width-n.dimensions.width,r=e.position.y+e.dimensions.height-n.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof n.style=="function"?i={...n.style(n)}:n.style&&(i={...n.style}),i.width=i.width??`${n.dimensions.width}px`,i.height=i.height??`${n.dimensions.height}px`,o>0)if(typeof i.width=="string"){const a=Number(i.width.replace("px",""));i.width=`${a+o}px`}else i.width+=o;if(r>0)if(typeof i.height=="string"){const a=Number(i.height.replace("px",""));i.height=`${a+r}px`}else i.height+=r;if(e.position.x<0){const a=Math.abs(e.position.x);if(n.position.x=n.position.x-a,typeof i.width=="string"){const l=Number(i.width.replace("px",""));i.width=`${l+a}px`}else i.width+=a;e.position.x=0}if(e.position.y<0){const a=Math.abs(e.position.y);if(n.position.y=n.position.y-a,typeof i.height=="string"){const l=Number(i.height.replace("px",""));i.height=`${l+a}px`}else i.height+=a;e.position.y=0}n.dimensions.width=Number(i.width.toString().replace("px","")),n.dimensions.height=Number(i.height.toString().replace("px","")),typeof n.style=="function"?n.style=a=>{const l=n.style;return{...l(a),...i}}:n.style={...n.style,...i}}}}function hp(e,n){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")n.findIndex(c=>c.id===l.item.id)===-1&&n.push(l.item);else if(l.type==="remove"){const s=n.findIndex(c=>c.id===l.id);s!==-1&&n.splice(s,1)}const a=n.map(l=>l.id);for(const l of n)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if(kr(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&kr(c)&&ts(l,c)}break;case"dimensions":if(kr(l)&&(typeof s.dimensions<"u"&&(l.dimensions=s.dimensions),typeof s.updateStyle<"u"&&s.updateStyle&&(l.style={...l.style||{},width:`${(o=s.dimensions)==null?void 0:o.width}px`,height:`${(r=s.dimensions)==null?void 0:r.height}px`}),typeof s.resizing<"u"&&(l.resizing=s.resizing),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&kr(c)&&(!!c.dimensions.width&&!!c.dimensions.height?ts(l,c):t.nextTick(()=>{ts(l,c)}))}break}return n}function kn(e,n){return{id:e,type:"select",selected:n}}function yp(e){return{item:e,type:"add"}}function _p(e){return{id:e,type:"remove"}}function bp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function Cn(e,n=new Set,o=!1){const r=[];for(const[i,a]of e){const l=n.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(kn(a.id,l)))}return r}const wp=()=>{};function Se(e){const n=new Set;let o=wp,r=()=>!1;const i=()=>n.size>0||r(),a=p=>{o=p},l=()=>{o=wp},s=p=>{r=p},c=()=>{r=()=>!1},d=p=>{n.delete(p)};return{on:p=>{n.add(p);const m=()=>d(p);return ar(m),{off:m}},off:d,trigger:p=>{const m=[o];return i()?m.push(...n):e&&m.push(e),Promise.allSettled(m.map(g=>g(p)))},hasListeners:i,listeners:n,setEmitter:a,removeEmitter:l,setHasEmitListeners:s,removeHasEmitListeners:c}}function kp(e,n,o){let r=e;do{if(r&&r.matches(n))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function YA(e,n,o,r){var i,a;const l=new Map;for(const[s,c]of e)(c.selected||c.id===r)&&(!c.parentNode||!fp(c,e))&&(c.draggable||n&&typeof c.draggable>"u")&&e.get(s)&&l.set(s,{id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((i=c.computedPosition)==null?void 0:i.x)||0,y:o.y-((a=c.computedPosition)==null?void 0:a.y)||0},from:{x:c.computedPosition.x,y:c.computedPosition.y},extent:c.extent,parentNode:c.parentNode,dimensions:{...c.dimensions},expandParent:c.expandParent});return Array.from(l.values())}function ns({id:e,dragItems:n,findNode:o}){const r=[];for(const i of n){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function Cp(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function WA(e,n,o){const[r,i,a,l]=typeof e!="string"?Cp(e.padding):[0,0,0,0];return o&&typeof o.computedPosition.x<"u"&&typeof o.computedPosition.y<"u"&&typeof o.dimensions.width<"u"&&typeof o.dimensions.height<"u"?[[o.computedPosition.x+l,o.computedPosition.y+r],[o.computedPosition.x+o.dimensions.width-i,o.computedPosition.y+o.dimensions.height-a]]:!1}function XA(e,n,o,r){let i=e.extent||o;if((i==="parent"||!Array.isArray(i)&&(i==null?void 0:i.range)==="parent")&&!e.expandParent)if(e.parentNode&&r&&e.dimensions.width&&e.dimensions.height){const a=WA(i,e,r);a&&(i=a)}else n(new at(et.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=Cp(i.padding),d=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+d+c,i.range[0][1]+f+a],[i.range[1][0]+d-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function ZA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function os(e,n,o,r,i){const a=ZA(e.dimensions,XA(e,o,r,i)),l=np(n,a);return{position:{x:l.x-((i==null?void 0:i.computedPosition.x)||0),y:l.y-((i==null?void 0:i.computedPosition.y)||0)},computedPosition:l}}function Oo(e,n,o=ve.Left,r=!1){const i=((n==null?void 0:n.x)??0)+e.computedPosition.x,a=((n==null?void 0:n.y)??0)+e.computedPosition.y,{width:l,height:s}=n??tI(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case ve.Top:return{x:i+l/2,y:a};case ve.Right:return{x:i+l,y:a+s/2};case ve.Bottom:return{x:i+l/2,y:a+s};case ve.Left:return{x:i,y:a+s/2}}}function Ep(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function JA({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=lp({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),u=Math.max(0,Math.min(f.x2,d.x2)-Math.max(f.x,d.x)),p=Math.max(0,Math.min(f.y2,d.y2)-Math.max(f.y,d.y));return Math.ceil(u*p)>0}function QA(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var et=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(et||{});const Np={MISSING_STYLES:()=>"It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly",MISSING_VIEWPORT_DIMENSIONS:()=>"The Vue Flow parent container needs a width and a height to render the graph",NODE_INVALID:e=>`Node is invalid
215
215
  Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
216
216
  Node: ${e}`,NODE_MISSING_PARENT:(e,n)=>`Node is missing a parent
217
217
  Node: ${e}
@@ -231,4 +231,4 @@ Edge: ${e}
231
231
  Source: ${n}
232
232
  Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
233
233
  Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
234
- Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class at extends Error{constructor(n,...o){var r;super((r=kp[n])==null?void 0:r.call(kp,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function ns(e){return"clientX"in e}function YA(e){return"sourceEvent"in e}function Ht(e,n){const o=ns(e);let r,i;return o?(r=e.clientX,i=e.clientY):"touches"in e&&e.touches.length>0?(r=e.touches[0].clientX,i=e.touches[0].clientY):"changedTouches"in e&&e.changedTouches.length>0?(r=e.changedTouches[0].clientX,i=e.changedTouches[0].clientY):(r=0,i=0),{x:r-((n==null?void 0:n.left)??0),y:i-((n==null?void 0:n.top)??0)}}const Mi=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function WA(e){var n,o;return{width:((n=e.dimensions)==null?void 0:n.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function Li(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const XA=()=>!0;function os(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function ZA(e,n,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of n.values())Vi(i,Bi(a))>0&&r.push(a);return r}const JA=250;function QA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=ZA(e,o,n+JA);for(const d of c){const f=[...((i=d.handleBounds)==null?void 0:i.source)??[],...((a=d.handleBounds)==null?void 0:a.target)??[]];for(const u of f){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:p,y:m}=To(d,u,u.position,!0),g=Math.sqrt((p-e.x)**2+(m-e.y)**2);g>n||(g<s?(l=[{...u,x:p,y:m}],s=g):g===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function Cp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=XA},f,u,p){const m=a==="target",g=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:_,y}=Ht(e),h=l.elementFromPoint(_,y),k=h!=null&&h.classList.contains(`${s}-flow__handle`)?h:g,b={handleDomNode:k,isValid:!1,connection:null,toHandle:null};if(k){const E=Ep(void 0,k),N=k.getAttribute("data-nodeid"),C=k.getAttribute("data-handleid"),x=k.classList.contains("connectable"),I=k.classList.contains("connectableend");if(!N||!E)return b;const A={source:m?N:r,sourceHandle:m?C:i,target:m?r:N,targetHandle:m?i:C};b.connection=A;const v=x&&I&&(o===bn.Strict?m&&E==="source"||!m&&E==="target":N!==r||C!==i);b.isValid=v&&d(A,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(N)}),b.toHandle=n}return b}function Ep(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function eI(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function tI(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function nI(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===bn.Strict?(l=d.handleBounds)==null?void 0:l[n]:[...((s=d.handleBounds)==null?void 0:s.source)??[],...((c=d.handleBounds)==null?void 0:c.target)??[]],u=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return u&&a?{...u,...To(d,u,u.position,!0)}:u}const rs={[ve.Left]:ve.Right,[ve.Right]:ve.Left,[ve.Top]:ve.Bottom,[ve.Bottom]:ve.Top},oI=["production","prod"];function Fi(e,...n){Np()&&console.warn(`[Vue Flow]: ${e}`,...n)}function Np(){return!oI.includes(process.env.NODE_ENV||"")}function xp(e,n,o,r,i){const a=n.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...Ri(l)}}):null}function is(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function tt(e){return typeof t.unref(e)<"u"}function rI(e,n,o,r){if(!e||!e.source||!e.target)return o(new at(et.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return wn(e)?i=e:i={...e,id:ip(e)},i=op(i,void 0,r),MA(i,n)?!1:i}function iI(e,n,o,r,i){if(!n.source||!n.target)return i(new at(et.EDGE_INVALID,e.id)),!1;if(!o)return i(new at(et.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?ip(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function Sp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Jn(l)){o(new at(et.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=VA(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new at(et.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function vp(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function as(e,n,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;vp("source",c,f,e,i,l),vp("target",c,d,e,a,s)}}function Ap(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function ls(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=wn(d)?d:rI(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new at(et.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new at(et.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new at(et.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new at(et.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...op(f,m,a),sourceNode:u,targetNode:p})}return c}const Ip=Symbol("vueFlow"),Pp=Symbol("nodeId"),Tp=Symbol("nodeRef"),aI=Symbol("edgeId"),lI=Symbol("edgeRef"),Ui=Symbol("slots");function Op(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:g,nodesSelectionActive:_,selectNodesOnDrag:y,removeSelectedElements:h,addSelectedNodes:k,updateNodePositions:b,emits:E}=Re(),{onStart:N,onDrag:C,onStop:x,onClick:I,el:A,disabled:B,id:v,selectable:w,dragHandle:M}=e,S=t.shallowRef(!1);let F=[],O,j=null,X={x:void 0,y:void 0},L={x:0,y:0},U=null,P=!1,V=0,G=!1;const Z=dI(),K=({x:W,y:ae})=>{X={x:W,y:ae};let de=!1;if(F=F.map($=>{const T={x:W-$.distance.x,y:ae-$.distance.y},{computedPosition:R}=ts($,o.value?Li(T,r.value):T,E.error,l.value,$.parentNode?m($.parentNode):void 0);return de=de||$.position.x!==R.x||$.position.y!==R.y,$.position=R,$}),!!de&&(b(F,!0,!0),S.value=!0,U)){const[$,T]=es({id:v,dragItems:F,findNode:m});C({event:U,node:$,nodes:T})}},q=()=>{if(!j)return;const[W,ae]=pp(L,j,f.value);if(W!==0||ae!==0){const de={x:(X.x??0)-W/c.value.zoom,y:(X.y??0)-ae/c.value.zoom};p({x:W,y:ae})&&K(de)}V=requestAnimationFrame(q)},se=(W,ae)=>{P=!0;const de=m(v);!y.value&&!g.value&&de&&(de.selected||h()),de&&t.toValue(w)&&y.value&&is(de,g.value,k,h,_,!1,ae);const $=Z(W.sourceEvent);if(X=$,F=KA(a.value,u.value,$,m,v),F.length){const[T,R]=es({id:v,dragItems:F,findNode:m});N({event:W.sourceEvent,node:T,nodes:R})}},me=(W,ae)=>{var de;W.sourceEvent.type==="touchmove"&&W.sourceEvent.touches.length>1||(s.value===0&&se(W,ae),X=Z(W.sourceEvent),j=((de=n.value)==null?void 0:de.getBoundingClientRect())||null,L=Ht(W.sourceEvent,j))},ge=(W,ae)=>{const de=Z(W.sourceEvent);if(!G&&P&&d.value&&(G=!0,q()),!P){const $=de.xSnapped-(X.x??0),T=de.ySnapped-(X.y??0);Math.sqrt($*$+T*T)>s.value&&se(W,ae)}(X.x!==de.xSnapped||X.y!==de.ySnapped)&&F.length&&P&&(U=W.sourceEvent,L=Ht(W.sourceEvent,j),K(de))},ie=W=>{let ae=!1;if(!P&&!S.value&&!g.value){const de=W.sourceEvent,$=Z(de),T=$.xSnapped-(X.x??0),R=$.ySnapped-(X.y??0),D=Math.sqrt(T*T+R*R);D!==0&&D<=s.value&&(I==null||I(de),ae=!0)}if(F.length&&!ae){b(F,!1,!1);const[de,$]=es({id:v,dragItems:F,findNode:m});x({event:W.sourceEvent,node:de,nodes:$})}F=[],S.value=!1,G=!1,P=!1,X={x:void 0,y:void 0},cancelAnimationFrame(V)};return t.watch([()=>t.toValue(B),A],([W,ae],de,$)=>{if(ae){const T=Dt(ae);W||(O=BS().on("start",R=>me(R,ae)).on("drag",R=>ge(R,ae)).on("end",R=>ie(R)).filter(R=>{const D=R.target,re=t.toValue(M);return!R.button&&(!i.value||!_p(D,`.${i.value}`,ae)&&(!re||_p(D,re,ae)))}),T.call(O)),$(()=>{T.on(".drag",null),O&&(O.on("start",null),O.on("drag",null),O.on("end",null))})}}),S}function sI(){return{doubleClick:Se(),click:Se(),mouseEnter:Se(),mouseMove:Se(),mouseLeave:Se(),contextMenu:Se(),updateStart:Se(),update:Se(),updateEnd:Se()}}function cI(e,n){const o=sI();return o.doubleClick.on(r=>{var i,a;n.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;n.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;n.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;n.edgeUpdateEnd(r),(a=(i=e.events)==null?void 0:i.updateEnd)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function dI(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Re();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=YA(i)?i.sourceEvent:i,{x:c,y:d}=Ht(s,l),f=wr({x:c,y:d},e.value),{x:u,y:p}=o.value?Li(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Ki(){return!0}function $p({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:g,autoPanSpeed:_,findNode:y,panBy:h,startConnection:k,updateConnection:b,endConnection:E,emits:N,viewport:C,edges:x,nodes:I,isValidConnection:A,nodeLookup:B}=Re();let v=null,w=!1,M=null;function S(O){var j;const X=t.toValue(o)==="target",L=ns(O),U=np(O.target);if(L&&O.button===0||!L){let P=function(le){$=Ht(le,W),K=QA(wr($,C.value,!1,[1,1]),f.value,B.value,D),T||(R(),T=!0);const H=Cp(le,{handle:K,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:X?"target":"source",isValidConnection:Z,doc:U,lib:"vue",flowId:s,nodeLookup:B.value},x.value,I.value,y);M=H.handleDomNode,v=H.connection,w=tI(!!K,H.isValid);const Y={...z,isValid:w,to:H.toHandle&&w?Jl({x:H.toHandle.x,y:H.toHandle.y},C.value):$,toHandle:H.toHandle,toPosition:w&&H.toHandle?H.toHandle.position:rs[D.position],toNode:H.toHandle?B.value.get(H.toHandle.nodeId):null};if(!(w&&K&&(z!=null&&z.toHandle)&&Y.toHandle&&z.toHandle.type===Y.toHandle.type&&z.toHandle.nodeId===Y.toHandle.nodeId&&z.toHandle.id===Y.toHandle.id&&z.to.x===Y.to.x&&z.to.y===Y.to.y)){if(b(K&&w?Jl({x:K.x,y:K.y},C.value):$,H.toHandle,eI(!!K,w)),z=Y,!K&&!w&&!M)return os(de);v&&v.source!==v.target&&M&&(os(de),de=M,M.classList.add("connecting","vue-flow__handle-connecting"),M.classList.toggle("valid",!!w),M.classList.toggle("vue-flow__handle-valid",!!w))}},V=function(le){(K||M)&&v&&w&&(a?a(le,v):N.connect(v)),N.connectEnd(le),i&&(l==null||l(le)),os(de),cancelAnimationFrame(q),E(le),T=!1,w=!1,v=null,M=null,U.removeEventListener("mousemove",P),U.removeEventListener("mouseup",V),U.removeEventListener("touchmove",P),U.removeEventListener("touchend",V)};const G=y(t.toValue(n));let Z=t.toValue(r)||A.value||Ki;!Z&&G&&(Z=(X?G.isValidSourcePos:G.isValidTargetPos)||Ki);let K,q=0;const{x:se,y:me}=Ht(O),ge=U==null?void 0:U.elementFromPoint(se,me),ie=Ep(t.toValue(i),ge),W=(j=c.value)==null?void 0:j.getBoundingClientRect();if(!W||!ie)return;const ae=nI(t.toValue(n),ie,t.toValue(e),B.value,d.value);if(!ae)return;let de,$=Ht(O,W),T=!1;const R=()=>{if(!g.value)return;const[le,H]=pp($,W,_.value);h({x:le,y:H}),q=requestAnimationFrame(R)},D={...ae,nodeId:t.toValue(n),type:ie,position:ae.position},re=B.value.get(t.toValue(n)),J={inProgress:!0,isValid:null,from:To(re,D,ve.Left,!0),fromHandle:D,fromPosition:D.position,fromNode:re,to:$,toHandle:null,toPosition:rs[D.position],toNode:null};k({nodeId:t.toValue(n),id:t.toValue(e),type:ie,position:(ge==null?void 0:ge.getAttribute("data-handlepos"))||ve.Top,...$},{x:se-W.left,y:me-W.top}),N.connectStart({event:O,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:ie});let z=J;U.addEventListener("mousemove",P),U.addEventListener("mouseup",V),U.addEventListener("touchmove",P),U.addEventListener("touchend",V)}}function F(O){var j,X;if(!u.value)return;const L=t.toValue(o)==="target";if(!p.value){N.clickConnectStart({event:O,nodeId:t.toValue(n),handleId:t.toValue(e)}),k({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ve.Top,...Ht(O)},void 0,!0);return}let U=t.toValue(r)||A.value||Ki;const P=y(t.toValue(n));if(!U&&P&&(U=(L?P.isValidSourcePos:P.isValidTargetPos)||Ki),P&&(typeof P.connectable>"u"?m.value:P.connectable)===!1)return;const V=np(O.target),G=Cp(O,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ve.Top,...Ht(O)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:U,doc:V,lib:"vue",flowId:s,nodeLookup:B.value},x.value,I.value,y),Z=((j=G.connection)==null?void 0:j.source)===((X=G.connection)==null?void 0:X.target);G.isValid&&G.connection&&!Z&&N.connect(G.connection),N.clickConnectEnd(O),E(O,!0)}return{handlePointerDown:S,handleClick:F}}function uI(){return t.inject(Pp,"")}function Bp(e){const n=e??uI()??"",o=t.inject(Tp,t.ref(null)),{findNode:r,edges:i,emits:a}=Re(),l=r(n);return l||a.error(new at(et.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>cp([l],i.value))}}function fI(){return{doubleClick:Se(),click:Se(),mouseEnter:Se(),mouseMove:Se(),mouseLeave:Se(),contextMenu:Se(),dragStart:Se(),drag:Se(),dragStop:Se()}}function pI(e,n){const o=fI();return o.doubleClick.on(r=>{var i,a;n.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;n.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;n.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;n.nodeDragStop(r),(a=(i=e.events)==null?void 0:i.dragStop)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function Vp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Re();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,g=c.y*u*p,_=[];for(const y of e.value)if(y.draggable||l&&typeof y.draggable>"u"){const h={x:y.computedPosition.x+m,y:y.computedPosition.y+g},{computedPosition:k}=ts(y,h,s.error,n.value,y.parentNode?r(y.parentNode):void 0);_.push({id:y.id,position:k,from:y.position,distance:{x:c.x,y:c.y},dimensions:y.dimensions})}o(_,!0,!1)}}const ss=.1,mI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function En(){return Fi("Viewport not initialized yet."),Promise.resolve(!1)}const gI={zoomIn:En,zoomOut:En,zoomTo:En,fitView:En,setCenter:En,fitBounds:En,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:En,setTransform:En,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function hI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?dr:Ni).scaleBy(cs(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:d,y:f}=tp({x:-r,y:-i},e.translateExtent),u=Io.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?dr:Ni).transform(cs(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?dr:Ni).scaleTo(cs(e.d3Selection,a==null?void 0:a.duration,a==null?void 0:a.ease,()=>{l(!0)}),i):l(!1)}),setViewport:(i,a)=>o(i.x,i.y,i.zoom,a),setTransform:(i,a)=>o(i.x,i.y,i.zoom,a),getViewport:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),getTransform:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),fitView:(i={padding:ss,includeHiddenNodes:!1,duration:0})=>{var a,l;const s=[];for(const p of e.nodes)p.dimensions.width&&p.dimensions.height&&((i==null?void 0:i.includeHiddenNodes)||!p.hidden)&&(!((a=i.nodes)!=null&&a.length)||(l=i.nodes)!=null&&l.length&&i.nodes.includes(p.id))&&s.push(p);if(!s.length)return Promise.resolve(!1);const c=lp(s),{x:d,y:f,zoom:u}=dp(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??ss,i.offset);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:ss})=>{const{x:l,y:s,zoom:c}=dp(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>wr(i,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x-a,y:i.y-l};return wr(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Jl(s,e.viewport)}return{x:0,y:0}}}:gI)}function cs(e,n=0,o=mI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function yI(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let _,y,h=!!(o.nodes.value.length||o.edges.value.length);_=No([e.modelValue,()=>{var k,b;return(b=(k=e.modelValue)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(y==null||y.pause(),o.setElements(k),!y&&!h&&k.length?h=!0:y==null||y.resume())}),y=No([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([k,b])=>{var E;(E=e.modelValue)!=null&&E.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...k,...b],t.nextTick(()=>{_==null||_.resume()}))},{immediate:h}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},a=()=>{r.run(()=>{let _,y,h=!!o.nodes.value.length;_=No([e.nodes,()=>{var k,b;return(b=(k=e.nodes)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(y==null||y.pause(),o.setNodes(k),!y&&!h&&k.length?h=!0:y==null||y.resume())}),y=No([o.nodes,()=>o.nodes.value.length],([k])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...k],t.nextTick(()=>{_==null||_.resume()}))},{immediate:h}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},l=()=>{r.run(()=>{let _,y,h=!!o.edges.value.length;_=No([e.edges,()=>{var k,b;return(b=(k=e.edges)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(y==null||y.pause(),o.setEdges(k),!y&&!h&&k.length?h=!0:y==null||y.resume())}),y=No([o.edges,()=>o.edges.value.length],([k])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...k],t.nextTick(()=>{_==null||_.resume()}))},{immediate:h}),t.onScopeDispose(()=>{_==null||_.stop(),y==null||y.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&tt(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&tt(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&tt(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&tt(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{tt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async y=>{let h=y;typeof n.autoConnect=="function"&&(h=await n.autoConnect(y)),h!==!1&&o.addEdges([h])};t.watch(()=>n.autoConnect,()=>{tt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(y,h,k)=>{y?o.onConnect(_):o.hooks.value.connect.off(_),k(()=>{o.hooks.value.connect.off(_)})},{immediate:!0})})},m=()=>{const _=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const y of Object.keys(n)){const h=y;if(!_.includes(h)){const k=t.toRef(()=>n[h]),b=o[h];t.isRef(b)&&r.run(()=>{t.watch(k,E=>{tt(E)&&(b.value=E)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function _I(){return{edgesChange:Se(),nodesChange:Se(),nodeDoubleClick:Se(),nodeClick:Se(),nodeMouseEnter:Se(),nodeMouseMove:Se(),nodeMouseLeave:Se(),nodeContextMenu:Se(),nodeDragStart:Se(),nodeDrag:Se(),nodeDragStop:Se(),nodesInitialized:Se(),miniMapNodeClick:Se(),miniMapNodeDoubleClick:Se(),miniMapNodeMouseEnter:Se(),miniMapNodeMouseMove:Se(),miniMapNodeMouseLeave:Se(),connect:Se(),connectStart:Se(),connectEnd:Se(),clickConnectStart:Se(),clickConnectEnd:Se(),paneReady:Se(),init:Se(),move:Se(),moveStart:Se(),moveEnd:Se(),selectionDragStart:Se(),selectionDrag:Se(),selectionDragStop:Se(),selectionContextMenu:Se(),selectionStart:Se(),selectionEnd:Se(),viewportChangeStart:Se(),viewportChange:Se(),viewportChangeEnd:Se(),paneScroll:Se(),paneClick:Se(),paneContextMenu:Se(),paneMouseEnter:Se(),paneMouseMove:Se(),paneMouseLeave:Se(),edgeContextMenu:Se(),edgeMouseEnter:Se(),edgeMouseMove:Se(),edgeMouseLeave:Se(),edgeDoubleClick:Se(),edgeClick:Se(),edgeUpdateStart:Se(),edgeUpdate:Se(),edgeUpdateEnd:Se(),updateNodeInternals:Se(),error:Se(e=>Fi(e.message))}}function bI(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),fi(()=>{r.off(i)})}})}function Rp(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],nodeExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],selectionMode:Xl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:yr.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:"#b1b1b7",connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:Xn.Bezier,style:{}},connectionMode:bn.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:Number.NaN,y:Number.NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:"Shift",multiSelectionKeyCode:Mi()?"Meta":"Control",zoomActivationKeyCode:Mi()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:_I(),applyDefault:!0,autoConnect:!1,fitViewOnInit:!1,fitViewOnInitDone:!1,noDragClassName:"nodrag",noWheelClassName:"nowheel",noPanClassName:"nopan",defaultEdgeOptions:void 0,elevateEdgesOnSelect:!1,elevateNodesOnSelect:!0,autoPanOnNodeDrag:!0,autoPanOnConnect:!0,autoPanSpeed:15,disableKeyboardA11y:!1,ariaLiveMessage:""}}const wI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function kI(e,n,o){const r=hI(e),i=$=>{const T=$??[];e.hooks.updateNodeInternals.trigger(T)},a=$=>DA($,e.nodes,e.edges),l=$=>RA($,e.nodes,e.edges),s=$=>cp($,e.edges),c=({id:$,type:T,nodeId:R})=>{var D;return Array.from(((D=e.connectionLookup.get(`${R}-${T}-${$??null}`))==null?void 0:D.values())??[])},d=$=>{if($)return n.value.get($)},f=$=>{if($)return o.value.get($)},u=($,T,R)=>{var D,re;const ee=[];for(const J of $){const z={id:J.id,type:"position",dragging:R,from:J.from};if(T&&(z.position=J.position,J.parentNode)){const le=d(J.parentNode);z.position={x:z.position.x-(((D=le==null?void 0:le.computedPosition)==null?void 0:D.x)??0),y:z.position.y-(((re=le==null?void 0:le.computedPosition)==null?void 0:re.y)??0)}}ee.push(z)}ee!=null&&ee.length&&e.hooks.nodesChange.trigger(ee)},p=$=>{if(!e.vueFlowRef)return;const T=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!T)return;const R=window.getComputedStyle(T),{m22:D}=new window.DOMMatrixReadOnly(R.transform),re=[];for(const ee of $){const J=ee,z=d(J.id);if(z){const le=Ri(J.nodeElement);if(!!(le.width&&le.height&&(z.dimensions.width!==le.width||z.dimensions.height!==le.height||J.forceUpdate))){const Y=J.nodeElement.getBoundingClientRect();z.dimensions=le,z.handleBounds.source=xp("source",J.nodeElement,Y,D,z.id),z.handleBounds.target=xp("target",J.nodeElement,Y,D,z.id),re.push({id:z.id,type:"dimensions",dimensions:le})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),re.length&&e.hooks.nodesChange.trigger(re)},m=($,T)=>{const R=new Set,D=new Set;for(const J of $)Jn(J)?R.add(J.id):wn(J)&&D.add(J.id);const re=Cn(n.value,R,!0),ee=Cn(o.value,D);if(e.multiSelectionActive){for(const J of R)re.push(kn(J,T));for(const J of D)ee.push(kn(J,T))}re.length&&e.hooks.nodesChange.trigger(re),ee.length&&e.hooks.edgesChange.trigger(ee)},g=$=>{if(e.multiSelectionActive){const T=$.map(R=>kn(R.id,!0));e.hooks.nodesChange.trigger(T);return}e.hooks.nodesChange.trigger(Cn(n.value,new Set($.map(T=>T.id)),!0)),e.hooks.edgesChange.trigger(Cn(o.value))},_=$=>{if(e.multiSelectionActive){const T=$.map(R=>kn(R.id,!0));e.hooks.edgesChange.trigger(T);return}e.hooks.edgesChange.trigger(Cn(o.value,new Set($.map(T=>T.id)))),e.hooks.nodesChange.trigger(Cn(n.value,new Set,!0))},y=$=>{m($,!0)},h=$=>{const R=($||e.nodes).map(D=>(D.selected=!1,kn(D.id,!1)));e.hooks.nodesChange.trigger(R)},k=$=>{const R=($||e.edges).map(D=>(D.selected=!1,kn(D.id,!1)));e.hooks.edgesChange.trigger(R)},b=$=>{if(!$||!$.length)return m([],!1);const T=$.reduce((R,D)=>{const re=kn(D.id,!1);return Jn(D)?R.nodes.push(re):R.edges.push(re),R},{nodes:[],edges:[]});T.nodes.length&&e.hooks.nodesChange.trigger(T.nodes),T.edges.length&&e.hooks.edgesChange.trigger(T.edges)},E=$=>{var T;(T=e.d3Zoom)==null||T.scaleExtent([$,e.maxZoom]),e.minZoom=$},N=$=>{var T;(T=e.d3Zoom)==null||T.scaleExtent([e.minZoom,$]),e.maxZoom=$},C=$=>{var T;(T=e.d3Zoom)==null||T.translateExtent($),e.translateExtent=$},x=$=>{e.nodeExtent=$,i()},I=$=>{var T;(T=e.d3Zoom)==null||T.clickDistance($)},A=$=>{e.nodesDraggable=$,e.nodesConnectable=$,e.elementsSelectable=$},B=$=>{const T=$ instanceof Function?$(e.nodes):$;!e.initialized&&!T.length||(e.nodes=Sp(T,d,e.hooks.error.trigger))},v=$=>{const T=$ instanceof Function?$(e.edges):$;if(!e.initialized&&!T.length)return;const R=ls(T,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);as(e.connectionLookup,o.value,R),e.edges=R},w=$=>{const T=$ instanceof Function?$([...e.nodes,...e.edges]):$;!e.initialized&&!T.length||(B(T.filter(Jn)),v(T.filter(wn)))},M=$=>{let T=$ instanceof Function?$(e.nodes):$;T=Array.isArray(T)?T:[T];const R=Sp(T,d,e.hooks.error.trigger),D=[];for(const re of R)D.push(gp(re));D.length&&e.hooks.nodesChange.trigger(D)},S=$=>{let T=$ instanceof Function?$(e.edges):$;T=Array.isArray(T)?T:[T];const R=ls(T,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),D=[];for(const re of R)D.push(gp(re));D.length&&e.hooks.edgesChange.trigger(D)},F=($,T=!0,R=!1)=>{const D=$ instanceof Function?$(e.nodes):$,re=Array.isArray(D)?D:[D],ee=[],J=[];function z(H){const Y=s(H);for(const te of Y)(!tt(te.deletable)||te.deletable)&&J.push(yp(te.id,te.source,te.target,te.sourceHandle,te.targetHandle))}function le(H){const Y=[];for(const te of e.nodes)te.parentNode===H&&Y.push(te);if(Y.length){for(const te of Y)ee.push(hp(te.id));T&&z(Y);for(const te of Y)le(te.id)}}for(const H of re){const Y=typeof H=="string"?d(H):H;Y&&(tt(Y.deletable)&&!Y.deletable||(ee.push(hp(Y.id)),T&&z([Y]),R&&le(Y.id)))}J.length&&e.hooks.edgesChange.trigger(J),ee.length&&e.hooks.nodesChange.trigger(ee)},O=$=>{const T=$ instanceof Function?$(e.edges):$,R=Array.isArray(T)?T:[T],D=[];for(const re of R){const ee=typeof re=="string"?f(re):re;ee&&(tt(ee.deletable)&&!ee.deletable||D.push(yp(typeof re=="string"?re:re.id,ee.source,ee.target,ee.sourceHandle,ee.targetHandle)))}e.hooks.edgesChange.trigger(D)},j=($,T,R=!0)=>{const D=f($.id);if(!D)return!1;const re=e.edges.indexOf(D),ee=iI($,T,D,R,e.hooks.error.trigger);if(ee){const[J]=ls([ee],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((z,le)=>le===re?J:z),as(e.connectionLookup,o.value,[J]),J}return!1},X=($,T,R={replace:!1})=>{const D=f($);if(!D)return;const re=typeof T=="function"?T(D):T;D.data=R.replace?re:{...D.data,...re}},L=$=>mp($,e.nodes),U=$=>{const T=mp($,e.edges);return as(e.connectionLookup,o.value,T),T},P=($,T,R={replace:!1})=>{const D=d($);if(!D)return;const re=typeof T=="function"?T(D):T;R.replace?e.nodes.splice(e.nodes.indexOf(D),1,re):Object.assign(D,re)},V=($,T,R={replace:!1})=>{const D=d($);if(!D)return;const re=typeof T=="function"?T(D):T;D.data=R.replace?re:{...D.data,...re}},G=($,T,R=!1)=>{R?e.connectionClickStartHandle=$:e.connectionStartHandle=$,e.connectionEndHandle=null,e.connectionStatus=null,T&&(e.connectionPosition=T)},Z=($,T=null,R=null)=>{e.connectionStartHandle&&(e.connectionPosition=$,e.connectionEndHandle=T,e.connectionStatus=R)},K=($,T)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,T?e.connectionClickStartHandle=null:e.connectionStartHandle=null},q=$=>{const T=BA($),R=T?null:br($)?$:d($.id);return!T&&!R?[null,null,T]:[T?$:Bi(R),R,T]},se=($,T=!0,R=e.nodes)=>{const[D,re,ee]=q($);if(!D)return[];const J=[];for(const z of R||e.nodes){if(!ee&&(z.id===re.id||!z.computedPosition))continue;const le=Bi(z),H=Vi(le,D);(T&&H>0||H>=Number(D.width)*Number(D.height))&&J.push(z)}return J},me=($,T,R=!0)=>{const[D]=q($);if(!D)return!1;const re=Vi(D,T);return R&&re>0||re>=Number(D.width)*Number(D.height)},ge=$=>{const{viewport:T,dimensions:R,d3Zoom:D,d3Selection:re,translateExtent:ee}=e;if(!D||!re||!$.x&&!$.y)return!1;const J=Io.translate(T.x+$.x,T.y+$.y).scale(T.zoom),z=[[0,0],[R.width,R.height]],le=D.constrain()(J,z,ee),H=e.viewport.x!==le.x||e.viewport.y!==le.y||e.viewport.zoom!==le.k;return D.transform(re,le),H},ie=$=>{const T=$ instanceof Function?$(e):$,R=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];tt(T.defaultEdgeOptions)&&(e.defaultEdgeOptions=T.defaultEdgeOptions);const D=T.modelValue||T.nodes||T.edges?[]:void 0;D&&(T.modelValue&&D.push(...T.modelValue),T.nodes&&D.push(...T.nodes),T.edges&&D.push(...T.edges),w(D));const re=()=>{tt(T.maxZoom)&&N(T.maxZoom),tt(T.minZoom)&&E(T.minZoom),tt(T.translateExtent)&&C(T.translateExtent)};for(const ee of Object.keys(T)){const J=ee,z=T[J];![...wI,...R].includes(J)&&tt(z)&&(e[J]=z)}Il(()=>e.d3Zoom).not.toBeNull().then(re),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:w,setNodes:B,setEdges:v,addNodes:M,addEdges:S,removeNodes:F,removeEdges:O,findNode:d,findEdge:f,updateEdge:j,updateEdgeData:X,updateNode:P,updateNodeData:V,applyEdgeChanges:U,applyNodeChanges:L,addSelectedElements:y,addSelectedNodes:g,addSelectedEdges:_,setMinZoom:E,setMaxZoom:N,setTranslateExtent:C,setNodeExtent:x,setPaneClickDistance:I,removeSelectedElements:b,removeSelectedNodes:h,removeSelectedEdges:k,startConnection:G,updateConnection:Z,endConnection:K,setInteractive:A,setState:ie,getIntersectingNodes:se,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:me,panBy:ge,fitView:$=>r.value.fitView($),zoomIn:$=>r.value.zoomIn($),zoomOut:$=>r.value.zoomOut($),zoomTo:($,T)=>r.value.zoomTo($,T),setViewport:($,T)=>r.value.setViewport($,T),setTransform:($,T)=>r.value.setTransform($,T),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:($,T,R)=>r.value.setCenter($,T,R),fitBounds:($,T)=>r.value.fitBounds($,T),project:$=>r.value.project($),screenToFlowCoordinate:$=>r.value.screenToFlowCoordinate($),flowToScreenCoordinate:$=>r.value.flowToScreenCoordinate($),toObject:()=>{const $=[],T=[];for(const R of e.nodes){const{computedPosition:D,handleBounds:re,selected:ee,dimensions:J,isParent:z,resizing:le,dragging:H,events:Y,...te}=R;$.push(te)}for(const R of e.edges){const{selected:D,sourceNode:re,targetNode:ee,events:J,...z}=R;T.push(z)}return JSON.parse(JSON.stringify({nodes:$,edges:T,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:$=>new Promise(T=>{const{nodes:R,edges:D,position:re,zoom:ee,viewport:J}=$;if(R&&B(R),D&&v(D),J!=null&&J.x&&(J!=null&&J.y)||re){const z=(J==null?void 0:J.x)||re[0],le=(J==null?void 0:J.y)||re[1],H=(J==null?void 0:J.zoom)||ee||e.viewport.zoom;return Il(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:z,y:le,zoom:H}).then(()=>{T(!0)})})}else T(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const $=Rp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const T=Io.translate($.defaultViewport.x??0,$.defaultViewport.y??0).scale(Zn($.defaultViewport.zoom??1,$.minZoom,$.maxZoom)),R=e.viewportRef.getBoundingClientRect(),D=[[0,0],[R.width,R.height]],re=e.d3Zoom.constrain()(T,D,$.translateExtent);e.d3Zoom.transform(e.d3Selection,re)}ie($)},$destroy:()=>{}}}const CI=["data-id","data-handleid","data-nodeid","data-handlepos"],EI={name:"Handle",compatConfig:{MODE:3}},Yt=t.defineComponent({...EI,props:{id:{default:null},type:{},position:{default:()=>ve.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Re(),{id:m,node:g,nodeEl:_,connectedEdges:y}=Bp(),h=t.ref(),k=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),E=t.toRef(()=>{var v,w,M,S,F,O;return((v=l.value)==null?void 0:v.nodeId)===m&&((w=l.value)==null?void 0:w.id)===e.id&&((M=l.value)==null?void 0:M.type)===r.value||((S=c.value)==null?void 0:S.nodeId)===m&&((F=c.value)==null?void 0:F.id)===e.id&&((O=c.value)==null?void 0:O.type)===r.value}),N=t.toRef(()=>{var v,w,M;return((v=s.value)==null?void 0:v.nodeId)===m&&((w=s.value)==null?void 0:w.id)===e.id&&((M=s.value)==null?void 0:M.type)===r.value}),{handlePointerDown:C,handleClick:x}=$p({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),I=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!y.value.some(v=>{const w=v[`${r.value}Handle`];return v[r.value]!==m?!1:w?w===e.id:!0}):typeof e.connectable=="number"?y.value.filter(v=>{const w=v[`${r.value}Handle`];return v[r.value]!==m?!1:w?w===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(g,y.value):tt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var v;if(!g.dimensions.width||!g.dimensions.height)return;const w=(v=g.handleBounds[r.value])==null?void 0:v.find(L=>L.id===e.id);if(!d.value||w)return;const M=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!h.value||!M||!e.id)return;const S=_.value.getBoundingClientRect(),F=h.value.getBoundingClientRect(),O=window.getComputedStyle(M),{m22:j}=new window.DOMMatrixReadOnly(O.transform),X={id:e.id,position:e.position,x:(F.left-S.left)/j,y:(F.top-S.top)/j,type:r.value,nodeId:m,...Ri(h.value)};g.handleBounds[r.value]=[...g.handleBounds[r.value]??[],X]});function A(v){const w=ns(v);I.value&&k.value&&(w&&v.button===0||!w)&&C(v)}function B(v){!m||!s.value&&!k.value||I.value&&x(v)}return n({handleClick:x,handlePointerDown:C,onClick:B,onPointerDown:A}),(v,w)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:h,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":v.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${v.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:I.value,connecting:N.value,connectablestart:k.value,connectableend:b.value,connectionindicator:I.value&&(k.value&&!E.value||b.value&&E.value)}]]),onMousedown:A,onTouchstartPassive:A,onClick:B},[t.renderSlot(v.$slots,"default",{id:v.id})],42,CI))}}),ji=function({sourcePosition:e=ve.Bottom,targetPosition:n=ve.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Yt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Yt,{type:"source",position:e,connectable:r,isValidConnection:a})]};ji.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],ji.inheritAttrs=!1,ji.compatConfig={MODE:3};const NI=ji,Gi=function({targetPosition:e=ve.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Yt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Gi.props=["targetPosition","label","isValidTargetPos","connectable","data"],Gi.inheritAttrs=!1,Gi.compatConfig={MODE:3};const xI=Gi,qi=function({sourcePosition:e=ve.Bottom,label:n,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??n;return[typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a]),t.h(Yt,{type:"source",position:e,connectable:o,isValidConnection:r})]};qi.props=["sourcePosition","label","isValidSourcePos","connectable","data"],qi.inheritAttrs=!1,qi.compatConfig={MODE:3};const SI=qi,vI=["transform"],AI=["width","height","x","y","rx","ry"],II=["y"],PI={name:"EdgeText",compatConfig:{MODE:3}},TI=t.defineComponent({...PI,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const n=t.ref({x:0,y:0,width:0,height:0}),o=t.ref(null),r=t.computed(()=>`translate(${e.x-n.value.width/2} ${e.y-n.value.height/2})`);t.onMounted(i),t.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==n.value.width||a.height!==n.value.height)&&(n.value=a)}return(a,l)=>(t.openBlock(),t.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(t.openBlock(),t.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${n.value.width+2*a.labelBgPadding[0]}px`,height:`${n.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:t.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,AI)):t.createCommentVNode("",!0),t.createElementVNode("text",t.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:n.value.height/2,dy:"0.3em",style:a.labelStyle}),[t.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.label),{key:0})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.label),1)],64))])],16,II)],8,vI))}}),OI=["id","d","marker-end","marker-start"],$I=["d","stroke-width"],BI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},zi=t.defineComponent({...BI,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:n}){const o=t.ref(null),r=t.ref(null),i=t.ref(null),a=t.useAttrs();return n({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("path",t.mergeProps(t.unref(a),{id:l.id,ref_key:"pathEl",ref:o,d:l.path,class:"vue-flow__edge-path","marker-end":l.markerEnd,"marker-start":l.markerStart}),null,16,OI),l.interactionWidth?(t.openBlock(),t.createElementBlock("path",{key:0,ref_key:"interactionEl",ref:r,fill:"none",d:l.path,"stroke-width":l.interactionWidth,"stroke-opacity":0,class:"vue-flow__edge-interaction"},null,8,$I)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(TI,{key:1,ref_key:"labelEl",ref:i,x:l.labelX,y:l.labelY,label:l.label,"label-show-bg":l.labelShowBg,"label-bg-style":l.labelBgStyle,"label-bg-padding":l.labelBgPadding,"label-bg-border-radius":l.labelBgBorderRadius,"label-style":l.labelStyle},null,8,["x","y","label","label-show-bg","label-bg-style","label-bg-padding","label-bg-border-radius","label-style"])):t.createCommentVNode("",!0)],64))}});function Dp({sourceX:e,sourceY:n,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-n)/2,s=r<n?r+l:r-l;return[a,s,i,l]}function Mp({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-n);return[c,d,f,u]}function Hi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Lp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ve.Left:l=n-Hi(n-r,a),s=o;break;case ve.Right:l=n+Hi(r-n,a),s=o;break;case ve.Top:l=n,s=o-Hi(o-i,a);break;case ve.Bottom:l=n,s=o+Hi(i-o,a);break}return[l,s]}function Fp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ve.Bottom,targetX:i,targetY:a,targetPosition:l=ve.Top,curvature:s=.25}=e,[c,d]=Lp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Lp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,g,_]=Mp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,g,_]}function Up({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ve.Left:case ve.Right:a=.5*(n+r),l=o;break;case ve.Top:case ve.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function Kp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ve.Bottom,targetX:i,targetY:a,targetPosition:l=ve.Top}=e,[s,c]=Up({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Up({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,g]=Mp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,g]}const jp={[ve.Left]:{x:-1,y:0},[ve.Right]:{x:1,y:0},[ve.Top]:{x:0,y:-1},[ve.Bottom]:{x:0,y:1}};function VI({source:e,sourcePosition:n=ve.Bottom,target:o}){return n===ve.Left||n===ve.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Gp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function RI({source:e,sourcePosition:n=ve.Bottom,target:o,targetPosition:r=ve.Top,center:i,offset:a}){const l=jp[n],s=jp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},d={x:o.x+s.x*a,y:o.y+s.y*a},f=VI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,g,_;const y={x:0,y:0},h={x:0,y:0},[k,b,E,N]=Dp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){g=i.x??k,_=i.y??b;const x=[{x:g,y:c.y},{x:g,y:d.y}],I=[{x:c.x,y:_},{x:d.x,y:_}];l[u]===p?m=u==="x"?x:I:m=u==="x"?I:x}else{const x=[{x:c.x,y:d.y}],I=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?I:x:m=l.y===p?x:I,n===r){const M=Math.abs(e[u]-o[u]);if(M<=a){const S=Math.min(a-1,a-M);l[u]===p?y[u]=(c[u]>e[u]?-1:1)*S:h[u]=(d[u]>o[u]?-1:1)*S}}if(n!==r){const M=u==="x"?"y":"x",S=l[u]===s[M],F=c[M]>d[M],O=c[M]<d[M];(l[u]===1&&(!S&&F||S&&O)||l[u]!==1&&(!S&&O||S&&F))&&(m=u==="x"?x:I)}const A={x:c.x+y.x,y:c.y+y.y},B={x:d.x+h.x,y:d.y+h.y},v=Math.max(Math.abs(A.x-m[0].x),Math.abs(B.x-m[0].x)),w=Math.max(Math.abs(A.y-m[0].y),Math.abs(B.y-m[0].y));v>=w?(g=(A.x+B.x)/2,_=m[0].y):(g=m[0].x,_=(A.y+B.y)/2)}return[[e,{x:c.x+y.x,y:c.y+y.y},...m,{x:d.x+h.x,y:d.y+h.y},o],g,_,E,N]}function DI(e,n,o,r){const i=Math.min(Gp(e,n)/2,Gp(n,o)/2,r),{x:a,y:l}=n;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const d=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*d},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function ds(e){const{sourceX:n,sourceY:o,sourcePosition:r=ve.Bottom,targetX:i,targetY:a,targetPosition:l=ve.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,g,_]=RI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((h,k,b)=>{let E;return b>0&&b<u.length-1?E=DI(u[b-1],k,u[b+1],s):E=`${b===0?"M":"L"}${k.x} ${k.y}`,h+=E,h},""),p,m,g,_]}function MI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Dp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const LI=t.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=MI(e);return t.h(zi,{path:o,labelX:r,labelY:i,...n,...e})}}}),qp=t.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=ds({...e,sourcePosition:e.sourcePosition??ve.Bottom,targetPosition:e.targetPosition??ve.Top});return t.h(zi,{path:o,labelX:r,labelY:i,...n,...e})}}}),FI=t.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:n}){return()=>t.h(qp,{...e,...n,borderRadius:0})}}),UI=t.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Fp({...e,sourcePosition:e.sourcePosition??ve.Bottom,targetPosition:e.targetPosition??ve.Top});return t.h(zi,{path:o,labelX:r,labelY:i,...n,...e})}}}),KI=t.defineComponent({name:"SimpleBezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Kp({...e,sourcePosition:e.sourcePosition??ve.Bottom,targetPosition:e.targetPosition??ve.Top});return t.h(zi,{path:o,labelX:r,labelY:i,...n,...e})}}}),jI={input:SI,default:NI,output:xI},GI={default:UI,straight:LI,step:FI,smoothstep:qp,simplebezier:KI};function qI(e,n,o){const r=t.computed(()=>_=>n.value.get(_)),i=t.computed(()=>_=>o.value.get(_)),a=t.computed(()=>{const _={...GI,...e.edgeTypes},y=Object.keys(_);for(const h of e.edges)h.type&&!y.includes(h.type)&&(_[h.type]=h.type);return _}),l=t.computed(()=>{const _={...jI,...e.nodeTypes},y=Object.keys(_);for(const h of e.nodes)h.type&&!y.includes(h.type)&&(_[h.type]=h.type);return _}),s=t.computed(()=>e.onlyRenderVisibleElements?sp(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const _=[];for(const y of e.edges){const h=n.value.get(y.source),k=n.value.get(y.target);zA({sourcePos:h.computedPosition||{x:0,y:0},targetPos:k.computedPosition||{x:0,y:0},sourceWidth:h.dimensions.width,sourceHeight:h.dimensions.height,targetWidth:k.dimensions.width,targetHeight:k.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(y)}return _}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const _=[];for(const y of e.nodes)y.selected&&_.push(y);return _}),u=t.computed(()=>{const _=[];for(const y of e.edges)y.selected&&_.push(y);return _}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const _=[];for(const y of e.nodes)y.dimensions.width&&y.dimensions.height&&y.handleBounds!==void 0&&_.push(y);return _}),g=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:g}}class Qn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var n;const o=(n=t.getCurrentInstance())==null?void 0:n.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??Qn.instance;return Qn.instance=r??new Qn,o&&(o.config.globalProperties.$vueFlowStorage=Qn.instance),Qn.instance}set(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=Rp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const g=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[g]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=qI(i,s,c),f=kI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...j1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Re(e){const n=Qn.getInstance(),o=t.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=t.inject(Ip,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const g=y=>{d.applyNodeChanges(y)},_=y=>{d.applyEdgeChanges(y)};u?(d.onNodesChange(g),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),fi(()=>{if(s){const u=n.get(s.id);u?u.$destroy():Fi(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(Ip,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new at(et.USEVUEFLOW_OPTIONS))}return s}function zI(e){const{emits:n,dimensions:o}=Re();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Ri(i);(l.width===0||l.height===0)&&n.error(new at(et.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const HI={name:"UserSelection",compatConfig:{MODE:3}},YI=t.defineComponent({...HI,props:{userSelectionRect:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:t.normalizeStyle({width:`${n.userSelectionRect.width}px`,height:`${n.userSelectionRect.height}px`,transform:`translate(${n.userSelectionRect.x}px, ${n.userSelectionRect.y}px)`})},null,4))}}),WI=["tabIndex"],XI={name:"NodesSelection",compatConfig:{MODE:3}},ZI=t.defineComponent({...XI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Re(),s=Vp(),c=t.ref(null),d=Op({el:c,onStart(g){n.selectionDragStart(g)},onDrag(g){n.selectionDrag(g)},onStop(g){n.selectionDragStop(g)}});t.onMounted(()=>{var g;a.value||(g=c.value)==null||g.focus({preventScroll:!0})});const f=t.computed(()=>lp(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(g){n.selectionContextMenu({event:g,nodes:r.value})}function m(g){a||Po[g.key]&&(g.preventDefault(),s({x:Po[g.key].x,y:Po[g.key].y},g.shiftKey))}return(g,_)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,WI)],6)):t.createCommentVNode("",!0)}});function JI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const QI={name:"Pane",compatConfig:{MODE:3}},eP=t.defineComponent({...QI,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:g,deleteKeyCode:_,multiSelectionKeyCode:y,multiSelectionActive:h,edgeLookup:k,nodeLookup:b,connectionLookup:E,defaultEdgeOptions:N,connectionStartHandle:C}=Re(),x=t.ref(null),I=t.ref(new Set),A=t.ref(new Set),B=t.ref(),v=t.toRef(()=>c.value&&(e.isSelecting||a.value)),w=t.toRef(()=>C.value!==null);let M=!1,S=!1;const F=_r(_,{actInsideInputWithModifier:!1}),O=_r(y);t.watch(F,Z=>{Z&&(p(u.value),m(f.value),d.value=!1)}),t.watch(O,Z=>{h.value=Z});function j(Z,K){return q=>{q.target===K&&(Z==null||Z(q))}}function X(Z){if(M||w.value){M=!1;return}i.paneClick(Z),l(),d.value=!1}function L(Z){Z.preventDefault(),Z.stopPropagation(),i.paneContextMenu(Z)}function U(Z){i.paneScroll(Z)}function P(Z){var K,q,se;if(B.value=(K=n.value)==null?void 0:K.getBoundingClientRect(),!c.value||!e.isSelecting||Z.button!==0||Z.target!==x.value||!B.value)return;(se=(q=Z.target)==null?void 0:q.setPointerCapture)==null||se.call(q,Z.pointerId);const{x:me,y:ge}=JI(Z,B.value);S=!0,M=!1,l(),s.value={width:0,height:0,startX:me,startY:ge,x:me,y:ge},i.selectionStart(Z)}function V(Z){var K;if(!B.value||!s.value)return;M=!0;const{x:q,y:se}=Ht(Z,B.value),{startX:me=0,startY:ge=0}=s.value,ie={startX:me,startY:ge,x:q<me?q:me,y:se<ge?se:ge,width:Math.abs(q-me),height:Math.abs(se-ge)},W=I.value,ae=A.value;I.value=new Set(sp(o.value,ie,r.value,g.value===Xl.Partial,!0).map($=>$.id)),A.value=new Set;const de=((K=N.value)==null?void 0:K.selectable)??!0;for(const $ of I.value){const T=E.value.get($);if(T)for(const{edgeId:R}of T.values()){const D=k.value.get(R);D&&(D.selectable??de)&&A.value.add(R)}}if(!Ap(W,I.value)){const $=Cn(b.value,I.value,!0);i.nodesChange($)}if(!Ap(ae,A.value)){const $=Cn(k.value,A.value);i.edgesChange($)}s.value=ie,a.value=!0,d.value=!1}function G(Z){var K;Z.button!==0||!S||((K=Z.target)==null||K.releasePointerCapture(Z.pointerId),!a.value&&s.value&&Z.target===x.value&&X(Z),a.value=!1,s.value=null,d.value=I.value.size>0,i.selectionEnd(Z),e.selectionKeyPressed&&(M=!1),S=!1)}return(Z,K)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:x,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:Z.isSelecting}]),onClick:K[0]||(K[0]=q=>v.value?void 0:j(X,x.value)(q)),onContextmenu:K[1]||(K[1]=q=>j(L,x.value)(q)),onWheelPassive:K[2]||(K[2]=q=>j(U,x.value)(q)),onPointerenter:K[3]||(K[3]=q=>v.value?void 0:t.unref(i).paneMouseEnter(q)),onPointerdown:K[4]||(K[4]=q=>v.value?P(q):t.unref(i).paneMouseMove(q)),onPointermove:K[5]||(K[5]=q=>v.value?V(q):t.unref(i).paneMouseMove(q)),onPointerup:K[6]||(K[6]=q=>v.value?G(q):void 0),onPointerleave:K[7]||(K[7]=q=>t.unref(i).paneMouseLeave(q))},[t.renderSlot(Z.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(YI,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(d)&&t.unref(u).length?(t.openBlock(),t.createBlock(ZI,{key:1})):t.createCommentVNode("",!0)],34))}}),tP={name:"Transform",compatConfig:{MODE:3}},nP=t.defineComponent({...tP,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Re(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),oP={name:"Viewport",compatConfig:{MODE:3}},rP=t.defineComponent({...oP,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:g,preventScrolling:_,noWheelClassName:y,noPanClassName:h,emits:k,connectionStartHandle:b,userSelectionActive:E,paneDragging:N,d3Zoom:C,d3Selection:x,d3ZoomHandler:I,viewport:A,viewportRef:B,paneClickDistance:v}=Re();zI(B);const w=t.shallowRef(!1),M=t.shallowRef(!1);let S=null,F=!1,O=0,j={x:0,y:0,zoom:0};const X=_r(s),L=_r(l),U=_r(a),P=t.toRef(()=>(!L.value||L.value&&l.value===!0)&&(X.value||u.value)),V=t.toRef(()=>X.value||c.value),G=t.toRef(()=>L.value||l.value===!0&&P.value!==!0);t.onMounted(()=>{if(!B.value){Fi("Viewport element is missing");return}const ge=B.value,ie=ge.getBoundingClientRect(),W=vA().clickDistance(v.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ae=Dt(ge).call(W),de=ae.on("wheel.zoom"),$=Io.translate(r.value.x??0,r.value.y??0).scale(Zn(r.value.zoom??1,n.value,o.value)),T=[[0,0],[ie.width,ie.height]],R=W.constrain()($,T,i.value);W.transform(ae,R),W.wheelDelta(K),C.value=W,x.value=ae,I.value=de,A.value={x:R.x,y:R.y,zoom:R.k},W.on("start",D=>{var re;if(!D.sourceEvent)return null;O=D.sourceEvent.button,w.value=!0;const ee=se(D.transform);((re=D.sourceEvent)==null?void 0:re.type)==="mousedown"&&(N.value=!0),j=ee,k.viewportChangeStart(ee),k.moveStart({event:D,flowTransform:ee})}),W.on("end",D=>{if(!D.sourceEvent)return null;if(w.value=!1,N.value=!1,Z(P.value,O??0)&&!F&&k.paneContextMenu(D.sourceEvent),F=!1,q(j,D.transform)){const re=se(D.transform);j=re,k.viewportChangeEnd(re),k.moveEnd({event:D,flowTransform:re})}}),W.filter(D=>{var re;const ee=U.value||g.value,J=m.value&&D.ctrlKey,z=D.button;if(z===1&&D.type==="mousedown"&&(me(D,"vue-flow__node")||me(D,"vue-flow__edge")))return!0;if(!P.value&&!ee&&!V.value&&!p.value&&!m.value||E.value||!p.value&&D.type==="dblclick"||me(D,y.value)&&D.type==="wheel"||me(D,h.value)&&(D.type!=="wheel"||V.value&&D.type==="wheel"&&!U.value)||!m.value&&D.ctrlKey&&D.type==="wheel"||!ee&&!V.value&&!J&&D.type==="wheel")return!1;if(!m&&D.type==="touchstart"&&((re=D.touches)==null?void 0:re.length)>1)return D.preventDefault(),!1;if(!P.value&&(D.type==="mousedown"||D.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&z===0||Array.isArray(u.value)&&!u.value.includes(z)&&(D.type==="mousedown"||D.type==="touchstart"))return!1;const le=Array.isArray(u.value)&&u.value.includes(z)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!z||z<=1;return(!D.ctrlKey||X.value||D.type==="wheel")&&le}),t.watch([E,P],()=>{E.value&&!w.value?W.on("zoom",null):E.value||W.on("zoom",D=>{A.value={x:D.transform.x,y:D.transform.y,zoom:D.transform.k};const re=se(D.transform);F=Z(P.value,O??0),k.viewportChange(re),k.move({event:D,flowTransform:re})})},{immediate:!0}),t.watch([E,V,d,U,m,_,y],()=>{V.value&&!U.value&&!E.value?ae.on("wheel.zoom",D=>{if(me(D,y.value))return!1;const re=U.value||g.value,ee=m.value&&D.ctrlKey;if(!(!_.value||V.value||re||ee))return!1;D.preventDefault(),D.stopImmediatePropagation();const z=ae.property("__zoom").k||1,le=Mi();if(!X.value&&D.ctrlKey&&m.value&&le){const be=jt(D),ne=K(D),_e=z*2**ne;W.scaleTo(ae,_e,be,D);return}const H=D.deltaMode===1?20:1;let Y=d.value===yr.Vertical?0:D.deltaX*H,te=d.value===yr.Horizontal?0:D.deltaY*H;!le&&D.shiftKey&&d.value!==yr.Vertical&&!Y&&te&&(Y=te,te=0),W.translateBy(ae,-(Y/z)*f.value,-(te/z)*f.value);const ce=se(ae.property("__zoom"));S&&clearTimeout(S),M.value?(k.move({event:D,flowTransform:ce}),k.viewportChange(ce),S=setTimeout(()=>{k.moveEnd({event:D,flowTransform:ce}),k.viewportChangeEnd(ce),M.value=!1},150)):(M.value=!0,k.moveStart({event:D,flowTransform:ce}),k.viewportChangeStart(ce))},{passive:!1}):typeof de<"u"&&ae.on("wheel.zoom",function(D,re){const ee=!_.value&&D.type==="wheel"&&!D.ctrlKey,J=U.value||g.value,z=m.value&&D.ctrlKey;if(!J&&!c.value&&!z&&D.type==="wheel"||ee||me(D,y.value))return null;D.preventDefault(),de.call(this,D,re)},{passive:!1})},{immediate:!0})});function Z(ge,ie){return ie===2&&Array.isArray(ge)&&ge.includes(2)}function K(ge){const ie=ge.ctrlKey&&Mi()?10:1;return-ge.deltaY*(ge.deltaMode===1?.05:ge.deltaMode?1:.002)*ie}function q(ge,ie){return ge.x!==ie.x&&!Number.isNaN(ie.x)||ge.y!==ie.y&&!Number.isNaN(ie.y)||ge.zoom!==ie.k&&!Number.isNaN(ie.k)}function se(ge){return{x:ge.x,y:ge.y,zoom:ge.k}}function me(ge,ie){return ge.target.closest(`.${ie}`)}return(ge,ie)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:B,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(eP,{"is-selecting":G.value,"selection-key-pressed":t.unref(L),class:t.normalizeClass({connecting:!!t.unref(b),dragging:t.unref(N),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(nP,null,{default:t.withCtx(()=>[t.renderSlot(ge.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),iP=["id"],aP=["id"],lP=["id"],sP={name:"A11yDescriptions",compatConfig:{MODE:3}},cP=t.defineComponent({...sP,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Re();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Jf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select a node. "+t.toDisplayString(t.unref(o)?"":"You can then use the arrow keys to move the node around.")+" You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. ",9,iP),t.createElementVNode("div",{id:`${t.unref(Qf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,aP),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref($A)}-${t.unref(n)}`,"aria-live":"assertive","aria-atomic":"true",style:{position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(100%)"}},t.toDisplayString(t.unref(r)),9,lP))],64))}});function dP(){const e=Re();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function uP(e,n,o){return o===ve.Left?e-n:o===ve.Right?e+n:e}function fP(e,n,o){return o===ve.Top?e-n:o===ve.Bottom?e+n:e}const us=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ve.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:uP(n,e,r),cy:fP(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};us.props=["radius","centerX","centerY","position","type"],us.compatConfig={MODE:3};const zp=us,pP=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:g,elementsSelectable:_,edgesUpdatable:y,edgesFocusable:h,hooks:k}=Re(),b=t.computed(()=>f(e.id)),{emit:E,on:N}=cI(b.value,a),C=t.inject(Ui),x=t.getCurrentInstance(),I=t.ref(!1),A=t.ref(!1),B=t.ref(""),v=t.ref(null),w=t.ref("source"),M=t.ref(null),S=t.toRef(()=>typeof b.value.selectable>"u"?_.value:b.value.selectable),F=t.toRef(()=>typeof b.value.updatable>"u"?y.value:b.value.updatable),O=t.toRef(()=>typeof b.value.focusable>"u"?h.value:b.value.focusable);t.provide(aI,e.id),t.provide(lI,M);const j=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),X=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),L=t.computed(()=>{const T=b.value.type||"default",R=C==null?void 0:C[`edge-${T}`];if(R)return R;let D=b.value.template??c.value[T];if(typeof D=="string"&&x){const re=Object.keys(x.appContext.components);re&&re.includes(T)&&(D=t.resolveComponent(T,!1))}return D&&typeof D!="string"?D:(a.error(new at(et.EDGE_TYPE_MISSING,D)),!1)}),{handlePointerDown:U}=$p({nodeId:B,handleId:v,type:w,isValidConnection:p,edgeUpdaterType:w,onEdgeUpdate:G,onEdgeUpdateEnd:Z});return()=>{const T=u(b.value.source),R=u(b.value.target),D="pathOptions"in b.value?b.value.pathOptions:{};if(!T&&!R)return a.error(new at(et.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!T)return a.error(new at(et.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!R)return a.error(new at(et.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||T.hidden||R.hidden)return null;let re;r.value===bn.Strict?re=T.handleBounds.source:re=[...T.handleBounds.source||[],...T.handleBounds.target||[]];const ee=wp(re,b.value.sourceHandle);let J;r.value===bn.Strict?J=R.handleBounds.target:J=[...R.handleBounds.target||[],...R.handleBounds.source||[]];const z=wp(J,b.value.targetHandle),le=(ee==null?void 0:ee.position)||ve.Bottom,H=(z==null?void 0:z.position)||ve.Top,{x:Y,y:te}=To(T,ee,le),{x:ce,y:be}=To(R,z,H);return b.value.sourceX=Y,b.value.sourceY=te,b.value.targetX=ce,b.value.targetY=be,t.h("g",{ref:M,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${L.value===!1?"default":b.value.type||"default"}`,s.value,j.value,{updating:I.value,selected:b.value.selected,animated:b.value.animated,inactive:!S.value&&!k.value.edgeClick.hasListeners()}],tabIndex:O.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":O.value?`${Qf}-${n}`:void 0,"aria-roledescription":"edge",role:O.value?"group":"img",...b.value.domAttributes,onClick:q,onContextmenu:se,onDblclick:me,onMouseenter:ge,onMousemove:ie,onMouseleave:W,onKeyDown:O.value?$:void 0},[A.value?null:t.h(L.value===!1?c.value.default:L.value,{id:e.id,sourceNode:T,targetNode:R,source:b.value.source,target:b.value.target,type:b.value.type,updatable:F.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...N},style:X.value,markerStart:`url('#${kr(b.value.markerStart,n)}')`,markerEnd:`url('#${kr(b.value.markerEnd,n)}')`,sourcePosition:le,targetPosition:H,sourceX:Y,sourceY:te,targetX:ce,targetY:be,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...D}),[F.value==="source"||F.value===!0?[t.h("g",{onMousedown:ae,onMouseenter:P,onMouseout:V},t.h(zp,{position:le,centerX:Y,centerY:te,radius:i.value,type:"source","data-type":"source"}))]:null,F.value==="target"||F.value===!0?[t.h("g",{onMousedown:de,onMouseenter:P,onMouseout:V},t.h(zp,{position:H,centerX:ce,centerY:be,radius:i.value,type:"target","data-type":"target"}))]:null]])};function P(){I.value=!0}function V(){I.value=!1}function G(T,R){E.update({event:T,edge:b.value,connection:R})}function Z(T){E.updateEnd({event:T,edge:b.value}),A.value=!1}function K(T,R){T.button===0&&(A.value=!0,B.value=R?b.value.target:b.value.source,v.value=(R?b.value.targetHandle:b.value.sourceHandle)??null,w.value=R?"target":"source",E.updateStart({event:T,edge:b.value}),U(T))}function q(T){var R;const D={event:T,edge:b.value};S.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(R=M.value)==null||R.blur()):o([b.value])),E.click(D)}function se(T){E.contextMenu({event:T,edge:b.value})}function me(T){E.doubleClick({event:T,edge:b.value})}function ge(T){E.mouseEnter({event:T,edge:b.value})}function ie(T){E.mouseMove({event:T,edge:b.value})}function W(T){E.mouseLeave({event:T,edge:b.value})}function ae(T){K(T,!0)}function de(T){K(T,!1)}function $(T){var R;!g.value&&ep.includes(T.key)&&S.value&&(T.key==="Escape"?((R=M.value)==null||R.blur(),d([f(e.id)])):o([f(e.id)]))}}}),mP=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Re(),p=(e=t.inject(Ui))==null?void 0:e["connection-line"],m=t.computed(()=>{var k;return u((k=r.value)==null?void 0:k.nodeId)}),g=t.computed(()=>{var k;return u((k=i.value)==null?void 0:k.nodeId)??null}),_=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),y=t.computed(()=>c.value.markerStart?`url(#${kr(c.value.markerStart,n)})`:""),h=t.computed(()=>c.value.markerEnd?`url(#${kr(c.value.markerEnd,n)})`:"");return()=>{var k,b,E;if(!m.value||!r.value)return null;const N=r.value.id,C=r.value.type,x=m.value.handleBounds;let I=(x==null?void 0:x[C])??[];if(o.value===bn.Loose){const X=(x==null?void 0:x[C==="source"?"target":"source"])??[];I=[...I,...X]}if(!I)return null;const A=(N?I.find(X=>X.id===N):I[0])??null,B=(A==null?void 0:A.position)??ve.Top,{x:v,y:w}=To(m.value,A,B);let M=null;g.value&&(o.value===bn.Strict?M=((k=g.value.handleBounds[C==="source"?"target":"source"])==null?void 0:k.find(X=>{var L;return X.id===((L=i.value)==null?void 0:L.id)}))||null:M=((b=[...g.value.handleBounds.source??[],...g.value.handleBounds.target??[]])==null?void 0:b.find(X=>{var L;return X.id===((L=i.value)==null?void 0:L.id)}))||null);const S=((E=i.value)==null?void 0:E.position)??(B?rs[B]:null);if(!B||!S)return null;const F=l.value??c.value.type??Xn.Bezier;let O="";const j={sourceX:v,sourceY:w,sourcePosition:B,targetX:_.value.x,targetY:_.value.y,targetPosition:S};return F===Xn.Bezier?[O]=Fp(j):F===Xn.Step?[O]=ds({...j,borderRadius:0}):F===Xn.SmoothStep?[O]=ds(j):F===Xn.SimpleBezier?[O]=Kp(j):O=`M${v},${w} ${_.value.x},${_.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:v,sourceY:w,sourcePosition:B,targetX:_.value.x,targetY:_.value.y,targetPosition:S,sourceNode:m.value,sourceHandle:A,targetNode:g.value,targetHandle:M,markerEnd:h.value,markerStart:y.value,connectionStatus:d.value}):t.h("path",{d:O,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":h.value,"marker-start":y.value})))}}}),gP=["id","markerWidth","markerHeight","markerUnits","orient"],hP={name:"MarkerType",compatConfig:{MODE:3}},yP=t.defineComponent({...hP,props:{id:{},type:{},color:{default:"none"},width:{default:12.5},height:{default:12.5},markerUnits:{default:"strokeWidth"},orient:{default:"auto-start-reverse"},strokeWidth:{default:1}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("marker",{id:n.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${n.width}`,markerHeight:`${n.height}`,markerUnits:n.markerUnits,orient:n.orient},[n.type===t.unref(hr).ArrowClosed?(t.openBlock(),t.createElementBlock("polyline",{key:0,style:t.normalizeStyle({stroke:n.color,fill:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):t.createCommentVNode("",!0),n.type===t.unref(hr).Arrow?(t.openBlock(),t.createElementBlock("polyline",{key:1,style:t.normalizeStyle({stroke:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):t.createCommentVNode("",!0)],8,gP))}}),_P={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},bP={name:"MarkerDefinitions",compatConfig:{MODE:3}},wP=t.defineComponent({...bP,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Re(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=kr(d,n);l.has(f)||(typeof d=="object"?s.push({...d,id:f,color:d.color||i.value}):s.push({id:f,color:i.value,type:d}),l.add(f))}};for(const d of[r.value.markerEnd,r.value.markerStart])c(d);for(const d of o.value)for(const f of[d.markerStart,d.markerEnd])c(f);return s.sort((d,f)=>d.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",_P,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(yP,{id:c.id,key:c.id,type:c.type,color:c.color,width:c.width,height:c.height,markerUnits:c.markerUnits,"stroke-width":c.strokeWidth,orient:c.orient},null,8,["id","type","color","width","height","markerUnits","stroke-width","orient"]))),128))])]))}}),kP={name:"Edges",compatConfig:{MODE:3}},CP=t.defineComponent({...kP,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Re();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(wP),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),l=>(t.openBlock(),t.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:t.normalizeStyle({zIndex:t.unref(HA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(pP),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(mP))],64))}}),EP=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:g,ariaLiveMessage:_,snapToGrid:y,snapGrid:h,nodeDragThreshold:k,nodesDraggable:b,elementsSelectable:E,nodesConnectable:N,nodesFocusable:C,hooks:x}=Re(),I=t.ref(null);t.provide(Tp,I),t.provide(Pp,e.id);const A=t.inject(Ui),B=t.getCurrentInstance(),v=Vp(),{node:w,parentNode:M}=Bp(e.id),{emit:S,on:F}=pI(w,l),O=t.toRef(()=>typeof w.draggable>"u"?b.value:w.draggable),j=t.toRef(()=>typeof w.selectable>"u"?E.value:w.selectable),X=t.toRef(()=>typeof w.connectable>"u"?N.value:w.connectable),L=t.toRef(()=>typeof w.focusable>"u"?C.value:w.focusable),U=t.computed(()=>j.value||O.value||x.value.nodeClick.hasListeners()||x.value.nodeDoubleClick.hasListeners()||x.value.nodeMouseEnter.hasListeners()||x.value.nodeMouseMove.hasListeners()||x.value.nodeMouseLeave.hasListeners()),P=t.toRef(()=>!!w.dimensions.width&&!!w.dimensions.height),V=t.computed(()=>{const R=w.type||"default",D=A==null?void 0:A[`node-${R}`];if(D)return D;let re=w.template||u.value[R];if(typeof re=="string"&&B){const ee=Object.keys(B.appContext.components);ee&&ee.includes(R)&&(re=t.resolveComponent(R,!1))}return re&&typeof re!="string"?re:(l.error(new at(et.NODE_TYPE_MISSING,re)),!1)}),G=Op({id:e.id,el:I,disabled:()=>!O.value,selectable:j,dragHandle:()=>w.dragHandle,onStart(R){S.dragStart(R)},onDrag(R){S.drag(R)},onStop(R){S.dragStop(R)},onClick(R){$(R)}}),Z=t.computed(()=>w.class instanceof Function?w.class(w):w.class),K=t.computed(()=>{const R=(w.style instanceof Function?w.style(w):w.style)||{},D=w.width instanceof Function?w.width(w):w.width,re=w.height instanceof Function?w.height(w):w.height;return!R.width&&D&&(R.width=typeof D=="string"?D:`${D}px`),!R.height&&re&&(R.height=typeof re=="string"?re:`${re}px`),R}),q=t.toRef(()=>Number(w.zIndex??K.value.zIndex??0));return f(R=>{(R.includes(e.id)||!R.length)&&me()}),t.onMounted(()=>{t.watch(()=>w.hidden,(R=!1,D,re)=>{!R&&I.value&&(e.resizeObserver.observe(I.value),re(()=>{I.value&&e.resizeObserver.unobserve(I.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>w.type,()=>w.sourcePosition,()=>w.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])})}),t.watch([()=>w.position.x,()=>w.position.y,()=>{var R;return(R=M.value)==null?void 0:R.computedPosition.x},()=>{var R;return(R=M.value)==null?void 0:R.computedPosition.y},()=>{var R;return(R=M.value)==null?void 0:R.computedPosition.z},q,()=>w.selected,()=>w.dimensions.height,()=>w.dimensions.width,()=>{var R;return(R=M.value)==null?void 0:R.dimensions.height},()=>{var R;return(R=M.value)==null?void 0:R.dimensions.width}],([R,D,re,ee,J,z])=>{const le={x:R,y:D,z:z+(m.value&&w.selected?1e3:0)};typeof re<"u"&&typeof ee<"u"?w.computedPosition=UA({x:re,y:ee,z:J},le):w.computedPosition=le},{flush:"post",immediate:!0}),t.watch([()=>w.extent,p],([R,D],[re,ee])=>{(R!==re||D!==ee)&&se()}),w.extent==="parent"||typeof w.extent=="object"&&"range"in w.extent&&w.extent.range==="parent"?Il(()=>P).toBe(!0).then(se):se(),()=>w.hidden?null:t.h("div",{ref:I,"data-id":w.id,class:["vue-flow__node",`vue-flow__node-${V.value===!1?"default":w.type||"default"}`,{[o.value]:O.value,dragging:G==null?void 0:G.value,draggable:O.value,selected:w.selected,selectable:j.value,parent:w.isParent},Z.value],style:{visibility:P.value?"visible":"hidden",zIndex:w.computedPosition.z??q.value,transform:`translate(${w.computedPosition.x}px,${w.computedPosition.y}px)`,pointerEvents:U.value?"all":"none",...K.value},tabIndex:L.value?0:void 0,role:L.value?"group":void 0,"aria-describedby":g.value?void 0:`${Jf}-${n}`,"aria-label":w.ariaLabel,"aria-roledescription":"node",...w.domAttributes,onMouseenter:ge,onMousemove:ie,onMouseleave:W,onContextmenu:ae,onClick:$,onDblclick:de,onKeydown:T},[t.h(V.value===!1?u.value.default:V.value,{id:w.id,type:w.type,data:w.data,events:{...w.events,...F},selected:w.selected,resizing:w.resizing,dragging:G.value,connectable:X.value,position:w.computedPosition,dimensions:w.dimensions,isValidTargetPos:w.isValidTargetPos,isValidSourcePos:w.isValidSourcePos,parent:w.parentNode,parentNodeId:w.parentNode,zIndex:w.computedPosition.z??q.value,targetPosition:w.targetPosition,sourcePosition:w.sourcePosition,label:w.label,dragHandle:w.dragHandle,onUpdateNodeInternals:me})]);function se(){const R=w.computedPosition,{computedPosition:D,position:re}=ts(w,y.value?Li(R,h.value):R,l.error,p.value,M.value);(w.computedPosition.x!==D.x||w.computedPosition.y!==D.y)&&(w.computedPosition={...w.computedPosition,...D}),(w.position.x!==re.x||w.position.y!==re.y)&&(w.position=re)}function me(){I.value&&d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])}function ge(R){G!=null&&G.value||S.mouseEnter({event:R,node:w})}function ie(R){G!=null&&G.value||S.mouseMove({event:R,node:w})}function W(R){G!=null&&G.value||S.mouseLeave({event:R,node:w})}function ae(R){return S.contextMenu({event:R,node:w})}function de(R){return S.doubleClick({event:R,node:w})}function $(R){j.value&&(!r.value||!O.value||k.value>0)&&is(w,a.value,c,s,i,!1,I.value),S.click({event:R,node:w})}function T(R){if(!(Zl(R)||g.value))if(ep.includes(R.key)&&j.value){const D=R.key==="Escape";is(w,a.value,c,s,i,D,I.value)}else O.value&&w.selected&&Po[R.key]&&(R.preventDefault(),_.value=`Moved selected node ${R.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~w.position.x}, y: ${~~w.position.y}`,v({x:Po[R.key].x,y:Po[R.key].y},R.shiftKey))}}});function NP(e={includeHiddenNodes:!1}){const{nodes:n}=Re();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const xP={class:"vue-flow__nodes vue-flow__container"},SP={name:"Nodes",compatConfig:{MODE:3}},vP=t.defineComponent({...SP,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Re(),i=NP(),a=t.ref();return t.watch(i,l=>{l&&t.nextTick(()=>{r.nodesInitialized(n.value)})},{immediate:!0}),t.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));t.nextTick(()=>o(s))})}),t.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(t.openBlock(),t.createElementBlock("div",xP,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&t.isMemoSame(u,p))return u;const m=(t.openBlock(),t.createBlock(t.unref(EP),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):t.createCommentVNode("",!0)]))}});function AP(){const{emits:e}=Re();t.onMounted(()=>{if(Np()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new at(et.MISSING_STYLES))}})}const IP=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),PP={name:"VueFlow",compatConfig:{MODE:3}},Hp=t.defineComponent({...PP,props:{id:{},modelValue:{},nodes:{},edges:{},edgeTypes:{},nodeTypes:{},connectionMode:{},connectionLineType:{},connectionLineStyle:{default:void 0},connectionLineOptions:{default:void 0},connectionRadius:{},isValidConnection:{type:[Function,null],default:void 0},deleteKeyCode:{default:void 0},selectionKeyCode:{type:[Boolean,null],default:void 0},multiSelectionKeyCode:{default:void 0},zoomActivationKeyCode:{default:void 0},panActivationKeyCode:{default:void 0},snapToGrid:{type:Boolean,default:void 0},snapGrid:{},onlyRenderVisibleElements:{type:Boolean,default:void 0},edgesUpdatable:{type:[Boolean,String],default:void 0},nodesDraggable:{type:Boolean,default:void 0},nodesConnectable:{type:Boolean,default:void 0},nodeDragThreshold:{},elementsSelectable:{type:Boolean,default:void 0},selectNodesOnDrag:{type:Boolean,default:void 0},panOnDrag:{type:[Boolean,Array],default:void 0},minZoom:{},maxZoom:{},defaultViewport:{},translateExtent:{},nodeExtent:{},defaultMarkerColor:{},zoomOnScroll:{type:Boolean,default:void 0},zoomOnPinch:{type:Boolean,default:void 0},panOnScroll:{type:Boolean,default:void 0},panOnScrollSpeed:{},panOnScrollMode:{},paneClickDistance:{},zoomOnDoubleClick:{type:Boolean,default:void 0},preventScrolling:{type:Boolean,default:void 0},selectionMode:{},edgeUpdaterRadius:{},fitViewOnInit:{type:Boolean,default:void 0},connectOnClick:{type:Boolean,default:void 0},applyDefault:{type:Boolean,default:void 0},autoConnect:{type:[Boolean,Function],default:void 0},noDragClassName:{},noWheelClassName:{},noPanClassName:{},defaultEdgeOptions:{},elevateEdgesOnSelect:{type:Boolean,default:void 0},elevateNodesOnSelect:{type:Boolean,default:void 0},disableKeyboardA11y:{type:Boolean,default:void 0},edgesFocusable:{type:Boolean,default:void 0},nodesFocusable:{type:Boolean,default:void 0},autoPanOnConnect:{type:Boolean,default:void 0},autoPanOnNodeDrag:{type:Boolean,default:void 0},autoPanSpeed:{}},emits:["nodesChange","edgesChange","nodesInitialized","paneReady","init","updateNodeInternals","error","connect","connectStart","connectEnd","clickConnectStart","clickConnectEnd","moveStart","move","moveEnd","selectionDragStart","selectionDrag","selectionDragStop","selectionContextMenu","selectionStart","selectionEnd","viewportChangeStart","viewportChange","viewportChangeEnd","paneScroll","paneClick","paneContextMenu","paneMouseEnter","paneMouseMove","paneMouseLeave","edgeUpdate","edgeContextMenu","edgeMouseEnter","edgeMouseMove","edgeMouseLeave","edgeDoubleClick","edgeClick","edgeUpdateStart","edgeUpdateEnd","nodeContextMenu","nodeMouseEnter","nodeMouseMove","nodeMouseLeave","nodeDoubleClick","nodeClick","nodeDragStart","nodeDrag","nodeDragStop","miniMapNodeClick","miniMapNodeDoubleClick","miniMapNodeMouseEnter","miniMapNodeMouseMove","miniMapNodeMouseLeave","update:modelValue","update:nodes","update:edges"],setup(e,{expose:n,emit:o}){const r=e,i=t.useSlots(),a=Pl(r,"modelValue",o),l=Pl(r,"nodes",o),s=Pl(r,"edges",o),c=Re(r),d=yI({modelValue:a,nodes:l,edges:s},r,c);return bI(o,c.hooks),dP(),AP(),t.provide(Ui,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(rP,null,{default:t.withCtx(()=>[t.createVNode(CP),IP,t.createVNode(vP),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(cP)],512))}}),TP={name:"Panel",compatConfig:{MODE:3}},OP=t.defineComponent({...TP,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Re(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var sn=(e=>(e.Lines="lines",e.Dots="dots",e))(sn||{});const Yp=function({dimensions:e,size:n,color:o}){return t.h("path",{stroke:o,"stroke-width":n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},Wp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};sn.Lines+"",sn.Dots+"";const $P={[sn.Dots]:"#81818a",[sn.Lines]:"#eee"},BP=["id","x","y","width","height","patternTransform"],VP={key:2,height:"100",width:"100"},RP=["fill"],DP=["x","y","fill"],MP={name:"Background",compatConfig:{MODE:3}},LP=t.defineComponent({...MP,props:{id:{},variant:{default:()=>sn.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:n,viewport:o}=Re(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||$P[e.variant||sn.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(sn).Lines?(t.openBlock(),t.createBlock(t.unref(Yp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(sn).Dots?(t.openBlock(),t.createBlock(t.unref(Wp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",VP,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,RP)])):t.createCommentVNode("",!0)])],8,BP)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,DP),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),FP={name:"ControlButton",compatConfig:{MODE:3}},UP=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},KP={class:"vue-flow__controls-button"};function jP(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",KP,[t.renderSlot(e.$slots,"default")])}const Cr=UP(FP,[["render",jP]]),GP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},qP=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function zP(e,n){return t.openBlock(),t.createElementBlock("svg",GP,qP)}const HP={render:zP},YP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},WP=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function XP(e,n){return t.openBlock(),t.createElementBlock("svg",YP,WP)}const ZP={render:XP},JP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},QP=[t.createElementVNode("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"},null,-1)];function eT(e,n){return t.openBlock(),t.createElementBlock("svg",JP,QP)}const tT={render:eT},nT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},oT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"},null,-1)];function rT(e,n){return t.openBlock(),t.createElementBlock("svg",nT,oT)}const iT={render:rT},aT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},lT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z"},null,-1)];function sT(e,n){return t.openBlock(),t.createElementBlock("svg",aT,lT)}const cT={render:sT},dT={name:"Controls",compatConfig:{MODE:3}},uT=t.defineComponent({...dT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Xf.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Re(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),g=t.toRef(()=>d.value.zoom>=u.value);function _(){l(),n("zoomIn")}function y(){s(),n("zoomOut")}function h(){c(e.fitViewParams),n("fitView")}function k(){a(!p.value),n("interactionChange",!p.value)}return(b,E)=>(t.openBlock(),t.createBlock(t.unref(OP),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(Cr,{class:"vue-flow__controls-zoomin",disabled:g.value,onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(HP))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(Cr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(ZP))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(Cr,{class:"vue-flow__controls-fitview",onClick:h},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(tT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(Cr,{key:0,class:"vue-flow__controls-interactive",onClick:k},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(cT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(iT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),fT=["undo","redo","duplicate","cut","copy","paste"],Xp=()=>{};function pT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function mT(e){if(!(e.metaKey||e.ctrlKey))return;switch(e.key.toLowerCase()){case"z":return e.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const gT=He.createSharedComposable(()=>{const e=new Set;He.useEventListener("keydown",o=>{if(pT(o.target))return;const r=mT(o);if(r)for(const i of e){if(!t.toValue(i.enabled))continue;const a=i[r];if(a){if(o.defaultPrevented){t.warn(`[useHotkeys] event for "${r}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),a();return}}},{passive:!1});function n(o){if(!fT.some(i=>typeof o[i]=="function"))return Xp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function Zp(e={}){if(typeof window>"u")return Xp;const n=gT().subscribe(e);return t.onScopeDispose(n),n}const Jp=44,hT=220,Qp=366,yT=1e3,_T=Jp+parseFloat(Ku),Yi=1,bT=0,wT=1,kT=2,CT=3,Oo=parseInt(m1,10),Er="application/x-datakit+json",Wi={delete:["Delete"],undo:["Mod","Z"],redo:{mac:["Mod","Shift","Z"],windows:["Mod","Y"],linux:["Mod","Shift","Z"]},copy:["Mod","C"],paste:["Mod","V"],duplicate:["Mod","D"]},Nn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},ET=1600,NT=1.2,xT=0,ST=200,em=Symbol("confirm-modal"),$o="{key}",eo={"kong.client.consumer":{dataType:"object",writable:!1,readable:!0},"kong.client.consumer_groups":{dataType:"array",writable:!1,readable:!0},"kong.client.credential":{dataType:"object",writable:!1,readable:!0},"kong.client.get_identity_realm_source":{dataType:"object",writable:!1,readable:!0},"kong.client.forwarded_ip":{dataType:"string",writable:!1,readable:!0},"kong.client.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.client.ip":{dataType:"string",writable:!1,readable:!0},"kong.client.port":{dataType:"number",writable:!1,readable:!0},"kong.client.protocol":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_host":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.request.forwarded_scheme":{dataType:"string",writable:!1,readable:!0},"kong.request.port":{dataType:"number",writable:!1,readable:!0},"kong.response.source":{dataType:"string",writable:!1,readable:!0},"kong.router.route":{dataType:"object",writable:!1,readable:!0},"kong.route_id":{dataType:"string",writable:!1,readable:!0},"kong.route_name":{dataType:"string",writable:!1,readable:!0},"kong.router.service":{dataType:"object",writable:!1,readable:!0},"kong.service_name":{dataType:"string",writable:!1,readable:!0},"kong.service_id":{dataType:"string",writable:!1,readable:!0},"kong.service.response.status":{dataType:"number",writable:!1,readable:!0},"kong.version":{dataType:"string",writable:!1,readable:!0},"kong.node.id":{dataType:"string",writable:!1,readable:!0},"kong.configuration.{key}":{dataType:"any",writable:!1,readable:!0},"kong.service.target":{dataType:"string ({host}:{port})",writable:!0,readable:!1},"kong.service.request_scheme":{dataType:"string ({scheme})",writable:!0,readable:!1},"kong.ctx.plugin.{key}":{dataType:"any",writable:!0,readable:!0},"kong.ctx.shared.{key}":{dataType:"any",writable:!0,readable:!0}},Xi=Object.keys(eo).filter(e=>e.includes($o)).map(e=>e.replace($o,""));function fs(e){if(!e||!xr(e))return;const n=Xi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace($o,"")}function Nr(e){if(!e)return null;const n=Xi.find(o=>e.startsWith(o));return n||e}function xr(e){return e?Xi.some(n=>e.startsWith(n)):!1}function tm(e){return e?xr(e)?Nr(e)+$o:e:null}function ps(e){var o;if(!e)return!1;const n=tm(e);return n?((o=eo[n])==null?void 0:o.readable)??!1:!1}function ms(e){var o;if(!e)return!1;const n=tm(e);return n?((o=eo[n])==null?void 0:o.writable)??!1:!1}function Zi(e,n,o){const r=n?_n(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Sr(e,n){const o=n(e.source),r=n(e.target);return[Zi(o,e.sourceField,"output"),Zi(r,e.targetField,"input")]}function gs(e,n,o,r,i){const a=i(e),l=i(o);return[Zi(a,n,"output"),Zi(l,r,"input")]}function nm(e){if(e.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:a,y:l,width:s,height:c}of e){if(![a,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const d=a+s,f=l+c;if(!Number.isFinite(d)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");a<n&&(n=a),l<o&&(o=l),d>r&&(r=d),f>i&&(i=f)}return{x:n,y:o,width:r-n,height:i-o}}function vT(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var AT="\0",to="\0",om="";let IT=class{constructor(n){rt(this,"_isDirected",!0);rt(this,"_isMultigraph",!1);rt(this,"_isCompound",!1);rt(this,"_label");rt(this,"_defaultNodeLabelFn",()=>{});rt(this,"_defaultEdgeLabelFn",()=>{});rt(this,"_nodes",{});rt(this,"_in",{});rt(this,"_preds",{});rt(this,"_out",{});rt(this,"_sucs",{});rt(this,"_edgeObjs",{});rt(this,"_edgeLabels",{});rt(this,"_nodeCount",0);rt(this,"_edgeCount",0);rt(this,"_parent");rt(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[to]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,typeof n!="function"&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(o=>Object.keys(n._in[o]).length===0)}sinks(){var n=this;return this.nodes().filter(o=>Object.keys(n._out[o]).length===0)}setNodes(n,o){var r=arguments,i=this;return n.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(n,o){return Object.hasOwn(this._nodes,n)?(arguments.length>1&&(this._nodes[n]=o),this):(this._nodes[n]=arguments.length>1?o:this._defaultNodeLabelFn(n),this._isCompound&&(this._parent[n]=to,this._children[n]={},this._children[to][n]=!0),this._in[n]={},this._preds[n]={},this._out[n]={},this._sucs[n]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var o=this;if(Object.hasOwn(this._nodes,n)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(i){o.setParent(i)}),delete this._children[n]),Object.keys(this._in[n]).forEach(r),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(r),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(n,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=to;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===n)throw new Error("Setting "+o+" as parent of "+n+" would create a cycle");this.setNode(o)}return this.setNode(n),this._removeFromParentsChildList(n),this._parent[n]=o,this._children[o][n]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(n){if(this._isCompound){var o=this._parent[n];if(o!==to)return o}}children(n=to){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===to)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){n(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=vr(this._isDirected,n,o,r);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(n),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(n,o,r);var c=PT(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,rm(this._preds[o],n),rm(this._sucs[n],o),this._in[o][s]=c,this._out[n][s]=c,this._edgeCount++,this}edge(n,o,r){var i=arguments.length===1?hs(this._isDirected,arguments[0]):vr(this._isDirected,n,o,r);return this._edgeLabels[i]}edgeAsObj(){const n=this.edge(...arguments);return typeof n!="object"?{label:n}:n}hasEdge(n,o,r){var i=arguments.length===1?hs(this._isDirected,arguments[0]):vr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?hs(this._isDirected,arguments[0]):vr(this._isDirected,n,o,r),a=this._edgeObjs[i];return a&&(n=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],im(this._preds[o],n),im(this._sucs[n],o),delete this._in[o][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,o){var r=this._in[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(n,o){var r=this._out[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(n,o){var r=this.inEdges(n,o);if(r)return r.concat(this.outEdges(n,o))}};function rm(e,n){e[n]?e[n]++:e[n]=1}function im(e,n){--e[n]||delete e[n]}function vr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+om+a+om+(r===void 0?AT:r)}function PT(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}var s={v:i,w:a};return r&&(s.name=r),s}function hs(e,n){return vr(e,n.v,n.w,n.name)}var ys=IT,TT="2.2.4",OT={Graph:ys,version:TT},$T=ys,BT={write:VT,read:MT};function VT(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:RT(e),edges:DT(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function RT(e){return e.nodes().map(function(n){var o=e.node(n),r=e.parent(n),i={v:n};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function DT(e){return e.edges().map(function(n){var o=e.edge(n),r={v:n.v,w:n.w};return n.name!==void 0&&(r.name=n.name),o!==void 0&&(r.value=o),r})}function MT(e){var n=new $T(e.options).setGraph(e.value);return e.nodes.forEach(function(o){n.setNode(o.v,o.value),o.parent&&n.setParent(o.v,o.parent)}),e.edges.forEach(function(o){n.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),n}var LT=FT;function FT(e){var n={},o=[],r;function i(a){Object.hasOwn(n,a)||(n[a]=!0,r.push(a),e.successors(a).forEach(i),e.predecessors(a).forEach(i))}return e.nodes().forEach(function(a){r=[],i(a),r.length&&o.push(r)}),o}var am=class{constructor(){rt(this,"_arr",[]);rt(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},UT=am,lm=jT,KT=()=>1;function jT(e,n,o,r){return GT(e,String(n),o||KT,r||function(i){return e.outEdges(i)})}function GT(e,n,o,r){var i={},a=new UT,l,s,c=function(d){var f=d.v!==l?d.v:d.w,u=i[f],p=o(d),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+p);m<u.distance&&(u.distance=m,u.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(d){var f=d===n?0:Number.POSITIVE_INFINITY;i[d]={distance:f},a.add(d,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var qT=lm,zT=HT;function HT(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=qT(e,i,n,o),r},{})}var sm=YT;function YT(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};if(o.push(l),e.successors(l).forEach(function(f){Object.hasOwn(r,f)?r[f].onStack&&(s.lowlink=Math.min(s.lowlink,r[f].index)):(a(f),s.lowlink=Math.min(s.lowlink,r[f].lowlink))}),s.lowlink===s.index){var c=[],d;do d=o.pop(),r[d].onStack=!1,c.push(d);while(l!==d);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var WT=sm,XT=ZT;function ZT(e){return WT(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var JT=eO,QT=()=>1;function eO(e,n,o){return tO(e,n||QT,o||function(r){return e.outEdges(r)})}function tO(e,n,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=n(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(d){var f=c[a],u=l[d],p=c[d],m=f.distance+u.distance;m<p.distance&&(p.distance=m,p.predecessor=u.predecessor)})})}),r}function cm(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new _s;Object.hasOwn(n,a)||(o[a]=!0,n[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(n).length!==e.nodeCount())throw new _s;return r}class _s extends Error{constructor(){super(...arguments)}}var dm=cm;cm.CycleException=_s;var um=dm,nO=oO;function oO(e){try{um(e)}catch(n){if(n instanceof um.CycleException)return!1;throw n}return!0}var fm=rO;function rO(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?iO:aO,a=[],l={};return n.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function iO(e,n,o,r){for(var i=[[e,!1]];i.length>0;){var a=i.pop();a[1]?r.push(a[0]):Object.hasOwn(o,a[0])||(o[a[0]]=!0,i.push([a[0],!0]),pm(n(a[0]),l=>i.push([l,!1])))}}function aO(e,n,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),pm(n(a),l=>i.push(l)))}}function pm(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var lO=fm,sO=cO;function cO(e,n){return lO(e,n,"post")}var dO=fm,uO=fO;function fO(e,n){return dO(e,n,"pre")}var pO=ys,mO=am,gO=hO;function hO(e,n){var o=new pO,r={},i=new mO,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=n(c);u<f&&(r[d]=a,i.decrease(d,u))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var yO={components:LT,dijkstra:lm,dijkstraAll:zT,findCycles:XT,floydWarshall:JT,isAcyclic:nO,postorder:sO,preorder:uO,prim:gO,tarjan:sm,topsort:dm},mm=OT,Ft={Graph:mm.Graph,json:BT,alg:yO,version:mm.version};let _O=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return gm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&gm(n),n._next=o._next,o._next._prev=n,o._next=n,n._prev=o}toString(){let n=[],o=this._sentinel,r=o._prev;for(;r!==o;)n.push(JSON.stringify(r,bO)),r=r._prev;return"["+n.join(", ")+"]"}};function gm(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function bO(e,n){if(e!=="_next"&&e!=="_prev")return n}var wO=_O;let kO=Ft.Graph,CO=wO;var EO=xO;let NO=()=>1;function xO(e,n){if(e.nodeCount()<=1)return[];let o=vO(e,n||NO);return SO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function SO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)bs(e,n,o,l);for(;l=i.dequeue();)bs(e,n,o,l);if(e.nodeCount()){for(let s=n.length-2;s>0;--s)if(l=n[s].dequeue(),l){r=r.concat(bs(e,n,o,l,!0));break}}}return r}function bs(e,n,o,r,i){let a=i?[]:void 0;return e.inEdges(r.v).forEach(l=>{let s=e.edge(l),c=e.node(l.v);i&&a.push({v:l.v,w:l.w}),c.out-=s,ws(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,ws(n,o,d)}),e.removeNode(r.v),a}function vO(e,n){let o=new kO,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,d=n(s),f=c+d;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=d),r=Math.max(r,o.node(s.w).in+=d)});let a=AO(i+r+3).map(()=>new CO),l=r+1;return o.nodes().forEach(s=>{ws(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function ws(e,n,o){o.out?o.in?e[o.out-o.in+n].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function AO(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let hm=Ft.Graph;var nt={addBorderNode:DO,addDummyNode:ym,applyWithChunking:Ji,asNonCompoundGraph:PO,buildLayerMatrix:BO,intersectRect:$O,mapValues:GO,maxRank:bm,normalizeRanks:VO,notime:UO,partition:LO,pick:jO,predecessorWeights:OO,range:km,removeEmptyRanks:RO,simplify:IO,successorWeights:TO,time:FO,uniqueId:wm,zipObject:ks};function ym(e,n,o,r){for(var i=r;e.hasNode(i);)i=wm(r);return o.dummy=n,e.setNode(i,o),i}function IO(e){let n=new hm().setGraph(e.graph());return e.nodes().forEach(o=>n.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=n.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);n.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),n}function PO(e){let n=new hm({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||n.setNode(o,e.node(o))}),e.edges().forEach(o=>{n.setEdge(o,e.edge(o))}),n}function TO(e){let n=e.nodes().map(o=>{let r={};return e.outEdges(o).forEach(i=>{r[i.w]=(r[i.w]||0)+e.edge(i).weight}),r});return ks(e.nodes(),n)}function OO(e){let n=e.nodes().map(o=>{let r={};return e.inEdges(o).forEach(i=>{r[i.v]=(r[i.v]||0)+e.edge(i).weight}),r});return ks(e.nodes(),n)}function $O(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,d;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,d=s):(i<0&&(l=-l),c=l,d=l*a/i),{x:o+c,y:r+d}}function BO(e){let n=km(bm(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(n[i][r.order]=o)}),n}function VO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Ji(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function RO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Ji(Math.min,n),r=[];e.nodes().forEach(l=>{let s=e.node(l).rank-o;r[s]||(r[s]=[]),r[s].push(l)});let i=0,a=e.graph().nodeRankFactor;Array.from(r).forEach((l,s)=>{l===void 0&&s%a!==0?--i:l!==void 0&&i&&l.forEach(c=>e.node(c).rank+=i)})}function DO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),ym(e,"border",i,n)}function MO(e,n=_m){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const _m=65535;function Ji(e,n){if(n.length>_m){const o=MO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function bm(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Ji(Math.max,o)}function LO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function FO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function UO(e,n){return n()}let KO=0;function wm(e){var n=++KO;return e+(""+n)}function km(e,n,o=1){n==null&&(n=e,e=0);let r=a=>a<n;o<0&&(r=a=>n<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function jO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function GO(e,n){let o=n;return typeof n=="string"&&(o=r=>r[n]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function ks(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let qO=EO,zO=nt.uniqueId;var HO={run:YO,undo:XO};function YO(e){(e.graph().acyclicer==="greedy"?qO(e,o(e)):WO(e)).forEach(r=>{let i=e.edge(r);e.removeEdge(r),i.forwardName=r.name,i.reversed=!0,e.setEdge(r.w,r.v,i,zO("rev"))});function o(r){return i=>r.edge(i).weight}}function WO(e){let n=[],o={},r={};function i(a){Object.hasOwn(r,a)||(r[a]=!0,o[a]=!0,e.outEdges(a).forEach(l=>{Object.hasOwn(o,l.w)?n.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),n}function XO(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.reversed){e.removeEdge(n);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(n.w,n.v,o,r)}})}let ZO=nt;var JO={run:QO,undo:t$};function QO(e){e.graph().dummyChains=[],e.edges().forEach(n=>e$(e,n))}function e$(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},d=ZO.addDummyNode(e,"edge",f,"_d"),r===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),e.setEdge(o,d,{weight:s.weight},l),u===0&&e.graph().dummyChains.push(d),o=d;e.setEdge(o,i,{weight:s.weight},l)}function t$(e){e.graph().dummyChains.forEach(n=>{let o=e.node(n),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(n)[0],e.removeNode(n),r.points.push({x:o.x,y:o.y}),o.dummy==="edge-label"&&(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height),n=i,o=e.node(n)})}const{applyWithChunking:n$}=nt;var Qi={longestPath:o$,slack:r$};function o$(e){var n={};function o(r){var i=e.node(r);if(Object.hasOwn(n,r))return i.rank;n[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=n$(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function r$(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var i$=Ft.Graph,ea=Qi.slack,Cm=a$;function a$(e){var n=new i$({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;l$(n,e)<r;)i=s$(n,e),a=n.hasNode(i.v)?ea(e,i):-ea(e,i),c$(n,e,a);return n}function l$(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!ea(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function s$(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=ea(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function c$(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var d$=Cm,Em=Qi.slack,u$=Qi.longestPath,f$=Ft.alg.preorder,p$=Ft.alg.postorder,m$=nt.simplify,g$=no;no.initLowLimValues=Es,no.initCutValues=Cs,no.calcCutValue=Nm,no.leaveEdge=Sm,no.enterEdge=vm,no.exchangeEdges=Am;function no(e){e=m$(e),u$(e);var n=d$(e);Es(n),Cs(n,e);for(var o,r;o=Sm(n);)r=vm(n,e,o),Am(n,e,o,r)}function Cs(e,n){var o=p$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>h$(e,n,r))}function h$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=Nm(e,n,o)}function Nm(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=n.edge(c).weight;if(s+=u?p:-p,_$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function Es(e,n){arguments.length<2&&(n=e.nodes()[0]),xm(e,{},1,n)}function xm(e,n,o,r,i){var a=o,l=e.node(r);return n[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(n,s)||(o=xm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function Sm(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function vm(e,n,o){var r=o.v,i=o.w;n.hasEdge(r,i)||(r=o.w,i=o.v);var a=e.node(r),l=e.node(i),s=a,c=!1;a.lim>l.lim&&(s=l,c=!0);var d=n.edges().filter(f=>c===Im(e,e.node(f.v),s)&&c!==Im(e,e.node(f.w),s));return d.reduce((f,u)=>Em(n,u)<Em(n,f)?u:f)}function Am(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),Es(e),Cs(e,n),y$(e,n)}function y$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=f$(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=n.edge(i,a),s=!1;l||(l=n.edge(a,i),s=!0),n.node(i).rank=n.node(a).rank+(s?l.minlen:-l.minlen)})}function _$(e,n,o){return e.hasEdge(n,o)}function Im(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var b$=Qi,Pm=b$.longestPath,w$=Cm,k$=g$,C$=E$;function E$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":Tm(e);break;case"tight-tree":x$(e);break;case"longest-path":N$(e);break;case"none":break;default:Tm(e)}}var N$=Pm;function x$(e){Pm(e),w$(e)}function Tm(e){k$(e)}var S$=v$;function v$(e){let n=I$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=A$(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,d=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(d=l[c])!==s&&e.node(d).maxRank<r.rank;)c++;d===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(d=l[c+1]).minRank<=r.rank;)c++;d=l[c]}e.setParent(o,d),o=e.successors(o)[0]}})}function A$(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function I$(e){let n={},o=0;function r(i){let a=o;e.children(i).forEach(r),n[i]={low:a,lim:o++}}return e.children().forEach(r),n}let ta=nt;var P$={run:T$,cleanup:B$};function T$(e){let n=ta.addDummyNode(e,"root",{},"_root"),o=O$(e),r=Object.values(o),i=ta.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=$$(e)+1;e.children().forEach(s=>Om(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Om(e,n,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==n&&e.setEdge(n,l,{weight:0,minlen:o});return}let c=ta.addBorderNode(e,"_bt"),d=ta.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Om(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,g=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,y=m!==g?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:y,nestingEdge:!0}),e.setEdge(g,d,{weight:_,minlen:y,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function O$(e){var n={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),n[r]=i}return e.children().forEach(r=>o(r,1)),n}function $$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function B$(e){var n=e.graph();e.removeNode(n.nestingRoot),delete n.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let V$=nt;var R$=D$;function D$(e){function n(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(n),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)$m(e,"borderLeft","_bl",o,i,a),$m(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function $m(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=V$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var M$={adjust:L$,undo:F$};function L$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Bm(e)}function F$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&U$(e),(n==="lr"||n==="rl")&&(K$(e),Bm(e))}function Bm(e){e.nodes().forEach(n=>Vm(e.node(n))),e.edges().forEach(n=>Vm(e.edge(n)))}function Vm(e){let n=e.width;e.width=e.height,e.height=n}function U$(e){e.nodes().forEach(n=>Ns(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Ns),Object.hasOwn(o,"y")&&Ns(o)})}function Ns(e){e.y=-e.y}function K$(e){e.nodes().forEach(n=>xs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(xs),Object.hasOwn(o,"x")&&xs(o)})}function xs(e){let n=e.x;e.x=e.y,e.y=n}let Rm=nt;var j$=G$;function G$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Rm.applyWithChunking(Math.max,r),a=Rm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let d=e.node(c);a[d.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,d)=>e.node(c).rank-e.node(d).rank).forEach(l),a}let q$=nt.zipObject;var z$=H$;function H$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=Y$(e,n[r-1],n[r]);return o}function Y$(e,n,o){let r=q$(o,o.map((d,f)=>f)),i=n.flatMap(d=>e.outEdges(d).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,u)=>f.pos-u.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(d=>{let f=d.pos+a;s[f]+=d.weight;let u=0;for(;f>0;)f%2&&(u+=s[f+1]),f=f-1>>1,s[f]+=d.weight;c+=d.weight*u}),c}var W$=X$;function X$(e,n=[]){return n.map(o=>{let r=e.inEdges(o);if(r.length){let i=r.reduce((a,l)=>{let s=e.edge(l),c=e.node(l.v);return{sum:a.sum+s.weight*c.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:o,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:o}})}let Z$=nt;var J$=Q$;function Q$(e,n){let o={};e.forEach((i,a)=>{let l=o[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(l.barycenter=i.barycenter,l.weight=i.weight)}),n.edges().forEach(i=>{let a=o[i.v],l=o[i.w];a!==void 0&&l!==void 0&&(l.indegree++,a.out.push(o[i.w]))});let r=Object.values(o).filter(i=>!i.indegree);return eB(r)}function eB(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&tB(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();n.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return n.filter(i=>!i.merged).map(i=>Z$.pick(i,["vs","i","barycenter","weight"]))}function tB(e,n){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),n.weight&&(o+=n.barycenter*n.weight,r+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}let nB=nt;var oB=rB;function rB(e,n){let o=nB.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,u)=>u.i-f.i),a=[],l=0,s=0,c=0;r.sort(iB(!!n)),c=Dm(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Dm(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Dm(e,n,o){let r;for(;n.length&&(r=n[n.length-1]).i<=o;)n.pop(),e.push(r.vs),o++;return o}function iB(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let aB=W$,lB=J$,sB=oB;var cB=Mm;function Mm(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=aB(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Mm(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&uB(p,m)}});let f=lB(d,o);dB(f,c);let u=sB(f,r);if(l&&(u.vs=[l,u.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(u,"barycenter")||(u.barycenter=0,u.weight=0),u.barycenter=(u.barycenter*u.weight+p.order+m.order)/(u.weight+2),u.weight+=2}return u}function dB(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function uB(e,n){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+n.barycenter*n.weight)/(e.weight+n.weight),e.weight+=n.weight):(e.barycenter=n.barycenter,e.weight=n.weight)}let fB=Ft.Graph,pB=nt;var mB=gB;function gB(e,n,o){let r=hB(e),i=new fB({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(a=>e.node(a));return e.nodes().forEach(a=>{let l=e.node(a),s=e.parent(a);(l.rank===n||l.minRank<=n&&n<=l.maxRank)&&(i.setNode(a),i.setParent(a,s||r),e[o](a).forEach(c=>{let d=c.v===a?c.w:c.v,f=i.edge(d,a),u=f!==void 0?f.weight:0;i.setEdge(d,a,{weight:e.edge(c).weight+u})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[n],borderRight:l.borderRight[n]}))}),i}function hB(e){for(var n;e.hasNode(n=pB.uniqueId("_root")););return n}var yB=_B;function _B(e,n,o){let r={},i;o.forEach(a=>{let l=e.parent(a),s,c;for(;l;){if(s=e.parent(l),s?(c=r[s],r[s]=l):(c=i,i=l),c&&c!==l){n.setEdge(c,l);return}l=s}})}let bB=j$,wB=z$,kB=cB,CB=mB,EB=yB,NB=Ft.Graph,na=nt;var xB=Lm;function Lm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Lm);return}let o=na.maxRank(e),r=Fm(e,na.range(1,o+1),"inEdges"),i=Fm(e,na.range(o-1,-1,-1),"outEdges"),a=bB(e);if(Um(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){SB(c%2?r:i,c%4>=2),a=na.buildLayerMatrix(e);let f=wB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Um(e,s)}function Fm(e,n,o){return n.map(function(r){return CB(e,r,o)})}function SB(e,n){let o=new NB;e.forEach(function(r){let i=r.graph().root,a=kB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),EB(r,o,a.vs)})}function Um(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let vB=Ft.Graph,cn=nt;var AB={positionX:LB};function IB(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,d=a[a.length-1];return a.forEach((f,u)=>{let p=TB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(g=>{e.predecessors(g).forEach(_=>{let y=e.node(_),h=y.order;(h<l||m<h)&&!(y.dummy&&e.node(g).dummy)&&Km(o,_,g)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function PB(e,n){let o={};function r(a,l,s,c,d){let f;cn.range(l,s).forEach(u=>{f=a[u],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>d)&&Km(o,p,f)})})}function i(a,l){let s=-1,c,d=0;return l.forEach((f,u)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,d,u,s,c),d=u,s=c)}r(l,d,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function TB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function Km(e,n,o){if(n>o){let i=n;n=o,o=i}let r=e[n];r||(e[n]=r={}),r[o]=!0}function OB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function $B(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let g=f[p];a[d]===d&&c<l[g]&&!OB(o,d,g)&&(a[g]=d,a[d]=i[d]=i[g],c=l[g])}}})}),{root:i,align:a}}function BB(e,n,o,r,i){let a={},l=VB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),g=m.pop(),_={};for(;g;)_[g]?u(g):(_[g]=!0,m.push(g),m=m.concat(p(g))),g=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((g,_)=>Math.min(g,a[_.w]-l.edge(_)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function VB(e,n,o,r){let i=new vB,a=e.graph(),l=FB(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(d=>{let f=o[d];if(i.setNode(f),c){var u=o[c],p=i.edge(u,f);i.setEdge(u,f,Math.max(l(e,d,c),p||0))}c=d})}),i}function RB(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=UB(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function DB(e,n){let o=Object.values(n),r=cn.applyWithChunking(Math.min,o),i=cn.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-cn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-cn.applyWithChunking(Math.max,d)),f&&(e[s]=cn.mapValues(c,u=>u+f))})})}function MB(e,n){return cn.mapValues(e.ul,(o,r)=>{if(n)return e[n.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function LB(e){let n=cn.buildLayerMatrix(e),o=Object.assign(IB(e,n),PB(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(u=>Object.values(u).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),d=$B(e,i,o,c),f=BB(e,i,d.root,d.align,s==="r");s==="r"&&(f=cn.mapValues(f,u=>-u)),r[l+s]=f})});let a=RB(e,r);return DB(r,a),MB(r,e.graph().align)}function FB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?n:e)/2,c+=(s.dummy?n:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function UB(e,n){return e.node(n).width}let jm=nt,KB=AB.positionX;var jB=GB;function GB(e){e=jm.asNonCompoundGraph(e),qB(e),Object.entries(KB(e)).forEach(([n,o])=>e.node(n).x=o)}function qB(e){let n=jm.buildLayerMatrix(e),o=e.graph().ranksep,r=0;n.forEach(i=>{const a=i.reduce((l,s)=>{const c=e.node(s).height;return l>c?l:c},0);i.forEach(l=>e.node(l).y=r+a/2),r+=a+o})}let Gm=HO,qm=JO,zB=C$,HB=nt.normalizeRanks,YB=S$,WB=nt.removeEmptyRanks,zm=P$,XB=R$,Hm=M$,ZB=xB,JB=jB,$t=nt,QB=Ft.Graph;var eV=tV;function tV(e,n){let o=n&&n.debugTiming?$t.time:$t.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>uV(e));o(" runLayout",()=>nV(r,o,n)),o(" updateInputGraph",()=>oV(e,r))})}function nV(e,n,o){n(" makeSpaceForEdgeLabels",()=>fV(e)),n(" removeSelfEdges",()=>kV(e)),n(" acyclic",()=>Gm.run(e)),n(" nestingGraph.run",()=>zm.run(e)),n(" rank",()=>zB($t.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>pV(e)),n(" removeEmptyRanks",()=>WB(e)),n(" nestingGraph.cleanup",()=>zm.cleanup(e)),n(" normalizeRanks",()=>HB(e)),n(" assignRankMinMax",()=>mV(e)),n(" removeEdgeLabelProxies",()=>gV(e)),n(" normalize.run",()=>qm.run(e)),n(" parentDummyChains",()=>YB(e)),n(" addBorderSegments",()=>XB(e)),n(" order",()=>ZB(e,o)),n(" insertSelfEdges",()=>CV(e)),n(" adjustCoordinateSystem",()=>Hm.adjust(e)),n(" position",()=>JB(e)),n(" positionSelfEdges",()=>EV(e)),n(" removeBorderNodes",()=>wV(e)),n(" normalize.undo",()=>qm.undo(e)),n(" fixupEdgeLabelCoords",()=>_V(e)),n(" undoCoordinateSystem",()=>Hm.undo(e)),n(" translateGraph",()=>hV(e)),n(" assignNodeIntersects",()=>yV(e)),n(" reversePoints",()=>bV(e)),n(" acyclic.undo",()=>Gm.undo(e))}function oV(e,n){e.nodes().forEach(o=>{let r=e.node(o),i=n.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,n.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=n.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=n.graph().width,e.graph().height=n.graph().height}let rV=["nodesep","edgesep","ranksep","marginx","marginy"],iV={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},aV=["acyclicer","ranker","rankdir","align"],lV=["width","height","rank"],Ym={width:0,height:0},sV=["minlen","weight","width","height","labeloffset"],cV={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},dV=["labelpos"];function uV(e){let n=new QB({multigraph:!0,compound:!0}),o=vs(e.graph());return n.setGraph(Object.assign({},iV,Ss(o,rV),$t.pick(o,aV))),e.nodes().forEach(r=>{let i=vs(e.node(r));const a=Ss(i,lV);Object.keys(Ym).forEach(l=>{a[l]===void 0&&(a[l]=Ym[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=vs(e.edge(r));n.setEdge(r,Object.assign({},cV,Ss(i,sV),$t.pick(i,dV)))}),n}function fV(e){let n=e.graph();n.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function pV(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.width&&o.height){let r=e.node(n.v),a={rank:(e.node(n.w).rank-r.rank)/2+r.rank,e:n};$t.addDummyNode(e,"edge-proxy",a,"_ep")}})}function mV(e){let n=0;e.nodes().forEach(o=>{let r=e.node(o);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,n=Math.max(n,r.maxRank))}),e.graph().maxRank=n}function gV(e){e.nodes().forEach(n=>{let o=e.node(n);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(n))})}function hV(e){let n=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(d){let f=d.x,u=d.y,p=d.width,m=d.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,u-m/2),i=Math.max(i,u+m/2)}e.nodes().forEach(d=>c(e.node(d))),e.edges().forEach(d=>{let f=e.edge(d);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=n,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=n,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function yV(e){e.edges().forEach(n=>{let o=e.edge(n),r=e.node(n.v),i=e.node(n.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift($t.intersectRect(r,a)),o.points.push($t.intersectRect(i,l))})}function _V(e){e.edges().forEach(n=>{let o=e.edge(n);if(Object.hasOwn(o,"x"))switch((o.labelpos==="l"||o.labelpos==="r")&&(o.width-=o.labeloffset),o.labelpos){case"l":o.x-=o.width/2+o.labeloffset;break;case"r":o.x+=o.width/2+o.labeloffset;break}})}function bV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function wV(e){e.nodes().forEach(n=>{if(e.children(n).length){let o=e.node(n),r=e.node(o.borderTop),i=e.node(o.borderBottom),a=e.node(o.borderLeft[o.borderLeft.length-1]),l=e.node(o.borderRight[o.borderRight.length-1]);o.width=Math.abs(l.x-a.x),o.height=Math.abs(i.y-r.y),o.x=a.x+o.width/2,o.y=r.y+o.height/2}}),e.nodes().forEach(n=>{e.node(n).dummy==="border"&&e.removeNode(n)})}function kV(e){e.edges().forEach(n=>{if(n.v===n.w){var o=e.node(n.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:n,label:e.edge(n)}),e.removeEdge(n)}})}function CV(e){var n=$t.buildLayerMatrix(e);n.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{$t.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function EV(e){e.nodes().forEach(n=>{var o=e.node(n);if(o.dummy==="selfedge"){var r=e.node(o.e.v),i=r.x+r.width/2,a=r.y,l=o.x-i,s=r.height/2;e.setEdge(o.e,o.label),e.removeNode(n),o.label.points=[{x:i+2*l/3,y:a-s},{x:i+5*l/6,y:a-s},{x:i+l,y:a},{x:i+5*l/6,y:a+s},{x:i+2*l/3,y:a+s}],o.label.x=o.x,o.label.y=o.y}})}function Ss(e,n){return $t.mapValues($t.pick(e,n),Number)}function vs(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let NV=nt,xV=Ft.Graph;var SV={debugOrdering:vV};function vV(e){let n=NV.buildLayerMatrix(e),o=new xV({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(r=>{o.setNode(r,{label:r}),o.setParent(r,"layer"+e.node(r).rank)}),e.edges().forEach(r=>o.setEdge(r.v,r.w,{},r.name)),n.forEach((r,i)=>{let a="layer"+i;o.setNode(a,{rank:"same"}),r.reduce((l,s)=>(o.setEdge(l,s,{style:"invis"}),s))}),o}var AV="1.1.5",IV={graphlib:Ft,layout:eV,debug:SV,util:{time:nt.time,notime:nt.notime},version:AV};const Wm=vT(IV);function PV(e){const{branchLayout:n,phase:o,layoutOptions:r,nodes:i,edges:a}=e,{findNode:l}=Re(),{state:s,branchGroups:c,getNodeById:d,moveNode:f,commit:u}=Ye(),{getNodeDepth:p,isGroupId:m,groupsByOwner:g}=c,{isBranchEdgeId:_,updateGroupLayout:y,translateGroupTree:h,waitForLayoutFlush:k}=n,{viewport:b,padding:E=Nn.padding,gaps:N=Nn.gaps}=r,{nodes:C=Nn.gaps.nodes,edges:x=Nn.gaps.edges,ranks:I=Nn.gaps.ranks}=N;async function A(w=!0){const M=new Map(i.value.map(K=>[K.id,K.data])),S=new Map,F=new Map,O=K=>{if(!K)return;let q=F.get(K);return q||(q=l(K),q&&F.set(K,q),q)},j=new Map,X=K=>{let q=j.get(K);return q!==void 0||(q=p(K),j.set(K,q)),q},L=K=>{if(!or(K.data))return K.parentNode;const q=O(K.data.ownerId);if(!q)throw new Error(`Cannot find owner node '${K.data.ownerId}' for group node '${K.id}' via findNode`);return q.parentNode};for(const K of a.value){if(_(K.id))continue;const q=K.source,se=K.target;if(m(q)||m(se))continue;const me=O(q),ge=O(se);if(me){if(!ge)throw new Error(`Cannot find target node '${se}' for edge '${K.id}' via findNode`)}else throw new Error(`Cannot find source node '${q}' for edge '${K.id}' via findNode`);if(L(me)===L(ge))continue;let ie=me,W=ge,ae=X(ie.id),de=X(W.id);for(;ae!==de;)if(ae>de){const $=L(ie);if(!$)throw new Error(`Expected node '${ie.id}' to have parent, but it does not`);const T=O($);if(!T)throw new Error(`Cannot find parent node '${$}' for node '${ie.id}' via findNode`);ie=T,ae--}else if(de>ae){const $=L(W);if(!$)throw new Error(`Expected node '${W.id}' to have parent, but it does not`);const T=O($);if(!T)throw new Error(`Cannot find parent node '${$}' for node '${W.id}' via findNode`);W=T,de--}for(;ae>=0;){const $=L(ie),T=L(W);if($===T){S.has(ae)||S.set(ae,[]),S.get(ae).push({v:ie.id,w:W.id});break}if($){if(!T){const re=`Expected node '${W.id}' to have parent, but it does not`;throw console.error(re,W),new Error(re)}}else{const re=`Expected node '${ie.id}' to have parent, but it does not`;throw console.error(re,ie),new Error(re)}const R=O($),D=O(T);if(R){if(!D)throw new Error(`Cannot find parent node '${T}' for node '${W.id}' via findNode`)}else throw new Error(`Cannot find parent node '${$}' for node '${ie.id}' via findNode`);ie=R,W=D,ae--,de--}}const U=s.value.groups.toSorted((K,q)=>X(q.ownerId)-X(K.ownerId));for(const K of U)B(K.memberIds.reduce((q,se)=>{const me=d(se);if(!me)return console.warn(`Cannot find node '${se}' of group '${K.id}' by getNodeById`),q;if(me.phase!==o)return q;if(me.type==="branch"){const ge=g.value.get(me.id);ge&&q.push(...ge)}return M.delete(me.id),q.push(me),q},[]),{virtualEdges:S.get(X(K.ownerId)),cachedFindNode:O}),await t.nextTick(),y(K.id,!1),await k();const P=M.values().toArray();for(const K of P){if(or(K)||K.type!=="branch")continue;const q=g.value.get(K.id);q&&P.push(...q)}const{autoNodes:V,leftNode:G,rightNode:Z}=v(P);B(V,{leftNode:G,rightNode:Z,virtualEdges:S.get(0),cachedFindNode:O}),w&&u()}function B(w,M){var ie,W,ae,de,$;const{leftNode:S,rightNode:F,virtualEdges:O,cachedFindNode:j}=M||{},X=S?(j??l)(S.id):void 0,L=F?(j??l)(F.id):void 0;let U;if(w.length>0){U=new Wm.graphlib.Graph({multigraph:!0}),U.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:C,edgesep:x,ranksep:I});const T=new Set;for(const R of w){const D=(j??l)(R.id);if(!D){console.warn(`Cannot find graph node '${R.id}' in ${o} phase`);continue}T.add(R.id),or(R)?U.setNode(R.id,R.dimensions??D.dimensions):U.setNode(R.id,D.dimensions)}for(const R of a.value)!T.has(R.source)||!T.has(R.target)||U.setEdge(R.source,R.target,{points:[]});O==null||O.forEach(R=>U.setEdge(R,{points:[]})),Wm.layout(U)}const P=[],V=T=>({x:T.x-T.width/2,y:T.y-T.height/2,width:T.width,height:T.height});if(w.length>0){if(!U)throw new Error("Expected dagreGraph to be initialized");for(const T of w){const R=U.node(T.id),D=V(R);P.push(D),or(T)?h(T.id,D,D.x+Oo,D.y+Oo):f(T.id,{x:D.x,y:D.y},!1)}}const G=P.length>0?nm(P):{x:0,y:0,width:0,height:0},Z=G.width,K=G.height,q=G.x,se=G.x+G.width,me=Math.max(0,Math.min(t.toValue(b==null?void 0:b.width)??Number.POSITIVE_INFINITY,ET)-Z-2*C-(((ie=X==null?void 0:X.dimensions)==null?void 0:ie.width)??0)-(((W=L==null?void 0:L.dimensions)==null?void 0:W.width)??0)-2*E),ge=G.y+K/2;S&&f(S.id,{x:q-C-me/2-(((ae=X==null?void 0:X.dimensions)==null?void 0:ae.width)??0),y:ge-(((de=X==null?void 0:X.dimensions)==null?void 0:de.height)??0)/2},!1),F&&f(F.id,{x:se+C+me/2,y:ge-((($=L==null?void 0:L.dimensions)==null?void 0:$.height)??0)/2},!1)}function v(w){let M,S;const F=[];for(const O of w){if(or(O)){F.push(O);continue}switch(O.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(M)throw new Error("Duplicated request node in request phase");M=O;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(S)throw new Error("Duplicated service_request node in request phase");S=O;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(S)throw new Error("Duplicated service_response node in response phase");S=O;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(M)throw new Error("Duplicated response node in response phase");M=O;break}default:{F.push(O);break}}}return{autoNodes:F,leftNode:M,rightNode:S}}return{autoLayout:A}}function TV({phase:e,groupMapById:n,getNodeDepth:o,canAddMember:r,draggingId:i}){const a=t.shallowRef(),l=t.shallowRef();function s(u){a.value=u,l.value=void 0}function c(){a.value&&(a.value=void 0,l.value=void 0)}function d(u){let p;const m=i==null?void 0:i.value;return n.value.forEach(g=>{if(g.phase!==e||m&&Cl(m)&&!r(g.ownerId,g.branch,m))return;const _=g.position,y=g.dimensions;if(!_||!y||!(u.x>=_.x&&u.x<=_.x+y.width&&u.y>=_.y&&u.y<=_.y+y.height))return;const k=o(g.ownerId);(!p||k>p.depth)&&(p={depth:k,id:g.id})}),p==null?void 0:p.id}function f(u){if(!a.value){l.value=void 0;return}if(!u){l.value=void 0;return}l.value=d(u)}return{activeGroupId:l,start:s,updateActiveGroup:f,end:c}}function OV({phase:e,readonly:n,flowId:o,draggingId:r}){const{findNode:i}=Re(o),a=Ye(),{state:l,groupMapById:s,getNodeById:c,moveNode:d,moveGroup:f,setGroupLayout:u,commit:p,branchGroups:m}=a,{memberGroupMap:g,groupsByOwner:_,getNodeDepth:y,getGroupDepth:h}=m,k=L=>!!L&&L.startsWith("branch:");function b(L){const U=[];for(const P of L.memberIds){const V=c(P);V&&U.push(V)}return U}const E=t.computed(()=>{const L=new Map;return g.value.forEach((U,P)=>{if(U.phase!==e||!U.position)return;const V=c(P);V&&(V.phase!==e||V.hidden||L.set(P,U))}),L}),N=t.computed(()=>{const L=new Map;return _.value.forEach((U,P)=>{const V=U.filter(G=>G.phase===e);V.length>0&&L.set(P,V)}),L}),C=t.computed(()=>{const L=[];for(const U of l.value.groups){const P=c(U.ownerId);if(!P||P.phase!==e)continue;const V=U.position,G=U.dimensions;if(!V||!G)continue;const Z=b(U).filter(q=>q.phase===e&&!q.hidden),K=h(U.id);L.push({id:U.id,type:"group",position:V,width:G.width,height:G.height,data:{...U,memberIds:Z.map(q=>q.id)},draggable:!n,selectable:!1,zIndex:K*Yi+bT})}return L}),x=t.computed(()=>{let L=0;for(const U of l.value.groups){if(U.phase!==e)continue;const P=h(U.id);P>L&&(L=P)}return L}),I=t.computed(()=>{const L=[];for(const U of l.value.groups){if(U.phase!==e||!U.position||!U.dimensions)continue;const P=c(U.ownerId);if(!P||P.phase!==e||P.hidden||!b(U).filter(K=>K.phase===e&&!K.hidden).length)continue;const G=Math.max(y(P.id),h(U.id))+x.value+1,Z={id:`branch:${U.id}`,source:P.id,target:U.id,sourceHandle:`branch@${U.branch}`,targetHandle:"input",markerEnd:hr.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:P.id,branch:U.branch,groupId:U.id},zIndex:G*Yi+kT};L.push(Z)}return L}),A=new Map,B=new Map;let v;function w(L,U=!0){if(L.phase!==e)return;const P=b(L).filter(q=>q.phase===e&&!q.hidden);if(!P.length)return;const V=[];for(const q of P){const se=i(q.id),me=se==null?void 0:se.dimensions,ge=(me==null?void 0:me.width)??0,ie=(me==null?void 0:me.height)??0;if(ge<=0||ie<=0)return;V.push({...q.position,width:ge,height:ie});const W=_.value.get(q.id)??[];for(const ae of W){if(ae.phase!==e)continue;const de=A.get(ae.id),$=(de==null?void 0:de.position)??ae.position,T=(de==null?void 0:de.dimensions)??ae.dimensions;!$||!T||V.push({x:$.x,y:$.y,width:T.width,height:T.height})}}const G=nm(V),Z=G.width+Oo*2,K=G.height+Oo*2;return{position:{x:Math.round(G.x-Oo),y:Math.round(G.y-Oo)},dimensions:{width:Math.round(Z),height:Math.round(K)},commit:U}}function M(){if(A.size===0){v=void 0;return}const L=[];let U=!1;A.forEach((P,V)=>{const G=u(V,P,!1);L.push({id:V,changed:G,commit:P.commit}),P.commit&&G&&!U&&(U=!0)}),A.clear(),v=void 0;for(const{id:P,changed:V,commit:G}of L){if(!V)continue;const Z=s.value.get(P);if(!Z)continue;const K=E.value.get(Z.ownerId);K&&B.set(K.id,{commit:G})}if(B.size>0){const P=Array.from(B);B.clear();for(const[V,{commit:G}]of P)F(V,G)}U&&p("*")}function S(){A.size!==0&&(v||(v=t.nextTick().then(M)))}function F(L,U=!0){const P=s.value.get(L);if(!P)return;const V=w(P,U);V&&(A.set(L,V),S())}function O(L,U,P,V){const G=s.value.get(L);if(!G)return;if(!G.position){f(L,U,!1),F(L);return}if(P===0&&V===0){f(L,U,!1);return}f(L,U,!1);const Z=[L],K=new Set([L]),q=new Set;for(;Z.length;){const se=Z.shift(),me=s.value.get(se);if(!me)continue;const ge=b(me).filter(ie=>ie.phase===e&&!ie.hidden);for(const ie of ge){q.has(ie.id)||(d(ie.id,{x:ie.position.x+P,y:ie.position.y+V},!1),q.add(ie.id));const W=N.value.get(ie.id)??[];for(const ae of W){if(K.has(ae.id))continue;const de=s.value.get(ae.id);de!=null&&de.position&&f(ae.id,{x:de.position.x+P,y:de.position.y+V},!1),K.add(ae.id),Z.push(ae.id)}}}}function j(L,U){const P=r==null?void 0:r.value;if(!P)return!1;if(P===L||U.some(V=>P===V))return!0;for(const V of U){const G=N.value.get(V)??[];if(G!=null&&G.some(Z=>Z.id===P))return!0}return!1}const X=new Map;return t.watch(()=>l.value.groups.filter(U=>U.phase===e).map(U=>{const P=U.memberIds.map(V=>{var q,se;const G=i(V),Z=Math.round(((q=G==null?void 0:G.dimensions)==null?void 0:q.width)??0),K=Math.round(((se=G==null?void 0:G.dimensions)==null?void 0:se.height)??0);return`${V}:${Z}x${K}`});return{id:U.id,memberIds:U.memberIds,signature:P.join(",")}}),L=>{const U=new Set(L.map(P=>P.id));for(const P of X.keys())U.has(P)||X.delete(P);for(const P of L)j(P.id,P.memberIds)||X.get(P.id)===P.signature||(X.set(P.id,P.signature),F(P.id))},{deep:!0,flush:"post"}),{groupsByOwner:N,memberGroupMap:E,groupNodes:C,branchEdges:I,isBranchEdgeId:k,updateGroupLayout:F,translateGroupTree:O,getNodeDepth:y,maxGroupDepth:x,waitForLayoutFlush:()=>v??Promise.resolve()}}function $V(e){t.provide(em,e)}function Xm(){return t.inject(em,void 0)}function Zm(){const e=Xm();if(!e)throw new Error("Confirm modal not provided");return e}function BV(e){const{readonly:n,flowId:o}=e,r=Re(o),{onNodesChange:i,onEdgesChange:a,onPaneClick:l,findEdge:s}=r,{disconnectEdge:c,commit:d,portalSelection:f,selectPortalEdge:u}=Ye();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&u(void 0)}),a(p=>{const m=p.some(_=>_.type==="select"&&"selected"in _&&_.selected),g=f.value?p.some(_=>_.type==="remove"&&_.id===f.value):!1;(m||g)&&u(void 0)}),l(()=>u(void 0)),He.useEventListener("keydown",p=>{if(n||p.key!=="Delete"&&p.key!=="Backspace")return;const m=f.value;!m||s(m)||(p.preventDefault(),c(m,!1),u(void 0),d())})}function Jm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const VV={default:t1,hover:o1,selected:n1};let Qm,As;function oa(e){const n=e.id===Qm?"selected":e.id===As?"hover":"default",o=VV[n],{markerEnd:r}=e,i=typeof r=="object"?{...r,color:o}:{type:r,color:o},a=e.zIndex??0,l=n==="selected"?a+2:n==="hover"?a+1:a;return{...e,style:{...e.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[RV,DV]=He.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Nn.padding,gaps:s=Nn.gaps}=r,{nodes:c=Nn.gaps.nodes}=s,d=Re(o),f=Ye(),u=Xm(),p=Ja(),{i18n:{t:m}}=$e(),{findNode:g,fitView:_,deleteKeyCode:y,onNodeDrag:h,onNodeDragStop:k,onConnect:b,onNodesChange:E,onEdgesChange:N,onEdgeUpdate:C,onEdgeMouseEnter:x,onEdgeMouseLeave:I,getNodes:A,setNodes:B,setEdges:v,addSelectedNodes:w,screenToFlowCoordinate:M}=d;y.value=["Delete","Backspace"];const{state:S,commit:F,moveNode:O,selectNode:j,removeNode:X,getNodeById:L,connectEdge:U,disconnectEdge:P,getInEdgesByNodeId:V,branchGroups:G,commit:Z,reset:K,groupMapById:q}=f,{isGroupId:se,canAddMember:me}=G,ge=t.shallowRef(),ie=ue=>{ge.value=ue},W=t.readonly(ge);function ae(ue,ye){const Ce=L(ue.source),ke=L(ue.target);return!!(Ce&&ke&&Ce.phase===ye&&ke.phase===ye)}const de=OV({phase:n,readonly:i,flowId:o,draggingId:W}),{memberGroupMap:$,groupNodes:T,branchEdges:R,isBranchEdgeId:D,updateGroupLayout:re,translateGroupTree:ee,getNodeDepth:J,maxGroupDepth:z}=de,{activeGroupId:le,start:H,updateActiveGroup:Y,end:te}=TV({phase:n,groupMapById:q,getNodeDepth:J,canAddMember:me,draggingId:W}),ce=t.computed(()=>S.value.nodes.filter(ue=>ue.phase===n&&!ue.hidden).map(ue=>{const ye=$.value.get(ue.id),Ce=ye==null?void 0:ye.position,ke=ye==null?void 0:ye.dimensions,we=ye&&Ce&&ke?{x:ue.position.x-Ce.x,y:ue.position.y-Ce.y}:ue.position,xe=J(ue.id),Te=!!(ye&&Ce&&ke),ze=(Te?xe:0)+z.value+1;return{id:ue.id,type:"flow",position:we,data:ue,deletable:!kl(ue),parentNode:Te?ye.id:void 0,zIndex:ze*Yi+CT}})),be=t.computed(()=>S.value.edges.filter(ue=>ae(ue,n)).filter(ue=>!G.isEdgeEnteringGroup(ue.source,ue.target)).filter(ue=>{const ye=L(ue.source),Ce=L(ue.target);return!(ye!=null&&ye.hidden)&&!(Ce!=null&&Ce.hidden)}).map(ue=>{const ye=L(ue.source),Ce=L(ue.target);if(!ye||!Ce){const we=[];throw ye||we.push(`source node "${ue.source}"`),Ce||we.push(`target node "${ue.target}"`),new Error(`Missing ${we.join(" and ")} for edge "${ue.id}" in phase "${n}"`)}const ke=Math.max(J(ue.source),J(ue.target))+z.value+1;return oa({id:ue.id,source:ue.source,target:ue.target,sourceHandle:ue.sourceField?`outputs@${ue.sourceField}`:"output",targetHandle:ue.targetField?`inputs@${ue.targetField}`:"input",markerEnd:hr.ArrowClosed,data:ue,updatable:!i,zIndex:ke*Yi+wT})})),ne=t.computed(()=>[...R.value,...be.value]),{autoLayout:_e}=PV({phase:n,layoutOptions:r,branchLayout:de,nodes:ce,edges:ne});BV({readonly:i,flowId:o}),t.watch([ce,T,ne],([ue,ye,Ce])=>{B([...ye,...ue]),v(Ce)},{immediate:!0});const Ne=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function pe({source:ue,sourceHandle:ye,target:Ce,targetHandle:ke}){if(!ye||!ke)return;const we=Jm(ye),xe=Jm(ke);if((we==null?void 0:we.io)==="input"||(xe==null?void 0:xe.io)==="output"||ye==="output"&&ke==="output")return;const Te=V(Ce);let ze=!1,Ge=!1;const Fe=[],We=[],qe=(xe==null?void 0:xe.io)==="input"?Te.filter(ot=>!ot.targetField):Te.filter(ot=>!!ot.targetField);qe.length>0&&(ze=!0,qe.forEach(ot=>{We.push(Sr(ot,L)),P(ot.id,!1)}));const pt=(xe==null?void 0:xe.io)==="input"?xe!=null&&xe.field?Te.filter(ot=>ot.targetField===xe.field):Te.filter(ot=>!!ot.targetField):Te.filter(ot=>!ot.targetField);if(pt.length>0){if(pt.some(Bt=>Bt.source===ue&&Bt.target===Ce&&Bt.targetField===(xe==null?void 0:xe.field)&&Bt.sourceField===(we==null?void 0:we.field)))return;Ge=!0,pt.forEach(Bt=>{We.push(Sr(Bt,L)),P(Bt.id,!1)})}if(!U({source:ue,sourceField:we==null?void 0:we.field,target:Ce,targetField:xe==null?void 0:xe.field},!1)){K(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Fe.push(gs(ue,we==null?void 0:we.field,Ce,xe==null?void 0:xe.field,L)),ze||Ge){if(!u)throw K(),new Error("Expected confirm modal to be provided here when reachable");if(!await u(m(ze?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Fe,We)){K();return}}Z()}b(pe);let fe=!1;const je=()=>{fe&&(fe=!1,Z())};E(ue=>{ue.filter(ke=>ke.type==="select").filter(ke=>!se(ke.id)).sort((ke,we)=>ke.selected===we.selected?0:ke.selected?1:-1).forEach(ke=>{j(ke.selected?ke.id:void 0)});let Ce=!1;ue.forEach(ke=>{if(ke.type==="remove"){if(se(ke.id))return;Ce=!0,X(ke.id,!1)}}),Ce&&!fe&&(fe=!0,queueMicrotask(je))}),h(({node:ue,event:ye})=>{var Te,ze,Ge;if(!ue)return;if(se(ue.id)){const Fe=ue.id;ie(Fe),Y(void 0);const We=q.value.get(Fe);if(!We)return;const qe=We.position??{...ue.position},pt=ue.position.x-qe.x,Ir=ue.position.y-qe.y;ee(Fe,ue.position,pt,Ir);const ot=$.value.get(We.ownerId);ot&&re(ot.id,!1);return}const Ce=ue.id;H("canvas"),ie(Ce);const ke=ue.parentNode;let we={...ue.position};if(ke&&se(ke)){const Fe=q.value.get(ke);Fe!=null&&Fe.position&&(we={x:Fe.position.x+ue.position.x,y:Fe.position.y+ue.position.y})}if(O(Ce,we,!1),!kl(L(Ce))){const Fe={x:we.x,y:we.y,width:((Te=ue.dimensions)==null?void 0:Te.width)??0,height:((ze=ue.dimensions)==null?void 0:ze.height)??0},We=ye&&"clientX"in ye?M({x:ye.clientX,y:ye.clientY}):void 0,qe={x:Fe.x+Fe.width/2,y:Fe.y+Fe.height/2};Y(We??qe)}const xe=ke&&se(ke)?ke:(Ge=$.value.get(Ce))==null?void 0:Ge.id;xe&&re(xe,!1)}),k(({node:ue})=>{var xe;if(!ue)return;if(ie(void 0),se(ue.id)){F();return}const ye=ue.id,Ce=ue.parentNode;let ke={...ue.position};if(Ce&&se(Ce)){const Te=q.value.get(Ce);Te!=null&&Te.position&&(ke={x:Te.position.x+ue.position.x,y:Te.position.y+ue.position.y})}O(ye,ke,!1);const we=Ce&&se(Ce)?Ce:(xe=$.value.get(ye))==null?void 0:xe.id;we&&re(we,!1),fn(ye),te(),F()}),N(ue=>{ue.filter(ke=>ke.type==="select").sort((ke,we)=>ke.selected===we.selected?0:ke.selected?1:-1).forEach(ke=>{D(ke.id)||(Qm=ke.selected?ke.id:void 0,v(we=>we.map(xe=>xe.id!==ke.id||!xe.markerEnd?xe:oa({...xe,zIndex:ke.selected?1:void 0}))))});let Ce=!1;ue.forEach(ke=>{if(ke.type==="remove"){if(D(ke.id))return;Ce=!0,P(ke.id,!1)}}),Ce&&!fe&&(fe=!0,queueMicrotask(je))}),x(({edge:ue})=>{D(ue.id)||(As=ue.id,v(ye=>ye.map(Ce=>Ce.id!==ue.id?Ce:oa(Ce))))}),I(({edge:ue})=>{D(ue.id)||(As=void 0,v(ye=>ye.map(Ce=>Ce.id!==ue.id?Ce:oa(Ce))))}),C(({edge:ue,connection:ye})=>{D(ue.id)||(P(ue.id,!1),pe(ye))});function lt(ue){_({...Ne.value,...ue})}async function ht(ue){return j(ue),new Promise(ye=>setTimeout(()=>{const Ce=g(ue);w(Ce?[Ce]:[]),ye()},0))}function Wt(ue){const ye=A.value.filter(({type:qe})=>qe!=="group"),Ce=ye.find(({id:qe})=>qe===ue);if(!Ce)throw new Error(`Node ${ue} not found`);const{x:ke,y:we}=Ce.data.position,{width:xe,height:Te}=Ce.dimensions,ze=we,Ge=we+Te,Fe=ye.filter(({id:qe})=>qe!==ue).filter(({data:{position:{y:qe}},dimensions:{height:pt}})=>qe<Ge&&qe+pt>ze).map(({data:{position:{x:qe}},dimensions:{width:pt}})=>({left:qe,right:qe+pt})).sort((qe,pt)=>qe.left-pt.left);let We=ke+xe+c;for(const{left:qe,right:pt}of Fe)if(!(pt<=We)){if(We+xe<=qe)return{x:We,y:ze};We=Math.max(We,pt)+c}return{x:We,y:ze}}function Sn(ue){if(!ue)return;const ye=g(ue);if(!ye)throw new Error(`Node ${ue} not found`);const{position:{x:Ce},dimensions:{width:ke}}=ye,we=Ce+ke,{viewport:xe,dimensions:Te,setViewport:ze}=d,{x:Ge,y:Fe,zoom:We}=xe.value,{width:qe}=Te.value,pt=Ce*We+Ge,Ir=we*We+Ge,ot=qe-Qp-c;if(Ir<=ot)return;let Bt=ot-Ir;pt+Bt<0&&(Bt=-pt),Bt!==0&&ze({x:Ge+Bt,y:Fe,zoom:We},{duration:ST})}function fn(ue){if(!le.value)return!1;const{nodeId:ye,branch:Ce}=_1(le.value),ke=G.addMember(ye,Ce,ue,{commit:!1});return Y(void 0),ke}return{vueFlowStore:d,editorStore:f,readonly:i,nodes:ce,edges:ne,selectNode:ht,autoLayout:_e,placeToRight:Wt,scrollRightToReveal:Sn,fitViewParams:Ne,fitView:lt,groupDrop:{activeGroupId:le,startPanelDrag:()=>H("panel"),endPanelDrag:te,updateActiveGroup:Y,attachNodeToActiveGroup:fn}}});let Bo=null;function MV(){var n;if(Bo)return Bo;if(typeof navigator>"u")return Bo="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?Bo="mac":/Linux/i.test(e)&&!/Android/i.test(e)?Bo="linux":Bo="windows"}const LV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},FV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Win",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Spacebar",Delete:"Delete"},UV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function KV(e,n={}){const o=n.platform??MV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?LV:o==="linux"?UV:FV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const jV={key:0,class:"label"},GV={class:"keys"},ra=Ae(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=KV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",jV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",GV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),qV=["onClick"],zV={key:0,class:"additional-count"},eg=24,HV=16,ia=Ae(t.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(e){const n=Number.parseFloat(p1)||0,o={target:"body"},{portalSelection:r,selectPortalEdge:i}=Ye(),a=t.ref(!1),l=t.computed(()=>{const g=r.value;return g?e.targets.some(_=>_.edgeId===g):!1}),s=t.computed(()=>e.expanded!==void 0?e.expanded||l.value:a.value||l.value),c=()=>eg*e.targets.length+n*(e.targets.length-1),d=t.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=g=>{i(g)},u=g=>r.value===g,p=t.computed(()=>e.targets.map((g,_)=>{var h;const y=(eg+n)*_;return{edgeId:g.edgeId,key:`${g.node.id}-${g.fieldName??"node"}-${_}`,icon:(h=kt[g.node.type])==null?void 0:h.icon,tooltip:g.fieldName?`${g.node.name}.${g.fieldName}`:g.node.name,highlighted:u(g.edgeId),tooltipEl:null,style:_===0?{width:"fit-content",zIndex:e.targets.length}:{position:"absolute",...e.reversed?{left:`${y}px`,transform:s.value?"translateX(0)":`translateX(-${y}px)`}:{right:0,transform:s.value?`translateX(-${y}px)`:"translateX(0)"},zIndex:e.targets.length-_}}})),m=t.computed(()=>Math.max(e.targets.length-1,0));return(g,_)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:e.reversed}]),onClick:_[0]||(_[0]=t.withModifiers(()=>{},["stop"])),onDragstart:_[1]||(_[1]=t.withModifiers(()=>{},["stop"])),onMousedown:_[2]||(_[2]=t.withModifiers(()=>{},["stop"])),onMouseenter:_[3]||(_[3]=y=>a.value=!0),onMouseleave:_[4]||(_[4]=y=>a.value=!1)},[t.createElementVNode("div",{class:"target-boxes",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(y,h)=>(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:y.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:t.normalizeStyle(y.style),text:y.tooltip},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["target-box",{highlighted:y.highlighted}]),onClick:t.withModifiers(k=>f(y.edgeId),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.icon),{color:t.unref(ko),size:HV},null,8,["color"])),h===0&&m.value>0?(t.openBlock(),t.createElementBlock("span",zV," +"+t.toDisplayString(m.value),1)):t.createCommentVNode("",!0)],10,qV)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),aa=Ae(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ve.Left},size:{default:()=>Number.parseFloat(Ku)},type:{}},setup(e){t.useCssVars(o=>({v753622c4:o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[e.type,e.position===t.unref(ve).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),tg=Ae(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>kt[e.type]),o=t.computed(()=>g1(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":e.iconOnly,"has-colors":!!n.value.colors}]),size:e.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]),YV={class:"body"},WV={class:"name"},XV={class:"handle"},ZV={class:"handle-label-wrapper"},JV={class:"handle-label-wrapper"},QV={class:"handle-label text"},eR={class:"handle"},tR={class:"handle-label-wrapper"},nR={class:"handle-label-wrapper"},oR={class:"handle-label text"},rR={key:2,class:"branch-handles"},iR={class:"handle-label-wrapper"},aR={class:"handle-label text"},ng=Ae(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=DV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=Ye(),u=t.computed(()=>Eo(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),g=t.computed(()=>p.value&&r(e.data.id).every(P=>P.targetField===void 0)),_=t.computed(()=>m.value&&i(e.data.id).every(P=>P.sourceField===void 0)),y=t.computed(()=>e.data.expanded.input??!1),h=t.computed(()=>e.data.expanded.output??!1),k=t.computed(()=>{var P,V,G;return((G=(V=(P=u.value.io)==null?void 0:P.next)==null?void 0:V.branches)==null?void 0:G.map(({name:Z})=>Z))??[]}),b=t.computed(()=>k.value.length>0),E=t.computed(()=>f.findMembership(e.data.id)),N=t.computed(()=>{var P,V;if(e.data.type==="property"){const G=(P=e.data.config)==null?void 0:P.property;return ms(G)}return(V=u.value.io)==null?void 0:V.input}),C=t.computed(()=>{var P,V;if(e.data.type==="property"){const G=(P=e.data.config)==null?void 0:P.property;return ps(G)}return(V=u.value.io)==null?void 0:V.output}),x=t.computed(()=>kl(e.data)),I=t.computed(()=>e.data.phase==="response"),A=t.computed(()=>e.data.phase==="request"?ve.Left:ve.Right),B=t.computed(()=>e.data.phase==="request"?ve.Right:ve.Left),v=t.computed(()=>e.data.phase==="request"?ve.Right:ve.Left),w=t.computed(()=>x.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),M=t.computed(()=>x.value?ZN:JN);function S(P){return P==="input"?I.value:!I.value}function F(P){const V=new Map,G=P==="input"?r(e.data.id):i(e.data.id);for(const Z of G){const K=a(P==="input"?Z.source:Z.target);if(!K)continue;if(P==="input"){const ie=K.type==="vault",W=K.phase!==e.data.phase,ae=f.isEdgeEnteringGroup(K.id,e.data.id);if(!(ie||W||ae))continue}else{const ie=K.phase!==e.data.phase,W=f.isEdgeEnteringGroup(e.data.id,K.id);if(!(ie||W))continue}const q=P==="input"?Z.targetField||"input":Z.sourceField||"output";let se;if(P==="input"&&Z.sourceField){const ie=K.fields.output.find(W=>W.id===Z.sourceField);se=ie==null?void 0:ie.name}else if(P==="output"&&Z.targetField){const ie=K.fields.input.find(W=>W.id===Z.targetField);se=ie==null?void 0:ie.name}const me={edgeId:Z.id,node:K,fieldName:se},ge=V.get(q);ge?ge.push(me):V.set(q,[me])}return V}const O=t.computed(()=>F("input")),j=t.computed(()=>F("output"));function X(P){!o||o.readonly||P==="input"&&!g.value||P==="output"&&!_.value||l(e.data.id,P)}async function L(){if(!o||o.readonly)return;const P=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(P),o.scrollRightToReveal(P),d.value=!0}function U(){f.removeMember(e.data.id)}return t.watch(g,P=>{P||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(_,P=>{P||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(P,V)=>{Mn(P,V)||l(e.data.id,"input",P.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(P,V)=>{Mn(P,V)||l(e.data.id,"output",P.length>0,!0,"*")},{deep:!0}),(P,V)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:I.value,implicit:x.value,readonly:e.readonly}])},[t.createElementVNode("div",YV,[x.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(tg,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",WV,t.toDisplayString(w.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(Ee.WarningIcon),{key:1,class:"error-icon",color:t.unref(hl),size:16},null,8,["color"])):t.createCommentVNode("",!0),x.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:V[1]||(V[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Oe.KDropdownItem),{onClick:L},{default:t.withCtx(()=>[t.createVNode(ra,{keys:t.unref(Wi).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),E.value?(t.openBlock(),t.createBlock(t.unref(Oe.KDropdownItem),{key:0,onClick:U},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(Oe.KDropdownItem),{danger:"",onClick:V[0]||(V[0]=G=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(ra,{keys:t.unref(Wi).delete,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(gl)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:I.value}])},[N.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",XV,[t.createVNode(t.unref(Yt),{id:"input",position:A.value,type:"target"},null,8,["position"]),O.value.has("input")?(t.openBlock(),t.createBlock(ia,{key:0,mode:"input",reversed:S("input"),targets:O.value.get("input")},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",ZV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:V[2]||(V[2]=t.withModifiers(G=>X("input"),["stop"]))},[V[4]||(V[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldMoreIcon),{key:0,size:t.unref(ii)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldLessIcon),{key:1,color:g.value?void 0:t.unref(Uu),size:t.unref(ii)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&y.value?(t.openBlock(),t.createBlock(aa,{key:0,color:M.value,position:A.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(G,Z)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${G.id}`,class:"handle indented"},[t.createVNode(t.unref(Yt),{id:`inputs@${G.id}`,position:A.value,type:"target"},null,8,["id","position"]),O.value.has(G.id)?(t.openBlock(),t.createBlock(ia,{key:0,mode:"input",reversed:S("input"),targets:O.value.get(G.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",JV,[t.createElementVNode("div",QV,t.toDisplayString(G.name),1),t.createVNode(aa,{color:M.value,position:A.value,type:Z<e.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),C.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":m.value}])},[t.createElementVNode("div",eR,[t.createElementVNode("div",tR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:_.value}]),onClick:V[3]||(V[3]=t.withModifiers(G=>X("output"),["stop"]))},[V[5]||(V[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[h.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldMoreIcon),{key:0,size:t.unref(ii)},null,8,["size"])),h.value?(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldLessIcon),{key:1,color:_.value?void 0:t.unref(Uu),size:t.unref(ii)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&h.value?(t.openBlock(),t.createBlock(aa,{key:0,color:M.value,position:B.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Yt),{id:"output",position:B.value,type:"source"},null,8,["position"]),j.value.has("output")?(t.openBlock(),t.createBlock(ia,{key:0,mode:"output",reversed:S("output"),targets:j.value.get("output")},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]),m.value&&h.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.output,(G,Z)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${G.id}`,class:"handle indented"},[t.createElementVNode("div",nR,[t.createElementVNode("div",oR,t.toDisplayString(G.name),1),t.createVNode(aa,{color:M.value,position:B.value,type:Z<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Yt),{id:`outputs@${G.id}`,position:B.value,type:"source"},null,8,["id","position"]),j.value.has(G.id)?(t.openBlock(),t.createBlock(ia,{key:0,mode:"output",reversed:S("output"),targets:j.value.get(G.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",rR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(k.value,G=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${G}`,class:"handle"},[t.createElementVNode("div",iR,[t.createElementVNode("div",aR,t.toDisplayString(G),1)]),t.createVNode(t.unref(Yt),{id:`branch@${G}`,connectable:!1,position:v.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-c0706d4a"]]),lR=Ae(t.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?ve.Right:ve.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":e.active}])},[t.createVNode(t.unref(Yt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),og=Ae(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=He.useElementBounding(i),{i18n:{t:l}}=$e(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:g,groupDrop:_}=RV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:y,propertiesPanelOpen:h,invalidConfigNodeIds:k,selectedNode:b,duplicateNode:E,commit:N,selectPortalEdge:C}=c,{screenToFlowCoordinate:x,zoomIn:I,zoomOut:A,viewport:B,maxZoom:v,minZoom:w}=s,{activeGroupId:M,startPanelDrag:S,endPanelDrag:F,updateActiveGroup:O,attachNodeToActiveGroup:j}=_;function X(K){var se;const q=(se=K.dataTransfer)==null?void 0:se.types.find(me=>me.startsWith(`${Er}/`));if(q)return q.replace(`${Er}/`,"")}function L(K){var q;if(e.mode==="edit"){if(((q=K==null?void 0:K.node)==null?void 0:q.type)==="group"){p(void 0),C(void 0);return}h.value=!0}}function U(K){e.mode==="edit"&&(K.preventDefault(),O(x({x:K.clientX,y:K.clientY})))}function P(K){var de;if(e.mode!=="edit")return;const q=(de=K.dataTransfer)==null?void 0:de.getData(Er);if(!q)return;K.preventDefault();const se=JSON.parse(q);if(se.action!=="create-node")return;const me=x({x:K.clientX,y:K.clientY}),{type:ge,anchor:ie}=se.data,W={type:ge,phase:e.phase,position:{x:me.x-ie.offsetX,y:me.y-ie.offsetY}},ae=y(W,!1);if(!ae){F();return}j(ae),N(),p(ae),h.value=!0,F()}async function V(){await d(),setTimeout(()=>u(),0)}const G=t.computed(()=>{if(e.mode==="preview")return[];const K=[{name:"zoom_in",icon:Ee.AddIcon,action:I,disabled:B.value.zoom>=v.value},{name:"zoom_out",icon:Ee.RemoveIcon,action:A,disabled:B.value.zoom<=w.value},{name:"fit_view",icon:Ee.FullscreenIcon,action:u}];return e.mode==="edit"&&K.push({name:"auto_layout",icon:Ee.AutoLayoutIcon,action:V}),K});e.mode==="edit"&&(He.useEventListener("dragstart",K=>{X(K)&&S()}),He.useEventListener("dragend",()=>{F()}));async function Z(){const K=b.value;if(e.mode!=="edit"||!K||K.phase!==e.phase)return;const q=E(K.id,m(K.id));q&&(await p(q),h.value=!0,g(q))}return Zp({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:Z}),n({autoLayout:d,fitView:u}),(K,q)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Hp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(NT),"min-zoom":t.unref(xT),"multi-selection-key-code":null,"nodes-connectable":e.mode==="edit","nodes-draggable":e.mode==="edit","pan-on-drag":e.mode==="preview"?!1:void 0,"pan-on-scroll":e.mode!=="edit"?!1:void 0,"zoom-on-double-click":e.mode!=="edit"?!1:void 0,"zoom-on-pinch":e.mode!=="edit"?!1:void 0,"zoom-on-scroll":e.mode!=="edit"?!1:void 0,onDragover:U,onDrop:P,onNodeClick:L,onNodesChange:q[0]||(q[0]=se=>r("nodes-change")),onNodesInitialized:q[1]||(q[1]=se=>r("initialized"))},{"node-flow":t.withCtx(({data:se})=>[t.createVNode(ng,{data:se,error:t.unref(k).has(se.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:se})=>[t.createVNode(lR,{active:t.unref(M)===se.id,data:se},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(LP)),t.createVNode(t.unref(uT),{"fit-view-params":t.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(G.value,se=>(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:se.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${se.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(Cr),{disabled:se.disabled,onClick:t.withModifiers(se.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(se.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"])],512))}}),[["__scopeId","data-v-47761eb0"]]),sR={class:"label-content"},cR={class:"count"},dR={class:"label-content"},uR={class:"count"},rg=.5,Is=.03,fR=30,Ps=Ae(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=t.ref(!1),r=t.ref(!1),{responsePanelCollapsed:i}=ui(),{state:a,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:d,clear:f,portalSelection:u}=Ye(),p=t.useId(),m=`${p}-request`,g=`${p}-response`,_=Re(m),y=Re(g);function h(W,ae){const{onPaneClick:de,onNodesChange:$,onEdgesChange:T,getSelectedNodes:R,getSelectedEdges:D}=W,{removeSelectedElements:re}=ae;function ee(J){if(!J){re();return}J.some(z=>z.type==="select")&&R.value.length+D.value.length>0&&re()}$(ee),T(ee),de(()=>ee())}h(_,y),h(y,_),t.watch(u,W=>{W&&(_.removeSelectedElements(),y.removeSelectedElements())});const k=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),E=t.useTemplateRef("requestCanvasContainer"),N=t.useTemplateRef("requestFlow"),C=t.useTemplateRef("resizeHandle"),x=t.useTemplateRef("responseLabel"),I=t.useTemplateRef("responseCanvasContainer"),A=t.useTemplateRef("responseFlow"),B=He.useElementBounding(k),v=He.useElementBounding(b),w=He.useElementBounding(E),M=He.useElementBounding(C),S=He.useElementBounding(x),F=He.useElementBounding(I),O=t.computed(()=>Math.max(fR,B.height.value*Is)),j=t.computed(()=>B.height.value-v.height.value-M.height.value-S.height.value),X=t.computed(()=>{const W=j.value;return W?Math.max(Is,O.value/W):Is}),L=t.ref(rg),U=t.computed(()=>`${L.value*100}%`),P=t.computed(()=>`${(1-L.value)*100}%`),V=t.computed(()=>L.value<=X.value),G=t.computed(()=>1-L.value<=X.value);function Z(W,{persist:ae=!0}={}){const de=Math.min(1,Math.max(0,W));L.value=de,ae&&e.mode==="edit"&&(i.value=G.value)}function K(W,ae=!0){Z(W?1:rg,{persist:ae})}function q(W=!0){Z(0,{persist:W})}if(e.mode==="edit"){const W=l.value.response===0,ae=i.value;K(W||ae,!1)}else t.watch(()=>l.value.response,W=>{K(W===0,!1)},{immediate:!0});const se=()=>{e.resizable&&(V.value?K(!1):q())},me=()=>{e.resizable&&K(!G.value)},{isDragging:ge}=He.useDraggable(C,{onMove(W){if(!e.resizable)return;const ae=Math.max(0,W.y-w.top.value),de=Math.min(1,Math.max(0,ae/j.value));Z(de,{persist:!1})},onEnd(){e.resizable&&(w.height.value<O.value?q():F.height.value<O.value?K(!0):Z(L.value))}});function ie(){t.nextTick(()=>{var W,ae;(W=N.value)==null||W.fitView(),(ae=A.value)==null||ae.fitView()})}return t.watch([o,r,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([W,ae,de,$])=>{e.inactive||!W||!ae||!de&&!$||(de&&s(),$&&c(!1),setTimeout(async()=>{var T,R;de&&(await((T=N.value)==null?void 0:T.autoLayout(!1)),await((R=A.value)==null?void 0:R.autoLayout(!1)),d("*"),de==="clearHistory"&&f()),$&&setTimeout(()=>ie(),0)},0))}),(W,ae)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:k,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:se},[e.resizable?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:V.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",sR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",cR,[t.unref(l).request===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).request}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:E,class:t.normalizeClass(["canvas",{dragging:t.unref(ge)}]),style:t.normalizeStyle({flexBasis:U.value})},[t.createVNode(og,{ref_key:"requestFlow",ref:N,"flow-id":m,mode:e.mode,phase:"request",onInitialized:ae[0]||(ae[0]=de=>o.value=!0),onNodesChange:ae[1]||(ae[1]=de=>o.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:C,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:x,class:t.normalizeClass(["label response",{dragging:t.unref(ge),resizable:e.resizable}]),onClick:me},[e.resizable?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:G.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",dR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",uR,[t.unref(l).response===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).response}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:I,class:t.normalizeClass(["canvas response",{dragging:t.unref(ge)}]),style:t.normalizeStyle({flexBasis:P.value})},[t.createVNode(og,{ref_key:"responseFlow",ref:A,"flow-id":g,mode:e.mode,phase:"response",onInitialized:ae[2]||(ae[2]=de=>r.value=!0),onNodesChange:ae[3]||(ae[3]=de=>r.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),pR={class:"dk-confirm-modal-body"},mR={class:"connections"},gR=Ae(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=$e(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,g,_){return l.value=m,s.value=g??[],c.value=_??[],a.value=!0,await new Promise(y=>{d=y})}return n({open:p}),(m,g)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",pR,[t.createElementVNode("p",null,t.toDisplayString(l.value),1),t.createElementVNode("p",null,t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),t.createElementVNode("div",mR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([y,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${h}`,class:"connection"},[t.createVNode(t.unref(Ee.AddIcon),{color:t.unref(QN)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(h),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([y,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${h}`,class:"connection"},[t.createVNode(t.unref(Ee.RemoveIcon),{color:t.unref(hl)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(h),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),hR={class:"dk-editor-nav"},yR={class:"top"},_R={class:"bottom"},bR=Ae(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ee.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ui(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(d,f)=>(t.openBlock(),t.createElementBlock("nav",hR,[t.createElementVNode("div",yR,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:g})=>t.createVNode(t.unref(Oe.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(nr)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",_R,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref(Oe.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(nr)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(nr)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),wR={class:"dk-editor-main"},kR={class:"header"},CR={class:"actions"},ER={class:"settings"},NR={ref:"canvasContainer",class:"body"},xR=Ae(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=Ye(),c=t.inject(pn.DATAKIT_M2,!1),d=["vault","cache"],f=t.computed(()=>c?bo:en(bo,d));function u(g){const _=bo[g],y=hn.load(_,{schema:_o,json:!0});if(typeof y!="object"||y===null)return;const h=y,k={config:{...h,nodes:h.nodes??[]}};s(k,!0)}function p(){o.value=!1}Zp({enabled:o,undo:r,redo:i});const m={maxWidth:"300px",zIndex:1e4};return(g,_)=>(t.openBlock(),t.createElementBlock("div",wR,[t.createElementVNode("header",kR,[t.createElementVNode("div",CR,[t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(ra,{keys:t.unref(Wi).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(ra,{keys:t.unref(Wi).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),_[0]||(_[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",ER,[t.createVNode(Yr,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:m},name:"config.debug"},null,8,["label","label-attributes"])]),_[1]||(_[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Oe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,(y,h)=>(t.openBlock(),t.createBlock(t.unref(Oe.KDropdownItem),{key:h,onClick:k=>u(h)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${h}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),t.createVNode(t.unref(Ee.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Oe.KButton),{onClick:p},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",NR,[t.createVNode(Ps,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-e342016d"]]),SR=["draggable"],vR={class:"icon"},AR={class:"content"},IR={class:"title"},PR={class:"description"},TR=Ae(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f628e926:t.unref(a),v4a9b9f82:t.unref(l)}));const o=n,{summary:r,icon:i,colors:{background:a,foreground:l}={}}=_l[e.type];function s(c){o("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:s},[t.createElementVNode("div",vR,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",AR,[t.createElementVNode("div",IR,t.toDisplayString(e.type),1),t.createElementVNode("div",PR,t.toDisplayString(t.unref(r)),1)])],42,SR))}}),[["__scopeId","data-v-38d156c9"]]),OR={class:"dk-node-panel"},$R={key:0,class:"title"},BR={class:"node-list"},VR={"aria-hidden":"true",class:"preview",inert:""},ig=Ae(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),{createNode:o}=Ye(),r=t.inject(pn.DATAKIT_M2,!1),i=["branch","cache"],a=`dk-drag-preview-${t.useId()}`,l=t.shallowRef(),s=t.computed(()=>l.value?[{id:"preview",type:"flow",data:l.value,position:{x:0,y:0}}]:[]),c=async(d,f)=>{var B,v,w;const u=d.currentTarget,{left:p,top:m,width:g,height:_}=u.getBoundingClientRect(),y=d.clientX-p,h=d.clientY-m;l.value=o({type:f}),await t.nextTick();const k=document.querySelector(`#${a}`)||u,b=k.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:E,offsetHeight:N}=k;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${E}px`,height:`${N}px`}),document.body.appendChild(b);const C=y/g,x=h/_,I={ratioX:C,ratioY:x,offsetX:E*C,offsetY:N*x},A={action:"create-node",data:{type:f,anchor:I}};(B=d.dataTransfer)==null||B.setData(Er,JSON.stringify(A)),(v=d.dataTransfer)==null||v.setData(`${Er}/${f}`,f),(w=d.dataTransfer)==null||w.setDragImage(b,I.offsetX,I.offsetY),requestAnimationFrame(()=>{b.remove(),l.value=void 0})};return(d,f)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",OR,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",$R,[t.createVNode(u,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",BR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(_l)),p=>(t.openBlock(),t.createBlock(TR,{key:p,type:p,unsupported:!t.unref(r)&&i.includes(p),onDragstart:c},null,8,["type","unsupported"]))),128))]),t.createElementVNode("div",VR,[t.createVNode(t.unref(Hp),{nodes:s.value},{"node-flow":t.withCtx(p=>[t.createVNode(ng,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-03b0fafb"]]);function RR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=Ye(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var g;return((g=l.value.get("vault"))==null?void 0:g.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(g,_)=>{e(s.id,"output",g,!1);const y={...s.config,[g]:_};r(s.id,y)},removeVault:g=>{const _=yn(s,"output",g);if(!_)return;const y=s.fields.output.length===1;o(s.id,_.id,!0,!1);const h=en(s.config,g);r(s.id,h,!y),y&&a(s.id)},updateVault:(g,_,y=!0)=>{const h={...s.config,[g]:_};r(s.id,h,y)},renameVault:(g,_,y=!0)=>{var E;const h=yn(s,"output",g);if(!h)return;i(s.id,h.id,_,!1);const k=((E=s.config)==null?void 0:E[g])??"",b={...en(s.config,g),[_]:k};r(s.id,b,y)}}}const DR=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ve.useI18n(),i=t.inject(De.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),g=e.validateName(m,e.isEditing);return l.value=g||"",g===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,g)=>{const _=t.resolveComponent("KInput"),y=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Ro.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(_,{"model-value":a.value,"onUpdate:modelValue":[g[0]||(g[0]=h=>a.value=h),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(t.openBlock(),t.createBlock(y,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),MR={class:"dk-vault-panel"},LR={class:"title"},FR={class:"vault-list"},UR={key:0,class:"vault-list-item"},KR={class:"vault-list-item-key"},jR={class:"vault-list-item-key-text"},GR=Ae(t.defineComponent({__name:"VaultField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Wr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Ve.useI18n(),f=t.computed(()=>new Set(i.value.map(h=>h.key))),u=()=>{const h=a();c.value=h,s.value=h},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=h=>{if(!s.value)throw new Error("no selected entry");const k=s.value.key,b=k!==h.secretName,E=s.value.value!==h.secretRef,N=b||E;s.value.value=h.secretRef,s.value.key=h.secretName,c.value?r("add",h.secretName,h.secretRef):N&&r("update",h.secretName,h.secretRef,b?k:void 0),c.value=null,p()},g=h=>{s.value=h},_=h=>{l(h.id),r("remove",h.key)},y=(h,k)=>{var b;if(!h)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(h)&&!(k&&h===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(h,k)=>{var C,x;const b=t.resolveComponent("KButton"),E=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",MR,[t.createElementVNode("h3",LR,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",FR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),I=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:I.id},[I.key?(t.openBlock(),t.createElementBlock("div",UR,[t.createElementVNode("div",KR,[t.createVNode(t.unref(Ee.KeyIcon),{color:t.unref(ko),size:16},null,8,["color"]),t.createElementVNode("div",jR,t.toDisplayString(I.key),1)]),t.createVNode(N,null,{items:t.withCtx(()=>[t.createVNode(E,{onClick:A=>g(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(E,{danger:"",onClick:A=>_(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(gl)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(DR,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(x=s.value)==null?void 0:x.value,"validate-name":y,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function qR(){const{getSchema:e}=Me();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=nn(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]}}}),o})}const zR={class:"dk-cache-panel"},HR={class:"title"},YR={key:0,class:"cache-item"},WR={class:"cache-item-key"},XR={class:"cache-item-key-text"},ZR={class:"dk-resource-cache-form"},JR={key:1},QR={key:2,class:"dk-cache-inline-redis"},eD=Ae(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=Me(),a=_t("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=Ve.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var E;return(E=a.value.value)==null?void 0:E.strategy}),f=t.computed(()=>{var E;return(E=a.value.value)!=null&&E.redis?hn.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},g=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},_=()=>{l.value=!1,o("update",i)},y=Ks.createdBundledHighlighter({langs:{yaml:()=>import("@shikijs/langs/yaml")},themes:{"github-dark":()=>import("@shikijs/themes/github-dark")},engine:()=>Ng.createJavaScriptRegexEngine()}),{codeToHtml:h}=Ks.createSingletonShorthands(y),k=()=>{var E,N;d.value==="memory"&&((E=i.cache)!=null&&E.partial_id)&&((N=i.cache)==null||delete N.partial_id)};async function b({codeElement:E,language:N,code:C}){E.innerHTML=await h(C,{lang:N,theme:"github-dark",structure:"inline"})}return(E,N)=>{const C=t.resolveComponent("KButton"),x=t.resolveComponent("KDropdownItem"),I=t.resolveComponent("KDropdown"),A=t.resolveComponent("KLabel"),B=t.resolveComponent("KCodeBlock"),v=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",zR,[t.createElementVNode("h3",HR,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",YR,[t.createElementVNode("div",WR,[t.createVNode(t.unref(Ee.DatabaseIcon),{color:t.unref(ko),size:t.unref(ai)},null,8,["color","size"]),t.createElementVNode("div",XR,t.toDisplayString(e.strategy),1)]),t.createVNode(I,null,{items:t.withCtx(()=>[t.createVNode(x,{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(x,{danger:"",onClick:m},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(C,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(gl)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(v,{"action-button-disabled":!c.value,"action-button-text":t.unref(s)("actions.save"),"max-width":"640px",title:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:_},{default:t.withCtx(()=>{var w,M;return[t.createElementVNode("div",ZR,[t.createVNode(Id,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":k},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(mt,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",JR,[t.createVNode(A,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(Us.RedisConfigurationSelector),{"model-value":(w=t.unref(i).cache)==null?void 0:w.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":N[0]||(N[0]=S=>t.unref(i).cache.partial_id=S)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((M=t.unref(i).cache)!=null&&M.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",QR,[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(B,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-c4d7025b"]]),tD={class:"dk-resources-panel"},nD=Ae(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=qR(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=RR();function c(_,y,h){h&&h!==_&&l(h,_,!1),a(_,y)}const{state:d,commit:f}=Ye(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(_){d.value.cacheConfig=_.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function g(){o.value++}return(_,y)=>(t.openBlock(),t.createElementBlock("div",tD,[t.createVNode(bt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(GR,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),y[0]||(y[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(bt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var h;return[t.createVNode(eD,{strategy:(h=u.value.cache)==null?void 0:h.strategy,onCancel:g,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),oD={class:"header"},rD={class:"title"},iD={class:"body"},aD={class:"panel"},lD=Ae(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{sidePanelExpanded:o}=ui(),{propertiesPanelOpen:r,selectedNode:i}=Ye(),a=t.inject(pn.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",oD,[t.createElementVNode("h2",rD,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",iD,[t.createElementVNode("div",aD,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(ig,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(nD,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(ig,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),sD=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(Tt,{items:t.unref(Ka)([...t.unref(Lu)]),name:e.name},null,8,["items","name"]))}}),cD=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Me(),{i18n:o}=$e(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(Ct,{"as-child":"",name:e.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(Tt,{key:l,clearable:"","enable-filtering":"",items:e.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(s=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),dD=["data-testid"],uD={class:"dk-inputs-map-field-entry-body"},fD={class:"dk-inputs-map-field-entry-content"},pD=Ae(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=Wr(o,r),{i18n:{t:c}}=$e(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(N,C="key"){var x;d.value&&(await t.nextTick(),(x=d.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function g(){const{id:N}=a(),C=i.value.findIndex(({key:x})=>!x);m(C===-1?i.value.length-1:C),f.value=N}function _(N){l(N.id),N.id===f.value&&(f.value=null),N.key.trim()!==""&&r("remove:field",N.key)}function y(N){p=N.key}function h(N){if(k(N)){N.key=p,delete u.value[N.id];return}if(N.id===f.value){if(N.key.trim()==="")return;r("add:field",N.key,N.value),f.value=null}else r("rename:field",p,N.key);p=N.key}function k(N){delete u.value[N.id];const C=o.fieldNameValidator("input",p,N.key);if(C)return u.value[N.id]=C,C}function b(N){k(N)}function E(N,C){N.id!==f.value&&r("change:inputs",N.key,C)}return t.watch(()=>i.value,N=>{f.value&&(N.find(({id:C})=>C===f.value)||(f.value=null))}),(N,C)=>{const x=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),A=t.resolveComponent("KInput"),B=t.resolveComponent("KSelect"),v=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(w,M)=>(t.openBlock(),t.createElementBlock("div",{key:w.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${M}`},[t.createVNode(I,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${M}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",uD,[t.createElementVNode("div",fD,[t.createVNode(A,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${M}`,modelValue:w.key,"onUpdate:modelValue":[S=>w.key=S,S=>k(w)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":M,"data-testid":`ff-key-${t.unref(s).path.value}.${M}`,error:!!u.value[w.id],"error-message":u.value[w.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:S=>b(w),onChange:S=>h(w),onFocus:S=>y(w)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(B,{modelValue:w.value,"onUpdate:modelValue":S=>w.value=S,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${M}`,"enable-filtering":"",items:e.items,label:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:S=>E(w,(S==null?void 0:S.value)??null)},t.createSlots({_:2},[N.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:S})=>[t.renderSlot(N.$slots,"item-label",t.mergeProps({ref_for:!0},S),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(v,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${M}`,icon:"",onClick:S=>_(w)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,dD))),128)),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-dda8b239"]]),mD={class:"dk-source-item"},la=Ae(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",mD,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(kt)[e.item.type].icon),{color:t.unref(ko),size:t.unref(nr)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),gD={key:1,class:"dk-inputs-field-or"},xn=Ae(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Me(),{i18n:{t:i}}=$e(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?cD:pD:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Oe.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock(Tt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(g=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(g)),()=>[t.createVNode(la,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",gD,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(Oe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(g=>[t.createVNode(la,{item:g},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),hD={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},yD={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function _D(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function oo(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Vo(e){const{i18n:{t:n}}=$e(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function ag(e,n){const{i18n:{t:o}}=$e();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function bD(e=0,n=1/0,o){const{i18n:{t:r}}=$e();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function lg(e){const{i18n:{t:n}}=$e();return function(r){if(!_D(r))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function Ts(e,n){const{i18n:{t:o}}=$e();return function(i){if(i==null)return;const a=lg(n)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function Os(e=-1/0,n=1/0,o){const{i18n:{t:r}}=$e();return function(a){if(a==null)return;const l=lg(o)(a);if(l)return l;const s=Number(a);if(s<e||s>n)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function wD(e,n){const{state:o}=Ye(),{i18n:{t:r}}=$e();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function kD(e,n,o){const{i18n:{t:r}}=$e();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function CD(){const{i18n:{t:e}}=$e();return function(o){if(wl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function sg(e){const{i18n:{t:n}}=$e(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return oo(Vo(o),ag("identifier",o),CD(),wD(e,o))}function ED(e){const{i18n:{t:n}}=$e(),{getNodeById:o}=Ye();return function(i,a,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return oo(Vo(s),kD(i,o(e),l))(a)}}function ND(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=u=>{const p=typeof u=="function"?u():u,m=s(p);return n.value[l]=m,m},d=()=>{n.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const d=l[c],f=typeof d=="function"?d():d;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function Ar(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=Ye(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>ND(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const g in a.value)m[g]=p[g];return m}function f(u,p){const m=()=>{const _=o(),y=s.value[u];y&&y.handleBlur(_[u])},g=()=>{p==null||p();const _=o(),y=s.value[u];y&&y.handleChange(_[u])};return t.computed(()=>{const _=s.value[u];return{validate:m,update:g,error:_?!_.isValid.value:!1,errorMessage:_?_.error.value??"":""}})}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function dn(e,n){const o=t.inject(pn.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:g}=Ye(),{i18n:{t:_}}=$e(),y=Zm(),h=t.computed(()=>{const L=a(e);if(!L)throw new Error("Node not existed");return L}),k=t.computed(()=>{const U=r.value.edges.filter(P=>P.target===e).reduce((P,V)=>{var se,me;const G=a(V.source),Z=(se=_n(G,"output",V.sourceField))==null?void 0:se.id,K=(me=_n(h.value,"input",V.targetField))==null?void 0:me.name,q=G.id+(Z?`.${Z}`:"");return K?P.inputs={...P.inputs,[K]:q}:P.input=q,P},{});return h.value.fields.input.forEach(P=>{U.inputs||(U.inputs={}),U.inputs[P.name]||(U.inputs[P.name]=null)}),{...h.value.config,...U,name:h.value.name}}),b=L=>{i(e,L??"",!0,`${e}:rename`)},E=(L,U=!0)=>{if(!n)throw new Error("getFormValue is not defined");const P=en(n(),["name","input","inputs"]),V=L?`update:${e}:${L}`:void 0;d(e,P,U,V)},N=(L,U)=>{const P=yn(h.value,L,U);if(!P)throw new Error(`Field with name "${U}" not found in node "${h.value.name}"`);return P},C=(L,U,P)=>{const V=!!P;l(e,L,U,!V),V&&v(U,P)},x=(L,U,P)=>{const V=N(L,U).id;s(e,V,P)},I=(L,U)=>{const P=N(L,U).id;c(e,P)},A=t.computed(()=>r.value.edges.filter(L=>L.target===e&&!L.targetField)[0]),B=t.computed(()=>r.value.edges.filter(L=>L.target===e&&L.targetField)),v=async(L,U)=>{const P=U==null,V=N("input",L).id;if(P){const W=B.value.find(ae=>ae.targetField===V);W&&f(W.id);return}const{nodeId:G,fieldId:Z}=ju(U),K=N("input",L).id,q=[];A.value&&(q.push(Sr(A.value,a)),f(A.value.id,!1));const se=B.value.find(W=>W.targetField===V);se&&(q.push(Sr(se,a)),f(se.id,!1)),u({source:G,sourceField:Z,target:e,targetField:K},!1);const me=gs(G,Z,e,K,a),ge=q[0]&&me?q[0][1]===me[1]:!1;if(m(),ge||q.length===0)return;await y(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[me],q)||g()},w=async L=>{if(L==null){A.value&&f(A.value.id);return}const P=[];for(const q of B.value)P.push(Sr(q,a)),f(q.id,!1);A.value&&f(A.value.id,!1);const{nodeId:V,fieldId:G}=ju(L);u({source:V,sourceField:G,target:e,targetField:void 0},!1);const Z=gs(V,G,e,void 0,a);if(m(),P.length===0)return;await y(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[Z],P)||g()},M=L=>{const U=[...r.value.edges,{source:L,target:e}];return Sl(di(U))},S=t.computed(()=>{var U,P;const L=[];for(const V of r.value.nodes)if(!(!o&&V.type==="vault"||!((U=Eo(V.type).io)!=null&&U.output))&&V.fields.output&&V.id!==e&&!(V.type==="property"&&!ps((P=V.config)==null?void 0:P.property))&&!M(V.id)&&!(h.value.phase==="request"&&V.phase==="response")&&!(V.type==="vault"&&V.fields.output.length===0)){L.push({value:V.id,label:V.name,type:V.type});for(const Z of V.fields.output)L.push({value:`${V.id}.${Z.id}`,label:`${V.name}.${Z.name}`,type:V.type})}return L}),F=t.computed(()=>h.value.fields.input.map(L=>L.name)||[]);function O(L){p.value.delete(e),L||p.value.add(e)}const j=ED(e);function X(L,U,P){const V=a(e);if(!V)throw new Error("Node not found when validating field name");const G=yn(V,L,U);return j(L,P,G==null?void 0:G.id)}return{formData:k,inputOptions:S,inputEdge:A,inputsEdges:B,inputsFieldNames:F,currentNode:h,setName:b,setConfig:E,addField:C,renameFieldByName:x,removeFieldByName:I,setInputs:v,setInput:w,nameValidator:sg(e),fieldNameValidator:X,toggleNodeValid:O}}function un(e){const{getSchema:n}=Me();return t.computed(()=>{if(xt(e))switch(e){case"response":return yD;case"service_request":return hD}try{const l=n().fields[0].config.fields[0].nodes.elements.subschema_definitions[e];if(!l)throw new Error(`Subschema "${e}" not found in the schema.`);return l}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const ro=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),xD=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=$e(),o=t.useTemplateRef("form"),r=un("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=dn(e.nodeId,()=>o.value.getValue()),{createFieldHandler:g}=Ar({validationConfig:{url:oo(Vo({fieldName:"URL"}),ag("url",{fieldName:"URL"})),timeout:oo(Ts("integer"),Os(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),_=g("url",()=>l("url")),y=g("timeout",()=>l("timeout"));return(h,k)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(fo,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"url",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(sD,{name:"method",onUpdate:k[0]||(k[0]=E=>t.unref(l)())}),t.createVNode(jn,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"timeout",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(fo,{name:"ssl_server_name","onUpdate:modelValue":k[1]||(k[1]=E=>t.unref(l)("ssl_server_name"))}),t.createVNode(xn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),SD=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=dn(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),vD=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=dn(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),cg={jqlang:"https://jqlang.org/manual/"},AD=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=$e(),r=t.useTemplateRef("form"),i=un("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:g,nameValidator:_,toggleNodeValid:y,fieldNameValidator:h}=dn(e.nodeId,()=>r.value.getValue());function k(I,A){u("input",I,A)}function b(I){p("input",I)}function E(I,A){m("input",I,A)}const N=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=Ar({validationConfig:{jq:oo(Vo({fieldName:N}),bD(1,10240,{fieldName:N}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:y}),x=C("jq",()=>s("jq"));return(I,A)=>{const B=t.resolveComponent("KLabel"),v=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(a).name,validate:t.unref(_),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(B,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(fo,{autosize:"",error:t.unref(x).error,"error-message":t.unref(x).errorMessage,label:t.unref(N),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(x).validate,"onUpdate:modelValue":t.unref(x).update},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(v,{"hide-icon":"",href:t.unref(cg).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(cg).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(h),"field-names":t.unref(g),items:t.unref(c),"onAdd:field":k,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":E},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),ID=Ae(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=Wr(o,r,!1),{i18n:d}=$e(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(N,C="key"){var x;f.value&&(await t.nextTick(),(x=f.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function g(){const N=l(),C=a.value.findIndex(({key:x})=>!x);m(C===-1?a.value.length-1:C),u.value=N}function _(N){var C;N.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(N.id),N.key.trim()!==""&&r("remove:field",N.key)}function y(N){p=N.key}function h(N){var C;if(b(N)){N.key=p,delete i.value[N.id];return}if(N.id===((C=u.value)==null?void 0:C.id)){if(N.key.trim()==="")return;u.value=null,r("add:field",N.key,N.value)}else r("rename:field",p,N.key);p=N.key}function k(N,C){var I;if(C.id===((I=u.value)==null?void 0:I.id))return;const x=N.target.value.trim();r("change:value",C.key,x)}function b(N){delete i.value[N.id];const C=o.fieldNameValidator("output",p,N.key);if(C)return i.value[N.id]=C,C}function E(N){b(N)}return t.watchEffect(()=>{u.value&&!a.value.some(N=>N.id===u.value.id)&&a.value.push(u.value)}),(N,C)=>{const x=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),A=t.resolveComponent("KButton"),B=t.resolveComponent("KInput"),v=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(I,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(w,M)=>(t.openBlock(),t.createBlock(v,{key:w.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${M}`},{actions:t.withCtx(()=>[t.createVNode(A,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${M}`,icon:"",onClick:S=>_(w)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(B,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${M}`,modelValue:w.key,"onUpdate:modelValue":[S=>w.key=S,S=>b(w)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":M,"data-testid":`ff-key-${t.unref(c).path.value}.${M}`,error:!!i.value[w.id],"error-message":i.value[w.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:S=>E(w),onChange:S=>h(w),onFocus:S=>y(w)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(B,{modelValue:w.value,"onUpdate:modelValue":S=>w.value=S,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${M}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:S=>k(S,w)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(A,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-5e17f8cb"]]);function PD(e){const n={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?n[o]=JSON.stringify(r):n[o]=String(r);return n}function sa(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function TD(e,n,o){const r={};for(const i of Object.keys(e))i===n?r[o]=e[n]:r[i]=e[i];return r}const OD=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=Ye(),{fieldNameValidator:c}=dn(e.nodeId),d=un("static"),f=sg(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(E=>E.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const g=t.computed(()=>{var A;if(!u.value)return{};const b=((A=u.value.config)==null?void 0:A.values)??{},E={},N=o(u.value.id).map(B=>B.sourceField).filter(Boolean).map(B=>_n(u.value,"output",B)).map(B=>B==null?void 0:B.name).filter(Boolean),C=u.value.fields.output.map(B=>B.name),x=Object.keys(b);return new Set([...x,...N,...C]).forEach(B=>{if(B in b){E[B]=b[B];return}E[B]=""}),{name:u.value.name,values:PD(E)}});function _(b,E){if(!u.value)throw new Error("No selected node");const N=E!==void 0;if(r(e.nodeId,"output",b,!N),N){const C={values:sa({...g.value.values,[b]:E})};l(e.nodeId,C)}}function y(b,E){if(!u.value)throw new Error("No selected node");const N=yn(u.value,"output",b);if(!N)throw new Error("No field found to rename");const C={values:sa(TD(g.value.values??{},b,E))};l(e.nodeId,C,!1),i(e.nodeId,N.id,E)}function h(b){var C;if(!u.value)throw new Error("No selected node");const E=yn(u.value,"output",b);if(!E)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,E.id,!0,!1);const N={values:sa({...g.value.values})};delete N.values[b],l(e.nodeId,N)}function k(b,E){if(!u.value)throw new Error("No selected node");const N={...g.value.values};N[b]=E;const C={values:sa(N)};l(e.nodeId,C)}return(b,E)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:g.value,schema:t.unref(d)},{default:t.withCtx(()=>{var N;return[t.createVNode(ro,{name:((N=u.value)==null?void 0:N.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(ID,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":k,"onRemove:field":h,"onRename:field":y},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),$D={class:"dk-kong-property-item"},BD={class:"property-type"},VD={class:"property-badges"},RD=Ae(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=$e(),r=e,i=n,{formData:a}=Me(),l=t.ref(Nr(a.property)),s=t.computed(()=>xr(a.property)),c=t.ref(fs(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(eo).map(([m])=>{var y;const g=xr(m)?(y=a.property)==null?void 0:y.startsWith(m.replace($o,"")):a.property===m;return{label:g&&c.value?m.replace($o,c.value):m,value:m,selected:g}}));function u(m){const g=Xi.find(_=>{var y;return(y=a.property)==null?void 0:y.startsWith(_)});g&&(a.property=g+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Nr(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Nr(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=fs(m),l.value=Nr(m)}),(m,g)=>{const _=t.resolveComponent("KBadge"),y=t.resolveComponent("KSelect"),h=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(y,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=k=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:k})=>[t.createElementVNode("div",$D,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(k.label),1),t.createElementVNode("div",BD,t.toDisplayString(t.unref(eo)[k.value].dataType),1)]),t.createElementVNode("div",VD,[t.unref(eo)[k.value].readable?(t.openBlock(),t.createBlock(_,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(eo)[k.value].writable?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(h,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=k=>c.value=k),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=k=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),DD=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=Ye(),a=un("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,fieldNameValidator:_}=dn(e.nodeId,()=>n.value.getValue()),y=t.computed(()=>ms(l.value.property));function h(b){var N;const E=(N=o.value)==null?void 0:N.id;if(!E)throw new Error("Expected selectedNode to be defined");ps(b)||i(E,!1),ms(b)||r(E,!1),c()}const{fields:k}=Ar({validationConfig:()=>({property:Vo({fieldName:"Property"}),key:xr(l.value.property)?Vo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:fs(l.value.property)}),toggleNodeValid:g});return(b,E)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(Tt,{name:"content_type",onUpdate:E[0]||(E[0]=N=>t.unref(c)())}),t.createVNode(RD,{validators:t.unref(k),"onUpdate:modelValue":h,"onUpdate:propertyKey":E[1]||(E[1]=N=>t.unref(c)("property-key"))},null,8,["validators"]),y.value?(t.openBlock(),t.createBlock(xn,{key:0,"field-name-validator":t.unref(_),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),MD=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=dn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=Ar({validationConfig:{status:oo(Ts("integer",{fieldName:"Status"}),Os(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),g=m("status",()=>a("status"));return(_,y)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(jn,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"status",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Yr,{name:"warn_headers_sent","onUpdate:modelValue":y[0]||(y[0]=h=>t.unref(a)())}),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function LD(e){const n=dn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=Ye(),{i18n:{t:l}}=$e(),s=Zm(),c=Ja(),d=t.computed(()=>{var b;const h={...n.formData.value},k=rr(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const E of k)(!(E in h)||h[E]==null)&&(h[E]=[]);return h});function f(h,k,b){const E=r(h),N=r(b),C=E?`${E.name}.${k}`:`${h}.${k}`,x=N?N.name:b;return[C,x]}function u(h){return(h==null?[]:Array.isArray(h)?h:[h]).filter(k=>Cl(k))}function p(h,k){return i.wouldCreateCycle(h,k)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(h,k,b){const E=[],N=[],C=[];for(const x of b){const I=i.findMembership(x);if(!I||I.ownerId===h&&I.branch===k)continue;const A=i.getMembers(I.ownerId,I.branch).filter(B=>B!==x);C.push({ownerId:I.ownerId,branch:I.branch,members:A}),E.push(f(h,k,x)),N.push(f(I.ownerId,I.branch,x))}return{conflictUpdates:C,addedAssignments:E,removedAssignments:N}}function g(h,k,b,E){let N=!1;for(const C of E)N=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||N;return N=i.setMembers(h,k,b,{commit:!1})||N,N}async function _(h,k){const b=n.currentNode.value,E=u(k),N=i.prepareMembers(b.id,h,E),C=i.getMembers(b.id,h);if(El(C,N))return!0;const x=N.filter(w=>!C.includes(w));for(const w of x)if(p(b.id,w))return!1;const{conflictUpdates:I,addedAssignments:A,removedAssignments:B}=m(b.id,h,x);return I.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),A,B)?!1:(g(b.id,h,N,I)&&a(),!0)}const y=t.computed(()=>{const h=n.currentNode.value;return!h||!i?[]:o.value.nodes.filter(k=>k.id!==e&&!xt(k.type)&&k.phase===h.phase&&!i.wouldCreateCycle(h.id,k.id)).map(k=>({value:k.id,label:k.name,type:k.type}))});return{...n,formData:d,branchOptions:y,updateBranchMembers:_}}const FD=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=$e(),o=un("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:d,setInputs:f,inputsFieldNames:u,fieldNameValidator:p,updateBranchMembers:m}=LD(e.nodeId);async function g(_,y){await m(_,y)||(r.value+=1)}return(_,y)=>(t.openBlock(),t.createBlock(bt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Tt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:y[0]||(y[0]=h=>g("then",h))},{"item-label":t.withCtx(h=>[t.createVNode(la,{item:h},null,8,["item"])]),_:1},8,["items"]),t.createVNode(Tt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:y[1]||(y[1]=h=>g("else",h))},{"item-label":t.withCtx(h=>[t.createVNode(la,{item:h},null,8,["item"])]),_:1},8,["items"]),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),UD=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("cache"),{i18n:{t:r}}=$e(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=dn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:g}=Ar({validationConfig:()=>({ttl:oo(Ts("integer",{fieldName:"TTL"}),Os(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),_=g("ttl",()=>l("ttl"));return(y,h)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Yr,{name:"bypass_on_error","onUpdate:modelValue":h[0]||(h[0]=k=>t.unref(l)("bypass_on_error"))}),t.createVNode(jn,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"ttl",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),KD=["innerHTML"],jD={key:1,class:"branch-note"},GD={class:"branch-label"},qD={class:"branch-text"},zD=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Qp}px`},offsetTop:{default:`${_T}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{t:n}=Xe.createI18n("en-us",Je),{getNodeById:o,branchGroups:r}=Ye(),i=t.computed(()=>e.nodeId&&o(e.nodeId)),a=t.computed(()=>{if(e.nodeId)return r.findMembership(e.nodeId)}),l=t.computed(()=>{if(!a.value)return"";const d=o(a.value.ownerId);return d?`${d.name}.${a.value.branch}`:""});function s(){e.nodeId&&r.removeMember(e.nodeId)}const c=t.computed(()=>{var d;switch((d=i.value)==null?void 0:d.type){case"call":return xD;case"service_request":return SD;case"response":return vD;case"jq":return AD;case"static":return OD;case"property":return DD;case"exit":return MD;case"branch":return FD;case"cache":return UD;default:return null}});return(d,f)=>(t.openBlock(),t.createBlock(t.unref(Oe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(yT),onClose:f[0]||(f[0]=u=>d.$emit("close"))},t.createSlots({default:t.withCtx(()=>[i.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Ot)(i.value.type)},null,8,KD)):t.createCommentVNode("",!0),a.value?(t.openBlock(),t.createElementBlock("div",jD,[t.createElementVNode("span",GD,[t.createVNode(t.unref(Ee.ArrowSplitIcon),{color:t.unref(ko),size:t.unref(nr)},null,8,["color","size"]),t.createElementVNode("span",qD,t.toDisplayString(l.value),1)]),t.createVNode(t.unref(Oe.KTooltip),{placement:"top",text:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"none","aria-label":t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:s},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):t.createCommentVNode("",!0),c.value?(t.openBlock(),t.createBlock(t.unref(c),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(tg,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),HD=Ae(zD,[["__scopeId","data-v-208232f7"]]),YD={class:"dk-editor-content"},WD={class:"main"},XD=Ae(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=Ye();function r(){n.value=!1}t.watch(o,a=>{a||r()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,l)=>{var s;return t.openBlock(),t.createElementBlock("div",YD,[t.createVNode(t.unref(lD)),t.createElementVNode("div",WD,[t.createVNode(xR)]),t.createVNode(HD,{"node-id":(s=t.unref(o))==null?void 0:s.id,visible:t.unref(n),onClose:r},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),ZD={key:0,class:"dk-editor-modal"},JD=Ae(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(hT)}px`,v30e03211:`${t.unref(Jp)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=Ye();$V(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=He.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",ZD,[t.createVNode(bR,{class:"nav",onBack:l}),t.createVNode(XD,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(gR,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),QD={class:"dk-flow-editor"},eM={class:"flow-panels-container"},tM={class:"overlay"},nM=Ae(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),{formData:r}=Me(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=Qu(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),B1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",QD,[t.createElementVNode("div",eM,[t.createVNode(Ps,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",tM,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(Ee.ExpandIcon))]),_:1})])]),t.createVNode(JD,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]);function oM(e,n){const o=[],r=(i,a)=>{typeof a=="string"&&o.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&r(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&r(["inputs",i],a);if("output"in e&&e.output!=null&&r(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&r(["outputs",i],a);return o}function rM(e){const n=e.path[2];return n==="output"||n==="outputs"}function dg(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function ug(e,n){const o=e.input!==void 0&&e.input!==null,r=dg(e.inputs);o&&r&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=dg(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function fg(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of oM(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),rM(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const iM=oe.z.enum(Du),aM=oe.z.enum(wo),pg=e=>wo.includes(e),$s=oe.z.enum(Mu),mg=$s.options;oe.z.union([$s,iM]);const lM=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,gg=oe.z.string().min(1).max(255).regex(lM,"Invalid node name (snake_case / kebab-case only)").refine(e=>!pg(e),"Name clashes with reserved implicit node").brand(),ca=oe.z.union([aM,gg]),sM=oe.z.string().min(1).brand(),cM=["then","else"];oe.z.enum(cM);const ut=oe.z.string().refine(e=>{if(ca.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return ca.safeParse(o).success&&sM.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),hg=oe.z.enum(Lu),io=oe.z.object({type:oe.z.string(),name:gg,input:ut,inputs:oe.z.record(oe.z.string(),ut).nullish(),output:ut,outputs:oe.z.record(oe.z.string(),ut).nullish()}).loose().superRefine((e,n)=>{ug(e,n)}),dM=oe.z.object({type:oe.z.string(),name:oe.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),mg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${mg.join(", ")}`})}),uM=io.safeExtend({type:oe.z.literal("call"),method:hg.nullish(),ssl_server_name:oe.z.string().min(1).nullish(),timeout:oe.z.number().int().min(0).max(2147483646).nullish(),url:oe.z.url(),inputs:oe.z.object({body:ut,headers:ut,query:ut}).partial().nullish(),outputs:oe.z.object({body:ut,headers:ut,status:ut}).partial().nullish()}).strict(),fM=io.safeExtend({type:oe.z.literal("exit"),status:oe.z.number().int().min(200).max(599).nullish(),warn_headers_sent:oe.z.boolean().nullish(),output:oe.z.never().optional(),outputs:oe.z.never().optional()}).strict(),pM=io.safeExtend({type:oe.z.literal("jq"),jq:oe.z.string().min(1).max(10240),outputs:oe.z.never().optional()}).strict(),mM=io.safeExtend({type:oe.z.literal("property"),content_type:oe.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:oe.z.string().min(1),inputs:oe.z.never().optional(),outputs:oe.z.never().optional()}).strict(),gM=io.safeExtend({type:oe.z.literal("static"),values:oe.z.record(oe.z.string(),oe.z.unknown()),input:oe.z.never().optional(),inputs:oe.z.never().optional()}).strict(),hM=io.safeExtend({type:oe.z.literal("cache"),bypass_on_error:oe.z.boolean().nullish(),inputs:oe.z.object({data:ut,key:ut,ttl:ut}).partial().nullish(),outputs:oe.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:oe.z.number().int().gt(0).nullish()}).strict(),yM=io.safeExtend({type:oe.z.literal("branch"),then:oe.z.array(ca).nullish(),else:oe.z.array(ca).nullish()}).strict(),_M=dM.pipe(oe.z.discriminatedUnion("type",[uM,fM,pM,mM,gM,hM,yM])),bM=oe.z.record(oe.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),oe.z.string().min(1).max(4095)),wM=oe.z.object({dictionary_name:oe.z.string().default("kong_db_cache")}),kM=oe.z.object({host:oe.z.string().default("127.0.0.1"),port:oe.z.number().int().min(0).max(65535).default(6379)}),CM=oe.z.object({ip:oe.z.string().default("127.0.0.1"),port:oe.z.number().int().min(0).max(65535).default(6379)}),EM=oe.z.object({host:oe.z.string().optional().default("127.0.0.1"),port:oe.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:oe.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:oe.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:oe.z.number().int().min(0).max(2147483646).default(2e3),username:oe.z.string().optional(),password:oe.z.string().optional(),sentinel_username:oe.z.string().optional(),sentinel_password:oe.z.string().optional(),database:oe.z.number().int().optional().default(0),keepalive_pool_size:oe.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:oe.z.number().int().min(0).max(2147483646).optional(),sentinel_master:oe.z.string().optional(),sentinel_role:oe.z.enum(["master","slave","any"]).optional(),sentinel_nodes:oe.z.array(kM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:oe.z.array(CM).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:oe.z.boolean().default(!1).optional(),ssl_verify:oe.z.boolean().default(!1).optional(),server_name:oe.z.string().optional(),cluster_max_redirections:oe.z.number().int().default(5).optional(),connection_is_proxied:oe.z.boolean().default(!1).optional(),timeout:oe.z.number().int().optional(),sentinel_addresses:oe.z.array(oe.z.string()).min(1).optional(),cluster_addresses:oe.z.array(oe.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),NM=oe.z.object({strategy:oe.z.enum(["memory","redis"]).optional(),memory:wM,redis:EM}),xM=oe.z.object({vault:bM.nullish(),cache:NM.nullish()});oe.z.array(oe.z.object({id:oe.z.string()})),oe.z.object({nodes:oe.z.array(_M).min(1,"At least one node is required"),debug:oe.z.boolean().nullish(),resources:xM.nullish()}).strict().superRefine((e,n)=>{fg(e,wo,n)});const yg=$s.options,Bs=oe.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!pg(e),"Node name conflicts with reserved implicit node"),ft=oe.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const o=e.slice(0,n),r=e.slice(n+1);return o.length>0&&r.length>0},"Invalid connection"),ao=oe.z.object({type:oe.z.string(),name:Bs,input:ft.nullish(),inputs:oe.z.record(oe.z.string(),ft.nullish()).nullish(),output:ft.nullish(),outputs:oe.z.record(oe.z.string(),ft.nullish()).nullish()}).loose().superRefine((e,n)=>{ug(e,n)}),SM=oe.z.object({type:oe.z.string(),name:oe.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),yg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${yg.join(", ")}`})}),vM=ao.safeExtend({type:oe.z.literal("call"),method:hg.nullish(),ssl_server_name:oe.z.string().nullish(),timeout:oe.z.union([oe.z.number(),oe.z.string()]).nullish(),url:oe.z.string().nullish(),inputs:oe.z.object({body:ft.nullish(),headers:ft.nullish(),query:ft.nullish()}).partial().nullish(),outputs:oe.z.object({body:ft.nullish(),headers:ft.nullish(),status:ft.nullish()}).partial().nullish()}).strict(),AM=ao.safeExtend({type:oe.z.literal("exit"),status:oe.z.union([oe.z.number(),oe.z.string()]).nullish(),warn_headers_sent:oe.z.boolean().nullish(),output:oe.z.never().optional(),outputs:oe.z.never().optional()}).strict(),IM=ao.safeExtend({type:oe.z.literal("jq"),jq:oe.z.string().nullish(),outputs:oe.z.never().optional()}).strict(),PM=ao.safeExtend({type:oe.z.literal("property"),content_type:oe.z.string().nullish(),property:oe.z.string().nullish(),inputs:oe.z.never().optional(),outputs:oe.z.never().optional()}).strict(),TM=ao.safeExtend({type:oe.z.literal("static"),values:oe.z.record(oe.z.string(),oe.z.unknown()).nullish(),input:oe.z.never().optional(),inputs:oe.z.never().optional()}).strict(),OM=ao.safeExtend({type:oe.z.literal("cache"),bypass_on_error:oe.z.boolean().nullish(),inputs:oe.z.object({data:ft.nullish(),key:ft.nullish(),ttl:ft.nullish()}).partial().nullish(),outputs:oe.z.object({data:ft.nullish(),hit:ft.nullish(),miss:ft.nullish(),stored:ft.nullish()}).partial().nullish(),ttl:oe.z.union([oe.z.number(),oe.z.string()]).nullish()}).strict(),$M=ao.safeExtend({type:oe.z.literal("branch"),then:oe.z.array(Bs).nullish(),else:oe.z.array(Bs).nullish()}).strict(),BM=SM.pipe(oe.z.discriminatedUnion("type",[vM,AM,IM,PM,TM,OM,$M])),VM=oe.z.record(oe.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),oe.z.string().min(1).max(4095)),RM=oe.z.object({dictionary_name:oe.z.string().default("kong_db_cache")}),DM=oe.z.object(),MM=oe.z.object({strategy:oe.z.enum(["memory","redis"]).optional(),memory:RM.optional(),redis:DM.optional()}),LM=oe.z.object({vault:VM.nullish(),cache:MM.nullish()}),FM=oe.z.object({nodes:oe.z.array(BM).nullish(),debug:oe.z.boolean().nullish(),resources:LM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||fg(e,wo,n)}).nullish(),UM={class:"dk-option-label"},KM={class:"dk-option-label"},jM=["innerHTML"],GM=Ae(t.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=e,r=t.inject(pn.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(pn.DATAKIT_M2,!1),a=t.ref(!1);t.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:l}=ui(),s=t.computed(()=>r&&f.value?l.value:"code"),c=t.computed(()=>i?s.value==="flow"?"form":"code":"form"),d={flow:Ee.DesignIcon,code:Ee.CodeblockIcon},f=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!f.value,b}),p=t.computed(()=>{switch(s.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),m=t.computed(()=>n(i?"plugins.free-form.datakit.plugin_config.title":"plugins.form.sections.plugin_config.title"));t.watch(s,()=>{var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function g(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function _(){g()}function y(b){g();let E=b;i&&(E=b==null?void 0:b.config);const{success:N}=FM.safeParse(E);let C=N;!i&&C&&(C=!h(b)),f.value=C}function h(b){var N,C;return!!((N=b==null?void 0:b.resources)!=null&&N.vault||((C=b==null?void 0:b.nodes)==null?void 0:C.some(x=>x.type==="branch"||x.type==="cache")))}function k(b){var E;f.value=!1,(E=o.onValidityChange)==null||E.call(o,{model:"config",valid:!1,error:b})}return(b,E)=>{const N=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(i)&&t.unref(r)?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref(Oe.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":s.value,options:u.value,"onUpdate:modelValue":E[0]||(E[0]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(N,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",UM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(Td,t.mergeProps(o,{class:"dk-form","editor-mode":c.value}),t.createSlots({"code-editor":t.withCtx(()=>[t.createVNode(Ru,{class:"code-editor",editing:o.isEditing,onChange:y,onError:k},null,8,["editing"])]),"plugin-config-title":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(m.value),1)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:p.value},null,8,jM)]),default:t.withCtx(()=>[s.value==="flow"?(t.openBlock(),t.createBlock(nM,{key:0,"is-editing":o.isEditing,onChange:_},null,8,["is-editing"])):s.value==="code"&&!t.unref(i)?(t.openBlock(),t.createBlock(Ru,{key:1,class:"code-editor",editing:o.isEditing,onChange:y,onError:k},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},[t.unref(r)&&!t.unref(i)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Oe.KSegmentedControl),{"model-value":s.value,options:u.value,"onUpdate:modelValue":E[1]||(E[1]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(N,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",KM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040,["editor-mode"])],64)}}}),[["__scopeId","data-v-a7e4e7b1"]]),_g=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))typeof o=="string"&&(e[n]=o.split(/\s*,\s*/).filter(Boolean))},bg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},qM=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ve.useI18n(),l={prepareFormData:c=>{var f,u;const d=Dn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{bg(p.headers),bg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=Dn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{_g(p.headers),_g(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(bt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config","reset-label-path":"reset"},{default_acl:t.withCtx(({name:f})=>[t.createVNode(Yo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.default_acl_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),tools:t.withCtx(({name:f})=>[t.createVNode(Yo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(Zr)]),_:1},8,["data","schema"]))}}),zM=t.defineComponent({__name:"AIMcpProxyForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Xa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(qM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),HM=Ae(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:o}=Me(),r=o("config"),i=t.computed(()=>{var _;const a=[],l=[],s=new Set,d=n().fields.find(y=>Object.keys(y)[0]==="config");if(!d||!("config"in d))return{defaultVisible:a,advanced:l};const f=d.config;f.entity_checks&&f.entity_checks.forEach(y=>{var k,b;let h;"at_least_one_of"in y?h=y.at_least_one_of:"conditional"in y&&((k=n(Ze("config",y.conditional.if_field)))!=null&&k.required)&&y.conditional.then_match.required?h=[y.conditional.if_field,y.conditional.then_field]:"conditional_at_least_one_of"in y&&((b=n(Ze("config",y.conditional_at_least_one_of.if_field)))!=null&&b.required)&&(h=[y.conditional_at_least_one_of.if_field,...y.conditional_at_least_one_of.then_at_least_one_of]),h==null||h.forEach(E=>s.add(E))});const u=((_=r.value)==null?void 0:_.bundles)??[],p=new Map;for(const y of u)for(let h=1;h<y.length;h++)p.set(y[h],y[h-1]);const m=y=>{const h=p.get(y);return h?m(h):y},g=new Map;for(const y of f.fields){const h=Object.keys(y)[0];g.set(h,m(h))}for(const y of f.fields){const h=Object.keys(y)[0];if(g.get(h)!==h)continue;let b;y[h].required||s.has(h)?b=a:b=l,b.push(h)}for(const y of f.fields){const h=Object.keys(y)[0],k=g.get(h);k!==h&&(a.includes(k)?a:l).push(h)}return{defaultVisible:a,advanced:l}});return(a,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Ct,{"as-child":"",name:"config",omit:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Zr,{class:"ff-advanced-fields","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1})],64))}}),[["__scopeId","data-v-f5897284"]]),wg=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:zM,CommonForm:t.defineComponent({__name:"CommonForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Td,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(HM)]),_:1},16))}}),DatakitForm:GM,RequestCalloutForm:Fk,ServiceProtectionForm:bC},Symbol.toStringTag,{value:"Module"}));function YM(e,n){const o=vt[e];if(!o||!o.fieldRules)return n;const r=WM(o.fieldRules),i={...n};return i.fields=i.fields.map(a=>Object.keys(a)[0]==="config"?{config:{...a.config,entity_checks:[...a.config.entity_checks||[],...r]}}:a),i}function WM(e){const n=[],o=r=>r.startsWith("config.")?r.substring(7):r;return e.atLeastOneOf&&e.atLeastOneOf.forEach(r=>{n.push({at_least_one_of:r.map(o)})}),e.onlyOneOf&&e.onlyOneOf.forEach(r=>{n.push({mutually_exclusive:r.map(o)})}),e.mutuallyRequired&&e.mutuallyRequired.forEach(r=>{n.push({mutually_required:r.map(o)})}),e.onlyOneOfMutuallyRequired&&e.onlyOneOfMutuallyRequired.forEach(r=>{if(r.forEach(i=>{n.push({mutually_required:i.map(o)})}),r.length>1)for(let i=0;i<r.length;i++)for(let a=i+1;a<r.length;a++){const l=r[i].map(o),s=r[a].map(o);l.forEach(c=>{s.forEach(d=>{n.push({mutually_exclusive:[c,d]})})})}}),n}const XM={class:"kong-ui-entities-plugin-form"},ZM={key:1,class:"entity-form"},JM={class:"plugin-config-empty-state"},QM=Ae(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var me,ge;const o=Object.keys(De.sharedForms),r=Object.keys(wg);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=he.useAxios((me=a.config)==null?void 0:me.axiosRequestConfig),{parseSchema:s}=Ve.useSchemas({entityId:((ge=a.entityMap.focusedEntity)==null?void 0:ge.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=Ve.usePluginHelpers(),m=Ve.useExperimentalFreeForms(),{objectsAreEqual:g}=he.useHelpers(),{i18n:{t:_}}=$e(),y=ie=>a.config.app==="konnect"?ie.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?ie.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):ie,h=(ie,W)=>{let ae=`${a.config.apiBaseUrl}${Ke.form[a.config.app].entityGetOne}`;return ae=y(ae),ae=ae.replace(/{entity}/gi,ie),ae=ae.replace(/{id}/gi,W),ae},k=ie=>{let W=`${a.config.apiBaseUrl}${Ke.form[a.config.app].entityGetAll}`;return W=y(W),W=W.replace(/{entity}/gi,ie),W},b=(ie,W,ae)=>{const de=h(ie,W);return l.get(de,ae)},E=(ie,W)=>{const ae=k(ie);return a.config.app==="konnect"?l.get(ae).then(de=>{const{data:{data:$}}=de;if(delete W.size,delete W.offset,$.length&&Object.keys(W).length===1){const T=Object.keys(W)[0],R=$.filter(D=>D[T]?!!D[T].toLowerCase().includes(W[T].toLowerCase()):!1);de.data.data=R}return de}):l.get(ae,{params:W})},N=(ie,W,ae)=>{const de=k(ie);if(a.config.app==="konnect"){const{size:$,offset:T,...R}=W;if(ie==="consumer_groups")return l.get(de,{params:{size:1e3},signal:ae}).then(re=>{const{data:{data:ee}}=re;if(ee.length&&Object.keys(R).length===1){const J=Object.keys(R)[0],z=ee.filter(le=>le[J]?!!le[J].toLowerCase().includes(R[J].toLowerCase()):!1);re.data.data=z}return re});const D={size:$,offset:T};for(const re of Object.keys(R))D.filter={[re]:{contains:R[re]}};return l.get(de,{params:D,signal:ae})}return l.get(de,{params:W,signal:ae})},C=(ie,W=50)=>{const ae=k(ie);return l.get(ae,{params:{size:W}})};t.provide(De.FORMS_API_KEY,{getOne:b,getAll:E,getAllV2:N,peek:C}),t.provide(De.FORMS_CONFIG,a.config);const x=t.ref(""),I=t.ref(""),A=t.ref(null),B=t.ref({}),v=t.reactive({}),w=t.reactive({}),M=t.computed(()=>{var ie;return(ie=A.value)==null?void 0:ie.options}),S=t.computed(()=>YM(w.name,a.rawSchema)),F=t.ref(!1),O=t.ref(),j=(ie,W)=>{F.value=ie??"",O.value=W},X=ie=>{var W;(W=O.value)==null||W.call(O,ie),F.value=!1},L=()=>{var R,D;const ie={...a.schema},W=w,ae=v,de=Object.keys(W),$={};if(!u(B.value))for(let re=0;re<((D=(R=B.value)==null?void 0:R.fields)==null?void 0:D.length);re++)ie[B.value.fields[re].model]=B.value.fields[re];De.customFields.forEach(re=>{ie[re]&&(ie[re].fields.forEach(ee=>{ee.fields&&ee.fields.forEach(J=>{ie[J.model]=J}),ee.model&&(ie[ee.model]=ee)}),delete ie[re])}),de.forEach(re=>{var be;if(!ie[re]){re==="partials"&&($[re]=W[re]);return}const ee=ie[re];let J=W[re];const z=ae[re],le=Array.isArray(J)?"array":typeof J,H=ee?ee.valueType:null,Y=ee?ee.valueArrayType:null,te=ee?ee.transform:null;if(J==null&&z==null&&!ee.submitWhenNull)return;if(ee){if(H&&le!==H)switch(H){case"array":le==="string"&&J.length&&(J=J.split(",").map(ne=>{if(ne=ne.trim(),Y==="string")return String(ne);if(Y==="number")return Number(ne);if(Y==="boolean"){if(typeof ne=="string")return ne.toLowerCase()==="true"||ne==="1";if(typeof ne=="number")return ne===1}return ne})),(!J||!J.length)&&(J=ee.submitWhenNull?null:[]);break;case"number":ee.referenceable!==!0&&(J=Number(J));break;case"boolean":le==="string"&&(J=J.toLowerCase()==="true"||J==="1"),le==="number"&&(J=J===1);break;case"string":J=J==null?"":String(J);break}else H==="array"&&(!J||!J.length?J=ee.submitWhenNull?null:[]:((be=ee.inputAttributes)==null?void 0:be.type)==="number"&&(J=J.map(ne=>Number(ne))));if(ee.type==="array"&&ee.nestedFields){const ne=_e=>{Object.keys(_e).forEach(Ne=>{_e[Ne]&&typeof _e[Ne]=="object"&&!Array.isArray(_e[Ne])&&_e[Ne]!==null?ne(_e[Ne]):(_e[Ne]===void 0||_e[Ne]===null||typeof _e[Ne]=="number"&&isNaN(_e[Ne])||typeof _e[Ne]=="string"&&_e[Ne].trim().length===0)&&delete _e[Ne]})};J&&typeof J=="object"&&ne(J)}ee.type==="object-advanced"&&ee.fields&&J!==null&&(Object.entries(J).length===0?J=null:Object.keys(J).forEach(ne=>{Array.isArray(J[ne])||(J[ne]=J[ne].split(","))}))}let ce=c(re);if(ee.fieldNameHasDashes){const[ne,..._e]=ce.split(".").reverse();ce=[ne.replace(/_/g,"-"),..._e].reverse().join(".")}if(H==="object-expand"){let ne;[ce,ne]=ce.split(".");let _e={};$[ce]&&(_e=$[ce]),_e[ne]=J,J=_e}z!==void 0&&J===""&&J!==z?$[ce]=H==="object"?{}:null:ee.type==="checklist"&&J===""?$[ce]=[]:J!==""&&($[ce]=J),$[ce]=te?te(J):$[ce],p(ce,$)});const T=d($);return I.value&&Object.assign(T,Z.value),T},U=(ie,W={})=>{f(w,W,ie,a.editing),i("model-updated",{model:w,originalModel:v,data:L()})},P=(ie,W)=>{var $;const ae={[W]:ie};typeof(($=a.schema[W])==null?void 0:$.modelTransformer)=="function"&&(ae[W]=a.schema[W].modelTransformer(ie));const de=Object.assign({},w,ae);Object.assign(w,de),i("model-updated",{model:w,originalModel:v,data:L()})},V=ie=>{i("validity-change",ie)},G=(ie,W)=>{Object.keys(ie).forEach(ae=>{var D,re;let de=W?`${W}-${ae}`:ae,$=a.schema[de];if(!$){const ee=W?`${W}-${ae.replace(/-/g,"_")}`:ae.replace(/-/g,"_");(D=a.schema[ee])!=null&&D.fieldNameHasDashes&&(de=ee,$=a.schema[de]),W&&((re=a.schema[W])==null?void 0:re.keyFromObject)===ae&&(de=W,$=a.schema[de])}const T=ie[ae],R=typeof T;if($&&$.type==="object-advanced"&&!T){w[de]={},v[de]={};return}if(Array.isArray(T)){w[de]=JSON.parse(JSON.stringify(T)),v[de]=JSON.parse(JSON.stringify(T));return}if(R==="object"&&T&&!T.length)return G(T,de);if(R==="object"&&T&&T.length&&$.type==="input"){w[de]=T.join(", "),v[de]=T.join(", ");return}w[de]=T,v[de]=T}),i("model-updated",{model:w,originalModel:v,data:L()})},Z=t.shallowRef(a.record),K=ie=>{Z.value=ie,i("model-updated",{model:{...w,...ie},originalModel:v,data:L()})},q=t.ref(!0),se=()=>{var ie;if(a.record&&a.schema&&(G({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&G({consumer_id:a.record.consumer_id||a.record.consumer}),G(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&G({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),a.record.partials&&U("redis",{partials:a.record.partials}),I.value?K(a.record):G(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const W={};for(const ae in a.entityMap){const de=a.entityMap[ae].id,$=a.entityMap[ae].idField,T=$==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify($).replace("_","-"));Object.prototype.hasOwnProperty.call(w,T)&&(W[T]=de)}G(W)}if((ie=a.entityMap.consumer)!=null&&ie.id&&a.schema&&a.credential){const W={};Object.prototype.hasOwnProperty.call(w,"consumer")&&(W.consumer=a.entityMap.consumer.id),G(W)}q.value=!1};return t.watch(q,ie=>{i("loading",ie)}),t.watch(()=>a.schema,(ie,W)=>{var de,$;if(g(ie||{},W||{}))return;const ae=s(ie,void 0,void 0,a.engine);Object.assign(w,ae.model),B.value={fields:($=(de=B.value)==null?void 0:de.fields)==null?void 0:$.map(T=>({...T,disabled:T.disabled||!1}))},Object.assign(v,JSON.parse(JSON.stringify(ae.model))),I.value=a.engine?a.engine==="vfg"?void 0:Fa(ae.model.name,m)||"CommonForm":Fa(ae.model.name,m),x.value=De.getSharedFormName(ae.model.name),se()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var ie,W;A.value=s(a.schema,void 0,void 0,a.engine),Object.assign(w,((ie=A.value)==null?void 0:ie.model)||{}),B.value=((W=A.value)==null?void 0:W.schema)||{},se()}),(ie,W)=>{var de,$;const ae=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",XM,[q.value?(t.openBlock(),t.createBlock(ae,{key:0,type:"form"})):w.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",ZM,[I.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(wg[I.value]),{key:0,"form-model":w,"form-options":M.value,"form-schema":B.value,"is-editing":e.editing,model:e.record,"on-form-change":K,"on-model-updated":P,"on-validity-change":V,"plugin-name":w.name,"render-rules":(de=t.unref(vt)[w.name])==null?void 0:de.freeformRenderRules,schema:S.value,onGlobalAction:W[0]||(W[0]=(T,R)=>ie.$emit("globalAction",T,R))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(T=>[T.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Ro.VaultSecretPickerProvider),t.mergeProps({key:0},T,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","plugin-name","render-rules","schema"])):x.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(De.sharedForms)[x.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":w,"form-options":M.value,"form-schema":B.value,"is-editing":e.editing,"on-model-updated":P,"on-partial-toggled":U,"show-new-partial-modal":T=>ie.$emit("showNewPartialModal",T)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(T=>[T.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Ro.VaultSecretPickerProvider),t.mergeProps({key:0},T,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(De.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:w,options:M.value,schema:B.value,onModelUpdated:P,onPartialToggled:U,onRefreshModel:L,onShowNewPartialModal:W[1]||(W[1]=T=>ie.$emit("showNewPartialModal",T))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",JM,t.toDisplayString(t.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[($=t.unref(vt)[w.name])!=null&&$.fieldRules&&(a.config.isNewOtelSchema||w.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(U0,{rules:t.unref(vt)[w.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(T=>[T.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Ro.VaultSecretPickerProvider),t.mergeProps({key:0},T,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Ro.VaultSecretPicker),{config:a.config,setup:F.value,onCancel:W[2]||(W[2]=()=>F.value=!1),onProceed:X},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-00037786"]]),e2={key:1},t2=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,o)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",e2,[t.renderSlot(n.$slots,"default")]))}}),n2={class:"kong-ui-entities-plugin-form-container"},o2={key:0},r2={class:"plugin-form-actions"},i2=Ae(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var J;const o=n,r=e,i=vn.useRouter(),{i18n:{t:a}}=Ve.useI18n(),{customSchemas:l,typedefs:s}=Ve.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ve.usePluginHelpers(),{getMessageFromError:d}=he.useErrors(),{capitalize:f}=he.useStringHelpers(),{objectsAreEqual:u}=he.useHelpers(),{axiosInstance:p}=he.useAxios((J=r.config)==null?void 0:J.axiosRequestConfig),m=t.ref(!1),g=t.computed(()=>!!r.pluginId),_=t.computed(()=>r.pluginId?he.EntityBaseFormType.Edit:he.EntityBaseFormType.Create),y=t.ref(void 0),h=t.ref(void 0),k=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),E=t.ref({}),N=t.ref(),C=t.ref();t.provide(Jr,{redisType:N,redisPath:C,isEditing:g.value});const x=t.ref(!1),I=t.reactive({enabled:!0,protocols:[],tags:[]}),A=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),B=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&B.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"}),(r.config.app==="kongManager"||r.config.enableDeckTab)&&B.value.push({title:a("view_configuration.deck"),hash:"#deck"});const v=t.ref(""),w=t.computed(()=>{var le;if(k.value){let H=Ke.form[r.config.app].credential[_.value];return H=H.replace(/{resourceEndpoint}/gi,O.value),H}let z;return r.config.entityType&&r.config.entityId?z=Ke.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):z=Ke.form[r.config.app].edit.all,r.config.app==="konnect"&&((le=vt[r.pluginType])!=null&&le.useUIData)?`${z}?__ui_data=true`:z}),M=()=>{m.value=!m.value},S=t.computed(()=>{var ce,be,ne,_e,Ne,pe,fe,je;const z=r.config.entityType==="consumers"&&r.config.entityId||((be=(ce=b.value)==null?void 0:ce.consumer)==null?void 0:be.id),le=r.config.entityType==="consumer_groups"&&r.config.entityId||((_e=(ne=b.value)==null?void 0:ne.consumer_group)==null?void 0:_e.id),H=r.config.entityType==="services"&&r.config.entityId||((pe=(Ne=b.value)==null?void 0:Ne.service)==null?void 0:pe.id),Y=r.config.entityType==="routes"&&r.config.entityId||((je=(fe=b.value)==null?void 0:fe.route)==null?void 0:je.id);if(!(z||le||H||Y))return{global:{entity:Q.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const te={};return H&&(te.service={entity:Q.PluginScope.SERVICE,entityEndpoint:"services",id:H,idField:In.SERVICE}),Y&&(te.route={entity:Q.PluginScope.ROUTE,entityEndpoint:"routes",id:Y,idField:In.ROUTE}),z&&(te.consumer={entity:Q.PluginScope.CONSUMER,entityEndpoint:"consumers",id:z,idField:In.CONSUMER}),le&&(te.consumer_group={entity:Q.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:le,idField:In.CONSUMER_GROUP}),r.config.entityType&&(te.focusedEntity={entity:Q.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:In[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),te}),F=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||_.value===he.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),O=t.computed(()=>{var H;const z=r.developer?"developers":"consumers",le=((H=so[r.pluginType])==null?void 0:H.endpoint)||"/plugins";return`${z}/${r.config.entityId}${r.developer?"/credentials":""}${le}`}),j=z=>{const le=Array.from(new Set(z.map(H=>typeof H)));return le.length>1?"string":le[0]},X=(z,le,H,Y)=>{var ne,_e;let te=le&&le.fields||[];const ce=l[r.pluginType],be=(_e=(ne=so[r.pluginType])==null?void 0:ne.schema)==null?void 0:_e.fields;return Array.isArray(te)&&(te=te.reduce((Ne,pe)=>{const fe=Object.keys(pe)[0];return fe.match(/-/g)?Ne[fe.replace(/-/g,"_")]={...pe[fe],fieldNameHasDashes:!0}:Ne[fe]=pe[fe],Ne},{})),Object.keys(te).sort().forEach(Ne=>{var lt,ht,Wt,Sn,fn,st,ue;const pe=te[Ne];pe.type==="set"&&(pe.type="array");const fe=z?`${z}-${Ne}`:`${Ne}`;if((lt=ce==null?void 0:ce.fieldsToDelete)!=null&&lt.includes(fe)){ud(H,fe);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return X(fe,pe.schema,H);if(pe.fields)return Y&&pe.type==="record"?(H[fe]={type:"object",model:Ne,schema:{fields:Object.values(X(fe,pe,{},!0))}},H):X(fe,pe,H);if(H[fe]={id:fe,model:Ne},H[fe].type=pe.type==="boolean"?"checkbox":"input",H[fe].required=pe.required,H[fe].referenceable=pe.referenceable,fe.startsWith("config-"))if(!Y&&pe.type==="array"&&(v.value=fe),Y&&v.value&&fe.startsWith(v.value)){const ye=fe.slice(v.value.length+1);H[fe].label=ye.split("-").map(c).join(".")}else H[fe].label=c(fe);if((z==="config"||z.startsWith("config-"))&&(ht=te[Ne])!=null&&ht.description&&(H[fe].help=Pr.marked.parse(te[Ne].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(H[fe].type="object-advanced",H[fe].values=pe.values,pe.values.type==="array"){const{type:ye}=pe.values.elements||{};H[fe].schema={fields:[{schema:{fields:[{...Be,model:fe,valueArrayType:ye==="integer"?"number":ye||"string",inputAttributes:{...Be.inputAttributes,type:ye==="integer"?"number":"text",inputMode:ye==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(H[fe].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(ye=>{const Ce=Object.keys(ye)[0];return{model:Ce,type:"input",label:f(Ce),placeholder:Ce,inputType:ye[Ce].type}})}}]});return H}if(pe.enum&&pe.type==="array"&&(H[fe].type="checklist",H[fe].values=pe.enum,H[fe].multi=!0,H[fe].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(H[fe].type="select",H[fe].values=pe.one_of,H[fe].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const ye=pe.elements;if(H[fe].referenceable=ye.referenceable,H[fe].elements=ye,["string","integer","number"].includes(ye.type)&&!ye.one_of){const{id:Ce,help:ke,label:we,hint:xe,values:Te,referenceable:ze,model:Ge}=H[fe],{inputAttributes:Fe,...We}=JSON.parse(JSON.stringify(Be));Fe.type=ye.type==="string"?"text":"number",H[fe]={id:Ce,help:ke,label:we,hint:xe,values:Te,referenceable:ze,model:Ge,inputAttributes:Fe,...We}}}if(pe.hint&&(H[fe].hint=pe.hint),ce&&!ce.overwriteDefault&&Object.keys(ce).forEach(ye=>{if(ye===fe){const{help:Ce,label:ke,hint:we,values:xe,referenceable:Te,elements:ze}=H[fe],{help:Ge,...Fe}=ce[ye];H[fe]={help:Ce,label:ke,hint:we,values:xe,referenceable:Te,elements:ze,...Fe},typeof Ge=="string"&&(H[fe].help=Pr.marked.parse(Ge,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((Wt=pe.elements)==null?void 0:Wt.type)==="record"&&Array.isArray(pe.elements.fields)){let ye={};for(const ke of pe.elements.fields)ye={...ye,...ke};const Ce=(st=(fn=(Sn=H[fe])==null?void 0:Sn.items)==null?void 0:fn.schema)==null?void 0:st.fields;if(Array.isArray(Ce))for(const ke of H[fe].items.schema.fields){const we=(ue=ye[ke.model])==null?void 0:ue.description;ke.help===void 0&&typeof we=="string"&&(ke.help=Pr.marked.parse(we,{mangle:!1,headerIds:!1}))}if(Ce||(H[fe].type="array",H[fe].newElementButtonLabelClasses="kong-form-new-element-button-label",H[fe].fieldClasses="array-card-container-wrapper",H[fe].itemContainerComponent="FieldArrayCardContainer",H[fe].items={type:"object",schema:{fields:Object.values(X(fe,pe.elements,{},!0))}},H[fe].items.schema.fields.forEach(ke=>{var we,xe;for(const Te of pe.elements.fields){const ze=Object.keys(Te)[0],Ge=((xe=(we=ke.id)==null?void 0:we.split)==null?void 0:xe.call(we,"-"))??[];if(Ge[Ge.length-1]===ze){ke.model=ze,ke.label=c(ze);break}}}),pe.elements.type==="record"&&(H[fe].nestedFields=!0)),!H[fe].nestedFields)H[fe].items.default=()=>pe.elements.fields.reduce((ke,we)=>{const xe=Object.keys(we)[0];return ke[xe]=we[xe].default,ke},{});else{const ke=(we,xe)=>{if(we.type==="object"){we.model&&(xe[we.model]={});for(const Te of we.schema.fields)ke(Te,we.model?xe[we.model]:xe)}else we.model&&(xe[we.model]=we.default)};H[fe].items.default=()=>{const we={};return ke(H[fe].items,we),we}}}if(k.value&&be){for(let ye=0;ye<be.length;ye++)if(be[ye][fe]){H[fe]={...H[fe],...be[ye][fe]};break}}if(pe.required&&pe.type!=="boolean"&&(H[fe].required=!0,H[fe].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(H[fe].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(H[fe].default=pe.default),H[fe].type==="input"){["string","number"].includes(typeof H[fe].default)&&r.config.app==="konnect"&&(H[fe].placeholder=`Default: ${H[fe].default===""?"<empty string>":H[fe].default}`);const{type:ye}=pe.elements||{};ye&&(H[fe].valueArrayType=ye==="integer"?"number":ye),H[fe].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let je="string";pe.enum?je=j(pe.enum):pe.type==="boolean"?je="boolean":pe.type==="number"||pe.type==="integer"?(je="number",H[fe].inputType="number"):pe.type==="array"?(je="array",H[fe].default=pe.default,pe.len_min>0&&(H[fe].submitWhenNull=!0)):pe.type==="foreign"?je="object":pe.default&&Array.isArray(pe.default)?(je="array",H[fe].valueArrayType=j(pe.default)):pe.default&&(je=typeof pe.default),H[fe].valueType=je,pe.fieldNameHasDashes&&(H[fe].fieldNameHasDashes=!0)}),H},L=()=>{var fe,je,lt,ht,Wt,Sn,fn,st,ue,ye,Ce,ke;const z=((fe=vt[r.pluginType])==null?void 0:fe.scope.includes(Q.PluginScope.SERVICE))??!0,le=((je=vt[r.pluginType])==null?void 0:je.scope.includes(Q.PluginScope.ROUTE))??!0,H=((lt=vt[r.pluginType])==null?void 0:lt.scope.includes(Q.PluginScope.CONSUMER))??!0,Y=r.config.disableConsumerGroupScope?!1:((ht=vt[r.pluginType])==null?void 0:ht.scope.includes(Q.PluginScope.CONSUMER_GROUP))??!0,te=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Sn=(Wt=b.value)==null?void 0:Wt.consumer)!=null&&Sn.id),ce=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((st=(fn=b.value)==null?void 0:fn.consumer_group)!=null&&st.id),be=r.config.entityType==="services"&&!!r.config.entityId||!!((ye=(ue=b.value)==null?void 0:ue.service)!=null&&ye.id),ne=r.config.entityType==="routes"&&!!r.config.entityId||!!((ke=(Ce=b.value)==null?void 0:Ce.route)!=null&&ke.id),_e=[],Ne=(we,xe,Te)=>we?a("plugins.form.disable_source_scope_change",{scope:Te}):xe?a("plugins.form.disable_data_retrieving",{scope:Te}):"",pe=we=>{var xe,Te;return((Te=(xe=r.scopedEntitiesPermissions)==null?void 0:xe[we])==null?void 0:Te.canRetrieve)===!1};if(z){const we=pe("service"),xe="services",Te=be&&r.disableScopeSelection;_e.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:xe,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(le){const we=pe("route"),xe="routes",Te=ne&&r.disableScopeSelection;_e.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:xe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(H){const we=pe("consumer"),xe="consumers",Te=te&&r.disableScopeSelection;_e.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:xe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(Y){const we=pe("consumer_group"),xe="consumer_groups",Te=ce&&r.disableScopeSelection;_e.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:xe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(_e.length){const we=[...z?["service"]:[],...le?["route"]:[],...H?["consumer"]:[],...Y?["consumer_group"]:[]],Te=we.splice(we.length-2,2).map(Ge=>a(Ge==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ge}.plural`)).join(`${we.length>0?",":""} and/or `),ze=["Specific",[...we.length>0?[we.map(Ge=>a(Ge==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ge}.plural`)).join(", ")]:[],Te].join(", ")].join(" ");F.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:ze,fields:[]}),F.selectionGroup.fields[1].fields=_e}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(F,l[r.pluginType].formSchema)},U=t.computed(()=>!u(A.fields,I,!0)),P=t.computed(()=>!re.value&&!x.value&&(_.value===he.EntityBaseFormType.Create||U.value)),V=t.ref(!1),G=t.ref(),Z=z=>{r.credential&&z.password&&(z.password=""),A.fields.id=(z==null?void 0:z.id)||void 0,G.value=z==null?void 0:z.ordering,Object.assign(I,A.fields),b.value=z,V.value=!0},K=t.ref({}),q=z=>{var le;A.fields=z.model,A.fields.id=((le=b.value)==null?void 0:le.id)||void 0,Object.assign(I,z.originalModel),K.value=z.data,r.isWizardStep&&o("model-updated",{model:A.fields,data:z.data,resourceEndpoint:O.value})},se=t.ref(new Map),me=t.computed(()=>[A.clientErrorMessage,A.serverErrorMessage].filter(Boolean).join("; ")),ge=z=>{z.valid?se.value.delete(z.model):se.value.set(z.model,z.error),A.clientErrorMessage=[...se.value.entries()].map(([le,H])=>`${le}: ${typeof H=="string"?H:d(H)}`).join("; "),A.clientErrorMessage&&(A.serverErrorMessage="")};t.watch([S,V],(z,le)=>{const H=z[0]!==le[0],Y=z[1],te=le[1];if(!k.value&&_.value===he.EntityBaseFormType.Edit&&(H||Y&&Y!==te)){const ce=X("config",E.value,F);ae.value&&(ce._isCustomPlugin=!0),N.value&&(ce._supported_redis_partial_type=N.value),h.value=ce}},{deep:!0});const ie=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},W=t.computed(()=>{const z=r.config.entityType&&r.config.entityId&&!r.developer,le=k.value?Ke.form[r.config.app].credential[_.value]:Ke.form[r.config.app][_.value][z?"forEntity":"all"];let H=`${r.config.apiBaseUrl}${le}`;return r.config.app==="konnect"?H=H.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(H=H.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),H=H.replace(/{resourceEndpoint}/gi,O.value),H=H.replace(/{id}/gi,r.pluginId),H=H.replace(/{entityType}/gi,r.config.entityType||""),H=H.replace(/{entityId}/gi,r.config.entityId||""),H}),ae=t.computed(()=>!Object.keys(vt).includes(r.pluginType)),de=t.computed(()=>{const z=K.value;if(k.value){for(const le in Q.PluginScope){const H=Q.PluginScope[le];z[H]&&!z[H].id&&(z[H]={id:r.config.entityId})}delete z.created_at}return K.value.partials&&C.value&&ud(z,C.value),z}),$=t.computed(()=>{const{__ui_data:z,...le}={...de.value};return le}),T=async()=>{if(!A.clientErrorMessage&&!r.isWizardStep)try{A.isReadonly=!0;let z;const le=JSON.parse(JSON.stringify(de.value)),H=l[r.pluginType];typeof(H==null?void 0:H.shamefullyTransformPayload)=="function"&&H.shamefullyTransformPayload({originalModel:I,model:A.fields,payload:le,schema:h.value}),_.value==="create"?z=await p.post(W.value,le):_.value==="edit"&&(z=r.config.app==="konnect"||N.value&&le.partials?await p.put(W.value,Object.assign({ordering:G.value},le)):await p.patch(W.value,le)),Object.assign(I,A.fields),o("update",z==null?void 0:z.data)}catch(z){A.serverErrorMessage=d(z),o("error",z)}finally{A.isReadonly=!1}},R=t.computed(()=>{var Y;const z=k.value?(Y=so[r.pluginType])==null?void 0:Y.schemaEndpoint:r.pluginType,le=k.value?Ke.form[r.config.app].credentialSchema:Ke.form[r.config.app].pluginSchema;let H=`${r.config.apiBaseUrl}${le}`;return r.config.app==="konnect"?H=H.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(H=H.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),H=H.replace(/{plugin}/gi,z),H}),D=t.ref(""),re=t.ref(!1),ee=t.ref("");return t.onBeforeMount(async()=>{var z,le,H,Y;re.value=!0;try{if(k.value&&r.config.app==="konnect"){const te=(z=so[r.pluginType])==null?void 0:z.schemaEndpoint,ce=Lg[te];D.value=te,h.value=X("",ce,{}),re.value=!1}else{const te=r.schema??(await p.get(R.value)).data;if(y.value=te,te)if(k.value)h.value=X("",te,{}),re.value=!1;else{const ce=te.fields.find(ne=>ne.config);E.value=ce?ce.config:te,te.supported_partials&&(N.value=Object.keys(te.supported_partials).find(ne=>[Or.REDIS_CE,Or.REDIS_EE].includes(ne)),C.value=(le=te.supported_partials[N.value])==null?void 0:le[0]),L();const be=(H=te.fields.find(ne=>ne.protocols))==null?void 0:H.protocols;if(be){const{default:ne=[],elements:_e={}}=be;F.protocols.default=ne,F.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:ne.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(Y=_e.one_of)!=null&&Y.length&&(F.protocols.values=_e.one_of.map(Ne=>({label:Ne,value:Ne})))}if(V.value||_.value===he.EntityBaseFormType.Create){const ne=X("config",E.value,F);N.value&&(ne._supported_redis_partial_type=N.value),ae.value&&(ne._isCustomPlugin=!0),h.value=ne}}}}catch(te){console.error(te),ee.value=d(te),o("error:fetch-schema",te)}finally{re.value=!1}}),(z,le)=>{const H=t.resolveComponent("KSkeleton"),Y=t.resolveComponent("KEmptyState"),te=t.resolveComponent("KButton"),ce=t.resolveComponent("KTabs"),be=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",n2,[re.value?(t.openBlock(),t.createBlock(H,{key:0,type:"form"})):ee.value?(t.openBlock(),t.createBlock(Y,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(he.EntityBaseForm),{key:2,"can-submit":P.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(he.SupportedEntityType).Plugin,"error-message":me.value,"fetch-url":w.value,"form-fields":de.value,"is-readonly":A.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ie,"onFetch:error":le[4]||(le[4]=ne=>z.$emit("error",ne)),"onFetch:success":Z,onLoading:le[5]||(le[5]=ne=>z.$emit("loading",ne))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",o2)):(t.openBlock(),t.createBlock(t2,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",r2,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(te,{key:0,appearance:"tertiary","data-testid":`plugin-${g.value?"edit":"create"}-form-view-configuration`,onClick:le[3]||(le[3]=ne=>M())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(te,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${g.value?"edit":"create"}-form-cancel`,disabled:A.isReadonly,onClick:ie},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(te,{appearance:"primary","data-testid":`plugin-${g.value?"edit":"create"}-form-submit`,disabled:!P.value||A.isReadonly,type:"submit",onClick:T},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:T},null,32),t.createVNode(QM,{config:e.config,credential:k.value,editing:_.value===t.unref(he.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":S.value,"raw-schema":y.value,record:b.value,schema:h.value,onGlobalAction:le[0]||(le[0]=(ne,_e)=>z.$emit("globalAction",ne,_e)),onLoading:le[1]||(le[1]=ne=>x.value=ne),onModelUpdated:q,onShowNewPartialModal:le[2]||(le[2]=ne=>z.$emit("showNewPartialModal",ne)),onValidityChange:ge},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","engine","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(be,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:M},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(ce,{"data-testid":"form-view-configuration-slideout-tabs",tabs:B.value},{json:t.withCtx(()=>[t.createVNode(t.unref(he.JsonCodeBlock),{config:e.config,"entity-record":$.value,"fetcher-url":W.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(he.YamlCodeBlock),{"entity-record":$.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(he.TerraformCodeBlock),{"credential-type":D.value,"entity-record":$.value,"entity-type":t.unref(he.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:t.withCtx(()=>[t.createVNode(t.unref(he.DeckCodeBlock),{app:e.config.app,"control-plane-name":e.config.app==="konnect"?e.config.controlPlaneName:void 0,"entity-record":$.value,"entity-type":t.unref(he.SupportedEntityType).Plugin,"geo-api-server-url":e.config.app==="konnect"?e.config.geoApiServerUrl:void 0,"kong-admin-api-url":e.config.app==="kongManager"?e.config.apiBaseUrl:void 0,workspace:e.config.app==="kongManager"?e.config.workspace:void 0},null,8,["app","control-plane-name","entity-record","entity-type","geo-api-server-url","kong-admin-api-url","workspace"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-9bc0e566"]]),a2={class:"kong-ui-entities-plugins-list"},l2={class:"button-row"},s2={class:"name-cell-wrapper"},c2={class:"info-wrapper"},d2={key:0,class:"info-name"},u2={key:1,class:"info-name"},f2={key:2,class:"info-type"},p2={key:1},m2=Ae(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var D,re;const o=Ve.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ve.useI18n(),l=vn.useRouter(),{axiosInstance:s}=he.useAxios((D=i.config)==null?void 0:D.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=he.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var ee;return((ee=i.config)==null?void 0:ee.entityType)==="consumers"}),m=t.computed(()=>{var ee;return((ee=i.config)==null?void 0:ee.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||he.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),y={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(re=i.config)!=null&&re.entityId||(y.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),y.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(y.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),y.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const h=y,k=t.computed(()=>{var J,z,le,H;let ee=i.config.entityType?`${i.config.apiBaseUrl}${Ke.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Ke.list[i.config.app].all}`;return i.config.app==="konnect"?ee=ee.replace(/{controlPlaneId}/gi,((J=i.config)==null?void 0:J.controlPlaneId)||""):i.config.app==="kongManager"&&(ee=ee.replace(/\/{workspace}/gi,(z=i.config)!=null&&z.workspace?`/${i.config.workspace}`:"")),ee.replace(/{entityType}/gi,((le=i.config)==null?void 0:le.entityType)||"").replace(/{entityId}/gi,((H=i.config)==null?void 0:H.entityId)||"")}),b=t.ref(""),E=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:y.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...y.enabled,label:a("search.filter.field.enabled")},name:y.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:N,fetcherState:C,fetcherCacheKey:x}=he.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),k),I=()=>{b.value=""},A=()=>{x.value++},B=t.ref(null),v=ee=>{var z,le,H,Y;const J=[];return((z=ee.route)!=null&&z.id||ee.route_id)&&J.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((le=ee.service)!=null&&le.id||ee.service_id)&&J.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((H=ee.consumer)!=null&&H.id||ee.consumer_id)&&J.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((Y=ee.consumer_group)!=null&&Y.id||ee.consumer_group_id)&&J.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),J.length?J:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},w=async(ee,J)=>{var z;return ee===null?!1:await((z=i.canRetrieveScopedEntity)==null?void 0:z.call(i,ee,J.id))},M=(ee,J)=>{var le,H,Y,te,ce;let z=null;switch(ee){case"route":z=(le=J.route)==null?void 0:le.id;break;case"service":z=(H=J.service)==null?void 0:H.id;break;case"consumer":z=(Y=J.consumer)==null?void 0:Y.id;break;case"consumer_group":z=(te=J.consumer_group)==null?void 0:te.id;break}z&&((ce=i.config)!=null&&ce.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(ee,z))},S=t.ref(!1),F=t.ref(null),O=t.computed(()=>{const ee={action:"disable",id:"",name:""};if(F.value){const{enabled:J,id:z,name:le}=F.value;ee.action=J?"disable":"enable",ee.id=z,ee.name=o.getDisplayName(le)||z}return ee}),j=ee=>{S.value=!0,F.value=ee},X=()=>{S.value=!1,F.value=null},L=async()=>{var le,H,Y,te,ce,be,ne,_e;if(!await((le=i.canEdit)==null?void 0:le.call(i,F.value))||!F.value)return;let J=`${i.config.apiBaseUrl}${(ce=Ke.item[i.config.app])==null?void 0:ce[(H=i.config)!=null&&H.entityType?"forEntity":"all"].replace(/{entityType}/gi,((Y=i.config)==null?void 0:Y.entityType)||"").replace(/{entityId}/gi,((te=i.config)==null?void 0:te.entityId)||"")}`.replace(/{id}/gi,F.value.id||"");i.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((be=i.config)==null?void 0:be.controlPlaneId)||""):i.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(ne=i.config)!=null&&ne.workspace?`/${i.config.workspace}`:""));const z=!F.value.enabled;try{const Ne=(_e=i.config)==null?void 0:_e.app;let pe;b.value&&Ne==="konnect"&&(pe=await s.get(J));const{data:fe}=Ne==="konnect"?await s.put(J,{...(pe==null?void 0:pe.data)||F.value,enabled:z},{timeout:12e4}):await s.patch(J,{...F.value,enabled:z},{timeout:12e4});r("toggle-enabled",z,fe),F.value.enabled=z}catch(Ne){r("error",Ne)}},U=async(ee,J)=>{const z=ee.id;if(!await J(z)){r("copy:error",{entity:ee,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:ee,field:"id",message:a("copy.success",{val:z})})},P=async(ee,J)=>{const z=JSON.stringify(ee);if(!await J(z)){r("copy:error",{entity:ee,message:a("errors.copy")});return}r("copy:success",{entity:ee,message:a("copy.success_brief")})},V=async ee=>{var z;await((z=i.canRetrieve)==null?void 0:z.call(i,ee))&&l.push(i.config.getViewRoute(ee))},G=ee=>({label:a("actions.view"),to:i.config.getViewRoute(ee)}),Z=ee=>({label:a("actions.edit"),to:i.config.getEditRoute(ee)}),K=ee=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(ee)}),q=t.ref(void 0),se=t.ref(!1),me=t.ref(!1),ge=t.ref(""),ie=he.useDeleteUrlBuilder(i.config,k.value),W=ee=>{q.value=ee,se.value=!0},ae=()=>{se.value=!1},de=async()=>{var ee,J,z;if((ee=q.value)!=null&&ee.id){me.value=!0;try{await s.delete(ie(q.value.id)),me.value=!1,se.value=!1,x.value++,r("delete:success",q.value)}catch(le){ge.value=((z=(J=le.response)==null?void 0:J.data)==null?void 0:z.message)||le.message||a("errors.delete"),r("error",le)}finally{me.value=!1}}},$=()=>{l.push(i.config.createRoute)};t.watch(C,ee=>{var J,z,le;if(ee.status===he.FetcherStatus.Error){B.value={title:a("errors.general")},(le=(z=(J=ee.error)==null?void 0:J.response)==null?void 0:z.data)!=null&&le.message&&(B.value.message=ee.error.response.data.message),r("error",ee.error);return}B.value=null});const T=t.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),R=t.ref(!1);return t.onBeforeMount(async()=>{R.value=await i.canCreate(),R.value&&(T.value.title=a("plugins.list.empty_state.title"),T.value.ctaText=a("actions.create"))}),(ee,J)=>{const z=t.resolveComponent("KButton"),le=t.resolveComponent("KEmptyState"),H=t.resolveComponent("KBadge"),Y=t.resolveComponent("KTruncate"),te=t.resolveComponent("KInputSwitch"),ce=t.resolveComponent("KDropdownItem"),be=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",a2,[t.createVNode(t.unref(he.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":T.value,"enable-entity-actions":"","error-message":B.value,fetcher:t.unref(N),"fetcher-cache-key":t.unref(x),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(h),title:e.title,"title-tag":e.titleTag,onClearSearchInput:I,"onClick:row":J[4]||(J[4]=ne=>V(ne)),onSort:A,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(he.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":J[0]||(J[0]=ne=>b.value=ne),config:E.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",l2,[!u.value&&f.value?(t.openBlock(),t.createBlock(z,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[1]||(J[1]=ne=>ee.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(z,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:ne})=>[t.createElementVNode("div",s2,[t.createVNode(t.unref(An.PluginIcon),{class:"plugin-icon",name:ne.name,size:24},null,8,["name"]),t.createElementVNode("div",c2,[ne.instance_name?(t.openBlock(),t.createElementBlock("span",d2,t.toDisplayString(ne.instance_name),1)):(t.openBlock(),t.createElementBlock("span",u2,t.toDisplayString(t.unref(o).getDisplayName(ne.name)),1)),ne.instance_name?(t.openBlock(),t.createElementBlock("span",f2,t.toDisplayString(t.unref(o).getDisplayName(ne.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:ne})=>[v(ne).length>0?(t.openBlock(),t.createBlock(Y,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(v(ne),_e=>(t.openBlock(),t.createBlock(t.unref(he.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>w(_e.type,ne),"force-show":""},{default:t.withCtx(({isAllowed:Ne})=>[t.createVNode(H,{class:t.normalizeClass(Ne||"disabled"),onClick:t.withModifiers(pe=>Ne&&_e.type&&M(_e.type,ne),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",p2,"-"))]),enabled:t.withCtx(({row:ne})=>[t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(ne)&&await e.canToggle(ne)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var Ne,pe;return[t.createElementVNode("div",{onClick:J[3]||(J[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(te,{disabled:!_e,"disabled-tooltip-text":!_e&&((pe=(Ne=e.config).getToggleDisabledTooltip)==null?void 0:pe.call(Ne,ne))||void 0,"model-value":ne.enabled,onClick:t.withModifiers(fe=>_e&&j(ne),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:ne})=>[t.createVNode(H,{appearance:t.unref(ld)(ne)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(ld)(ne)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:ne})=>[t.createVNode(t.unref(he.TableTags),{tags:ne},null,8,["tags"])]),actions:t.withCtx(({row:ne})=>[t.createVNode(be,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(ce,{"data-testid":"action-entity-copy-id",onClick:Ne=>U(ne,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(be,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(ce,{"data-testid":"action-entity-copy-json",onClick:Ne=>P(ne,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(ne)},{default:t.withCtx(()=>[t.createVNode(ce,{"data-testid":"action-entity-view","has-divider":"",item:G(ne)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canEdit(ne)},{default:t.withCtx(()=>[t.createVNode(ce,{"data-testid":"action-entity-edit",item:Z(ne)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(g)?(t.openBlock(),t.createBlock(t.unref(he.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(ne)},{default:t.withCtx(()=>[K(ne)?(t.openBlock(),t.createBlock(ce,{key:0,"data-testid":"action-entity-config-dyn-order",item:K(ne)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canDelete(ne)},{default:t.withCtx(()=>[t.createVNode(ce,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>W(ne)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var ne;return[t.createVNode(le,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(Ee.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[R.value?(t.openBlock(),t.createBlock(z,{key:0,"data-testid":"entity-create-button",onClick:$},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(z,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:J[2]||(J[2]=_e=>ee.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(ne=e.config)!=null&&ne.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(he.EntityToggleModal),{action:O.value.action,"entity-id":O.value.id,"entity-name":O.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":L,visible:S.value,onCancel:X,onProceed:X},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(he.EntityDeleteModal),{"action-pending":me.value,description:t.unref(a)("delete.description"),"entity-name":q.value&&(q.value.instance_name||q.value.name||q.value.id),"entity-type":t.unref(he.EntityTypes).Plugin,error:ge.value,title:t.unref(a)("delete.title"),visible:se.value,onCancel:ae,onProceed:de},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),g2={class:"plugin-select-card-wrapper"},h2=["data-testid"],y2={class:"plugin-card-header"},_2={class:"plugin-card-title"},b2={key:0,class:"plugin-card-actions"},w2=["data-testid","title"],k2={key:0,class:"plugin-card-text"},C2={key:0},E2=["title"],Vs=Ae(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=vn.useRouter(),{i18n:{t:a}}=Ve.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===Q.PluginGroup.CUSTOM_PLUGINS),g=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(h,k)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(h,k))},y=()=>{if(!s.value&&r.config.app==="konnect"){const h=r.config;p.value&&h.createCustomRoute?i.push(h.createCustomRoute):m.value&&d()}};return(h,k)=>{const b=t.resolveComponent("KButton"),E=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",g2,[t.createVNode(C,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:k[1]||(k[1]=x=>s.value||m.value?void 0:f())},[t.createElementVNode("div",y2,[t.createElementVNode("div",_2,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",b2,[t.createVNode(N,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{size:t.unref(ai)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(E,{key:0,"data-testid":"edit-plugin-schema",onClick:k[0]||(k[0]=t.withModifiers(x=>_(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(E,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(g,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:y},[t.createVNode(t.unref(An.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(t.openBlock(),t.createElementBlock("div",k2,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",C2,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,E2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,w2),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,h2)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),Rs=Ae(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var g;const o=e,r=n,{i18nT:i,i18n:{t:a}}=Ve.useI18n(),{getMessageFromError:l}=he.useErrors(),{axiosInstance:s}=he.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=t.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const _=o.plugin.customPluginType==="streaming"?Ke.select[o.config.app].streamingCustomPluginItem:Ke.select[o.config.app].schemaCustomPluginItem;let y=`${o.config.apiBaseUrl}${_}`;return y=y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),y=y.replace(/{pluginId}/gi,o.plugin.id),y}return null}),m=async()=>{var _,y,h,k;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((y=o.config)==null?void 0:y.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:E}=b;(E==null?void 0:E.status)===400&&((k=(h=E.data)==null?void 0:h.message)!=null&&k.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(_,y)=>{const h=t.resolveComponent("KButton"),k=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(he.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(he.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=b=>_.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(k,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:y[2]||(y[2]=b=>_.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(h,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:y[1]||(y[1]=b=>_.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),N2={class:"custom-plugins-grid"},x2={class:"empty-state-title"},S2={class:"empty-state-description"},Ds=310,v2=Ae(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ve.usePluginHelpers(),s=t.ref(!0),c=N=>{r("plugin-clicked",N)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const N=JSON.parse(JSON.stringify(o.pluginList))[Q.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:Q.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(N):N}),f=t.ref(!1),u=t.ref(null),p=N=>{f.value=!0,u.value={id:N.id,name:N.name,customPluginType:N.customPluginType}},m=N=>{var C;N&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},g=t.ref(Ds),_=t.ref(null),y=t.ref(null),h=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),k=t.ref(!1),b=()=>{g.value=Math.max(a(y.value),Ds),E()},E=()=>{var N,C;(N=y.value)!=null&&N.length&&(k.value=l(_.value,(C=y.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),g.value=Math.max(a(y.value),Ds),E(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(N,C)=>{const x=t.resolveComponent("KEmptyState"),I=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",N2,[d.value.length?(t.openBlock(),t.createBlock(I,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=A=>s.value=A),class:"custom-plugins-collapse","data-testid":`${t.unref(Q.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(Q.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:_,class:"plugin-card-container",style:t.normalizeStyle(h.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(A,B)=>(t.openBlock(),t.createBlock(Vs,{key:`plugin-card-${B}`,ref_for:!0,ref_key:"pluginCardRef",ref:y,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:A,onCustomPluginDelete:v=>p(A),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[k.value?void 0:{name:"trigger",fn:t.withCtx(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(x,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",x2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",S2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(Rs,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=A=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Ms=310,kg=Ae(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=Ve.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ve.usePluginHelpers(),c=t.ref(Ms),d=t.ref(null),f=t.ref(null),u=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),Ms),g()},g=()=>{var _,y;(_=f.value)!=null&&_.length&&(p.value=s(d.value,(y=f.value)==null?void 0:y.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Ms),g(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,y)=>{const h=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(h,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[0]=k=>o.value=k),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,k=>(t.openBlock(),t.createBlock(Vs,{key:`plugin-card-${k.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:k,onPluginClicked:b=>i("plugin-clicked",k)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[y[1]||(y[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),A2={class:"plugin-select-grid"},I2={class:"empty-state-title"},P2={class:"empty-state-description"},Ls=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve.useI18n(),a=t.ref(!1),l=t.ref(da),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[Q.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",A2,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",I2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",P2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(kg,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||t.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:f[1]||(f[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Do),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(kg,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:f[2]||(f[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):t.createCommentVNode("",!0)],64))),256))])}}}),T2={class:"kong-ui-entities-plugin-select-form"},O2={class:"plugins-filter-input-container"},$2={key:0},B2={key:3,"aria-live":"polite",class:"plugins-results-container"},V2={"data-testid":"kong-tab"},R2={class:"tab-description"},D2={"data-testid":"custom-tab"},M2={class:"tab-description"},L2=Ae(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var U;const o=e,r=n,i=vn.useRoute(),a=vn.useRouter(),{i18n:{t:l}}=Ve.useI18n(),{pluginMetaData:s}=Ve.usePluginMetaData(),{getMessageFromError:c}=he.useErrors(),{sortAlpha:d,objectsAreEqual:f}=he.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),g=t.ref(""),_=t.ref([]),y=t.ref([]),h=t.ref({}),k=t.ref([]),{axiosInstance:b}=he.useAxios((U=o.config)==null?void 0:U.axiosRequestConfig),E=t.computed(()=>h.value?Object.entries(h.value).filter(([P])=>P!==Q.PluginGroup.CUSTOM_PLUGINS).reduce((P,[,V])=>{for(const G of V??[])P[G.id]=G;return P},{}):{}),N=t.computed(()=>{var G;if(!h.value)return{};const P=u.value.toLowerCase(),V=JSON.parse(JSON.stringify(h.value));for(const Z in h.value){const K=((G=h.value[Z])==null?void 0:G.filter(q=>q.name.toLowerCase().includes(P)||q.id.toLowerCase().includes(P)||q.group.toLowerCase().includes(P)))||[];K.length?V[Z]=K:delete V[Z]}return V}),C=t.computed(()=>o.highlightedPluginIds.reduce((P,V)=>{const G=E.value[V];return G&&P.push(G),P},[])),x=t.computed(()=>Object.keys(N.value).length>0),I=t.computed(()=>Object.keys(h.value).length>0&&!x.value),A=t.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),B=t.computed(()=>{var V;let P=A.value.length&&((i==null?void 0:i.hash)||((V=A.value[0])==null?void 0:V.hash))||"";return P==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(P="#kong"),P}),v=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter(P=>!o.ignoredPlugins.includes(P)).filter(P=>o.config.entityType&&(o.config.entityType==="services"&&s[P]&&!s[P].scope.includes(Q.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[P]&&!s[P].scope.includes(Q.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[P]&&!s[P].scope.includes(Q.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[P]&&!s[P].scope.includes(Q.PluginScope.CONSUMER))?!1:P).reduce((P,V)=>{var se;const G=s[V]&&s[V].name||V,Z={...s[V],id:V,name:G,available:_.value.includes(V),disabledMessage:"",group:((se=s[V])==null?void 0:se.group)||Q.PluginGroup.CUSTOM_PLUGINS};Z.group===Q.PluginGroup.CUSTOM_PLUGINS&&(Z.customPluginType=y.value.find(me=>me.name===V)?"streaming":"schema"),o.disabledPlugins&&(Z.disabledMessage=o.disabledPlugins[V]);const K=Z.group||l("plugins.select.misc_plugins");let q=P[K];return q||(q=[]),q.push(Z),q.sort(d("name")),P[K]=q,P},{}),w=t.computed(()=>{var V;let P=`${o.config.apiBaseUrl}${Ke.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(P=((V=o.config.gatewayInfo)==null?void 0:V.edition)==="community"?`${o.config.apiBaseUrl}${Ke.select[o.config.app].availablePluginsForOss}`:P.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),P}),M=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let P=`${o.config.apiBaseUrl}${Ke.select[o.config.app].streamingCustomPlugins}`;return P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),P}return null}),S=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let P=`${o.config.apiBaseUrl}${Ke.list[o.config.app].forEntity}`;return o.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),P.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),F=P=>{a.replace({hash:P,query:i.query})};t.watch(()=>o.disabledPlugins,(P,V)=>{!f(P,V)&&!p.value&&(h.value=v())}),t.watch(()=>o.ignoredPlugins,(P,V)=>{!f(P,V)&&!p.value&&(h.value=v())}),t.watch(p,P=>{r("loading",P)});const O=t.ref(!1),j=t.ref(!1),X=t.ref(!1);t.onBeforeMount(async()=>{O.value=await o.canCreateCustomPlugin(),j.value=await o.canEditCustomPlugin(),X.value=await o.canDeleteCustomPlugin()});const L=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var P,V;(V=(P=L.value)==null?void 0:P.input)==null||V.focus();try{const{data:G}=await b.get(w.value);if(o.config.app==="konnect"){const{names:Z}=G;if(_.value=Z||[],M.value){const{data:K}=await b.get(M.value);y.value=K.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:Z}}=G;_.value=Z?Object.keys(Z):[]}}catch(G){m.value=!0,g.value=c(G)}if(S.value)try{const{data:{data:G}}=await b.get(S.value);if(G!=null&&G.length){const Z=G.reduce((K,q)=>(q.name&&K.push(q.name),K),[]);k.value=k.value.concat(Z)}}catch{}m.value||(h.value=v()),p.value=!1}),(P,V)=>{const G=t.resolveComponent("KInput"),Z=t.resolveComponent("KSkeletonBox"),K=t.resolveComponent("KSkeleton"),q=t.resolveComponent("KEmptyState"),se=t.resolveComponent("KTooltip"),me=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",T2,[t.createElementVNode("div",O2,[t.createVNode(G,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":V[0]||(V[0]=ge=>u.value=ge),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",$2,[t.createVNode(Z,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(K,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(q,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(g.value),1)]),_:1})):I.value&&u.value?(t.openBlock(),t.createBlock(q,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",B2,[A.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(me,{key:0,modelValue:B.value,"onUpdate:modelValue":V[5]||(V[5]=ge=>B.value=ge),"data-testid":"plugins-tabs",tabs:A.value,onChange:F},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",V2,[t.createElementVNode("p",R2,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Ls,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,onPluginClicked:V[1]||(V[1]=ge=>P.$emit("plugin-clicked",ge))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",D2,[t.renderSlot(P.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",M2,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(v2,{"can-create-custom-plugin":O.value,"can-delete-custom-plugin":X.value,"can-edit-custom-plugin":j.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,"onDelete:success":V[2]||(V[2]=ge=>P.$emit("delete-custom:success",ge)),onPluginClicked:V[3]||(V[3]=ge=>P.$emit("plugin-clicked",ge)),onRevalidate:V[4]||(V[4]=()=>h.value=v())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(se,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(Ls,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,onPluginClicked:V[6]||(V[6]=ge=>P.$emit("plugin-clicked",ge))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-a2b8a174"]]),F2={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},U2=["data-testid"],K2={class:"plugin-card-header"},j2={class:"plugin-card-title"},G2={key:0,class:"plugin-card-actions"},q2=["data-testid","title"],z2={key:0},H2={key:0},Y2=["title"],W2={class:"plugin-card-footer"},X2=Ae(t.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=vn.useRouter(),{i18n:{t:a}}=Ve.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(u.value&&!f.value&&l.value)),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=t.computed(()=>r.plugin.id==="custom-plugin-create"),u=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===Q.PluginGroup.CUSTOM_PLUGINS),p=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},m=(_,y)=>{const h=r.config;r.config.app==="konnect"&&typeof h.getCustomEditRoute=="function"&&h.getCustomEditRoute&&i.push(h.getCustomEditRoute(_,y))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;f.value&&_.createCustomRoute?i.push(_.createCustomRoute):u.value&&d()}};return(_,y)=>{const h=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),b=t.resolveComponent("KDropdownMenu"),E=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",F2,[t.createVNode(E,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:y[1]||(y[1]=N=>s.value||u.value?void 0:d())},[t.createElementVNode("div",K2,[t.createElementVNode("div",j2,[t.createVNode(t.unref(An.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!u.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",G2,[t.createVNode(b,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(h,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{size:t.unref(ai)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[t.createVNode(k,{"data-testid":"edit-plugin-schema",onClick:y[0]||(y[0]=t.withModifiers(N=>m(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1}),t.createVNode(k,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(p,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:"plugin-card-body","data-testid":`${e.plugin.id}-card-body`,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[e.plugin.description||u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",z2,[u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",H2,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("div",{key:1,title:e.plugin.description},t.toDisplayString(e.plugin.description),9,Y2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],8,q2),t.createElementVNode("div",W2,t.toDisplayString(f.value?t.unref(a)("actions.create_custom"):t.unref(a)("actions.configure")),1)],10,U2)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-7a56d3c1"]]),Z2=["data-testid"],J2={class:"group-icon-wrapper"},Q2={class:"group-title-text"},eL=["data-testid"],Cg=Ae(t.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=t.computed(()=>{switch(o.name){case"Featured":return Ee.PopularIcon;case"AI":return Ee.BotIcon;case"Analytics & Monitoring":return Ee.AnalyticsIcon;case"Authentication":return Ee.LockIcon;case"Logging":return Ee.ServiceDocumentIcon;case"Security":return Ee.SecurityIcon;case"Serverless":return Ee.RuntimeServerlessIcon;case"Traffic Control":return Ee.TrafficIcon;case"Transformations":return Ee.TransformationIcon;case"Deployment":return Ee.DeployIcon;case"Custom Plugins":return Ee.CodeblockIcon;default:return null}}),i=n,{i18n:{t:a}}=Ve.useI18n(),l=t.ref(null),s=t.ref(!1),c=t.computed(()=>o.showAllCard?o.plugins:!s.value&&o.plugins.length>9?o.plugins.slice(0,8):o.plugins),d=t.computed(()=>!o.showAllCard&&!s.value&&o.plugins.length>9);function f(){s.value=!0}const u=t.ref(!1),p=t.ref(null),m=_=>{u.value=!0,p.value={id:_.id,name:_.name,customPluginType:_.customPluginType}},g=_=>{var y;_&&(i("revalidate"),i("delete:success",((y=p.value)==null?void 0:y.name)||"")),u.value=!1,p.value=null};return(_,y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.name?(t.openBlock(),t.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${e.name}`},[t.createElementVNode("div",J2,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{color:t.unref(Fu)},null,8,["color"]))]),t.createElementVNode("span",Q2,t.toDisplayString(e.name),1)],8,Z2)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:l,class:"plugin-card-container","data-testid":`plugin-group-${e.name}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value,h=>(t.openBlock(),t.createBlock(X2,{key:`plugin-card-${h.id}`,config:e.config,plugin:h,onCustomPluginDelete:k=>m(h),onPluginClicked:k=>i("plugin-clicked",h)},null,8,["config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),d.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:f},t.toDisplayString(t.unref(a)("plugins.select.show_all")),1)):t.createCommentVNode("",!0)],8,eL),u.value&&p.value?(t.openBlock(),t.createBlock(Rs,{key:1,config:e.config,plugin:p.value,onClosed:g,onProceed:y[0]||(y[0]=h=>g(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-1bf0aacc"]]),tL={class:"plugin-select-grid"},nL={class:"empty-state-title"},oL={class:"empty-state-description"},rL={key:1},iL=Ae(t.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=$r.concat(Do),r=n,{i18n:{t:i}}=Ve.useI18n(),a=t.ref(da),l=s=>{r("plugin-clicked",s)};return(s,c)=>{var f,u;const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",tL,[Object.keys(e.pluginList||[]).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",nL,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",oL,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),p=>{var m;return t.openBlock(),t.createElementBlock(t.Fragment,null,[(m=e.pluginList)!=null&&m[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Cg,{modelValue:a.value[p],"onUpdate:modelValue":g=>a.value[p]=g,config:e.config,name:p,plugins:e.pluginList[p]||[],onPluginClicked:c[0]||(c[0]=g=>l(g))},null,8,["modelValue","onUpdate:modelValue","config","name","plugins"])])):t.createCommentVNode("",!0)],64)}),256)),(u=(f=e.pluginList)==null?void 0:f["Query Result"])!=null&&u.length?(t.openBlock(),t.createElementBlock("div",rL,[t.createVNode(Cg,{modelValue:a.value["Query Result"],"onUpdate:modelValue":c[1]||(c[1]=p=>a.value["Query Result"]=p),config:e.config,plugins:e.pluginList["Query Result"]||[],"show-all-card":"",onPluginClicked:c[2]||(c[2]=p=>l(p))},null,8,["modelValue","config","plugins"])])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-8a6ef305"]]),aL={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},lL=["title"],sL=["title"],cL={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},dL={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},uL=Ae(t.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{}},emits:["revalidate","delete:success"],setup(e,{emit:n}){const o=n,r=e,{i18n:{t:i}}=Ve.useI18n(),a=t.computed(()=>y.value.some(E=>{var N;return!!((N=E.plugin)!=null&&N.customPluginType)})),l=t.computed(()=>{const E=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return a.value&&E.push({key:"more-actions",hideLabel:!0}),E}),s=t.computed(()=>{if(!r.pluginList)return[];const E=Object.values(r.pluginList).flat();return Array.from(new Map(E.map(C=>[C.id,C])).values()).map(C=>({id:C.id,name:C.name,description:C.description,plugin:C}))}),c=t.ref(0),d=t.ref(10),f=t.ref(1),u=t.ref(s.value),p=t.ref(!1),m=t.ref(null),g=E=>{p.value=!0,m.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},_=E=>{var N;E&&(o("revalidate"),o("delete:success",((N=m.value)==null?void 0:N.name)||"")),p.value=!1,m.value=null},y=t.computed(()=>{const E=u.value.length,N=Math.max(1,Math.ceil(E/d.value)),x=(Math.min(f.value,N)-1)*d.value;return u.value.slice(x,x+d.value)});t.watch(s,()=>{u.value=[...s.value],f.value=1,c.value++});const h=({page:E})=>{f.value=E},k=({pageSize:E})=>{d.value=E},b=E=>{const{sortColumnKey:N,sortColumnOrder:C}=E;N==="name"&&(u.value=[...u.value].sort((x,I)=>{const A=(x[N]||"").toLowerCase(),B=(I[N]||"").toLowerCase();return A<B?C==="asc"?-1:1:A>B?C==="asc"?1:-1:0}))};return(E,N)=>{const C=t.resolveComponent("KButton"),x=t.resolveComponent("KDropdownItem"),I=t.resolveComponent("KDropdown"),A=t.resolveComponent("KTableView"),B=t.resolveComponent("KCard");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(B,{"data-testid":"plugin-catalog-list-view-card"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(A,{key:c.value,class:"plugin-catalog-table","client-sort":"",data:y.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,pagination:!0,"pagination-attributes":{totalCount:s.value.length,currentPage:f.value,initialPageSize:d.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:h,onPageSizeChange:k,onSort:b},{name:t.withCtx(({row:v})=>[t.createElementVNode("span",aL,[t.createVNode(t.unref(An.PluginIcon),{"data-testid":`plugin-catalog-list-view-${v.plugin.id}-icon`,name:v.plugin.id,size:20},null,8,["data-testid","name"]),t.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:v.name},t.toDisplayString(v.name),9,lL)])]),description:t.withCtx(({row:v})=>[t.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:v.description},t.toDisplayString(v.description),9,sL)]),action:t.withCtx(({row:v})=>[t.createElementVNode("div",cL,[t.createVNode(C,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:r.config.getCreateRoute(v.id)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":t.withCtx(({row:v})=>{var w;return[(w=v.plugin)!=null&&w.customPluginType?(t.openBlock(),t.createElementBlock("div",dL,[t.createVNode(I,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:t.withCtx(()=>{var M,S;return[t.createVNode(x,{"data-testid":"edit-plugin-schema",to:(S=(M=e.config).getCustomEditRoute)==null?void 0:S.call(M,v.plugin.name,v.plugin.customPluginType)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.edit")),1)]),_:1},8,["to"]),t.createVNode(x,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:()=>g(v.plugin)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.delete")),1)]),_:1},8,["onClick"])]}),default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(ko),size:t.unref(ai)},null,8,["color","size"])]),_:2},1024)])):t.createCommentVNode("",!0)]}),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),p.value&&m.value?(t.openBlock(),t.createBlock(Rs,{key:0,config:e.config,plugin:m.value,onClosed:_,onProceed:N[0]||(N[0]=v=>_(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-b66a5c83"]]),fL={class:"plugin-catalog","data-testid":"plugin-catalog"},pL={class:"plugin-filter","data-testid":"plugin-filter"},mL={class:"plugin-filter-title"},gL={class:"featured-title"},hL={class:"plugin-featured-filter"},yL=["data-testid"],_L={class:"group-title"},bL={class:"plugin-type-filter"},wL=["data-testid"],kL={class:"plugins-container"},CL={class:"plugins-filter-input-container"},EL={class:"icon-container"},NL={key:0},xL={key:3,"aria-live":"polite",class:"plugins-results-container"},SL=Ae(t.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{},availableOnServer:{type:Boolean,default:!0}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var F;const o=n,{i18n:{t:r}}=Ve.useI18n(),{pluginMetaData:i}=Ve.usePluginMetaData(),{getMessageFromError:a}=he.useErrors(),{sortAlpha:l,objectsAreEqual:s}=he.useHelpers(),c=e,{axiosInstance:d}=he.useAxios((F=c.config)==null?void 0:F.axiosRequestConfig),f=t.useTemplateRef("filter-input"),u=t.ref(""),p=t.ref(!1),m=t.ref(!1),g=t.ref(Object.fromEntries($r.concat(Do).map(O=>[O,!1]))),_=t.ref(!0),y=t.ref(!1),h=t.ref(""),k=t.ref([]),b=t.ref([]),E=t.ref({}),N=t.ref([]),C=t.ref(!1),x=t.computed(()=>C.value?Ee.GridIcon:Ee.ListIcon),I=t.computed(()=>{var j;let O=`${c.config.apiBaseUrl}${Ke.select[c.config.app].availablePlugins}`;return c.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(O=((j=c.config.gatewayInfo)==null?void 0:j.edition)==="community"?`${c.config.apiBaseUrl}${Ke.select[c.config.app].availablePluginsForOss}`:O.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),O}),A=t.computed(()=>{if(c.config.app==="konnect"&&c.customPluginSupport==="streaming"){let O=`${c.config.apiBaseUrl}${Ke.select[c.config.app].streamingCustomPlugins}`;return O=O.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""),O}return null}),B=t.computed(()=>{if(c.config.entityType&&c.config.entityId){let O=`${c.config.apiBaseUrl}${Ke.list[c.config.app].forEntity}`;return c.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),O.replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),v=t.computed(()=>{var V;if(!E.value)return{};const O=Object.entries(g.value).filter(([G,Z])=>Z).map(([G])=>G);let j={};O.length===0&&(j=E.value),O.forEach(G=>{E.value[G]&&(j[G]=E.value[G])});const X=u.value.toLowerCase();if(!X)return j;const L=JSON.parse(JSON.stringify(j));for(const G in j){const Z=((V=j[G])==null?void 0:V.filter(K=>[K.name.toLowerCase(),K.id.toLowerCase()].some(se=>P0(X,se).length===X.length)))||[];Z.length?L[G]=Z:delete L[G]}const U=Object.values(L).flat().filter(G=>!!G),P=Array.from(U.reduce((G,Z)=>(G.has(Z.id)||G.set(Z.id,Z),G),new Map).values());return P.length?{"Query Result":P}:{}}),w=t.computed(()=>Object.keys(v.value).length>0),M=t.computed(()=>Object.keys(E.value).length>0&&!w.value),S=()=>{const O=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...k.value])].filter(j=>c.config.entityType&&(c.config.entityType==="services"&&i[j]&&!i[j].scope.includes(Q.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[j]&&!i[j].scope.includes(Q.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[j]&&!i[j].scope.includes(Q.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[j]&&!i[j].scope.includes(Q.PluginScope.CONSUMER))?!1:j).reduce((j,X)=>{var G;const L=i[X]&&i[X].name||X,U={...i[X],id:X,name:L,available:k.value.includes(X),disabledMessage:"",group:((G=i[X])==null?void 0:G.group)||Q.PluginGroup.CUSTOM_PLUGINS};U.group===Q.PluginGroup.CUSTOM_PLUGINS&&(U.customPluginType=b.value.find(Z=>Z.name===X)?"streaming":"schema"),c.disabledPlugins&&(U.disabledMessage=c.disabledPlugins[X]);const P=U.group||r("plugins.select.misc_plugins");let V=j[P];return V||(V=[]),V.push(U),V.sort(l("name")),j[P]=V,j},{});return c.highlightedPluginIds&&c.highlightedPluginIds.length>0&&(O.Featured=c.highlightedPluginIds.flatMap(j=>{var L;const X=i[j];return X?{...X,id:j,name:X.name||j,available:k.value.includes(j),disabledMessage:((L=c.disabledPlugins)==null?void 0:L[j])||"",group:X.group||Q.PluginGroup.CUSTOM_PLUGINS}:[]}).filter(Boolean)),O};return t.watch(()=>c.disabledPlugins,(O,j)=>{!s(O||{},j||{})&&!_.value&&(E.value=S())}),t.watch(_,O=>{o("loading",O)}),t.onMounted(async()=>{var O,j;(j=(O=f.value)==null?void 0:O.input)==null||j.focus();try{const{data:X}=await d.get(I.value);if(c.config.app==="konnect"){const{names:L}=X;if(k.value=L||[],A.value){const{data:U}=await d.get(A.value);b.value=U.data||[]}}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:L}}=X;k.value=L?Object.keys(L):[]}}catch(X){y.value=!0,h.value=a(X)}if(B.value)try{const{data:{data:X}}=await d.get(B.value);if(X!=null&&X.length){const L=X.reduce((U,P)=>(P.name&&U.push(P.name),U),[]);N.value=N.value.concat(L)}}catch{}y.value||(E.value=S()),_.value=!1}),(O,j)=>{const X=t.resolveComponent("KCheckbox"),L=t.resolveComponent("KBadge"),U=t.resolveComponent("KCollapse"),P=t.resolveComponent("KInput"),V=t.resolveComponent("KSkeletonBox"),G=t.resolveComponent("KSkeleton"),Z=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",fL,[t.createElementVNode("div",pL,[t.createElementVNode("div",mL,t.toDisplayString(t.unref(r)("plugins.select.filter.title")),1),t.createVNode(U,{modelValue:p.value,"onUpdate:modelValue":j[0]||(j[0]=K=>p.value=K)},{title:t.withCtx(()=>[t.createElementVNode("div",gL,t.toDisplayString(t.unref(r)("plugins.select.filter.featured")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",hL,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref($r),K=>(t.openBlock(),t.createElementBlock("div",{key:K,class:"plugin-filter-item","data-testid":`plugin-filter-item-${K}`},[t.createVNode(X,{modelValue:g.value[K],"onUpdate:modelValue":q=>g.value[K]=q,label:K},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(L,{appearance:"neutral"},{default:t.withCtx(()=>{var q,se;return[t.createTextVNode(t.toDisplayString(((se=(q=E.value)==null?void 0:q[K])==null?void 0:se.length)||0),1)]}),_:2},1024)],8,yL))),128))])]),_:1},8,["modelValue"]),t.createVNode(U,{modelValue:m.value,"onUpdate:modelValue":j[1]||(j[1]=K=>m.value=K)},{title:t.withCtx(()=>[t.createElementVNode("div",_L,t.toDisplayString(t.unref(r)("plugins.select.filter.type")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",bL,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Do),K=>(t.openBlock(),t.createElementBlock("div",{key:K,class:"plugin-filter-item","data-testid":`plugin-filter-item-${K}`},[t.createVNode(X,{modelValue:g.value[K],"onUpdate:modelValue":q=>g.value[K]=q,label:K},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(L,{appearance:"neutral"},{default:t.withCtx(()=>{var q,se;return[t.createTextVNode(t.toDisplayString(((se=(q=E.value)==null?void 0:q[K])==null?void 0:se.length)||0),1)]}),_:2},1024)],8,wL))),128))])]),_:1},8,["modelValue"])]),t.createElementVNode("div",kL,[t.createElementVNode("div",CL,[t.createVNode(P,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":j[2]||(j[2]=K=>u.value=K),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:t.unref(r)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"]),t.createElementVNode("div",EL,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(x.value),{class:"plugins-filter-icon",color:t.unref(f1),onClick:j[3]||(j[3]=K=>C.value=!C.value)},null,8,["color"]))])]),_.value?(t.openBlock(),t.createElementBlock("section",NL,[t.createVNode(V,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(G,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):y.value?(t.openBlock(),t.createBlock(Z,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):M.value&&u.value?(t.openBlock(),t.createBlock(Z,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(r)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",xL,[C.value?(t.openBlock(),t.createBlock(uL,{key:0,config:e.config,"plugin-list":v.value,"onDelete:success":j[4]||(j[4]=K=>O.$emit("delete-custom:success",K))},null,8,["config","plugin-list"])):(t.openBlock(),t.createBlock(iL,{key:1,config:e.config,"plugin-list":v.value,"onDelete:success":j[5]||(j[5]=K=>O.$emit("delete-custom:success",K)),onPluginClicked:j[6]||(j[6]=K=>O.$emit("plugin-clicked",K))},null,8,["config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-9be8a266"]]),vL={class:"datakit-config-card-canvas"},AL={class:"config-card-details-label","data-testid":"datakit-configuration-label"},IL={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},PL={class:"canvas-wrapper"},TL=Ae(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return Qu(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",vL,[t.createElementVNode("div",AL,[t.createVNode(r,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",IL,[t.createElementVNode("div",PL,[t.createVNode(Ps,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),OL={class:"kong-ui-entity-plugin-config-card"},$L={class:"name-cell-wrapper"},BL={class:"info-name"},VL={key:0},RL={key:0},DL={key:0},ML={key:0},LL={key:0},Fs="config",FL=Ae(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var C;const o=n,r=e,{i18n:{t:i}}=Ve.useI18n(),a=Ve.usePluginMetaData(),{setFieldType:l}=Ve.usePluginHelpers(),{getPropValue:s}=he.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var I;let x=(I=Ke.item[r.config.app])==null?void 0:I[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const A=r.expandPartial?"&":"?";x=x.concat(`${A}__ui_data=true`)}return x}),u=t.computed(()=>{var A,B;const x={},I=((A=b.value)==null?void 0:A.fields)||[];for(let v=0;v<I.length;v++){const w=b.value.fields[v],M=(B=Object.keys(w))==null?void 0:B[0];l(x,M,w[M])}return{...x,instance_name:{section:he.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:he.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:he.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:he.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:he.ConfigurationSchemaSection.Basic,order:6},protocols:{type:he.ConfigurationSchemaType.BadgeTag,section:he.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var I,A,B;if(!((I=b.value)!=null&&I.fields))return[];const x=(A=b.value.fields)==null?void 0:A.find(v=>{var M;return((M=Object.keys(v))==null?void 0:M[0])===Fs});return((B=x==null?void 0:x[Fs])==null?void 0:B.fields)||[]}),m=t.computed(()=>{var I,A;const x={};if(!p.value)return x;for(let B=0;B<((I=p.value)==null?void 0:I.length);B++){const v=p.value[B],w=(A=Object.keys(v))==null?void 0:A[0],M=v[w];M.required&&(x[w]={order:1}),l(x,w,M)}return x}),g=x=>{var A;const I=(A=a.pluginMetaData[r.config.pluginType])==null?void 0:A.scope;return I?Object.fromEntries(Object.entries(x).filter(([B,v])=>v?!0:!(B==="service"&&!I.includes(Q.PluginScope.SERVICE)||B==="route"&&!I.includes(Q.PluginScope.ROUTE)||B==="consumer"&&!I.includes(Q.PluginScope.CONSUMER)||B==="consumer_group"&&!I.includes(Q.PluginScope.CONSUMER_GROUP)))):x},_=x=>en(x,"__ui_data"),{getMessageFromError:y}=he.useErrors(),{axiosInstance:h}=he.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),k=t.computed(()=>{var I,A;let x=`${r.config.apiBaseUrl}${Ke.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?x=x.replace(/{controlPlaneId}/gi,((I=r.config)==null?void 0:I.controlPlaneId)||""):r.config.app==="kongManager"&&(x=x.replace(/\/{workspace}/gi,(A=r.config)!=null&&A.workspace?`/${r.config.workspace}`:"")),x=x.replace(/{plugin}/gi,r.config.pluginType),x}),b=t.ref({});he.useSchemaProvider(b);const E=t.ref(!1),N=t.ref("");return t.onBeforeMount(async()=>{E.value=!0;try{const{data:x}=await h.get(k.value);b.value=x}catch(x){N.value=y(x),o("error:fetch-schema",x)}finally{E.value=!1}}),(x,I)=>{const A=t.resolveComponent("KSkeleton"),B=t.resolveComponent("KEmptyState"),v=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",OL,[E.value?(t.openBlock(),t.createBlock(A,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):N.value?(t.openBlock(),t.createBlock(B,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(N.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(he.EntityBaseConfigCard),{key:2,"code-block-record-formatter":_,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(he.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":Fs,"plugin-config-schema":m.value,"record-resolver":g,"onFetch:error":I[0]||(I[0]=w=>x.$emit("fetch:error",w)),"onFetch:success":I[1]||(I[1]=w=>x.$emit("fetch:success",w)),onLoading:I[2]||(I[2]=w=>x.$emit("loading",w))},t.createSlots({name:t.withCtx(w=>[t.createElementVNode("div",$L,[t.createVNode(t.unref(An.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",w),size:24},null,8,["name"]),t.createElementVNode("span",BL,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",w))),1)])]),consumer:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",VL,"–"))]),route:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",RL,"–"))]),service:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",DL,"–"))]),consumer_group:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",ML,"–"))]),partials:t.withCtx(w=>{var M,S,F,O,j,X,L,U,P;return[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:(S=(M=t.unref(s)("rowValue",w))==null?void 0:M[0])==null?void 0:S.id,value:((O=(F=t.unref(s)("rowValue",w))==null?void 0:F[0])==null?void 0:O.id)+((X=(j=t.unref(s)("rowValue",w))==null?void 0:j[0])!=null&&X.name?"/"+((U=(L=t.unref(s)("rowValue",w))==null?void 0:L[0])==null?void 0:U.name):""),type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var V,G;return x.$emit("navigation-click",(G=(V=t.unref(s)("rowValue",w))==null?void 0:V[0])==null?void 0:G.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"partial-copy-uuid",text:(P=t.unref(s)("rowValue",w))==null?void 0:P[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",LL,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(w=>[t.createVNode(TL,{"plugin-data":w.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:UL,useProvideExperimentalFreeForms:KL}=Ve;Object.defineProperty(Ie,"PluginGroup",{enumerable:!0,get:()=>Q.PluginGroup}),Object.defineProperty(Ie,"PluginScope",{enumerable:!0,get:()=>Q.PluginScope}),Object.defineProperty(Ie,"PluginIcon",{enumerable:!0,get:()=>An.PluginIcon}),Object.defineProperty(Ie,"getPluginIconURL",{enumerable:!0,get:()=>An.getPluginIconURL}),Ie.EXPERIMENTAL_FREE_FORM_PROVIDER=Ua,Ie.EntityTypeIdField=In,Ie.FEATURE_FLAGS=pn,Ie.PLUGIN_GROUPS_COLLAPSE_STATUS=da,Ie.PluginCatalog=SL,Ie.PluginConfigCard=FL,Ie.PluginFeaturedArray=$r,Ie.PluginForm=i2,Ie.PluginGroupArray=Do,Ie.PluginList=m2,Ie.PluginPartialType=Or,Ie.PluginSelect=L2,Ie.PluginSelectCard=Vs,Ie.PluginSelectGrid=Ls,Ie.TOASTER_PROVIDER=fd,Ie.pluginEndpoints=Ke,Ie.usePluginMetaData=UL,Ie.useProvideExperimentalFreeForms=KL,Object.defineProperty(Ie,Symbol.toStringTag,{value:"Module"})});
234
+ Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class at extends Error{constructor(n,...o){var r;super((r=Np[n])==null?void 0:r.call(Np,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function rs(e){return"clientX"in e}function eI(e){return"sourceEvent"in e}function Ht(e,n){const o=rs(e);let r,i;return o?(r=e.clientX,i=e.clientY):"touches"in e&&e.touches.length>0?(r=e.touches[0].clientX,i=e.touches[0].clientY):"changedTouches"in e&&e.changedTouches.length>0?(r=e.changedTouches[0].clientX,i=e.changedTouches[0].clientY):(r=0,i=0),{x:r-((n==null?void 0:n.left)??0),y:i-((n==null?void 0:n.top)??0)}}const Ui=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function tI(e){var n,o;return{width:((n=e.dimensions)==null?void 0:n.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function Ki(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const nI=()=>!0;function is(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function oI(e,n,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of n.values())Mi(i,Di(a))>0&&r.push(a);return r}const rI=250;function iI(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=oI(e,o,n+rI);for(const d of c){const f=[...((i=d.handleBounds)==null?void 0:i.source)??[],...((a=d.handleBounds)==null?void 0:a.target)??[]];for(const u of f){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:p,y:m}=Oo(d,u,u.position,!0),g=Math.sqrt((p-e.x)**2+(m-e.y)**2);g>n||(g<s?(l=[{...u,x:p,y:m}],s=g):g===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function xp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=nI},f,u,p,m){const g=a==="target",_=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:h,y}=Ht(e),k=l.elementFromPoint(h,y),b=k!=null&&k.classList.contains(`${s}-flow__handle`)?k:_,E={handleDomNode:b,isValid:!1,connection:null,toHandle:null};if(b){const N=Sp(void 0,b),C=b.getAttribute("data-nodeid"),x=b.getAttribute("data-handleid"),P=b.classList.contains("connectable"),A=b.classList.contains("connectableend");if(!C||!N)return E;const B={source:g?C:r,sourceHandle:g?x:i,target:g?r:C,targetHandle:g?i:x};E.connection=B;const w=P&&A&&(o===bn.Strict?g&&N==="source"||!g&&N==="target":C!==r||x!==i);E.isValid=w&&d(B,{nodes:u,edges:f,sourceNode:p(B.source),targetNode:p(B.target)}),E.toHandle=vp(C,N,x,m,o,!0)}return E}function Sp(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function aI(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function lI(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function vp(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===bn.Strict?(l=d.handleBounds)==null?void 0:l[n]:[...((s=d.handleBounds)==null?void 0:s.source)??[],...((c=d.handleBounds)==null?void 0:c.target)??[]],u=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return u&&a?{...u,...Oo(d,u,u.position,!0)}:u}const as={[ve.Left]:ve.Right,[ve.Right]:ve.Left,[ve.Top]:ve.Bottom,[ve.Bottom]:ve.Top},sI=["production","prod"];function xr(e,...n){Ap()&&console.warn(`[Vue Flow]: ${e}`,...n)}function Ap(){return!sI.includes(process.env.NODE_ENV||"")}function Ip(e,n,o,r,i){const a=n.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...Li(l)}}):null}function ls(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function tt(e){return typeof t.unref(e)<"u"}function cI(e,n,o,r){if(!e||!e.source||!e.target)return o(new at(et.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return wn(e)?i=e:i={...e,id:ap(e)},i=rp(i,void 0,r),KA(i,n)?!1:i}function dI(e,n,o,r,i){if(!n.source||!n.target)return i(new at(et.EDGE_INVALID,e.id)),!1;if(!o)return i(new at(et.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?ap(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function Pp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Jn(l)){o(new at(et.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=LA(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new at(et.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function Tp(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function ss(e,n,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;Tp("source",c,f,e,i,l),Tp("target",c,d,e,a,s)}}function Op(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function cs(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=wn(d)?d:cI(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new at(et.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new at(et.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new at(et.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new at(et.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...rp(f,m,a),sourceNode:u,targetNode:p})}return c}const $p=Symbol("vueFlow"),Bp=Symbol("nodeId"),Vp=Symbol("nodeRef"),uI=Symbol("edgeId"),fI=Symbol("edgeRef"),ji=Symbol("slots");function Rp(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodeLookup:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:g,nodesSelectionActive:_,selectNodesOnDrag:h,removeSelectedElements:y,addSelectedNodes:k,updateNodePositions:b,emits:E}=Re(),{onStart:N,onDrag:C,onStop:x,onClick:P,el:A,disabled:B,id:v,selectable:w,dragHandle:F}=e,S=t.shallowRef(!1);let M=[],O,j=null,W={x:void 0,y:void 0},L={x:0,y:0},U=null,T=!1,V=!1,G=0,se=!1;const K=gI(),q=({x:le,y:de})=>{W={x:le,y:de};let $=!1;if(M=M.map(I=>{const D={x:le-I.distance.x,y:de-I.distance.y},{computedPosition:R}=os(I,o.value?Ki(D,r.value):D,E.error,l.value,I.parentNode?m(I.parentNode):void 0);return $=$||I.position.x!==R.x||I.position.y!==R.y,I.position=R,I}),V=V||$,!!$&&(b(M,!0,!0),S.value=!0,U)){const[I,D]=ns({id:v,dragItems:M,findNode:m});C({event:U,node:I,nodes:D})}},ne=()=>{if(!j)return;const[le,de]=gp(L,j,f.value);if(le!==0||de!==0){const $={x:(W.x??0)-le/c.value.zoom,y:(W.y??0)-de/c.value.zoom};p({x:le,y:de})&&q($)}G=requestAnimationFrame(ne)},me=(le,de)=>{T=!0;const $=m(v);!h.value&&!g.value&&$&&($.selected||y()),$&&t.toValue(w)&&h.value&&ls($,g.value,k,y,_,!1,de);const I=K(le.sourceEvent);if(W=I,M=YA(a.value,u.value,I,v),M.length){const[D,R]=ns({id:v,dragItems:M,findNode:m});N({event:le.sourceEvent,node:D,nodes:R})}},ye=(le,de)=>{var $;le.sourceEvent.type==="touchmove"&&le.sourceEvent.touches.length>1||(V=!1,s.value===0&&me(le,de),W=K(le.sourceEvent),j=(($=n.value)==null?void 0:$.getBoundingClientRect())||null,L=Ht(le.sourceEvent,j))},ie=(le,de)=>{const $=K(le.sourceEvent);if(!se&&T&&d.value&&(se=!0,ne()),!T){const I=$.xSnapped-(W.x??0),D=$.ySnapped-(W.y??0);Math.sqrt(I*I+D*D)>s.value&&me(le,de)}(W.x!==$.xSnapped||W.y!==$.ySnapped)&&M.length&&T&&(U=le.sourceEvent,L=Ht(le.sourceEvent,j),q($))},oe=le=>{let de=!1;if(!T&&!S.value&&!g.value){const $=le.sourceEvent,I=K($),D=I.xSnapped-(W.x??0),R=I.ySnapped-(W.y??0),ee=Math.sqrt(D*D+R*R);ee!==0&&ee<=s.value&&(P==null||P($),de=!0)}if(M.length&&!de){V&&(b(M,!1,!1),V=!1);const[$,I]=ns({id:v,dragItems:M,findNode:m});x({event:le.sourceEvent,node:$,nodes:I})}M=[],S.value=!1,se=!1,T=!1,W={x:void 0,y:void 0},cancelAnimationFrame(G)};return t.watch([()=>t.toValue(B),A],([le,de],$,I)=>{if(de){const D=Dt(de);le||(O=MS().on("start",R=>ye(R,de)).on("drag",R=>ie(R,de)).on("end",R=>oe(R)).filter(R=>{const ee=R.target,J=t.toValue(F);return!R.button&&(!i.value||!kp(ee,`.${i.value}`,de)&&(!J||kp(ee,J,de)))}),D.call(O)),I(()=>{D.on(".drag",null),O&&(O.on("start",null),O.on("drag",null),O.on("end",null))})}}),S}function pI(){return{doubleClick:Se(),click:Se(),mouseEnter:Se(),mouseMove:Se(),mouseLeave:Se(),contextMenu:Se(),updateStart:Se(),update:Se(),updateEnd:Se()}}function mI(e,n){const o=pI();return o.doubleClick.on(r=>{var i,a;n.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;n.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;n.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;n.edgeUpdateEnd(r),(a=(i=e.events)==null?void 0:i.updateEnd)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function gI(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Re();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=eI(i)?i.sourceEvent:i,{x:c,y:d}=Ht(s,l),f=Er({x:c,y:d},e.value),{x:u,y:p}=o.value?Ki(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Gi(){return!0}function Dp({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:g,autoPanSpeed:_,findNode:h,panBy:y,startConnection:k,updateConnection:b,endConnection:E,emits:N,viewport:C,edges:x,nodes:P,isValidConnection:A,nodeLookup:B}=Re();let v=null,w=!1,F=null;function S(O){var j;const W=t.toValue(o)==="target",L=rs(O),U=op(O.target),T=O.currentTarget;if(T&&(L&&O.button===0||!L)){let V=function(ae){$=Ht(ae,oe),q=iI(Er($,C.value,!1,[1,1]),f.value,B.value,R),I||(D(),I=!0);const H=xp(ae,{handle:q,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:W?"target":"source",isValidConnection:K,doc:U,lib:"vue",flowId:s,nodeLookup:B.value},x.value,P.value,h,B.value);F=H.handleDomNode,v=H.connection,w=lI(!!q,H.isValid);const Y={...z,isValid:w,to:H.toHandle&&w?Cr({x:H.toHandle.x,y:H.toHandle.y},C.value):$,toHandle:H.toHandle,toPosition:w&&H.toHandle?H.toHandle.position:as[R.position],toNode:H.toHandle?B.value.get(H.toHandle.nodeId):null};if(w&&q&&(z!=null&&z.toHandle)&&Y.toHandle&&z.toHandle.type===Y.toHandle.type&&z.toHandle.nodeId===Y.toHandle.nodeId&&z.toHandle.id===Y.toHandle.id&&z.to.x===Y.to.x&&z.to.y===Y.to.y)return;const Q=q??H.toHandle;if(b(Q&&w?Cr({x:Q.x,y:Q.y},C.value):$,Q,aI(!!Q,w)),z=Y,!q&&!w&&!F)return is(de);v&&v.source!==v.target&&F&&(is(de),de=F,F.classList.add("connecting","vue-flow__handle-connecting"),F.classList.toggle("valid",!!w),F.classList.toggle("vue-flow__handle-valid",!!w))},G=function(ae){"touches"in ae&&ae.touches.length>0||((q||F)&&v&&w&&(a?a(ae,v):N.connect(v)),N.connectEnd(ae),i&&(l==null||l(ae)),is(de),cancelAnimationFrame(ne),E(ae),I=!1,w=!1,v=null,F=null,U.removeEventListener("mousemove",V),U.removeEventListener("mouseup",G),U.removeEventListener("touchmove",V),U.removeEventListener("touchend",G))};const se=h(t.toValue(n));let K=t.toValue(r)||A.value||Gi;!K&&se&&(K=(W?se.isValidSourcePos:se.isValidTargetPos)||Gi);let q,ne=0;const{x:me,y:ye}=Ht(O),ie=Sp(t.toValue(i),T),oe=(j=c.value)==null?void 0:j.getBoundingClientRect();if(!oe||!ie)return;const le=vp(t.toValue(n),ie,t.toValue(e),B.value,d.value);if(!le)return;let de,$=Ht(O,oe),I=!1;const D=()=>{if(!g.value)return;const[ae,H]=gp($,oe,_.value);y({x:ae,y:H}),ne=requestAnimationFrame(D)},R={...le,nodeId:t.toValue(n),type:ie,position:le.position},ee=B.value.get(t.toValue(n)),Z={inProgress:!0,isValid:null,from:Oo(ee,R,ve.Left,!0),fromHandle:R,fromPosition:R.position,fromNode:ee,to:$,toHandle:null,toPosition:as[R.position],toNode:null};k({nodeId:t.toValue(n),id:t.toValue(e),type:ie,position:(T==null?void 0:T.getAttribute("data-handlepos"))||ve.Top,...$},{x:me-oe.left,y:ye-oe.top}),N.connectStart({event:O,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:ie});let z=Z;U.addEventListener("mousemove",V),U.addEventListener("mouseup",G),U.addEventListener("touchmove",V),U.addEventListener("touchend",G)}}function M(O){var j,W;if(!u.value)return;const L=t.toValue(o)==="target";if(!p.value){N.clickConnectStart({event:O,nodeId:t.toValue(n),handleId:t.toValue(e)}),k({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ve.Top,...Ht(O)},void 0,!0);return}let U=t.toValue(r)||A.value||Gi;const T=h(t.toValue(n));if(!U&&T&&(U=(L?T.isValidSourcePos:T.isValidTargetPos)||Gi),T&&(typeof T.connectable>"u"?m.value:T.connectable)===!1)return;const V=op(O.target),G=xp(O,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ve.Top,...Ht(O)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:U,doc:V,lib:"vue",flowId:s,nodeLookup:B.value},x.value,P.value,h,B.value),se=((j=G.connection)==null?void 0:j.source)===((W=G.connection)==null?void 0:W.target);G.isValid&&G.connection&&!se&&N.connect(G.connection),N.clickConnectEnd(O),E(O,!0)}return{handlePointerDown:S,handleClick:M}}function hI(){return t.inject(Bp,"")}function Mp(e){const n=e??hI()??"",o=t.inject(Vp,t.ref(null)),{findNode:r,edges:i,emits:a}=Re(),l=r(n);return l||a.error(new at(et.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>dp([l],i.value))}}function yI(){return{doubleClick:Se(),click:Se(),mouseEnter:Se(),mouseMove:Se(),mouseLeave:Se(),contextMenu:Se(),dragStart:Se(),drag:Se(),dragStop:Se()}}function _I(e,n){const o=yI();return o.doubleClick.on(r=>{var i,a;n.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;n.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;n.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;n.nodeDragStop(r),(a=(i=e.events)==null?void 0:i.dragStop)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function Lp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Re();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,g=c.y*u*p,_=[];for(const h of e.value)if(h.draggable||l&&typeof h.draggable>"u"){const y={x:h.computedPosition.x+m,y:h.computedPosition.y+g},{position:k}=os(h,y,s.error,n.value,h.parentNode?r(h.parentNode):void 0);_.push({id:h.id,position:k,from:h.position,distance:{x:c.x,y:c.y},dimensions:h.dimensions})}o(_,!0,!1)}}const qi=.1,bI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function En(){return xr("Viewport not initialized yet."),Promise.resolve(!1)}const wI={zoomIn:En,zoomOut:En,zoomTo:En,fitView:En,setCenter:En,fitBounds:En,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:En,setTransform:En,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function kI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?fr:vi).scaleBy(ds(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:d,y:f}=np({x:-r,y:-i},e.translateExtent),u=Io.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?fr:vi).transform(ds(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?fr:vi).scaleTo(ds(e.d3Selection,a==null?void 0:a.duration,a==null?void 0:a.ease,()=>{l(!0)}),i):l(!1)}),setViewport:(i,a)=>o(i.x,i.y,i.zoom,a),setTransform:(i,a)=>o(i.x,i.y,i.zoom,a),getViewport:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),getTransform:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),fitView:(i={padding:qi,includeHiddenNodes:!1,duration:0})=>{var a,l;const s=[];for(const p of e.nodes)p.dimensions.width&&p.dimensions.height&&((i==null?void 0:i.includeHiddenNodes)||!p.hidden)&&(!((a=i.nodes)!=null&&a.length)||(l=i.nodes)!=null&&l.length&&i.nodes.includes(p.id))&&s.push(p);if(!s.length)return Promise.resolve(!1);const c=sp(s),{x:d,y:f,zoom:u}=up(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??qi);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:qi})=>{const{x:l,y:s,zoom:c}=up(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding??qi);return o(l,s,c,a)},project:i=>Er(i,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x-a,y:i.y-l};return Er(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Cr(s,e.viewport)}return{x:0,y:0}}}:wI)}function ds(e,n=0,o=bI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function CI(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let _,h,y=!!(o.nodes.value.length||o.edges.value.length);_=No([e.modelValue,()=>{var k,b;return(b=(k=e.modelValue)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(h==null||h.pause(),o.setElements(k),!h&&!y&&k.length?y=!0:h==null||h.resume())}),h=No([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([k,b])=>{var E;(E=e.modelValue)!=null&&E.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...k,...b],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},a=()=>{r.run(()=>{let _,h,y=!!o.nodes.value.length;_=No([e.nodes,()=>{var k,b;return(b=(k=e.nodes)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(h==null||h.pause(),o.setNodes(k),!h&&!y&&k.length?y=!0:h==null||h.resume())}),h=No([o.nodes,()=>o.nodes.value.length],([k])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...k],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},l=()=>{r.run(()=>{let _,h,y=!!o.edges.value.length;_=No([e.edges,()=>{var k,b;return(b=(k=e.edges)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(h==null||h.pause(),o.setEdges(k),!h&&!y&&k.length?y=!0:h==null||h.resume())}),h=No([o.edges,()=>o.edges.value.length],([k])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...k],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&tt(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&tt(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&tt(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&tt(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{tt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async h=>{let y=h;typeof n.autoConnect=="function"&&(y=await n.autoConnect(h)),y!==!1&&o.addEdges([y])};t.watch(()=>n.autoConnect,()=>{tt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(h,y,k)=>{h?o.onConnect(_):o.hooks.value.connect.off(_),k(()=>{o.hooks.value.connect.off(_)})},{immediate:!0})})},m=()=>{const _=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const h of Object.keys(n)){const y=h;if(!_.includes(y)){const k=t.toRef(()=>n[y]),b=o[y];t.isRef(b)&&r.run(()=>{t.watch(k,E=>{tt(E)&&(b.value=E)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function EI(){return{edgesChange:Se(),nodesChange:Se(),nodeDoubleClick:Se(),nodeClick:Se(),nodeMouseEnter:Se(),nodeMouseMove:Se(),nodeMouseLeave:Se(),nodeContextMenu:Se(),nodeDragStart:Se(),nodeDrag:Se(),nodeDragStop:Se(),nodesInitialized:Se(),miniMapNodeClick:Se(),miniMapNodeDoubleClick:Se(),miniMapNodeMouseEnter:Se(),miniMapNodeMouseMove:Se(),miniMapNodeMouseLeave:Se(),connect:Se(),connectStart:Se(),connectEnd:Se(),clickConnectStart:Se(),clickConnectEnd:Se(),paneReady:Se(),init:Se(),move:Se(),moveStart:Se(),moveEnd:Se(),selectionDragStart:Se(),selectionDrag:Se(),selectionDragStop:Se(),selectionContextMenu:Se(),selectionStart:Se(),selectionEnd:Se(),viewportChangeStart:Se(),viewportChange:Se(),viewportChangeEnd:Se(),paneScroll:Se(),paneClick:Se(),paneContextMenu:Se(),paneMouseEnter:Se(),paneMouseMove:Se(),paneMouseLeave:Se(),edgeContextMenu:Se(),edgeMouseEnter:Se(),edgeMouseMove:Se(),edgeMouseLeave:Se(),edgeDoubleClick:Se(),edgeClick:Se(),edgeUpdateStart:Se(),edgeUpdate:Se(),edgeUpdateEnd:Se(),updateNodeInternals:Se(),error:Se(e=>xr(e.message))}}function NI(e,n){const o=t.getCurrentInstance();t.onBeforeMount(()=>{for(const[i,a]of Object.entries(n.value)){const l=s=>{e(i,s)};a.setEmitter(l),ar(a.removeEmitter),a.setHasEmitListeners(()=>r(i)),ar(a.removeHasEmitListeners)}});function r(i){var a;const l=xI(i);return!!((a=o==null?void 0:o.vnode.props)==null?void 0:a[l])}}function xI(e){const[n,...o]=e.split(":");return`on${n.replace(/(?:^|-)(\w)/g,(i,a)=>a.toUpperCase())}${o.length?`:${o.join(":")}`:""}`}function Fp(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],nodeExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],selectionMode:Ql.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:br.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:"#b1b1b7",connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:Xn.Bezier,style:{}},connectionMode:bn.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:Number.NaN,y:Number.NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:"Shift",multiSelectionKeyCode:Ui()?"Meta":"Control",zoomActivationKeyCode:Ui()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:EI(),applyDefault:!0,autoConnect:!1,fitViewOnInit:!1,fitViewOnInitDone:!1,noDragClassName:"nodrag",noWheelClassName:"nowheel",noPanClassName:"nopan",defaultEdgeOptions:void 0,elevateEdgesOnSelect:!1,elevateNodesOnSelect:!0,autoPanOnNodeDrag:!0,autoPanOnConnect:!0,autoPanSpeed:15,disableKeyboardA11y:!1,ariaLiveMessage:""}}const SI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function vI(e,n,o){const r=kI(e),i=$=>{const I=$??[];e.hooks.updateNodeInternals.trigger(I)},a=$=>UA($,e.nodes,e.edges),l=$=>FA($,e.nodes,e.edges),s=$=>dp($,e.edges),c=({id:$,type:I,nodeId:D})=>{var R;const ee=$?`-${I}-${$}`:`-${I}`;return Array.from(((R=e.connectionLookup.get(`${D}${ee}`))==null?void 0:R.values())??[])},d=$=>{if($)return n.value.get($)},f=$=>{if($)return o.value.get($)},u=($,I,D)=>{var R,ee;const J=[];for(const Z of $){const z={id:Z.id,type:"position",dragging:D,from:Z.from};if(I&&(z.position=Z.position,Z.parentNode)){const ae=d(Z.parentNode);z.position={x:z.position.x-(((R=ae==null?void 0:ae.computedPosition)==null?void 0:R.x)??0),y:z.position.y-(((ee=ae==null?void 0:ae.computedPosition)==null?void 0:ee.y)??0)}}J.push(z)}J!=null&&J.length&&e.hooks.nodesChange.trigger(J)},p=$=>{if(!e.vueFlowRef)return;const I=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!I)return;const D=window.getComputedStyle(I),{m22:R}=new window.DOMMatrixReadOnly(D.transform),ee=[];for(const J of $){const Z=J,z=d(Z.id);if(z){const ae=Li(Z.nodeElement);if(!!(ae.width&&ae.height&&(z.dimensions.width!==ae.width||z.dimensions.height!==ae.height||Z.forceUpdate))){const Y=Z.nodeElement.getBoundingClientRect();z.dimensions=ae,z.handleBounds.source=Ip("source",Z.nodeElement,Y,R,z.id),z.handleBounds.target=Ip("target",Z.nodeElement,Y,R,z.id),ee.push({id:z.id,type:"dimensions",dimensions:ae})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),ee.length&&e.hooks.nodesChange.trigger(ee)},m=($,I)=>{const D=new Set,R=new Set;for(const Z of $)Jn(Z)?D.add(Z.id):wn(Z)&&R.add(Z.id);const ee=Cn(n.value,D,!0),J=Cn(o.value,R);if(e.multiSelectionActive){for(const Z of D)ee.push(kn(Z,I));for(const Z of R)J.push(kn(Z,I))}ee.length&&e.hooks.nodesChange.trigger(ee),J.length&&e.hooks.edgesChange.trigger(J)},g=$=>{if(e.multiSelectionActive){const I=$.map(D=>kn(D.id,!0));e.hooks.nodesChange.trigger(I);return}e.hooks.nodesChange.trigger(Cn(n.value,new Set($.map(I=>I.id)),!0)),e.hooks.edgesChange.trigger(Cn(o.value))},_=$=>{if(e.multiSelectionActive){const I=$.map(D=>kn(D.id,!0));e.hooks.edgesChange.trigger(I);return}e.hooks.edgesChange.trigger(Cn(o.value,new Set($.map(I=>I.id)))),e.hooks.nodesChange.trigger(Cn(n.value,new Set,!0))},h=$=>{m($,!0)},y=$=>{const D=($||e.nodes).map(R=>(R.selected=!1,kn(R.id,!1)));e.hooks.nodesChange.trigger(D)},k=$=>{const D=($||e.edges).map(R=>(R.selected=!1,kn(R.id,!1)));e.hooks.edgesChange.trigger(D)},b=$=>{if(!$||!$.length)return m([],!1);const I=$.reduce((D,R)=>{const ee=kn(R.id,!1);return Jn(R)?D.nodes.push(ee):D.edges.push(ee),D},{nodes:[],edges:[]});I.nodes.length&&e.hooks.nodesChange.trigger(I.nodes),I.edges.length&&e.hooks.edgesChange.trigger(I.edges)},E=$=>{var I;(I=e.d3Zoom)==null||I.scaleExtent([$,e.maxZoom]),e.minZoom=$},N=$=>{var I;(I=e.d3Zoom)==null||I.scaleExtent([e.minZoom,$]),e.maxZoom=$},C=$=>{var I;(I=e.d3Zoom)==null||I.translateExtent($),e.translateExtent=$},x=$=>{e.nodeExtent=$,i()},P=$=>{var I;(I=e.d3Zoom)==null||I.clickDistance($)},A=$=>{e.nodesDraggable=$,e.nodesConnectable=$,e.elementsSelectable=$},B=$=>{const I=$ instanceof Function?$(e.nodes):$;!e.initialized&&!I.length||(e.nodes=Pp(I,d,e.hooks.error.trigger))},v=$=>{const I=$ instanceof Function?$(e.edges):$;if(!e.initialized&&!I.length)return;const D=cs(I,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ss(e.connectionLookup,o.value,D),e.edges=D},w=$=>{const I=$ instanceof Function?$([...e.nodes,...e.edges]):$;!e.initialized&&!I.length||(B(I.filter(Jn)),v(I.filter(wn)))},F=$=>{let I=$ instanceof Function?$(e.nodes):$;I=Array.isArray(I)?I:[I];const D=Pp(I,d,e.hooks.error.trigger),R=[];for(const ee of D)R.push(yp(ee));R.length&&e.hooks.nodesChange.trigger(R)},S=$=>{let I=$ instanceof Function?$(e.edges):$;I=Array.isArray(I)?I:[I];const D=cs(I,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),R=[];for(const ee of D)R.push(yp(ee));R.length&&e.hooks.edgesChange.trigger(R)},M=($,I=!0,D=!1)=>{const R=$ instanceof Function?$(e.nodes):$,ee=Array.isArray(R)?R:[R],J=[],Z=[];function z(H){const Y=s(H);for(const Q of Y)(!tt(Q.deletable)||Q.deletable)&&Z.push(bp(Q.id,Q.source,Q.target,Q.sourceHandle,Q.targetHandle))}function ae(H){const Y=[];for(const Q of e.nodes)Q.parentNode===H&&Y.push(Q);if(Y.length){for(const Q of Y)J.push(_p(Q.id));I&&z(Y);for(const Q of Y)ae(Q.id)}}for(const H of ee){const Y=typeof H=="string"?d(H):H;Y&&(tt(Y.deletable)&&!Y.deletable||(J.push(_p(Y.id)),I&&z([Y]),D&&ae(Y.id)))}Z.length&&e.hooks.edgesChange.trigger(Z),J.length&&e.hooks.nodesChange.trigger(J)},O=$=>{const I=$ instanceof Function?$(e.edges):$,D=Array.isArray(I)?I:[I],R=[];for(const ee of D){const J=typeof ee=="string"?f(ee):ee;J&&(tt(J.deletable)&&!J.deletable||R.push(bp(typeof ee=="string"?ee:ee.id,J.source,J.target,J.sourceHandle,J.targetHandle)))}e.hooks.edgesChange.trigger(R)},j=($,I,D=!0)=>{const R=f($.id);if(!R)return!1;const ee=e.edges.indexOf(R),J=dI($,I,R,D,e.hooks.error.trigger);if(J){const[Z]=cs([J],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((z,ae)=>ae===ee?Z:z),ss(e.connectionLookup,o.value,[Z]),Z}return!1},W=($,I,D={replace:!1})=>{const R=f($);if(!R)return;const ee=typeof I=="function"?I(R):I;R.data=D.replace?ee:{...R.data,...ee}},L=$=>hp($,e.nodes),U=$=>{const I=hp($,e.edges);return ss(e.connectionLookup,o.value,I),I},T=($,I,D={replace:!1})=>{const R=d($);if(!R)return;const ee=typeof I=="function"?I(R):I;D.replace?e.nodes.splice(e.nodes.indexOf(R),1,ee):Object.assign(R,ee)},V=($,I,D={replace:!1})=>{const R=d($);if(!R)return;const ee=typeof I=="function"?I(R):I;R.data=D.replace?ee:{...R.data,...ee}},G=($,I,D=!1)=>{D?e.connectionClickStartHandle=$:e.connectionStartHandle=$,e.connectionEndHandle=null,e.connectionStatus=null,I&&(e.connectionPosition=I)},se=($,I=null,D=null)=>{e.connectionStartHandle&&(e.connectionPosition=$,e.connectionEndHandle=I,e.connectionStatus=D)},K=($,I)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,I?e.connectionClickStartHandle=null:e.connectionStartHandle=null},q=$=>{const I=MA($),D=I?null:kr($)?$:d($.id);return!I&&!D?[null,null,I]:[I?$:Di(D),D,I]},ne=($,I=!0,D=e.nodes)=>{const[R,ee,J]=q($);if(!R)return[];const Z=[];for(const z of D||e.nodes){if(!J&&(z.id===ee.id||!z.computedPosition))continue;const ae=Di(z),H=Mi(ae,R);(I&&H>0||H>=ae.width*ae.height||H>=Number(R.width)*Number(R.height))&&Z.push(z)}return Z},me=($,I,D=!0)=>{const[R]=q($);if(!R)return!1;const ee=Mi(R,I);return D&&ee>0||ee>=Number(R.width)*Number(R.height)},ye=$=>{const{viewport:I,dimensions:D,d3Zoom:R,d3Selection:ee,translateExtent:J}=e;if(!R||!ee||!$.x&&!$.y)return!1;const Z=Io.translate(I.x+$.x,I.y+$.y).scale(I.zoom),z=[[0,0],[D.width,D.height]],ae=R.constrain()(Z,z,J),H=e.viewport.x!==ae.x||e.viewport.y!==ae.y||e.viewport.zoom!==ae.k;return R.transform(ee,ae),H},ie=$=>{const I=$ instanceof Function?$(e):$,D=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];tt(I.defaultEdgeOptions)&&(e.defaultEdgeOptions=I.defaultEdgeOptions);const R=I.modelValue||I.nodes||I.edges?[]:void 0;R&&(I.modelValue&&R.push(...I.modelValue),I.nodes&&R.push(...I.nodes),I.edges&&R.push(...I.edges),w(R));const ee=()=>{tt(I.maxZoom)&&N(I.maxZoom),tt(I.minZoom)&&E(I.minZoom),tt(I.translateExtent)&&C(I.translateExtent)};for(const J of Object.keys(I)){const Z=J,z=I[Z];![...SI,...D].includes(Z)&&tt(z)&&(e[Z]=z)}Ol(()=>e.d3Zoom).not.toBeNull().then(ee),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:w,setNodes:B,setEdges:v,addNodes:F,addEdges:S,removeNodes:M,removeEdges:O,findNode:d,findEdge:f,updateEdge:j,updateEdgeData:W,updateNode:T,updateNodeData:V,applyEdgeChanges:U,applyNodeChanges:L,addSelectedElements:h,addSelectedNodes:g,addSelectedEdges:_,setMinZoom:E,setMaxZoom:N,setTranslateExtent:C,setNodeExtent:x,setPaneClickDistance:P,removeSelectedElements:b,removeSelectedNodes:y,removeSelectedEdges:k,startConnection:G,updateConnection:se,endConnection:K,setInteractive:A,setState:ie,getIntersectingNodes:ne,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:me,panBy:ye,fitView:$=>r.value.fitView($),zoomIn:$=>r.value.zoomIn($),zoomOut:$=>r.value.zoomOut($),zoomTo:($,I)=>r.value.zoomTo($,I),setViewport:($,I)=>r.value.setViewport($,I),setTransform:($,I)=>r.value.setTransform($,I),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:($,I,D)=>r.value.setCenter($,I,D),fitBounds:($,I)=>r.value.fitBounds($,I),project:$=>r.value.project($),screenToFlowCoordinate:$=>r.value.screenToFlowCoordinate($),flowToScreenCoordinate:$=>r.value.flowToScreenCoordinate($),toObject:()=>{const $=[],I=[];for(const D of e.nodes){const{computedPosition:R,handleBounds:ee,selected:J,dimensions:Z,isParent:z,resizing:ae,dragging:H,events:Y,...Q}=D;$.push(Q)}for(const D of e.edges){const{selected:R,sourceNode:ee,targetNode:J,events:Z,...z}=D;I.push(z)}return JSON.parse(JSON.stringify({nodes:$,edges:I,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:$=>new Promise(I=>{const{nodes:D,edges:R,position:ee,zoom:J,viewport:Z}=$;D&&B(D),R&&v(R);const[z,ae]=Z!=null&&Z.x&&(Z!=null&&Z.y)?[Z.x,Z.y]:ee??[null,null];if(z&&ae){const H=(Z==null?void 0:Z.zoom)||J||e.viewport.zoom;return Ol(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:z,y:ae,zoom:H}).then(()=>{I(!0)})})}else I(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const $=Fp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const I=Io.translate($.defaultViewport.x??0,$.defaultViewport.y??0).scale(Zn($.defaultViewport.zoom??1,$.minZoom,$.maxZoom)),D=e.viewportRef.getBoundingClientRect(),R=[[0,0],[D.width,D.height]],ee=e.d3Zoom.constrain()(I,R,$.translateExtent);e.d3Zoom.transform(e.d3Selection,ee)}ie($)},$destroy:()=>{}}}const AI=["data-id","data-handleid","data-nodeid","data-handlepos"],II={name:"Handle",compatConfig:{MODE:3}},Yt=t.defineComponent({...II,props:{id:{default:null},type:{},position:{default:()=>ve.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Re(),{id:m,node:g,nodeEl:_,connectedEdges:h}=Mp(),y=t.ref(),k=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),E=t.toRef(()=>{var v,w,F,S,M,O;return((v=l.value)==null?void 0:v.nodeId)===m&&((w=l.value)==null?void 0:w.id)===e.id&&((F=l.value)==null?void 0:F.type)===r.value||((S=c.value)==null?void 0:S.nodeId)===m&&((M=c.value)==null?void 0:M.id)===e.id&&((O=c.value)==null?void 0:O.type)===r.value}),N=t.toRef(()=>{var v,w,F;return((v=s.value)==null?void 0:v.nodeId)===m&&((w=s.value)==null?void 0:w.id)===e.id&&((F=s.value)==null?void 0:F.type)===r.value}),{handlePointerDown:C,handleClick:x}=Dp({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),P=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!h.value.some(v=>{const w=v[`${r.value}Handle`];return v[r.value]!==m?!1:w?w===e.id:!0}):typeof e.connectable=="number"?h.value.filter(v=>{const w=v[`${r.value}Handle`];return v[r.value]!==m?!1:w?w===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(g,h.value):tt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var v;if(!g.dimensions.width||!g.dimensions.height)return;const w=(v=g.handleBounds[r.value])==null?void 0:v.find(L=>L.id===e.id);if(!d.value||w)return;const F=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!y.value||!F||!e.id)return;const S=_.value.getBoundingClientRect(),M=y.value.getBoundingClientRect(),O=window.getComputedStyle(F),{m22:j}=new window.DOMMatrixReadOnly(O.transform),W={id:e.id,position:e.position,x:(M.left-S.left)/j,y:(M.top-S.top)/j,type:r.value,nodeId:m,...Li(y.value)};g.handleBounds[r.value]=[...g.handleBounds[r.value]??[],W]});function A(v){const w=rs(v);P.value&&k.value&&(w&&v.button===0||!w)&&C(v)}function B(v){!m||!s.value&&!k.value||P.value&&x(v)}return n({handleClick:x,handlePointerDown:C,onClick:B,onPointerDown:A}),(v,w)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:y,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":v.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${v.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:P.value,connecting:N.value,connectablestart:k.value,connectableend:b.value,connectionindicator:P.value&&(k.value&&!E.value||b.value&&E.value)}]]),onMousedown:A,onTouchstartPassive:A,onClick:B},[t.renderSlot(v.$slots,"default",{id:v.id})],42,AI))}}),zi=function({sourcePosition:e=ve.Bottom,targetPosition:n=ve.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Yt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Yt,{type:"source",position:e,connectable:r,isValidConnection:a})]};zi.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],zi.inheritAttrs=!1,zi.compatConfig={MODE:3};const PI=zi,Hi=function({targetPosition:e=ve.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Yt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Hi.props=["targetPosition","label","isValidTargetPos","connectable","data"],Hi.inheritAttrs=!1,Hi.compatConfig={MODE:3};const TI=Hi,Yi=function({sourcePosition:e=ve.Bottom,label:n,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??n;return[typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a]),t.h(Yt,{type:"source",position:e,connectable:o,isValidConnection:r})]};Yi.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Yi.inheritAttrs=!1,Yi.compatConfig={MODE:3};const OI=Yi,$I=["transform"],BI=["width","height","x","y","rx","ry"],VI=["y"],RI={name:"EdgeText",compatConfig:{MODE:3}},DI=t.defineComponent({...RI,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const n=t.ref({x:0,y:0,width:0,height:0}),o=t.ref(null),r=t.computed(()=>`translate(${e.x-n.value.width/2} ${e.y-n.value.height/2})`);t.onMounted(i),t.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==n.value.width||a.height!==n.value.height)&&(n.value=a)}return(a,l)=>(t.openBlock(),t.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(t.openBlock(),t.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${n.value.width+2*a.labelBgPadding[0]}px`,height:`${n.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:t.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,BI)):t.createCommentVNode("",!0),t.createElementVNode("text",t.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:n.value.height/2,dy:"0.3em",style:a.labelStyle}),[t.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.label),{key:0})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.label),1)],64))])],16,VI)],8,$I))}}),MI=["id","d","marker-end","marker-start"],LI=["d","stroke-width"],FI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Wi=t.defineComponent({...FI,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:n}){const o=t.ref(null),r=t.ref(null),i=t.ref(null),a=t.useAttrs();return n({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("path",t.mergeProps(t.unref(a),{id:l.id,ref_key:"pathEl",ref:o,d:l.path,class:"vue-flow__edge-path","marker-end":l.markerEnd,"marker-start":l.markerStart}),null,16,MI),l.interactionWidth?(t.openBlock(),t.createElementBlock("path",{key:0,ref_key:"interactionEl",ref:r,fill:"none",d:l.path,"stroke-width":l.interactionWidth,"stroke-opacity":0,class:"vue-flow__edge-interaction"},null,8,LI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(DI,{key:1,ref_key:"labelEl",ref:i,x:l.labelX,y:l.labelY,label:l.label,"label-show-bg":l.labelShowBg,"label-bg-style":l.labelBgStyle,"label-bg-padding":l.labelBgPadding,"label-bg-border-radius":l.labelBgBorderRadius,"label-style":l.labelStyle},null,8,["x","y","label","label-show-bg","label-bg-style","label-bg-padding","label-bg-border-radius","label-style"])):t.createCommentVNode("",!0)],64))}});function Up({sourceX:e,sourceY:n,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-n)/2,s=r<n?r+l:r-l;return[a,s,i,l]}function Kp({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-n);return[c,d,f,u]}function Xi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function jp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ve.Left:l=n-Xi(n-r,a),s=o;break;case ve.Right:l=n+Xi(r-n,a),s=o;break;case ve.Top:l=n,s=o-Xi(o-i,a);break;case ve.Bottom:l=n,s=o+Xi(i-o,a);break}return[l,s]}function Gp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ve.Bottom,targetX:i,targetY:a,targetPosition:l=ve.Top,curvature:s=.25}=e,[c,d]=jp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=jp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,g,_]=Kp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,g,_]}function qp({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ve.Left:case ve.Right:a=.5*(n+r),l=o;break;case ve.Top:case ve.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function zp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ve.Bottom,targetX:i,targetY:a,targetPosition:l=ve.Top}=e,[s,c]=qp({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=qp({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,g]=Kp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,g]}const Hp={[ve.Left]:{x:-1,y:0},[ve.Right]:{x:1,y:0},[ve.Top]:{x:0,y:-1},[ve.Bottom]:{x:0,y:1}};function UI({source:e,sourcePosition:n=ve.Bottom,target:o}){return n===ve.Left||n===ve.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Yp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function KI({source:e,sourcePosition:n=ve.Bottom,target:o,targetPosition:r=ve.Top,center:i,offset:a}){const l=Hp[n],s=Hp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},d={x:o.x+s.x*a,y:o.y+s.y*a},f=UI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,g,_;const h={x:0,y:0},y={x:0,y:0},[k,b,E,N]=Up({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){g=i.x??k,_=i.y??b;const x=[{x:g,y:c.y},{x:g,y:d.y}],P=[{x:c.x,y:_},{x:d.x,y:_}];l[u]===p?m=u==="x"?x:P:m=u==="x"?P:x}else{const x=[{x:c.x,y:d.y}],P=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?P:x:m=l.y===p?x:P,n===r){const F=Math.abs(e[u]-o[u]);if(F<=a){const S=Math.min(a-1,a-F);l[u]===p?h[u]=(c[u]>e[u]?-1:1)*S:y[u]=(d[u]>o[u]?-1:1)*S}}if(n!==r){const F=u==="x"?"y":"x",S=l[u]===s[F],M=c[F]>d[F],O=c[F]<d[F];(l[u]===1&&(!S&&M||S&&O)||l[u]!==1&&(!S&&O||S&&M))&&(m=u==="x"?x:P)}const A={x:c.x+h.x,y:c.y+h.y},B={x:d.x+y.x,y:d.y+y.y},v=Math.max(Math.abs(A.x-m[0].x),Math.abs(B.x-m[0].x)),w=Math.max(Math.abs(A.y-m[0].y),Math.abs(B.y-m[0].y));v>=w?(g=(A.x+B.x)/2,_=m[0].y):(g=m[0].x,_=(A.y+B.y)/2)}return[[e,{x:c.x+h.x,y:c.y+h.y},...m,{x:d.x+y.x,y:d.y+y.y},o],g,_,E,N]}function jI(e,n,o,r){const i=Math.min(Yp(e,n)/2,Yp(n,o)/2,r),{x:a,y:l}=n;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const d=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*d},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function us(e){const{sourceX:n,sourceY:o,sourcePosition:r=ve.Bottom,targetX:i,targetY:a,targetPosition:l=ve.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,g,_]=KI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((y,k,b)=>{let E;return b>0&&b<u.length-1?E=jI(u[b-1],k,u[b+1],s):E=`${b===0?"M":"L"}${k.x} ${k.y}`,y+=E,y},""),p,m,g,_]}function GI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Up({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const qI=t.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=GI(e);return t.h(Wi,{path:o,labelX:r,labelY:i,...n,...e})}}}),Wp=t.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=us({...e,sourcePosition:e.sourcePosition??ve.Bottom,targetPosition:e.targetPosition??ve.Top});return t.h(Wi,{path:o,labelX:r,labelY:i,...n,...e})}}}),zI=t.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:n}){return()=>t.h(Wp,{...e,...n,borderRadius:0})}}),HI=t.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Gp({...e,sourcePosition:e.sourcePosition??ve.Bottom,targetPosition:e.targetPosition??ve.Top});return t.h(Wi,{path:o,labelX:r,labelY:i,...n,...e})}}}),YI=t.defineComponent({name:"SimpleBezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=zp({...e,sourcePosition:e.sourcePosition??ve.Bottom,targetPosition:e.targetPosition??ve.Top});return t.h(Wi,{path:o,labelX:r,labelY:i,...n,...e})}}}),WI={input:OI,default:PI,output:TI},XI={default:HI,straight:qI,step:zI,smoothstep:Wp,simplebezier:YI};function ZI(e,n,o){const r=t.computed(()=>_=>n.value.get(_)),i=t.computed(()=>_=>o.value.get(_)),a=t.computed(()=>{const _={...XI,...e.edgeTypes},h=Object.keys(_);for(const y of e.edges)y.type&&!h.includes(y.type)&&(_[y.type]=y.type);return _}),l=t.computed(()=>{const _={...WI,...e.nodeTypes},h=Object.keys(_);for(const y of e.nodes)y.type&&!h.includes(y.type)&&(_[y.type]=y.type);return _}),s=t.computed(()=>e.onlyRenderVisibleElements?cp(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const _=[];for(const h of e.edges){const y=n.value.get(h.source),k=n.value.get(h.target);JA({sourcePos:y.computedPosition||{x:0,y:0},targetPos:k.computedPosition||{x:0,y:0},sourceWidth:y.dimensions.width,sourceHeight:y.dimensions.height,targetWidth:k.dimensions.width,targetHeight:k.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(h)}return _}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const _=[];for(const h of e.nodes)h.selected&&_.push(h);return _}),u=t.computed(()=>{const _=[];for(const h of e.edges)h.selected&&_.push(h);return _}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const _=[];for(const h of e.nodes)h.dimensions.width&&h.dimensions.height&&h.handleBounds!==void 0&&_.push(h);return _}),g=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:g}}class Qn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var n;const o=(n=t.getCurrentInstance())==null?void 0:n.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??Qn.instance;return Qn.instance=r??new Qn,o&&(o.config.globalProperties.$vueFlowStorage=Qn.instance),Qn.instance}set(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=Fp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const g=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[g]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=ZI(i,s,c),f=vI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...H1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.48.1",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Re(e){const n=Qn.getInstance(),o=t.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=t.inject($p,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const g=h=>{d.applyNodeChanges(h)},_=h=>{d.applyEdgeChanges(h)};u?(d.onNodesChange(g),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),ar(()=>{if(s){const u=n.get(s.id);u?u.$destroy():xr(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide($p,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new at(et.USEVUEFLOW_OPTIONS))}return s}function JI(e){const{emits:n,dimensions:o}=Re();let r;t.onMounted(()=>{const i=()=>{var a,l;if(!e.value||!(((l=(a=e.value).checkVisibility)==null?void 0:l.call(a))??!0))return;const s=Li(e.value);(s.width===0||s.height===0)&&n.error(new at(et.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:s.width||500,height:s.height||500}};i(),window.addEventListener("resize",i),e.value&&(r=new ResizeObserver(()=>i()),r.observe(e.value)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",i),r&&e.value&&r.unobserve(e.value)})})}const QI={name:"UserSelection",compatConfig:{MODE:3}},eP=t.defineComponent({...QI,props:{userSelectionRect:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:t.normalizeStyle({width:`${n.userSelectionRect.width}px`,height:`${n.userSelectionRect.height}px`,transform:`translate(${n.userSelectionRect.x}px, ${n.userSelectionRect.y}px)`})},null,4))}}),tP=["tabIndex"],nP={name:"NodesSelection",compatConfig:{MODE:3}},oP=t.defineComponent({...nP,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Re(),s=Lp(),c=t.ref(null),d=Rp({el:c,onStart(g){n.selectionDragStart(g),n.nodeDragStart(g)},onDrag(g){n.selectionDrag(g),n.nodeDrag(g)},onStop(g){n.selectionDragStop(g),n.nodeDragStop(g)}});t.onMounted(()=>{var g;a.value||(g=c.value)==null||g.focus({preventScroll:!0})});const f=t.computed(()=>sp(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(g){n.selectionContextMenu({event:g,nodes:r.value})}function m(g){a.value||Po[g.key]&&(g.preventDefault(),s({x:Po[g.key].x,y:Po[g.key].y},g.shiftKey))}return(g,_)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,tP)],6)):t.createCommentVNode("",!0)}});function rP(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const iP={name:"Pane",compatConfig:{MODE:3}},aP=t.defineComponent({...iP,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:g,deleteKeyCode:_,multiSelectionKeyCode:h,multiSelectionActive:y,edgeLookup:k,nodeLookup:b,connectionLookup:E,defaultEdgeOptions:N,connectionStartHandle:C,panOnDrag:x}=Re(),P=t.shallowRef(null),A=t.shallowRef(new Set),B=t.shallowRef(new Set),v=t.shallowRef(null),w=t.toRef(()=>c.value&&(e.isSelecting||a.value)),F=t.toRef(()=>C.value!==null);let S=!1,M=!1;const O=wr(_,{actInsideInputWithModifier:!1}),j=wr(h);t.watch(O,K=>{K&&(p(u.value),m(f.value),d.value=!1)}),t.watch(j,K=>{y.value=K});function W(K,q){return ne=>{ne.target===q&&(K==null||K(ne))}}function L(K){if(S||F.value){S=!1;return}i.paneClick(K),l(),d.value=!1}function U(K){var q;if(Array.isArray(x.value)&&((q=x.value)!=null&&q.includes(2))){K.preventDefault();return}i.paneContextMenu(K)}function T(K){i.paneScroll(K)}function V(K){var q,ne,me;if(v.value=((q=n.value)==null?void 0:q.getBoundingClientRect())??null,!c.value||!e.isSelecting||K.button!==0||K.target!==P.value||!v.value)return;(me=(ne=K.target)==null?void 0:ne.setPointerCapture)==null||me.call(ne,K.pointerId);const{x:ye,y:ie}=rP(K,v.value);M=!0,S=!1,l(),s.value={width:0,height:0,startX:ye,startY:ie,x:ye,y:ie},i.selectionStart(K)}function G(K){var q;if(!v.value||!s.value)return;S=!0;const{x:ne,y:me}=Ht(K,v.value),{startX:ye=0,startY:ie=0}=s.value,oe={startX:ye,startY:ie,x:ne<ye?ne:ye,y:me<ie?me:ie,width:Math.abs(ne-ye),height:Math.abs(me-ie)},le=A.value,de=B.value;A.value=new Set(cp(o.value,oe,r.value,g.value===Ql.Partial,!0).map(I=>I.id)),B.value=new Set;const $=((q=N.value)==null?void 0:q.selectable)??!0;for(const I of A.value){const D=E.value.get(I);if(D)for(const{edgeId:R}of D.values()){const ee=k.value.get(R);ee&&(ee.selectable??$)&&B.value.add(R)}}if(!Op(le,A.value)){const I=Cn(b.value,A.value,!0);i.nodesChange(I)}if(!Op(de,B.value)){const I=Cn(k.value,B.value);i.edgesChange(I)}s.value=oe,a.value=!0,d.value=!1}function se(K){var q;K.button!==0||!M||((q=K.target)==null||q.releasePointerCapture(K.pointerId),!a.value&&s.value&&K.target===P.value&&L(K),a.value=!1,s.value=null,d.value=A.value.size>0,i.selectionEnd(K),e.selectionKeyPressed&&(S=!1),M=!1)}return(K,q)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:P,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:K.isSelecting}]),onClick:q[0]||(q[0]=ne=>w.value?void 0:W(L,P.value)(ne)),onContextmenu:q[1]||(q[1]=ne=>W(U,P.value)(ne)),onWheelPassive:q[2]||(q[2]=ne=>W(T,P.value)(ne)),onPointerenter:q[3]||(q[3]=ne=>w.value?void 0:t.unref(i).paneMouseEnter(ne)),onPointerdown:q[4]||(q[4]=ne=>w.value?V(ne):t.unref(i).paneMouseMove(ne)),onPointermove:q[5]||(q[5]=ne=>w.value?G(ne):t.unref(i).paneMouseMove(ne)),onPointerup:q[6]||(q[6]=ne=>w.value?se(ne):void 0),onPointerleave:q[7]||(q[7]=ne=>t.unref(i).paneMouseLeave(ne))},[t.renderSlot(K.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(eP,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(d)&&t.unref(u).length?(t.openBlock(),t.createBlock(oP,{key:1})):t.createCommentVNode("",!0)],34))}}),lP={name:"Transform",compatConfig:{MODE:3}},sP=t.defineComponent({...lP,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Re(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),cP={name:"Viewport",compatConfig:{MODE:3}},dP=t.defineComponent({...cP,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:g,preventScrolling:_,noWheelClassName:h,noPanClassName:y,emits:k,connectionStartHandle:b,userSelectionActive:E,paneDragging:N,d3Zoom:C,d3Selection:x,d3ZoomHandler:P,viewport:A,viewportRef:B,paneClickDistance:v}=Re();JI(B);const w=t.shallowRef(!1),F=t.shallowRef(!1);let S=null,M=!1,O=0,j={x:0,y:0,zoom:0};const W=wr(s),L=wr(l),U=wr(a),T=t.toRef(()=>(!L.value||L.value&&l.value===!0)&&(W.value||u.value)),V=t.toRef(()=>W.value||c.value),G=t.toRef(()=>L.value||l.value===!0&&T.value!==!0),se=t.toRef(()=>b.value!==null);t.onMounted(()=>{if(!B.value){xr("Viewport element is missing");return}const ye=B.value,ie=ye.getBoundingClientRect(),oe=TA().clickDistance(v.value).scaleExtent([n.value,o.value]).translateExtent(i.value),le=Dt(ye).call(oe),de=le.on("wheel.zoom"),$=Io.translate(r.value.x??0,r.value.y??0).scale(Zn(r.value.zoom??1,n.value,o.value)),I=[[0,0],[ie.width,ie.height]],D=oe.constrain()($,I,i.value);oe.transform(le,D),oe.wheelDelta(pp),C.value=oe,x.value=le,P.value=de,A.value={x:D.x,y:D.y,zoom:D.k},oe.on("start",R=>{var ee;if(!R.sourceEvent)return null;O=R.sourceEvent.button,w.value=!0;const J=ne(R.transform);((ee=R.sourceEvent)==null?void 0:ee.type)==="mousedown"&&(N.value=!0),j=J,k.viewportChangeStart(J),k.moveStart({event:R,flowTransform:J})}),oe.on("end",R=>{if(!R.sourceEvent)return null;if(w.value=!1,N.value=!1,K(T.value,O??0)&&!M&&k.paneContextMenu(R.sourceEvent),M=!1,q(j,R.transform)){const ee=ne(R.transform);j=ee,k.viewportChangeEnd(ee),k.moveEnd({event:R,flowTransform:ee})}}),oe.filter(R=>{var ee;const J=U.value||g.value,Z=m.value&&R.ctrlKey,z=R.button,ae=R.type==="wheel";if(z===1&&R.type==="mousedown"&&(me(R,"vue-flow__node")||me(R,"vue-flow__edge")))return!0;if(!T.value&&!J&&!V.value&&!p.value&&!m.value||E.value||se.value&&!ae||!p.value&&R.type==="dblclick"||me(R,h.value)&&ae||me(R,y.value)&&(!ae||V.value&&ae&&!U.value)||!m.value&&R.ctrlKey&&ae||!J&&!V.value&&!Z&&ae)return!1;if(!m&&R.type==="touchstart"&&((ee=R.touches)==null?void 0:ee.length)>1)return R.preventDefault(),!1;if(!T.value&&(R.type==="mousedown"||R.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&z===0||Array.isArray(u.value)&&!u.value.includes(z)&&(R.type==="mousedown"||R.type==="touchstart"))return!1;const H=Array.isArray(u.value)&&u.value.includes(z)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!z||z<=1;return(!R.ctrlKey||W.value||ae)&&H}),t.watch([E,T],()=>{E.value&&!w.value?oe.on("zoom",null):E.value||oe.on("zoom",R=>{A.value={x:R.transform.x,y:R.transform.y,zoom:R.transform.k};const ee=ne(R.transform);M=K(T.value,O??0),k.viewportChange(ee),k.move({event:R,flowTransform:ee})})},{immediate:!0}),t.watch([E,V,d,U,m,_,h],()=>{V.value&&!U.value&&!E.value?le.on("wheel.zoom",R=>{if(me(R,h.value))return!1;const ee=U.value||g.value,J=m.value&&R.ctrlKey;if(!(!_.value||V.value||ee||J))return!1;R.preventDefault(),R.stopImmediatePropagation();const z=le.property("__zoom").k||1,ae=Ui();if(!W.value&&R.ctrlKey&&m.value&&ae){const be=jt(R),te=pp(R),_e=z*2**te;oe.scaleTo(le,_e,be,R);return}const H=R.deltaMode===1?20:1;let Y=d.value===br.Vertical?0:R.deltaX*H,Q=d.value===br.Horizontal?0:R.deltaY*H;!ae&&R.shiftKey&&d.value!==br.Vertical&&!Y&&Q&&(Y=Q,Q=0),oe.translateBy(le,-(Y/z)*f.value,-(Q/z)*f.value);const ce=ne(le.property("__zoom"));S&&clearTimeout(S),F.value?(k.move({event:R,flowTransform:ce}),k.viewportChange(ce),S=setTimeout(()=>{k.moveEnd({event:R,flowTransform:ce}),k.viewportChangeEnd(ce),F.value=!1},150)):(F.value=!0,k.moveStart({event:R,flowTransform:ce}),k.viewportChangeStart(ce))},{passive:!1}):typeof de<"u"&&le.on("wheel.zoom",function(R,ee){const J=!_.value&&R.type==="wheel"&&!R.ctrlKey,Z=U.value||g.value,z=m.value&&R.ctrlKey;if(!Z&&!c.value&&!z&&R.type==="wheel"||J||me(R,h.value))return null;R.preventDefault(),de.call(this,R,ee)},{passive:!1})},{immediate:!0})});function K(ye,ie){return ie===2&&Array.isArray(ye)&&ye.includes(2)}function q(ye,ie){return ye.x!==ie.x&&!Number.isNaN(ie.x)||ye.y!==ie.y&&!Number.isNaN(ie.y)||ye.zoom!==ie.k&&!Number.isNaN(ie.k)}function ne(ye){return{x:ye.x,y:ye.y,zoom:ye.k}}function me(ye,ie){return ye.target.closest(`.${ie}`)}return(ye,ie)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:B,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(aP,{"is-selecting":G.value,"selection-key-pressed":t.unref(L),class:t.normalizeClass({connecting:se.value,dragging:t.unref(N),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(sP,null,{default:t.withCtx(()=>[t.renderSlot(ye.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),uP=["id"],fP=["id"],pP=["id"],mP={name:"A11yDescriptions",compatConfig:{MODE:3}},gP=t.defineComponent({...mP,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Re();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Qf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select a node. "+t.toDisplayString(t.unref(o)?"":"You can then use the arrow keys to move the node around.")+" You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. ",9,uP),t.createElementVNode("div",{id:`${t.unref(ep)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,fP),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(DA)}-${t.unref(n)}`,"aria-live":"assertive","aria-atomic":"true",style:{position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(100%)"}},t.toDisplayString(t.unref(r)),9,pP))],64))}});function hP(){const e=Re();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function yP(e,n,o){return o===ve.Left?e-n:o===ve.Right?e+n:e}function _P(e,n,o){return o===ve.Top?e-n:o===ve.Bottom?e+n:e}const fs=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ve.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:yP(n,e,r),cy:_P(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};fs.props=["radius","centerX","centerY","position","type"],fs.compatConfig={MODE:3};const Xp=fs,bP=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:g,elementsSelectable:_,edgesUpdatable:h,edgesFocusable:y,hooks:k}=Re(),b=t.computed(()=>f(e.id)),{emit:E,on:N}=mI(b.value,a),C=t.inject(ji),x=t.getCurrentInstance(),P=t.ref(!1),A=t.ref(!1),B=t.ref(""),v=t.ref(null),w=t.ref("source"),F=t.ref(null),S=t.toRef(()=>typeof b.value.selectable>"u"?_.value:b.value.selectable),M=t.toRef(()=>typeof b.value.updatable>"u"?h.value:b.value.updatable),O=t.toRef(()=>typeof b.value.focusable>"u"?y.value:b.value.focusable);t.provide(uI,e.id),t.provide(fI,F);const j=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),W=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),L=t.computed(()=>{const I=b.value.type||"default",D=C==null?void 0:C[`edge-${I}`];if(D)return D;let R=b.value.template??c.value[I];if(typeof R=="string"&&x){const ee=Object.keys(x.appContext.components);ee&&ee.includes(I)&&(R=t.resolveComponent(I,!1))}return R&&typeof R!="string"?R:(a.error(new at(et.EDGE_TYPE_MISSING,R)),!1)}),{handlePointerDown:U}=Dp({nodeId:B,handleId:v,type:w,isValidConnection:p,edgeUpdaterType:w,onEdgeUpdate:G,onEdgeUpdateEnd:se});return()=>{const I=u(b.value.source),D=u(b.value.target),R="pathOptions"in b.value?b.value.pathOptions:{};if(!I&&!D)return a.error(new at(et.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!I)return a.error(new at(et.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!D)return a.error(new at(et.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||I.hidden||D.hidden)return null;let ee;r.value===bn.Strict?ee=I.handleBounds.source:ee=[...I.handleBounds.source||[],...I.handleBounds.target||[]];const J=Ep(ee,b.value.sourceHandle);let Z;r.value===bn.Strict?Z=D.handleBounds.target:Z=[...D.handleBounds.target||[],...D.handleBounds.source||[]];const z=Ep(Z,b.value.targetHandle),ae=(J==null?void 0:J.position)||ve.Bottom,H=(z==null?void 0:z.position)||ve.Top,{x:Y,y:Q}=Oo(I,J,ae),{x:ce,y:be}=Oo(D,z,H);return b.value.sourceX=Y,b.value.sourceY=Q,b.value.targetX=ce,b.value.targetY=be,t.h("g",{ref:F,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${L.value===!1?"default":b.value.type||"default"}`,s.value,j.value,{updating:P.value,selected:b.value.selected,animated:b.value.animated,inactive:!S.value&&!k.value.edgeClick.hasListeners()}],tabIndex:O.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":O.value?`${ep}-${n}`:void 0,"aria-roledescription":"edge",role:O.value?"group":"img",...b.value.domAttributes,onClick:q,onContextmenu:ne,onDblclick:me,onMouseenter:ye,onMousemove:ie,onMouseleave:oe,onKeyDown:O.value?$:void 0},[A.value?null:t.h(L.value===!1?c.value.default:L.value,{id:e.id,sourceNode:I,targetNode:D,source:b.value.source,target:b.value.target,type:b.value.type,updatable:M.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...N},style:W.value,markerStart:`url('#${Nr(b.value.markerStart,n)}')`,markerEnd:`url('#${Nr(b.value.markerEnd,n)}')`,sourcePosition:ae,targetPosition:H,sourceX:Y,sourceY:Q,targetX:ce,targetY:be,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...R}),[M.value==="source"||M.value===!0?[t.h("g",{onMousedown:le,onMouseenter:T,onMouseout:V},t.h(Xp,{position:ae,centerX:Y,centerY:Q,radius:i.value,type:"source","data-type":"source"}))]:null,M.value==="target"||M.value===!0?[t.h("g",{onMousedown:de,onMouseenter:T,onMouseout:V},t.h(Xp,{position:H,centerX:ce,centerY:be,radius:i.value,type:"target","data-type":"target"}))]:null]])};function T(){P.value=!0}function V(){P.value=!1}function G(I,D){E.update({event:I,edge:b.value,connection:D})}function se(I){E.updateEnd({event:I,edge:b.value}),A.value=!1}function K(I,D){I.button===0&&(A.value=!0,B.value=D?b.value.target:b.value.source,v.value=(D?b.value.targetHandle:b.value.sourceHandle)??null,w.value=D?"target":"source",E.updateStart({event:I,edge:b.value}),U(I))}function q(I){var D;const R={event:I,edge:b.value};S.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(D=F.value)==null||D.blur()):o([b.value])),E.click(R)}function ne(I){E.contextMenu({event:I,edge:b.value})}function me(I){E.doubleClick({event:I,edge:b.value})}function ye(I){E.mouseEnter({event:I,edge:b.value})}function ie(I){E.mouseMove({event:I,edge:b.value})}function oe(I){E.mouseLeave({event:I,edge:b.value})}function le(I){K(I,!0)}function de(I){K(I,!1)}function $(I){var D;!g.value&&tp.includes(I.key)&&S.value&&(I.key==="Escape"?((D=F.value)==null||D.blur(),d([f(e.id)])):o([f(e.id)]))}}}),wP=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Re(),p=(e=t.inject(ji))==null?void 0:e["connection-line"],m=t.computed(()=>{var k;return u((k=r.value)==null?void 0:k.nodeId)}),g=t.computed(()=>{var k;return u((k=i.value)==null?void 0:k.nodeId)??null}),_=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),h=t.computed(()=>c.value.markerStart?`url(#${Nr(c.value.markerStart,n)})`:""),y=t.computed(()=>c.value.markerEnd?`url(#${Nr(c.value.markerEnd,n)})`:"");return()=>{var k,b,E;if(!m.value||!r.value)return null;const N=r.value.id,C=r.value.type,x=m.value.handleBounds;let P=(x==null?void 0:x[C])??[];if(o.value===bn.Loose){const W=(x==null?void 0:x[C==="source"?"target":"source"])??[];P=[...P,...W]}if(!P)return null;const A=(N?P.find(W=>W.id===N):P[0])??null,B=(A==null?void 0:A.position)??ve.Top,{x:v,y:w}=Oo(m.value,A,B);let F=null;g.value&&(o.value===bn.Strict?F=((k=g.value.handleBounds[C==="source"?"target":"source"])==null?void 0:k.find(W=>{var L;return W.id===((L=i.value)==null?void 0:L.id)}))||null:F=((b=[...g.value.handleBounds.source??[],...g.value.handleBounds.target??[]])==null?void 0:b.find(W=>{var L;return W.id===((L=i.value)==null?void 0:L.id)}))||null);const S=((E=i.value)==null?void 0:E.position)??(B?as[B]:null);if(!B||!S)return null;const M=l.value??c.value.type??Xn.Bezier;let O="";const j={sourceX:v,sourceY:w,sourcePosition:B,targetX:_.value.x,targetY:_.value.y,targetPosition:S};return M===Xn.Bezier?[O]=Gp(j):M===Xn.Step?[O]=us({...j,borderRadius:0}):M===Xn.SmoothStep?[O]=us(j):M===Xn.SimpleBezier?[O]=zp(j):O=`M${v},${w} ${_.value.x},${_.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:v,sourceY:w,sourcePosition:B,targetX:_.value.x,targetY:_.value.y,targetPosition:S,sourceNode:m.value,sourceHandle:A,targetNode:g.value,targetHandle:F,markerEnd:y.value,markerStart:h.value,connectionStatus:d.value}):t.h("path",{d:O,class:[c.value.class,d.value,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":y.value,"marker-start":h.value})))}}}),kP=["id","markerWidth","markerHeight","markerUnits","orient"],CP={name:"MarkerType",compatConfig:{MODE:3}},EP=t.defineComponent({...CP,props:{id:{},type:{},color:{default:"none"},width:{default:12.5},height:{default:12.5},markerUnits:{default:"strokeWidth"},orient:{default:"auto-start-reverse"},strokeWidth:{default:1}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("marker",{id:n.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${n.width}`,markerHeight:`${n.height}`,markerUnits:n.markerUnits,orient:n.orient},[n.type===t.unref(_r).ArrowClosed?(t.openBlock(),t.createElementBlock("polyline",{key:0,style:t.normalizeStyle({stroke:n.color,fill:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):t.createCommentVNode("",!0),n.type===t.unref(_r).Arrow?(t.openBlock(),t.createElementBlock("polyline",{key:1,style:t.normalizeStyle({stroke:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):t.createCommentVNode("",!0)],8,kP))}}),NP={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},xP={name:"MarkerDefinitions",compatConfig:{MODE:3}},SP=t.defineComponent({...xP,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Re(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Nr(d,n);l.has(f)||(typeof d=="object"?s.push({...d,id:f,color:d.color||i.value}):s.push({id:f,color:i.value,type:d}),l.add(f))}};for(const d of[r.value.markerEnd,r.value.markerStart])c(d);for(const d of o.value)for(const f of[d.markerStart,d.markerEnd])c(f);return s.sort((d,f)=>d.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",NP,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(EP,{id:c.id,key:c.id,type:c.type,color:c.color,width:c.width,height:c.height,markerUnits:c.markerUnits,"stroke-width":c.strokeWidth,orient:c.orient},null,8,["id","type","color","width","height","markerUnits","stroke-width","orient"]))),128))])]))}}),vP={name:"Edges",compatConfig:{MODE:3}},AP=t.defineComponent({...vP,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Re();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(SP),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),l=>(t.openBlock(),t.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:t.normalizeStyle({zIndex:t.unref(QA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(bP),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(wP))],64))}}),IP=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:g,ariaLiveMessage:_,snapToGrid:h,snapGrid:y,nodeDragThreshold:k,nodesDraggable:b,elementsSelectable:E,nodesConnectable:N,nodesFocusable:C,hooks:x}=Re(),P=t.ref(null);t.provide(Vp,P),t.provide(Bp,e.id);const A=t.inject(ji),B=t.getCurrentInstance(),v=Lp(),{node:w,parentNode:F}=Mp(e.id),{emit:S,on:M}=_I(w,l),O=t.toRef(()=>typeof w.draggable>"u"?b.value:w.draggable),j=t.toRef(()=>typeof w.selectable>"u"?E.value:w.selectable),W=t.toRef(()=>typeof w.connectable>"u"?N.value:w.connectable),L=t.toRef(()=>typeof w.focusable>"u"?C.value:w.focusable),U=t.computed(()=>j.value||O.value||x.value.nodeClick.hasListeners()||x.value.nodeDoubleClick.hasListeners()||x.value.nodeMouseEnter.hasListeners()||x.value.nodeMouseMove.hasListeners()||x.value.nodeMouseLeave.hasListeners()),T=t.toRef(()=>!!w.dimensions.width&&!!w.dimensions.height),V=t.computed(()=>{const D=w.type||"default",R=A==null?void 0:A[`node-${D}`];if(R)return R;let ee=w.template||u.value[D];if(typeof ee=="string"&&B){const J=Object.keys(B.appContext.components);J&&J.includes(D)&&(ee=t.resolveComponent(D,!1))}return ee&&typeof ee!="string"?ee:(l.error(new at(et.NODE_TYPE_MISSING,ee)),!1)}),G=Rp({id:e.id,el:P,disabled:()=>!O.value,selectable:j,dragHandle:()=>w.dragHandle,onStart(D){S.dragStart(D)},onDrag(D){S.drag(D)},onStop(D){S.dragStop(D)},onClick(D){$(D)}}),se=t.computed(()=>w.class instanceof Function?w.class(w):w.class),K=t.computed(()=>{const D=(w.style instanceof Function?w.style(w):w.style)||{},R=w.width instanceof Function?w.width(w):w.width,ee=w.height instanceof Function?w.height(w):w.height;return!D.width&&R&&(D.width=typeof R=="string"?R:`${R}px`),!D.height&&ee&&(D.height=typeof ee=="string"?ee:`${ee}px`),D}),q=t.toRef(()=>Number(w.zIndex??K.value.zIndex??0));return f(D=>{(D.includes(e.id)||!D.length)&&me()}),t.onMounted(()=>{t.watch(()=>w.hidden,(D=!1,R,ee)=>{!D&&P.value&&(e.resizeObserver.observe(P.value),ee(()=>{P.value&&e.resizeObserver.unobserve(P.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>w.type,()=>w.sourcePosition,()=>w.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:P.value,forceUpdate:!0}])})}),t.watch([()=>w.position.x,()=>w.position.y,()=>{var D;return(D=F.value)==null?void 0:D.computedPosition.x},()=>{var D;return(D=F.value)==null?void 0:D.computedPosition.y},()=>{var D;return(D=F.value)==null?void 0:D.computedPosition.z},q,()=>w.selected,()=>w.dimensions.height,()=>w.dimensions.width,()=>{var D;return(D=F.value)==null?void 0:D.dimensions.height},()=>{var D;return(D=F.value)==null?void 0:D.dimensions.width}],([D,R,ee,J,Z,z])=>{const ae={x:D,y:R,z:z+(m.value&&w.selected?1e3:0)};typeof ee<"u"&&typeof J<"u"?w.computedPosition=HA({x:ee,y:J,z:Z},ae):w.computedPosition=ae},{flush:"post",immediate:!0}),t.watch([()=>w.extent,p],([D,R],[ee,J])=>{(D!==ee||R!==J)&&ne()}),w.extent==="parent"||typeof w.extent=="object"&&"range"in w.extent&&w.extent.range==="parent"?Ol(()=>T).toBe(!0).then(ne):ne(),()=>w.hidden?null:t.h("div",{ref:P,"data-id":w.id,class:["vue-flow__node",`vue-flow__node-${V.value===!1?"default":w.type||"default"}`,{[o.value]:O.value,dragging:G==null?void 0:G.value,draggable:O.value,selected:w.selected,selectable:j.value,parent:w.isParent},se.value],style:{visibility:T.value?"visible":"hidden",zIndex:w.computedPosition.z??q.value,transform:`translate(${w.computedPosition.x}px,${w.computedPosition.y}px)`,pointerEvents:U.value?"all":"none",...K.value},tabIndex:L.value?0:void 0,role:L.value?"group":void 0,"aria-describedby":g.value?void 0:`${Qf}-${n}`,"aria-label":w.ariaLabel,"aria-roledescription":"node",...w.domAttributes,onMouseenter:ye,onMousemove:ie,onMouseleave:oe,onContextmenu:le,onClick:$,onDblclick:de,onKeydown:I},[t.h(V.value===!1?u.value.default:V.value,{id:w.id,type:w.type,data:w.data,events:{...w.events,...M},selected:w.selected,resizing:w.resizing,dragging:G.value,connectable:W.value,position:w.computedPosition,dimensions:w.dimensions,isValidTargetPos:w.isValidTargetPos,isValidSourcePos:w.isValidSourcePos,parent:w.parentNode,parentNodeId:w.parentNode,zIndex:w.computedPosition.z??q.value,targetPosition:w.targetPosition,sourcePosition:w.sourcePosition,label:w.label,dragHandle:w.dragHandle,onUpdateNodeInternals:me})]);function ne(){const D=w.computedPosition,{computedPosition:R,position:ee}=os(w,h.value?Ki(D,y.value):D,l.error,p.value,F.value);(w.computedPosition.x!==R.x||w.computedPosition.y!==R.y)&&(w.computedPosition={...w.computedPosition,...R}),(w.position.x!==ee.x||w.position.y!==ee.y)&&(w.position=ee)}function me(){P.value&&d([{id:e.id,nodeElement:P.value,forceUpdate:!0}])}function ye(D){G!=null&&G.value||S.mouseEnter({event:D,node:w})}function ie(D){G!=null&&G.value||S.mouseMove({event:D,node:w})}function oe(D){G!=null&&G.value||S.mouseLeave({event:D,node:w})}function le(D){return S.contextMenu({event:D,node:w})}function de(D){return S.doubleClick({event:D,node:w})}function $(D){j.value&&(!r.value||!O.value||k.value>0)&&ls(w,a.value,c,s,i,!1,P.value),S.click({event:D,node:w})}function I(D){if(!(es(D)||g.value))if(tp.includes(D.key)&&j.value){const R=D.key==="Escape";ls(w,a.value,c,s,i,R,P.value)}else O.value&&w.selected&&Po[D.key]&&(D.preventDefault(),_.value=`Moved selected node ${D.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~w.position.x}, y: ${~~w.position.y}`,v({x:Po[D.key].x,y:Po[D.key].y},D.shiftKey))}}});function PP(e={includeHiddenNodes:!1}){const{nodes:n}=Re();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const TP={class:"vue-flow__nodes vue-flow__container"},OP={name:"Nodes",compatConfig:{MODE:3}},$P=t.defineComponent({...OP,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Re(),i=PP(),a=t.ref();return t.watch(i,l=>{l&&t.nextTick(()=>{r.nodesInitialized(n.value)})},{immediate:!0}),t.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));t.nextTick(()=>o(s))})}),t.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(t.openBlock(),t.createElementBlock("div",TP,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&t.isMemoSame(u,p))return u;const m=(t.openBlock(),t.createBlock(t.unref(IP),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):t.createCommentVNode("",!0)]))}});function BP(){const{emits:e}=Re();t.onMounted(()=>{if(Ap()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new at(et.MISSING_STYLES))}})}const VP=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),RP={name:"VueFlow",compatConfig:{MODE:3}},Zp=t.defineComponent({...RP,props:{id:{},modelValue:{},nodes:{},edges:{},edgeTypes:{},nodeTypes:{},connectionMode:{},connectionLineType:{},connectionLineStyle:{default:void 0},connectionLineOptions:{default:void 0},connectionRadius:{},isValidConnection:{type:[Function,null],default:void 0},deleteKeyCode:{default:void 0},selectionKeyCode:{type:[Boolean,null],default:void 0},multiSelectionKeyCode:{default:void 0},zoomActivationKeyCode:{default:void 0},panActivationKeyCode:{default:void 0},snapToGrid:{type:Boolean,default:void 0},snapGrid:{},onlyRenderVisibleElements:{type:Boolean,default:void 0},edgesUpdatable:{type:[Boolean,String],default:void 0},nodesDraggable:{type:Boolean,default:void 0},nodesConnectable:{type:Boolean,default:void 0},nodeDragThreshold:{},elementsSelectable:{type:Boolean,default:void 0},selectNodesOnDrag:{type:Boolean,default:void 0},panOnDrag:{type:[Boolean,Array],default:void 0},minZoom:{},maxZoom:{},defaultViewport:{},translateExtent:{},nodeExtent:{},defaultMarkerColor:{},zoomOnScroll:{type:Boolean,default:void 0},zoomOnPinch:{type:Boolean,default:void 0},panOnScroll:{type:Boolean,default:void 0},panOnScrollSpeed:{},panOnScrollMode:{},paneClickDistance:{},zoomOnDoubleClick:{type:Boolean,default:void 0},preventScrolling:{type:Boolean,default:void 0},selectionMode:{},edgeUpdaterRadius:{},fitViewOnInit:{type:Boolean,default:void 0},connectOnClick:{type:Boolean,default:void 0},applyDefault:{type:Boolean,default:void 0},autoConnect:{type:[Boolean,Function],default:void 0},noDragClassName:{},noWheelClassName:{},noPanClassName:{},defaultEdgeOptions:{},elevateEdgesOnSelect:{type:Boolean,default:void 0},elevateNodesOnSelect:{type:Boolean,default:void 0},disableKeyboardA11y:{type:Boolean,default:void 0},edgesFocusable:{type:Boolean,default:void 0},nodesFocusable:{type:Boolean,default:void 0},autoPanOnConnect:{type:Boolean,default:void 0},autoPanOnNodeDrag:{type:Boolean,default:void 0},autoPanSpeed:{}},emits:["nodesChange","edgesChange","nodesInitialized","paneReady","init","updateNodeInternals","error","connect","connectStart","connectEnd","clickConnectStart","clickConnectEnd","moveStart","move","moveEnd","selectionDragStart","selectionDrag","selectionDragStop","selectionContextMenu","selectionStart","selectionEnd","viewportChangeStart","viewportChange","viewportChangeEnd","paneScroll","paneClick","paneContextMenu","paneMouseEnter","paneMouseMove","paneMouseLeave","edgeUpdate","edgeContextMenu","edgeMouseEnter","edgeMouseMove","edgeMouseLeave","edgeDoubleClick","edgeClick","edgeUpdateStart","edgeUpdateEnd","nodeContextMenu","nodeMouseEnter","nodeMouseMove","nodeMouseLeave","nodeDoubleClick","nodeClick","nodeDragStart","nodeDrag","nodeDragStop","miniMapNodeClick","miniMapNodeDoubleClick","miniMapNodeMouseEnter","miniMapNodeMouseMove","miniMapNodeMouseLeave","update:modelValue","update:nodes","update:edges"],setup(e,{expose:n,emit:o}){const r=e,i=t.useSlots(),a=$l(r,"modelValue",o),l=$l(r,"nodes",o),s=$l(r,"edges",o),c=Re(r),d=CI({modelValue:a,nodes:l,edges:s},r,c);return NI(o,c.hooks),hP(),BP(),t.provide(ji,i),t.onUnmounted(d),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(dP,null,{default:t.withCtx(()=>[t.createVNode(AP),VP,t.createVNode($P),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(gP)],512))}}),DP={name:"Panel",compatConfig:{MODE:3}},MP=t.defineComponent({...DP,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Re(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var sn=(e=>(e.Lines="lines",e.Dots="dots",e))(sn||{});const Jp=function({dimensions:e,size:n,color:o}){return t.h("path",{stroke:o,"stroke-width":n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},Qp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};sn.Lines+"",sn.Dots+"";const LP={[sn.Dots]:"#81818a",[sn.Lines]:"#eee"},FP=["id","x","y","width","height","patternTransform"],UP={key:2,height:"100",width:"100"},KP=["fill"],jP=["x","y","fill"],GP={name:"Background",compatConfig:{MODE:3}},qP=t.defineComponent({...GP,props:{id:{},variant:{default:()=>sn.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:n,viewport:o}=Re(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||LP[e.variant||sn.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(sn).Lines?(t.openBlock(),t.createBlock(t.unref(Jp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(sn).Dots?(t.openBlock(),t.createBlock(t.unref(Qp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",UP,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,KP)])):t.createCommentVNode("",!0)])],8,FP)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,jP),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),zP={name:"ControlButton",compatConfig:{MODE:3}},HP=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},YP={type:"button",class:"vue-flow__controls-button"};function WP(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",YP,[t.renderSlot(e.$slots,"default")])}const Sr=HP(zP,[["render",WP]]),XP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},ZP=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function JP(e,n){return t.openBlock(),t.createElementBlock("svg",XP,ZP)}const QP={render:JP},eT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},tT=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function nT(e,n){return t.openBlock(),t.createElementBlock("svg",eT,tT)}const oT={render:nT},rT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},iT=[t.createElementVNode("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"},null,-1)];function aT(e,n){return t.openBlock(),t.createElementBlock("svg",rT,iT)}const lT={render:aT},sT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},cT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"},null,-1)];function dT(e,n){return t.openBlock(),t.createElementBlock("svg",sT,cT)}const uT={render:dT},fT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},pT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z"},null,-1)];function mT(e,n){return t.openBlock(),t.createElementBlock("svg",fT,pT)}const gT={render:mT},hT={name:"Controls",compatConfig:{MODE:3}},yT=t.defineComponent({...hT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Zf.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Re(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),g=t.toRef(()=>d.value.zoom>=u.value);function _(){l(),n("zoomIn")}function h(){s(),n("zoomOut")}function y(){c(e.fitViewParams),n("fitView")}function k(){a(!p.value),n("interactionChange",!p.value)}return(b,E)=>(t.openBlock(),t.createBlock(t.unref(MP),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(Sr,{class:"vue-flow__controls-zoomin",disabled:g.value,onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(QP))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(Sr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:h},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(oT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(Sr,{class:"vue-flow__controls-fitview",onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(lT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(Sr,{key:0,class:"vue-flow__controls-interactive",onClick:k},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(gT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(uT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),_T=["undo","redo","duplicate","cut","copy","paste"],em=()=>{};function bT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function wT(e){if(!(e.metaKey||e.ctrlKey))return;switch(e.key.toLowerCase()){case"z":return e.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const kT=He.createSharedComposable(()=>{const e=new Set;He.useEventListener("keydown",o=>{if(bT(o.target))return;const r=wT(o);if(r)for(const i of e){if(!t.toValue(i.enabled))continue;const a=i[r];if(a){if(o.defaultPrevented){t.warn(`[useHotkeys] event for "${r}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),a();return}}},{passive:!1});function n(o){if(!_T.some(i=>typeof o[i]=="function"))return em;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function tm(e={}){if(typeof window>"u")return em;const n=kT().subscribe(e);return t.onScopeDispose(n),n}const nm=44,CT=220,om=366,ET=1e3,NT=nm+parseFloat(ju),Zi=1,xT=0,ST=1,vT=2,AT=3,$o=parseInt(_1,10),vr="application/x-datakit+json",Ji={delete:["Delete"],undo:["Mod","Z"],redo:{mac:["Mod","Shift","Z"],windows:["Mod","Y"],linux:["Mod","Shift","Z"]},copy:["Mod","C"],paste:["Mod","V"],duplicate:["Mod","D"]},Nn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},IT=1600,PT=1.2,TT=0,OT=200,rm=Symbol("confirm-modal"),Bo="{key}",eo={"kong.client.consumer":{dataType:"object",writable:!1,readable:!0},"kong.client.consumer_groups":{dataType:"array",writable:!1,readable:!0},"kong.client.credential":{dataType:"object",writable:!1,readable:!0},"kong.client.get_identity_realm_source":{dataType:"object",writable:!1,readable:!0},"kong.client.forwarded_ip":{dataType:"string",writable:!1,readable:!0},"kong.client.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.client.ip":{dataType:"string",writable:!1,readable:!0},"kong.client.port":{dataType:"number",writable:!1,readable:!0},"kong.client.protocol":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_host":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.request.forwarded_scheme":{dataType:"string",writable:!1,readable:!0},"kong.request.port":{dataType:"number",writable:!1,readable:!0},"kong.response.source":{dataType:"string",writable:!1,readable:!0},"kong.router.route":{dataType:"object",writable:!1,readable:!0},"kong.route_id":{dataType:"string",writable:!1,readable:!0},"kong.route_name":{dataType:"string",writable:!1,readable:!0},"kong.router.service":{dataType:"object",writable:!1,readable:!0},"kong.service_name":{dataType:"string",writable:!1,readable:!0},"kong.service_id":{dataType:"string",writable:!1,readable:!0},"kong.service.response.status":{dataType:"number",writable:!1,readable:!0},"kong.version":{dataType:"string",writable:!1,readable:!0},"kong.node.id":{dataType:"string",writable:!1,readable:!0},"kong.configuration.{key}":{dataType:"any",writable:!1,readable:!0},"kong.service.target":{dataType:"string ({host}:{port})",writable:!0,readable:!1},"kong.service.request_scheme":{dataType:"string ({scheme})",writable:!0,readable:!1},"kong.ctx.plugin.{key}":{dataType:"any",writable:!0,readable:!0},"kong.ctx.shared.{key}":{dataType:"any",writable:!0,readable:!0}},Qi=Object.keys(eo).filter(e=>e.includes(Bo)).map(e=>e.replace(Bo,""));function ps(e){if(!e||!Ir(e))return;const n=Qi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Bo,"")}function Ar(e){if(!e)return null;const n=Qi.find(o=>e.startsWith(o));return n||e}function Ir(e){return e?Qi.some(n=>e.startsWith(n)):!1}function im(e){return e?Ir(e)?Ar(e)+Bo:e:null}function ms(e){var o;if(!e)return!1;const n=im(e);return n?((o=eo[n])==null?void 0:o.readable)??!1:!1}function gs(e){var o;if(!e)return!1;const n=im(e);return n?((o=eo[n])==null?void 0:o.writable)??!1:!1}function ea(e,n,o){const r=n?_n(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Pr(e,n){const o=n(e.source),r=n(e.target);return[ea(o,e.sourceField,"output"),ea(r,e.targetField,"input")]}function hs(e,n,o,r,i){const a=i(e),l=i(o);return[ea(a,n,"output"),ea(l,r,"input")]}function am(e){if(e.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:a,y:l,width:s,height:c}of e){if(![a,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const d=a+s,f=l+c;if(!Number.isFinite(d)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");a<n&&(n=a),l<o&&(o=l),d>r&&(r=d),f>i&&(i=f)}return{x:n,y:o,width:r-n,height:i-o}}function $T(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var BT="\0",to="\0",lm="";let VT=class{constructor(n){rt(this,"_isDirected",!0);rt(this,"_isMultigraph",!1);rt(this,"_isCompound",!1);rt(this,"_label");rt(this,"_defaultNodeLabelFn",()=>{});rt(this,"_defaultEdgeLabelFn",()=>{});rt(this,"_nodes",{});rt(this,"_in",{});rt(this,"_preds",{});rt(this,"_out",{});rt(this,"_sucs",{});rt(this,"_edgeObjs",{});rt(this,"_edgeLabels",{});rt(this,"_nodeCount",0);rt(this,"_edgeCount",0);rt(this,"_parent");rt(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[to]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,typeof n!="function"&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(o=>Object.keys(n._in[o]).length===0)}sinks(){var n=this;return this.nodes().filter(o=>Object.keys(n._out[o]).length===0)}setNodes(n,o){var r=arguments,i=this;return n.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(n,o){return Object.hasOwn(this._nodes,n)?(arguments.length>1&&(this._nodes[n]=o),this):(this._nodes[n]=arguments.length>1?o:this._defaultNodeLabelFn(n),this._isCompound&&(this._parent[n]=to,this._children[n]={},this._children[to][n]=!0),this._in[n]={},this._preds[n]={},this._out[n]={},this._sucs[n]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var o=this;if(Object.hasOwn(this._nodes,n)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(i){o.setParent(i)}),delete this._children[n]),Object.keys(this._in[n]).forEach(r),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(r),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(n,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=to;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===n)throw new Error("Setting "+o+" as parent of "+n+" would create a cycle");this.setNode(o)}return this.setNode(n),this._removeFromParentsChildList(n),this._parent[n]=o,this._children[o][n]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(n){if(this._isCompound){var o=this._parent[n];if(o!==to)return o}}children(n=to){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===to)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){n(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=Tr(this._isDirected,n,o,r);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(n),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(n,o,r);var c=RT(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,sm(this._preds[o],n),sm(this._sucs[n],o),this._in[o][s]=c,this._out[n][s]=c,this._edgeCount++,this}edge(n,o,r){var i=arguments.length===1?ys(this._isDirected,arguments[0]):Tr(this._isDirected,n,o,r);return this._edgeLabels[i]}edgeAsObj(){const n=this.edge(...arguments);return typeof n!="object"?{label:n}:n}hasEdge(n,o,r){var i=arguments.length===1?ys(this._isDirected,arguments[0]):Tr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?ys(this._isDirected,arguments[0]):Tr(this._isDirected,n,o,r),a=this._edgeObjs[i];return a&&(n=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],cm(this._preds[o],n),cm(this._sucs[n],o),delete this._in[o][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,o){var r=this._in[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(n,o){var r=this._out[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(n,o){var r=this.inEdges(n,o);if(r)return r.concat(this.outEdges(n,o))}};function sm(e,n){e[n]?e[n]++:e[n]=1}function cm(e,n){--e[n]||delete e[n]}function Tr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+lm+a+lm+(r===void 0?BT:r)}function RT(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}var s={v:i,w:a};return r&&(s.name=r),s}function ys(e,n){return Tr(e,n.v,n.w,n.name)}var _s=VT,DT="2.2.4",MT={Graph:_s,version:DT},LT=_s,FT={write:UT,read:GT};function UT(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:KT(e),edges:jT(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function KT(e){return e.nodes().map(function(n){var o=e.node(n),r=e.parent(n),i={v:n};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function jT(e){return e.edges().map(function(n){var o=e.edge(n),r={v:n.v,w:n.w};return n.name!==void 0&&(r.name=n.name),o!==void 0&&(r.value=o),r})}function GT(e){var n=new LT(e.options).setGraph(e.value);return e.nodes.forEach(function(o){n.setNode(o.v,o.value),o.parent&&n.setParent(o.v,o.parent)}),e.edges.forEach(function(o){n.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),n}var qT=zT;function zT(e){var n={},o=[],r;function i(a){Object.hasOwn(n,a)||(n[a]=!0,r.push(a),e.successors(a).forEach(i),e.predecessors(a).forEach(i))}return e.nodes().forEach(function(a){r=[],i(a),r.length&&o.push(r)}),o}var dm=class{constructor(){rt(this,"_arr",[]);rt(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},HT=dm,um=WT,YT=()=>1;function WT(e,n,o,r){return XT(e,String(n),o||YT,r||function(i){return e.outEdges(i)})}function XT(e,n,o,r){var i={},a=new HT,l,s,c=function(d){var f=d.v!==l?d.v:d.w,u=i[f],p=o(d),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+p);m<u.distance&&(u.distance=m,u.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(d){var f=d===n?0:Number.POSITIVE_INFINITY;i[d]={distance:f},a.add(d,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var ZT=um,JT=QT;function QT(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=ZT(e,i,n,o),r},{})}var fm=eO;function eO(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};if(o.push(l),e.successors(l).forEach(function(f){Object.hasOwn(r,f)?r[f].onStack&&(s.lowlink=Math.min(s.lowlink,r[f].index)):(a(f),s.lowlink=Math.min(s.lowlink,r[f].lowlink))}),s.lowlink===s.index){var c=[],d;do d=o.pop(),r[d].onStack=!1,c.push(d);while(l!==d);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var tO=fm,nO=oO;function oO(e){return tO(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var rO=aO,iO=()=>1;function aO(e,n,o){return lO(e,n||iO,o||function(r){return e.outEdges(r)})}function lO(e,n,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=n(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(d){var f=c[a],u=l[d],p=c[d],m=f.distance+u.distance;m<p.distance&&(p.distance=m,p.predecessor=u.predecessor)})})}),r}function pm(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new bs;Object.hasOwn(n,a)||(o[a]=!0,n[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(n).length!==e.nodeCount())throw new bs;return r}class bs extends Error{constructor(){super(...arguments)}}var mm=pm;pm.CycleException=bs;var gm=mm,sO=cO;function cO(e){try{gm(e)}catch(n){if(n instanceof gm.CycleException)return!1;throw n}return!0}var hm=dO;function dO(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?uO:fO,a=[],l={};return n.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function uO(e,n,o,r){for(var i=[[e,!1]];i.length>0;){var a=i.pop();a[1]?r.push(a[0]):Object.hasOwn(o,a[0])||(o[a[0]]=!0,i.push([a[0],!0]),ym(n(a[0]),l=>i.push([l,!1])))}}function fO(e,n,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),ym(n(a),l=>i.push(l)))}}function ym(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var pO=hm,mO=gO;function gO(e,n){return pO(e,n,"post")}var hO=hm,yO=_O;function _O(e,n){return hO(e,n,"pre")}var bO=_s,wO=dm,kO=CO;function CO(e,n){var o=new bO,r={},i=new wO,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=n(c);u<f&&(r[d]=a,i.decrease(d,u))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var EO={components:qT,dijkstra:um,dijkstraAll:JT,findCycles:nO,floydWarshall:rO,isAcyclic:sO,postorder:mO,preorder:yO,prim:kO,tarjan:fm,topsort:mm},_m=MT,Ft={Graph:_m.Graph,json:FT,alg:EO,version:_m.version};let NO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return bm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&bm(n),n._next=o._next,o._next._prev=n,o._next=n,n._prev=o}toString(){let n=[],o=this._sentinel,r=o._prev;for(;r!==o;)n.push(JSON.stringify(r,xO)),r=r._prev;return"["+n.join(", ")+"]"}};function bm(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function xO(e,n){if(e!=="_next"&&e!=="_prev")return n}var SO=NO;let vO=Ft.Graph,AO=SO;var IO=TO;let PO=()=>1;function TO(e,n){if(e.nodeCount()<=1)return[];let o=$O(e,n||PO);return OO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function OO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)ws(e,n,o,l);for(;l=i.dequeue();)ws(e,n,o,l);if(e.nodeCount()){for(let s=n.length-2;s>0;--s)if(l=n[s].dequeue(),l){r=r.concat(ws(e,n,o,l,!0));break}}}return r}function ws(e,n,o,r,i){let a=i?[]:void 0;return e.inEdges(r.v).forEach(l=>{let s=e.edge(l),c=e.node(l.v);i&&a.push({v:l.v,w:l.w}),c.out-=s,ks(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,ks(n,o,d)}),e.removeNode(r.v),a}function $O(e,n){let o=new vO,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,d=n(s),f=c+d;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=d),r=Math.max(r,o.node(s.w).in+=d)});let a=BO(i+r+3).map(()=>new AO),l=r+1;return o.nodes().forEach(s=>{ks(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function ks(e,n,o){o.out?o.in?e[o.out-o.in+n].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function BO(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let wm=Ft.Graph;var nt={addBorderNode:jO,addDummyNode:km,applyWithChunking:ta,asNonCompoundGraph:RO,buildLayerMatrix:FO,intersectRect:LO,mapValues:XO,maxRank:Em,normalizeRanks:UO,notime:HO,partition:qO,pick:WO,predecessorWeights:MO,range:xm,removeEmptyRanks:KO,simplify:VO,successorWeights:DO,time:zO,uniqueId:Nm,zipObject:Cs};function km(e,n,o,r){for(var i=r;e.hasNode(i);)i=Nm(r);return o.dummy=n,e.setNode(i,o),i}function VO(e){let n=new wm().setGraph(e.graph());return e.nodes().forEach(o=>n.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=n.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);n.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),n}function RO(e){let n=new wm({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||n.setNode(o,e.node(o))}),e.edges().forEach(o=>{n.setEdge(o,e.edge(o))}),n}function DO(e){let n=e.nodes().map(o=>{let r={};return e.outEdges(o).forEach(i=>{r[i.w]=(r[i.w]||0)+e.edge(i).weight}),r});return Cs(e.nodes(),n)}function MO(e){let n=e.nodes().map(o=>{let r={};return e.inEdges(o).forEach(i=>{r[i.v]=(r[i.v]||0)+e.edge(i).weight}),r});return Cs(e.nodes(),n)}function LO(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,d;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,d=s):(i<0&&(l=-l),c=l,d=l*a/i),{x:o+c,y:r+d}}function FO(e){let n=xm(Em(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(n[i][r.order]=o)}),n}function UO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ta(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function KO(e){let n=e.nodes().map(l=>e.node(l).rank),o=ta(Math.min,n),r=[];e.nodes().forEach(l=>{let s=e.node(l).rank-o;r[s]||(r[s]=[]),r[s].push(l)});let i=0,a=e.graph().nodeRankFactor;Array.from(r).forEach((l,s)=>{l===void 0&&s%a!==0?--i:l!==void 0&&i&&l.forEach(c=>e.node(c).rank+=i)})}function jO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),km(e,"border",i,n)}function GO(e,n=Cm){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const Cm=65535;function ta(e,n){if(n.length>Cm){const o=GO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Em(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ta(Math.max,o)}function qO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function zO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function HO(e,n){return n()}let YO=0;function Nm(e){var n=++YO;return e+(""+n)}function xm(e,n,o=1){n==null&&(n=e,e=0);let r=a=>a<n;o<0&&(r=a=>n<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function WO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function XO(e,n){let o=n;return typeof n=="string"&&(o=r=>r[n]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function Cs(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let ZO=IO,JO=nt.uniqueId;var QO={run:e$,undo:n$};function e$(e){(e.graph().acyclicer==="greedy"?ZO(e,o(e)):t$(e)).forEach(r=>{let i=e.edge(r);e.removeEdge(r),i.forwardName=r.name,i.reversed=!0,e.setEdge(r.w,r.v,i,JO("rev"))});function o(r){return i=>r.edge(i).weight}}function t$(e){let n=[],o={},r={};function i(a){Object.hasOwn(r,a)||(r[a]=!0,o[a]=!0,e.outEdges(a).forEach(l=>{Object.hasOwn(o,l.w)?n.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),n}function n$(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.reversed){e.removeEdge(n);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(n.w,n.v,o,r)}})}let o$=nt;var r$={run:i$,undo:l$};function i$(e){e.graph().dummyChains=[],e.edges().forEach(n=>a$(e,n))}function a$(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},d=o$.addDummyNode(e,"edge",f,"_d"),r===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),e.setEdge(o,d,{weight:s.weight},l),u===0&&e.graph().dummyChains.push(d),o=d;e.setEdge(o,i,{weight:s.weight},l)}function l$(e){e.graph().dummyChains.forEach(n=>{let o=e.node(n),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(n)[0],e.removeNode(n),r.points.push({x:o.x,y:o.y}),o.dummy==="edge-label"&&(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height),n=i,o=e.node(n)})}const{applyWithChunking:s$}=nt;var na={longestPath:c$,slack:d$};function c$(e){var n={};function o(r){var i=e.node(r);if(Object.hasOwn(n,r))return i.rank;n[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=s$(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function d$(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var u$=Ft.Graph,oa=na.slack,Sm=f$;function f$(e){var n=new u$({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;p$(n,e)<r;)i=m$(n,e),a=n.hasNode(i.v)?oa(e,i):-oa(e,i),g$(n,e,a);return n}function p$(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!oa(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function m$(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=oa(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function g$(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var h$=Sm,vm=na.slack,y$=na.longestPath,_$=Ft.alg.preorder,b$=Ft.alg.postorder,w$=nt.simplify,k$=no;no.initLowLimValues=Ns,no.initCutValues=Es,no.calcCutValue=Am,no.leaveEdge=Pm,no.enterEdge=Tm,no.exchangeEdges=Om;function no(e){e=w$(e),y$(e);var n=h$(e);Ns(n),Es(n,e);for(var o,r;o=Pm(n);)r=Tm(n,e,o),Om(n,e,o,r)}function Es(e,n){var o=b$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>C$(e,n,r))}function C$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=Am(e,n,o)}function Am(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=n.edge(c).weight;if(s+=u?p:-p,N$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function Ns(e,n){arguments.length<2&&(n=e.nodes()[0]),Im(e,{},1,n)}function Im(e,n,o,r,i){var a=o,l=e.node(r);return n[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(n,s)||(o=Im(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function Pm(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function Tm(e,n,o){var r=o.v,i=o.w;n.hasEdge(r,i)||(r=o.w,i=o.v);var a=e.node(r),l=e.node(i),s=a,c=!1;a.lim>l.lim&&(s=l,c=!0);var d=n.edges().filter(f=>c===$m(e,e.node(f.v),s)&&c!==$m(e,e.node(f.w),s));return d.reduce((f,u)=>vm(n,u)<vm(n,f)?u:f)}function Om(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),Ns(e),Es(e,n),E$(e,n)}function E$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=_$(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=n.edge(i,a),s=!1;l||(l=n.edge(a,i),s=!0),n.node(i).rank=n.node(a).rank+(s?l.minlen:-l.minlen)})}function N$(e,n,o){return e.hasEdge(n,o)}function $m(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var x$=na,Bm=x$.longestPath,S$=Sm,v$=k$,A$=I$;function I$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":Vm(e);break;case"tight-tree":T$(e);break;case"longest-path":P$(e);break;case"none":break;default:Vm(e)}}var P$=Bm;function T$(e){Bm(e),S$(e)}function Vm(e){v$(e)}var O$=$$;function $$(e){let n=V$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=B$(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,d=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(d=l[c])!==s&&e.node(d).maxRank<r.rank;)c++;d===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(d=l[c+1]).minRank<=r.rank;)c++;d=l[c]}e.setParent(o,d),o=e.successors(o)[0]}})}function B$(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function V$(e){let n={},o=0;function r(i){let a=o;e.children(i).forEach(r),n[i]={low:a,lim:o++}}return e.children().forEach(r),n}let ra=nt;var R$={run:D$,cleanup:F$};function D$(e){let n=ra.addDummyNode(e,"root",{},"_root"),o=M$(e),r=Object.values(o),i=ra.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=L$(e)+1;e.children().forEach(s=>Rm(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Rm(e,n,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==n&&e.setEdge(n,l,{weight:0,minlen:o});return}let c=ra.addBorderNode(e,"_bt"),d=ra.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Rm(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,g=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,h=m!==g?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:h,nestingEdge:!0}),e.setEdge(g,d,{weight:_,minlen:h,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function M$(e){var n={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),n[r]=i}return e.children().forEach(r=>o(r,1)),n}function L$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function F$(e){var n=e.graph();e.removeNode(n.nestingRoot),delete n.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let U$=nt;var K$=j$;function j$(e){function n(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(n),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)Dm(e,"borderLeft","_bl",o,i,a),Dm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Dm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=U$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var G$={adjust:q$,undo:z$};function q$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Mm(e)}function z$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&H$(e),(n==="lr"||n==="rl")&&(Y$(e),Mm(e))}function Mm(e){e.nodes().forEach(n=>Lm(e.node(n))),e.edges().forEach(n=>Lm(e.edge(n)))}function Lm(e){let n=e.width;e.width=e.height,e.height=n}function H$(e){e.nodes().forEach(n=>xs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(xs),Object.hasOwn(o,"y")&&xs(o)})}function xs(e){e.y=-e.y}function Y$(e){e.nodes().forEach(n=>Ss(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Ss),Object.hasOwn(o,"x")&&Ss(o)})}function Ss(e){let n=e.x;e.x=e.y,e.y=n}let Fm=nt;var W$=X$;function X$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Fm.applyWithChunking(Math.max,r),a=Fm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let d=e.node(c);a[d.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,d)=>e.node(c).rank-e.node(d).rank).forEach(l),a}let Z$=nt.zipObject;var J$=Q$;function Q$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=eB(e,n[r-1],n[r]);return o}function eB(e,n,o){let r=Z$(o,o.map((d,f)=>f)),i=n.flatMap(d=>e.outEdges(d).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,u)=>f.pos-u.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(d=>{let f=d.pos+a;s[f]+=d.weight;let u=0;for(;f>0;)f%2&&(u+=s[f+1]),f=f-1>>1,s[f]+=d.weight;c+=d.weight*u}),c}var tB=nB;function nB(e,n=[]){return n.map(o=>{let r=e.inEdges(o);if(r.length){let i=r.reduce((a,l)=>{let s=e.edge(l),c=e.node(l.v);return{sum:a.sum+s.weight*c.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:o,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:o}})}let oB=nt;var rB=iB;function iB(e,n){let o={};e.forEach((i,a)=>{let l=o[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(l.barycenter=i.barycenter,l.weight=i.weight)}),n.edges().forEach(i=>{let a=o[i.v],l=o[i.w];a!==void 0&&l!==void 0&&(l.indegree++,a.out.push(o[i.w]))});let r=Object.values(o).filter(i=>!i.indegree);return aB(r)}function aB(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&lB(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();n.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return n.filter(i=>!i.merged).map(i=>oB.pick(i,["vs","i","barycenter","weight"]))}function lB(e,n){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),n.weight&&(o+=n.barycenter*n.weight,r+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}let sB=nt;var cB=dB;function dB(e,n){let o=sB.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,u)=>u.i-f.i),a=[],l=0,s=0,c=0;r.sort(uB(!!n)),c=Um(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Um(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Um(e,n,o){let r;for(;n.length&&(r=n[n.length-1]).i<=o;)n.pop(),e.push(r.vs),o++;return o}function uB(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let fB=tB,pB=rB,mB=cB;var gB=Km;function Km(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=fB(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Km(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&yB(p,m)}});let f=pB(d,o);hB(f,c);let u=mB(f,r);if(l&&(u.vs=[l,u.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(u,"barycenter")||(u.barycenter=0,u.weight=0),u.barycenter=(u.barycenter*u.weight+p.order+m.order)/(u.weight+2),u.weight+=2}return u}function hB(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function yB(e,n){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+n.barycenter*n.weight)/(e.weight+n.weight),e.weight+=n.weight):(e.barycenter=n.barycenter,e.weight=n.weight)}let _B=Ft.Graph,bB=nt;var wB=kB;function kB(e,n,o,r){r||(r=e.nodes());let i=CB(e),a=new _B({compound:!0}).setGraph({root:i}).setDefaultNodeLabel(l=>e.node(l));return r.forEach(l=>{let s=e.node(l),c=e.parent(l);(s.rank===n||s.minRank<=n&&n<=s.maxRank)&&(a.setNode(l),a.setParent(l,c||i),e[o](l).forEach(d=>{let f=d.v===l?d.w:d.v,u=a.edge(f,l),p=u!==void 0?u.weight:0;a.setEdge(f,l,{weight:e.edge(d).weight+p})}),Object.hasOwn(s,"minRank")&&a.setNode(l,{borderLeft:s.borderLeft[n],borderRight:s.borderRight[n]}))}),a}function CB(e){for(var n;e.hasNode(n=bB.uniqueId("_root")););return n}var EB=NB;function NB(e,n,o){let r={},i;o.forEach(a=>{let l=e.parent(a),s,c;for(;l;){if(s=e.parent(l),s?(c=r[s],r[s]=l):(c=i,i=l),c&&c!==l){n.setEdge(c,l);return}l=s}})}let xB=W$,SB=J$,vB=gB,AB=wB,IB=EB,PB=Ft.Graph,ia=nt;var TB=jm;function jm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,jm);return}let o=ia.maxRank(e),r=Gm(e,ia.range(1,o+1),"inEdges"),i=Gm(e,ia.range(o-1,-1,-1),"outEdges"),a=xB(e);if(qm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){OB(c%2?r:i,c%4>=2),a=ia.buildLayerMatrix(e);let f=SB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}qm(e,s)}function Gm(e,n,o){const r=new Map,i=(a,l)=>{r.has(a)||r.set(a,[]),r.get(a).push(l)};for(const a of e.nodes()){const l=e.node(a);if(typeof l.rank=="number"&&i(l.rank,a),typeof l.minRank=="number"&&typeof l.maxRank=="number")for(let s=l.minRank;s<=l.maxRank;s++)s!==l.rank&&i(s,a)}return n.map(function(a){return AB(e,a,o,r.get(a)||[])})}function OB(e,n){let o=new PB;e.forEach(function(r){let i=r.graph().root,a=vB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),IB(r,o,a.vs)})}function qm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let $B=Ft.Graph,cn=nt;var BB={positionX:qB};function VB(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,d=a[a.length-1];return a.forEach((f,u)=>{let p=DB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(g=>{e.predecessors(g).forEach(_=>{let h=e.node(_),y=h.order;(y<l||m<y)&&!(h.dummy&&e.node(g).dummy)&&zm(o,_,g)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function RB(e,n){let o={};function r(a,l,s,c,d){let f;cn.range(l,s).forEach(u=>{f=a[u],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>d)&&zm(o,p,f)})})}function i(a,l){let s=-1,c,d=0;return l.forEach((f,u)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,d,u,s,c),d=u,s=c)}r(l,d,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function DB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function zm(e,n,o){if(n>o){let i=n;n=o,o=i}let r=e[n];r||(e[n]=r={}),r[o]=!0}function MB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function LB(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let g=f[p];a[d]===d&&c<l[g]&&!MB(o,d,g)&&(a[g]=d,a[d]=i[d]=i[g],c=l[g])}}})}),{root:i,align:a}}function FB(e,n,o,r,i){let a={},l=UB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),g=m.pop(),_={};for(;g;)_[g]?u(g):(_[g]=!0,m.push(g),m=m.concat(p(g))),g=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((g,_)=>Math.min(g,a[_.w]-l.edge(_)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function UB(e,n,o,r){let i=new $B,a=e.graph(),l=zB(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(d=>{let f=o[d];if(i.setNode(f),c){var u=o[c],p=i.edge(u,f);i.setEdge(u,f,Math.max(l(e,d,c),p||0))}c=d})}),i}function KB(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=HB(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function jB(e,n){let o=Object.values(n),r=cn.applyWithChunking(Math.min,o),i=cn.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-cn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-cn.applyWithChunking(Math.max,d)),f&&(e[s]=cn.mapValues(c,u=>u+f))})})}function GB(e,n){return cn.mapValues(e.ul,(o,r)=>{if(n)return e[n.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function qB(e){let n=cn.buildLayerMatrix(e),o=Object.assign(VB(e,n),RB(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(u=>Object.values(u).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),d=LB(e,i,o,c),f=FB(e,i,d.root,d.align,s==="r");s==="r"&&(f=cn.mapValues(f,u=>-u)),r[l+s]=f})});let a=KB(e,r);return jB(r,a),GB(r,e.graph().align)}function zB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?n:e)/2,c+=(s.dummy?n:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function HB(e,n){return e.node(n).width}let Hm=nt,YB=BB.positionX;var WB=XB;function XB(e){e=Hm.asNonCompoundGraph(e),ZB(e),Object.entries(YB(e)).forEach(([n,o])=>e.node(n).x=o)}function ZB(e){let n=Hm.buildLayerMatrix(e),o=e.graph().ranksep,r=0;n.forEach(i=>{const a=i.reduce((l,s)=>{const c=e.node(s).height;return l>c?l:c},0);i.forEach(l=>e.node(l).y=r+a/2),r+=a+o})}let Ym=QO,Wm=r$,JB=A$,QB=nt.normalizeRanks,eV=O$,tV=nt.removeEmptyRanks,Xm=R$,nV=K$,Zm=G$,oV=TB,rV=WB,$t=nt,iV=Ft.Graph;var aV=lV;function lV(e,n){let o=n&&n.debugTiming?$t.time:$t.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>yV(e));o(" runLayout",()=>sV(r,o,n)),o(" updateInputGraph",()=>cV(e,r))})}function sV(e,n,o){n(" makeSpaceForEdgeLabels",()=>_V(e)),n(" removeSelfEdges",()=>vV(e)),n(" acyclic",()=>Ym.run(e)),n(" nestingGraph.run",()=>Xm.run(e)),n(" rank",()=>JB($t.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>bV(e)),n(" removeEmptyRanks",()=>tV(e)),n(" nestingGraph.cleanup",()=>Xm.cleanup(e)),n(" normalizeRanks",()=>QB(e)),n(" assignRankMinMax",()=>wV(e)),n(" removeEdgeLabelProxies",()=>kV(e)),n(" normalize.run",()=>Wm.run(e)),n(" parentDummyChains",()=>eV(e)),n(" addBorderSegments",()=>nV(e)),n(" order",()=>oV(e,o)),n(" insertSelfEdges",()=>AV(e)),n(" adjustCoordinateSystem",()=>Zm.adjust(e)),n(" position",()=>rV(e)),n(" positionSelfEdges",()=>IV(e)),n(" removeBorderNodes",()=>SV(e)),n(" normalize.undo",()=>Wm.undo(e)),n(" fixupEdgeLabelCoords",()=>NV(e)),n(" undoCoordinateSystem",()=>Zm.undo(e)),n(" translateGraph",()=>CV(e)),n(" assignNodeIntersects",()=>EV(e)),n(" reversePoints",()=>xV(e)),n(" acyclic.undo",()=>Ym.undo(e))}function cV(e,n){e.nodes().forEach(o=>{let r=e.node(o),i=n.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,n.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=n.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=n.graph().width,e.graph().height=n.graph().height}let dV=["nodesep","edgesep","ranksep","marginx","marginy"],uV={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},fV=["acyclicer","ranker","rankdir","align"],pV=["width","height","rank"],Jm={width:0,height:0},mV=["minlen","weight","width","height","labeloffset"],gV={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},hV=["labelpos"];function yV(e){let n=new iV({multigraph:!0,compound:!0}),o=As(e.graph());return n.setGraph(Object.assign({},uV,vs(o,dV),$t.pick(o,fV))),e.nodes().forEach(r=>{let i=As(e.node(r));const a=vs(i,pV);Object.keys(Jm).forEach(l=>{a[l]===void 0&&(a[l]=Jm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=As(e.edge(r));n.setEdge(r,Object.assign({},gV,vs(i,mV),$t.pick(i,hV)))}),n}function _V(e){let n=e.graph();n.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function bV(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.width&&o.height){let r=e.node(n.v),a={rank:(e.node(n.w).rank-r.rank)/2+r.rank,e:n};$t.addDummyNode(e,"edge-proxy",a,"_ep")}})}function wV(e){let n=0;e.nodes().forEach(o=>{let r=e.node(o);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,n=Math.max(n,r.maxRank))}),e.graph().maxRank=n}function kV(e){e.nodes().forEach(n=>{let o=e.node(n);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(n))})}function CV(e){let n=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(d){let f=d.x,u=d.y,p=d.width,m=d.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,u-m/2),i=Math.max(i,u+m/2)}e.nodes().forEach(d=>c(e.node(d))),e.edges().forEach(d=>{let f=e.edge(d);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=n,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=n,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function EV(e){e.edges().forEach(n=>{let o=e.edge(n),r=e.node(n.v),i=e.node(n.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift($t.intersectRect(r,a)),o.points.push($t.intersectRect(i,l))})}function NV(e){e.edges().forEach(n=>{let o=e.edge(n);if(Object.hasOwn(o,"x"))switch((o.labelpos==="l"||o.labelpos==="r")&&(o.width-=o.labeloffset),o.labelpos){case"l":o.x-=o.width/2+o.labeloffset;break;case"r":o.x+=o.width/2+o.labeloffset;break}})}function xV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function SV(e){e.nodes().forEach(n=>{if(e.children(n).length){let o=e.node(n),r=e.node(o.borderTop),i=e.node(o.borderBottom),a=e.node(o.borderLeft[o.borderLeft.length-1]),l=e.node(o.borderRight[o.borderRight.length-1]);o.width=Math.abs(l.x-a.x),o.height=Math.abs(i.y-r.y),o.x=a.x+o.width/2,o.y=r.y+o.height/2}}),e.nodes().forEach(n=>{e.node(n).dummy==="border"&&e.removeNode(n)})}function vV(e){e.edges().forEach(n=>{if(n.v===n.w){var o=e.node(n.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:n,label:e.edge(n)}),e.removeEdge(n)}})}function AV(e){var n=$t.buildLayerMatrix(e);n.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{$t.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function IV(e){e.nodes().forEach(n=>{var o=e.node(n);if(o.dummy==="selfedge"){var r=e.node(o.e.v),i=r.x+r.width/2,a=r.y,l=o.x-i,s=r.height/2;e.setEdge(o.e,o.label),e.removeNode(n),o.label.points=[{x:i+2*l/3,y:a-s},{x:i+5*l/6,y:a-s},{x:i+l,y:a},{x:i+5*l/6,y:a+s},{x:i+2*l/3,y:a+s}],o.label.x=o.x,o.label.y=o.y}})}function vs(e,n){return $t.mapValues($t.pick(e,n),Number)}function As(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let PV=nt,TV=Ft.Graph;var OV={debugOrdering:$V};function $V(e){let n=PV.buildLayerMatrix(e),o=new TV({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(r=>{o.setNode(r,{label:r}),o.setParent(r,"layer"+e.node(r).rank)}),e.edges().forEach(r=>o.setEdge(r.v,r.w,{},r.name)),n.forEach((r,i)=>{let a="layer"+i;o.setNode(a,{rank:"same"}),r.reduce((l,s)=>(o.setEdge(l,s,{style:"invis"}),s))}),o}var BV="1.1.8",VV={graphlib:Ft,layout:aV,debug:OV,util:{time:nt.time,notime:nt.notime},version:BV};const Qm=$T(VV);function RV(e){const{branchLayout:n,phase:o,layoutOptions:r,nodes:i,edges:a}=e,{findNode:l}=Re(),{state:s,branchGroups:c,getNodeById:d,moveNode:f,commit:u}=Ye(),{getNodeDepth:p,isGroupId:m,groupsByOwner:g}=c,{isBranchEdgeId:_,updateGroupLayout:h,translateGroupTree:y,waitForLayoutFlush:k}=n,{viewport:b,padding:E=Nn.padding,gaps:N=Nn.gaps}=r,{nodes:C=Nn.gaps.nodes,edges:x=Nn.gaps.edges,ranks:P=Nn.gaps.ranks}=N;async function A(w=!0){const F=new Map(i.value.map(K=>[K.id,K.data])),S=new Map,M=new Map,O=K=>{if(!K)return;let q=M.get(K);return q||(q=l(K),q&&M.set(K,q),q)},j=new Map,W=K=>{let q=j.get(K);return q!==void 0||(q=p(K),j.set(K,q)),q},L=K=>{if(!rr(K.data))return K.parentNode;const q=O(K.data.ownerId);if(!q)throw new Error(`Cannot find owner node '${K.data.ownerId}' for group node '${K.id}' via findNode`);return q.parentNode};for(const K of a.value){if(_(K.id))continue;const q=K.source,ne=K.target;if(m(q)||m(ne))continue;const me=O(q),ye=O(ne);if(me){if(!ye)throw new Error(`Cannot find target node '${ne}' for edge '${K.id}' via findNode`)}else throw new Error(`Cannot find source node '${q}' for edge '${K.id}' via findNode`);if(L(me)===L(ye))continue;let ie=me,oe=ye,le=W(ie.id),de=W(oe.id);for(;le!==de;)if(le>de){const $=L(ie);if(!$)throw new Error(`Expected node '${ie.id}' to have parent, but it does not`);const I=O($);if(!I)throw new Error(`Cannot find parent node '${$}' for node '${ie.id}' via findNode`);ie=I,le--}else if(de>le){const $=L(oe);if(!$)throw new Error(`Expected node '${oe.id}' to have parent, but it does not`);const I=O($);if(!I)throw new Error(`Cannot find parent node '${$}' for node '${oe.id}' via findNode`);oe=I,de--}for(;le>=0;){const $=L(ie),I=L(oe);if($===I){S.has(le)||S.set(le,[]),S.get(le).push({v:ie.id,w:oe.id});break}if($){if(!I){const ee=`Expected node '${oe.id}' to have parent, but it does not`;throw console.error(ee,oe),new Error(ee)}}else{const ee=`Expected node '${ie.id}' to have parent, but it does not`;throw console.error(ee,ie),new Error(ee)}const D=O($),R=O(I);if(D){if(!R)throw new Error(`Cannot find parent node '${I}' for node '${oe.id}' via findNode`)}else throw new Error(`Cannot find parent node '${$}' for node '${ie.id}' via findNode`);ie=D,oe=R,le--,de--}}const U=s.value.groups.toSorted((K,q)=>W(q.ownerId)-W(K.ownerId));for(const K of U)B(K.memberIds.reduce((q,ne)=>{const me=d(ne);if(!me)return console.warn(`Cannot find node '${ne}' of group '${K.id}' by getNodeById`),q;if(me.phase!==o)return q;if(me.type==="branch"){const ye=g.value.get(me.id);ye&&q.push(...ye)}return F.delete(me.id),q.push(me),q},[]),{virtualEdges:S.get(W(K.ownerId)),cachedFindNode:O}),await t.nextTick(),h(K.id,!1),await k();const T=F.values().toArray();for(const K of T){if(rr(K)||K.type!=="branch")continue;const q=g.value.get(K.id);q&&T.push(...q)}const{autoNodes:V,leftNode:G,rightNode:se}=v(T);B(V,{leftNode:G,rightNode:se,virtualEdges:S.get(0),cachedFindNode:O}),w&&u()}function B(w,F){var ie,oe,le,de,$;const{leftNode:S,rightNode:M,virtualEdges:O,cachedFindNode:j}=F||{},W=S?(j??l)(S.id):void 0,L=M?(j??l)(M.id):void 0;let U;if(w.length>0){U=new Qm.graphlib.Graph({multigraph:!0}),U.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:C,edgesep:x,ranksep:P});const I=new Set;for(const D of w){const R=(j??l)(D.id);if(!R){console.warn(`Cannot find graph node '${D.id}' in ${o} phase`);continue}I.add(D.id),rr(D)?U.setNode(D.id,D.dimensions??R.dimensions):U.setNode(D.id,R.dimensions)}for(const D of a.value)!I.has(D.source)||!I.has(D.target)||U.setEdge(D.source,D.target,{points:[]});O==null||O.forEach(D=>U.setEdge(D,{points:[]})),Qm.layout(U)}const T=[],V=I=>({x:I.x-I.width/2,y:I.y-I.height/2,width:I.width,height:I.height});if(w.length>0){if(!U)throw new Error("Expected dagreGraph to be initialized");for(const I of w){const D=U.node(I.id),R=V(D);T.push(R),rr(I)?y(I.id,R,R.x+$o,R.y+$o):f(I.id,{x:R.x,y:R.y},!1)}}const G=T.length>0?am(T):{x:0,y:0,width:0,height:0},se=G.width,K=G.height,q=G.x,ne=G.x+G.width,me=Math.max(0,Math.min(t.toValue(b==null?void 0:b.width)??Number.POSITIVE_INFINITY,IT)-se-2*C-(((ie=W==null?void 0:W.dimensions)==null?void 0:ie.width)??0)-(((oe=L==null?void 0:L.dimensions)==null?void 0:oe.width)??0)-2*E),ye=G.y+K/2;S&&f(S.id,{x:q-C-me/2-(((le=W==null?void 0:W.dimensions)==null?void 0:le.width)??0),y:ye-(((de=W==null?void 0:W.dimensions)==null?void 0:de.height)??0)/2},!1),M&&f(M.id,{x:ne+C+me/2,y:ye-((($=L==null?void 0:L.dimensions)==null?void 0:$.height)??0)/2},!1)}function v(w){let F,S;const M=[];for(const O of w){if(rr(O)){M.push(O);continue}switch(O.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(F)throw new Error("Duplicated request node in request phase");F=O;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(S)throw new Error("Duplicated service_request node in request phase");S=O;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(S)throw new Error("Duplicated service_response node in response phase");S=O;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(F)throw new Error("Duplicated response node in response phase");F=O;break}default:{M.push(O);break}}}return{autoNodes:M,leftNode:F,rightNode:S}}return{autoLayout:A}}function DV({phase:e,groupMapById:n,getNodeDepth:o,canAddMember:r,draggingId:i}){const a=t.shallowRef(),l=t.shallowRef();function s(u){a.value=u,l.value=void 0}function c(){a.value&&(a.value=void 0,l.value=void 0)}function d(u){let p;const m=i==null?void 0:i.value;return n.value.forEach(g=>{if(g.phase!==e||m&&xl(m)&&!r(g.ownerId,g.branch,m))return;const _=g.position,h=g.dimensions;if(!_||!h||!(u.x>=_.x&&u.x<=_.x+h.width&&u.y>=_.y&&u.y<=_.y+h.height))return;const k=o(g.ownerId);(!p||k>p.depth)&&(p={depth:k,id:g.id})}),p==null?void 0:p.id}function f(u){if(!a.value){l.value=void 0;return}if(!u){l.value=void 0;return}l.value=d(u)}return{activeGroupId:l,start:s,updateActiveGroup:f,end:c}}function MV({phase:e,readonly:n,flowId:o,draggingId:r}){const{findNode:i}=Re(o),a=Ye(),{state:l,groupMapById:s,getNodeById:c,moveNode:d,moveGroup:f,setGroupLayout:u,commit:p,branchGroups:m}=a,{memberGroupMap:g,groupsByOwner:_,getNodeDepth:h,getGroupDepth:y}=m,k=L=>!!L&&L.startsWith("branch:");function b(L){const U=[];for(const T of L.memberIds){const V=c(T);V&&U.push(V)}return U}const E=t.computed(()=>{const L=new Map;return g.value.forEach((U,T)=>{if(U.phase!==e||!U.position)return;const V=c(T);V&&(V.phase!==e||V.hidden||L.set(T,U))}),L}),N=t.computed(()=>{const L=new Map;return _.value.forEach((U,T)=>{const V=U.filter(G=>G.phase===e);V.length>0&&L.set(T,V)}),L}),C=t.computed(()=>{const L=[];for(const U of l.value.groups){const T=c(U.ownerId);if(!T||T.phase!==e)continue;const V=U.position,G=U.dimensions;if(!V||!G)continue;const se=b(U).filter(q=>q.phase===e&&!q.hidden),K=y(U.id);L.push({id:U.id,type:"group",position:V,width:G.width,height:G.height,data:{...U,memberIds:se.map(q=>q.id)},draggable:!n,selectable:!1,zIndex:K*Zi+xT})}return L}),x=t.computed(()=>{let L=0;for(const U of l.value.groups){if(U.phase!==e)continue;const T=y(U.id);T>L&&(L=T)}return L}),P=t.computed(()=>{const L=[];for(const U of l.value.groups){if(U.phase!==e||!U.position||!U.dimensions)continue;const T=c(U.ownerId);if(!T||T.phase!==e||T.hidden||!b(U).filter(K=>K.phase===e&&!K.hidden).length)continue;const G=Math.max(h(T.id),y(U.id))+x.value+1,se={id:`branch:${U.id}`,source:T.id,target:U.id,sourceHandle:`branch@${U.branch}`,targetHandle:"input",markerEnd:_r.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:T.id,branch:U.branch,groupId:U.id},zIndex:G*Zi+vT};L.push(se)}return L}),A=new Map,B=new Map;let v;function w(L,U=!0){if(L.phase!==e)return;const T=b(L).filter(q=>q.phase===e&&!q.hidden);if(!T.length)return;const V=[];for(const q of T){const ne=i(q.id),me=ne==null?void 0:ne.dimensions,ye=(me==null?void 0:me.width)??0,ie=(me==null?void 0:me.height)??0;if(ye<=0||ie<=0)return;V.push({...q.position,width:ye,height:ie});const oe=_.value.get(q.id)??[];for(const le of oe){if(le.phase!==e)continue;const de=A.get(le.id),$=(de==null?void 0:de.position)??le.position,I=(de==null?void 0:de.dimensions)??le.dimensions;!$||!I||V.push({x:$.x,y:$.y,width:I.width,height:I.height})}}const G=am(V),se=G.width+$o*2,K=G.height+$o*2;return{position:{x:Math.round(G.x-$o),y:Math.round(G.y-$o)},dimensions:{width:Math.round(se),height:Math.round(K)},commit:U}}function F(){if(A.size===0){v=void 0;return}const L=[];let U=!1;A.forEach((T,V)=>{const G=u(V,T,!1);L.push({id:V,changed:G,commit:T.commit}),T.commit&&G&&!U&&(U=!0)}),A.clear(),v=void 0;for(const{id:T,changed:V,commit:G}of L){if(!V)continue;const se=s.value.get(T);if(!se)continue;const K=E.value.get(se.ownerId);K&&B.set(K.id,{commit:G})}if(B.size>0){const T=Array.from(B);B.clear();for(const[V,{commit:G}]of T)M(V,G)}U&&p("*")}function S(){A.size!==0&&(v||(v=t.nextTick().then(F)))}function M(L,U=!0){const T=s.value.get(L);if(!T)return;const V=w(T,U);V&&(A.set(L,V),S())}function O(L,U,T,V){const G=s.value.get(L);if(!G)return;if(!G.position){f(L,U,!1),M(L);return}if(T===0&&V===0){f(L,U,!1);return}f(L,U,!1);const se=[L],K=new Set([L]),q=new Set;for(;se.length;){const ne=se.shift(),me=s.value.get(ne);if(!me)continue;const ye=b(me).filter(ie=>ie.phase===e&&!ie.hidden);for(const ie of ye){q.has(ie.id)||(d(ie.id,{x:ie.position.x+T,y:ie.position.y+V},!1),q.add(ie.id));const oe=N.value.get(ie.id)??[];for(const le of oe){if(K.has(le.id))continue;const de=s.value.get(le.id);de!=null&&de.position&&f(le.id,{x:de.position.x+T,y:de.position.y+V},!1),K.add(le.id),se.push(le.id)}}}}function j(L,U){const T=r==null?void 0:r.value;if(!T)return!1;if(T===L||U.some(V=>T===V))return!0;for(const V of U){const G=N.value.get(V)??[];if(G!=null&&G.some(se=>se.id===T))return!0}return!1}const W=new Map;return t.watch(()=>l.value.groups.filter(U=>U.phase===e).map(U=>{const T=U.memberIds.map(V=>{var q,ne;const G=i(V),se=Math.round(((q=G==null?void 0:G.dimensions)==null?void 0:q.width)??0),K=Math.round(((ne=G==null?void 0:G.dimensions)==null?void 0:ne.height)??0);return`${V}:${se}x${K}`});return{id:U.id,memberIds:U.memberIds,signature:T.join(",")}}),L=>{const U=new Set(L.map(T=>T.id));for(const T of W.keys())U.has(T)||W.delete(T);for(const T of L)j(T.id,T.memberIds)||W.get(T.id)===T.signature||(W.set(T.id,T.signature),M(T.id))},{deep:!0,flush:"post"}),{groupsByOwner:N,memberGroupMap:E,groupNodes:C,branchEdges:P,isBranchEdgeId:k,updateGroupLayout:M,translateGroupTree:O,getNodeDepth:h,maxGroupDepth:x,waitForLayoutFlush:()=>v??Promise.resolve()}}function LV(e){t.provide(rm,e)}function eg(){return t.inject(rm,void 0)}function tg(){const e=eg();if(!e)throw new Error("Confirm modal not provided");return e}function FV(e){const{readonly:n,flowId:o}=e,r=Re(o),{onNodesChange:i,onEdgesChange:a,onPaneClick:l,findEdge:s}=r,{disconnectEdge:c,commit:d,portalSelection:f,selectPortalEdge:u}=Ye();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&u(void 0)}),a(p=>{const m=p.some(_=>_.type==="select"&&"selected"in _&&_.selected),g=f.value?p.some(_=>_.type==="remove"&&_.id===f.value):!1;(m||g)&&u(void 0)}),l(()=>u(void 0)),He.useEventListener("keydown",p=>{if(n||p.key!=="Delete"&&p.key!=="Backspace")return;const m=f.value;!m||s(m)||(p.preventDefault(),c(m,!1),u(void 0),d())})}function ng(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const UV={default:i1,hover:l1,selected:a1};let og,Is;function aa(e){const n=e.id===og?"selected":e.id===Is?"hover":"default",o=UV[n],{markerEnd:r}=e,i=typeof r=="object"?{...r,color:o}:{type:r,color:o},a=e.zIndex??0,l=n==="selected"?a+2:n==="hover"?a+1:a;return{...e,style:{...e.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[KV,jV]=He.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Nn.padding,gaps:s=Nn.gaps}=r,{nodes:c=Nn.gaps.nodes}=s,d=Re(o),f=Ye(),u=eg(),p=tl(),{i18n:{t:m}}=$e(),{findNode:g,fitView:_,deleteKeyCode:h,onNodeDrag:y,onNodeDragStop:k,onConnect:b,onNodesChange:E,onEdgesChange:N,onEdgeUpdate:C,onEdgeMouseEnter:x,onEdgeMouseLeave:P,getNodes:A,setNodes:B,setEdges:v,addSelectedNodes:w,screenToFlowCoordinate:F}=d;h.value=["Delete","Backspace"];const{state:S,commit:M,moveNode:O,selectNode:j,removeNode:W,getNodeById:L,connectEdge:U,disconnectEdge:T,getInEdgesByNodeId:V,branchGroups:G,commit:se,reset:K,groupMapById:q}=f,{isGroupId:ne,canAddMember:me}=G,ye=t.shallowRef(),ie=ue=>{ye.value=ue},oe=t.readonly(ye);function le(ue,he){const Ce=L(ue.source),ke=L(ue.target);return!!(Ce&&ke&&Ce.phase===he&&ke.phase===he)}const de=MV({phase:n,readonly:i,flowId:o,draggingId:oe}),{memberGroupMap:$,groupNodes:I,branchEdges:D,isBranchEdgeId:R,updateGroupLayout:ee,translateGroupTree:J,getNodeDepth:Z,maxGroupDepth:z}=de,{activeGroupId:ae,start:H,updateActiveGroup:Y,end:Q}=DV({phase:n,groupMapById:q,getNodeDepth:Z,canAddMember:me,draggingId:oe}),ce=t.computed(()=>S.value.nodes.filter(ue=>ue.phase===n&&!ue.hidden).map(ue=>{const he=$.value.get(ue.id),Ce=he==null?void 0:he.position,ke=he==null?void 0:he.dimensions,we=he&&Ce&&ke?{x:ue.position.x-Ce.x,y:ue.position.y-Ce.y}:ue.position,xe=Z(ue.id),Te=!!(he&&Ce&&ke),ze=(Te?xe:0)+z.value+1;return{id:ue.id,type:"flow",position:we,data:ue,deletable:!Nl(ue),parentNode:Te?he.id:void 0,zIndex:ze*Zi+AT}})),be=t.computed(()=>S.value.edges.filter(ue=>le(ue,n)).filter(ue=>!G.isEdgeEnteringGroup(ue.source,ue.target)).filter(ue=>{const he=L(ue.source),Ce=L(ue.target);return!(he!=null&&he.hidden)&&!(Ce!=null&&Ce.hidden)}).map(ue=>{const he=L(ue.source),Ce=L(ue.target);if(!he||!Ce){const we=[];throw he||we.push(`source node "${ue.source}"`),Ce||we.push(`target node "${ue.target}"`),new Error(`Missing ${we.join(" and ")} for edge "${ue.id}" in phase "${n}"`)}const ke=Math.max(Z(ue.source),Z(ue.target))+z.value+1;return aa({id:ue.id,source:ue.source,target:ue.target,sourceHandle:ue.sourceField?`outputs@${ue.sourceField}`:"output",targetHandle:ue.targetField?`inputs@${ue.targetField}`:"input",markerEnd:_r.ArrowClosed,data:ue,updatable:!i,zIndex:ke*Zi+ST})})),te=t.computed(()=>[...D.value,...be.value]),{autoLayout:_e}=RV({phase:n,layoutOptions:r,branchLayout:de,nodes:ce,edges:te});FV({readonly:i,flowId:o}),t.watch([ce,I,te],([ue,he,Ce])=>{B([...he,...ue]),v(Ce)},{immediate:!0});const Ne=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function pe({source:ue,sourceHandle:he,target:Ce,targetHandle:ke}){if(!he||!ke)return;const we=ng(he),xe=ng(ke);if((we==null?void 0:we.io)==="input"||(xe==null?void 0:xe.io)==="output"||he==="output"&&ke==="output")return;const Te=V(Ce);let ze=!1,Ge=!1;const Fe=[],We=[],qe=(xe==null?void 0:xe.io)==="input"?Te.filter(ot=>!ot.targetField):Te.filter(ot=>!!ot.targetField);qe.length>0&&(ze=!0,qe.forEach(ot=>{We.push(Pr(ot,L)),T(ot.id,!1)}));const pt=(xe==null?void 0:xe.io)==="input"?xe!=null&&xe.field?Te.filter(ot=>ot.targetField===xe.field):Te.filter(ot=>!!ot.targetField):Te.filter(ot=>!ot.targetField);if(pt.length>0){if(pt.some(Bt=>Bt.source===ue&&Bt.target===Ce&&Bt.targetField===(xe==null?void 0:xe.field)&&Bt.sourceField===(we==null?void 0:we.field)))return;Ge=!0,pt.forEach(Bt=>{We.push(Pr(Bt,L)),T(Bt.id,!1)})}if(!U({source:ue,sourceField:we==null?void 0:we.field,target:Ce,targetField:xe==null?void 0:xe.field},!1)){K(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Fe.push(hs(ue,we==null?void 0:we.field,Ce,xe==null?void 0:xe.field,L)),ze||Ge){if(!u)throw K(),new Error("Expected confirm modal to be provided here when reachable");if(!await u(m(ze?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Fe,We)){K();return}}se()}b(pe);let fe=!1;const je=()=>{fe&&(fe=!1,se())};E(ue=>{ue.filter(ke=>ke.type==="select").filter(ke=>!ne(ke.id)).sort((ke,we)=>ke.selected===we.selected?0:ke.selected?1:-1).forEach(ke=>{j(ke.selected?ke.id:void 0)});let Ce=!1;ue.forEach(ke=>{if(ke.type==="remove"){if(ne(ke.id))return;Ce=!0,W(ke.id,!1)}}),Ce&&!fe&&(fe=!0,queueMicrotask(je))}),y(({node:ue,event:he})=>{var Te,ze,Ge;if(!ue)return;if(ne(ue.id)){const Fe=ue.id;ie(Fe),Y(void 0);const We=q.value.get(Fe);if(!We)return;const qe=We.position??{...ue.position},pt=ue.position.x-qe.x,$r=ue.position.y-qe.y;J(Fe,ue.position,pt,$r);const ot=$.value.get(We.ownerId);ot&&ee(ot.id,!1);return}const Ce=ue.id;H("canvas"),ie(Ce);const ke=ue.parentNode;let we={...ue.position};if(ke&&ne(ke)){const Fe=q.value.get(ke);Fe!=null&&Fe.position&&(we={x:Fe.position.x+ue.position.x,y:Fe.position.y+ue.position.y})}if(O(Ce,we,!1),!Nl(L(Ce))){const Fe={x:we.x,y:we.y,width:((Te=ue.dimensions)==null?void 0:Te.width)??0,height:((ze=ue.dimensions)==null?void 0:ze.height)??0},We=he&&"clientX"in he?F({x:he.clientX,y:he.clientY}):void 0,qe={x:Fe.x+Fe.width/2,y:Fe.y+Fe.height/2};Y(We??qe)}const xe=ke&&ne(ke)?ke:(Ge=$.value.get(Ce))==null?void 0:Ge.id;xe&&ee(xe,!1)}),k(({node:ue})=>{var xe;if(!ue)return;if(ie(void 0),ne(ue.id)){M();return}const he=ue.id,Ce=ue.parentNode;let ke={...ue.position};if(Ce&&ne(Ce)){const Te=q.value.get(Ce);Te!=null&&Te.position&&(ke={x:Te.position.x+ue.position.x,y:Te.position.y+ue.position.y})}O(he,ke,!1);const we=Ce&&ne(Ce)?Ce:(xe=$.value.get(he))==null?void 0:xe.id;we&&ee(we,!1),fn(he),Q(),M()}),N(ue=>{ue.filter(ke=>ke.type==="select").sort((ke,we)=>ke.selected===we.selected?0:ke.selected?1:-1).forEach(ke=>{R(ke.id)||(og=ke.selected?ke.id:void 0,v(we=>we.map(xe=>xe.id!==ke.id||!xe.markerEnd?xe:aa({...xe,zIndex:ke.selected?1:void 0}))))});let Ce=!1;ue.forEach(ke=>{if(ke.type==="remove"){if(R(ke.id))return;Ce=!0,T(ke.id,!1)}}),Ce&&!fe&&(fe=!0,queueMicrotask(je))}),x(({edge:ue})=>{R(ue.id)||(Is=ue.id,v(he=>he.map(Ce=>Ce.id!==ue.id?Ce:aa(Ce))))}),P(({edge:ue})=>{R(ue.id)||(Is=void 0,v(he=>he.map(Ce=>Ce.id!==ue.id?Ce:aa(Ce))))}),C(({edge:ue,connection:he})=>{R(ue.id)||(T(ue.id,!1),pe(he))});function lt(ue){_({...Ne.value,...ue})}async function ht(ue){return j(ue),new Promise(he=>setTimeout(()=>{const Ce=g(ue);w(Ce?[Ce]:[]),he()},0))}function Wt(ue){const he=A.value.filter(({type:qe})=>qe!=="group"),Ce=he.find(({id:qe})=>qe===ue);if(!Ce)throw new Error(`Node ${ue} not found`);const{x:ke,y:we}=Ce.data.position,{width:xe,height:Te}=Ce.dimensions,ze=we,Ge=we+Te,Fe=he.filter(({id:qe})=>qe!==ue).filter(({data:{position:{y:qe}},dimensions:{height:pt}})=>qe<Ge&&qe+pt>ze).map(({data:{position:{x:qe}},dimensions:{width:pt}})=>({left:qe,right:qe+pt})).sort((qe,pt)=>qe.left-pt.left);let We=ke+xe+c;for(const{left:qe,right:pt}of Fe)if(!(pt<=We)){if(We+xe<=qe)return{x:We,y:ze};We=Math.max(We,pt)+c}return{x:We,y:ze}}function Sn(ue){if(!ue)return;const he=g(ue);if(!he)throw new Error(`Node ${ue} not found`);const{position:{x:Ce},dimensions:{width:ke}}=he,we=Ce+ke,{viewport:xe,dimensions:Te,setViewport:ze}=d,{x:Ge,y:Fe,zoom:We}=xe.value,{width:qe}=Te.value,pt=Ce*We+Ge,$r=we*We+Ge,ot=qe-om-c;if($r<=ot)return;let Bt=ot-$r;pt+Bt<0&&(Bt=-pt),Bt!==0&&ze({x:Ge+Bt,y:Fe,zoom:We},{duration:OT})}function fn(ue){if(!ae.value)return!1;const{nodeId:he,branch:Ce}=C1(ae.value),ke=G.addMember(he,Ce,ue,{commit:!1});return Y(void 0),ke}return{vueFlowStore:d,editorStore:f,readonly:i,nodes:ce,edges:te,selectNode:ht,autoLayout:_e,placeToRight:Wt,scrollRightToReveal:Sn,fitViewParams:Ne,fitView:lt,groupDrop:{activeGroupId:ae,startPanelDrag:()=>H("panel"),endPanelDrag:Q,updateActiveGroup:Y,attachNodeToActiveGroup:fn}}});let Vo=null;function GV(){var n;if(Vo)return Vo;if(typeof navigator>"u")return Vo="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?Vo="mac":/Linux/i.test(e)&&!/Android/i.test(e)?Vo="linux":Vo="windows"}const qV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},zV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Win",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Spacebar",Delete:"Delete"},HV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function YV(e,n={}){const o=n.platform??GV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?qV:o==="linux"?HV:zV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const WV={key:0,class:"label"},XV={class:"keys"},la=Ae(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=YV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",WV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",XV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),ZV=["onClick"],JV={key:0,class:"additional-count"},rg=24,QV=16,sa=Ae(t.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(e){const n=Number.parseFloat(y1)||0,o={target:"body"},{portalSelection:r,selectPortalEdge:i}=Ye(),a=t.ref(!1),l=t.computed(()=>{const g=r.value;return g?e.targets.some(_=>_.edgeId===g):!1}),s=t.computed(()=>e.expanded!==void 0?e.expanded||l.value:a.value||l.value),c=()=>rg*e.targets.length+n*(e.targets.length-1),d=t.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=g=>{i(g)},u=g=>r.value===g,p=t.computed(()=>e.targets.map((g,_)=>{var y;const h=(rg+n)*_;return{edgeId:g.edgeId,key:`${g.node.id}-${g.fieldName??"node"}-${_}`,icon:(y=kt[g.node.type])==null?void 0:y.icon,tooltip:g.fieldName?`${g.node.name}.${g.fieldName}`:g.node.name,highlighted:u(g.edgeId),tooltipEl:null,style:_===0?{width:"fit-content",zIndex:e.targets.length}:{position:"absolute",...e.reversed?{left:`${h}px`,transform:s.value?"translateX(0)":`translateX(-${h}px)`}:{right:0,transform:s.value?`translateX(-${h}px)`:"translateX(0)"},zIndex:e.targets.length-_}}})),m=t.computed(()=>Math.max(e.targets.length-1,0));return(g,_)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:e.reversed}]),onClick:_[0]||(_[0]=t.withModifiers(()=>{},["stop"])),onDragstart:_[1]||(_[1]=t.withModifiers(()=>{},["stop"])),onMousedown:_[2]||(_[2]=t.withModifiers(()=>{},["stop"])),onMouseenter:_[3]||(_[3]=h=>a.value=!0),onMouseleave:_[4]||(_[4]=h=>a.value=!1)},[t.createElementVNode("div",{class:"target-boxes",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(h,y)=>(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:h.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:t.normalizeStyle(h.style),text:h.tooltip},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["target-box",{highlighted:h.highlighted}]),onClick:t.withModifiers(k=>f(h.edgeId),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h.icon),{color:t.unref(ko),size:QV},null,8,["color"])),y===0&&m.value>0?(t.openBlock(),t.createElementBlock("span",JV," +"+t.toDisplayString(m.value),1)):t.createCommentVNode("",!0)],10,ZV)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),ca=Ae(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ve.Left},size:{default:()=>Number.parseFloat(ju)},type:{}},setup(e){t.useCssVars(o=>({v753622c4:o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[e.type,e.position===t.unref(ve).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),ig=Ae(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>kt[e.type]),o=t.computed(()=>b1(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":e.iconOnly,"has-colors":!!n.value.colors}]),size:e.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]),eR={class:"body"},tR={class:"name"},nR={class:"handle"},oR={class:"handle-label-wrapper"},rR={class:"handle-label-wrapper"},iR={class:"handle-label text"},aR={class:"handle"},lR={class:"handle-label-wrapper"},sR={class:"handle-label-wrapper"},cR={class:"handle-label text"},dR={key:2,class:"branch-handles"},uR={class:"handle-label-wrapper"},fR={class:"handle-label text"},ag=Ae(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=jV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=Ye(),u=t.computed(()=>Eo(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),g=t.computed(()=>p.value&&r(e.data.id).every(T=>T.targetField===void 0)),_=t.computed(()=>m.value&&i(e.data.id).every(T=>T.sourceField===void 0)),h=t.computed(()=>e.data.expanded.input??!1),y=t.computed(()=>e.data.expanded.output??!1),k=t.computed(()=>{var T,V,G;return((G=(V=(T=u.value.io)==null?void 0:T.next)==null?void 0:V.branches)==null?void 0:G.map(({name:se})=>se))??[]}),b=t.computed(()=>k.value.length>0),E=t.computed(()=>f.findMembership(e.data.id)),N=t.computed(()=>{var T,V;if(e.data.type==="property"){const G=(T=e.data.config)==null?void 0:T.property;return gs(G)}return(V=u.value.io)==null?void 0:V.input}),C=t.computed(()=>{var T,V;if(e.data.type==="property"){const G=(T=e.data.config)==null?void 0:T.property;return ms(G)}return(V=u.value.io)==null?void 0:V.output}),x=t.computed(()=>Nl(e.data)),P=t.computed(()=>e.data.phase==="response"),A=t.computed(()=>e.data.phase==="request"?ve.Left:ve.Right),B=t.computed(()=>e.data.phase==="request"?ve.Right:ve.Left),v=t.computed(()=>e.data.phase==="request"?ve.Right:ve.Left),w=t.computed(()=>x.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),F=t.computed(()=>x.value?t1:n1);function S(T){return T==="input"?P.value:!P.value}function M(T){const V=new Map,G=T==="input"?r(e.data.id):i(e.data.id);for(const se of G){const K=a(T==="input"?se.source:se.target);if(!K)continue;if(T==="input"){const ie=K.type==="vault",oe=K.phase!==e.data.phase,le=f.isEdgeEnteringGroup(K.id,e.data.id);if(!(ie||oe||le))continue}else{const ie=K.phase!==e.data.phase,oe=f.isEdgeEnteringGroup(e.data.id,K.id);if(!(ie||oe))continue}const q=T==="input"?se.targetField||"input":se.sourceField||"output";let ne;if(T==="input"&&se.sourceField){const ie=K.fields.output.find(oe=>oe.id===se.sourceField);ne=ie==null?void 0:ie.name}else if(T==="output"&&se.targetField){const ie=K.fields.input.find(oe=>oe.id===se.targetField);ne=ie==null?void 0:ie.name}const me={edgeId:se.id,node:K,fieldName:ne},ye=V.get(q);ye?ye.push(me):V.set(q,[me])}return V}const O=t.computed(()=>M("input")),j=t.computed(()=>M("output"));function W(T){!o||o.readonly||T==="input"&&!g.value||T==="output"&&!_.value||l(e.data.id,T)}async function L(){if(!o||o.readonly)return;const T=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(T),o.scrollRightToReveal(T),d.value=!0}function U(){f.removeMember(e.data.id)}return t.watch(g,T=>{T||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(_,T=>{T||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(T,V)=>{Mn(T,V)||l(e.data.id,"input",T.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(T,V)=>{Mn(T,V)||l(e.data.id,"output",T.length>0,!0,"*")},{deep:!0}),(T,V)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:P.value,implicit:x.value,readonly:e.readonly}])},[t.createElementVNode("div",eR,[x.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(ig,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",tR,t.toDisplayString(w.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(Ee.WarningIcon),{key:1,class:"error-icon",color:t.unref(bl),size:16},null,8,["color"])):t.createCommentVNode("",!0),x.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:V[1]||(V[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Oe.KDropdownItem),{onClick:L},{default:t.withCtx(()=>[t.createVNode(la,{keys:t.unref(Ji).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),E.value?(t.openBlock(),t.createBlock(t.unref(Oe.KDropdownItem),{key:0,onClick:U},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(Oe.KDropdownItem),{danger:"",onClick:V[0]||(V[0]=G=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(la,{keys:t.unref(Ji).delete,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(_l)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:P.value}])},[N.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",nR,[t.createVNode(t.unref(Yt),{id:"input",position:A.value,type:"target"},null,8,["position"]),O.value.has("input")?(t.openBlock(),t.createBlock(sa,{key:0,mode:"input",reversed:S("input"),targets:O.value.get("input")},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",oR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:V[2]||(V[2]=t.withModifiers(G=>W("input"),["stop"]))},[V[4]||(V[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[h.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldMoreIcon),{key:0,size:t.unref(ci)},null,8,["size"])),h.value?(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldLessIcon),{key:1,color:g.value?void 0:t.unref(Ku),size:t.unref(ci)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&h.value?(t.openBlock(),t.createBlock(ca,{key:0,color:F.value,position:A.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&h.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(G,se)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${G.id}`,class:"handle indented"},[t.createVNode(t.unref(Yt),{id:`inputs@${G.id}`,position:A.value,type:"target"},null,8,["id","position"]),O.value.has(G.id)?(t.openBlock(),t.createBlock(sa,{key:0,mode:"input",reversed:S("input"),targets:O.value.get(G.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",rR,[t.createElementVNode("div",iR,t.toDisplayString(G.name),1),t.createVNode(ca,{color:F.value,position:A.value,type:se<e.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),C.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":m.value}])},[t.createElementVNode("div",aR,[t.createElementVNode("div",lR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:_.value}]),onClick:V[3]||(V[3]=t.withModifiers(G=>W("output"),["stop"]))},[V[5]||(V[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldMoreIcon),{key:0,size:t.unref(ci)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldLessIcon),{key:1,color:_.value?void 0:t.unref(Ku),size:t.unref(ci)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&y.value?(t.openBlock(),t.createBlock(ca,{key:0,color:F.value,position:B.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Yt),{id:"output",position:B.value,type:"source"},null,8,["position"]),j.value.has("output")?(t.openBlock(),t.createBlock(sa,{key:0,mode:"output",reversed:S("output"),targets:j.value.get("output")},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]),m.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.output,(G,se)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${G.id}`,class:"handle indented"},[t.createElementVNode("div",sR,[t.createElementVNode("div",cR,t.toDisplayString(G.name),1),t.createVNode(ca,{color:F.value,position:B.value,type:se<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Yt),{id:`outputs@${G.id}`,position:B.value,type:"source"},null,8,["id","position"]),j.value.has(G.id)?(t.openBlock(),t.createBlock(sa,{key:0,mode:"output",reversed:S("output"),targets:j.value.get(G.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",dR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(k.value,G=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${G}`,class:"handle"},[t.createElementVNode("div",uR,[t.createElementVNode("div",fR,t.toDisplayString(G),1)]),t.createVNode(t.unref(Yt),{id:`branch@${G}`,connectable:!1,position:v.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-c0706d4a"]]),pR=Ae(t.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?ve.Right:ve.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":e.active}])},[t.createVNode(t.unref(Yt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),lg=Ae(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=He.useElementBounding(i),{i18n:{t:l}}=$e(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:g,groupDrop:_}=KV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:h,propertiesPanelOpen:y,invalidConfigNodeIds:k,selectedNode:b,duplicateNode:E,commit:N,selectPortalEdge:C}=c,{screenToFlowCoordinate:x,zoomIn:P,zoomOut:A,viewport:B,maxZoom:v,minZoom:w}=s,{activeGroupId:F,startPanelDrag:S,endPanelDrag:M,updateActiveGroup:O,attachNodeToActiveGroup:j}=_;function W(K){var ne;const q=(ne=K.dataTransfer)==null?void 0:ne.types.find(me=>me.startsWith(`${vr}/`));if(q)return q.replace(`${vr}/`,"")}function L(K){var q;if(e.mode==="edit"){if(((q=K==null?void 0:K.node)==null?void 0:q.type)==="group"){p(void 0),C(void 0);return}y.value=!0}}function U(K){e.mode==="edit"&&(K.preventDefault(),O(x({x:K.clientX,y:K.clientY})))}function T(K){var de;if(e.mode!=="edit")return;const q=(de=K.dataTransfer)==null?void 0:de.getData(vr);if(!q)return;K.preventDefault();const ne=JSON.parse(q);if(ne.action!=="create-node")return;const me=x({x:K.clientX,y:K.clientY}),{type:ye,anchor:ie}=ne.data,oe={type:ye,phase:e.phase,position:{x:me.x-ie.offsetX,y:me.y-ie.offsetY}},le=h(oe,!1);if(!le){M();return}j(le),N(),p(le),y.value=!0,M()}async function V(){await d(),setTimeout(()=>u(),0)}const G=t.computed(()=>{if(e.mode==="preview")return[];const K=[{name:"zoom_in",icon:Ee.AddIcon,action:P,disabled:B.value.zoom>=v.value},{name:"zoom_out",icon:Ee.RemoveIcon,action:A,disabled:B.value.zoom<=w.value},{name:"fit_view",icon:Ee.FullscreenIcon,action:u}];return e.mode==="edit"&&K.push({name:"auto_layout",icon:Ee.AutoLayoutIcon,action:V}),K});e.mode==="edit"&&(He.useEventListener("dragstart",K=>{W(K)&&S()}),He.useEventListener("dragend",()=>{M()}));async function se(){const K=b.value;if(e.mode!=="edit"||!K||K.phase!==e.phase)return;const q=E(K.id,m(K.id));q&&(await p(q),y.value=!0,g(q))}return tm({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:se}),n({autoLayout:d,fitView:u}),(K,q)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Zp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(PT),"min-zoom":t.unref(TT),"multi-selection-key-code":null,"nodes-connectable":e.mode==="edit","nodes-draggable":e.mode==="edit","pan-on-drag":e.mode==="preview"?!1:void 0,"pan-on-scroll":e.mode!=="edit"?!1:void 0,"zoom-on-double-click":e.mode!=="edit"?!1:void 0,"zoom-on-pinch":e.mode!=="edit"?!1:void 0,"zoom-on-scroll":e.mode!=="edit"?!1:void 0,onDragover:U,onDrop:T,onNodeClick:L,onNodesChange:q[0]||(q[0]=ne=>r("nodes-change")),onNodesInitialized:q[1]||(q[1]=ne=>r("initialized"))},{"node-flow":t.withCtx(({data:ne})=>[t.createVNode(ag,{data:ne,error:t.unref(k).has(ne.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ne})=>[t.createVNode(pR,{active:t.unref(F)===ne.id,data:ne},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(qP)),t.createVNode(t.unref(yT),{"fit-view-params":t.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(G.value,ne=>(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:ne.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ne.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(Sr),{disabled:ne.disabled,onClick:t.withModifiers(ne.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ne.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"])],512))}}),[["__scopeId","data-v-47761eb0"]]),mR={class:"label-content"},gR={class:"count"},hR={class:"label-content"},yR={class:"count"},sg=.5,Ps=.03,_R=30,Ts=Ae(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=t.ref(!1),r=t.ref(!1),{responsePanelCollapsed:i}=gi(),{state:a,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:d,clear:f,portalSelection:u}=Ye(),p=t.useId(),m=`${p}-request`,g=`${p}-response`,_=Re(m),h=Re(g);function y(oe,le){const{onPaneClick:de,onNodesChange:$,onEdgesChange:I,getSelectedNodes:D,getSelectedEdges:R}=oe,{removeSelectedElements:ee}=le;function J(Z){if(!Z){ee();return}Z.some(z=>z.type==="select")&&D.value.length+R.value.length>0&&ee()}$(J),I(J),de(()=>J())}y(_,h),y(h,_),t.watch(u,oe=>{oe&&(_.removeSelectedElements(),h.removeSelectedElements())});const k=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),E=t.useTemplateRef("requestCanvasContainer"),N=t.useTemplateRef("requestFlow"),C=t.useTemplateRef("resizeHandle"),x=t.useTemplateRef("responseLabel"),P=t.useTemplateRef("responseCanvasContainer"),A=t.useTemplateRef("responseFlow"),B=He.useElementBounding(k),v=He.useElementBounding(b),w=He.useElementBounding(E),F=He.useElementBounding(C),S=He.useElementBounding(x),M=He.useElementBounding(P),O=t.computed(()=>Math.max(_R,B.height.value*Ps)),j=t.computed(()=>B.height.value-v.height.value-F.height.value-S.height.value),W=t.computed(()=>{const oe=j.value;return oe?Math.max(Ps,O.value/oe):Ps}),L=t.ref(sg),U=t.computed(()=>`${L.value*100}%`),T=t.computed(()=>`${(1-L.value)*100}%`),V=t.computed(()=>L.value<=W.value),G=t.computed(()=>1-L.value<=W.value);function se(oe,{persist:le=!0}={}){const de=Math.min(1,Math.max(0,oe));L.value=de,le&&e.mode==="edit"&&(i.value=G.value)}function K(oe,le=!0){se(oe?1:sg,{persist:le})}function q(oe=!0){se(0,{persist:oe})}if(e.mode==="edit"){const oe=l.value.response===0,le=i.value;K(oe||le,!1)}else t.watch(()=>l.value.response,oe=>{K(oe===0,!1)},{immediate:!0});const ne=()=>{e.resizable&&(V.value?K(!1):q())},me=()=>{e.resizable&&K(!G.value)},{isDragging:ye}=He.useDraggable(C,{onMove(oe){if(!e.resizable)return;const le=Math.max(0,oe.y-w.top.value),de=Math.min(1,Math.max(0,le/j.value));se(de,{persist:!1})},onEnd(){e.resizable&&(w.height.value<O.value?q():M.height.value<O.value?K(!0):se(L.value))}});function ie(){t.nextTick(()=>{var oe,le;(oe=N.value)==null||oe.fitView(),(le=A.value)==null||le.fitView()})}return t.watch([o,r,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([oe,le,de,$])=>{e.inactive||!oe||!le||!de&&!$||(de&&s(),$&&c(!1),setTimeout(async()=>{var I,D;de&&(await((I=N.value)==null?void 0:I.autoLayout(!1)),await((D=A.value)==null?void 0:D.autoLayout(!1)),d("*"),de==="clearHistory"&&f()),$&&setTimeout(()=>ie(),0)},0))}),(oe,le)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:k,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:ne},[e.resizable?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:V.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",mR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",gR,[t.unref(l).request===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).request}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:E,class:t.normalizeClass(["canvas",{dragging:t.unref(ye)}]),style:t.normalizeStyle({flexBasis:U.value})},[t.createVNode(lg,{ref_key:"requestFlow",ref:N,"flow-id":m,mode:e.mode,phase:"request",onInitialized:le[0]||(le[0]=de=>o.value=!0),onNodesChange:le[1]||(le[1]=de=>o.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:C,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:x,class:t.normalizeClass(["label response",{dragging:t.unref(ye),resizable:e.resizable}]),onClick:me},[e.resizable?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:G.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",hR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",yR,[t.unref(l).response===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).response}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:P,class:t.normalizeClass(["canvas response",{dragging:t.unref(ye)}]),style:t.normalizeStyle({flexBasis:T.value})},[t.createVNode(lg,{ref_key:"responseFlow",ref:A,"flow-id":g,mode:e.mode,phase:"response",onInitialized:le[2]||(le[2]=de=>r.value=!0),onNodesChange:le[3]||(le[3]=de=>r.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),bR={class:"dk-confirm-modal-body"},wR={class:"connections"},kR=Ae(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=$e(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,g,_){return l.value=m,s.value=g??[],c.value=_??[],a.value=!0,await new Promise(h=>{d=h})}return n({open:p}),(m,g)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",bR,[t.createElementVNode("p",null,t.toDisplayString(l.value),1),t.createElementVNode("p",null,t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),t.createElementVNode("div",wR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([h,y])=>(t.openBlock(),t.createElementBlock("div",{key:`${h}-${y}`,class:"connection"},[t.createVNode(t.unref(Ee.AddIcon),{color:t.unref(o1)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(h)+" → "+t.toDisplayString(y),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([h,y])=>(t.openBlock(),t.createElementBlock("div",{key:`${h}-${y}`,class:"connection"},[t.createVNode(t.unref(Ee.RemoveIcon),{color:t.unref(bl)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(h)+" → "+t.toDisplayString(y),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),CR={class:"dk-editor-nav"},ER={class:"top"},NR={class:"bottom"},xR=Ae(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ee.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=gi(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(d,f)=>(t.openBlock(),t.createElementBlock("nav",CR,[t.createElementVNode("div",ER,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:g})=>t.createVNode(t.unref(Oe.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(or)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",NR,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref(Oe.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(or)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(or)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),SR={class:"dk-editor-main"},vR={class:"header"},AR={class:"actions"},IR={class:"settings"},PR={ref:"canvasContainer",class:"body"},TR=Ae(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=Ye(),c=t.inject(pn.DATAKIT_M2,!1),d=["vault","cache"],f=t.computed(()=>c?bo:en(bo,d));function u(g){const _=bo[g],h=hn.load(_,{schema:_o,json:!0});if(typeof h!="object"||h===null)return;const y=h,k={config:{...y,nodes:y.nodes??[]}};s(k,!0)}function p(){o.value=!1}tm({enabled:o,undo:r,redo:i});const m={maxWidth:"300px",zIndex:1e4};return(g,_)=>(t.openBlock(),t.createElementBlock("div",SR,[t.createElementVNode("header",vR,[t.createElementVNode("div",AR,[t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(la,{keys:t.unref(Ji).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(la,{keys:t.unref(Ji).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),_[0]||(_[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",IR,[t.createVNode(Jr,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:m},name:"config.debug"},null,8,["label","label-attributes"])]),_[1]||(_[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Oe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,(h,y)=>(t.openBlock(),t.createBlock(t.unref(Oe.KDropdownItem),{key:y,onClick:k=>u(y)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${y}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),t.createVNode(t.unref(Ee.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Oe.KButton),{onClick:p},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",PR,[t.createVNode(Ts,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-e342016d"]]),OR=["draggable"],$R={class:"icon"},BR={class:"content"},VR={class:"title"},RR={class:"description"},DR=Ae(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f628e926:t.unref(a),v4a9b9f82:t.unref(l)}));const o=n,{summary:r,icon:i,colors:{background:a,foreground:l}={}}=kl[e.type];function s(c){o("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:s},[t.createElementVNode("div",$R,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",BR,[t.createElementVNode("div",VR,t.toDisplayString(e.type),1),t.createElementVNode("div",RR,t.toDisplayString(t.unref(r)),1)])],42,OR))}}),[["__scopeId","data-v-38d156c9"]]),MR={class:"dk-node-panel"},LR={key:0,class:"title"},FR={class:"node-list"},UR={"aria-hidden":"true",class:"preview",inert:""},cg=Ae(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),{createNode:o}=Ye(),r=t.inject(pn.DATAKIT_M2,!1),i=["branch","cache"],a=`dk-drag-preview-${t.useId()}`,l=t.shallowRef(),s=t.computed(()=>l.value?[{id:"preview",type:"flow",data:l.value,position:{x:0,y:0}}]:[]),c=async(d,f)=>{var B,v,w;const u=d.currentTarget,{left:p,top:m,width:g,height:_}=u.getBoundingClientRect(),h=d.clientX-p,y=d.clientY-m;l.value=o({type:f}),await t.nextTick();const k=document.querySelector(`#${a}`)||u,b=k.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:E,offsetHeight:N}=k;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${E}px`,height:`${N}px`}),document.body.appendChild(b);const C=h/g,x=y/_,P={ratioX:C,ratioY:x,offsetX:E*C,offsetY:N*x},A={action:"create-node",data:{type:f,anchor:P}};(B=d.dataTransfer)==null||B.setData(vr,JSON.stringify(A)),(v=d.dataTransfer)==null||v.setData(`${vr}/${f}`,f),(w=d.dataTransfer)==null||w.setDragImage(b,P.offsetX,P.offsetY),requestAnimationFrame(()=>{b.remove(),l.value=void 0})};return(d,f)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",MR,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",LR,[t.createVNode(u,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",FR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(kl)),p=>(t.openBlock(),t.createBlock(DR,{key:p,type:p,unsupported:!t.unref(r)&&i.includes(p),onDragstart:c},null,8,["type","unsupported"]))),128))]),t.createElementVNode("div",UR,[t.createVNode(t.unref(Zp),{nodes:s.value},{"node-flow":t.withCtx(p=>[t.createVNode(ag,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-03b0fafb"]]);function KR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=Ye(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var g;return((g=l.value.get("vault"))==null?void 0:g.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(g,_)=>{e(s.id,"output",g,!1);const h={...s.config,[g]:_};r(s.id,h)},removeVault:g=>{const _=yn(s,"output",g);if(!_)return;const h=s.fields.output.length===1;o(s.id,_.id,!0,!1);const y=en(s.config,g);r(s.id,y,!h),h&&a(s.id)},updateVault:(g,_,h=!0)=>{const y={...s.config,[g]:_};r(s.id,y,h)},renameVault:(g,_,h=!0)=>{var E;const y=yn(s,"output",g);if(!y)return;i(s.id,y.id,_,!1);const k=((E=s.config)==null?void 0:E[g])??"",b={...en(s.config,g),[_]:k};r(s.id,b,h)}}}const jR=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ve.useI18n(),i=t.inject(De.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),g=e.validateName(m,e.isEditing);return l.value=g||"",g===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,g)=>{const _=t.resolveComponent("KInput"),h=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Do.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(_,{"model-value":a.value,"onUpdate:modelValue":[g[0]||(g[0]=y=>a.value=y),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(t.openBlock(),t.createBlock(h,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),GR={class:"dk-vault-panel"},qR={class:"title"},zR={class:"vault-list"},HR={key:0,class:"vault-list-item"},YR={class:"vault-list-item-key"},WR={class:"vault-list-item-key-text"},XR=Ae(t.defineComponent({__name:"VaultField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Qr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Ve.useI18n(),f=t.computed(()=>new Set(i.value.map(y=>y.key))),u=()=>{const y=a();c.value=y,s.value=y},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=y=>{if(!s.value)throw new Error("no selected entry");const k=s.value.key,b=k!==y.secretName,E=s.value.value!==y.secretRef,N=b||E;s.value.value=y.secretRef,s.value.key=y.secretName,c.value?r("add",y.secretName,y.secretRef):N&&r("update",y.secretName,y.secretRef,b?k:void 0),c.value=null,p()},g=y=>{s.value=y},_=y=>{l(y.id),r("remove",y.key)},h=(y,k)=>{var b;if(!y)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(y)&&!(k&&y===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(y,k)=>{var C,x;const b=t.resolveComponent("KButton"),E=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",GR,[t.createElementVNode("h3",qR,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",zR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),P=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:P.id},[P.key?(t.openBlock(),t.createElementBlock("div",HR,[t.createElementVNode("div",YR,[t.createVNode(t.unref(Ee.KeyIcon),{color:t.unref(ko),size:16},null,8,["color"]),t.createElementVNode("div",WR,t.toDisplayString(P.key),1)]),t.createVNode(N,null,{items:t.withCtx(()=>[t.createVNode(E,{onClick:A=>g(P)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(E,{danger:"",onClick:A=>_(P)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(_l)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(jR,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(x=s.value)==null?void 0:x.value,"validate-name":h,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function ZR(){const{getSchema:e}=Me();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=nn(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]}}}),o})}const JR={class:"dk-cache-panel"},QR={class:"title"},eD={key:0,class:"cache-item"},tD={class:"cache-item-key"},nD={class:"cache-item-key-text"},oD={class:"dk-resource-cache-form"},rD={key:1},iD={key:2,class:"dk-cache-inline-redis"},aD=Ae(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=Me(),a=_t("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=Ve.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var E;return(E=a.value.value)==null?void 0:E.strategy}),f=t.computed(()=>{var E;return(E=a.value.value)!=null&&E.redis?hn.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},g=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},_=()=>{l.value=!1,o("update",i)},h=js.createdBundledHighlighter({langs:{yaml:()=>import("@shikijs/langs/yaml")},themes:{"github-dark":()=>import("@shikijs/themes/github-dark")},engine:()=>Ag.createJavaScriptRegexEngine()}),{codeToHtml:y}=js.createSingletonShorthands(h),k=()=>{var E,N;d.value==="memory"&&((E=i.cache)!=null&&E.partial_id)&&((N=i.cache)==null||delete N.partial_id)};async function b({codeElement:E,language:N,code:C}){E.innerHTML=await y(C,{lang:N,theme:"github-dark",structure:"inline"})}return(E,N)=>{const C=t.resolveComponent("KButton"),x=t.resolveComponent("KDropdownItem"),P=t.resolveComponent("KDropdown"),A=t.resolveComponent("KLabel"),B=t.resolveComponent("KCodeBlock"),v=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",JR,[t.createElementVNode("h3",QR,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",eD,[t.createElementVNode("div",tD,[t.createVNode(t.unref(Ee.DatabaseIcon),{color:t.unref(ko),size:t.unref(di)},null,8,["color","size"]),t.createElementVNode("div",nD,t.toDisplayString(e.strategy),1)]),t.createVNode(P,null,{items:t.withCtx(()=>[t.createVNode(x,{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(x,{danger:"",onClick:m},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(C,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(_l)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(v,{"action-button-disabled":!c.value,"action-button-text":t.unref(s)("actions.save"),"max-width":"640px",title:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:_},{default:t.withCtx(()=>{var w,F;return[t.createElementVNode("div",oD,[t.createVNode(Pd,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":k},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(mt,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",rD,[t.createVNode(A,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(Ks.RedisConfigurationSelector),{"model-value":(w=t.unref(i).cache)==null?void 0:w.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":N[0]||(N[0]=S=>t.unref(i).cache.partial_id=S)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((F=t.unref(i).cache)!=null&&F.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",iD,[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(B,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-c4d7025b"]]),lD={class:"dk-resources-panel"},sD=Ae(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=ZR(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=KR();function c(_,h,y){y&&y!==_&&l(y,_,!1),a(_,h)}const{state:d,commit:f}=Ye(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(_){d.value.cacheConfig=_.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function g(){o.value++}return(_,h)=>(t.openBlock(),t.createElementBlock("div",lD,[t.createVNode(bt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(XR,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),h[0]||(h[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(bt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var y;return[t.createVNode(aD,{strategy:(y=u.value.cache)==null?void 0:y.strategy,onCancel:g,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),cD={class:"header"},dD={class:"title"},uD={class:"body"},fD={class:"panel"},pD=Ae(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Xe.createI18n("en-us",Je),{sidePanelExpanded:o}=gi(),{propertiesPanelOpen:r,selectedNode:i}=Ye(),a=t.inject(pn.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",cD,[t.createElementVNode("h2",dD,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",uD,[t.createElementVNode("div",fD,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(cg,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(sD,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(cg,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),mD=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(Tt,{items:t.unref(qa)([...t.unref(Fu)]),name:e.name},null,8,["items","name"]))}}),gD=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Me(),{i18n:o}=$e(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(Ct,{"as-child":"",name:e.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(Tt,{key:l,clearable:"","enable-filtering":"",items:e.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(s=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),hD=["data-testid"],yD={class:"dk-inputs-map-field-entry-body"},_D={class:"dk-inputs-map-field-entry-content"},bD=Ae(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=Qr(o,r),{i18n:{t:c}}=$e(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(N,C="key"){var x;d.value&&(await t.nextTick(),(x=d.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function g(){const{id:N}=a(),C=i.value.findIndex(({key:x})=>!x);m(C===-1?i.value.length-1:C),f.value=N}function _(N){l(N.id),N.id===f.value&&(f.value=null),N.key.trim()!==""&&r("remove:field",N.key)}function h(N){p=N.key}function y(N){if(k(N)){N.key=p,delete u.value[N.id];return}if(N.id===f.value){if(N.key.trim()==="")return;r("add:field",N.key,N.value),f.value=null}else r("rename:field",p,N.key);p=N.key}function k(N){delete u.value[N.id];const C=o.fieldNameValidator("input",p,N.key);if(C)return u.value[N.id]=C,C}function b(N){k(N)}function E(N,C){N.id!==f.value&&r("change:inputs",N.key,C)}return t.watch(()=>i.value,N=>{f.value&&(N.find(({id:C})=>C===f.value)||(f.value=null))}),(N,C)=>{const x=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),A=t.resolveComponent("KInput"),B=t.resolveComponent("KSelect"),v=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(w,F)=>(t.openBlock(),t.createElementBlock("div",{key:w.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${F}`},[t.createVNode(P,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${F}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",yD,[t.createElementVNode("div",_D,[t.createVNode(A,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${F}`,modelValue:w.key,"onUpdate:modelValue":[S=>w.key=S,S=>k(w)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${t.unref(s).path.value}.${F}`,error:!!u.value[w.id],"error-message":u.value[w.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:S=>b(w),onChange:S=>y(w),onFocus:S=>h(w)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(B,{modelValue:w.value,"onUpdate:modelValue":S=>w.value=S,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${F}`,"enable-filtering":"",items:e.items,label:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:S=>E(w,(S==null?void 0:S.value)??null)},t.createSlots({_:2},[N.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:S})=>[t.renderSlot(N.$slots,"item-label",t.mergeProps({ref_for:!0},S),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(v,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${F}`,icon:"",onClick:S=>_(w)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,hD))),128)),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-dda8b239"]]),wD={class:"dk-source-item"},da=Ae(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",wD,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(kt)[e.item.type].icon),{color:t.unref(ko),size:t.unref(or)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),kD={key:1,class:"dk-inputs-field-or"},xn=Ae(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Me(),{i18n:{t:i}}=$e(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?gD:bD:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Oe.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock(Tt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(g=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(g)),()=>[t.createVNode(da,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",kD,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(Oe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(g=>[t.createVNode(da,{item:g},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),CD={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},ED={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function ND(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function oo(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Ro(e){const{i18n:{t:n}}=$e(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function dg(e,n){const{i18n:{t:o}}=$e();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function xD(e=0,n=1/0,o){const{i18n:{t:r}}=$e();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function ug(e){const{i18n:{t:n}}=$e();return function(r){if(!ND(r))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function Os(e,n){const{i18n:{t:o}}=$e();return function(i){if(i==null)return;const a=ug(n)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function $s(e=-1/0,n=1/0,o){const{i18n:{t:r}}=$e();return function(a){if(a==null)return;const l=ug(o)(a);if(l)return l;const s=Number(a);if(s<e||s>n)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function SD(e,n){const{state:o}=Ye(),{i18n:{t:r}}=$e();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function vD(e,n,o){const{i18n:{t:r}}=$e();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function AD(){const{i18n:{t:e}}=$e();return function(o){if(El(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function fg(e){const{i18n:{t:n}}=$e(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return oo(Ro(o),dg("identifier",o),AD(),SD(e,o))}function ID(e){const{i18n:{t:n}}=$e(),{getNodeById:o}=Ye();return function(i,a,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return oo(Ro(s),vD(i,o(e),l))(a)}}function PD(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=u=>{const p=typeof u=="function"?u():u,m=s(p);return n.value[l]=m,m},d=()=>{n.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const d=l[c],f=typeof d=="function"?d():d;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function Or(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=Ye(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>PD(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const g in a.value)m[g]=p[g];return m}function f(u,p){const m=()=>{const _=o(),h=s.value[u];h&&h.handleBlur(_[u])},g=()=>{p==null||p();const _=o(),h=s.value[u];h&&h.handleChange(_[u])};return t.computed(()=>{const _=s.value[u];return{validate:m,update:g,error:_?!_.isValid.value:!1,errorMessage:_?_.error.value??"":""}})}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function dn(e,n){const o=t.inject(pn.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:g}=Ye(),{i18n:{t:_}}=$e(),h=tg(),y=t.computed(()=>{const L=a(e);if(!L)throw new Error("Node not existed");return L}),k=t.computed(()=>{const U=r.value.edges.filter(T=>T.target===e).reduce((T,V)=>{var ne,me;const G=a(V.source),se=(ne=_n(G,"output",V.sourceField))==null?void 0:ne.id,K=(me=_n(y.value,"input",V.targetField))==null?void 0:me.name,q=G.id+(se?`.${se}`:"");return K?T.inputs={...T.inputs,[K]:q}:T.input=q,T},{});return y.value.fields.input.forEach(T=>{U.inputs||(U.inputs={}),U.inputs[T.name]||(U.inputs[T.name]=null)}),{...y.value.config,...U,name:y.value.name}}),b=L=>{i(e,L??"",!0,`${e}:rename`)},E=(L,U=!0)=>{if(!n)throw new Error("getFormValue is not defined");const T=en(n(),["name","input","inputs"]),V=L?`update:${e}:${L}`:void 0;d(e,T,U,V)},N=(L,U)=>{const T=yn(y.value,L,U);if(!T)throw new Error(`Field with name "${U}" not found in node "${y.value.name}"`);return T},C=(L,U,T)=>{const V=!!T;l(e,L,U,!V),V&&v(U,T)},x=(L,U,T)=>{const V=N(L,U).id;s(e,V,T)},P=(L,U)=>{const T=N(L,U).id;c(e,T)},A=t.computed(()=>r.value.edges.filter(L=>L.target===e&&!L.targetField)[0]),B=t.computed(()=>r.value.edges.filter(L=>L.target===e&&L.targetField)),v=async(L,U)=>{const T=U==null,V=N("input",L).id;if(T){const oe=B.value.find(le=>le.targetField===V);oe&&f(oe.id);return}const{nodeId:G,fieldId:se}=Gu(U),K=N("input",L).id,q=[];A.value&&(q.push(Pr(A.value,a)),f(A.value.id,!1));const ne=B.value.find(oe=>oe.targetField===V);ne&&(q.push(Pr(ne,a)),f(ne.id,!1)),u({source:G,sourceField:se,target:e,targetField:K},!1);const me=hs(G,se,e,K,a),ye=q[0]&&me?q[0][1]===me[1]:!1;if(m(),ye||q.length===0)return;await h(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[me],q)||g()},w=async L=>{if(L==null){A.value&&f(A.value.id);return}const T=[];for(const q of B.value)T.push(Pr(q,a)),f(q.id,!1);A.value&&f(A.value.id,!1);const{nodeId:V,fieldId:G}=Gu(L);u({source:V,sourceField:G,target:e,targetField:void 0},!1);const se=hs(V,G,e,void 0,a);if(m(),T.length===0)return;await h(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[se],T)||g()},F=L=>{const U=[...r.value.edges,{source:L,target:e}];return Il(mi(U))},S=t.computed(()=>{var U,T;const L=[];for(const V of r.value.nodes)if(!(!o&&V.type==="vault"||!((U=Eo(V.type).io)!=null&&U.output))&&V.fields.output&&V.id!==e&&!(V.type==="property"&&!ms((T=V.config)==null?void 0:T.property))&&!F(V.id)&&!(y.value.phase==="request"&&V.phase==="response")&&!(V.type==="vault"&&V.fields.output.length===0)){L.push({value:V.id,label:V.name,type:V.type});for(const se of V.fields.output)L.push({value:`${V.id}.${se.id}`,label:`${V.name}.${se.name}`,type:V.type})}return L}),M=t.computed(()=>y.value.fields.input.map(L=>L.name)||[]);function O(L){p.value.delete(e),L||p.value.add(e)}const j=ID(e);function W(L,U,T){const V=a(e);if(!V)throw new Error("Node not found when validating field name");const G=yn(V,L,U);return j(L,T,G==null?void 0:G.id)}return{formData:k,inputOptions:S,inputEdge:A,inputsEdges:B,inputsFieldNames:M,currentNode:y,setName:b,setConfig:E,addField:C,renameFieldByName:x,removeFieldByName:P,setInputs:v,setInput:w,nameValidator:fg(e),fieldNameValidator:W,toggleNodeValid:O}}function un(e){const{getSchema:n}=Me();return t.computed(()=>{if(xt(e))switch(e){case"response":return ED;case"service_request":return CD}try{const l=n().fields[0].config.fields[0].nodes.elements.subschema_definitions[e];if(!l)throw new Error(`Subschema "${e}" not found in the schema.`);return l}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const ro=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),TD=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=$e(),o=t.useTemplateRef("form"),r=un("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=dn(e.nodeId,()=>o.value.getValue()),{createFieldHandler:g}=Or({validationConfig:{url:oo(Ro({fieldName:"URL"}),dg("url",{fieldName:"URL"})),timeout:oo(Os("integer"),$s(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),_=g("url",()=>l("url")),h=g("timeout",()=>l("timeout"));return(y,k)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(fo,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"url",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mD,{name:"method",onUpdate:k[0]||(k[0]=E=>t.unref(l)())}),t.createVNode(jn,{error:t.unref(h).error,"error-message":t.unref(h).errorMessage,name:"timeout",onBlur:t.unref(h).validate,"onUpdate:modelValue":t.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(fo,{name:"ssl_server_name","onUpdate:modelValue":k[1]||(k[1]=E=>t.unref(l)("ssl_server_name"))}),t.createVNode(xn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),OD=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=dn(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),$D=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=dn(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),pg={jqlang:"https://jqlang.org/manual/"},BD=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=$e(),r=t.useTemplateRef("form"),i=un("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:g,nameValidator:_,toggleNodeValid:h,fieldNameValidator:y}=dn(e.nodeId,()=>r.value.getValue());function k(P,A){u("input",P,A)}function b(P){p("input",P)}function E(P,A){m("input",P,A)}const N=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=Or({validationConfig:{jq:oo(Ro({fieldName:N}),xD(1,10240,{fieldName:N}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:h}),x=C("jq",()=>s("jq"));return(P,A)=>{const B=t.resolveComponent("KLabel"),v=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(a).name,validate:t.unref(_),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(B,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(fo,{autosize:"",error:t.unref(x).error,"error-message":t.unref(x).errorMessage,label:t.unref(N),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(x).validate,"onUpdate:modelValue":t.unref(x).update},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(v,{"hide-icon":"",href:t.unref(pg).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(pg).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(y),"field-names":t.unref(g),items:t.unref(c),"onAdd:field":k,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":E},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),VD=Ae(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=Qr(o,r,!1),{i18n:d}=$e(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(N,C="key"){var x;f.value&&(await t.nextTick(),(x=f.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function g(){const N=l(),C=a.value.findIndex(({key:x})=>!x);m(C===-1?a.value.length-1:C),u.value=N}function _(N){var C;N.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(N.id),N.key.trim()!==""&&r("remove:field",N.key)}function h(N){p=N.key}function y(N){var C;if(b(N)){N.key=p,delete i.value[N.id];return}if(N.id===((C=u.value)==null?void 0:C.id)){if(N.key.trim()==="")return;u.value=null,r("add:field",N.key,N.value)}else r("rename:field",p,N.key);p=N.key}function k(N,C){var P;if(C.id===((P=u.value)==null?void 0:P.id))return;const x=N.target.value.trim();r("change:value",C.key,x)}function b(N){delete i.value[N.id];const C=o.fieldNameValidator("output",p,N.key);if(C)return i.value[N.id]=C,C}function E(N){b(N)}return t.watchEffect(()=>{u.value&&!a.value.some(N=>N.id===u.value.id)&&a.value.push(u.value)}),(N,C)=>{const x=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),A=t.resolveComponent("KButton"),B=t.resolveComponent("KInput"),v=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(P,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(w,F)=>(t.openBlock(),t.createBlock(v,{key:w.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${F}`},{actions:t.withCtx(()=>[t.createVNode(A,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${F}`,icon:"",onClick:S=>_(w)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(B,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${F}`,modelValue:w.key,"onUpdate:modelValue":[S=>w.key=S,S=>b(w)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${t.unref(c).path.value}.${F}`,error:!!i.value[w.id],"error-message":i.value[w.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:S=>E(w),onChange:S=>y(w),onFocus:S=>h(w)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(B,{modelValue:w.value,"onUpdate:modelValue":S=>w.value=S,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${F}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:S=>k(S,w)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(A,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-5e17f8cb"]]);function RD(e){const n={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?n[o]=JSON.stringify(r):n[o]=String(r);return n}function ua(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function DD(e,n,o){const r={};for(const i of Object.keys(e))i===n?r[o]=e[n]:r[i]=e[i];return r}const MD=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=Ye(),{fieldNameValidator:c}=dn(e.nodeId),d=un("static"),f=fg(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(E=>E.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const g=t.computed(()=>{var A;if(!u.value)return{};const b=((A=u.value.config)==null?void 0:A.values)??{},E={},N=o(u.value.id).map(B=>B.sourceField).filter(Boolean).map(B=>_n(u.value,"output",B)).map(B=>B==null?void 0:B.name).filter(Boolean),C=u.value.fields.output.map(B=>B.name),x=Object.keys(b);return new Set([...x,...N,...C]).forEach(B=>{if(B in b){E[B]=b[B];return}E[B]=""}),{name:u.value.name,values:RD(E)}});function _(b,E){if(!u.value)throw new Error("No selected node");const N=E!==void 0;if(r(e.nodeId,"output",b,!N),N){const C={values:ua({...g.value.values,[b]:E})};l(e.nodeId,C)}}function h(b,E){if(!u.value)throw new Error("No selected node");const N=yn(u.value,"output",b);if(!N)throw new Error("No field found to rename");const C={values:ua(DD(g.value.values??{},b,E))};l(e.nodeId,C,!1),i(e.nodeId,N.id,E)}function y(b){var C;if(!u.value)throw new Error("No selected node");const E=yn(u.value,"output",b);if(!E)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,E.id,!0,!1);const N={values:ua({...g.value.values})};delete N.values[b],l(e.nodeId,N)}function k(b,E){if(!u.value)throw new Error("No selected node");const N={...g.value.values};N[b]=E;const C={values:ua(N)};l(e.nodeId,C)}return(b,E)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:g.value,schema:t.unref(d)},{default:t.withCtx(()=>{var N;return[t.createVNode(ro,{name:((N=u.value)==null?void 0:N.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(VD,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":k,"onRemove:field":y,"onRename:field":h},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),LD={class:"dk-kong-property-item"},FD={class:"property-type"},UD={class:"property-badges"},KD=Ae(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=$e(),r=e,i=n,{formData:a}=Me(),l=t.ref(Ar(a.property)),s=t.computed(()=>Ir(a.property)),c=t.ref(ps(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(eo).map(([m])=>{var h;const g=Ir(m)?(h=a.property)==null?void 0:h.startsWith(m.replace(Bo,"")):a.property===m;return{label:g&&c.value?m.replace(Bo,c.value):m,value:m,selected:g}}));function u(m){const g=Qi.find(_=>{var h;return(h=a.property)==null?void 0:h.startsWith(_)});g&&(a.property=g+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Ar(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Ar(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=ps(m),l.value=Ar(m)}),(m,g)=>{const _=t.resolveComponent("KBadge"),h=t.resolveComponent("KSelect"),y=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(h,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=k=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:k})=>[t.createElementVNode("div",LD,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(k.label),1),t.createElementVNode("div",FD,t.toDisplayString(t.unref(eo)[k.value].dataType),1)]),t.createElementVNode("div",UD,[t.unref(eo)[k.value].readable?(t.openBlock(),t.createBlock(_,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(eo)[k.value].writable?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(y,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=k=>c.value=k),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=k=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),jD=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=Ye(),a=un("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,fieldNameValidator:_}=dn(e.nodeId,()=>n.value.getValue()),h=t.computed(()=>gs(l.value.property));function y(b){var N;const E=(N=o.value)==null?void 0:N.id;if(!E)throw new Error("Expected selectedNode to be defined");ms(b)||i(E,!1),gs(b)||r(E,!1),c()}const{fields:k}=Or({validationConfig:()=>({property:Ro({fieldName:"Property"}),key:Ir(l.value.property)?Ro({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:ps(l.value.property)}),toggleNodeValid:g});return(b,E)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(Tt,{name:"content_type",onUpdate:E[0]||(E[0]=N=>t.unref(c)())}),t.createVNode(KD,{validators:t.unref(k),"onUpdate:modelValue":y,"onUpdate:propertyKey":E[1]||(E[1]=N=>t.unref(c)("property-key"))},null,8,["validators"]),h.value?(t.openBlock(),t.createBlock(xn,{key:0,"field-name-validator":t.unref(_),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),GD=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=dn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=Or({validationConfig:{status:oo(Os("integer",{fieldName:"Status"}),$s(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),g=m("status",()=>a("status"));return(_,h)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(jn,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"status",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Jr,{name:"warn_headers_sent","onUpdate:modelValue":h[0]||(h[0]=y=>t.unref(a)())}),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function qD(e){const n=dn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=Ye(),{i18n:{t:l}}=$e(),s=tg(),c=tl(),d=t.computed(()=>{var b;const y={...n.formData.value},k=ir(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const E of k)(!(E in y)||y[E]==null)&&(y[E]=[]);return y});function f(y,k,b){const E=r(y),N=r(b),C=E?`${E.name}.${k}`:`${y}.${k}`,x=N?N.name:b;return[C,x]}function u(y){return(y==null?[]:Array.isArray(y)?y:[y]).filter(k=>xl(k))}function p(y,k){return i.wouldCreateCycle(y,k)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(y,k,b){const E=[],N=[],C=[];for(const x of b){const P=i.findMembership(x);if(!P||P.ownerId===y&&P.branch===k)continue;const A=i.getMembers(P.ownerId,P.branch).filter(B=>B!==x);C.push({ownerId:P.ownerId,branch:P.branch,members:A}),E.push(f(y,k,x)),N.push(f(P.ownerId,P.branch,x))}return{conflictUpdates:C,addedAssignments:E,removedAssignments:N}}function g(y,k,b,E){let N=!1;for(const C of E)N=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||N;return N=i.setMembers(y,k,b,{commit:!1})||N,N}async function _(y,k){const b=n.currentNode.value,E=u(k),N=i.prepareMembers(b.id,y,E),C=i.getMembers(b.id,y);if(Sl(C,N))return!0;const x=N.filter(w=>!C.includes(w));for(const w of x)if(p(b.id,w))return!1;const{conflictUpdates:P,addedAssignments:A,removedAssignments:B}=m(b.id,y,x);return P.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),A,B)?!1:(g(b.id,y,N,P)&&a(),!0)}const h=t.computed(()=>{const y=n.currentNode.value;return!y||!i?[]:o.value.nodes.filter(k=>k.id!==e&&!xt(k.type)&&k.phase===y.phase&&!i.wouldCreateCycle(y.id,k.id)).map(k=>({value:k.id,label:k.name,type:k.type}))});return{...n,formData:d,branchOptions:h,updateBranchMembers:_}}const zD=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=$e(),o=un("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:d,setInputs:f,inputsFieldNames:u,fieldNameValidator:p,updateBranchMembers:m}=qD(e.nodeId);async function g(_,h){await m(_,h)||(r.value+=1)}return(_,h)=>(t.openBlock(),t.createBlock(bt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Tt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:h[0]||(h[0]=y=>g("then",y))},{"item-label":t.withCtx(y=>[t.createVNode(da,{item:y},null,8,["item"])]),_:1},8,["items"]),t.createVNode(Tt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:h[1]||(h[1]=y=>g("else",y))},{"item-label":t.withCtx(y=>[t.createVNode(da,{item:y},null,8,["item"])]),_:1},8,["items"]),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),HD=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=un("cache"),{i18n:{t:r}}=$e(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=dn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:g}=Or({validationConfig:()=>({ttl:oo(Os("integer",{fieldName:"TTL"}),$s(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),_=g("ttl",()=>l("ttl"));return(h,y)=>(t.openBlock(),t.createBlock(bt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ro,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Jr,{name:"bypass_on_error","onUpdate:modelValue":y[0]||(y[0]=k=>t.unref(l)("bypass_on_error"))}),t.createVNode(jn,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"ttl",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),YD=["innerHTML"],WD={key:1,class:"branch-note"},XD={class:"branch-label"},ZD={class:"branch-text"},JD=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${om}px`},offsetTop:{default:`${NT}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{t:n}=Xe.createI18n("en-us",Je),{getNodeById:o,branchGroups:r}=Ye(),i=t.computed(()=>e.nodeId&&o(e.nodeId)),a=t.computed(()=>{if(e.nodeId)return r.findMembership(e.nodeId)}),l=t.computed(()=>{if(!a.value)return"";const d=o(a.value.ownerId);return d?`${d.name}.${a.value.branch}`:""});function s(){e.nodeId&&r.removeMember(e.nodeId)}const c=t.computed(()=>{var d;switch((d=i.value)==null?void 0:d.type){case"call":return TD;case"service_request":return OD;case"response":return $D;case"jq":return BD;case"static":return MD;case"property":return jD;case"exit":return GD;case"branch":return zD;case"cache":return HD;default:return null}});return(d,f)=>(t.openBlock(),t.createBlock(t.unref(Oe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(ET),onClose:f[0]||(f[0]=u=>d.$emit("close"))},t.createSlots({default:t.withCtx(()=>[i.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Ot)(i.value.type)},null,8,YD)):t.createCommentVNode("",!0),a.value?(t.openBlock(),t.createElementBlock("div",WD,[t.createElementVNode("span",XD,[t.createVNode(t.unref(Ee.ArrowSplitIcon),{color:t.unref(ko),size:t.unref(or)},null,8,["color","size"]),t.createElementVNode("span",ZD,t.toDisplayString(l.value),1)]),t.createVNode(t.unref(Oe.KTooltip),{placement:"top",text:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"none","aria-label":t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:s},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):t.createCommentVNode("",!0),c.value?(t.openBlock(),t.createBlock(t.unref(c),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(ig,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),QD=Ae(JD,[["__scopeId","data-v-208232f7"]]),eM={class:"dk-editor-content"},tM={class:"main"},nM=Ae(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=Ye();function r(){n.value=!1}t.watch(o,a=>{a||r()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,l)=>{var s;return t.openBlock(),t.createElementBlock("div",eM,[t.createVNode(t.unref(pD)),t.createElementVNode("div",tM,[t.createVNode(TR)]),t.createVNode(QD,{"node-id":(s=t.unref(o))==null?void 0:s.id,visible:t.unref(n),onClose:r},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),oM={key:0,class:"dk-editor-modal"},rM=Ae(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(CT)}px`,v30e03211:`${t.unref(nm)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=Ye();LV(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=He.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",oM,[t.createVNode(xR,{class:"nav",onBack:l}),t.createVNode(nM,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(kR,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),iM={class:"dk-flow-editor"},aM={class:"flow-panels-container"},lM={class:"overlay"},sM=Ae(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Je),{formData:r}=Me(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=ef(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),M1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",iM,[t.createElementVNode("div",aM,[t.createVNode(Ts,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",lM,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(Ee.ExpandIcon))]),_:1})])]),t.createVNode(rM,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]);function cM(e,n){const o=[],r=(i,a)=>{typeof a=="string"&&o.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&r(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&r(["inputs",i],a);if("output"in e&&e.output!=null&&r(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&r(["outputs",i],a);return o}function dM(e){const n=e.path[2];return n==="output"||n==="outputs"}function mg(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function gg(e,n){const o=e.input!==void 0&&e.input!==null,r=mg(e.inputs);o&&r&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=mg(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function hg(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of cM(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),dM(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const uM=re.z.enum(Mu),fM=re.z.enum(wo),yg=e=>wo.includes(e),Bs=re.z.enum(Lu),_g=Bs.options;re.z.union([Bs,uM]);const pM=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,bg=re.z.string().min(1).max(255).regex(pM,"Invalid node name (snake_case / kebab-case only)").refine(e=>!yg(e),"Name clashes with reserved implicit node").brand(),fa=re.z.union([fM,bg]),mM=re.z.string().min(1).brand(),gM=["then","else"];re.z.enum(gM);const ut=re.z.string().refine(e=>{if(fa.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return fa.safeParse(o).success&&mM.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),wg=re.z.enum(Fu),io=re.z.object({type:re.z.string(),name:bg,input:ut,inputs:re.z.record(re.z.string(),ut).nullish(),output:ut,outputs:re.z.record(re.z.string(),ut).nullish()}).loose().superRefine((e,n)=>{gg(e,n)}),hM=re.z.object({type:re.z.string(),name:re.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),_g.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${_g.join(", ")}`})}),yM=io.safeExtend({type:re.z.literal("call"),method:wg.nullish(),ssl_server_name:re.z.string().min(1).nullish(),timeout:re.z.number().int().min(0).max(2147483646).nullish(),url:re.z.url(),inputs:re.z.object({body:ut,headers:ut,query:ut}).partial().nullish(),outputs:re.z.object({body:ut,headers:ut,status:ut}).partial().nullish()}).strict(),_M=io.safeExtend({type:re.z.literal("exit"),status:re.z.number().int().min(200).max(599).nullish(),warn_headers_sent:re.z.boolean().nullish(),output:re.z.never().optional(),outputs:re.z.never().optional()}).strict(),bM=io.safeExtend({type:re.z.literal("jq"),jq:re.z.string().min(1).max(10240),outputs:re.z.never().optional()}).strict(),wM=io.safeExtend({type:re.z.literal("property"),content_type:re.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:re.z.string().min(1),inputs:re.z.never().optional(),outputs:re.z.never().optional()}).strict(),kM=io.safeExtend({type:re.z.literal("static"),values:re.z.record(re.z.string(),re.z.unknown()),input:re.z.never().optional(),inputs:re.z.never().optional()}).strict(),CM=io.safeExtend({type:re.z.literal("cache"),bypass_on_error:re.z.boolean().nullish(),inputs:re.z.object({data:ut,key:ut,ttl:ut}).partial().nullish(),outputs:re.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:re.z.number().int().gt(0).nullish()}).strict(),EM=io.safeExtend({type:re.z.literal("branch"),then:re.z.array(fa).nullish(),else:re.z.array(fa).nullish()}).strict(),NM=hM.pipe(re.z.discriminatedUnion("type",[yM,_M,bM,wM,kM,CM,EM])),xM=re.z.record(re.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),re.z.string().min(1).max(4095)),SM=re.z.object({dictionary_name:re.z.string().default("kong_db_cache")}),vM=re.z.object({host:re.z.string().default("127.0.0.1"),port:re.z.number().int().min(0).max(65535).default(6379)}),AM=re.z.object({ip:re.z.string().default("127.0.0.1"),port:re.z.number().int().min(0).max(65535).default(6379)}),IM=re.z.object({host:re.z.string().optional().default("127.0.0.1"),port:re.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:re.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:re.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:re.z.number().int().min(0).max(2147483646).default(2e3),username:re.z.string().optional(),password:re.z.string().optional(),sentinel_username:re.z.string().optional(),sentinel_password:re.z.string().optional(),database:re.z.number().int().optional().default(0),keepalive_pool_size:re.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:re.z.number().int().min(0).max(2147483646).optional(),sentinel_master:re.z.string().optional(),sentinel_role:re.z.enum(["master","slave","any"]).optional(),sentinel_nodes:re.z.array(vM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:re.z.array(AM).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:re.z.boolean().default(!1).optional(),ssl_verify:re.z.boolean().default(!1).optional(),server_name:re.z.string().optional(),cluster_max_redirections:re.z.number().int().default(5).optional(),connection_is_proxied:re.z.boolean().default(!1).optional(),timeout:re.z.number().int().optional(),sentinel_addresses:re.z.array(re.z.string()).min(1).optional(),cluster_addresses:re.z.array(re.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),PM=re.z.object({strategy:re.z.enum(["memory","redis"]).optional(),memory:SM,redis:IM}),TM=re.z.object({vault:xM.nullish(),cache:PM.nullish()});re.z.array(re.z.object({id:re.z.string()})),re.z.object({nodes:re.z.array(NM).min(1,"At least one node is required"),debug:re.z.boolean().nullish(),resources:TM.nullish()}).strict().superRefine((e,n)=>{hg(e,wo,n)});const kg=Bs.options,Vs=re.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!yg(e),"Node name conflicts with reserved implicit node"),ft=re.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const o=e.slice(0,n),r=e.slice(n+1);return o.length>0&&r.length>0},"Invalid connection"),ao=re.z.object({type:re.z.string(),name:Vs,input:ft.nullish(),inputs:re.z.record(re.z.string(),ft.nullish()).nullish(),output:ft.nullish(),outputs:re.z.record(re.z.string(),ft.nullish()).nullish()}).loose().superRefine((e,n)=>{gg(e,n)}),OM=re.z.object({type:re.z.string(),name:re.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),kg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${kg.join(", ")}`})}),$M=ao.safeExtend({type:re.z.literal("call"),method:wg.nullish(),ssl_server_name:re.z.string().nullish(),timeout:re.z.union([re.z.number(),re.z.string()]).nullish(),url:re.z.string().nullish(),inputs:re.z.object({body:ft.nullish(),headers:ft.nullish(),query:ft.nullish()}).partial().nullish(),outputs:re.z.object({body:ft.nullish(),headers:ft.nullish(),status:ft.nullish()}).partial().nullish()}).strict(),BM=ao.safeExtend({type:re.z.literal("exit"),status:re.z.union([re.z.number(),re.z.string()]).nullish(),warn_headers_sent:re.z.boolean().nullish(),output:re.z.never().optional(),outputs:re.z.never().optional()}).strict(),VM=ao.safeExtend({type:re.z.literal("jq"),jq:re.z.string().nullish(),outputs:re.z.never().optional()}).strict(),RM=ao.safeExtend({type:re.z.literal("property"),content_type:re.z.string().nullish(),property:re.z.string().nullish(),inputs:re.z.never().optional(),outputs:re.z.never().optional()}).strict(),DM=ao.safeExtend({type:re.z.literal("static"),values:re.z.record(re.z.string(),re.z.unknown()).nullish(),input:re.z.never().optional(),inputs:re.z.never().optional()}).strict(),MM=ao.safeExtend({type:re.z.literal("cache"),bypass_on_error:re.z.boolean().nullish(),inputs:re.z.object({data:ft.nullish(),key:ft.nullish(),ttl:ft.nullish()}).partial().nullish(),outputs:re.z.object({data:ft.nullish(),hit:ft.nullish(),miss:ft.nullish(),stored:ft.nullish()}).partial().nullish(),ttl:re.z.union([re.z.number(),re.z.string()]).nullish()}).strict(),LM=ao.safeExtend({type:re.z.literal("branch"),then:re.z.array(Vs).nullish(),else:re.z.array(Vs).nullish()}).strict(),FM=OM.pipe(re.z.discriminatedUnion("type",[$M,BM,VM,RM,DM,MM,LM])),UM=re.z.record(re.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),re.z.string().min(1).max(4095)),KM=re.z.object({dictionary_name:re.z.string().default("kong_db_cache")}),jM=re.z.object(),GM=re.z.object({strategy:re.z.enum(["memory","redis"]).optional(),memory:KM.optional(),redis:jM.optional()}),qM=re.z.object({vault:UM.nullish(),cache:GM.nullish()}),zM=re.z.object({nodes:re.z.array(FM).nullish(),debug:re.z.boolean().nullish(),resources:qM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||hg(e,wo,n)}).nullish(),HM={class:"dk-option-label"},YM={class:"dk-option-label"},WM=["innerHTML"],XM=Ae(t.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Xe.createI18n("en-us",Je),o=e,r=t.inject(pn.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(pn.DATAKIT_M2,!1),a=t.ref(!1);t.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:l}=gi(),s=t.computed(()=>r&&f.value?l.value:"code"),c=t.computed(()=>i?s.value==="flow"?"form":"code":"form"),d={flow:Ee.DesignIcon,code:Ee.CodeblockIcon},f=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!f.value,b}),p=t.computed(()=>{switch(s.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),m=t.computed(()=>n(i?"plugins.free-form.datakit.plugin_config.title":"plugins.form.sections.plugin_config.title"));t.watch(s,()=>{var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function g(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function _(){g()}function h(b){g();let E=b;i&&(E=b==null?void 0:b.config);const{success:N}=zM.safeParse(E);let C=N;!i&&C&&(C=!y(b)),f.value=C}function y(b){var N,C;return!!((N=b==null?void 0:b.resources)!=null&&N.vault||((C=b==null?void 0:b.nodes)==null?void 0:C.some(x=>x.type==="branch"||x.type==="cache")))}function k(b){var E;f.value=!1,(E=o.onValidityChange)==null||E.call(o,{model:"config",valid:!1,error:b})}return(b,E)=>{const N=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(i)&&t.unref(r)?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref(Oe.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":s.value,options:u.value,"onUpdate:modelValue":E[0]||(E[0]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(N,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",HM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(Od,t.mergeProps(o,{class:"dk-form","editor-mode":c.value}),t.createSlots({"code-editor":t.withCtx(()=>[t.createVNode(Du,{class:"code-editor",editing:o.isEditing,onChange:h,onError:k},null,8,["editing"])]),"plugin-config-title":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(m.value),1)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:p.value},null,8,WM)]),default:t.withCtx(()=>[s.value==="flow"?(t.openBlock(),t.createBlock(sM,{key:0,"is-editing":o.isEditing,onChange:_},null,8,["is-editing"])):s.value==="code"&&!t.unref(i)?(t.openBlock(),t.createBlock(Du,{key:1,class:"code-editor",editing:o.isEditing,onChange:h,onError:k},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},[t.unref(r)&&!t.unref(i)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Oe.KSegmentedControl),{"model-value":s.value,options:u.value,"onUpdate:modelValue":E[1]||(E[1]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(N,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",YM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040,["editor-mode"])],64)}}}),[["__scopeId","data-v-a7e4e7b1"]]),Cg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))typeof o=="string"&&(e[n]=o.split(/\s*,\s*/).filter(Boolean))},Eg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},ZM=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ve.useI18n(),l={prepareFormData:c=>{var f,u;const d=Dn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Eg(p.headers),Eg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=Dn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Cg(p.headers),Cg(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(bt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config","reset-label-path":"reset"},{default_acl:t.withCtx(({name:f})=>[t.createVNode(Wo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.default_acl_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),tools:t.withCtx(({name:f})=>[t.createVNode(Wo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(ti)]),_:1},8,["data","schema"]))}}),JM=t.defineComponent({__name:"AIMcpProxyForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Qa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(ZM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),QM=Ae(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:o}=Me(),r=o("config"),i=t.computed(()=>{var _;const a=[],l=[],s=new Set,d=n().fields.find(h=>Object.keys(h)[0]==="config");if(!d||!("config"in d))return{defaultVisible:a,advanced:l};const f=d.config;f.entity_checks&&f.entity_checks.forEach(h=>{var k,b;let y;"at_least_one_of"in h?y=h.at_least_one_of:"conditional"in h&&((k=n(Ze("config",h.conditional.if_field)))!=null&&k.required)&&h.conditional.then_match.required?y=[h.conditional.if_field,h.conditional.then_field]:"conditional_at_least_one_of"in h&&((b=n(Ze("config",h.conditional_at_least_one_of.if_field)))!=null&&b.required)&&(y=[h.conditional_at_least_one_of.if_field,...h.conditional_at_least_one_of.then_at_least_one_of]),y==null||y.forEach(E=>s.add(E))});const u=((_=r.value)==null?void 0:_.bundles)??[],p=new Map;for(const h of u)for(let y=1;y<h.length;y++)p.set(h[y],h[y-1]);const m=h=>{const y=p.get(h);return y?m(y):h},g=new Map;for(const h of f.fields){const y=Object.keys(h)[0];g.set(y,m(y))}for(const h of f.fields){const y=Object.keys(h)[0];if(g.get(y)!==y)continue;let b;h[y].required||s.has(y)?b=a:b=l,b.push(y)}for(const h of f.fields){const y=Object.keys(h)[0],k=g.get(y);k!==y&&(a.includes(k)?a:l).push(y)}return{defaultVisible:a,advanced:l}});return(a,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Ct,{"as-child":"",name:"config",omit:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(ti,{class:"ff-advanced-fields","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Ct,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1})],64))}}),[["__scopeId","data-v-f5897284"]]),Ng=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:JM,CommonForm:t.defineComponent({__name:"CommonForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const n=e,o=t.useSlots();return t.provide(De.AUTOFILL_SLOT,o==null?void 0:o[De.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Od,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(QM)]),_:1},16))}}),DatakitForm:XM,RequestCalloutForm:Gk,ServiceProtectionForm:EC},Symbol.toStringTag,{value:"Module"}));function eL(e,n){const o=vt[e];if(!o||!o.fieldRules)return n;const r=tL(o.fieldRules),i={...n};return i.fields=i.fields.map(a=>Object.keys(a)[0]==="config"?{config:{...a.config,entity_checks:[...a.config.entity_checks||[],...r]}}:a),i}function tL(e){const n=[],o=r=>r.startsWith("config.")?r.substring(7):r;return e.atLeastOneOf&&e.atLeastOneOf.forEach(r=>{n.push({at_least_one_of:r.map(o)})}),e.onlyOneOf&&e.onlyOneOf.forEach(r=>{n.push({mutually_exclusive:r.map(o)})}),e.mutuallyRequired&&e.mutuallyRequired.forEach(r=>{n.push({mutually_required:r.map(o)})}),e.onlyOneOfMutuallyRequired&&e.onlyOneOfMutuallyRequired.forEach(r=>{if(r.forEach(i=>{n.push({mutually_required:i.map(o)})}),r.length>1)for(let i=0;i<r.length;i++)for(let a=i+1;a<r.length;a++){const l=r[i].map(o),s=r[a].map(o);l.forEach(c=>{s.forEach(d=>{n.push({mutually_exclusive:[c,d]})})})}}),n}const nL={class:"kong-ui-entities-plugin-form"},oL={key:1,class:"entity-form"},rL={class:"plugin-config-empty-state"},iL=Ae(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var me,ye;const o=Object.keys(De.sharedForms),r=Object.keys(Ng);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=ge.useAxios((me=a.config)==null?void 0:me.axiosRequestConfig),{parseSchema:s}=Ve.useSchemas({entityId:((ye=a.entityMap.focusedEntity)==null?void 0:ye.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=Ve.usePluginHelpers(),m=Ve.useExperimentalFreeForms(),{objectsAreEqual:g}=ge.useHelpers(),{i18n:{t:_}}=$e(),h=ie=>a.config.app==="konnect"?ie.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?ie.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):ie,y=(ie,oe)=>{let le=`${a.config.apiBaseUrl}${Ke.form[a.config.app].entityGetOne}`;return le=h(le),le=le.replace(/{entity}/gi,ie),le=le.replace(/{id}/gi,oe),le},k=ie=>{let oe=`${a.config.apiBaseUrl}${Ke.form[a.config.app].entityGetAll}`;return oe=h(oe),oe=oe.replace(/{entity}/gi,ie),oe},b=(ie,oe,le)=>{const de=y(ie,oe);return l.get(de,le)},E=(ie,oe)=>{const le=k(ie);return a.config.app==="konnect"?l.get(le).then(de=>{const{data:{data:$}}=de;if(delete oe.size,delete oe.offset,$.length&&Object.keys(oe).length===1){const I=Object.keys(oe)[0],D=$.filter(R=>R[I]?!!R[I].toLowerCase().includes(oe[I].toLowerCase()):!1);de.data.data=D}return de}):l.get(le,{params:oe})},N=(ie,oe,le)=>{const de=k(ie);if(a.config.app==="konnect"){const{size:$,offset:I,...D}=oe;if(ie==="consumer_groups")return l.get(de,{params:{size:1e3},signal:le}).then(ee=>{const{data:{data:J}}=ee;if(J.length&&Object.keys(D).length===1){const Z=Object.keys(D)[0],z=J.filter(ae=>ae[Z]?!!ae[Z].toLowerCase().includes(D[Z].toLowerCase()):!1);ee.data.data=z}return ee});const R={size:$,offset:I};for(const ee of Object.keys(D))R.filter={[ee]:{contains:D[ee]}};return l.get(de,{params:R,signal:le})}return l.get(de,{params:oe,signal:le})},C=(ie,oe=50)=>{const le=k(ie);return l.get(le,{params:{size:oe}})};t.provide(De.FORMS_API_KEY,{getOne:b,getAll:E,getAllV2:N,peek:C}),t.provide(De.FORMS_CONFIG,a.config);const x=t.ref(""),P=t.ref(""),A=t.ref(null),B=t.ref({}),v=t.reactive({}),w=t.reactive({}),F=t.computed(()=>{var ie;return(ie=A.value)==null?void 0:ie.options}),S=t.computed(()=>eL(w.name,a.rawSchema)),M=t.ref(!1),O=t.ref(),j=(ie,oe)=>{M.value=ie??"",O.value=oe},W=ie=>{var oe;(oe=O.value)==null||oe.call(O,ie),M.value=!1},L=()=>{var D,R;const ie={...a.schema},oe=w,le=v,de=Object.keys(oe),$={};if(!u(B.value))for(let ee=0;ee<((R=(D=B.value)==null?void 0:D.fields)==null?void 0:R.length);ee++)ie[B.value.fields[ee].model]=B.value.fields[ee];De.customFields.forEach(ee=>{ie[ee]&&(ie[ee].fields.forEach(J=>{J.fields&&J.fields.forEach(Z=>{ie[Z.model]=Z}),J.model&&(ie[J.model]=J)}),delete ie[ee])}),de.forEach(ee=>{var be;if(!ie[ee]){ee==="partials"&&($[ee]=oe[ee]);return}const J=ie[ee];let Z=oe[ee];const z=le[ee],ae=Array.isArray(Z)?"array":typeof Z,H=J?J.valueType:null,Y=J?J.valueArrayType:null,Q=J?J.transform:null;if(Z==null&&z==null&&!J.submitWhenNull)return;if(J){if(H&&ae!==H)switch(H){case"array":ae==="string"&&Z.length&&(Z=Z.split(",").map(te=>{if(te=te.trim(),Y==="string")return String(te);if(Y==="number")return Number(te);if(Y==="boolean"){if(typeof te=="string")return te.toLowerCase()==="true"||te==="1";if(typeof te=="number")return te===1}return te})),(!Z||!Z.length)&&(Z=J.submitWhenNull?null:[]);break;case"number":J.referenceable!==!0&&(Z=Number(Z));break;case"boolean":ae==="string"&&(Z=Z.toLowerCase()==="true"||Z==="1"),ae==="number"&&(Z=Z===1);break;case"string":Z=Z==null?"":String(Z);break}else H==="array"&&(!Z||!Z.length?Z=J.submitWhenNull?null:[]:((be=J.inputAttributes)==null?void 0:be.type)==="number"&&(Z=Z.map(te=>Number(te))));if(J.type==="array"&&J.nestedFields){const te=_e=>{Object.keys(_e).forEach(Ne=>{_e[Ne]&&typeof _e[Ne]=="object"&&!Array.isArray(_e[Ne])&&_e[Ne]!==null?te(_e[Ne]):(_e[Ne]===void 0||_e[Ne]===null||typeof _e[Ne]=="number"&&isNaN(_e[Ne])||typeof _e[Ne]=="string"&&_e[Ne].trim().length===0)&&delete _e[Ne]})};Z&&typeof Z=="object"&&te(Z)}J.type==="object-advanced"&&J.fields&&Z!==null&&(Object.entries(Z).length===0?Z=null:Object.keys(Z).forEach(te=>{Array.isArray(Z[te])||(Z[te]=Z[te].split(","))}))}let ce=c(ee);if(J.fieldNameHasDashes){const[te,..._e]=ce.split(".").reverse();ce=[te.replace(/_/g,"-"),..._e].reverse().join(".")}if(H==="object-expand"){let te;[ce,te]=ce.split(".");let _e={};$[ce]&&(_e=$[ce]),_e[te]=Z,Z=_e}z!==void 0&&Z===""&&Z!==z?$[ce]=H==="object"?{}:null:J.type==="checklist"&&Z===""?$[ce]=[]:Z!==""&&($[ce]=Z),$[ce]=Q?Q(Z):$[ce],p(ce,$)});const I=d($);return P.value&&Object.assign(I,se.value),I},U=(ie,oe={})=>{f(w,oe,ie,a.editing),i("model-updated",{model:w,originalModel:v,data:L()})},T=(ie,oe)=>{var $;const le={[oe]:ie};typeof(($=a.schema[oe])==null?void 0:$.modelTransformer)=="function"&&(le[oe]=a.schema[oe].modelTransformer(ie));const de=Object.assign({},w,le);Object.assign(w,de),i("model-updated",{model:w,originalModel:v,data:L()})},V=ie=>{i("validity-change",ie)},G=(ie,oe)=>{Object.keys(ie).forEach(le=>{var R,ee;let de=oe?`${oe}-${le}`:le,$=a.schema[de];if(!$){const J=oe?`${oe}-${le.replace(/-/g,"_")}`:le.replace(/-/g,"_");(R=a.schema[J])!=null&&R.fieldNameHasDashes&&(de=J,$=a.schema[de]),oe&&((ee=a.schema[oe])==null?void 0:ee.keyFromObject)===le&&(de=oe,$=a.schema[de])}const I=ie[le],D=typeof I;if($&&$.type==="object-advanced"&&!I){w[de]={},v[de]={};return}if(Array.isArray(I)){w[de]=JSON.parse(JSON.stringify(I)),v[de]=JSON.parse(JSON.stringify(I));return}if(D==="object"&&I&&!I.length)return G(I,de);if(D==="object"&&I&&I.length&&$.type==="input"){w[de]=I.join(", "),v[de]=I.join(", ");return}w[de]=I,v[de]=I}),i("model-updated",{model:w,originalModel:v,data:L()})},se=t.shallowRef(a.record),K=ie=>{se.value=ie,i("model-updated",{model:{...w,...ie},originalModel:v,data:L()})},q=t.ref(!0),ne=()=>{var ie;if(a.record&&a.schema&&(G({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&G({consumer_id:a.record.consumer_id||a.record.consumer}),G(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&G({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),a.record.partials&&U("redis",{partials:a.record.partials}),P.value?K(a.record):G(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const oe={};for(const le in a.entityMap){const de=a.entityMap[le].id,$=a.entityMap[le].idField,I=$==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify($).replace("_","-"));Object.prototype.hasOwnProperty.call(w,I)&&(oe[I]=de)}G(oe)}if((ie=a.entityMap.consumer)!=null&&ie.id&&a.schema&&a.credential){const oe={};Object.prototype.hasOwnProperty.call(w,"consumer")&&(oe.consumer=a.entityMap.consumer.id),G(oe)}q.value=!1};return t.watch(q,ie=>{i("loading",ie)}),t.watch(()=>a.schema,(ie,oe)=>{var de,$;if(g(ie||{},oe||{}))return;const le=s(ie,void 0,void 0,a.engine);Object.assign(w,le.model),B.value={fields:($=(de=B.value)==null?void 0:de.fields)==null?void 0:$.map(I=>({...I,disabled:I.disabled||!1}))},Object.assign(v,JSON.parse(JSON.stringify(le.model))),P.value=a.engine?a.engine==="vfg"?void 0:ja(le.model.name,m)||"CommonForm":ja(le.model.name,m),x.value=De.getSharedFormName(le.model.name),ne()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var ie,oe;A.value=s(a.schema,void 0,void 0,a.engine),Object.assign(w,((ie=A.value)==null?void 0:ie.model)||{}),B.value=((oe=A.value)==null?void 0:oe.schema)||{},ne()}),(ie,oe)=>{var de,$;const le=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",nL,[q.value?(t.openBlock(),t.createBlock(le,{key:0,type:"form"})):w.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",oL,[P.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Ng[P.value]),{key:0,"form-model":w,"form-options":F.value,"form-schema":B.value,"is-editing":e.editing,model:e.record,"on-form-change":K,"on-model-updated":T,"on-validity-change":V,"plugin-name":w.name,"render-rules":(de=t.unref(vt)[w.name])==null?void 0:de.freeformRenderRules,schema:S.value,onGlobalAction:oe[0]||(oe[0]=(I,D)=>ie.$emit("globalAction",I,D))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(I=>[I.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Do.VaultSecretPickerProvider),t.mergeProps({key:0},I,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","plugin-name","render-rules","schema"])):x.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(De.sharedForms)[x.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":w,"form-options":F.value,"form-schema":B.value,"is-editing":e.editing,"on-model-updated":T,"on-partial-toggled":U,"show-new-partial-modal":I=>ie.$emit("showNewPartialModal",I)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(I=>[I.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Do.VaultSecretPickerProvider),t.mergeProps({key:0},I,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(De.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:w,options:F.value,schema:B.value,onModelUpdated:T,onPartialToggled:U,onRefreshModel:L,onShowNewPartialModal:oe[1]||(oe[1]=I=>ie.$emit("showNewPartialModal",I))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",rL,t.toDisplayString(t.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[($=t.unref(vt)[w.name])!=null&&$.fieldRules&&(a.config.isNewOtelSchema||w.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(q0,{rules:t.unref(vt)[w.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(De.AUTOFILL_SLOT_NAME),fn:t.withCtx(I=>[I.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Do.VaultSecretPickerProvider),t.mergeProps({key:0},I,{onOpen:j}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Do.VaultSecretPicker),{config:a.config,setup:M.value,onCancel:oe[2]||(oe[2]=()=>M.value=!1),onProceed:W},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-00037786"]]),aL={key:1},lL=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,o)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",aL,[t.renderSlot(n.$slots,"default")]))}}),sL={class:"kong-ui-entities-plugin-form-container"},cL={key:0},dL={class:"plugin-form-actions"},uL=Ae(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var Z;const o=n,r=e,i=vn.useRouter(),{i18n:{t:a}}=Ve.useI18n(),{customSchemas:l,typedefs:s}=Ve.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ve.usePluginHelpers(),{getMessageFromError:d}=ge.useErrors(),{capitalize:f}=ge.useStringHelpers(),{objectsAreEqual:u}=ge.useHelpers(),{axiosInstance:p}=ge.useAxios((Z=r.config)==null?void 0:Z.axiosRequestConfig),m=t.ref(!1),g=t.computed(()=>!!r.pluginId),_=t.computed(()=>r.pluginId?ge.EntityBaseFormType.Edit:ge.EntityBaseFormType.Create),h=t.ref(void 0),y=t.ref(void 0),k=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),E=t.ref({}),N=t.ref(),C=t.ref();t.provide(ni,{redisType:N,redisPath:C,isEditing:g.value});const x=t.ref(!1),P=t.reactive({enabled:!0,protocols:[],tags:[]}),A=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),B=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&B.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"}),(r.config.app==="kongManager"||r.config.enableDeckTab)&&B.value.push({title:a("view_configuration.deck"),hash:"#deck"});const v=t.ref(""),w=t.computed(()=>{var ae;if(k.value){let H=Ke.form[r.config.app].credential[_.value];return H=H.replace(/{resourceEndpoint}/gi,O.value),H}let z;return r.config.entityType&&r.config.entityId?z=Ke.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):z=Ke.form[r.config.app].edit.all,r.config.app==="konnect"&&((ae=vt[r.pluginType])!=null&&ae.useUIData)?`${z}?__ui_data=true`:z}),F=()=>{m.value=!m.value},S=t.computed(()=>{var ce,be,te,_e,Ne,pe,fe,je;const z=r.config.entityType==="consumers"&&r.config.entityId||((be=(ce=b.value)==null?void 0:ce.consumer)==null?void 0:be.id),ae=r.config.entityType==="consumer_groups"&&r.config.entityId||((_e=(te=b.value)==null?void 0:te.consumer_group)==null?void 0:_e.id),H=r.config.entityType==="services"&&r.config.entityId||((pe=(Ne=b.value)==null?void 0:Ne.service)==null?void 0:pe.id),Y=r.config.entityType==="routes"&&r.config.entityId||((je=(fe=b.value)==null?void 0:fe.route)==null?void 0:je.id);if(!(z||ae||H||Y))return{global:{entity:X.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const Q={};return H&&(Q.service={entity:X.PluginScope.SERVICE,entityEndpoint:"services",id:H,idField:In.SERVICE}),Y&&(Q.route={entity:X.PluginScope.ROUTE,entityEndpoint:"routes",id:Y,idField:In.ROUTE}),z&&(Q.consumer={entity:X.PluginScope.CONSUMER,entityEndpoint:"consumers",id:z,idField:In.CONSUMER}),ae&&(Q.consumer_group={entity:X.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:ae,idField:In.CONSUMER_GROUP}),r.config.entityType&&(Q.focusedEntity={entity:X.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:In[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),Q}),M=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||_.value===ge.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),O=t.computed(()=>{var H;const z=r.developer?"developers":"consumers",ae=((H=so[r.pluginType])==null?void 0:H.endpoint)||"/plugins";return`${z}/${r.config.entityId}${r.developer?"/credentials":""}${ae}`}),j=z=>{const ae=Array.from(new Set(z.map(H=>typeof H)));return ae.length>1?"string":ae[0]},W=(z,ae,H,Y)=>{var te,_e;let Q=ae&&ae.fields||[];const ce=l[r.pluginType],be=(_e=(te=so[r.pluginType])==null?void 0:te.schema)==null?void 0:_e.fields;return Array.isArray(Q)&&(Q=Q.reduce((Ne,pe)=>{const fe=Object.keys(pe)[0];return fe.match(/-/g)?Ne[fe.replace(/-/g,"_")]={...pe[fe],fieldNameHasDashes:!0}:Ne[fe]=pe[fe],Ne},{})),Object.keys(Q).sort().forEach(Ne=>{var lt,ht,Wt,Sn,fn,st,ue;const pe=Q[Ne];pe.type==="set"&&(pe.type="array");const fe=z?`${z}-${Ne}`:`${Ne}`;if((lt=ce==null?void 0:ce.fieldsToDelete)!=null&&lt.includes(fe)){fd(H,fe);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return W(fe,pe.schema,H);if(pe.fields)return Y&&pe.type==="record"?(H[fe]={type:"object",model:Ne,schema:{fields:Object.values(W(fe,pe,{},!0))}},H):W(fe,pe,H);if(H[fe]={id:fe,model:Ne},H[fe].type=pe.type==="boolean"?"checkbox":"input",H[fe].required=pe.required,H[fe].referenceable=pe.referenceable,fe.startsWith("config-"))if(!Y&&pe.type==="array"&&(v.value=fe),Y&&v.value&&fe.startsWith(v.value)){const he=fe.slice(v.value.length+1);H[fe].label=he.split("-").map(c).join(".")}else H[fe].label=c(fe);if((z==="config"||z.startsWith("config-"))&&(ht=Q[Ne])!=null&&ht.description&&(H[fe].help=Br.marked.parse(Q[Ne].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(H[fe].type="object-advanced",H[fe].values=pe.values,pe.values.type==="array"){const{type:he}=pe.values.elements||{};H[fe].schema={fields:[{schema:{fields:[{...Be,model:fe,valueArrayType:he==="integer"?"number":he||"string",inputAttributes:{...Be.inputAttributes,type:he==="integer"?"number":"text",inputMode:he==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(H[fe].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(he=>{const Ce=Object.keys(he)[0];return{model:Ce,type:"input",label:f(Ce),placeholder:Ce,inputType:he[Ce].type}})}}]});return H}if(pe.enum&&pe.type==="array"&&(H[fe].type="checklist",H[fe].values=pe.enum,H[fe].multi=!0,H[fe].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(H[fe].type="select",H[fe].values=pe.one_of,H[fe].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const he=pe.elements;if(H[fe].referenceable=he.referenceable,H[fe].elements=he,["string","integer","number"].includes(he.type)&&!he.one_of){const{id:Ce,help:ke,label:we,hint:xe,values:Te,referenceable:ze,model:Ge}=H[fe],{inputAttributes:Fe,...We}=JSON.parse(JSON.stringify(Be));Fe.type=he.type==="string"?"text":"number",H[fe]={id:Ce,help:ke,label:we,hint:xe,values:Te,referenceable:ze,model:Ge,inputAttributes:Fe,...We}}}if(pe.hint&&(H[fe].hint=pe.hint),ce&&!ce.overwriteDefault&&Object.keys(ce).forEach(he=>{if(he===fe){const{help:Ce,label:ke,hint:we,values:xe,referenceable:Te,elements:ze}=H[fe],{help:Ge,...Fe}=ce[he];H[fe]={help:Ce,label:ke,hint:we,values:xe,referenceable:Te,elements:ze,...Fe},typeof Ge=="string"&&(H[fe].help=Br.marked.parse(Ge,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((Wt=pe.elements)==null?void 0:Wt.type)==="record"&&Array.isArray(pe.elements.fields)){let he={};for(const ke of pe.elements.fields)he={...he,...ke};const Ce=(st=(fn=(Sn=H[fe])==null?void 0:Sn.items)==null?void 0:fn.schema)==null?void 0:st.fields;if(Array.isArray(Ce))for(const ke of H[fe].items.schema.fields){const we=(ue=he[ke.model])==null?void 0:ue.description;ke.help===void 0&&typeof we=="string"&&(ke.help=Br.marked.parse(we,{mangle:!1,headerIds:!1}))}if(Ce||(H[fe].type="array",H[fe].newElementButtonLabelClasses="kong-form-new-element-button-label",H[fe].fieldClasses="array-card-container-wrapper",H[fe].itemContainerComponent="FieldArrayCardContainer",H[fe].items={type:"object",schema:{fields:Object.values(W(fe,pe.elements,{},!0))}},H[fe].items.schema.fields.forEach(ke=>{var we,xe;for(const Te of pe.elements.fields){const ze=Object.keys(Te)[0],Ge=((xe=(we=ke.id)==null?void 0:we.split)==null?void 0:xe.call(we,"-"))??[];if(Ge[Ge.length-1]===ze){ke.model=ze,ke.label=c(ze);break}}}),pe.elements.type==="record"&&(H[fe].nestedFields=!0)),!H[fe].nestedFields)H[fe].items.default=()=>pe.elements.fields.reduce((ke,we)=>{const xe=Object.keys(we)[0];return ke[xe]=we[xe].default,ke},{});else{const ke=(we,xe)=>{if(we.type==="object"){we.model&&(xe[we.model]={});for(const Te of we.schema.fields)ke(Te,we.model?xe[we.model]:xe)}else we.model&&(xe[we.model]=we.default)};H[fe].items.default=()=>{const we={};return ke(H[fe].items,we),we}}}if(k.value&&be){for(let he=0;he<be.length;he++)if(be[he][fe]){H[fe]={...H[fe],...be[he][fe]};break}}if(pe.required&&pe.type!=="boolean"&&(H[fe].required=!0,H[fe].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(H[fe].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(H[fe].default=pe.default),H[fe].type==="input"){["string","number"].includes(typeof H[fe].default)&&r.config.app==="konnect"&&(H[fe].placeholder=`Default: ${H[fe].default===""?"<empty string>":H[fe].default}`);const{type:he}=pe.elements||{};he&&(H[fe].valueArrayType=he==="integer"?"number":he),H[fe].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let je="string";pe.enum?je=j(pe.enum):pe.type==="boolean"?je="boolean":pe.type==="number"||pe.type==="integer"?(je="number",H[fe].inputType="number"):pe.type==="array"?(je="array",H[fe].default=pe.default,pe.len_min>0&&(H[fe].submitWhenNull=!0)):pe.type==="foreign"?je="object":pe.default&&Array.isArray(pe.default)?(je="array",H[fe].valueArrayType=j(pe.default)):pe.default&&(je=typeof pe.default),H[fe].valueType=je,pe.fieldNameHasDashes&&(H[fe].fieldNameHasDashes=!0)}),H},L=()=>{var fe,je,lt,ht,Wt,Sn,fn,st,ue,he,Ce,ke;const z=((fe=vt[r.pluginType])==null?void 0:fe.scope.includes(X.PluginScope.SERVICE))??!0,ae=((je=vt[r.pluginType])==null?void 0:je.scope.includes(X.PluginScope.ROUTE))??!0,H=((lt=vt[r.pluginType])==null?void 0:lt.scope.includes(X.PluginScope.CONSUMER))??!0,Y=r.config.disableConsumerGroupScope?!1:((ht=vt[r.pluginType])==null?void 0:ht.scope.includes(X.PluginScope.CONSUMER_GROUP))??!0,Q=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Sn=(Wt=b.value)==null?void 0:Wt.consumer)!=null&&Sn.id),ce=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((st=(fn=b.value)==null?void 0:fn.consumer_group)!=null&&st.id),be=r.config.entityType==="services"&&!!r.config.entityId||!!((he=(ue=b.value)==null?void 0:ue.service)!=null&&he.id),te=r.config.entityType==="routes"&&!!r.config.entityId||!!((ke=(Ce=b.value)==null?void 0:Ce.route)!=null&&ke.id),_e=[],Ne=(we,xe,Te)=>we?a("plugins.form.disable_source_scope_change",{scope:Te}):xe?a("plugins.form.disable_data_retrieving",{scope:Te}):"",pe=we=>{var xe,Te;return((Te=(xe=r.scopedEntitiesPermissions)==null?void 0:xe[we])==null?void 0:Te.canRetrieve)===!1};if(z){const we=pe("service"),xe="services",Te=be&&r.disableScopeSelection;_e.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:xe,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(ae){const we=pe("route"),xe="routes",Te=te&&r.disableScopeSelection;_e.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:xe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(H){const we=pe("consumer"),xe="consumers",Te=Q&&r.disableScopeSelection;_e.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:xe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(Y){const we=pe("consumer_group"),xe="consumer_groups",Te=ce&&r.disableScopeSelection;_e.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:xe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:Te||we,disabledTooltip:Ne(Te,we,xe)})}if(_e.length){const we=[...z?["service"]:[],...ae?["route"]:[],...H?["consumer"]:[],...Y?["consumer_group"]:[]],Te=we.splice(we.length-2,2).map(Ge=>a(Ge==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ge}.plural`)).join(`${we.length>0?",":""} and/or `),ze=["Specific",[...we.length>0?[we.map(Ge=>a(Ge==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Ge}.plural`)).join(", ")]:[],Te].join(", ")].join(" ");M.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:ze,fields:[]}),M.selectionGroup.fields[1].fields=_e}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(M,l[r.pluginType].formSchema)},U=t.computed(()=>!u(A.fields,P,!0)),T=t.computed(()=>!ee.value&&!x.value&&(_.value===ge.EntityBaseFormType.Create||U.value)),V=t.ref(!1),G=t.ref(),se=z=>{r.credential&&z.password&&(z.password=""),A.fields.id=(z==null?void 0:z.id)||void 0,G.value=z==null?void 0:z.ordering,Object.assign(P,A.fields),b.value=z,V.value=!0},K=t.ref({}),q=z=>{var ae;A.fields=z.model,A.fields.id=((ae=b.value)==null?void 0:ae.id)||void 0,Object.assign(P,z.originalModel),K.value=z.data,r.isWizardStep&&o("model-updated",{model:A.fields,data:z.data,resourceEndpoint:O.value})},ne=t.ref(new Map),me=t.computed(()=>[A.clientErrorMessage,A.serverErrorMessage].filter(Boolean).join("; ")),ye=z=>{z.valid?ne.value.delete(z.model):ne.value.set(z.model,z.error),A.clientErrorMessage=[...ne.value.entries()].map(([ae,H])=>`${ae}: ${typeof H=="string"?H:d(H)}`).join("; "),A.clientErrorMessage&&(A.serverErrorMessage="")};t.watch([S,V],(z,ae)=>{const H=z[0]!==ae[0],Y=z[1],Q=ae[1];if(!k.value&&_.value===ge.EntityBaseFormType.Edit&&(H||Y&&Y!==Q)){const ce=W("config",E.value,M);le.value&&(ce._isCustomPlugin=!0),N.value&&(ce._supported_redis_partial_type=N.value),y.value=ce}},{deep:!0});const ie=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},oe=t.computed(()=>{const z=r.config.entityType&&r.config.entityId&&!r.developer,ae=k.value?Ke.form[r.config.app].credential[_.value]:Ke.form[r.config.app][_.value][z?"forEntity":"all"];let H=`${r.config.apiBaseUrl}${ae}`;return r.config.app==="konnect"?H=H.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(H=H.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),H=H.replace(/{resourceEndpoint}/gi,O.value),H=H.replace(/{id}/gi,r.pluginId),H=H.replace(/{entityType}/gi,r.config.entityType||""),H=H.replace(/{entityId}/gi,r.config.entityId||""),H}),le=t.computed(()=>!Object.keys(vt).includes(r.pluginType)),de=t.computed(()=>{const z=K.value;if(k.value){for(const ae in X.PluginScope){const H=X.PluginScope[ae];z[H]&&!z[H].id&&(z[H]={id:r.config.entityId})}delete z.created_at}return K.value.partials&&C.value&&fd(z,C.value),z}),$=t.computed(()=>{const{__ui_data:z,...ae}={...de.value};return ae}),I=async()=>{if(!A.clientErrorMessage&&!r.isWizardStep)try{A.isReadonly=!0;let z;const ae=JSON.parse(JSON.stringify(de.value)),H=l[r.pluginType];typeof(H==null?void 0:H.shamefullyTransformPayload)=="function"&&H.shamefullyTransformPayload({originalModel:P,model:A.fields,payload:ae,schema:y.value}),_.value==="create"?z=await p.post(oe.value,ae):_.value==="edit"&&(z=r.config.app==="konnect"||N.value&&ae.partials?await p.put(oe.value,Object.assign({ordering:G.value},ae)):await p.patch(oe.value,ae)),Object.assign(P,A.fields),o("update",z==null?void 0:z.data)}catch(z){A.serverErrorMessage=d(z),o("error",z)}finally{A.isReadonly=!1}},D=t.computed(()=>{var Y;const z=k.value?(Y=so[r.pluginType])==null?void 0:Y.schemaEndpoint:r.pluginType,ae=k.value?Ke.form[r.config.app].credentialSchema:Ke.form[r.config.app].pluginSchema;let H=`${r.config.apiBaseUrl}${ae}`;return r.config.app==="konnect"?H=H.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(H=H.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),H=H.replace(/{plugin}/gi,z),H}),R=t.ref(""),ee=t.ref(!1),J=t.ref("");return t.onBeforeMount(async()=>{var z,ae,H,Y;ee.value=!0;try{if(k.value&&r.config.app==="konnect"){const Q=(z=so[r.pluginType])==null?void 0:z.schemaEndpoint,ce=jg[Q];R.value=Q,y.value=W("",ce,{}),ee.value=!1}else{const Q=r.schema??(await p.get(D.value)).data;if(h.value=Q,Q)if(k.value)y.value=W("",Q,{}),ee.value=!1;else{const ce=Q.fields.find(te=>te.config);E.value=ce?ce.config:Q,Q.supported_partials&&(N.value=Object.keys(Q.supported_partials).find(te=>[Rr.REDIS_CE,Rr.REDIS_EE].includes(te)),C.value=(ae=Q.supported_partials[N.value])==null?void 0:ae[0]),L();const be=(H=Q.fields.find(te=>te.protocols))==null?void 0:H.protocols;if(be){const{default:te=[],elements:_e={}}=be;M.protocols.default=te,M.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:te.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(Y=_e.one_of)!=null&&Y.length&&(M.protocols.values=_e.one_of.map(Ne=>({label:Ne,value:Ne})))}if(V.value||_.value===ge.EntityBaseFormType.Create){const te=W("config",E.value,M);N.value&&(te._supported_redis_partial_type=N.value),le.value&&(te._isCustomPlugin=!0),y.value=te}}}}catch(Q){console.error(Q),J.value=d(Q),o("error:fetch-schema",Q)}finally{ee.value=!1}}),(z,ae)=>{const H=t.resolveComponent("KSkeleton"),Y=t.resolveComponent("KEmptyState"),Q=t.resolveComponent("KButton"),ce=t.resolveComponent("KTabs"),be=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",sL,[ee.value?(t.openBlock(),t.createBlock(H,{key:0,type:"form"})):J.value?(t.openBlock(),t.createBlock(Y,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ge.EntityBaseForm),{key:2,"can-submit":T.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"error-message":me.value,"fetch-url":w.value,"form-fields":de.value,"is-readonly":A.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ie,"onFetch:error":ae[4]||(ae[4]=te=>z.$emit("error",te)),"onFetch:success":se,onLoading:ae[5]||(ae[5]=te=>z.$emit("loading",te))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",cL)):(t.openBlock(),t.createBlock(lL,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",dL,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Q,{key:0,appearance:"tertiary","data-testid":`plugin-${g.value?"edit":"create"}-form-view-configuration`,onClick:ae[3]||(ae[3]=te=>F())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(Q,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${g.value?"edit":"create"}-form-cancel`,disabled:A.isReadonly,onClick:ie},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(Q,{appearance:"primary","data-testid":`plugin-${g.value?"edit":"create"}-form-submit`,disabled:!T.value||A.isReadonly,type:"submit",onClick:I},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:I},null,32),t.createVNode(iL,{config:e.config,credential:k.value,editing:_.value===t.unref(ge.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":S.value,"raw-schema":h.value,record:b.value,schema:y.value,onGlobalAction:ae[0]||(ae[0]=(te,_e)=>z.$emit("globalAction",te,_e)),onLoading:ae[1]||(ae[1]=te=>x.value=te),onModelUpdated:q,onShowNewPartialModal:ae[2]||(ae[2]=te=>z.$emit("showNewPartialModal",te)),onValidityChange:ye},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","engine","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(be,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:F},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(ce,{"data-testid":"form-view-configuration-slideout-tabs",tabs:B.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ge.JsonCodeBlock),{config:e.config,"entity-record":$.value,"fetcher-url":oe.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ge.YamlCodeBlock),{"entity-record":$.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ge.TerraformCodeBlock),{"credential-type":R.value,"entity-record":$.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:t.withCtx(()=>[t.createVNode(t.unref(ge.DeckCodeBlock),{app:e.config.app,"control-plane-name":e.config.app==="konnect"?e.config.controlPlaneName:void 0,"entity-record":$.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"geo-api-server-url":e.config.app==="konnect"?e.config.geoApiServerUrl:void 0,"kong-admin-api-url":e.config.app==="kongManager"?e.config.apiBaseUrl:void 0,workspace:e.config.app==="kongManager"?e.config.workspace:void 0},null,8,["app","control-plane-name","entity-record","entity-type","geo-api-server-url","kong-admin-api-url","workspace"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-9bc0e566"]]),fL={class:"kong-ui-entities-plugins-list"},pL={class:"button-row"},mL={class:"name-cell-wrapper"},gL={class:"info-wrapper"},hL={key:0,class:"info-name"},yL={key:1,class:"info-name"},_L={key:2,class:"info-type"},bL={key:1},wL=Ae(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var R,ee;const o=Ve.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ve.useI18n(),l=vn.useRouter(),{axiosInstance:s}=ge.useAxios((R=i.config)==null?void 0:R.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ge.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var J;return((J=i.config)==null?void 0:J.entityType)==="consumers"}),m=t.computed(()=>{var J;return((J=i.config)==null?void 0:J.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||ge.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),h={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(ee=i.config)!=null&&ee.entityId||(h.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),h.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(h.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),h.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const y=h,k=t.computed(()=>{var Z,z,ae,H;let J=i.config.entityType?`${i.config.apiBaseUrl}${Ke.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Ke.list[i.config.app].all}`;return i.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((Z=i.config)==null?void 0:Z.controlPlaneId)||""):i.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(z=i.config)!=null&&z.workspace?`/${i.config.workspace}`:"")),J.replace(/{entityType}/gi,((ae=i.config)==null?void 0:ae.entityType)||"").replace(/{entityId}/gi,((H=i.config)==null?void 0:H.entityId)||"")}),b=t.ref(""),E=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:h.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...h.enabled,label:a("search.filter.field.enabled")},name:h.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:N,fetcherState:C,fetcherCacheKey:x}=ge.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),k),P=()=>{b.value=""},A=()=>{x.value++},B=t.ref(null),v=J=>{var z,ae,H,Y;const Z=[];return((z=J.route)!=null&&z.id||J.route_id)&&Z.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((ae=J.service)!=null&&ae.id||J.service_id)&&Z.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((H=J.consumer)!=null&&H.id||J.consumer_id)&&Z.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((Y=J.consumer_group)!=null&&Y.id||J.consumer_group_id)&&Z.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),Z.length?Z:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},w=async(J,Z)=>{var z;return J===null?!1:await((z=i.canRetrieveScopedEntity)==null?void 0:z.call(i,J,Z.id))},F=(J,Z)=>{var ae,H,Y,Q,ce;let z=null;switch(J){case"route":z=(ae=Z.route)==null?void 0:ae.id;break;case"service":z=(H=Z.service)==null?void 0:H.id;break;case"consumer":z=(Y=Z.consumer)==null?void 0:Y.id;break;case"consumer_group":z=(Q=Z.consumer_group)==null?void 0:Q.id;break}z&&((ce=i.config)!=null&&ce.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(J,z))},S=t.ref(!1),M=t.ref(null),O=t.computed(()=>{const J={action:"disable",id:"",name:""};if(M.value){const{enabled:Z,id:z,name:ae}=M.value;J.action=Z?"disable":"enable",J.id=z,J.name=o.getDisplayName(ae)||z}return J}),j=J=>{S.value=!0,M.value=J},W=()=>{S.value=!1,M.value=null},L=async()=>{var ae,H,Y,Q,ce,be,te,_e;if(!await((ae=i.canEdit)==null?void 0:ae.call(i,M.value))||!M.value)return;let Z=`${i.config.apiBaseUrl}${(ce=Ke.item[i.config.app])==null?void 0:ce[(H=i.config)!=null&&H.entityType?"forEntity":"all"].replace(/{entityType}/gi,((Y=i.config)==null?void 0:Y.entityType)||"").replace(/{entityId}/gi,((Q=i.config)==null?void 0:Q.entityId)||"")}`.replace(/{id}/gi,M.value.id||"");i.config.app==="konnect"?Z=Z.replace(/{controlPlaneId}/gi,((be=i.config)==null?void 0:be.controlPlaneId)||""):i.config.app==="kongManager"&&(Z=Z.replace(/\/{workspace}/gi,(te=i.config)!=null&&te.workspace?`/${i.config.workspace}`:""));const z=!M.value.enabled;try{const Ne=(_e=i.config)==null?void 0:_e.app;let pe;b.value&&Ne==="konnect"&&(pe=await s.get(Z));const{data:fe}=Ne==="konnect"?await s.put(Z,{...(pe==null?void 0:pe.data)||M.value,enabled:z},{timeout:12e4}):await s.patch(Z,{...M.value,enabled:z},{timeout:12e4});r("toggle-enabled",z,fe),M.value.enabled=z}catch(Ne){r("error",Ne)}},U=async(J,Z)=>{const z=J.id;if(!await Z(z)){r("copy:error",{entity:J,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:J,field:"id",message:a("copy.success",{val:z})})},T=async(J,Z)=>{const z=JSON.stringify(J);if(!await Z(z)){r("copy:error",{entity:J,message:a("errors.copy")});return}r("copy:success",{entity:J,message:a("copy.success_brief")})},V=async J=>{var z;await((z=i.canRetrieve)==null?void 0:z.call(i,J))&&l.push(i.config.getViewRoute(J))},G=J=>({label:a("actions.view"),to:i.config.getViewRoute(J)}),se=J=>({label:a("actions.edit"),to:i.config.getEditRoute(J)}),K=J=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(J)}),q=t.ref(void 0),ne=t.ref(!1),me=t.ref(!1),ye=t.ref(""),ie=ge.useDeleteUrlBuilder(i.config,k.value),oe=J=>{q.value=J,ne.value=!0},le=()=>{ne.value=!1},de=async()=>{var J,Z,z;if((J=q.value)!=null&&J.id){me.value=!0;try{await s.delete(ie(q.value.id)),me.value=!1,ne.value=!1,x.value++,r("delete:success",q.value)}catch(ae){ye.value=((z=(Z=ae.response)==null?void 0:Z.data)==null?void 0:z.message)||ae.message||a("errors.delete"),r("error",ae)}finally{me.value=!1}}},$=()=>{l.push(i.config.createRoute)};t.watch(C,J=>{var Z,z,ae;if(J.status===ge.FetcherStatus.Error){B.value={title:a("errors.general")},(ae=(z=(Z=J.error)==null?void 0:Z.response)==null?void 0:z.data)!=null&&ae.message&&(B.value.message=J.error.response.data.message),r("error",J.error);return}B.value=null});const I=t.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),D=t.ref(!1);return t.onBeforeMount(async()=>{D.value=await i.canCreate(),D.value&&(I.value.title=a("plugins.list.empty_state.title"),I.value.ctaText=a("actions.create"))}),(J,Z)=>{const z=t.resolveComponent("KButton"),ae=t.resolveComponent("KEmptyState"),H=t.resolveComponent("KBadge"),Y=t.resolveComponent("KTruncate"),Q=t.resolveComponent("KInputSwitch"),ce=t.resolveComponent("KDropdownItem"),be=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",fL,[t.createVNode(t.unref(ge.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":I.value,"enable-entity-actions":"","error-message":B.value,fetcher:t.unref(N),"fetcher-cache-key":t.unref(x),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(y),title:e.title,"title-tag":e.titleTag,onClearSearchInput:P,"onClick:row":Z[4]||(Z[4]=te=>V(te)),onSort:A,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ge.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":Z[0]||(Z[0]=te=>b.value=te),config:E.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",pL,[!u.value&&f.value?(t.openBlock(),t.createBlock(z,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:Z[1]||(Z[1]=te=>J.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(z,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:te})=>[t.createElementVNode("div",mL,[t.createVNode(t.unref(An.PluginIcon),{class:"plugin-icon",name:te.name,size:24},null,8,["name"]),t.createElementVNode("div",gL,[te.instance_name?(t.openBlock(),t.createElementBlock("span",hL,t.toDisplayString(te.instance_name),1)):(t.openBlock(),t.createElementBlock("span",yL,t.toDisplayString(t.unref(o).getDisplayName(te.name)),1)),te.instance_name?(t.openBlock(),t.createElementBlock("span",_L,t.toDisplayString(t.unref(o).getDisplayName(te.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:te})=>[v(te).length>0?(t.openBlock(),t.createBlock(Y,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(v(te),_e=>(t.openBlock(),t.createBlock(t.unref(ge.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>w(_e.type,te),"force-show":""},{default:t.withCtx(({isAllowed:Ne})=>[t.createVNode(H,{class:t.normalizeClass(Ne||"disabled"),onClick:t.withModifiers(pe=>Ne&&_e.type&&F(_e.type,te),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",bL,"-"))]),enabled:t.withCtx(({row:te})=>[t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(te)&&await e.canToggle(te)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var Ne,pe;return[t.createElementVNode("div",{onClick:Z[3]||(Z[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(Q,{disabled:!_e,"disabled-tooltip-text":!_e&&((pe=(Ne=e.config).getToggleDisabledTooltip)==null?void 0:pe.call(Ne,te))||void 0,"model-value":te.enabled,onClick:t.withModifiers(fe=>_e&&j(te),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:te})=>[t.createVNode(H,{appearance:t.unref(sd)(te)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(sd)(te)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:te})=>[t.createVNode(t.unref(ge.TableTags),{tags:te},null,8,["tags"])]),actions:t.withCtx(({row:te})=>[t.createVNode(be,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(ce,{"data-testid":"action-entity-copy-id",onClick:Ne=>U(te,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(be,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(ce,{"data-testid":"action-entity-copy-json",onClick:Ne=>T(te,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(te)},{default:t.withCtx(()=>[t.createVNode(ce,{"data-testid":"action-entity-view","has-divider":"",item:G(te)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canEdit(te)},{default:t.withCtx(()=>[t.createVNode(ce,{"data-testid":"action-entity-edit",item:se(te)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(g)?(t.openBlock(),t.createBlock(t.unref(ge.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(te)},{default:t.withCtx(()=>[K(te)?(t.openBlock(),t.createBlock(ce,{key:0,"data-testid":"action-entity-config-dyn-order",item:K(te)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canDelete(te)},{default:t.withCtx(()=>[t.createVNode(ce,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>oe(te)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var te;return[t.createVNode(ae,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(Ee.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[D.value?(t.openBlock(),t.createBlock(z,{key:0,"data-testid":"entity-create-button",onClick:$},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(z,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:Z[2]||(Z[2]=_e=>J.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(te=e.config)!=null&&te.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(ge.EntityToggleModal),{action:O.value.action,"entity-id":O.value.id,"entity-name":O.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":L,visible:S.value,onCancel:W,onProceed:W},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ge.EntityDeleteModal),{"action-pending":me.value,description:t.unref(a)("delete.description"),"entity-name":q.value&&(q.value.instance_name||q.value.name||q.value.id),"entity-type":t.unref(ge.EntityTypes).Plugin,error:ye.value,title:t.unref(a)("delete.title"),visible:ne.value,onCancel:le,onProceed:de},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),kL={class:"plugin-select-card-wrapper"},CL=["data-testid"],EL={class:"plugin-card-header"},NL={class:"plugin-card-title"},xL={key:0,class:"plugin-card-actions"},SL=["data-testid","title"],vL={key:0,class:"plugin-card-text"},AL={key:0},IL=["title"],Rs=Ae(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=vn.useRouter(),{i18n:{t:a}}=Ve.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===X.PluginGroup.CUSTOM_PLUGINS),g=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(y,k)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(y,k))},h=()=>{if(!s.value&&r.config.app==="konnect"){const y=r.config;p.value&&y.createCustomRoute?i.push(y.createCustomRoute):m.value&&d()}};return(y,k)=>{const b=t.resolveComponent("KButton"),E=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",kL,[t.createVNode(C,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:k[1]||(k[1]=x=>s.value||m.value?void 0:f())},[t.createElementVNode("div",EL,[t.createElementVNode("div",NL,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",xL,[t.createVNode(N,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{size:t.unref(di)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(E,{key:0,"data-testid":"edit-plugin-schema",onClick:k[0]||(k[0]=t.withModifiers(x=>_(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(E,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(g,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:h},[t.createVNode(t.unref(An.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(t.openBlock(),t.createElementBlock("div",vL,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",AL,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,IL)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,SL),t.createElementVNode("div",{class:"plugin-card-footer",onClick:h},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,CL)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),Ds=Ae(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var g;const o=e,r=n,{i18nT:i,i18n:{t:a}}=Ve.useI18n(),{getMessageFromError:l}=ge.useErrors(),{axiosInstance:s}=ge.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=t.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const _=o.plugin.customPluginType==="streaming"?Ke.select[o.config.app].streamingCustomPluginItem:Ke.select[o.config.app].schemaCustomPluginItem;let h=`${o.config.apiBaseUrl}${_}`;return h=h.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),h=h.replace(/{pluginId}/gi,o.plugin.id),h}return null}),m=async()=>{var _,h,y,k;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((h=o.config)==null?void 0:h.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:E}=b;(E==null?void 0:E.status)===400&&((k=(y=E.data)==null?void 0:y.message)!=null&&k.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(_,h)=>{const y=t.resolveComponent("KButton"),k=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ge.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ge.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:h[0]||(h[0]=b=>_.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(k,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:h[2]||(h[2]=b=>_.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(y,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:h[1]||(h[1]=b=>_.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),PL={class:"custom-plugins-grid"},TL={class:"empty-state-title"},OL={class:"empty-state-description"},Ms=310,$L=Ae(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ve.usePluginHelpers(),s=t.ref(!0),c=N=>{r("plugin-clicked",N)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const N=JSON.parse(JSON.stringify(o.pluginList))[X.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:X.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(N):N}),f=t.ref(!1),u=t.ref(null),p=N=>{f.value=!0,u.value={id:N.id,name:N.name,customPluginType:N.customPluginType}},m=N=>{var C;N&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},g=t.ref(Ms),_=t.ref(null),h=t.ref(null),y=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),k=t.ref(!1),b=()=>{g.value=Math.max(a(h.value),Ms),E()},E=()=>{var N,C;(N=h.value)!=null&&N.length&&(k.value=l(_.value,(C=h.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),g.value=Math.max(a(h.value),Ms),E(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(N,C)=>{const x=t.resolveComponent("KEmptyState"),P=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",PL,[d.value.length?(t.openBlock(),t.createBlock(P,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=A=>s.value=A),class:"custom-plugins-collapse","data-testid":`${t.unref(X.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(X.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:_,class:"plugin-card-container",style:t.normalizeStyle(y.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(A,B)=>(t.openBlock(),t.createBlock(Rs,{key:`plugin-card-${B}`,ref_for:!0,ref_key:"pluginCardRef",ref:h,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:A,onCustomPluginDelete:v=>p(A),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[k.value?void 0:{name:"trigger",fn:t.withCtx(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(x,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",TL,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",OL,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(Ds,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=A=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Ls=310,xg=Ae(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=Ve.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ve.usePluginHelpers(),c=t.ref(Ls),d=t.ref(null),f=t.ref(null),u=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),Ls),g()},g=()=>{var _,h;(_=f.value)!=null&&_.length&&(p.value=s(d.value,(h=f.value)==null?void 0:h.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Ls),g(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,h)=>{const y=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(y,{modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=k=>o.value=k),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,k=>(t.openBlock(),t.createBlock(Rs,{key:`plugin-card-${k.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:k,onPluginClicked:b=>i("plugin-clicked",k)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[h[1]||(h[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),BL={class:"plugin-select-grid"},VL={class:"empty-state-title"},RL={class:"empty-state-description"},Fs=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve.useI18n(),a=t.ref(!1),l=t.ref(pa),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[X.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",BL,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",VL,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",RL,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(xg,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||t.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:f[1]||(f[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Mo),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(xg,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:f[2]||(f[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):t.createCommentVNode("",!0)],64))),256))])}}}),DL={class:"kong-ui-entities-plugin-select-form"},ML={class:"plugins-filter-input-container"},LL={key:0},FL={key:3,"aria-live":"polite",class:"plugins-results-container"},UL={"data-testid":"kong-tab"},KL={class:"tab-description"},jL={"data-testid":"custom-tab"},GL={class:"tab-description"},qL=Ae(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var U;const o=e,r=n,i=vn.useRoute(),a=vn.useRouter(),{i18n:{t:l}}=Ve.useI18n(),{pluginMetaData:s}=Ve.usePluginMetaData(),{getMessageFromError:c}=ge.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ge.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),g=t.ref(""),_=t.ref([]),h=t.ref([]),y=t.ref({}),k=t.ref([]),{axiosInstance:b}=ge.useAxios((U=o.config)==null?void 0:U.axiosRequestConfig),E=t.computed(()=>y.value?Object.entries(y.value).filter(([T])=>T!==X.PluginGroup.CUSTOM_PLUGINS).reduce((T,[,V])=>{for(const G of V??[])T[G.id]=G;return T},{}):{}),N=t.computed(()=>{var G;if(!y.value)return{};const T=u.value.toLowerCase(),V=JSON.parse(JSON.stringify(y.value));for(const se in y.value){const K=((G=y.value[se])==null?void 0:G.filter(q=>q.name.toLowerCase().includes(T)||q.id.toLowerCase().includes(T)||q.group.toLowerCase().includes(T)))||[];K.length?V[se]=K:delete V[se]}return V}),C=t.computed(()=>o.highlightedPluginIds.reduce((T,V)=>{const G=E.value[V];return G&&T.push(G),T},[])),x=t.computed(()=>Object.keys(N.value).length>0),P=t.computed(()=>Object.keys(y.value).length>0&&!x.value),A=t.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),B=t.computed(()=>{var V;let T=A.value.length&&((i==null?void 0:i.hash)||((V=A.value[0])==null?void 0:V.hash))||"";return T==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(T="#kong"),T}),v=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter(T=>!o.ignoredPlugins.includes(T)).filter(T=>o.config.entityType&&(o.config.entityType==="services"&&s[T]&&!s[T].scope.includes(X.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[T]&&!s[T].scope.includes(X.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[T]&&!s[T].scope.includes(X.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[T]&&!s[T].scope.includes(X.PluginScope.CONSUMER))?!1:T).reduce((T,V)=>{var ne;const G=s[V]&&s[V].name||V,se={...s[V],id:V,name:G,available:_.value.includes(V),disabledMessage:"",group:((ne=s[V])==null?void 0:ne.group)||X.PluginGroup.CUSTOM_PLUGINS};se.group===X.PluginGroup.CUSTOM_PLUGINS&&(se.customPluginType=h.value.find(me=>me.name===V)?"streaming":"schema"),o.disabledPlugins&&(se.disabledMessage=o.disabledPlugins[V]);const K=se.group||l("plugins.select.misc_plugins");let q=T[K];return q||(q=[]),q.push(se),q.sort(d("name")),T[K]=q,T},{}),w=t.computed(()=>{var V;let T=`${o.config.apiBaseUrl}${Ke.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(T=((V=o.config.gatewayInfo)==null?void 0:V.edition)==="community"?`${o.config.apiBaseUrl}${Ke.select[o.config.app].availablePluginsForOss}`:T.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),T}),F=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let T=`${o.config.apiBaseUrl}${Ke.select[o.config.app].streamingCustomPlugins}`;return T=T.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),T}return null}),S=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let T=`${o.config.apiBaseUrl}${Ke.list[o.config.app].forEntity}`;return o.config.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(T=T.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),T.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),M=T=>{a.replace({hash:T,query:i.query})};t.watch(()=>o.disabledPlugins,(T,V)=>{!f(T,V)&&!p.value&&(y.value=v())}),t.watch(()=>o.ignoredPlugins,(T,V)=>{!f(T,V)&&!p.value&&(y.value=v())}),t.watch(p,T=>{r("loading",T)});const O=t.ref(!1),j=t.ref(!1),W=t.ref(!1);t.onBeforeMount(async()=>{O.value=await o.canCreateCustomPlugin(),j.value=await o.canEditCustomPlugin(),W.value=await o.canDeleteCustomPlugin()});const L=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var T,V;(V=(T=L.value)==null?void 0:T.input)==null||V.focus();try{const{data:G}=await b.get(w.value);if(o.config.app==="konnect"){const{names:se}=G;if(_.value=se||[],F.value){const{data:K}=await b.get(F.value);h.value=K.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:se}}=G;_.value=se?Object.keys(se):[]}}catch(G){m.value=!0,g.value=c(G)}if(S.value)try{const{data:{data:G}}=await b.get(S.value);if(G!=null&&G.length){const se=G.reduce((K,q)=>(q.name&&K.push(q.name),K),[]);k.value=k.value.concat(se)}}catch{}m.value||(y.value=v()),p.value=!1}),(T,V)=>{const G=t.resolveComponent("KInput"),se=t.resolveComponent("KSkeletonBox"),K=t.resolveComponent("KSkeleton"),q=t.resolveComponent("KEmptyState"),ne=t.resolveComponent("KTooltip"),me=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",DL,[t.createElementVNode("div",ML,[t.createVNode(G,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":V[0]||(V[0]=ye=>u.value=ye),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",LL,[t.createVNode(se,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(K,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(q,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(g.value),1)]),_:1})):P.value&&u.value?(t.openBlock(),t.createBlock(q,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",FL,[A.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(me,{key:0,modelValue:B.value,"onUpdate:modelValue":V[5]||(V[5]=ye=>B.value=ye),"data-testid":"plugins-tabs",tabs:A.value,onChange:M},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",UL,[t.createElementVNode("p",KL,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Fs,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,onPluginClicked:V[1]||(V[1]=ye=>T.$emit("plugin-clicked",ye))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",jL,[t.renderSlot(T.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",GL,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode($L,{"can-create-custom-plugin":O.value,"can-delete-custom-plugin":W.value,"can-edit-custom-plugin":j.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,"onDelete:success":V[2]||(V[2]=ye=>T.$emit("delete-custom:success",ye)),onPluginClicked:V[3]||(V[3]=ye=>T.$emit("plugin-clicked",ye)),onRevalidate:V[4]||(V[4]=()=>y.value=v())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(ne,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(Fs,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,onPluginClicked:V[6]||(V[6]=ye=>T.$emit("plugin-clicked",ye))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-a2b8a174"]]),zL={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},HL=["data-testid"],YL={class:"plugin-card-header"},WL={class:"plugin-card-title"},XL={key:0,class:"plugin-card-actions"},ZL=["data-testid","title"],JL={key:0},QL={key:0},e2=["title"],t2={class:"plugin-card-footer"},n2=Ae(t.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=vn.useRouter(),{i18n:{t:a}}=Ve.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(u.value&&!f.value&&l.value)),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=t.computed(()=>r.plugin.id==="custom-plugin-create"),u=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===X.PluginGroup.CUSTOM_PLUGINS),p=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},m=(_,h)=>{const y=r.config;r.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&i.push(y.getCustomEditRoute(_,h))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;f.value&&_.createCustomRoute?i.push(_.createCustomRoute):u.value&&d()}};return(_,h)=>{const y=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),b=t.resolveComponent("KDropdownMenu"),E=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",zL,[t.createVNode(E,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:h[1]||(h[1]=N=>s.value||u.value?void 0:d())},[t.createElementVNode("div",YL,[t.createElementVNode("div",WL,[t.createVNode(t.unref(An.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!u.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",XL,[t.createVNode(b,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{size:t.unref(di)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[t.createVNode(k,{"data-testid":"edit-plugin-schema",onClick:h[0]||(h[0]=t.withModifiers(N=>m(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1}),t.createVNode(k,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(p,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:"plugin-card-body","data-testid":`${e.plugin.id}-card-body`,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[e.plugin.description||u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",JL,[u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",QL,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("div",{key:1,title:e.plugin.description},t.toDisplayString(e.plugin.description),9,e2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],8,ZL),t.createElementVNode("div",t2,t.toDisplayString(f.value?t.unref(a)("actions.create_custom"):t.unref(a)("actions.configure")),1)],10,HL)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-7a56d3c1"]]),o2=["data-testid"],r2={class:"group-icon-wrapper"},i2={class:"group-title-text"},a2=["data-testid"],Sg=Ae(t.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=t.computed(()=>{switch(o.name){case"Featured":return Ee.PopularIcon;case"AI":return Ee.BotIcon;case"Analytics & Monitoring":return Ee.AnalyticsIcon;case"Authentication":return Ee.LockIcon;case"Logging":return Ee.ServiceDocumentIcon;case"Security":return Ee.SecurityIcon;case"Serverless":return Ee.RuntimeServerlessIcon;case"Traffic Control":return Ee.TrafficIcon;case"Transformations":return Ee.TransformationIcon;case"Deployment":return Ee.DeployIcon;case"Custom Plugins":return Ee.CodeblockIcon;default:return null}}),i=n,{i18n:{t:a}}=Ve.useI18n(),l=t.ref(!1),s=t.computed(()=>o.showAllCard?o.plugins:!l.value&&o.plugins.length>9?o.plugins.slice(0,8):o.plugins),c=t.computed(()=>!o.showAllCard&&!l.value&&o.plugins.length>9);function d(){l.value=!0}const f=t.ref(!1),u=t.ref(null),p=g=>{f.value=!0,u.value={id:g.id,name:g.name,customPluginType:g.customPluginType}},m=g=>{var _;g&&(i("revalidate"),i("delete:success",((_=u.value)==null?void 0:_.name)||"")),f.value=!1,u.value=null};return(g,_)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.name?(t.openBlock(),t.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${e.name}`},[t.createElementVNode("div",r2,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{color:t.unref(Uu)},null,8,["color"]))]),t.createElementVNode("span",i2,t.toDisplayString(e.name),1)],8,o2)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${e.name}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(n2,{key:`plugin-card-${h.id}`,config:e.config,plugin:h,onCustomPluginDelete:y=>p(h),onPluginClicked:y=>i("plugin-clicked",h)},null,8,["config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:d},t.toDisplayString(t.unref(a)("plugins.select.show_all")),1)):t.createCommentVNode("",!0)],8,a2),f.value&&u.value?(t.openBlock(),t.createBlock(Ds,{key:1,config:e.config,plugin:u.value,onClosed:m,onProceed:_[0]||(_[0]=h=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-53435a1d"]]),l2={class:"plugin-select-grid"},s2={class:"empty-state-title"},c2={class:"empty-state-description"},d2={key:1},u2=Ae(t.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{}},emits:["plugin-clicked","delete:success"],setup(e,{emit:n}){const o=Dr.concat(Mo),r=n,{i18n:{t:i}}=Ve.useI18n(),a=t.ref(pa),l=s=>{r("plugin-clicked",s)};return(s,c)=>{var f,u;const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",l2,[Object.keys(e.pluginList||[]).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",s2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",c2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),p=>{var m;return t.openBlock(),t.createElementBlock(t.Fragment,null,[(m=e.pluginList)!=null&&m[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Sg,{modelValue:a.value[p],"onUpdate:modelValue":g=>a.value[p]=g,config:e.config,name:p,plugins:e.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=g=>r("delete:success",g)),onPluginClicked:c[1]||(c[1]=g=>l(g))},null,8,["modelValue","onUpdate:modelValue","config","name","plugins"])])):t.createCommentVNode("",!0)],64)}),256)),(u=(f=e.pluginList)==null?void 0:f["Query Result"])!=null&&u.length?(t.openBlock(),t.createElementBlock("div",d2,[t.createVNode(Sg,{modelValue:a.value["Query Result"],"onUpdate:modelValue":c[2]||(c[2]=p=>a.value["Query Result"]=p),config:e.config,plugins:e.pluginList["Query Result"]||[],"show-all-card":"",onPluginClicked:c[3]||(c[3]=p=>l(p))},null,8,["modelValue","config","plugins"])])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-c3ddcaea"]]),f2={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},p2=["title"],m2=["title"],g2={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},h2={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},y2=Ae(t.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{}},emits:["revalidate","delete:success"],setup(e,{emit:n}){const o=n,r=e,{i18n:{t:i}}=Ve.useI18n(),a=t.computed(()=>h.value.some(E=>{var N;return!!((N=E.plugin)!=null&&N.customPluginType)})),l=t.computed(()=>{const E=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return a.value&&E.push({key:"more-actions",hideLabel:!0}),E}),s=t.computed(()=>{if(!r.pluginList)return[];const E=Object.values(r.pluginList).flat();return Array.from(new Map(E.map(C=>[C.id,C])).values()).map(C=>({id:C.id,name:C.name,description:C.description,plugin:C}))}),c=t.ref(0),d=t.ref(10),f=t.ref(1),u=t.ref(s.value),p=t.ref(!1),m=t.ref(null),g=E=>{p.value=!0,m.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},_=E=>{var N;E&&(o("revalidate"),o("delete:success",((N=m.value)==null?void 0:N.name)||"")),p.value=!1,m.value=null},h=t.computed(()=>{const E=u.value.length,N=Math.max(1,Math.ceil(E/d.value)),x=(Math.min(f.value,N)-1)*d.value;return u.value.slice(x,x+d.value)});t.watch(s,()=>{u.value=[...s.value],f.value=1,c.value++});const y=({page:E})=>{f.value=E},k=({pageSize:E})=>{d.value=E},b=E=>{const{sortColumnKey:N,sortColumnOrder:C}=E;N==="name"&&(u.value=[...u.value].sort((x,P)=>{const A=(x[N]||"").toLowerCase(),B=(P[N]||"").toLowerCase();return A<B?C==="asc"?-1:1:A>B?C==="asc"?1:-1:0}))};return(E,N)=>{const C=t.resolveComponent("KButton"),x=t.resolveComponent("KDropdownItem"),P=t.resolveComponent("KDropdown"),A=t.resolveComponent("KTableView"),B=t.resolveComponent("KCard");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(B,{"data-testid":"plugin-catalog-list-view-card"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(A,{key:c.value,class:"plugin-catalog-table","client-sort":"",data:h.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,pagination:!0,"pagination-attributes":{totalCount:s.value.length,currentPage:f.value,initialPageSize:d.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:y,onPageSizeChange:k,onSort:b},{name:t.withCtx(({row:v})=>[t.createElementVNode("span",f2,[t.createVNode(t.unref(An.PluginIcon),{"data-testid":`plugin-catalog-list-view-${v.plugin.id}-icon`,name:v.plugin.id,size:20},null,8,["data-testid","name"]),t.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:v.name},t.toDisplayString(v.name),9,p2)])]),description:t.withCtx(({row:v})=>[t.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:v.description},t.toDisplayString(v.description),9,m2)]),action:t.withCtx(({row:v})=>[t.createElementVNode("div",g2,[t.createVNode(C,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:r.config.getCreateRoute(v.id)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":t.withCtx(({row:v})=>{var w;return[(w=v.plugin)!=null&&w.customPluginType?(t.openBlock(),t.createElementBlock("div",h2,[t.createVNode(P,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:t.withCtx(()=>{var F,S;return[t.createVNode(x,{"data-testid":"edit-plugin-schema",to:(S=(F=e.config).getCustomEditRoute)==null?void 0:S.call(F,v.plugin.name,v.plugin.customPluginType)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.edit")),1)]),_:1},8,["to"]),t.createVNode(x,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:()=>g(v.plugin)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.delete")),1)]),_:1},8,["onClick"])]}),default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{color:t.unref(ko),size:t.unref(di)},null,8,["color","size"])]),_:2},1024)])):t.createCommentVNode("",!0)]}),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),p.value&&m.value?(t.openBlock(),t.createBlock(Ds,{key:0,config:e.config,plugin:m.value,onClosed:_,onProceed:N[0]||(N[0]=v=>_(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-b66a5c83"]]),_2={class:"plugin-catalog","data-testid":"plugin-catalog"},b2={class:"plugin-filter","data-testid":"plugin-filter"},w2={class:"plugin-filter-title"},k2={class:"featured-title"},C2={class:"plugin-featured-filter"},E2=["data-testid"],N2={class:"group-title"},x2={class:"plugin-type-filter"},S2=["data-testid"],v2={class:"plugins-container"},A2={class:"plugins-filter-input-container"},I2={class:"icon-container"},P2={key:0},T2={key:3,"aria-live":"polite",class:"plugins-results-container"},O2=Ae(t.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{},availableOnServer:{type:Boolean,default:!0}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var M;const o=n,{i18n:{t:r}}=Ve.useI18n(),{pluginMetaData:i}=Ve.usePluginMetaData(),{getMessageFromError:a}=ge.useErrors(),{sortAlpha:l,objectsAreEqual:s}=ge.useHelpers(),c=e,{axiosInstance:d}=ge.useAxios((M=c.config)==null?void 0:M.axiosRequestConfig),f=t.useTemplateRef("filter-input"),u=t.ref(""),p=t.ref(!1),m=t.ref(!1),g=t.ref(Object.fromEntries(Dr.concat(Mo).map(O=>[O,!1]))),_=t.ref(!0),h=t.ref(!1),y=t.ref(""),k=t.ref([]),b=t.ref([]),E=t.ref({}),N=t.ref([]),C=t.ref(!1),x=t.computed(()=>C.value?Ee.GridIcon:Ee.ListIcon),P=t.computed(()=>{var j;let O=`${c.config.apiBaseUrl}${Ke.select[c.config.app].availablePlugins}`;return c.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(O=((j=c.config.gatewayInfo)==null?void 0:j.edition)==="community"?`${c.config.apiBaseUrl}${Ke.select[c.config.app].availablePluginsForOss}`:O.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),O}),A=t.computed(()=>{if(c.config.app==="konnect"&&c.customPluginSupport==="streaming"){let O=`${c.config.apiBaseUrl}${Ke.select[c.config.app].streamingCustomPlugins}`;return O=O.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""),O}return null}),B=t.computed(()=>{if(c.config.entityType&&c.config.entityId){let O=`${c.config.apiBaseUrl}${Ke.list[c.config.app].forEntity}`;return c.config.app==="konnect"?O=O.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(O=O.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),O.replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),v=t.computed(()=>{var V;if(!E.value)return{};const O=Object.entries(g.value).filter(([G,se])=>se).map(([G])=>G);let j={};O.length===0&&(j=E.value),O.forEach(G=>{E.value[G]&&(j[G]=E.value[G])});const W=u.value.toLowerCase();if(!W)return j;const L=JSON.parse(JSON.stringify(j));for(const G in j){const se=((V=j[G])==null?void 0:V.filter(K=>[K.name.toLowerCase(),K.id.toLowerCase()].some(ne=>B0(W,ne).length===W.length)))||[];se.length?L[G]=se:delete L[G]}const U=Object.values(L).flat().filter(G=>!!G),T=Array.from(U.reduce((G,se)=>(G.has(se.id)||G.set(se.id,se),G),new Map).values());return T.length?{"Query Result":T}:{}}),w=t.computed(()=>Object.keys(v.value).length>0),F=t.computed(()=>Object.keys(E.value).length>0&&!w.value),S=()=>{const O=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...k.value])].filter(j=>c.config.entityType&&(c.config.entityType==="services"&&i[j]&&!i[j].scope.includes(X.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[j]&&!i[j].scope.includes(X.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[j]&&!i[j].scope.includes(X.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[j]&&!i[j].scope.includes(X.PluginScope.CONSUMER))?!1:j).reduce((j,W)=>{var G;const L=i[W]&&i[W].name||W,U={...i[W],id:W,name:L,available:k.value.includes(W),disabledMessage:"",group:((G=i[W])==null?void 0:G.group)||X.PluginGroup.CUSTOM_PLUGINS};U.group===X.PluginGroup.CUSTOM_PLUGINS&&(U.customPluginType=b.value.find(se=>se.name===W)?"streaming":"schema"),c.disabledPlugins&&(U.disabledMessage=c.disabledPlugins[W]);const T=U.group||r("plugins.select.misc_plugins");let V=j[T];return V||(V=[]),V.push(U),V.sort(l("name")),j[T]=V,j},{});return c.highlightedPluginIds&&c.highlightedPluginIds.length>0&&(O.Featured=c.highlightedPluginIds.flatMap(j=>{var L;const W=i[j];return W?{...W,id:j,name:W.name||j,available:k.value.includes(j),disabledMessage:((L=c.disabledPlugins)==null?void 0:L[j])||"",group:W.group||X.PluginGroup.CUSTOM_PLUGINS}:[]}).filter(Boolean)),O};return t.watch(()=>c.disabledPlugins,(O,j)=>{!s(O||{},j||{})&&!_.value&&(E.value=S())}),t.watch(_,O=>{o("loading",O)}),t.onMounted(async()=>{var O,j;(j=(O=f.value)==null?void 0:O.input)==null||j.focus();try{const{data:W}=await d.get(P.value);if(c.config.app==="konnect"){const{names:L}=W;if(k.value=L||[],A.value){const{data:U}=await d.get(A.value);b.value=U.data||[]}}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:L}}=W;k.value=L?Object.keys(L):[]}}catch(W){h.value=!0,y.value=a(W)}if(B.value)try{const{data:{data:W}}=await d.get(B.value);if(W!=null&&W.length){const L=W.reduce((U,T)=>(T.name&&U.push(T.name),U),[]);N.value=N.value.concat(L)}}catch{}h.value||(E.value=S()),_.value=!1}),(O,j)=>{const W=t.resolveComponent("KCheckbox"),L=t.resolveComponent("KBadge"),U=t.resolveComponent("KCollapse"),T=t.resolveComponent("KInput"),V=t.resolveComponent("KSkeletonBox"),G=t.resolveComponent("KSkeleton"),se=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",_2,[t.createElementVNode("div",b2,[t.createElementVNode("div",w2,t.toDisplayString(t.unref(r)("plugins.select.filter.title")),1),t.createVNode(U,{modelValue:p.value,"onUpdate:modelValue":j[0]||(j[0]=K=>p.value=K)},{title:t.withCtx(()=>[t.createElementVNode("div",k2,t.toDisplayString(t.unref(r)("plugins.select.filter.featured")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",C2,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Dr),K=>(t.openBlock(),t.createElementBlock("div",{key:K,class:"plugin-filter-item","data-testid":`plugin-filter-item-${K}`},[t.createVNode(W,{modelValue:g.value[K],"onUpdate:modelValue":q=>g.value[K]=q,label:K},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(L,{appearance:"neutral"},{default:t.withCtx(()=>{var q,ne;return[t.createTextVNode(t.toDisplayString(((ne=(q=E.value)==null?void 0:q[K])==null?void 0:ne.length)||0),1)]}),_:2},1024)],8,E2))),128))])]),_:1},8,["modelValue"]),t.createVNode(U,{modelValue:m.value,"onUpdate:modelValue":j[1]||(j[1]=K=>m.value=K)},{title:t.withCtx(()=>[t.createElementVNode("div",N2,t.toDisplayString(t.unref(r)("plugins.select.filter.type")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",x2,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Mo),K=>(t.openBlock(),t.createElementBlock("div",{key:K,class:"plugin-filter-item","data-testid":`plugin-filter-item-${K}`},[t.createVNode(W,{modelValue:g.value[K],"onUpdate:modelValue":q=>g.value[K]=q,label:K},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(L,{appearance:"neutral"},{default:t.withCtx(()=>{var q,ne;return[t.createTextVNode(t.toDisplayString(((ne=(q=E.value)==null?void 0:q[K])==null?void 0:ne.length)||0),1)]}),_:2},1024)],8,S2))),128))])]),_:1},8,["modelValue"])]),t.createElementVNode("div",v2,[t.createElementVNode("div",A2,[t.createVNode(T,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":j[2]||(j[2]=K=>u.value=K),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:t.unref(r)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),t.createElementVNode("div",I2,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(x.value),{class:"plugins-filter-icon",color:t.unref(h1),onClick:j[3]||(j[3]=K=>C.value=!C.value)},null,8,["color"]))])]),_.value?(t.openBlock(),t.createElementBlock("section",P2,[t.createVNode(V,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(G,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):h.value?(t.openBlock(),t.createBlock(se,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(y.value),1)]),_:1})):F.value&&u.value?(t.openBlock(),t.createBlock(se,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(r)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",T2,[C.value?(t.openBlock(),t.createBlock(y2,{key:0,config:e.config,"plugin-list":v.value,"onDelete:success":j[4]||(j[4]=K=>O.$emit("delete-custom:success",K))},null,8,["config","plugin-list"])):(t.openBlock(),t.createBlock(u2,{key:1,config:e.config,"plugin-list":v.value,"onDelete:success":j[5]||(j[5]=K=>O.$emit("delete-custom:success",K)),onPluginClicked:j[6]||(j[6]=K=>O.$emit("plugin-clicked",K))},null,8,["config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-e8377cd9"]]),$2={class:"datakit-config-card-canvas"},B2={class:"config-card-details-label","data-testid":"datakit-configuration-label"},V2={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},R2={class:"canvas-wrapper"},D2=Ae(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return ef(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",$2,[t.createElementVNode("div",B2,[t.createVNode(r,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",V2,[t.createElementVNode("div",R2,[t.createVNode(Ts,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),M2={class:"kong-ui-entity-plugin-config-card"},L2={class:"name-cell-wrapper"},F2={class:"info-name"},U2={key:0},K2={key:0},j2={key:0},G2={key:0},q2={key:0},Us="config",z2=Ae(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var C;const o=n,r=e,{i18n:{t:i}}=Ve.useI18n(),a=Ve.usePluginMetaData(),{setFieldType:l}=Ve.usePluginHelpers(),{getPropValue:s}=ge.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var P;let x=(P=Ke.item[r.config.app])==null?void 0:P[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const A=r.expandPartial?"&":"?";x=x.concat(`${A}__ui_data=true`)}return x}),u=t.computed(()=>{var A,B;const x={},P=((A=b.value)==null?void 0:A.fields)||[];for(let v=0;v<P.length;v++){const w=b.value.fields[v],F=(B=Object.keys(w))==null?void 0:B[0];l(x,F,w[F])}return{...x,instance_name:{section:ge.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ge.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ge.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ge.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ge.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ge.ConfigurationSchemaType.BadgeTag,section:ge.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var P,A,B;if(!((P=b.value)!=null&&P.fields))return[];const x=(A=b.value.fields)==null?void 0:A.find(v=>{var F;return((F=Object.keys(v))==null?void 0:F[0])===Us});return((B=x==null?void 0:x[Us])==null?void 0:B.fields)||[]}),m=t.computed(()=>{var P,A;const x={};if(!p.value)return x;for(let B=0;B<((P=p.value)==null?void 0:P.length);B++){const v=p.value[B],w=(A=Object.keys(v))==null?void 0:A[0],F=v[w];F.required&&(x[w]={order:1}),l(x,w,F)}return x}),g=x=>{var A;const P=(A=a.pluginMetaData[r.config.pluginType])==null?void 0:A.scope;return P?Object.fromEntries(Object.entries(x).filter(([B,v])=>v?!0:!(B==="service"&&!P.includes(X.PluginScope.SERVICE)||B==="route"&&!P.includes(X.PluginScope.ROUTE)||B==="consumer"&&!P.includes(X.PluginScope.CONSUMER)||B==="consumer_group"&&!P.includes(X.PluginScope.CONSUMER_GROUP)))):x},_=x=>en(x,"__ui_data"),{getMessageFromError:h}=ge.useErrors(),{axiosInstance:y}=ge.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),k=t.computed(()=>{var P,A;let x=`${r.config.apiBaseUrl}${Ke.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?x=x.replace(/{controlPlaneId}/gi,((P=r.config)==null?void 0:P.controlPlaneId)||""):r.config.app==="kongManager"&&(x=x.replace(/\/{workspace}/gi,(A=r.config)!=null&&A.workspace?`/${r.config.workspace}`:"")),x=x.replace(/{plugin}/gi,r.config.pluginType),x}),b=t.ref({});ge.useSchemaProvider(b);const E=t.ref(!1),N=t.ref("");return t.onBeforeMount(async()=>{E.value=!0;try{const{data:x}=await y.get(k.value);b.value=x}catch(x){N.value=h(x),o("error:fetch-schema",x)}finally{E.value=!1}}),(x,P)=>{const A=t.resolveComponent("KSkeleton"),B=t.resolveComponent("KEmptyState"),v=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",M2,[E.value?(t.openBlock(),t.createBlock(A,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):N.value?(t.openBlock(),t.createBlock(B,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(N.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ge.EntityBaseConfigCard),{key:2,"code-block-record-formatter":_,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":Us,"plugin-config-schema":m.value,"record-resolver":g,"onFetch:error":P[0]||(P[0]=w=>x.$emit("fetch:error",w)),"onFetch:success":P[1]||(P[1]=w=>x.$emit("fetch:success",w)),onLoading:P[2]||(P[2]=w=>x.$emit("loading",w))},t.createSlots({name:t.withCtx(w=>[t.createElementVNode("div",L2,[t.createVNode(t.unref(An.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",w),size:24},null,8,["name"]),t.createElementVNode("span",F2,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",w))),1)])]),consumer:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",U2,"–"))]),route:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",K2,"–"))]),service:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",j2,"–"))]),consumer_group:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",w).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",G2,"–"))]),partials:t.withCtx(w=>{var F,S,M,O,j,W,L,U,T;return[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:(S=(F=t.unref(s)("rowValue",w))==null?void 0:F[0])==null?void 0:S.id,value:((O=(M=t.unref(s)("rowValue",w))==null?void 0:M[0])==null?void 0:O.id)+((W=(j=t.unref(s)("rowValue",w))==null?void 0:j[0])!=null&&W.name?"/"+((U=(L=t.unref(s)("rowValue",w))==null?void 0:L[0])==null?void 0:U.name):""),type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var V,G;return x.$emit("navigation-click",(G=(V=t.unref(s)("rowValue",w))==null?void 0:V[0])==null?void 0:G.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(v,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"partial-copy-uuid",text:(T=t.unref(s)("rowValue",w))==null?void 0:T[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",q2,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(w=>[t.createVNode(D2,{"plugin-data":w.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:H2,useProvideExperimentalFreeForms:Y2}=Ve;Object.defineProperty(Ie,"PluginGroup",{enumerable:!0,get:()=>X.PluginGroup}),Object.defineProperty(Ie,"PluginScope",{enumerable:!0,get:()=>X.PluginScope}),Object.defineProperty(Ie,"PluginIcon",{enumerable:!0,get:()=>An.PluginIcon}),Object.defineProperty(Ie,"getPluginIconURL",{enumerable:!0,get:()=>An.getPluginIconURL}),Ie.EXPERIMENTAL_FREE_FORM_PROVIDER=Ga,Ie.EntityTypeIdField=In,Ie.FEATURE_FLAGS=pn,Ie.PLUGIN_GROUPS_COLLAPSE_STATUS=pa,Ie.PluginCatalog=O2,Ie.PluginConfigCard=z2,Ie.PluginFeaturedArray=Dr,Ie.PluginForm=uL,Ie.PluginGroupArray=Mo,Ie.PluginList=wL,Ie.PluginPartialType=Rr,Ie.PluginSelect=qL,Ie.PluginSelectCard=Rs,Ie.PluginSelectGrid=Fs,Ie.TOASTER_PROVIDER=pd,Ie.pluginEndpoints=Ke,Ie.usePluginMetaData=H2,Ie.useProvideExperimentalFreeForms=Y2,Object.defineProperty(Ie,Symbol.toStringTag,{value:"Module"})});