@odigos/ui-kit 0.0.263-dev.519 → 0.0.264
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.
- package/CHANGELOG.md +16 -0
- package/docs/api-context.md +1 -1
- package/lib/chunks/index-B-zICLj7.js +155 -0
- package/lib/chunks/odigos-context-_YAZF63s.js +9 -0
- package/lib/chunks/source-instrument-form-context-CZQIaTUV.js +5 -0
- package/lib/chunks/ui-components-CAPnizLR.js +1543 -0
- package/lib/components/{_v2/cards → _cards}/data-card/index.d.ts +3 -3
- package/lib/components/{_v2/cards → _cards}/section-card/index.d.ts +2 -2
- package/lib/components/{_v2/cards → _cards}/status-card/index.d.ts +1 -1
- package/lib/components/{_v2/autocomplete → autocomplete}/index.d.ts +1 -1
- package/lib/components/{_v2/badge → badge}/index.d.ts +1 -1
- package/lib/components/{_v2/button → button}/index.d.ts +1 -1
- package/lib/components/{_v2/button-tab → button-tab}/index.d.ts +1 -1
- package/lib/components/{_v2/checkbox → checkbox}/index.d.ts +1 -1
- package/lib/components/code/index.d.ts +3 -4
- package/lib/components/code/toggle-code-component/index.d.ts +2 -3
- package/lib/components/{_v2/condition → condition}/index.d.ts +1 -1
- package/lib/components/{_v2/conditions → conditions}/index.d.ts +1 -1
- package/lib/components/divider/index.d.ts +4 -5
- package/lib/components/{_v2/drawer → drawer}/header/index.d.ts +1 -1
- package/lib/components/{_v2/drop-data → drop-data}/index.d.ts +1 -1
- package/lib/components/error-boundary/index.d.ts +2 -3
- package/lib/components/icon-button/index.d.ts +15 -11
- package/lib/components/icon-group/index.d.ts +6 -7
- package/lib/components/index.d.ts +38 -8
- package/lib/components/{_v2/input → input}/index.d.ts +1 -1
- package/lib/components/{_v2/input-table → input-table}/types.d.ts +1 -1
- package/lib/components/{_v2/island → island}/index.d.ts +2 -2
- package/lib/components/{_v2/loader → loader}/index.d.ts +1 -1
- package/lib/components/{_v2/navbar → navbar}/index.d.ts +1 -1
- package/lib/components/{_v2/no-data → no-data}/index.d.ts +1 -1
- package/lib/components/{_v2/note → note}/index.d.ts +1 -1
- package/lib/components/{_v2/radio → radio}/index.d.ts +1 -1
- package/lib/components/scroll-y/index.d.ts +2 -3
- package/lib/components/{_v2/segment → segment}/index.d.ts +1 -1
- package/lib/components/skeleton-loader/index.d.ts +2 -3
- package/lib/components/{_v2/table → table}/table-columns/index.d.ts +1 -1
- package/lib/components/{_v2/table → table}/table-columns/sort/index.d.ts +1 -1
- package/lib/components/{_v2/tag → tag}/index.d.ts +1 -1
- package/lib/components/{_v2/toggle → toggle}/index.d.ts +1 -1
- package/lib/components/tooltip/index.d.ts +9 -5
- package/lib/components.js +1 -1
- package/lib/constants/actions/index.d.ts +1 -1
- package/lib/constants/instrumentation-rules/index.d.ts +1 -1
- package/lib/constants/regex.d.ts +1 -1
- package/lib/constants/sampling/index.d.ts +1 -1
- package/lib/constants/signals/index.d.ts +1 -1
- package/lib/constants/sources/index.d.ts +2 -2
- package/lib/constants/strings/index.d.ts +0 -64
- package/lib/constants.js +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-action-drawer/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-destination-drawer/form-column/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-destination-drawer/helpers.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/add-destination-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/add-destination-drawer/lists-column/index.d.ts +3 -3
- package/lib/containers/{_v2/_drawers → _drawers}/add-destination-drawer/lists-filters/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/add-destination-drawer/types.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/add-rule-drawer/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/namespaces-column/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/strings.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/types.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/utils.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/workloads-column/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-action-drawer/helpers.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-config-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-destination-drawer/helpers.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-rule-drawer/helpers.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/common/pods-header.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/debug/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/helpers.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/jump-to-target-context.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/containers-card/distro-override.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/containers-card/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/containers-card/runtime-override.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/health-card.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/main-card.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/container-row.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/helpers.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/pod-row.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/process-row.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/row-header.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/pods-card/pods-list/types.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/statuses-card.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/peers/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/pods/containers-card/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/pods/containers-card/process-card.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/pods/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/pods/pod-card.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/symbol-table/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/symbol-table/symbol-instrumentation.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/symbol-table/use-symbol-instrumentation.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/sampling/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/sampling/rule-row.d.ts +2 -1
- package/lib/containers/{_v2/_drawers → _drawers}/index.d.ts +0 -1
- package/lib/containers/{_v2/_drawers → _drawers}/sampling-rule-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/sampling-rule-drawer/view-footer.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/system-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/_drawers → _drawers}/system-drawer/tokens/index.d.ts +1 -1
- package/lib/containers/{_v2/_drawers → _drawers}/system-drawer/tokens/token-value.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/add-cluster-info/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/delete-attributes/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/extract-attribute/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/k8s-attributes/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/pii-masking/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/rename-attributes/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/custom-fields/url-templatization/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-action-form/dynamic-fields/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-destination-form/dynamic-fields/index.d.ts +2 -2
- package/lib/containers/{_v2/_forms → _forms}/add-destination-form/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-rule-form/custom-fields/code-attributes/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-rule-form/custom-fields/custom-instrumentation/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-rule-form/custom-fields/headers-collection/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-rule-form/custom-fields/index.d.ts +1 -1
- package/lib/containers/{_v2/_forms → _forms}/add-rule-form/custom-fields/payload-collection/index.d.ts +1 -1
- package/lib/containers/{_v2/_modals → _modals}/onboarding-done/index.d.ts +0 -1
- package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/preset-row.d.ts +1 -1
- package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/types.d.ts +1 -1
- package/lib/containers/{_v2/central-connections → central-connections}/helpers.d.ts +5 -14
- package/lib/containers/central-connections/index.d.ts +11 -0
- package/lib/containers/index.d.ts +9 -0
- package/lib/containers/{_v2/onboarding → onboarding}/summary/index.d.ts +2 -2
- package/lib/containers/{_v2/overview → overview}/columns/column/empty-add.d.ts +1 -1
- package/lib/containers/{_v2/overview → overview}/columns/column/head.d.ts +1 -1
- package/lib/containers/{_v2/overview → overview}/columns/column/index.d.ts +1 -1
- package/lib/containers/{_v2/overview → overview}/columns/column/list-item.d.ts +1 -1
- package/lib/containers/{_v2/overview → overview}/columns/column/source-visual-state.d.ts +1 -1
- package/lib/containers/{_v2/overview → overview}/search/builder.d.ts +2 -2
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/helpers/get-general-badge.d.ts +3 -3
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/helpers/get-general-gauge-cards.d.ts +2 -2
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/helpers/get-general-status-card.d.ts +2 -2
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/helpers/get-general-text-cards.d.ts +2 -2
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/index.d.ts +1 -1
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/yaml-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/index.d.ts +2 -1
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/pods-info/index.d.ts +1 -1
- package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/pods-info/pod-drawer/index.d.ts +2 -2
- package/lib/containers/{_v2/sampling-rules → sampling-rules}/auto-rule-card/index.d.ts +1 -1
- package/lib/containers/{_v2/sampling-rules → sampling-rules}/converters.d.ts +1 -1
- package/lib/containers/{_v2/sampling-rules → sampling-rules}/helpers.d.ts +3 -3
- package/lib/containers/{_v2/sampling-rules → sampling-rules}/rules-table/index.d.ts +1 -1
- package/lib/containers/{_v2/sampling-rules → sampling-rules}/toolbar/index.d.ts +1 -1
- package/lib/containers/{_v2/sampling-rules → sampling-rules}/types.d.ts +1 -1
- package/lib/containers/service-map/helpers/aggregate-service-map.d.ts +1 -1
- package/lib/containers/service-map/helpers/build-edges.d.ts +1 -1
- package/lib/containers/service-map/helpers/build-map-nodes.d.ts +1 -1
- package/lib/containers/service-map/helpers/types.d.ts +2 -2
- package/lib/containers/service-map/service-map-context.d.ts +1 -1
- package/lib/containers/{_v2/settings → settings}/index.d.ts +2 -1
- package/lib/containers.js +1011 -16
- package/lib/contexts/action-form-context.d.ts +2 -2
- package/lib/contexts/data-stream-form-context.d.ts +2 -2
- package/lib/contexts/destination-form-context.d.ts +3 -3
- package/lib/contexts/index.d.ts +0 -1
- package/lib/contexts/odigos-api/client.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-actions-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-collectors-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-config-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-data-streams-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-describe-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-destinations-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-instrumentation-rules-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-namespace-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-profiling-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-sampling-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-service-map-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-snapshots-api.d.ts +1 -1
- package/lib/contexts/odigos-api/hooks/use-sources-api.d.ts +2 -2
- package/lib/contexts/odigos-api/hooks/use-tokens-api.d.ts +1 -1
- package/lib/contexts/odigos-api/index.d.ts +2 -4
- package/lib/contexts/odigos-api/internal/notify.d.ts +2 -2
- package/lib/contexts/odigos-api/internal/source-payloads.d.ts +2 -2
- package/lib/contexts/odigos-api/platform-helpers.d.ts +2 -2
- package/lib/contexts/odigos-api/runner.d.ts +3 -3
- package/lib/contexts/odigos-api/types.d.ts +7 -14
- package/lib/contexts/odigos-api/use-api-query.d.ts +11 -10
- package/lib/contexts/odigos-context.d.ts +5 -3
- package/lib/contexts/rule-form-context.d.ts +3 -3
- package/lib/contexts/sampling-rules-form-context.d.ts +2 -2
- package/lib/contexts/source-edit-form-context.d.ts +2 -2
- package/lib/contexts/source-instrument-form-context.d.ts +2 -2
- package/lib/contexts.js +1 -1
- package/lib/functions/build-badge-for-desired-status/index.d.ts +2 -2
- package/lib/functions/clean-object-empty-strings-values/index.d.ts +1 -1
- package/lib/functions/compare-condition/index.d.ts +1 -1
- package/lib/functions/filter-actions/index.d.ts +2 -2
- package/lib/functions/filter-destinations/index.d.ts +2 -2
- package/lib/functions/filter-destinations-by-stream/index.d.ts +1 -1
- package/lib/functions/filter-sources/index.d.ts +2 -2
- package/lib/functions/filter-sources-by-stream/index.d.ts +1 -1
- package/lib/functions/flatten-object-keys/index.d.ts +1 -1
- package/lib/functions/get-action-icon/index.d.ts +1 -1
- package/lib/functions/get-conditions-booleans/index.d.ts +1 -1
- package/lib/functions/get-containers-counts/index.d.ts +1 -1
- package/lib/functions/get-containers-icons/index.d.ts +1 -1
- package/lib/functions/get-destination-icon/index.d.ts +1 -1
- package/lib/functions/get-entity-icon/index.d.ts +1 -1
- package/lib/functions/get-entity-id/index.d.ts +1 -1
- package/lib/functions/get-entity-label/index.d.ts +1 -1
- package/lib/functions/get-health-badge-label/index.d.ts +1 -1
- package/lib/functions/get-id-from-sse-target/index.d.ts +1 -1
- package/lib/functions/get-instrumentation-rule-icon/index.d.ts +1 -1
- package/lib/functions/get-main-container-language/index.d.ts +1 -1
- package/lib/functions/get-metric-for-entity/index.d.ts +1 -1
- package/lib/functions/get-monitor-icon/index.d.ts +1 -1
- package/lib/functions/get-nearest-typography-size/index.d.ts +1 -1
- package/lib/functions/get-platform-icon/index.d.ts +1 -1
- package/lib/functions/get-platform-label/index.d.ts +1 -1
- package/lib/functions/get-programming-language-icon/index.d.ts +1 -1
- package/lib/functions/get-sse-target-from-id/index.d.ts +1 -1
- package/lib/functions/get-status-color/index.d.ts +1 -1
- package/lib/functions/get-status-from-pod-status/index.d.ts +1 -1
- package/lib/functions/get-status-icon/index.d.ts +1 -1
- package/lib/functions/get-status-type-from-odigos-health/index.d.ts +1 -1
- package/lib/functions/get-virtual-service-icon/index.d.ts +1 -1
- package/lib/functions/get-workload-id/index.d.ts +1 -1
- package/lib/functions/get-yaml-fields-for-destination/index.d.ts +1 -1
- package/lib/functions/has-unhealthy-instances/index.d.ts +1 -1
- package/lib/functions/instrumentation-rule-source-scopes/index.d.ts +1 -1
- package/lib/functions/map-conditions/index.d.ts +1 -1
- package/lib/functions/map-desired-status-to-condition-status/index.d.ts +1 -1
- package/lib/functions/map-destination-fields-for-display/index.d.ts +1 -1
- package/lib/functions/map-signals/index.d.ts +1 -1
- package/lib/functions/prepare-destination-form-data/index.d.ts +1 -1
- package/lib/functions/remove-empty-values-from-object/index.d.ts +1 -1
- package/lib/functions/safe-json-parse/index.d.ts +1 -1
- package/lib/functions/safe-json-stringify/index.d.ts +1 -1
- package/lib/functions/stringify-non-string-values/index.d.ts +1 -1
- package/lib/functions.js +1 -1
- package/lib/hooks/index.d.ts +0 -2
- package/lib/hooks/useActionFormData.d.ts +2 -2
- package/lib/hooks/useCopy.d.ts +1 -1
- package/lib/hooks/useDataStreamFormData.d.ts +1 -1
- package/lib/hooks/useDestinationFormData.d.ts +1 -1
- package/lib/hooks/useGenericForm.d.ts +1 -1
- package/lib/hooks/useInstrumentationRuleFormData.d.ts +2 -2
- package/lib/hooks/usePopup.d.ts +1 -1
- package/lib/hooks/useSourceFormData.d.ts +1 -1
- package/lib/hooks.js +1 -1
- package/lib/icons/actions/add-cluster-info-icon/index.d.ts +1 -1
- package/lib/icons/actions/delete-attribute-icon/index.d.ts +1 -1
- package/lib/icons/actions/pii-masking-icon/index.d.ts +1 -1
- package/lib/icons/actions/rename-attribute-icon/index.d.ts +1 -1
- package/lib/icons/actions/sampler-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-down-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-down-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-left-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-left-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-right-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-right-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-up-icon/index.d.ts +1 -1
- package/lib/icons/arrows/arrow-up-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-down-circle-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-down-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-down-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-left-circle-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-left-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-left-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-right-circle-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-right-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-right-square-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-up-circle-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-up-icon/index.d.ts +1 -1
- package/lib/icons/arrows/chevron-up-square-icon/index.d.ts +1 -1
- package/lib/icons/auth/okta-icon/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text-central/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text-colored-central/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text-colored-community/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text-colored-enterprise/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text-community/index.d.ts +1 -1
- package/lib/icons/brand/odigos-logo-text-enterprise/index.d.ts +1 -1
- package/lib/icons/common/arrow-icon/index.d.ts +1 -1
- package/lib/icons/common/avatar-icon/index.d.ts +1 -1
- package/lib/icons/common/book-icon/index.d.ts +1 -1
- package/lib/icons/common/code-brackets-icon/index.d.ts +1 -1
- package/lib/icons/common/code-icon/index.d.ts +1 -1
- package/lib/icons/common/command-icon/index.d.ts +1 -1
- package/lib/icons/common/copy-icon/index.d.ts +1 -1
- package/lib/icons/common/delete-icon/index.d.ts +1 -1
- package/lib/icons/common/diagnose-icon/index.d.ts +1 -1
- package/lib/icons/common/dot-icon/index.d.ts +1 -1
- package/lib/icons/common/dots-horizontal-icon/index.d.ts +1 -1
- package/lib/icons/common/dots-vertical-icon/index.d.ts +1 -1
- package/lib/icons/common/download-icon/index.d.ts +1 -1
- package/lib/icons/common/edit-icon/index.d.ts +1 -1
- package/lib/icons/common/edited-icon/index.d.ts +1 -1
- package/lib/icons/common/exclamation-circle-icon/index.d.ts +1 -1
- package/lib/icons/common/exclamation-triangle-icon/index.d.ts +1 -1
- package/lib/icons/common/expand-icon/index.d.ts +1 -1
- package/lib/icons/common/extend-arrow-icon/index.d.ts +1 -1
- package/lib/icons/common/filter-icon/index.d.ts +1 -1
- package/lib/icons/common/folder-icon/index.d.ts +1 -1
- package/lib/icons/common/gear-icon/index.d.ts +1 -1
- package/lib/icons/common/home-icon/index.d.ts +1 -1
- package/lib/icons/common/i-square-icon/index.d.ts +1 -1
- package/lib/icons/common/image-error-icon/index.d.ts +1 -1
- package/lib/icons/common/inbound-icon/index.d.ts +1 -1
- package/lib/icons/common/key-icon/index.d.ts +1 -1
- package/lib/icons/common/list-icon/index.d.ts +1 -1
- package/lib/icons/common/lock-icon/index.d.ts +1 -1
- package/lib/icons/common/minus-circled-icon/index.d.ts +1 -1
- package/lib/icons/common/minus-icon/index.d.ts +1 -1
- package/lib/icons/common/no-data-icon/index.d.ts +1 -1
- package/lib/icons/common/notebook-icon/index.d.ts +1 -1
- package/lib/icons/common/notification-icon/index.d.ts +1 -1
- package/lib/icons/common/outbound-icon/index.d.ts +1 -1
- package/lib/icons/common/plus-circled-icon/index.d.ts +1 -1
- package/lib/icons/common/plus-icon/index.d.ts +1 -1
- package/lib/icons/common/question-circle-icon/index.d.ts +1 -1
- package/lib/icons/common/refresh-icon/index.d.ts +1 -1
- package/lib/icons/common/refresh-left-arrow-icon/index.d.ts +1 -1
- package/lib/icons/common/refresh-right-arrow-icon/index.d.ts +1 -1
- package/lib/icons/common/role-icon/index.d.ts +1 -1
- package/lib/icons/common/rotate-arrows-icon/index.d.ts +1 -1
- package/lib/icons/common/search-icon/index.d.ts +1 -1
- package/lib/icons/common/server-disconnected-icon/index.d.ts +1 -1
- package/lib/icons/common/settings-icon/index.d.ts +1 -1
- package/lib/icons/common/sort-arrows-icon/index.d.ts +1 -1
- package/lib/icons/common/star-icon/index.d.ts +1 -1
- package/lib/icons/common/terminal-icon/index.d.ts +1 -1
- package/lib/icons/common/trash-icon/index.d.ts +1 -1
- package/lib/icons/common/user-circle-icon/index.d.ts +1 -1
- package/lib/icons/common/user-group-icon/index.d.ts +1 -1
- package/lib/icons/common/user-icon/index.d.ts +1 -1
- package/lib/icons/common/user-settings-icon/index.d.ts +1 -1
- package/lib/icons/common/v-icon/index.d.ts +1 -1
- package/lib/icons/common/v-square-icon/index.d.ts +1 -1
- package/lib/icons/common/x-icon/index.d.ts +1 -1
- package/lib/icons/common/x-square-icon/index.d.ts +1 -1
- package/lib/icons/compute-platform/index.d.ts +0 -2
- package/lib/icons/compute-platform/k8s-logo/index.d.ts +1 -1
- package/lib/icons/compute-platform/vm-logo/index.d.ts +1 -1
- package/lib/icons/destinations/alauda-logo/index.d.ts +1 -1
- package/lib/icons/destinations/alibaba-cloud-logo/index.d.ts +1 -1
- package/lib/icons/destinations/app-dynamics-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-api-gateway-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-bedrock-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-cloudwatch-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-dynamodb-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-ec2-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-eventbridge-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-kinesis-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-lambda-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-s3-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-secrets-manager-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-sns-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-sqs-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-step-functions-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-sts-logo/index.d.ts +1 -1
- package/lib/icons/destinations/aws-xray-logo/index.d.ts +1 -1
- package/lib/icons/destinations/axiom-logo/index.d.ts +1 -1
- package/lib/icons/destinations/azure-blob-logo/index.d.ts +1 -1
- package/lib/icons/destinations/azure-monitor-logo/index.d.ts +1 -1
- package/lib/icons/destinations/better-stack-logo/index.d.ts +1 -1
- package/lib/icons/destinations/bonree-logo/index.d.ts +1 -1
- package/lib/icons/destinations/causely-logo/index.d.ts +1 -1
- package/lib/icons/destinations/checkly-logo/index.d.ts +1 -1
- package/lib/icons/destinations/chronosphere-logo/index.d.ts +1 -1
- package/lib/icons/destinations/clickhouse-logo/index.d.ts +1 -1
- package/lib/icons/destinations/coralogix-logo/index.d.ts +1 -1
- package/lib/icons/destinations/dash0-logo/index.d.ts +1 -1
- package/lib/icons/destinations/datadog-logo/index.d.ts +1 -1
- package/lib/icons/destinations/dynatrace-logo/index.d.ts +1 -1
- package/lib/icons/destinations/elastic-apm-logo/index.d.ts +1 -1
- package/lib/icons/destinations/elastic-search-logo/index.d.ts +1 -1
- package/lib/icons/destinations/gigapipe-logo/index.d.ts +1 -1
- package/lib/icons/destinations/google-cloud-platform-logo/index.d.ts +1 -1
- package/lib/icons/destinations/google-cloud-storage-logo/index.d.ts +1 -1
- package/lib/icons/destinations/grafana-logo/index.d.ts +1 -1
- package/lib/icons/destinations/greptime-logo/index.d.ts +1 -1
- package/lib/icons/destinations/groundcover-logo/index.d.ts +1 -1
- package/lib/icons/destinations/honeycomb-logo/index.d.ts +1 -1
- package/lib/icons/destinations/hyperdx-logo/index.d.ts +1 -1
- package/lib/icons/destinations/instana-logo/index.d.ts +1 -1
- package/lib/icons/destinations/jaeger-logo/index.d.ts +1 -1
- package/lib/icons/destinations/kafka-logo/index.d.ts +1 -1
- package/lib/icons/destinations/kloudmate-logo/index.d.ts +1 -1
- package/lib/icons/destinations/last9-logo/index.d.ts +1 -1
- package/lib/icons/destinations/lightstep-logo/index.d.ts +1 -1
- package/lib/icons/destinations/logzio-logo/index.d.ts +1 -1
- package/lib/icons/destinations/loki-logo/index.d.ts +1 -1
- package/lib/icons/destinations/lumigo-logo/index.d.ts +1 -1
- package/lib/icons/destinations/middleware-logo/index.d.ts +1 -1
- package/lib/icons/destinations/new-relic-logo/index.d.ts +1 -1
- package/lib/icons/destinations/observe-logo/index.d.ts +1 -1
- package/lib/icons/destinations/odigos-destination-logo/index.d.ts +1 -1
- package/lib/icons/destinations/one-uptime-logo/index.d.ts +1 -1
- package/lib/icons/destinations/open-observe-logo/index.d.ts +1 -1
- package/lib/icons/destinations/open-telemetry-logo/index.d.ts +1 -1
- package/lib/icons/destinations/ops-verse-logo/index.d.ts +1 -1
- package/lib/icons/destinations/oracle-logo/index.d.ts +1 -1
- package/lib/icons/destinations/prometheus-logo/index.d.ts +1 -1
- package/lib/icons/destinations/pyroscope-logo/index.d.ts +1 -1
- package/lib/icons/destinations/qryn-logo/index.d.ts +1 -1
- package/lib/icons/destinations/quickwit-logo/index.d.ts +1 -1
- package/lib/icons/destinations/sentry-logo/index.d.ts +1 -1
- package/lib/icons/destinations/seq-logo/index.d.ts +1 -1
- package/lib/icons/destinations/signoz-logo/index.d.ts +1 -1
- package/lib/icons/destinations/splunk-logo/index.d.ts +1 -1
- package/lib/icons/destinations/sumo-logic-logo/index.d.ts +1 -1
- package/lib/icons/destinations/telemetry-hub-logo/index.d.ts +1 -1
- package/lib/icons/destinations/tempo-logo/index.d.ts +1 -1
- package/lib/icons/destinations/tingyun-logo/index.d.ts +1 -1
- package/lib/icons/destinations/traceloop-logo/index.d.ts +1 -1
- package/lib/icons/destinations/uptrace-logo/index.d.ts +1 -1
- package/lib/icons/destinations/victoria-metrics-logo/index.d.ts +1 -1
- package/lib/icons/instrumentation-rules/code-attributes-icon/index.d.ts +1 -1
- package/lib/icons/instrumentation-rules/custom-instrumentation-icon/index.d.ts +1 -1
- package/lib/icons/instrumentation-rules/headers-collection-icon/index.d.ts +1 -1
- package/lib/icons/instrumentation-rules/payload-collection-icon/index.d.ts +1 -1
- package/lib/icons/monitors/logs-icon/index.d.ts +1 -1
- package/lib/icons/monitors/metrics-icon/index.d.ts +1 -1
- package/lib/icons/monitors/traces-icon/index.d.ts +1 -1
- package/lib/icons/on-off/eye-closed-icon/index.d.ts +1 -1
- package/lib/icons/on-off/eye-open-icon/index.d.ts +1 -1
- package/lib/icons/on-off/light-off-icon/index.d.ts +1 -1
- package/lib/icons/on-off/light-on-icon/index.d.ts +1 -1
- package/lib/icons/on-off/moon-icon/index.d.ts +1 -1
- package/lib/icons/on-off/sound-off-icon/index.d.ts +1 -1
- package/lib/icons/on-off/sound-on-icon/index.d.ts +1 -1
- package/lib/icons/on-off/sun-icon/index.d.ts +1 -1
- package/lib/icons/overview/action-icon/index.d.ts +1 -1
- package/lib/icons/overview/connections-icon/index.d.ts +1 -1
- package/lib/icons/overview/data-stream-icon/index.d.ts +1 -1
- package/lib/icons/overview/destination-icon/index.d.ts +1 -1
- package/lib/icons/overview/gateway-icon/index.d.ts +1 -1
- package/lib/icons/overview/instrumentation-rule-icon/index.d.ts +1 -1
- package/lib/icons/overview/log-icon/index.d.ts +1 -1
- package/lib/icons/overview/namespaces-icon/index.d.ts +1 -1
- package/lib/icons/overview/overview-icon/index.d.ts +1 -1
- package/lib/icons/overview/pipeline-collector-icon/index.d.ts +1 -1
- package/lib/icons/overview/pod-icon/index.d.ts +1 -1
- package/lib/icons/overview/replica-icon/index.d.ts +1 -1
- package/lib/icons/overview/sampling-icon/index.d.ts +1 -1
- package/lib/icons/overview/service-map-icon/index.d.ts +1 -1
- package/lib/icons/overview/source-icon/index.d.ts +1 -1
- package/lib/icons/overview/trace-view-icon/index.d.ts +1 -1
- package/lib/icons/overview/yaml-icon/index.d.ts +1 -1
- package/lib/icons/programming-languages/aws-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/c-plus-plus-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/c-sharp-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/dotnet-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/elixir-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/go-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/java-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/mysql-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/nginx-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/nodejs-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/php-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/postgres-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/python-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/redis-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/ruby-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/rust-logo/index.d.ts +1 -1
- package/lib/icons/programming-languages/swift-logo/index.d.ts +1 -1
- package/lib/icons/social/slack-logo/index.d.ts +1 -1
- package/lib/icons.js +1 -1
- package/lib/snippets/{_v2/actions → actions}/index.d.ts +2 -2
- package/lib/snippets/{_v2/cancel-modal → cancel-modal}/index.d.ts +1 -1
- package/lib/snippets/{_v2/delete-modal → delete-modal}/index.d.ts +1 -1
- package/lib/snippets/{_v2/dynamic-field → dynamic-field}/index.d.ts +6 -2
- package/lib/snippets/index.d.ts +13 -1
- package/lib/snippets/{_v2/instrumentation-rule-form-sections → instrumentation-rule-form-sections}/instrumentation-preview.d.ts +1 -1
- package/lib/snippets/{_v2/rich-title → rich-title}/index.d.ts +3 -3
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/duration-errors.d.ts +2 -2
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/operation.d.ts +1 -1
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/percentage.d.ts +1 -1
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/preset-with-custom-input.d.ts +1 -1
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/rule-info.d.ts +1 -1
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/rule-type.d.ts +1 -1
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/sampling-preview.d.ts +2 -2
- package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/source-scope.d.ts +2 -2
- package/lib/snippets/{_v2/signals-checkbox-list → signals-checkbox-list}/index.d.ts +1 -1
- package/lib/snippets/{_v2/wide-drawer → wide-drawer}/column-list-item/index.d.ts +1 -1
- package/lib/snippets/{_v2/wide-drawer → wide-drawer}/index.d.ts +6 -3
- package/lib/snippets/{_v2/yaml-section-card → yaml-section-card}/index.d.ts +1 -1
- package/lib/snippets.js +1 -1
- package/lib/store/index.d.ts +0 -1
- package/lib/store/useDataStreamStore.d.ts +1 -1
- package/lib/store/useDrawerStore.d.ts +16 -3
- package/lib/store/useFilterStore.d.ts +1 -1
- package/lib/store/useNotificationStore.d.ts +1 -1
- package/lib/store/useProgressStore.d.ts +1 -1
- package/lib/store/useSelectedStore.d.ts +1 -1
- package/lib/store/useSetupStore.d.ts +1 -1
- package/lib/store.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/types/actions/index.d.ts +5 -2
- package/lib/types/common/index.d.ts +11 -2
- package/lib/types/destinations/index.d.ts +1 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/types/sampling.d.ts +1 -1
- package/lib/types/snapshot/index.d.ts +0 -1
- package/lib/types/sources/index.d.ts +0 -1
- package/lib/types/workload/index.d.ts +0 -1
- package/lib/types.js +1 -1
- package/lib/visuals/visual-green-rings/index.d.ts +1 -1
- package/lib/visuals/visual-purple-rings/index.d.ts +1 -1
- package/lib/visuals.js +1 -1
- package/package.json +19 -39
- package/lib/chunks/connections-scope-DEVWbigK.js +0 -1
- package/lib/chunks/consts-D6GCMJ6c.js +0 -1
- package/lib/chunks/index-BVtv0LGZ.js +0 -155
- package/lib/chunks/odigos-context-DGEWcwEQ.js +0 -18
- package/lib/chunks/source-instrument-form-context-DMCdySjE.js +0 -1
- package/lib/chunks/ui-components-BDtk3K99.js +0 -1742
- package/lib/chunks/use-odigos-api-ZAJiPzPh.js +0 -5
- package/lib/chunks/vendor-BFqT13Me.js +0 -1
- package/lib/components/_v2/icon-button/index.d.ts +0 -16
- package/lib/components/_v2/icon-group/index.d.ts +0 -11
- package/lib/components/_v2/index.d.ts +0 -41
- package/lib/components/_v2/radio-card/index.d.ts +0 -16
- package/lib/components/fade-loader/helpers/animation.d.ts +0 -1
- package/lib/components/fade-loader/helpers/unitConverter.d.ts +0 -22
- package/lib/components/fade-loader/index.d.ts +0 -10
- package/lib/components/icon-wrapped/index.d.ts +0 -11
- package/lib/components/image-controlled/index.d.ts +0 -8
- package/lib/components/loading-text/index.d.ts +0 -9
- package/lib/components/notification-note/index.d.ts +0 -22
- package/lib/components/popup/index.d.ts +0 -18
- package/lib/components/scroll-x/index.d.ts +0 -10
- package/lib/components/text/index.d.ts +0 -26
- package/lib/components/v2.js +0 -1
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/index.d.ts +0 -15
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/custom-resource-table.d.ts +0 -9
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/helpers.d.ts +0 -5
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/index.d.ts +0 -2
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/permission-list.d.ts +0 -12
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/permissions.d.ts +0 -25
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/policy-preview.d.ts +0 -5
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/provider-list.d.ts +0 -8
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/create-role-section.d.ts +0 -6
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/enter-arn-section.d.ts +0 -5
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/index.d.ts +0 -5
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/methods.d.ts +0 -30
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/section.d.ts +0 -9
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/validate-connection/index.d.ts +0 -8
- package/lib/containers/_v2/central-connections/index.d.ts +0 -16
- package/lib/containers/_v2/index.d.ts +0 -9
- package/lib/containers/v2.js +0 -1404
- package/lib/contexts/cloud-connector-form-context.d.ts +0 -35
- package/lib/contexts/odigos-api.js +0 -1
- package/lib/hooks/useClickNode.d.ts +0 -6
- package/lib/hooks/useClickNotification.d.ts +0 -7
- package/lib/icons/compute-platform/cloud-connector-icon/index.d.ts +0 -2
- package/lib/icons/compute-platform/cloud-connector-policy-icon/index.d.ts +0 -2
- package/lib/snippets/_v2/connector-created-modal/index.d.ts +0 -7
- package/lib/snippets/_v2/index.d.ts +0 -14
- package/lib/snippets/v2.js +0 -1
- package/lib/store/useModalStore.d.ts +0 -6
- package/lib/types/cloud-connectors/index.d.ts +0 -88
- /package/lib/components/{_v2/cards → _cards}/index.d.ts +0 -0
- /package/lib/components/{_v2/cards → _cards}/text-card/index.d.ts +0 -0
- /package/lib/components/{_v2/charts → charts}/gauge-chart/index.d.ts +0 -0
- /package/lib/components/{_v2/charts → charts}/index.d.ts +0 -0
- /package/lib/components/{_v2/cli-command → cli-command}/index.d.ts +0 -0
- /package/lib/components/{_v2/drawer → drawer}/footer/index.d.ts +0 -0
- /package/lib/components/{_v2/drawer → drawer}/index.d.ts +0 -0
- /package/lib/components/{_v2/drop-down → drop-down}/index.d.ts +0 -0
- /package/lib/components/{_v2/field-message → field-message}/index.d.ts +0 -0
- /package/lib/components/{_v2/field-title → field-title}/index.d.ts +0 -0
- /package/lib/components/{_v2/header → header}/index.d.ts +0 -0
- /package/lib/components/{_v2/hover-actions → hover-actions}/index.d.ts +0 -0
- /package/lib/components/{_v2/input-list → input-list}/index.d.ts +0 -0
- /package/lib/components/{_v2/input-table → input-table}/card-table.d.ts +0 -0
- /package/lib/components/{_v2/input-table → input-table}/dynamic-field/index.d.ts +0 -0
- /package/lib/components/{_v2/input-table → input-table}/index.d.ts +0 -0
- /package/lib/components/{_v2/loader → loader}/spinner/index.d.ts +0 -0
- /package/lib/components/{_v2/loader → loader}/spinner-old/helpers/animation.d.ts +0 -0
- /package/lib/components/{_v2/loader → loader}/spinner-old/helpers/unitConverter.d.ts +0 -0
- /package/lib/components/{_v2/loader → loader}/spinner-old/index.d.ts +0 -0
- /package/lib/components/{_v2/modal → modal}/index.d.ts +0 -0
- /package/lib/components/{_v2/search → search}/index.d.ts +0 -0
- /package/lib/components/{_v2/stepper → stepper}/index.d.ts +0 -0
- /package/lib/components/{_v2/table → table}/index.d.ts +0 -0
- /package/lib/components/{_v2/table → table}/styled.d.ts +0 -0
- /package/lib/components/{_v2/table → table}/table-columns/filter/index.d.ts +0 -0
- /package/lib/components/{_v2/table → table}/table-rows/index.d.ts +0 -0
- /package/lib/components/{_v2/table → table}/types.d.ts +0 -0
- /package/lib/components/{_v2/textarea → textarea}/index.d.ts +0 -0
- /package/lib/components/{_v2/time-input → time-input}/index.d.ts +0 -0
- /package/lib/components/{_v2/typography → typography}/index.d.ts +0 -0
- /package/lib/components/{_v2/typography-truncatable → typography-truncatable}/index.d.ts +0 -0
- /package/lib/components/{_v2/warning-modal → warning-modal}/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/namespaces-column/list/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/add-source-drawer/namespaces-column/list/list-item/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-action-drawer/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-destination-drawer/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-rule-drawer/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/common/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/overview/containers-card/popup-form.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/pods/pod-debug-commands.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/flame-graph-canvas.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/flamebearer.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/profiling/symbol-table/modify-rules-modal.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/edit-source-drawer/tabs.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/regex-tester-drawer/highlighter.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/regex-tester-drawer/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/system-drawer/describe/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/system-drawer/diagnose/index.d.ts +0 -0
- /package/lib/containers/{_v2/_drawers → _drawers}/system-drawer/tokens/token-expires-at.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/add-action-form/index.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/add-rule-form/index.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/data-stream-form/index.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/data-stream-form/merge-warning.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/edit-source-form/index.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/index.d.ts +0 -0
- /package/lib/containers/{_v2/_forms → _forms}/sampling-rule-form/index.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/add-data-stream-modal/index.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/edit-data-stream-modal/index.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/index.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/onboarding-done/background.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/chrome.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/footer.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/header.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/index.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/info-card.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/lists.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/primary-banner.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/section.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/common/sub-title.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/index.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-advanced.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-drop-list.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-keep-list.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-noisy.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-strategy.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-success.d.ts +0 -0
- /package/lib/containers/{_v2/_modals → _modals}/sampling-onboarding-modal/steps/step-welcome.d.ts +0 -0
- /package/lib/containers/{_v2/onboarding → onboarding}/background/index.d.ts +0 -0
- /package/lib/containers/{_v2/onboarding → onboarding}/get-started/index.d.ts +0 -0
- /package/lib/containers/{_v2/onboarding → onboarding}/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/columns/column/namespace-divider.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/columns/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/data-stream-select/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/drawers/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/filters/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/multi-source-control/index.d.ts +0 -0
- /package/lib/containers/{_v2/overview → overview}/search/index.d.ts +0 -0
- /package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/enum.d.ts +0 -0
- /package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/helpers/get-general-title.d.ts +0 -0
- /package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/general-info/helpers/index.d.ts +0 -0
- /package/lib/containers/{_v2/pipeline-collectors → pipeline-collectors}/toolbar/index.d.ts +0 -0
- /package/lib/containers/{_v2/sampling-rules → sampling-rules}/index.d.ts +0 -0
- /package/lib/containers/{_v2/settings → settings}/side-menu/index.d.ts +0 -0
- /package/lib/containers/{_v2/settings → settings}/toolbar/index.d.ts +0 -0
- /package/lib/snippets/{_v2/colored-span → colored-span}/index.d.ts +0 -0
- /package/lib/snippets/{_v2/instrumentation-rule-form-sections → instrumentation-rule-form-sections}/index.d.ts +0 -0
- /package/lib/snippets/{_v2/odigos-logo-text-by-tier → odigos-logo-text-by-tier}/index.d.ts +0 -0
- /package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/index.d.ts +0 -0
- /package/lib/snippets/{_v2/sampling-rule-form-sections → sampling-rule-form-sections}/styled.d.ts +0 -0
- /package/lib/snippets/{_v2/upgrade-modal → upgrade-modal}/index.d.ts +0 -0
- /package/lib/snippets/{_v2/wide-drawer → wide-drawer}/column/index.d.ts +0 -0
- /package/lib/snippets/{_v2/wide-drawer → wide-drawer}/column-list-collapse/index.d.ts +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.264](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.263...ui-kit-v0.0.264) (2026-07-13)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **add-source-drawer:** tooltip explaining why static pods are disabled ([#1065](https://github.com/odigos-io/ui-kit/issues/1065)) ([0582a38](https://github.com/odigos-io/ui-kit/commit/0582a384e98404d500c0ab6b8007bdc6a6153ce9))
|
|
9
|
+
* maintenance ([#1075](https://github.com/odigos-io/ui-kit/issues/1075)) ([770dcbb](https://github.com/odigos-io/ui-kit/commit/770dcbb80889e28d91d9ab618f8f7bda55f65097))
|
|
10
|
+
* **refactor:** consolidate modal store and drawer store ([#1034](https://github.com/odigos-io/ui-kit/issues/1034)) ([0b3912c](https://github.com/odigos-io/ui-kit/commit/0b3912c40dce914f62d81c64fb49409048b5a950))
|
|
11
|
+
* **upgrade-modal:** resolve min supported version by platform type ([#1050](https://github.com/odigos-io/ui-kit/issues/1050)) ([44bdbbd](https://github.com/odigos-io/ui-kit/commit/44bdbbd999a49bb828f9d76406799ab79ea68dae))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
* **source-drawer:** show disabled badge on sampling rules (PLAT-1272) ([#1071](https://github.com/odigos-io/ui-kit/issues/1071)) ([a692902](https://github.com/odigos-io/ui-kit/commit/a692902da6f14f28882576dc3049f0940b160990))
|
|
17
|
+
* **theme:** update color palette values for red colors ([#1074](https://github.com/odigos-io/ui-kit/issues/1074)) ([00c337f](https://github.com/odigos-io/ui-kit/commit/00c337fc871db551dbd255c36216b039e9ef3b83))
|
|
18
|
+
|
|
3
19
|
## [0.0.263](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.262...ui-kit-v0.0.263) (2026-07-05)
|
|
4
20
|
|
|
5
21
|
|
package/docs/api-context.md
CHANGED
|
@@ -610,7 +610,7 @@ The `Operation` shape is platform-aware enough to absorb divergent backend schem
|
|
|
610
610
|
|
|
611
611
|
```typescript
|
|
612
612
|
import { dialects } from '@odigos/vmagent-api-apollo-client/registry';
|
|
613
|
-
import { versionedDocument, vmDialectMap, pickByPlatform } from '@odigos/ui-kit/contexts
|
|
613
|
+
import { versionedDocument, vmDialectMap, pickByPlatform } from '@odigos/ui-kit/contexts';
|
|
614
614
|
|
|
615
615
|
const operations: OdigosApiOperations = {
|
|
616
616
|
GET_WORKLOADS: {
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import{jsx as e,jsxs as a,Fragment as t}from"react/jsx-runtime";import{W as l,B as r,F as n,c as i,d as s,e as o,f as d,C as c,D as u,g as p,I as h,s as g,h as m,i as v,j as f,k as b,l as y,m as x,L as C,n as S,o as $,J as k,G as w,H as T,p as A,q as P,r as M,b as L,u as O,v as I,w as D,S as z,x as X,y as N,z as R,E as H,K as E,M as B,N as V,O as j,Q as q,U as G,V as J,X as U,Y as K,Z as W,_ as F,$ as Y,a0 as Z,a1 as Q,a2 as _,a3 as ee,a4 as ae,a5 as te,a6 as le,a7 as re,a8 as ne,a9 as ie,aa as se,ab as oe,ac as de,ad as ce,ae as ue,af as pe,ag as he,ah as ge,ai as me,aj as ve,ak as fe,al as be,am as ye,an as xe,ao as Ce,ap as Se,aq as $e,ar as ke,as as we,at as Te,au as Ae,av as Pe,aw as Me,ax as Le,ay as Oe,az as Ie,aA as De,aB as ze,aC as Xe,aD as Ne,aE as Re,aF as He,aG as Ee,aH as Be,aI as Ve,aJ as je,aK as qe,aL as Ge,aM as Je,aN as Ue,aO as Ke,aP as We,aQ as Fe,aR as Ye,aS as Ze,aT as Qe,aU as _e,aV as ea,aW as aa,R as ta,aX as la,aY as ra,A as na,aZ as ia,a_ as sa}from"./ui-components-CAPnizLR.js";import oa,{useMemo as da,useCallback as ca,useState as ua,useEffect as pa,useRef as ha,forwardRef as ga,useImperativeHandle as ma}from"react";import{a as va,C as fa,b as ba,u as ya,i as xa,d as Ca,e as Sa,f as $a,g as ka,h as wa,j as Ta,k as Aa,m as Pa}from"./odigos-context-_YAZF63s.js";import{EditIcon as Ma,OdigosLogoTextCentral as La,OdigosLogoTextEnterprise as Oa,OdigosLogoTextCommunity as Ia,OdigosLogoTextColoredCentral as Da,OdigosLogoTextColoredEnterprise as za,OdigosLogoTextColoredCommunity as Xa,ArrowLeftIcon as Na,ArrowRightIcon as Ra,VSquareIcon as Ha,VIcon as Ea,CopyIcon as Ba,YamlIcon as Va}from"../icons.js";import ja,{useTheme as qa}from"styled-components";const Ga=({isOpen:a,onClose:t,onDeny:n,onApprove:i})=>e(l,{title:"Discard changes?",description:"You have unsaved changes.\nIf you cancel now, your changes won't be saved.",isOpen:a,onClose:t,denyButton:{label:"Keep editing",variant:r.Secondary,onClick:()=>{n?.(),t()}},approveButton:{label:"Discard changes",variant:r.Primary,onClick:()=>{i?.(),t()}}}),Ja=({isOpen:a,onClose:t,onDeny:n,onApprove:i,action:s="delete",target:o,description:d,overrideApproveButtonLabel:c,overrideDenyButtonLabel:u})=>{const p=s.charAt(0).toUpperCase()+s.substring(1),h=o?.endsWith("s")?"these":"this";return e(l,{title:`${p}${o?` ${o}`:""}?`,description:d??`Are you sure you want to ${s}${o?` ${h} ${o}`:""}?`,isOpen:a,onClose:t,denyButton:{label:u??"Go back",variant:r.Secondary,onClick:()=>{n?.(),t()}},approveButton:{label:c??p,variant:r.Primary,onClick:()=>{i?.(),t()}}})},Ua=({componentType:a,inputType:t,name:l,label:r,tooltip:b,badge:y,placeholder:x,required:C,disabled:S,value:$,setValue:k,errorMessage:w,warnMessage:T,helpMessage:A,dropdownOptions:P,dropdownNoSearch:M,dropdownNoCheckbox:L,timeUnits:O,timeDefaultUnit:I,toggleSize:D=o.L})=>{switch(a){case n.Input:return e(v,{name:l,type:t,label:r,tooltip:b,badge:y,placeholder:x,required:C,disabled:S,value:$??"",onChange:e=>{const a=e.target.value;k(t===f.Number?""===a?null:Number(a):a)},errorMessage:w,warnMessage:T,helpMessage:A},l);case n.MultiInput:return e(m,{name:l,label:r,tooltip:b,badge:y,placeholder:x,required:C,disabled:S,values:Array.isArray($)?$:g($,[]),setValues:e=>k(e),errorMessage:w,warnMessage:T,helpMessage:A,plain:!0},l);case n.KeyValuePair:return e(h,{name:l,label:r,tooltip:b,badge:y,required:C,disabled:S,limitFieldsPerRow:2,columns:[{keyName:"key",label:"Key",placeholder:"Key"},{keyName:"value",label:"Value",placeholder:"Value"}],values:Array.isArray($)?$:g($,[]),setValues:e=>k(e),errorMessage:w,warnMessage:T,helpMessage:A},l);case n.TextArea:return e(p,{name:l,label:r,tooltip:b,badge:y,required:C,disabled:S,placeholder:x,value:$??"",onChange:e=>k(e.target.value),errorMessage:w,warnMessage:T,helpMessage:A},l);case n.Dropdown:return e(u,{name:l,label:r,tooltip:b,badge:y,placeholder:x,required:C,disabled:S,withSearch:!M,options:P?.map(e=>({id:e.id||"",label:e.label||"",withCheckbox:!L}))||[],values:$?[String($)]:[],setValues:e=>k(e[0]),errorMessage:w,warnMessage:T,helpMessage:A},l);case n.Checkbox:return e(c,{name:l,label:r,tooltip:b,badge:y,value:!0===$||"true"===$,onChange:e=>k(e),disabled:S,errorMessage:w,warnMessage:T,helpMessage:A},l);case n.Time:return e(d,{name:l,label:r,tooltip:b,badge:y,placeholder:x,required:C,disabled:S,value:$??"",setValue:e=>k(e),units:O,defaultUnit:I,errorMessage:w,warnMessage:T,helpMessage:A},l);case n.Toggle:return e(i,{name:l,size:D,labelAlign:s.Right,label:r,tooltip:b,badge:y,value:!0===$||"true"===$,onChange:e=>k(e),disabled:S,errorMessage:w,warnMessage:T,helpMessage:A},l);default:return null}},Ka=ja.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: 24px;
|
|
5
|
+
padding: 8px 16px;
|
|
6
|
+
border-radius: 12px;
|
|
7
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
8
|
+
`,Wa=ja.div`
|
|
9
|
+
flex: 1;
|
|
10
|
+
min-width: 0;
|
|
11
|
+
white-space: pre;
|
|
12
|
+
overflow-x: auto;
|
|
13
|
+
`,Fa=({title:t,summary:l,onEdit:n,renderAction:i})=>{const s=da(()=>{const e=[];return t&&(e.push({text:t,variant:va.Default}),e.push({text:" - ",variant:va.Default})),e.push(...l),e},[t,l]);return a(Ka,{children:[e(Wa,{children:e(fa,{parts:s})}),i&&i(),n&&e(b,{"data-id":"sampling-btn-edit-auto-rule",label:x,rightIcon:Ma,variant:r.Text,size:y.S,onClick:n})]})},Ya={[A.HttpRequest]:"HTTP request",[A.HttpResponse]:"HTTP response",[A.DbQuery]:"DB query",[A.Messaging]:"messaging"};function Za(e,a,t){return 1===e?a:t??`${a}s`}function Qa(e,a){const t=[],l=e.slice(0,3),r=e.slice(3);return l.forEach((e,l)=>{l>0&&t.push({text:", ",variant:va.Default}),t.push({text:e,variant:a})}),r.length>0&&t.push({text:` + ${r.length} more`,variant:va.Default,tooltipItems:r}),t}const _a=({option:a,formState:t,renderAction:l})=>{const r=da(()=>{const e=function(e,a){switch(e){case S.CodeAttributes:return(e=>{const a=Object.values(P).filter(a=>!!e.codeAttributes?.[a]).map(e=>M(e).toLowerCase());return a.length?[{text:"Collect",variant:va.Action},{text:" ",variant:va.Default},...Qa(a,va.Endpoint)]:null})(a);case S.PayloadCollection:return(e=>{const a=Object.values(A).filter(a=>null!=e.payloadCollection?.[a]).map(e=>Ya[e]);return a.length?[{text:"Collect",variant:va.Action},{text:" ",variant:va.Default},...Qa(a,va.Endpoint)]:null})(a);case S.HeadersCollection:return(e=>{const a=(e.headersCollection?.[T.HeaderKeys]??[]).map(e=>e.trim()).filter(e=>e.length>0);if(!a.length)return null;const t=Za(a.length,"HTTP header");return[{text:`Collect ${a.length} ${t}`,variant:va.Action},{text:"",variant:va.Default,tooltipItems:a}]})(a);case S.CustomInstrumentation:return(e=>{const a=(e.customInstrumentations?.[$.Java]??[]).map(e=>new k(e.className,e.methodName)).filter(e=>e.Verify()),t=(e.customInstrumentations?.[$.Golang]??[]).map(e=>new w(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)).filter(e=>e.Verify());if(!(a.length+t.length))return null;const l=[];a.length&&l.push(`${a.length} Java ${Za(a.length,"probe")}`),t.length&&l.push(`${t.length} Go ${Za(t.length,"probe")}`);const r=[...a.map(e=>`Java: ${e.toString()}`),...t.map(e=>`Go: ${e.toString()}`)];return[{text:`Apply ${l.join(" + ")}`,variant:va.Action},{text:"",variant:va.Default,tooltipItems:r}]})(a);default:return null}}(a?.type,t);return e?[...e,...ba(t.sourceScopes)]:[]},[a?.type,t]),n=0===r.length;return e(Fa,{title:n?C:"Instrumentation Rule Preview",summary:r,renderAction:l})},et=({size:a=200,central:t=!1,useInline:l=!1})=>{const{tier:r}=ya();if(l){if(t)return e(La,{size:a});switch(r){case L.Community:return e(Ia,{size:a});case L.Onprem:return e(Oa,{size:a});default:return null}}if(t)return e(Da,{size:a});switch(r){case L.Community:return e(Xa,{size:a});case L.Onprem:return e(za,{size:a});default:return null}},at=[{value:"50",label:"50%"},{value:"25",label:"25%"},{value:"10",label:"10%"},{value:"1",label:"1%"},{value:"custom",label:"Custom"}],tt=[{value:"10",label:"10%"},{value:"1",label:"1%"},{value:"0.5",label:"0.5%"},{value:"0.1",label:"0.1%"},{value:"custom",label:"Custom"}],lt=[{value:"5000",label:"5s"},{value:"1000",label:"1s"},{value:"500",label:"500ms"},{value:"100",label:"100ms"},{value:"50",label:"50ms"},{value:"custom",label:"Custom"}],rt=({description:t,options:l,selected:r,onSelect:n,customName:i,customLabel:s,customPlaceholder:o,customValue:d,onCustomChange:c,customInputType:u=f.Number,customMin:p,customMax:h})=>a(O,{$gap:6,children:[e(I,{label:t}),a(D,{$gap:8,$alignItems:"flex-end",children:[e(z,{options:l,selected:r,setSelected:n}),"custom"===r&&e(v,{name:i,label:s,placeholder:o,type:u,value:d,onChange:c,width:160,min:p,max:h})]})]}),nt=()=>{},it=a=>a.readOnly?e(st,{rule:a.rule}):e(ot,{ruleType:a.ruleType,formState:a.formState,onChange:a.onChange}),st=({rule:t})=>{const l=null!=t.durationAtLeastMs;return t.error?e(X,{richTitle:{title:N},children:e(i,{name:"sampling-view-toggle-keep-errors",onChange:nt,value:!0,size:o.S,label:R,labelAlign:s.Right})}):l?e(X,{richTitle:{title:H},children:a("div",{children:[e(E,{size:j.XXXS,color:V.Secondary,children:B}),e(E,{size:j.XS,children:`${t.durationAtLeastMs}ms`})]})}):null},ot=({ruleType:a,formState:t,onChange:l})=>{const r=ca(e=>l({durationPreset:e}),[l]),n=ca(e=>l({customDurationMs:e.target.value}),[l]);return"Duration"===a?e(X,{richTitle:{title:H,subTitle:q},children:e(rt,{description:B,options:lt,selected:t.durationPreset,onSelect:r,customName:"sampling-input-custom-duration",customLabel:G,customPlaceholder:"200ms",customValue:t.customDurationMs,onCustomChange:n})}):null},dt=ja.div`
|
|
14
|
+
display: flex;
|
|
15
|
+
gap: 32px;
|
|
16
|
+
`,ct=ja.div`
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
19
|
+
gap: 4px;
|
|
20
|
+
`,ut=ja.div`
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-wrap: wrap;
|
|
23
|
+
align-items: flex-end;
|
|
24
|
+
gap: 16px;
|
|
25
|
+
`,pt=ja.div`
|
|
26
|
+
display: flex;
|
|
27
|
+
align-items: flex-end;
|
|
28
|
+
gap: 16px;
|
|
29
|
+
padding: 12px 16px;
|
|
30
|
+
border-radius: 8px;
|
|
31
|
+
background-color: ${({theme:e})=>e.v2.colors.black[500]};
|
|
32
|
+
`,ht=ja.div`
|
|
33
|
+
display: flex;
|
|
34
|
+
align-items: flex-end;
|
|
35
|
+
gap: 10px;
|
|
36
|
+
flex: 1;
|
|
37
|
+
`,gt=ja.div`
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
height: 32px;
|
|
41
|
+
`,mt=ja.div`
|
|
42
|
+
display: flex;
|
|
43
|
+
align-items: flex-end;
|
|
44
|
+
gap: 16px;
|
|
45
|
+
margin-bottom: 12px;
|
|
46
|
+
`,vt="Any",ft="Kafka topic",bt=()=>e("div",{style:{marginBottom:"8px"},children:e(E,{size:j.XS,weight:500,children:"And"})}),yt=[{value:"all",label:"All Operations"},{value:"httpServer",label:"HTTP Server"},{value:"httpClient",label:"HTTP Client"}],xt=[{value:"all",label:"All Operations"},{value:"httpServer",label:"HTTP Server"},{value:"kafkaConsumer",label:"Kafka Consumer"},{value:"kafkaProducer",label:"Kafka Producer"}],Ct=[{id:"",label:vt},{id:"GET",label:"GET"},{id:"POST",label:"POST"},{id:"PUT",label:"PUT"},{id:"DELETE",label:"DELETE"},{id:"PATCH",label:"PATCH"}],St=a=>a.readOnly?e($t,{data:a.data}):e(kt,{category:a.category,formState:a.formState,onChange:a.onChange}),$t=({data:t})=>{const l=da(()=>(e=>{if("noisy"===e.category){const a=e.rule.operation;if(a?.httpServer)return[{id:"type",title:ne,value:re},{id:"route",title:Q,value:a.httpServer.route||a.httpServer.routePrefix||ie},{id:"method",title:te,value:a.httpServer.method||vt}];if(a?.httpClient){const e=[{id:"type",title:ne,value:se}];return a.httpClient.serverAddress&&e.push({id:"serverAddress",title:"Server address",value:a.httpClient.serverAddress}),e.push({id:"route",title:Q,value:a.httpClient.templatedPath||a.httpClient.templatedPathPrefix||ie}),e.push({id:"method",title:te,value:a.httpClient.method||vt}),e}return[{id:"type",title:ne,value:oe}]}const a=e.rule.operation;return a?.httpServer?[{id:"type",title:ne,value:re},{id:"route",title:Q,value:a.httpServer.route||a.httpServer.routePrefix||ie},{id:"method",title:te,value:a.httpServer.method||vt}]:a?.kafkaConsumer?[{id:"type",title:ne,value:de},{id:"topic",title:ft,value:a.kafkaConsumer.kafkaTopic||ie}]:a?.kafkaProducer?[{id:"type",title:ne,value:ce},{id:"topic",title:ft,value:a.kafkaProducer.kafkaTopic||ie}]:[{id:"type",title:ne,value:oe}]})(t),[t]);return e(X,{richTitle:{title:J},children:e(dt,{children:l.map(({id:t,title:l,value:r})=>a(ct,{children:[e(E,{size:j.XXXS,color:V.Secondary,nowrap:!0,children:l}),e(E,{size:j.XS,nowrap:!0,children:r})]},t))})})},kt=({category:t,formState:l,onChange:n})=>{const i=da(()=>"noisy"===t?yt:xt,[t]),s=ca(e=>n({operationType:e,route:"",serverAddress:"",method:"",kafkaTopic:""}),[n]),o=ca(e=>a=>{a&&n({routeType:e,route:""})},[n]),d=ca(e=>n({route:e.target.value}),[n]),c=ca(e=>n({serverAddress:e.target.value}),[n]),u=ca(e=>n({method:e[0]||""}),[n]),p=ca(e=>n({kafkaTopic:e.target.value}),[n]),h="httpServer"===l.operationType||"httpClient"===l.operationType,g="kafkaConsumer"===l.operationType||"kafkaProducer"===l.operationType,m="httpClient"===l.operationType?Z:Q,f="httpClient"===l.operationType?_:ee;return a(X,{richTitle:{title:`2. ${J}`,subTitle:U},children:[e(O,{$alignItems:"flex-start",children:e(z,{options:i,selected:l.operationType,setSelected:s})}),h&&a(ut,{children:["httpClient"===l.operationType&&a(mt,{children:[e(v,{name:"sampling-input-server-address",label:W,placeholder:K,value:l.serverAddress,onChange:c}),e(bt,{})]}),a(pt,{children:[a(ht,{children:[e(gt,{children:e(F,{"data-id":"sampling-radio-route",value:"route"===l.routeType,onChange:o("route")})}),e(v,{name:"sampling-input-route",label:m,placeholder:Y,value:"route"===l.routeType?l.route:"",onChange:d,disabled:"route"!==l.routeType})]}),a(ht,{children:[e(gt,{children:e(F,{"data-id":"sampling-radio-route-prefix",value:"routePrefix"===l.routeType,onChange:o("routePrefix")})}),e(v,{name:"sampling-input-route-prefix",label:f,placeholder:Y,value:"routePrefix"===l.routeType?l.route:"",onChange:d,disabled:"routePrefix"!==l.routeType})]})]}),a(mt,{children:[e(bt,{}),e(ae,{label:te,items:Ct,selectedIds:[l.method||""],setSelectedIds:e=>u(e),buttonProps:{"data-id":"sampling-btn-method",label:Ct.find(e=>e.id===l.method)?.label||vt,size:y.S,variant:r.Secondary}})]})]}),g&&e(v,{name:"sampling-input-kafka-topic",label:le,placeholder:"Type kafka topic",value:l.kafkaTopic,onChange:p,width:"320px"})]})},wt=[{value:"all",label:"Drop All"},{value:"sample",label:"Sample"}],Tt=[{value:"all",label:"Keep All"},{value:"sample",label:"Sample"}],At=a=>a.readOnly?e(Pt,{data:a.data}):e(Mt,{category:a.category,formState:a.formState,onChange:a.onChange}),Pt=({data:t})=>{const l=da(()=>(e=>{switch(e.category){case"highlyRelevant":return null!=e.rule.percentageAtLeast?{title:pe,method:me,description:he,value:`${e.rule.percentageAtLeast}%`}:{title:pe,method:fe,description:null,value:null};case"noisy":return xa(e.rule.percentageAtMost)?{title:pe,method:ve,description:null,value:null}:{title:pe,method:me,description:ge,value:`${e.rule.percentageAtMost}%`};case"costReduction":return{title:pe,method:me,description:ge,value:`${e.rule.percentageAtMost}%`}}})(t),[t]),r=[{id:"method",title:te,value:l.method},...null!=l.description?[{id:"value",title:l.description,value:l.value}]:[]];return e(X,{richTitle:{title:l.title},children:e(dt,{children:r.map(({id:t,title:l,value:r})=>a(ct,{children:[e(E,{size:j.XXXS,color:V.Secondary,nowrap:!0,children:l}),e(E,{size:j.XS,nowrap:!0,children:r})]},t))})})},Mt=({category:t,formState:l,onChange:r})=>{const n="highlyRelevant"===t,i=n?Tt:wt,s=`${n?4:3}. ${pe}`,o=ue[t],d=n?he:ge,c="noisy"===t?tt:at,u=ca(e=>r({percentageMode:e}),[r]),p=ca(e=>r({percentagePreset:e}),[r]),h=ca(e=>r({customPercentage:e.target.value}),[r]);return a(X,{richTitle:{title:s,subTitle:o},children:["costReduction"!==t&&e(O,{$alignItems:"flex-start",children:e(z,{options:i,selected:l.percentageMode,setSelected:u})}),("costReduction"===t||"sample"===l.percentageMode)&&e(rt,{description:d,options:c,selected:l.percentagePreset,onSelect:p,customName:"sampling-input-custom-percentage",customPlaceholder:"5%",customValue:l.customPercentage,onCustomChange:h,customInputType:f.Decimal,customMin:0,customMax:100})]})},Lt=ja.div`
|
|
47
|
+
display: flex;
|
|
48
|
+
align-items: flex-end;
|
|
49
|
+
gap: 16px;
|
|
50
|
+
`,Ot=ja.div`
|
|
51
|
+
width: 280px;
|
|
52
|
+
flex-shrink: 0;
|
|
53
|
+
`,It=ja.div`
|
|
54
|
+
flex: 1;
|
|
55
|
+
min-width: 0;
|
|
56
|
+
`;function Dt(e){return"highlyRelevant"===e.category?e.rule.error?"Error":null!=e.rule.durationAtLeastMs?"Duration":"Relevance":we[e.category]}const zt=a=>a.readOnly?e(Xt,{data:a.data}):e(Nt,{formState:a.formState,onChange:a.onChange}),Xt=({data:t})=>{const l=da(()=>[{id:"name",title:ye,value:t.rule.name||be},{id:"type",title:xe,value:Dt(t)}],[t]),r=t.rule.notes||ie;return a(X,{children:[e(dt,{children:l.map(({id:t,title:l,value:r})=>a(ct,{children:[e(E,{size:j.XXXS,color:V.Secondary,nowrap:!0,children:l}),e(E,{size:j.XS,nowrap:!0,children:r})]},t))}),a(ct,{children:[e(E,{size:j.XXXS,color:V.Secondary,children:Ce}),e(E,{size:j.XS,children:r})]})]})},Nt=({formState:t,onChange:l})=>{const r=ca(e=>l({name:e.target.value}),[l]),n=ca(e=>l({notes:e.target.value}),[l]);return e(X,{children:a(Lt,{children:[e(Ot,{children:e(v,{name:"sampling-input-rule-name",label:ye,tooltip:"Optional. Give this rule a name for easier identification.",placeholder:Se,value:t.name,onChange:r})}),e(It,{children:e(v,{name:"sampling-input-note",label:Ce,tooltip:ke,placeholder:$e,value:t.notes,onChange:n})})]})})},Rt=[{value:"Relevance",label:"Relevance"},{value:"Error",label:"Error"},{value:"Duration",label:"Duration"}],Ht=({formState:a,onChange:t})=>{const l=ca(e=>t({ruleType:e,keepErrors:"Error"===e}),[t]);return e(X,{richTitle:{title:`3. ${xe}`,subTitle:Te},children:e(O,{$alignItems:"flex-start",children:e(z,{options:Rt,selected:a.ruleType,setSelected:l})})})},Et=a=>{const t=da(()=>{if(a.readOnly)return a.summary;switch(a.category){case"noisy":return $a(Ta(a.formState));case"highlyRelevant":return Sa(wa(a.formState));case"costReduction":return Ca(ka(a.formState))}},[a]);if(a.readOnly)return e(Fa,{title:Ae,summary:t,renderAction:a.renderAction});const l=1===t.length&&"default"===t[0].variant;return e(Fa,{title:l?C:Ae,summary:l?[]:t,renderAction:a.renderAction})},Bt=ja.div`
|
|
57
|
+
display: flex;
|
|
58
|
+
flex-wrap: wrap;
|
|
59
|
+
gap: 8px;
|
|
60
|
+
`,Vt=ja.div`
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
gap: 8px;
|
|
64
|
+
padding: 8px 12px;
|
|
65
|
+
border-radius: 8px;
|
|
66
|
+
cursor: pointer;
|
|
67
|
+
background: ${({theme:e,$selected:a})=>a?e.v2.colors.silver[700]:e.v2.colors.silver[800]};
|
|
68
|
+
border: 1px solid ${({theme:e,$selected:a})=>a?e.v2.colors.silver[500]:e.v2.colors.silver[750]};
|
|
69
|
+
|
|
70
|
+
&:hover {
|
|
71
|
+
background: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
72
|
+
}
|
|
73
|
+
`,jt=ja.div`
|
|
74
|
+
display: flex;
|
|
75
|
+
width: 32px;
|
|
76
|
+
height: 32px;
|
|
77
|
+
justify-content: center;
|
|
78
|
+
align-items: center;
|
|
79
|
+
flex-shrink: 0;
|
|
80
|
+
`,qt=ja.div`
|
|
81
|
+
display: flex;
|
|
82
|
+
flex-direction: column;
|
|
83
|
+
gap: 12px;
|
|
84
|
+
`,Gt=ja.div`
|
|
85
|
+
display: flex;
|
|
86
|
+
flex-wrap: wrap;
|
|
87
|
+
gap: 6px;
|
|
88
|
+
`,Jt=ja.div`
|
|
89
|
+
display: flex;
|
|
90
|
+
align-items: center;
|
|
91
|
+
gap: 8px;
|
|
92
|
+
&::before,
|
|
93
|
+
&::after {
|
|
94
|
+
content: '';
|
|
95
|
+
flex: 1;
|
|
96
|
+
height: 1px;
|
|
97
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
98
|
+
}
|
|
99
|
+
`,Ut=ja.div`
|
|
100
|
+
padding: 2px 10px;
|
|
101
|
+
border-radius: 999px;
|
|
102
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
103
|
+
border: 1px solid ${({theme:e})=>e.v2.colors.silver[600]};
|
|
104
|
+
`,Kt={[He.JavaScript]:"Node.js",[He.DotNet]:".NET",[He.Php]:"PHP",[He.Java]:"Java",[He.Go]:"Go",[He.Python]:"Python",[He.Ruby]:"Ruby",[He.Rust]:"Rust"},Wt=[He.Python,He.Java,He.JavaScript,He.DotNet,He.Php,He.Ruby,He.Go],Ft=[{value:"all",label:"Entire Cluster"},{value:"source",label:"Specific Source"},{value:"namespace",label:"Specific Namespace"},{value:"language",label:"Specific Programming Language"}];function Yt(e){return Kt[e]||e.charAt(0).toUpperCase()+e.slice(1)}function Zt(e){return null!=e?`${e}. ${Ue}`:Ue}const Qt=({readOnly:a,...t})=>e(a?al:ll,{...t}),_t=({title:t,count:l,children:r})=>a(O,{$gap:6,children:[a(D,{$gap:8,$alignItems:"center",children:[e(E,{size:j.XS,color:V.Primary,nowrap:!0,children:t}),l>1&&a(E,{size:j.XXS,color:V.Secondary,nowrap:!0,children:["(",Ge,")"]})]}),e(Gt,{children:r})]}),el=()=>{const a=qa();return e(Jt,{children:e(Ut,{children:e(E,{size:j.XXS,color:a.v2.colors.white[500],nowrap:!0,children:Je})})})},al=({scopes:t,titleNumber:l})=>{const r=Zt(l);if(Aa(t))return e(Pe,{bgTint:"900",richTitle:{title:r},withCollapse:!0,collapseIsDefaultOpen:!0,children:e(Me,{status:Oe.Default,message:Le,fullWidth:!0})});const n=t.sources??[],i=t.namespaces??[],s=t.languages??[],o=[];return n.length&&o.push({kind:"sources",node:e(_t,{title:Ie,count:n.length,children:n.map((a,t)=>{const l=[a.namespace,a.kind,a.name].filter(Boolean),r=l.length?l.join(" / "):ze;return e(De,{label:r},`src-${t}-${r}`)})})}),i.length&&o.push({kind:"namespaces",node:e(_t,{title:Xe,count:i.length,children:i.map((a,t)=>e(De,{label:a},`ns-${t}-${a}`))})}),s.length&&o.push({kind:"languages",node:e(_t,{title:Ne,count:s.length,children:s.map((a,t)=>{const l=Ee(a);return e(De,{label:Yt(a),leftIcon:l},`lang-${t}-${a}`)})})}),e(Pe,{bgTint:"900",richTitle:{title:r,subTitle:o.length>1?Re:void 0},withCollapse:!0,collapseIsDefaultOpen:!0,children:e(Pe,{bgTint:"800",children:e(qt,{children:o.map((t,l)=>a(oa.Fragment,{children:[l>0&&e(el,{}),t.node]},t.kind))})})})},tl=e=>e.sources.length>0?"source":e.namespaces.length>0?"namespace":e.languages.length>0?"language":"all",ll=({scopes:t,onChange:l,sourceOptions:r=[],namespaceOptions:n=[],supportedLanguages:i,titleNumber:s,dataIdPrefix:o="source-scope",slim:d})=>{const u=t??Pa(),[p,h]=ua(()=>tl(u)),{sources:g,namespaces:m,languages:v}=u,f=g.length>0||m.length>0||v.length>0;pa(()=>{f&&"all"===p&&h(tl(u))},[f,p]);const b=da(()=>Ft.map(e=>"language"===e.value&&0===i?.length?null:{...e,disabled:"all"===e.value&&f}).filter(Boolean),[f]),y=da(()=>g.map(e=>`${e.namespace}/${e.kind}/${e.name}`),[g]),x=da(()=>[...m],[m]),C=da(()=>new Set(v),[v]),S=ca(e=>{h(e)},[]),$=ca(e=>{const a=e.map(e=>(e=>{const a=e.split("/");return 3!==a.length?null:{namespace:a[0],kind:a[1],name:a[2]}})(e)).filter(e=>null!=e).map(e=>({namespace:e.namespace,kind:e.kind,name:e.name}));l({...u,sources:a})},[u,l]),k=ca(e=>{l({...u,namespaces:e})},[u,l]),w=ca(e=>{const a=u.languages,t=a.includes(e)?a.filter(a=>a!==e):[...a,e];l({...u,languages:t})},[u,l]),T=!f&&"all"===p,A=(i||Wt).map(e=>({id:e,label:Kt[e]??e.charAt(0).toUpperCase()+e.slice(1),Icon:Ee(e)}));return a(X,{richTitle:d?{title:Zt(s),titleSize:j.XS,titleColor:V.Secondary,tooltip:Be}:{title:Zt(s),subTitle:Be,subTitleWrap:!0},backgroundColor:d?"transparent":void 0,padding:d?0:void 0,children:[e(Me,T?{status:Oe.Default,message:Le,fullWidth:!0,smallIcon:!0}:{status:Oe.Info,message:Re,fullWidth:!0,smallIcon:!0}),e(O,{$alignItems:"flex-start",children:e(z,{options:b,selected:p,setSelected:S})}),"source"===p&&e(Ve,{multiple:!0,"data-id":`${o}-autocomplete-source`,options:r,value:y,onSelect:$,placeholder:je}),"namespace"===p&&e(Ve,{multiple:!0,"data-id":`${o}-autocomplete-namespace`,options:n,value:x,onSelect:k,placeholder:"Search namespace"}),"language"===p&&A.length>0&&e(Bt,{children:A.map(({id:t,label:l,Icon:r})=>{const n=C.has(t);return a(Vt,{$selected:n,onClick:()=>w(t),children:[e(c,{name:`${o}-lang-${t}`,size:qe.S,value:n,onChange:()=>w(t)}),e(jt,{children:e(r,{size:20})}),e(E,{size:j.XS,nowrap:!0,children:l})]},t)})})]})},rl=(e,a)=>!a?.length||!!a?.find(a=>a===e),nl=({title:t="Signals",required:l,errorMessage:r,allowedSignals:n,selectedSignals:i,setSelectedSignals:s,disabled:o})=>{const[d,u]=ua(1===i.length),p=ha(JSON.stringify(i));return pa(()=>{let e=Ke(i).filter(e=>rl(e,n));e.length||(e=We.filter(({id:e})=>rl(e,n)).map(({id:e})=>e));const a=JSON.stringify(e);p.current!==a&&(p.current=a,s(e),u(1===e.length))},[n,i]),a(O,{$gap:12,children:[e(I,{label:t,required:l}),e(D,{$gap:12,children:We.map(a=>{const t=rl(a.id,n),l=((e,a)=>!!a?.find(a=>a===e))(a.id,i);return t?e(c,{label:a.value,disabled:o||!t||d&&l,value:l,onChange:e=>((e,a)=>{const t=e,l=a?[...i,t]:i.filter(e=>e!==t);s(l),u(1===l.length)})(a.id,e)},a.id):null})}),e(Fe,{errorMessage:r})]})},il=({minSupportedVersion:a,currentVersion:t})=>e(l,{isOpen:!0,onClose:()=>{},relativeToParent:!0,visual:()=>e(Ye,{scale:2.4,icon:()=>e("svg",{xmlns:"http://www.w3.org/2000/svg",width:"22",height:"21",viewBox:"0 0 22 21",fill:"none",children:e("path",{fill:"#151618",d:"M9.4844 0.730003C9.99694 -0.243259 11.4076 -0.24341 11.92 0.730003L11.9685 0.831353L14.3039 6.22012L20.153 6.77755C21.3553 6.89211 21.841 8.38683 20.9358 9.18621L16.5314 13.0731L17.8091 18.8079C18.0716 19.9868 16.8005 20.9109 15.7605 20.2969L10.7017 17.3093L5.64282 20.2969C4.60289 20.9104 3.33173 19.9866 3.59427 18.8079L4.87192 13.0741L0.468608 9.18621C-0.43662 8.38693 0.0482932 6.8924 1.25029 6.77755L7.09837 6.22012L9.43588 0.831353L9.4844 0.730003ZM8.55284 7.02876C8.35287 7.48992 7.9179 7.80589 7.41751 7.85357L2.03952 8.36571L6.09027 11.941C6.46691 12.2737 6.63296 12.7852 6.5237 13.2758L5.34956 18.5459L10.0008 15.8009L10.1669 15.7179C10.5087 15.574 10.8945 15.5741 11.2364 15.7179L11.4036 15.8009L16.0538 18.5459L14.8807 13.2758C14.7714 12.7851 14.9374 12.2737 15.3141 11.941L19.3627 8.36571L13.9858 7.85357C13.4855 7.80587 13.0505 7.4899 12.8505 7.02876L10.7017 2.07342L8.55284 7.02876Z"})})}),title:"Upgrade Required",description:`To use this feature, please upgrade to Odigos v${a} or later.\nCurrent version: ${t}.`}),sl=ja.div`
|
|
105
|
+
display: flex;
|
|
106
|
+
flex-direction: column;
|
|
107
|
+
justify-content: flex-end;
|
|
108
|
+
width: ${({$width:e})=>e};
|
|
109
|
+
gap: ${({$columnHasHeader:e})=>e?"0":"12px"};
|
|
110
|
+
`,ol=ja.div`
|
|
111
|
+
display: flex;
|
|
112
|
+
align-items: center;
|
|
113
|
+
min-height: 24px;
|
|
114
|
+
padding: 12px;
|
|
115
|
+
border-radius: 16px 16px 0 0;
|
|
116
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
117
|
+
`,dl=ja.div`
|
|
118
|
+
display: flex;
|
|
119
|
+
flex-direction: column;
|
|
120
|
+
gap: ${({$gap:e})=>e}px;
|
|
121
|
+
padding: 12px 12px 0 12px;
|
|
122
|
+
width: 100%;
|
|
123
|
+
height: ${({$heightOffset:e,$columnHasHeader:a})=>`calc(100vh - 180px - ${e}px ${a?"- 48px":""})`};
|
|
124
|
+
border-radius: ${({$columnHasHeader:e,$isLeft:a,$isRight:t})=>e?a?"0 0 0 16px":t?"0 16px 0 0":"0":a?"16px 0 0 16px":t?"0 16px 16px 0":"16px"};
|
|
125
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
126
|
+
overflow-y: auto;
|
|
127
|
+
overflow-x: hidden;
|
|
128
|
+
`,cl=({isLeft:l,isRight:r,heightOffset:n=0,width:i,header:s,list:o})=>a(sl,{$width:i,$columnHasHeader:!!s,children:[s&&e(ol,{children:s}),e(dl,{$gap:8,$isLeft:l,$isRight:r,$heightOffset:n,$columnHasHeader:!!s,children:o.length?o.length>1?e(Ze,{gap:8,elements:o}):e(t,{children:o[0]}):e(Qe,{$height:"100%",children:e(_e,{})})})]}),ul="75vw",pl=ja.div`
|
|
129
|
+
display: flex;
|
|
130
|
+
flex-direction: column;
|
|
131
|
+
border-radius: 16px;
|
|
132
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[1e3]};
|
|
133
|
+
overflow: hidden;
|
|
134
|
+
`,hl=ja.div`
|
|
135
|
+
display: flex;
|
|
136
|
+
gap: 12px;
|
|
137
|
+
padding: 16px 16px 0 16px;
|
|
138
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[1e3]};
|
|
139
|
+
position: sticky;
|
|
140
|
+
top: 0;
|
|
141
|
+
`,gl=ja.div`
|
|
142
|
+
padding: 12px 12px 0 12px;
|
|
143
|
+
`,ml=ja.div`
|
|
144
|
+
display: flex;
|
|
145
|
+
gap: 12px;
|
|
146
|
+
padding: 16px;
|
|
147
|
+
`,vl=ja.div`
|
|
148
|
+
padding: 5vh 10vw;
|
|
149
|
+
border-radius: 12px;
|
|
150
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
151
|
+
`,fl=ga(({isOpen:t,withOverlay:n,disableAnimation:i,onClose:s,onBack:o,onNext:d,nextIsSkip:c,onSave:u,disableSave:p,connectionIds:h,header:g,subHeader:m,leftColumn:v,rightColumn:f,search:b,filters:y,errorMessage:x,isFormDirty:C,hideDirtyNote:S,isFetching:$,progress:k},w)=>{const[T,A]=ua(!1),[P,M]=ua(!1),[L,O]=ua(void 0);ma(w,()=>({clearErrors:()=>O(void 0)}));const I=P,D=ca(()=>{C&&!T?A(!0):(A(!1),s?.())},[C,T,s]),z=p||P||"boolean"==typeof C&&!C,X=ca(async()=>{M(!0);const e=await u();M(!1),!1!==e&&(e?.error?O(e.error):(h?.setValue([]),s?.()))},[u,h,s]),N=!!b||!!h||!!y,R=!!m,H=(N?48:0)+(R?50:0),E=da(()=>$?{status:Oe.Info,message:"Fetching Data..."}:P&&!k?{status:Oe.Info,message:"Saving Changes..."}:L||x?{status:Oe.Error,message:L||x}:"boolean"==typeof C&&C&&!S?{status:Oe.Info,message:'The values don\'t reflect the current configurations of the selected clusters.\n"Save" will override the current configurations.'}:void 0,[$,P,k,L,x,C,S]),B=da(()=>o?{label:"Back",leftIcon:Na,variant:r.Secondary,onClick:o}:{label:"Cancel",variant:r.Secondary,onClick:D,disabled:I},[o,D,I]),[V,q]=ua(!1),G=da(()=>d?c?{"data-id":"wide-drawer-skip",label:"Skip",rightIcon:Ra,variant:r.Secondary,onClick:()=>q(!0)}:{"data-id":"wide-drawer-next",label:"Next",rightIcon:Ra,variant:r.Primary,onClick:d}:{"data-id":"wide-drawer-save",label:"Save",variant:r.Primary,onClick:X,disabled:z},[d,c,X,z]);return a(ea,{width:ul,isOpen:t,disableAnimation:i,hideOverlay:!P&&!n,header:{...g,onClose:s?D:void 0,onCloseDisabled:I},footer:{note:E,actions:[B,G]},children:[P?e(Qe,{$height:"calc(100vh - 136px)",children:e(vl,{children:e(aa,{titleSize:j.S,subTitleSize:j.XXXS,withGradient:!0,withSpinner:!0,...k})})}):a(pl,{children:[N&&a(hl,{children:[h&&e(ta,{icon:Ha,title:"Selected Clusters",badge:{label:h.value.length}}),b&&e(la,{width:"100%",...b}),y]}),R&&e(gl,{children:e(ta,{icon:m.icon,title:m.title,subTitle:m.description,badge:m.badge})}),a(ml,{children:[e(cl,{isLeft:!0,heightOffset:H,...v}),e(cl,{isRight:!0,heightOffset:H,...f})]})]}),e(Ga,{isOpen:T,onClose:()=>A(!1),onApprove:D}),e(l,{title:"Skip setup?",description:"Without completing setup, Odigos won't be able to collect and send your telemetry data. This may interrupt your data flow and limit the platform's ability to provide value.",isOpen:V,onClose:()=>q(!1),denyButton:{label:"Go Back",variant:r.Secondary,onClick:()=>q(!1)},approveButton:{label:"Skip",variant:r.Primary,onClick:()=>{d?.(),q(!1)}}})]})});fl.displayName=fl.name;const bl=ja.div`
|
|
152
|
+
padding: 0 24px;
|
|
153
|
+
border-radius: 12px;
|
|
154
|
+
background-color: ${({$codeBgColor:e})=>e||"transparent"};
|
|
155
|
+
`,yl=({title:a="YAML",yaml:t,defaultOpen:l,fullHeight:n,bgTint:i="1000",codeBgColor:s})=>{const{clickCopy:o,isCopied:d}=ra(),c=da(()=>t?[{id:ia(),type:na.Button,buttonProps:{variant:r.Text,size:y.S,leftIcon:d?Ea:Ba,onClick:()=>o(t||""),disabled:d}}]:[],[t,d]);return e(Pe,{bgTint:i,richTitle:{icon:Va,title:a},actions:c,withCollapse:!0,collapseIsDefaultOpen:l,fullHeight:n,children:e(bl,{$codeBgColor:s,children:t?e(sa,{code:t,language:"yaml",theme:"duotoneDark"}):e(Qe,{children:e(_e,{title:"YAML not found",subTitle:"The YAML for this resource is not available"})})})})};export{Fa as A,Ga as C,lt as D,_a as I,tt as N,et as O,at as P,zt as R,Et as S,il as U,ul as W,yl as Y,Ja as a,it as b,Ua as c,St as d,At as e,rt as f,Ht as g,nl as h,Qt as i,fl as j};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{Fragment as n,useMemo as o,useContext as a,createContext as s}from"react";import i from"styled-components";import{T as u,t as l,b as c,P as p}from"./ui-components-CAPnizLR.js";var d;(e=>{e.Default="default",e.Action="action",e.Endpoint="endpoint",e.Scope="scope",e.Duration="duration"})(d||(d={}));const f=[d.Action,d.Endpoint,d.Scope,d.Duration],h=i.span`
|
|
2
|
+
font-family: ${({theme:e,$isMono:t})=>t?e.font_family.secondary:e.font_family.primary};
|
|
3
|
+
font-size: ${({theme:e})=>e.v2.text.size.xxs}px;
|
|
4
|
+
line-height: 20px;
|
|
5
|
+
color: ${({theme:e,$variant:t})=>{const r=e.v2.colors;switch(t){case"action":return r.green[400];case"endpoint":return r.purple[300];case"scope":return r.yellow[400];case"duration":return r.orange[600];default:return r.white[500]}}};
|
|
6
|
+
`,m=i.span`
|
|
7
|
+
text-decoration: underline dotted;
|
|
8
|
+
text-underline-offset: 3px;
|
|
9
|
+
`,v=({parts:o})=>{const a=o.map(e=>({...e,text:e.text.trim()})).filter(e=>e.text.length>0);return e(t,{children:a.map((o,a)=>{const s=e(h,{$variant:o.variant,$isMono:f.includes(o.variant),children:o.text});return r(n,{children:[0!==a&&e(t,{children:" "}),o.tooltipItems?.length?e(u,{text:o.tooltipItems,inline:!0,maxWidth:"300px",children:e(m,{children:s})}):s]},`${o.variant}-${a}`)})})};function g(){return{sources:[],namespaces:[],languages:[]}}function y(e){return!e||!e.sources?.length&&!e.namespaces?.length&&!e.languages?.length}function x(e){return e?{sources:e.sources?[...e.sources]:[],namespaces:e.namespaces?[...e.namespaces]:[],languages:e.languages?[...e.languages]:[]}:{sources:[],namespaces:[],languages:[]}}function k(e){return null==e||0===e}function S(e){return{name:"",notes:"",disabled:!1,ruleType:"Relevance",sourceScopes:{sources:[],namespaces:[],languages:[]},operationType:"all",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:"",durationPreset:"500",customDurationMs:"",keepErrors:!1,percentageMode:"costReduction"===e?"sample":"all",percentagePreset:"0",customPercentage:""}}function A(e){return y(e.sourceScopes)?null:e.sourceScopes}function T(e){return A(e)}function R(e){if("all"===e.percentageMode)return null;if("custom"===e.percentagePreset){const t=parseFloat(e.customPercentage);return isNaN(t)?null:t}return parseFloat(e.percentagePreset)}function P(e){if("custom"===e.durationPreset){const t=parseFloat(e.customDurationMs);return isNaN(t)?null:t}return parseInt(e.durationPreset,10)}function b(e){return{httpServer:{[e.routeType]:e.route||null,method:e.method||null}}}function D(e){return"all"===e.operationType?null:"httpServer"===e.operationType?b(e):"httpClient"===e.operationType?{httpClient:{serverAddress:e.serverAddress||null,["route"===e.routeType?"templatedPath":"templatedPathPrefix"]:e.route||null,method:e.method||null}}:null}function I(e){return"all"===e.operationType?null:"httpServer"===e.operationType?b(e):"kafkaConsumer"===e.operationType?{kafkaConsumer:{kafkaTopic:e.kafkaTopic||null}}:"kafkaProducer"===e.operationType?{kafkaProducer:{kafkaTopic:e.kafkaTopic||null}}:null}function M(e){return{ruleId:"",name:e.name||null,disabled:!1,notes:e.notes||null,sourceScopes:A(e),percentageAtMost:R(e),operation:D(e)}}function $(e){return{ruleId:"",name:e.name||null,disabled:!1,notes:e.notes||null,sourceScopes:A(e),error:e.keepErrors,durationAtLeastMs:"Duration"===e.ruleType?P(e):null,percentageAtLeast:R(e),operation:I(e)}}function C(e){return{ruleId:"",name:e.name||null,disabled:!1,notes:e.notes||null,sourceScopes:A(e),percentageAtMost:R(e)??0,operation:I(e)}}function E(e){return{name:e.name||null,disabled:e.disabled,sourceScopes:T(e),operation:D(e),percentageAtMost:R(e),notes:e.notes||null}}function L(e){return{name:e.name||null,disabled:e.disabled,sourceScopes:T(e),error:"Error"===e.ruleType,durationAtLeastMs:"Duration"===e.ruleType?P(e):null,operation:I(e),percentageAtLeast:R(e),notes:e.notes||null}}function N(e){return{name:e.name||null,disabled:e.disabled,sourceScopes:T(e),operation:I(e),percentageAtMost:R(e)??0,notes:e.notes||null}}const w=["5000","1000","500","100","50"],O=["50","25","10","1","0.5","0.1","0"];function H(e){if(null==e)return{percentageMode:"all",percentagePreset:"0",customPercentage:""};const t=O.find(t=>Number(t)===e);return t?{percentageMode:"sample",percentagePreset:t,customPercentage:""}:{percentageMode:"sample",percentagePreset:"custom",customPercentage:String(e)}}function K(e){if(!e)return{operationType:"all",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:""};const t=e;return t.httpServer?{operationType:"httpServer",routeType:t.httpServer.routePrefix?"routePrefix":"route",route:t.httpServer.route||t.httpServer.routePrefix||"",serverAddress:"",method:t.httpServer.method||"",kafkaTopic:""}:t.kafkaConsumer?{operationType:"kafkaConsumer",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:t.kafkaConsumer.kafkaTopic||""}:t.kafkaProducer?{operationType:"kafkaProducer",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:t.kafkaProducer.kafkaTopic||""}:{operationType:"all",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:""}}function j(e){const t=S(),r=x(e.rule.sourceScopes),n=(e=>"highlyRelevant"!==e.category?"Relevance":e.rule.error?"Error":null!=e.rule.durationAtLeastMs?"Duration":"Relevance")(e);let o,a,s={durationPreset:"500",customDurationMs:""},i=!1;switch(e.category){case"noisy":o=(e=>{const t=e.rule.operation;return t?t.httpServer?{operationType:"httpServer",routeType:t.httpServer.routePrefix?"routePrefix":"route",route:t.httpServer.route||t.httpServer.routePrefix||"",serverAddress:"",method:t.httpServer.method||"",kafkaTopic:""}:t.httpClient?{operationType:"httpClient",routeType:t.httpClient.templatedPathPrefix?"routePrefix":"route",route:t.httpClient.templatedPath||t.httpClient.templatedPathPrefix||"",serverAddress:t.httpClient.serverAddress||"",method:t.httpClient.method||"",kafkaTopic:""}:{operationType:"all",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:""}:{operationType:"all",routeType:"route",route:"",serverAddress:"",method:"",kafkaTopic:""}})(e),a=k(u=e.rule.percentageAtMost)?{percentageMode:"all",percentagePreset:"0",customPercentage:""}:H(u);break;case"highlyRelevant":o=K(e.rule.operation),a=H(e.rule.percentageAtLeast),s=(e=>{if(null==e)return{durationPreset:"500",customDurationMs:""};const t=w.find(t=>Number(t)===e);return t?{durationPreset:t,customDurationMs:""}:{durationPreset:"custom",customDurationMs:String(e)}})(e.rule.durationAtLeastMs),i=e.rule.error;break;case"costReduction":o=K(e.rule.operation),a=H(e.rule.percentageAtMost)}var u;return{...t,name:e.rule.name||"",notes:e.rule.notes||"",disabled:e.rule.disabled,ruleType:n,sourceScopes:r,...o,...s,keepErrors:i,...a}}var z;(e=>{e.Noisy="noisy",e.HighlyRelevant="highly-relevant",e.CostReduction="cost-reduction"})(z||(z={}));const F=[{value:z.Noisy,label:"1. Noisy Operations",tooltip:"Rules that reduce noise from high-volume, low-value operations"},{value:z.HighlyRelevant,label:"2. Highly Relevant Operations",tooltip:"Rules that prioritize important traces for retention"},{value:z.CostReduction,label:"3. Cost Reduction",tooltip:"Rules that optimize costs by sampling less critical data"}],J={[z.Noisy]:"This is the most efficient way to sample (with Head Sampling). Prefer to use it where possible.",[z.HighlyRelevant]:'Any trace from the "Noisy Operations" category is sampled prior to checking highly relevance.',[z.CostReduction]:"Cost reduction rules use Tail Sampling to drop traces that are unlikely to be useful for debugging or monitoring."},V={[z.Noisy]:"Noisy Operations rules list",[z.HighlyRelevant]:"Highly Relevant Operations rules list",[z.CostReduction]:"Cost Reduction rules list"},B={[z.Noisy]:"noisy",[z.HighlyRelevant]:"highlyRelevant",[z.CostReduction]:"costReduction"},W={noisy:z.Noisy,highlyRelevant:z.HighlyRelevant,costReduction:z.CostReduction};function _(e){const t=e.kind?String(e.kind).toLowerCase():"deployment";return e.namespace&&e.name?`${t} '${e.name}' in namespace '${e.namespace}'`:e.name?`${t} '${e.name}'`:e.namespace?`any service in namespace '${e.namespace}'`:""}function q(e){return`any service in namespace '${e}'`}function G(e){return`${e} services`}function Q(e,t="global"){const r=(e=>{if(!e)return[];const t=[];for(const r of e.sources??[]){const e=_(r);e&&t.push(e)}for(const r of e.namespaces??[])r&&t.push(q(r));for(const r of e.languages??[])r&&t.push(G(r));return t})(e);if(!r.length)return"source"===t?[]:[{text:" in ",variant:d.Default},{text:"any service in the cluster",variant:d.Scope}];const n=[{text:" in ",variant:d.Default}],o=r.slice(0,2),a=r.slice(2);return o.forEach((e,t)=>{t>0&&n.push({text:", ",variant:d.Default}),n.push({text:e,variant:d.Scope})}),a.length>0&&n.push({text:` + ${a.length} more`,variant:d.Default,tooltipItems:a}),n}function U(e,t){const r=(n=e).startsWith("/")?n.slice(1):n;var n;return t?`${t} /${r}`:`/${r}`}function X(e){const t=e.method;return e.route?[{text:" for server endpoint ",variant:d.Default},{text:U(e.route,t),variant:d.Endpoint}]:e.routePrefix?[{text:" for endpoints under ",variant:d.Default},{text:U(e.routePrefix,t),variant:d.Endpoint}]:[]}function Y(e,t="global"){const r=[];if(k(e.percentageAtMost)?r.push({text:"Drop all traces",variant:d.Action}):(r.push({text:`Keep at most ${e.percentageAtMost}%`,variant:d.Action}),r.push({text:" of traces",variant:d.Default})),e.operation){const t=e.operation.httpServer,n=t?(e=>{const t=e.method;return e.route?[{text:" where the root span is ",variant:d.Default},{text:U(e.route,t),variant:d.Endpoint}]:e.routePrefix?[{text:" where the root span is under ",variant:d.Default},{text:U(e.routePrefix,t),variant:d.Endpoint}]:[]})(t):[];n.length>0&&r.push(...n);const o=e.operation.httpClient,a=o?.templatedPath||o?.templatedPathPrefix,s=o?.serverAddress;if((a||s)&&0===n.length){const e=o?.method;if(r.push({text:" to ",variant:d.Default}),a){const t=U(a,e);s&&(r.push({text:"server address ",variant:d.Default}),r.push({text:s,variant:d.Endpoint}),r.push({text:" ",variant:d.Default})),r.push({text:t,variant:d.Endpoint})}else s&&(r.push({text:"server address ",variant:d.Default}),r.push({text:s,variant:d.Endpoint}))}}else r.push({text:" on ",variant:d.Default}),r.push({text:"any operation",variant:d.Endpoint});return r.push(...Q(e.sourceScopes,t)),r}function Z(e,t="global"){const r=[];if(null!=e.percentageAtLeast?(r.push({text:`Keep ${e.percentageAtLeast}%`,variant:d.Action}),r.push({text:" of traces",variant:d.Default})):r.push({text:"Keep all traces",variant:d.Action}),e.operation){const t=e.operation.httpServer;t&&r.push(...X(t))}else r.push({text:" on ",variant:d.Default}),r.push({text:"any operation",variant:d.Endpoint});return r.push(...Q(e.sourceScopes,t)),!e.error&&null!=e.durationAtLeastMs&&e.durationAtLeastMs>0&&(r.push({text:" with duration > ",variant:d.Default}),r.push({text:`${e.durationAtLeastMs}ms`,variant:d.Duration})),r}function ee(e,t="global"){const r=[];if(r.push({text:`Keep at most ${e.percentageAtMost}%`,variant:d.Action}),r.push({text:" of traces",variant:d.Default}),e.operation){const t=e.operation.httpServer,n=t?X(t):[];n.length>0&&r.push(...n);const o=e.operation.kafkaConsumer?.kafkaTopic;o&&0===n.length&&(r.push({text:" from ",variant:d.Default}),r.push({text:`topic '${o}'`,variant:d.Endpoint}))}else r.push({text:" on ",variant:d.Default}),r.push({text:"any operation",variant:d.Endpoint});return r.push(...Q(e.sourceScopes,t)),r}function te(e){return e.error?"Error":null!=e.durationAtLeastMs?"Duration":"Relevance"}function re(e,t,r){const n=B[t],o=[];for(const a of e)switch(t){case z.Noisy:for(const e of a.noisyOperations)r?.has(e.ruleId)||o.push({ruleId:e.ruleId,samplingId:a.id,name:e.name??null,disabled:e.disabled,notes:e.notes??null,summary:Y(e),category:n});break;case z.HighlyRelevant:for(const e of a.highlyRelevantOperations)r?.has(e.ruleId)||o.push({ruleId:e.ruleId,samplingId:a.id,name:e.name??null,disabled:e.disabled,notes:e.notes??null,summary:Z(e),category:n,typeBadge:te(e)});break;case z.CostReduction:for(const e of a.costReductionRules)r?.has(e.ruleId)||o.push({ruleId:e.ruleId,samplingId:a.id,name:e.name??null,disabled:e.disabled,notes:e.notes??null,summary:ee(e),category:n})}return o}function ne(e,t){switch(e){case"noisy":return Y(t);case"highlyRelevant":return Z(t);case"costReduction":return ee(t)}}function oe(e,t,r,n){for(const o of e)if(o.id===t)switch(n){case"noisy":{const e=o.noisyOperations.find(e=>e.ruleId===r);if(e)return{category:"noisy",samplingId:o.id,rule:e};break}case"highlyRelevant":{const e=o.highlyRelevantOperations.find(e=>e.ruleId===r);if(e)return{category:"highlyRelevant",samplingId:o.id,rule:e};break}case"costReduction":{const e=o.costReductionRules.find(e=>e.ruleId===r);if(e)return{category:"costReduction",samplingId:o.id,rule:e};break}}return null}function ae(e,t){const r=oe(e,t.samplingId,t.rule.ruleId,t.category);return r?{...r,summary:ne(r.category,r.rule)}:null}function se(e,t){const r=oe(e,t.samplingId,t.ruleId,t.category);return r?{...r,summary:ne(r.category,r.rule)}:null}function ie(e,t,r){for(const n of e){const o=oe(e,n.id,t,r);if(o)return{...o,summary:ne(o.category,o.rule)}}return null}function ue(e){if(!e)return null;const t=(e.sources??[]).map(e=>`${e.namespace}/${e.kind}/${e.name}`).sort(),r=(e.namespaces??[]).slice().sort(),n=(e.languages??[]).slice().sort();return t.length||r.length||n.length?[t.join("|"),r.join("|"),n.join("|")].join("::"):null}function le(e){return null==e?null:e}function ce(e,t){return JSON.stringify({sourceScopes:ue(e),operation:le(t)})}function pe(e,t,r,n){return JSON.stringify({sourceScopes:ue(e),error:t??!1,durationAtLeastMs:(o=r,null==o?null:o),operation:le(n)});var o}function de(e,t){return JSON.stringify({sourceScopes:ue(e),operation:le(t)})}function fe(e,t,r,n){switch(t){case"noisy":{const t=ce(r.sourceScopes,r.operation);for(const r of e)for(const e of r.noisyOperations)if((!n||e.ruleId!==n)&&ce(e.sourceScopes,e.operation)===t)return e.ruleId;return null}case"highlyRelevant":{const t=pe(r.sourceScopes,r.error,r.durationAtLeastMs,r.operation);for(const r of e)for(const e of r.highlyRelevantOperations)if((!n||e.ruleId!==n)&&pe(e.sourceScopes,e.error,e.durationAtLeastMs,e.operation)===t)return e.ruleId;return null}case"costReduction":{const t=de(r.sourceScopes,r.operation);for(const r of e)for(const e of r.costReductionRules)if((!n||e.ruleId!==n)&&de(e.sourceScopes,e.operation)===t)return e.ruleId;return null}}}function he(e){return e&&e.enabled?[{text:`Keep ${e.keepPercentage??0}%`,variant:d.Action},{text:" of ",variant:d.Default},{text:"traces for kubelet health probes in the entire cluster",variant:d.Scope}]:[{text:"Auto rule is ",variant:d.Default},{text:"disabled",variant:d.Action}]}function me(e){return!0===e.error&&y(e.sourceScopes)&&!e.operation&&(null==e.percentageAtLeast||100===e.percentageAtLeast)}function ve(e){for(const t of e){const e=t.highlyRelevantOperations.find(me);if(e)return{rule:e,samplingId:t.id}}return null}function ge(e){return!e||e.disabled?[{text:"Auto rule is ",variant:d.Default},{text:"disabled",variant:d.Action}]:[{text:"Keep all traces",variant:d.Action},{text:" of ",variant:d.Default},{text:"error traces across the entire cluster",variant:d.Scope}]}function ye(e){return y(e.sourceScopes)&&!e.operation}function xe(e){for(const t of e){const e=t.costReductionRules.find(ye);if(e)return{rule:e,samplingId:t.id}}return null}function ke(e){return!e||e.disabled?[{text:" is ",variant:d.Default},{text:"disabled",variant:d.Action}]:[{text:`Keep at most ${e.percentageAtMost}%`,variant:d.Action},{text:" of ",variant:d.Default},{text:"traces across the entire cluster",variant:d.Scope}]}const Se=s({platformType:p.K8s,tier:c.Community,version:"v0.0.0"}),Ae=({children:t,platformType:r,tier:n,version:a})=>{const s=o(()=>({platformType:r,tier:n,version:a}),[r,n,a]);return e(Se.Provider,{value:s,children:t})},Te=(e,t)=>null==e?0:"number"==typeof e?e:t?e[t]??0:0,Re=(e,t,r)=>{const n=Te(t,r);return!n||l(e)>=l(n)},Pe=e=>{const t=a(Se),r=Te(e,t.platformType),n=Re(t.version,r),o=t.platformType===p.Vm;return{...t,isVersionSupported:n,minSupportedVersion:r,isVm:o,isEnterprise:t.tier===c.Onprem}};export{L as A,E as B,v as C,se as D,ne as E,B as F,fe as G,F as H,J as I,V as J,Ae as O,W as R,z as S,d as a,Q as b,Re as c,ee as d,Z as e,Y as f,C as g,$ as h,k as i,M as j,y as k,ge as l,g as m,x as n,ke as o,he as p,S as q,Te as r,ie as s,ve as t,Pe as u,j as v,xe as w,ae as x,re as y,N as z};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useContext as r,createContext as a,useCallback as n,useState as o,useEffect as s,useRef as i}from"react";import{a$ as c,b0 as l,b1 as d,ay as u,b2 as m,b3 as p,b4 as f,P as E,b as y,b5 as S,b6 as h,b7 as T,b8 as g,b9 as _,ba as A,bb as R,bc as I,bd as v,be as C,bf as N,aO as O,bg as D,bh as b,bi as w,bj as P,bk as L,bl as k,bm as G,bn as F,s as U,bo as x,F as M,bp as H,H as K,o as V,G as W,J as Y,n as j,bq as $}from"./ui-components-CAPnizLR.js";import{n as q,m as B,k as Q,l as z,o as J,p as X,v as Z,q as ee,u as te}from"./odigos-context-_YAZF63s.js";import{ApolloProvider as re,useLazyQuery as ae,useApolloClient as ne,useQuery as oe}from"@apollo/client/react";import{ErrorLink as se}from"@apollo/client/link/error";import{SetContextLink as ie}from"@apollo/client/link/context";import{getMainDefinition as ce}from"@apollo/client/utilities";import{CombinedGraphQLErrors as le,ServerError as de}from"@apollo/client/errors";import{HttpLink as ue,ApolloLink as me,ApolloClient as pe,InMemoryCache as fe,gql as Ee}from"@apollo/client";const ye=e=>{if(!e)return!1;const t=e.toLowerCase();return t.includes("authentication required")||t.includes("authentication expired")||t.includes("http 401")},Se=a(null),he=()=>{const e=r(Se);if(!e)throw new Error("[ui-kit] useOdigosApi() / useXxxApi() called outside of <OdigosApiProvider>. Make sure the host app mounts the provider at its layout level.");return e},Te=({apolloConfig:r,operations:a,context:n,children:o})=>{const s=t(()=>(e=>{const t=new ue({uri:e.httpUrl,credentials:e.credentials??"same-origin"}),r=new se(({error:t})=>{le.is(t)?t.errors.some(e=>ye(e.message))&&e.onAuthError?.():(de.is(t)&&401===t.statusCode||ye(t.message))&&e.onAuthError?.()}),a=new ie(async t=>{const r={...t.headers};if(e.authHeader){const t=await e.authHeader();Object.assign(r,t)}return e.csrfHeader&&Object.assign(r,e.csrfHeader()),{headers:r}}),n=[];e.additionalLinks?.length&&n.push(...e.additionalLinks),n.push(a,r,t);let o=me.from(n);e.wsLink&&(o=me.split(({query:e})=>{const t=ce(e);return"OperationDefinition"===t.kind&&"subscription"===t.operation},e.wsLink,o));const s=e.defaultFetchPolicies;return new pe({link:o,cache:new fe({typePolicies:e.cacheTypePolicies}),defaultOptions:{watchQuery:{fetchPolicy:s?.watchQuery??"cache-and-network"},query:{fetchPolicy:s?.query??"cache-first"},mutate:{fetchPolicy:s?.mutate??"network-only"}}})})(r),[r.httpUrl,r.wsLink,r.credentials]),i=t(()=>({operations:a,context:n,apolloConfig:r}),[a,n,r]);return e(re,{client:s,children:e(Se.Provider,{value:i,children:o})})},ge=Se,_e=({connectionIds:r,children:a})=>{const n=he(),o=t(()=>({operations:n.operations,context:{...n.context,connectionIds:r},apolloConfig:n.apolloConfig}),[n.operations,n.context,n.apolloConfig,r.join(",")]);return e(ge.Provider,{value:o,children:a})},Ae=(e,t)=>{if(e)return"string"==typeof e?e:m(e,t)},Re=e=>{const{addNotification:t}=c(),r=(r,a,n,o,s)=>t({type:r,title:a,message:n,crdType:e,target:Ae(o,e),hideFromHistory:s});return{notify:r,notifyError:(e,t,a)=>r(u.Error,e,t,a),notifySuccess:(e,t,a)=>r(u.Success,e,t,a),notifyPending:(e,t)=>r(u.Default,"Pending",e,t,!0),notifyReadonly:()=>{t({type:u.Warning,title:d.READONLY,message:l.READONLY_WARNING,hideFromHistory:!0})}}},Ie=e=>{e({type:u.Warning,title:d.READONLY,message:l.READONLY_WARNING,hideFromHistory:!0})},ve=e=>({error:e,results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:0}),Ce=(e,t)=>{if(e)return"function"==typeof e?e(t):e},Ne=e=>{if(!e)return"Unknown error";if(e instanceof Error)return e.cause instanceof Error?e.cause.message:e.message;if("object"==typeof e){const t=e;return t.cause?.message||t.message||String(e)}return String(e)},Oe=(e,t)=>e.client??t,De=async(e,t,r,a,n)=>{if(!t)return{error:"Query operation not configured"};if(t.canRun&&!t.canRun(a))return{data:void 0};if(t.run)try{return await t.run(Oe(t,e),r,a)}catch(e){return{error:Ne(e)}}const o=Ce(t.document,a);if(!o)return{error:"Query operation not supported in this context"};const s=t.transformVariables?t.transformVariables(r,a):r,i=Oe(t,e);try{const e=await i.query({query:o,variables:s,fetchPolicy:n??"network-only"});return{data:t.transformResult?t.transformResult(e.data,a):e.data,error:e.error?Ne(e.error):void 0}}catch(e){return{error:Ne(e)}}},be=async(e,t,r,a)=>{if(!t)return{error:"Mutation operation not configured"};if(t.canRun&&!t.canRun(a))return{data:void 0};if(t.run)try{return await t.run(Oe(t,e),r,a)}catch(e){return{error:Ne(e)}}const n=Ce(t.document,a);if(!n)return{error:"Mutation operation not supported in this context"};const o=t.transformVariables?t.transformVariables(r,a):r,s=Oe(t,e);try{const e=await s.mutate({mutation:n,variables:o});return{data:t.transformResult?t.transformResult(e.data,a):e.data,error:void 0}}catch(e){return{error:Ne(e)}}},we=async(e,t,r,a,n)=>{if(!t)return ve("Multi fetch operation not configured");if(!r.length)return ve("No proxy ids supplied for multi fetch");const o=Oe(t,e);if(t.transformVariablesMulti&&(t.documentMulti||t.document)){const e=t.transformVariablesMulti(r,a,n),s=[];for(const r of e)try{const e=await o.query({query:r.document,variables:r.variables,fetchPolicy:"network-only"});t.transformMultiResult?t.transformMultiResult(e.data,n).forEach(e=>s.push(e)):r.proxyIDs.forEach(t=>{s.push({proxyID:t,success:!e.error,data:e.data,error:e.error?.message})})}catch(e){const t=Ne(e);r.proxyIDs.forEach(e=>s.push({proxyID:e,success:!1,error:t}))}const i=s.filter(e=>e.success).length,c=s.length-i,l=Array.from(new Set(s.filter(e=>!!e.error).map(e=>e.error)));return{results:s,allSucceeded:0===c,anySucceeded:i>0,successCount:i,failureCount:c,error:l.length?l.join(", "):void 0}}const s=await Promise.all(r.map(async r=>{const o={...n,proxyID:r},s=await De(e,t,a,o);return{proxyID:r,success:!s.error,data:s.data,error:s.error}})),i=s.filter(e=>e.success).length,c=s.length-i,l=Array.from(new Set(s.filter(e=>!!e.error).map(e=>e.error)));return{results:s,allSucceeded:0===c,anySucceeded:i>0,successCount:i,failureCount:c,error:l.length?l.join(", "):void 0}},Pe=Ee`
|
|
2
|
+
query OdigosApiNoop {
|
|
3
|
+
__typename
|
|
4
|
+
}
|
|
5
|
+
`,Le=(e,t)=>{if(e)return"function"==typeof e?e(t):e},ke=(e,t)=>e[t],Ge=(e,t,r)=>{if(void 0!==t)return e?.transformResult?e.transformResult(t,r):t},Fe=(e,t,r)=>{if(!e)return;const a=e.transformVariables;return a?a(t,r):t},Ue=(e,r,a)=>{const{operations:o,context:i}=he(),c=ke(o,e),l=t(()=>Le(c?.document,i),[c,i]),d=t(()=>Fe(c,r,i),[c,r,i]),u=!c||!l,m=!!c?.canRun&&!c.canRun(i),p=a?.skip||u||m,f=oe(l??Pe,{variables:d,skip:p,pollInterval:a?.pollInterval,fetchPolicy:a?.fetchPolicy??"cache-and-network",notifyOnNetworkStatusChange:a?.notifyOnNetworkStatusChange,client:c?.client}),E=t(()=>{if(!p)return Ge(c,f.data,i)},[c,i,f.data,p]);s(()=>{p||void 0===E||a?.onCompleted?.(E)},[p,E,a?.onCompleted]),s(()=>{f.error&&a?.onError?.(f.error)},[f.error,a?.onError]);const y=n(async()=>{if(u)return{data:void 0};const e=await f.refetch();return{data:Ge(c,e.data,i)}},[c,i,f,u]);return{data:E,loading:!p&&f.loading,error:f.error,refetch:y,unsupported:u}},xe=(e,r)=>{const{operations:a,context:o}=he(),s=ke(a,e),i=t(()=>Le(s?.document,o),[s,o]),c=!s||!i,[l,d]=ae(i??Pe,{fetchPolicy:r?.fetchPolicy??"network-only",notifyOnNetworkStatusChange:r?.notifyOnNetworkStatusChange,client:s?.client});return{execute:n(async e=>{if(c)return{error:void 0};if(s?.canRun&&!s.canRun(o))return{data:void 0};const t=Fe(s,e,o),r=await l({variables:t});return r.error?{error:r.error}:{data:Ge(s,r.data,o)}},[s,o,l,c]),data:t(()=>Ge(s,d.data,o),[s,o,d.data]),loading:d.loading,error:d.error,called:d.called,unsupported:c}},Me=(e,r)=>{const{operations:a,context:s}=he(),i=ne(),c=ke(a,e),l=t(()=>Le(c?.document,s),[c,s]),d=!c||!l,[u,m]=o({loading:!1,called:!1}),p=n(()=>m({loading:!1,called:!1}),[]);return[n(async e=>{if(d||!l)return{error:void 0};if(c?.canRun&&!c.canRun(s))return{data:void 0};const t=Fe(c,e,s),a=c?.client??i;m(e=>({...e,loading:!0,called:!0}));try{const e=await a.mutate({mutation:l,variables:t}),n=Ge(c,e.data,s);if(m({data:n,loading:!1,error:void 0,called:!0}),r?.refetchQueries){const e=a.refetchQueries({include:r.refetchQueries});r?.awaitRefetchQueries&&await e}return void 0!==n&&r?.onCompleted?.(n),{data:n}}catch(e){const t=e;return m({data:void 0,loading:!1,error:t,called:!0}),r?.onError?.(t),{error:t}}},[c,s,i,l,d,r]),{data:u.data,loading:u.loading,error:u.error,called:u.called,unsupported:d,reset:p}]},He=[],Ke=(e,t,r,a)=>{let n=!0;const o={sources:[]};for(const[s,i]of Object.entries(e)){if(!i.length)continue;n=!1;const e=i.map(({id:e,selected:t,currentStreamName:a})=>({namespace:e.namespace,name:e.name,kind:e.kind,selected:void 0!==t&&t,currentStreamName:a||r}));let c=0,l=0;for(const r of e){const e=t.find(e=>e.id.namespace===s&&e.id.name===r.name&&e.id.kind===r.kind),a=e?.dataStreamNames||[];r.selected&&!e?c++:!r.selected&&e&&a.length<=1&&l++}a(c,l),o.sources.push(...e)}return{payload:o,isEmpty:n}},Ve=(e,t)=>{let r=!0;const a={namespaces:[]};for(const[n,{selected:o,currentStreamName:s}]of Object.entries(e))"boolean"==typeof o&&(r=!1,a.namespaces.push({namespace:n,selected:o,currentStreamName:s||t}));return{payload:a,isEmpty:r}},We={filter:{markedForInstrumentation:!0}},Ye=[],je=[],$e=[],qe=[],Be=[],Qe=e=>{if(e)return{clusters:[e],totalNamespaces:e.namespaces?.length??0,totalWorkloads:(e.namespaces??[]).reduce((e,t)=>e+(t.workloads?.length??0),0),lastUpdated:e.timestamp}},ze=[],Je=[],Xe=(e,t)=>({...e,fields:e.fields.filter(({value:e})=>void 0!==e),currentStreamName:t}),Ze=[],et=()=>{const{operations:e,context:r}=he(),a=ne(),o=((e,t)=>{const r=ne(),{notifyError:a,notifySuccess:o,notifyPending:s,notifyReadonly:i}=Re(f.Source),{selectedStreamName:c}=S(),{setProgress:l,resetProgress:d}=h(),{setConfiguredSources:u,setConfiguredFutureApps:m}=T(),E=(e,t)=>{const{progress:r}=h.getState();e>0&&l(g.Instrumenting,{total:(r[g.Instrumenting]?.total||0)+e,current:r[g.Instrumenting]?.current||0}),t>0&&l(g.Uninstrumenting,{total:(r[g.Uninstrumenting]?.total||0)+t,current:r[g.Uninstrumenting]?.current||0})},y=n(async()=>{const{error:n}=await De(r,e.GET_WORKLOADS,We,t);n&&a(p.Read,n)},[r,e.GET_WORKLOADS,t,a]);return{useSources:()=>{const e=Ue("GET_WORKLOADS",We,{fetchPolicy:"cache-first"});return{items:e.data?.workloads??Ye,loading:e.loading,refetch:y}},fetchAll:y,fetchByTargets:async(n,o)=>{const s=!!o?.slim,i=n.map(e=>_(e,f.Source)).filter(e=>e.namespace&&e.name&&e.kind);if(0===i.length)return;if(i.length>50)return void await y();const c=s&&e.GET_WORKLOADS_BY_IDS_SLIM?e.GET_WORKLOADS_BY_IDS_SLIM:e.GET_WORKLOADS_BY_IDS,{error:l}=await De(r,c,{ids:i.map(({namespace:e,kind:t,name:r})=>({namespace:e,kind:t,name:r}))},t);l?a(p.Read,l):await y()},fetchById:async n=>{const{data:o,error:s}=await De(r,e.GET_WORKLOADS_BY_IDS,{ids:[{namespace:n.namespace,kind:n.kind,name:n.name}]},t);if(!s)return o?.workloadsByIds?.find(e=>e.id.namespace===n.namespace&&e.id.kind===n.kind&&e.id.name===n.name);a(p.Read,s)},fetchLibraries:async a=>De(r,e.GET_SOURCE_LIBRARIES,a,t),fetchPeerSources:async a=>De(r,e.GET_PEER_SOURCES,{serviceName:a},t),usePeerSources:(e,t)=>Ue("GET_PEER_SOURCES",e,t),persist:async(n,o)=>{if(t.isReadonly)return i();const{data:l}=await De(r,e.GET_WORKLOADS,We,t,"cache-first"),f=l?.workloads??Ye,{payload:y,isEmpty:S}=Ke(n,f,c,E),{payload:h,isEmpty:T}=Ve(o,c);let _=!1;S||(_=!0,s("Persisting sources...")),T||_||s("Persisting namespaces...");const{error:A}=await be(r,e.PERSIST_SOURCES,y,t);if(A&&(d(g.Instrumenting),d(g.Uninstrumenting),a(p.Update,A)),e.PERSIST_NAMESPACES){const{error:n}=await be(r,e.PERSIST_NAMESPACES,h,t);n&&a(p.Update,n)}u({}),m({})},persistV2:async a=>{if(t.isReadonly)return i(),{error:"readonly"};const n=[];for(const[,o]of Object.entries(a)){const a={sources:[]},s={namespaces:[]};for(const e of o)e.name&&e.kind?a.sources.push(e):s.namespaces.push(e);if(s.namespaces.length>0&&e.PERSIST_NAMESPACES){const{error:a}=await be(r,e.PERSIST_NAMESPACES,s,t);a&&n.push(a)}if(a.sources.length>0){const{error:o}=await be(r,e.PERSIST_SOURCES,a,t);o&&n.push(o)}}return n.length?{error:n.join(", ")}:void 0},update:async(n,l)=>{if(t.isReadonly)return i();s("Updating source...");const d={sourceId:n,patchSourceRequest:{...l,currentStreamName:c}},{data:u,error:m}=await be(r,e.UPDATE_SOURCE,d,t);m?a(p.Update,m,n):u?.updateK8sActualSource&&o(p.Update,`Successfully updated "${n.name}" source`,n)},restartWorkloads:async n=>{if(t.isReadonly)return i();s("Restarting sources...");const{data:c,error:l}=await be(r,e.RESTART_WORKLOADS,{sourceIds:n},t);l?a(p.Update,l):c?.restartWorkloads&&o(p.Update,`Successfully restarted ${n.length} sources`)},restartPod:async(n,c)=>{if(t.isReadonly)return i();s("Restarting pod...");const{data:l,error:d}=await be(r,e.RESTART_POD,{namespace:n,name:c},t);d?a(p.Update,d):l?.restartPod&&o(p.Update,`Successfully restarted pod ${n}/${c}`)},recoverFromRollback:async n=>{if(t.isReadonly)return i();s("Recovering from rollback...");const{data:c,error:l}=await be(r,e.RECOVER_FROM_ROLLBACK,{sourceId:n},t);l?a(p.Update,l,n):c?.recoverFromRollbackForWorkload&&o(p.Update,"Successfully triggered recovery from rollback")}}})(e,r),i=((e,t)=>{const r=ne(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=Re(f.Destination),{selectedStreamName:s}=S(),i=async()=>{const{error:n}=await De(r,e.GET_DESTINATIONS,void 0,t);n&&a(p.Read,n)};return{useDestinations:()=>{const e=Ue("GET_DESTINATIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.destinations??e.data?.destinations??Je,loading:e.loading,refetch:i}},useDestinationCategories:()=>{const e=Ue("GET_DESTINATION_CATEGORIES",void 0);return{data:e.data,loading:e.loading}},usePotentialDestinations:()=>{const e=Ue("GET_POTENTIAL_DESTINATIONS",void 0);return{data:e.data,loading:e.loading}},fetchAll:i,testConnection:async a=>{const{data:n}=await be(r,e.TEST_DESTINATION_CONNECTION,{destination:Xe(a,s)},t);return n},create:async c=>{if(t.isReadonly)return o();const{error:l}=await be(r,e.CREATE_DESTINATION,{destination:Xe(c,s)},t);l?a(p.Create,l):(n(p.Create,`Successfully created "${c.type}" destination`),await i())},update:async(c,l)=>{if(t.isReadonly)return o();const{data:d,error:u}=await be(r,e.UPDATE_DESTINATION,{id:c,destination:Xe(l,s)},t);u?a(p.Update,u,c):d?.updateDestination&&(n(p.Update,`Successfully updated "${l.type}" destination`,c),await i())},remove:async c=>{if(t.isReadonly)return o();const{data:l}=await De(r,e.GET_DESTINATIONS,void 0,t,"cache-first"),d=l?.computePlatform?.destinations??l?.destinations??Je,u=d.find(e=>R(e)===c)?.destinationType?.type,{error:m}=await be(r,e.DELETE_DESTINATION,{id:c,currentStreamName:s},t);m?a(p.Delete,m,c):(n(p.Delete,`Successfully deleted "${u??c}" destination`,c),await i())}}})(e,r),l=((e,r)=>{const a=ne(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=Re(f.Action),i=async()=>{const{error:t}=await De(a,e.GET_ACTIONS,void 0,r);t&&n(p.Read,t)};return{useActions:()=>{const e=Ue("GET_ACTIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.actions??e.data?.actions??je,loading:e.loading,refetch:i}},useActionTypes:()=>{const e=Ue("GET_ACTION_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:t(()=>A(e.data)||$e,[e.data]),loading:e.loading}},fetchAll:i,create:async t=>{if(r.isReadonly)return s();if(!e.CREATE_ACTION)return;const{error:c}=await be(a,e.CREATE_ACTION,{action:t},r);c?n(p.Create,c):(o(p.Create,`Successfully created "${t.type}" action`),await i())},update:async(t,c)=>{if(r.isReadonly)return s();if(!e.UPDATE_ACTION)return;const{error:l}=await be(a,e.UPDATE_ACTION,{id:t,action:c},r);l?n(p.Update,l,t):(o(p.Update,`Successfully updated "${c.type}" action`,t),await i())},remove:async(t,c)=>{if(r.isReadonly)return s();if(!e.DELETE_ACTION)return;const{error:l}=await be(a,e.DELETE_ACTION,{id:t,actionType:c},r);l?n(p.Delete,l,t):(o(p.Delete,`Successfully deleted "${c}" action`,t),await i())}}})(e,r),d=((e,r)=>{const a=ne(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=Re(f.InstrumentationRule),i=async()=>{const{error:t}=await De(a,e.GET_INSTRUMENTATION_RULES,void 0,r);t&&n(p.Read,t)};return{useRules:()=>{const e=Ue("GET_INSTRUMENTATION_RULES",void 0,{fetchPolicy:"cache-first"});return{items:t(()=>(e.data?.computePlatform?.instrumentationRules??e.data?.instrumentationRules??[]).map(C),[e.data]),loading:e.loading,refetch:i}},useRuleTypes:()=>{const e=Ue("GET_INSTRUMENTATION_RULE_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:t(()=>v(e.data)||Ze,[e.data]),loading:e.loading}},fetchAll:i,create:async(t,c)=>{if(r.isReadonly)return s();if(!e.CREATE_INSTRUMENTATION_RULE)return;const{error:l}=await be(a,e.CREATE_INSTRUMENTATION_RULE,{instrumentationRule:I(t)},r);l?n(p.Create,l):(o(p.Create,`Successfully created${c?` "${c}"`:""} rule`),await i())},update:async(t,c,l)=>{if(r.isReadonly)return s();if(!e.UPDATE_INSTRUMENTATION_RULE)return;const{error:d}=await be(a,e.UPDATE_INSTRUMENTATION_RULE,{ruleId:t,instrumentationRule:I(c)},r);d?n(p.Update,d,t):(o(p.Update,`Successfully updated${l?` "${l}"`:""} rule`,t),await i())},remove:async(t,c)=>{if(r.isReadonly)return s();if(!e.DELETE_INSTRUMENTATION_RULE)return;const{error:l}=await be(a,e.DELETE_INSTRUMENTATION_RULE,{ruleId:t},r);l?n(p.Delete,l,t):(o(p.Delete,`Successfully deleted${c?` "${c}"`:""} rule`,t),await i())}}})(e,r),m=((e,t)=>{const r=ne(),{addNotification:a}=c(),{setDataStreams:n}=S(),o=(e,t)=>a({type:u.Error,title:e,message:t}),i=async()=>{const{data:a,error:s}=await De(r,e.GET_DATA_STREAMS,void 0,t);if(s)o(p.Read,s);else if(a){const e=a.computePlatform?.dataStreams??a.dataStreams??[];n(e)}},l=e.CREATE_DATA_STREAM?async n=>{if(t.isReadonly)return Ie(a);const{error:s}=await be(r,e.CREATE_DATA_STREAM,{stream:n},t);s?o(p.Create,s):await i()}:void 0;return{useDataStreams:()=>{const e=Ue("GET_DATA_STREAMS",void 0,{fetchPolicy:"cache-first"}),t=e.data?.computePlatform?.dataStreams??e.data?.dataStreams??ze;return s(()=>{n(t)},[JSON.stringify(t.map(e=>e.name))]),{items:t,loading:e.loading,refetch:i}},fetchAll:i,create:l,update:async(n,s)=>{if(t.isReadonly)return Ie(a);const{error:c}=await be(r,e.UPDATE_DATA_STREAM,{id:n,dataStream:s},t);c?o(p.Update,c):await i()},remove:async n=>{if(t.isReadonly)return Ie(a);const{error:s}=await be(r,e.DELETE_DATA_STREAM,{id:n},t);s?o(p.Delete,s):await i()}}})(e,r),N=((e,t)=>{const r=ne(),{notifyError:a,notifyReadonly:n}=Re(f.Namespace),o=async()=>{const n=await De(r,e.GET_NAMESPACES_WITH_WORKLOADS,void 0,t);return n.error&&a(p.Read,n.error),n};return{useNamespaces:()=>{const e=Ue("GET_NAMESPACES_WITH_WORKLOADS",void 0,{fetchPolicy:"cache-and-network"});return{items:e.data?.namespaces??Be,loading:e.loading,refetch:o}},fetchAll:o,persist:async o=>{if(t.isReadonly)return n();const{error:s}=await be(r,e.PERSIST_NAMESPACES,o,t);return s&&a(p.Update,s),s?{error:s}:void 0}}})(e,r),O=((e,t)=>{const r=ne(),{notifyError:a}=Re(f.Source);return{fetch:async n=>{const o=await De(r,e.GET_K8S_MANIFEST,n,t);return o.error&&a(p.Read,o.error),o}}})(e,r),D=((e,t)=>{const r=ne(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=Re(f.Source);return{useEffectiveConfig:(e,t)=>Ue("GET_EFFECTIVE_CONFIG",e,t),useConfigYamls:e=>Ue("GET_CONFIG_YAMLS",void 0,e),getEffectiveConfig:async a=>e.GET_EFFECTIVE_CONFIG?De(r,e.GET_EFFECTIVE_CONFIG,{id:a},t):{error:"GET_EFFECTIVE_CONFIG not configured"},applyConfigurations:e.UPDATE_REMOTE_CONFIG?async(n,s)=>{if(t.isReadonly)return o();const{error:i}=await be(r,e.UPDATE_REMOTE_CONFIG,{formData:n,connectionIds:s},t);return i&&a(p.Update,i),i?{error:i}:void 0}:void 0,getConfigYamls:e.GET_CONFIG_YAMLS?async()=>De(r,e.GET_CONFIG_YAMLS,void 0,t):void 0,updateLocalUiConfig:e.UPDATE_LOCAL_UI_CONFIG?async s=>{if(t.isReadonly)return o();const{error:i}=await be(r,e.UPDATE_LOCAL_UI_CONFIG,{config:s},t);return i?a(p.Update,i):n(p.Update,"Local UI configuration updated successfully"),i?{error:i}:void 0}:void 0,resetLocalUiConfigToDefaults:e.RESET_LOCAL_UI_CONFIG_TO_FACTORY_DEFAULTS?async()=>{if(t.isReadonly)return o();const{error:s}=await be(r,e.RESET_LOCAL_UI_CONFIG_TO_FACTORY_DEFAULTS,void 0,t);return s?a(p.Update,s):n(p.Update,"Local UI configuration reset to factory defaults"),s?{error:s}:void 0}:void 0}})(e,r),b=((e,t)=>{const r=ne(),{apolloConfig:a}=he();return{fetchDescribeOdigos:e.GET_DESCRIBE_ODIGOS?async()=>De(r,e.GET_DESCRIBE_ODIGOS,void 0,t):void 0,fetchDescribeSource:e.GET_DESCRIBE_SOURCE?async a=>De(r,e.GET_DESCRIBE_SOURCE,a,t):void 0,downloadDiagnose:e.GET_DIAGNOSE?async(n,o)=>{const s=await De(r,e.GET_DIAGNOSE,{input:n,dryRun:o?.dryRun??!1},t),i=s?.data?.stats?.fileCount??0;return!s.error&&i>0&&!o?.dryRun&&await(async e=>{const t=(e=>{try{return new URL("/diagnose/download",e).toString()}catch{return null}})(e.httpUrl);if(t)try{const[r,a]=await Promise.all([Promise.resolve(e.authHeader?.()??{}),Promise.resolve(e.csrfHeader?.()??{})]),n=await fetch(t,{credentials:e.credentials??"same-origin",headers:{...r,...a}});if(!n.ok)throw new Error(`Failed to download diagnose archive: ${n.status} ${n.statusText}`);((e,t)=>{if("undefined"==typeof document)return;const r=URL.createObjectURL(e),a=document.createElement("a");a.href=r,a.download=t,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(r)})(await n.blob(),`odigos-diagnose-${Date.now()}.tar.gz`)}catch(e){}})(a),s}:void 0}})(e,r),w=((e,t)=>{const r=ne(),{notifyError:a,notifyReadonly:n}=Re(f.Source),o=async()=>{e.GET_TOKENS&&await De(r,e.GET_TOKENS,void 0,t)};return{useTokens:()=>{const e=Ue("GET_TOKENS",void 0,{fetchPolicy:"cache-first"});return{items:e.data??He,loading:e.loading,refetch:o}},updateToken:e.UPDATE_TOKEN?async o=>{if(t.isReadonly)return n();const{error:s}=await be(r,e.UPDATE_TOKEN,{token:o},t);return s&&a(p.Update,s),s?{error:s}:void 0}:void 0}})(e,r),P=((e,t)=>{const r=ne();return{useMetrics:e=>Ue("GET_METRICS",void 0,e),fetch:async()=>De(r,e.GET_METRICS,void 0,t)}})(e,r),L=((e,t)=>{const r=ne();return{useServiceMap:e=>Ue("GET_SERVICE_MAP",void 0,e),fetch:e.GET_SERVICE_MAP?async()=>De(r,e.GET_SERVICE_MAP,void 0,t):void 0}})(e,r),k=((e,t)=>{const r=ne();return{useSlots:e=>Ue("GET_PROFILING_SLOTS",void 0,e),useSourceProfiling:(e,t)=>Ue("GET_SOURCE_PROFILING",e,t),fetchSlots:e.GET_PROFILING_SLOTS?async()=>De(r,e.GET_PROFILING_SLOTS,void 0,t):void 0,fetchSourceProfiling:e.GET_SOURCE_PROFILING?async a=>De(r,e.GET_SOURCE_PROFILING,a,t):void 0,enableProfiling:e.ENABLE_SOURCE_PROFILING?async a=>be(r,e.ENABLE_SOURCE_PROFILING,a,t):void 0}})(e,r),G=((e,t)=>{const r=ne();return{useGatewayInfo:e=>Ue("GET_GATEWAY_INFO",void 0,e),useGatewayPods:e=>Ue("GET_GATEWAY_PODS",void 0,e),useNodeCollectorInfo:e=>Ue("GET_NODE_COLLECTOR_INFO",void 0,e),useNodeCollectorPods:e=>Ue("GET_NODE_COLLECTOR_PODS",void 0,e),usePodInfo:(e,t)=>Ue("GET_COLLECTOR_POD_INFO",e,t),getGatewayInfo:e.GET_GATEWAY_INFO?async()=>De(r,e.GET_GATEWAY_INFO,void 0,t):void 0,getGatewayPods:e.GET_GATEWAY_PODS?async()=>De(r,e.GET_GATEWAY_PODS,void 0,t):void 0,getNodeCollectorInfo:e.GET_NODE_COLLECTOR_INFO?async()=>De(r,e.GET_NODE_COLLECTOR_INFO,void 0,t):void 0,getNodeCollectorPods:e.GET_NODE_COLLECTOR_PODS?async()=>De(r,e.GET_NODE_COLLECTOR_PODS,void 0,t):void 0,getExtendedPodInfo:e.GET_COLLECTOR_POD_INFO?async(a,n)=>De(r,e.GET_COLLECTOR_POD_INFO,{namespace:a,name:n},t):void 0}})(e,r),F=((e,t)=>{const r=ne(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=Re(f.SamplingRule),s=async()=>{e.GET_SAMPLING_RULES&&await De(r,e.GET_SAMPLING_RULES,void 0,t)},i=(e,i)=>e?async c=>{if(t.isReadonly)return o();const{error:l}=await be(r,e,c,t);return l?a(i,l):(n(p.Create,"Successfully created sampling rule"),await s()),l?{error:l}:void 0}:void 0,c=(e,i)=>e?async(c,l)=>{if(t.isReadonly)return o();const{error:d}=await be(r,e,{samplingId:l.samplingId,ruleId:c,rule:l.rule},t);return d?a(i,d):(n(p.Update,"Successfully updated sampling rule"),await s()),d?{error:d}:void 0}:void 0,l=e=>e?async(i,c)=>{if(t.isReadonly)return o();const{error:l}=await be(r,e,{samplingId:c,ruleId:i},t);return l?a(p.Delete,l):(n(p.Delete,"Successfully deleted sampling rule"),await s()),l?{error:l}:void 0}:void 0;return{useSamplingRules:()=>{const e=Ue("GET_SAMPLING_RULES",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.samplingRules??e.data?.samplingRules??qe,k8sHealthProbesConfig:e.data?.computePlatform?.k8sHealthProbesConfig??e.data?.k8sHealthProbesConfig??null,loading:e.loading,refetch:s}},fetchAll:e.GET_SAMPLING_RULES?async()=>De(r,e.GET_SAMPLING_RULES,void 0,t):void 0,createNoisy:i(e.CREATE_NOISY_OPERATION_RULE,p.Create),updateNoisy:c(e.UPDATE_NOISY_OPERATION_RULE,p.Update),deleteNoisy:l(e.DELETE_NOISY_OPERATION_RULE),createHighlyRelevant:i(e.CREATE_HIGHLY_RELEVANT_OPERATION_RULE,p.Create),updateHighlyRelevant:c(e.UPDATE_HIGHLY_RELEVANT_OPERATION_RULE,p.Update),deleteHighlyRelevant:l(e.DELETE_HIGHLY_RELEVANT_OPERATION_RULE),createCostReduction:i(e.CREATE_COST_REDUCTION_RULE,p.Create),updateCostReduction:c(e.UPDATE_COST_REDUCTION_RULE,p.Update),deleteCostReduction:l(e.DELETE_COST_REDUCTION_RULE),updateK8sHealthProbesConfig:e.UPDATE_LOCAL_UI_SAMPLING_CONFIG?async n=>{if(t.isReadonly)return o();const{error:i}=await be(r,e.UPDATE_LOCAL_UI_SAMPLING_CONFIG,{config:{k8sHealthProbesSampling:n}},t);return i?a(p.Update,i):await s(),i?{error:i}:void 0}:void 0}})(e,r),U=((e,r)=>{const a=ne();return{useSnapshots:()=>{const e=r.proxyID,a=!!e,o=Ue("GET_ALL_CLUSTER_SNAPSHOTS",void 0,{fetchPolicy:"cache-and-network",skip:a}),s=Ue("GET_CLUSTER_SNAPSHOT",e?{clusterId:e}:void 0,{fetchPolicy:"cache-and-network",skip:!a}),i=t(()=>a?Qe(s.data):o.data,[a,s.data,o.data]),c=n(async()=>{if(!a)return o.refetch();const{data:e}=await s.refetch();return{data:Qe(e)}},[a,o.refetch,s.refetch]);return{data:i,loading:a?s.loading:o.loading,unsupported:a?s.unsupported:o.unsupported,refetch:c}},getAllClusterSnapshots:e.GET_ALL_CLUSTER_SNAPSHOTS?async()=>De(a,e.GET_ALL_CLUSTER_SNAPSHOTS,void 0,r):void 0,getClusterSnapshot:e.GET_CLUSTER_SNAPSHOT?async t=>De(a,e.GET_CLUSTER_SNAPSHOT,{clusterId:t},r):void 0}})(e,r);return{sourcesApi:o,destinationsApi:i,actionsApi:l,instrumentationRulesApi:d,dataStreamsApi:m,namespacesApi:N,k8sManifestApi:O,configApi:D,describeApi:b,tokensApi:w,metricsApi:P,serviceMapApi:L,profilingApi:k,collectorsApi:G,samplingApi:F,snapshotsApi:U,capabilities:t(()=>((e,t)=>{const r=t.platformType===E.Vm,a=t.tier===y.Onprem,n=!r;return{canBulkPersistSources:n&&!!e.PERSIST_SOURCES,canInstrumentNamespaces:n&&!!e.PERSIST_NAMESPACES,canFetchSnapshots:n&&!!e.GET_ALL_CLUSTER_SNAPSHOTS,canRecoverFromRollback:n&&!!e.RECOVER_FROM_ROLLBACK,canRestartWorkloads:n&&!!e.RESTART_WORKLOADS,canFetchPeerSources:!!e.GET_PEER_SOURCES,canFetchSourceLibraries:!!e.GET_SOURCE_LIBRARIES,canFetchK8sManifest:n&&!!e.GET_K8S_MANIFEST,canCreateDestination:!!e.CREATE_DESTINATION,canTestConnection:n&&!!e.TEST_DESTINATION_CONNECTION,canFetchDestinationCategories:!!e.GET_DESTINATION_CATEGORIES,canFetchPotentialDestinations:n&&!!e.GET_POTENTIAL_DESTINATIONS,canCreateAction:!!e.CREATE_ACTION,canFetchActionTypes:!!e.GET_ACTION_TYPES,canCreateInstrumentationRule:!!e.CREATE_INSTRUMENTATION_RULE,canFetchInstrumentationRuleTypes:!!e.GET_INSTRUMENTATION_RULE_TYPES,canApplyEffectiveConfig:n&&!!e.UPDATE_REMOTE_CONFIG&&!!e.GET_EFFECTIVE_CONFIG,canFetchEffectiveConfig:!!e.GET_EFFECTIVE_CONFIG,canFetchConfigYamls:!!e.GET_CONFIG_YAMLS,canFetchProfiling:n&&!!e.GET_PROFILING_SLOTS,canFetchCollectorInfo:n&&!!e.GET_GATEWAY_INFO,canManageSamplingRules:!!e.GET_SAMPLING_RULES,isEnterprise:a,isVm:r}})(e,r),[e,r]),resetCache:n(async()=>{await a.cache.reset()},[a])}},tt={type:"",disabled:!1,name:"",notes:"",signals:[],fields:{}},rt=a(null),at=e=>{const t=O(e??{}),r=t[b.ExtractAttribute];return r?.extractions?.length&&(r.extractions=r.extractions.map(e=>{const t=e;return{...t,method:t.method||(t.regex?.trim()?"regex":"preset")}})),t},nt="All row fields are required",ot="At least one row is required",st=(e,t)=>!!e&&t.every(t=>{const r=e[t];return Array.isArray(r)?r.length>0:!("string"==typeof(a=r)?!a.trim():P(a));var a}),it=({children:r})=>{const[a,s]=o(null),i=N(tt),c=n(e=>{i.resetFormData(),i.handleErrorChange(void 0,void 0,{}),e?.type&&i.handleFormChange("type",e.type),s(e)},[]),d=n((e,t)=>{var r;i.resetFormData((({type:e,name:t,notes:r,disabled:a,signals:n,fields:o})=>({type:e,name:t||"",notes:r||"",disabled:!!a,signals:n??[],fields:at(o)}))(e)),i.handleErrorChange(void 0,void 0,{}),s(t??(r=e.type,D.find(e=>e.type===r)??null))},[]),u=n(()=>{if(!a)return{errorMessage:"No action type selected",preparedFormData:O(tt)};const e=(e=>{const t=O(e),r=t.fields||{},a=r[b.UrlTemplatizationRulesGroups];a?.length&&(r[b.UrlTemplatizationRulesGroups]=a.map(e=>({...e,templatizationRules:(e.templatizationRules||[]).filter(e=>!!e.template?.trim())})));const n=r[b.AttributeNamesToDelete];n?.length&&(r[b.AttributeNamesToDelete]=n.filter(e=>!!e?.trim()));const o=r[b.Renames];if(o){const e=Array.isArray(o)?o.map(e=>[e?.key??"",e?.value??""]):Object.entries(o);r[b.Renames]=Object.fromEntries(e.filter(([e,t])=>!!e?.trim()&&!!t?.trim()))}const s=r[b.ExtractAttribute];return s?.extractions?.length&&(r[b.ExtractAttribute]={extractions:s.extractions.map(e=>{const t=e,r=t.method||(t.regex?.trim()?"regex":"preset"),a=t.targetAttributeName?.trim()||"";if("regex"===r)return{targetAttributeName:a,lookupKey:"",regex:t.regex?.trim()||""};const n={targetAttributeName:a,lookupKey:t.lookupKey?.trim()||"",regex:""};return t.dataFormat&&(n.dataFormat=t.dataFormat),n}).filter(e=>!!(e.targetAttributeName||e.lookupKey||e.dataFormat||e.regex))}),t.fields=r,t})(i.formData),t={};return P(e.signals)&&(t.signals=l.FIELD_IS_REQUIRED),a.type&&Object.assign(t,((e,t,r)=>{const a={},n=t.fields||{},o=r.fields||{};switch(e){case w.K8sAttributes:{const e=!(n[b.CollectContainerAttributes]||n[b.CollectReplicaSetAttributes]||n[b.CollectWorkloadId]||n[b.CollectClusterId]),t=!n[b.LabelsAttributes]?.length,r=!n[b.AnnotationsAttributes]?.length;e&&t&&r&&(a[b.CollectContainerAttributes]="Enable at least one option or add a label/annotation row");const o=n[b.LabelsAttributes];o?.some(e=>!st(e,["labelKey","attributeKey","fromSources"]))&&(a[b.LabelsAttributes]=nt);const s=n[b.AnnotationsAttributes];s?.some(e=>!st(e,["annotationKey","attributeKey","fromSources"]))&&(a[b.AnnotationsAttributes]=nt);break}case w.AddClusterInfo:{const e=n[b.ClusterAttributes];e?.length?e.some(e=>!st(e,["attributeName","attributeStringValue"]))&&(a[b.ClusterAttributes]=nt):a[b.ClusterAttributes]=ot;break}case w.DeleteAttributes:{const e=o[b.AttributeNamesToDelete]||[],t=n[b.AttributeNamesToDelete]||[];t.length?e.length>t.length&&(a[b.AttributeNamesToDelete]=nt):a[b.AttributeNamesToDelete]=e.length?nt:ot;break}case w.RenameAttributes:{const e=Object.entries(o[b.Renames]||{}),t=Object.entries(n[b.Renames]||{}),r=e.some(([e,t])=>!e?.trim()||!t?.trim());t.length?r&&(a[b.Renames]=nt):a[b.Renames]=e.length?nt:ot;break}case w.PiiMasking:{const e=n[b.PiiCategories];e?.length||(a[b.PiiCategories]="Select at least one attribute to mask");break}case w.URLTemplatization:{const e=n[b.UrlTemplatizationRulesGroups];(!e?.length||e.some(e=>!e.templatizationRules?.length))&&(a[b.UrlTemplatizationRulesGroups]="Each rule group needs at least one non-blank template");break}case w.ExtractAttribute:{const e=n[b.ExtractAttribute]?.extractions||[],t=o[b.ExtractAttribute]?.extractions||[];if(e.length)if(e.some(e=>{if(!e.targetAttributeName?.trim())return!0;const t=!!e.regex?.trim(),r=!!e.lookupKey?.trim();return r!==!!e.dataFormat||t===r}))a[b.ExtractAttribute]="Each row needs a target attribute name and either a regex or both lookup key and data format";else{const t=new Set;e.some(e=>{const r=e.targetAttributeName?.trim()||"";return!!t.has(r)||(t.add(r),!1)})&&(a[b.ExtractAttribute]="Each new span attribute name must be unique")}else a[b.ExtractAttribute]=t.length?nt:ot;break}}return a})(a.type,e,i.formData)),i.handleErrorChange(void 0,void 0,t),{errorMessage:Object.keys(t).length>0?"Invalid form values":void 0,preparedFormData:e}},[i,a]),m=t(()=>({selectedOption:a,onSelectOption:c,loadAction:d,genericForm:i,validateFormData:u}),[a,c,d,i,u]);return e(rt.Provider,{value:m,children:r})},ct=()=>{const e=r(rt);if(!e)throw new Error("useActionFormContext must be used within an ActionFormContextProvider");return e},lt={name:""},dt=a(null),ut=({children:r,defaultExcludeName:a=""})=>{const{dataStreams:s}=S(),[c,d]=o(void 0),[u,m]=o(a),[p,f]=o(void 0),[E,y]=o(null),h=i(null),T=N(lt),g=n(e=>{T.resetFormData({name:e}),T.handleErrorChange(void 0,void 0,{}),d(void 0),m(e),f(e),y(null),h.current=null},[]),_=n(()=>{const e=O(T.formData),t=(e=>{const t={};return e.name?L(e.name)||(t.name=l.ILLEGAL_K8S_LABEL):t.name=l.FIELD_IS_REQUIRED,t})(e);T.handleErrorChange(void 0,void 0,t);const r=Object.keys(t).length>0?l.REQUIRED_FIELDS:void 0;return d(r),{errorMessage:r,preparedFormData:e}},[T]),A=n(async e=>{const{errorMessage:t,preparedFormData:r}=_();if(t)return;const a=s.find(e=>e.name===r.name&&e.name!==u);if(a)return h.current=e,void y({preparedFormData:r,existingName:a.name,editingName:p});await e(r)},[_,s,u,p]),R=n(async()=>{const e=h.current,t=E?.preparedFormData;h.current=null,y(null),e&&t&&await e(t)},[E]),I=n(()=>{h.current=null,y(null)},[]),v=t(()=>({genericForm:T,loadDataStream:g,editingName:p,validateFormData:_,requestSubmit:A,pendingMerge:E,confirmMerge:R,cancelMerge:I,errorMessage:c,excludeName:u,setExcludeName:m}),[T,g,p,_,A,E,R,I,c,u]);return e(dt.Provider,{value:v,children:r})},mt=()=>{const e=r(dt);if(!e)throw new Error("useDataStreamFormContext must be used within a DataStreamFormContextProvider");return e},pt={type:"",name:"",currentStreamName:"",disabled:!1,exportedSignals:{logs:!1,metrics:!1,traces:!1,profiles:!1},fields:[]},ft={activeForm:null,onChangeActiveForm:()=>{},loadDestination:()=>{},genericForm:void 0,validateFormData:()=>({isOk:!1,preparedFormData:O(pt)}),unsavedDestinations:[],thisUnsavedDestination:void 0,setUnsavedDestinations:()=>{},addUnsavedDestination:()=>{},updateUnsavedDestination:()=>{},deleteUnsavedDestination:()=>{}},Et=a(ft),yt=e=>e.filter(e=>!!e).map(e=>{const{name:t,componentType:r,componentProperties:a,displayName:n,initialValue:o,renderCondition:s}=e,i=r===M.Dropdown,c=U(a,{});return{componentType:r,renderCondition:s,name:t,title:n,value:o,placeholder:c.placeholder||(i?"Select an option":void 0),options:i&&Array.isArray(c.values)?c.values.map(e=>({id:e,label:e})):void 0,...c}}),St=({children:r})=>{const{selectedStreamName:a}=S(),{items:i}=et().destinationsApi.useDestinations(),[c,d]=o(null),[u,m]=o(ft.unsavedDestinations),p=t(()=>"number"==typeof c?.unsavedIdx?u[c.unsavedIdx]:void 0,[c,u]),f=n((e,t)=>{c&&(m(t=>[...t,{...e,option:c.option}]),d(t?e=>e?{...e,listType:k.UNSAVED,unsavedIdx:u.length}:null:null))},[c,u.length]),E=n((e,t,r)=>{c&&(m(r=>r.map((r,a)=>a===e?{...r,...t,option:c.option}:r)),d(r?e=>e?{...e,listType:k.UNSAVED}:null:null))},[c]),y=n(e=>{m(t=>t.filter((t,r)=>r!==e)),d(null)},[]),h=N({...pt,currentStreamName:a});s(()=>{if(!c)return;if(p)return void h.resetFormData({...p.formData});if(c.listType===k.EXISTS&&c.option.id){const e=i.find(e=>e.id===c.option.id);if(e)return void h.resetFormData({type:e.destinationType.type,name:e.name||e.destinationType.displayName,currentStreamName:a,disabled:!!e.disabled,exportedSignals:{logs:!!e.exportedSignals?.logs,metrics:!!e.exportedSignals?.metrics,traces:!!e.exportedSignals?.traces,profiles:!!e.exportedSignals?.profiles},fields:c.dynamicFields.map(e=>({key:e.name,value:e.value}))})}const e=G(c.option.supportedSignals);h.resetFormData({type:c.option.type,name:c.option.displayName,currentStreamName:a,disabled:!1,exportedSignals:{logs:e.includes(F.Logs),metrics:e.includes(F.Metrics),traces:e.includes(F.Traces),profiles:e.includes(F.Profiles)},fields:c.dynamicFields.map(e=>({key:e.name,value:e.value}))})},[c,p]);const T=n(e=>{h.resetFormData(),h.handleErrorChange(void 0,void 0,{}),d(e?{...e,dynamicFields:e.option?.fields?yt(e.option.fields):[]}:null)},[]),g=n((e,t)=>{let r;for(const a of t){const t=a.items.find(t=>t.type===e.destinationType.type);if(t){r=t;break}}const a=U(e.fields,{}),n={id:e.id,type:e.destinationType.type,displayName:e.name||e.destinationType.displayName,selected:!0,testConnectionSupported:r?.testConnectionSupported??!1,supportedSignals:e.destinationType.supportedSignals,fields:r?r.fields.map(e=>({...e,initialValue:a[e.name]??e.initialValue})):[]},o=yt(n.fields);d({listType:k.EXISTS,option:n,dynamicFields:o})},[]),_=n(()=>{const e=O(h.formData),t={};return c?.dynamicFields.forEach(({name:r,required:a})=>{if(a){const a=e.fields.find(e=>e.key===r)?.value;P(a)&&(t[r]=l.FIELD_IS_REQUIRED)}}),x(e.exportedSignals).length||(t.exportedSignals=l.FIELD_IS_REQUIRED),h.handleErrorChange(void 0,void 0,t),{errorMessage:0===Object.keys(t).length?void 0:"Invalid form values",preparedFormData:e}},[h,c]);return e(Et.Provider,{value:{activeForm:c,onChangeActiveForm:T,loadDestination:g,genericForm:h,validateFormData:_,unsavedDestinations:u,thisUnsavedDestination:p,setUnsavedDestinations:m,addUnsavedDestination:f,updateUnsavedDestination:E,deleteUnsavedDestination:y},children:r})},ht=()=>r(Et),Tt={disabled:!1,ruleName:"",notes:"",sourceScopes:B(),workloads:null,instrumentationLibraries:null,payloadCollection:null,codeAttributes:null,headersCollection:null,customInstrumentations:null},gt=a(null),_t=({children:r,sourceOptions:a=[],namespaceOptions:s=[]})=>{const[i,c]=o(null),l=N(Tt),d=n(e=>{l.resetFormData(),l.handleErrorChange(void 0,void 0,{}),c(e)},[]),u=n((e,t)=>{var r;l.resetFormData((({ruleName:e,notes:t,disabled:r,sourceScopes:a,instrumentationLibraries:n,payloadCollection:o,codeAttributes:s,headersCollection:i,customInstrumentations:c})=>({ruleName:e||"",notes:t||"",disabled:!!r,sourceScopes:q(a),workloads:null,instrumentationLibraries:n??null,payloadCollection:o??null,codeAttributes:s??null,headersCollection:i??null,customInstrumentations:c??null}))(e)),l.handleErrorChange(void 0,void 0,{}),c(t??(r=e.type,H.find(e=>e.type===r)??null))},[]),m=n(()=>{if(!i)return{errorMessage:"No rule type selected",preparedFormData:O(Tt)};const e=(e=>{const t=O(e),r={...t,sourceScopes:Q(t.sourceScopes)?null:t.sourceScopes,workloads:null};return r.headersCollection?.[K.HeaderKeys]?.length&&(r.headersCollection[K.HeaderKeys]=r.headersCollection[K.HeaderKeys].map(e=>e.trim()).filter(e=>e)),r.customInstrumentations?.[V.Golang]?.length&&(r.customInstrumentations[V.Golang]=r.customInstrumentations[V.Golang].map(e=>new W(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)).filter(e=>{return t=e,!!(t.packageName?.trim()||t.functionName?.trim()||t.receiverName?.trim()||t.receiverMethodName?.trim());var t})),r.customInstrumentations?.[V.Java]?.length&&(r.customInstrumentations[V.Java]=r.customInstrumentations[V.Java].map(e=>new Y(e.className,e.methodName)).filter(e=>{return t=e,!(!t.className?.trim()&&!t.methodName?.trim());var t})),r})(l.formData),t=((e,t)=>{const r={};switch(e){case j.CodeAttributes:Object.values(t.codeAttributes||{}).some(e=>null!=e)||(r.codeAttributes="Code attributes are required");break;case j.PayloadCollection:Object.values(t.payloadCollection||{}).some(e=>null!=e)||(r.payloadCollection="Payload collection are required");break;case j.HeadersCollection:t.headersCollection?.[K.HeaderKeys]?.length||(r.headersCollection="Header keys are required");break;case j.CustomInstrumentation:{const e=t.customInstrumentations?.[V.Golang]||[],a=t.customInstrumentations?.[V.Java]||[];if(!e.length&&!a.length){r.customInstrumentations="Custom instrumentation are required";break}const n=e.findIndex(e=>!new W(e.packageName,e.functionName,e.receiverName,e.receiverMethodName).Verify());if(-1!==n){r.customInstrumentations=`Golang probe #${n+1} is invalid: provide a package name plus either a function name OR both a receiver name and receiver method name`;break}const o=a.findIndex(e=>!new Y(e.className,e.methodName).Verify());if(-1!==o){r.customInstrumentations=`Java probe #${o+1} is invalid: both class name and method name are required`;break}break}}return r})(i.type,e);return l.handleErrorChange(void 0,void 0,t),{errorMessage:Object.keys(t).length>0?"Invalid form values":void 0,preparedFormData:e}},[l,i]),p=t(()=>({selectedOption:i,onSelectOption:d,loadRule:u,genericForm:l,validateFormData:m,sourceOptions:a,namespaceOptions:s}),[i,d,u,l,m,a,s]);return e(gt.Provider,{value:p,children:r})},At=()=>{const e=r(gt);if(!e)throw new Error("useRuleFormContext must be used within a RuleFormContextProvider");return e};var Rt;(e=>{e.Create="create",e.View="view",e.EditAutoNoisy="edit-auto-noisy",e.EditAutoCostReduction="edit-auto-cost-reduction",e.EditAutoHighlyRelevant="edit-auto-highly-relevant"})(Rt||(Rt={}));const It=a(null),vt=["50","25","10","1"];function Ct(e){const t=String(e);return vt.includes(t)?t:"custom"}const Nt=({category:r,sourceOptions:a=[],namespaceOptions:i=[],children:c})=>{const{formData:l,handleFormChange:d,resetFormData:u}=N(ee(r)),[m,p]=o(null);s(()=>{u(ee(r)),p(null)},[r]);const f=n(e=>{p(null),d(void 0,void 0,{...l,...e})},[l,d]),E=n(()=>{u(ee(r)),p(null)},[r,u]),y=t(()=>({formType:Rt.Create,category:r,formData:l,handleChange:f,resetForm:E,duplicateWarning:m,setDuplicateWarning:p,sourceOptions:a,namespaceOptions:i}),[r,l,f,E,m,a,i]);return e(It.Provider,{value:y,children:c})},Ot=({data:r,defaultEditMode:a,sourceOptions:c=[],namespaceOptions:l=[],children:d})=>{const[u,m]=o(!1),{formData:p,handleFormChange:f,resetFormData:E}=N(void 0),y=i(null),[S,h]=o(null);s(()=>{r!==y.current&&(y.current=r,r&&a?(E(Z(r)),h(null),m(!0)):(m(!1),h(null)))},[r,a]);const T=n(e=>{h(null),f(void 0,void 0,{...p,...e})},[p,f]),g=n(()=>{r&&(E(Z(r)),h(null),m(!0))},[r,E]),_=n(()=>{m(!1),h(null)},[]),A=t(()=>({formType:Rt.View,data:r,isEditing:u,formData:p,handleChange:T,handleEdit:g,handleCancelEdit:_,duplicateWarning:S,setDuplicateWarning:h,sourceOptions:c,namespaceOptions:l}),[r,u,p,T,g,_,S,c,l]);return e(It.Provider,{value:A,children:d})};function Dt(e){const[r,a]=o(()=>0===e?"all":"sample"),[n,i]=o(()=>Ct(e)),[c,l]=o(()=>"custom"===Ct(e)?String(e):"");s(()=>{a(0===e?"all":"sample");const t=Ct(e);i(t),l("custom"===t?String(e):"")},[e]);const d=t(()=>"all"===r?0:"custom"===n?Number(c)||0:Number(n),[r,n,c]);return{percentageMode:r,setPercentageMode:a,percentagePreset:n,setPercentagePreset:i,customPercentage:c,setCustomPercentage:l,resolvedPercentage:d}}const bt=({enabled:r,keepPercentage:a,children:n})=>{const[i,c]=o(r),l=Dt(a);s(()=>{c(r)},[r]);const d=t(()=>X({enabled:i,keepPercentage:l.resolvedPercentage}),[i,l.resolvedPercentage]),u=t(()=>({formType:Rt.EditAutoNoisy,localEnabled:i,setLocalEnabled:c,...l,summary:d}),[i,l,d]);return e(It.Provider,{value:u,children:n})},wt=({enabled:r,dropPercentage:a,children:n})=>{const[i,c]=o(r),l=Dt(a);s(()=>{c(r)},[r]);const d=t(()=>J(i?{disabled:!1,percentageAtMost:l.resolvedPercentage}:null),[i,l.resolvedPercentage]),u=t(()=>({formType:Rt.EditAutoCostReduction,localEnabled:i,setLocalEnabled:c,...l,summary:d}),[i,l,d]);return e(It.Provider,{value:u,children:n})},Pt=({enabled:r,children:a})=>{const[n,i]=o(r);s(()=>{i(r)},[r]);const c=t(()=>z(n?{disabled:!1}:null),[n]),l=t(()=>({formType:Rt.EditAutoHighlyRelevant,localEnabled:n,setLocalEnabled:i,summary:c}),[n,c]);return e(It.Provider,{value:l,children:a})},Lt=t=>{switch(t.formType){case Rt.Create:return e(Nt,{...t});case Rt.View:return e(Ot,{...t});case Rt.EditAutoNoisy:return e(bt,{...t});case Rt.EditAutoCostReduction:return e(wt,{...t});case Rt.EditAutoHighlyRelevant:return e(Pt,{...t})}};function kt(e){const t=r(It);if(!t)throw new Error("useSamplingRulesFormContext must be used within a SamplingRulesFormProvider");if(e&&t.formType!==e)throw new Error(`Expected formType "${e}" but found "${t.formType}"`);return t}const Gt={otelServiceName:"",currentStreamName:""},Ft=a(null),Ut=({children:r})=>{const[a,s]=o(void 0),i=N(Gt),c=n(e=>{i.resetFormData((({serviceName:e,id:t})=>({otelServiceName:e||t.name||"",currentStreamName:""}))(e)),i.handleErrorChange(void 0,void 0,{}),s(void 0)},[]),l=n(()=>{const e=O(i.formData);return i.handleErrorChange(void 0,void 0,{}),s(void 0),{errorMessage:void 0,preparedFormData:e}},[i]),d=t(()=>({loadSource:c,genericForm:i,validateFormData:l,errorMessage:a}),[c,i,l,a]);return e(Ft.Provider,{value:d,children:r})},xt=()=>{const e=r(Ft);if(!e)throw new Error("useSourceEditFormContext must be used within a SourceEditFormContextProvider");return e},Mt=new Set([$.StaticPod]),Ht=e=>{const t=e.workloads.filter(({selected:e})=>e).length,r=e.workloads.length;return{selectedCount:t,isAllSourced:t>0&&t===r,isSomeSourced:t>0&&t<r,isFutureApps:e.selected||!1}},Kt=(e,t,r)=>{if(t&&!e.name.toLowerCase().includes(t.toLowerCase()))return!1;if(r.showOnlySelected){const{isAllSourced:t,isSomeSourced:r,isFutureApps:a}=Ht(e);return t||r||a}return!0},Vt=(e,t,r)=>!(t&&!e.name.toLowerCase().includes(t.toLowerCase()))&&(!r.showOnlySelected||e.selected),Wt=a({snapshots:null,setSnapshots:()=>{},isFetching:!1,setIsFetching:()=>{},formData:[],handleSourceChange:()=>{},handleSelectAll:()=>{},formDiff:{},isFormDirty:!1}),Yt=(e,t,r)=>{const a=[];return t.workloads.forEach(n=>{const o=e?.workloads.find(e=>e.name===n.name&&e.kind===n.kind);n.selected!==o?.selected&&a.push({namespace:t.name,name:n.name,kind:n.kind,selected:n.selected||!1,currentStreamName:r})}),a},jt=({children:r,selectedConnectionIds:a,initialInputs:i})=>{const{tier:c}=te(),l=c===y.Onprem,{capabilities:d}=et(),u=d.canInstrumentNamespaces,{selectedStreamName:m}=S(),[p,E]=o(!1),[h,T]=o(null),[g,_]=o([]);s(()=>{h&&_(e=>{const t=((e,t)=>O(((e,t)=>e.clusters.filter(({clusterId:e})=>!t||t.includes(e)))(e,t)))(h,a);return t.map(t=>{const r=e?.find(e=>e.clusterId===t.clusterId),a=((e,t)=>{if(!t)return e;const r=new Map(t.namespaces.map(e=>[e.name,e]));return{...e,namespaces:e.namespaces.map(e=>{const t=r.get(e.name);if(!t)return e;const a=new Map(t.workloads.map(e=>[`${e.kind}/${e.name}`,e]));return{...e,selected:t.selected,workloads:e.workloads.map(e=>{const t=a.get(`${e.kind}/${e.name}`);return t?{...e,selected:t.selected}:e})}})}})(t,r);if(i?.[t.clusterId]){const e=i[t.clusterId],r=O(a);return e.forEach(e=>{const t=r.namespaces.find(t=>t.name===e.namespace);if(t)if(e.name&&e.kind){const r=t.workloads.find(t=>t.name===e.name&&t.kind===e.kind);r&&(r.selected=e.selected)}else t.selected=e.selected,e.selected&&t.workloads.forEach(e=>{Mt.has(e.kind)&&!l||(e.selected=!0)})}),r}return a})})},[h,a,i]);const{formDiff:A,isFormDirty:R}=t(()=>{const e=((e,t,r,a)=>{const n={};return e.forEach(e=>{e.namespaces.forEach(o=>{const s=t.find(t=>t.clusterId===e.clusterId)?.namespaces.find(e=>e.name===o.name);if(!a){const t=Yt(s,o,r);return void(t.length>0&&(n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push(...t)))}const i=o.selected||!1;if(i!==s?.selected)n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push({namespace:o.name,selected:i,currentStreamName:r}),i?n[e.clusterId]=n[e.clusterId].filter(e=>e.namespace!==o.name||e.namespace===o.name&&(!e.name||!e.kind)):o.workloads.forEach(t=>{t.selected&&n[e.clusterId].push({namespace:o.name,name:t.name,kind:t.kind,selected:!0,currentStreamName:r})});else{const t=Yt(s,o,r);t.length>0&&(n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push(...t))}})}),n})(g,h?.clusters||[],m,u);return{formDiff:e,isFormDirty:Object.keys(e).length>0}},[g,h,m,u]),I=n(e=>!l&&Mt.has(e),[l]),v=n(({clusterId:e,workloadId:t,selected:r,auto:a})=>{_(n=>{const o=O(n),s=o.findIndex(t=>t.clusterId===e);if(-1===s)return o;const i=o[s].namespaces.findIndex(e=>e.name===t.namespace);if(-1===i)return o;if(t.kind&&t.name){const e=o[s].namespaces[i].workloads.findIndex(e=>e.name===t.name&&e.kind===t.kind);if(-1===e)return o;const a="boolean"==typeof r?r:!o[s].namespaces[i].workloads[e].selected;o[s].namespaces[i].workloads[e].selected=a,u&&(a?o[s].namespaces[i].workloads.filter(e=>!I(e.kind)).every(e=>e.selected)&&(o[s].namespaces[i].selected=!0):o[s].namespaces[i].selected=!1)}else if(u){const e="boolean"==typeof a?a:!o[s].namespaces[i].selected;o[s].namespaces[i].selected=e,e?o[s].namespaces[i].workloads.forEach(e=>{I(e.kind)||(e.selected=!0)}):"boolean"!=typeof r||r||o[s].namespaces[i].workloads.forEach(e=>{e.selected=!1})}else{const e="boolean"==typeof r?r:"boolean"!=typeof a||a;o[s].namespaces[i].workloads.forEach(t=>{e&&I(t.kind)||(t.selected=e)})}return o})},[I,u]),C=n(({clusterId:e,namespaceName:t,boolean:r,searchText:a="",searchBy:n="",filters:o})=>{_(s=>{const i=O(s),c=n===f.Namespace?a:"",l=n===f.Source?a:"",d=!!c||!!l||!!o?.showOnlySelected;return i.forEach((a,n)=>{e&&a.clusterId!==e||a.namespaces.forEach(({name:e,workloads:a},s)=>{if(!t||e===t)if(d)if(t){if(a.forEach((e,t)=>{r&&I(e.kind)||Vt(e,l,o||{showOnlySelected:!1})&&(i[n].namespaces[s].workloads[t].selected=r)}),u){const e=i[n].namespaces[s].workloads.filter(e=>!I(e.kind)).every(e=>e.selected);i[n].namespaces[s].selected=e}}else{if(!Kt(i[n].namespaces[s],c,o||{showOnlySelected:!1}))return;u&&(i[n].namespaces[s].selected=r),a.forEach((e,t)=>{r&&I(e.kind)||(i[n].namespaces[s].workloads[t].selected=r)})}else u&&(i[n].namespaces[s].selected=r),a.forEach((e,t)=>{r&&I(e.kind)||(i[n].namespaces[s].workloads[t].selected=r)})})}),i})},[I,u]);return e(Wt.Provider,{value:{snapshots:h,setSnapshots:T,isFetching:p,setIsFetching:E,formData:g,handleSourceChange:v,handleSelectAll:C,formDiff:A,isFormDirty:R},children:r})},$t=()=>r(Wt);export{it as A,ut as D,Mt as E,_e as O,_t as R,Rt as S,we as a,St as b,Te as c,Lt as d,Ut as e,jt as f,Ke as g,ct as h,xe as i,Me as j,Ue as k,mt as l,ht as m,et as n,At as o,Ve as p,kt as q,be as r,xt as s,$t as t,he as u,Vt as v,Kt as w,Ht as x};
|