@wildo-ai/presets-components 1.1.3 → 1.1.5
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/dist/esm/components/actions/action-bar.d.ts.map +1 -1
- package/dist/esm/components/actions/action-bar.js +61 -7
- package/dist/esm/components/actions/action-bar.js.map +1 -1
- package/dist/esm/components/actions/action-bar.labels.d.ts.map +1 -1
- package/dist/esm/components/actions/action-button.d.ts.map +1 -1
- package/dist/esm/components/actions/action-button.js +3 -3
- package/dist/esm/components/actions/action-button.js.map +1 -1
- package/dist/esm/components/actions/action-button.labels.d.ts.map +1 -1
- package/dist/esm/components/actions/button-group.d.ts.map +1 -1
- package/dist/esm/components/actions/button.d.ts.map +1 -1
- package/dist/esm/components/actions/button.js +62 -3
- package/dist/esm/components/actions/button.js.map +1 -1
- package/dist/esm/components/actions/button.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/code-block.js +1 -1
- package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/code-block.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts +4 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.js +165 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.labels.d.ts +3 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.labels.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.labels.js +63 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.labels.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/image.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/shiki-highlighter-runtime.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/shiki-highlighter.lazy.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/web-preview.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/conversation.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/message.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/prompt-input.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/sources.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/suggestion.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/decision/approval-argument-fields.d.ts +68 -0
- package/dist/esm/components/ai-elements/decision/approval-argument-fields.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/decision/approval-argument-fields.js +208 -0
- package/dist/esm/components/ai-elements/decision/approval-argument-fields.js.map +1 -0
- package/dist/esm/components/ai-elements/decision/approval.d.ts +36 -4
- package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/decision/approval.js +77 -7
- package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
- package/dist/esm/components/ai-elements/decision/decision-request.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/decision/decision-request.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/confirmation.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/queue.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/task.js +1 -1
- package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
- package/dist/esm/components/ai-elements/execution/task.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/tool.js +8 -1
- package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
- package/dist/esm/components/ai-elements/execution/tool.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/canvas.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/connection.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/controls.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/edge.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/graph-runtime.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/graph.lazy.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/graph.lazy.js +15 -15
- package/dist/esm/components/ai-elements/graph/graph.lazy.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/node.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/panel.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/toolbar.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/agent.d.ts +0 -1
- package/dist/esm/components/ai-elements/meta/agent.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/agent.js +23 -18
- package/dist/esm/components/ai-elements/meta/agent.js.map +1 -1
- package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/context.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/context.lazy.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/context.lazy.js +13 -11
- package/dist/esm/components/ai-elements/meta/context.lazy.js.map +1 -1
- package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/model-selector.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/open-in-chat.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/shared/loader.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/shared/shimmer.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/stream/execution-stream.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +6 -0
- package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/chain-of-thought.js +13 -1
- package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
- package/dist/esm/components/ai-elements/trace/chain-of-thought.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/checkpoint.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/inline-citation.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/plan.labels.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/reasoning.labels.d.ts.map +1 -1
- package/dist/esm/components/app/app-layout-consent-gate.d.ts +23 -0
- package/dist/esm/components/app/app-layout-consent-gate.d.ts.map +1 -0
- package/dist/esm/components/app/app-layout-consent-gate.js +133 -0
- package/dist/esm/components/app/app-layout-consent-gate.js.map +1 -0
- package/dist/esm/components/app/app-layout-document-acceptance-gate.d.ts +19 -0
- package/dist/esm/components/app/app-layout-document-acceptance-gate.d.ts.map +1 -0
- package/dist/esm/components/app/app-layout-document-acceptance-gate.js +56 -0
- package/dist/esm/components/app/app-layout-document-acceptance-gate.js.map +1 -0
- package/dist/esm/components/app/app-layout-main-container.d.ts.map +1 -1
- package/dist/esm/components/app/app-layout-main-container.labels.d.ts.map +1 -1
- package/dist/esm/components/app/app-layout-main-container.labels.js +21 -0
- package/dist/esm/components/app/app-layout-main-container.labels.js.map +1 -1
- package/dist/esm/components/app/public-layout-main-container.d.ts +1 -1
- package/dist/esm/components/app/public-layout-main-container.d.ts.map +1 -1
- package/dist/esm/components/app/public-layout-main-container.js +9 -8
- package/dist/esm/components/app/public-layout-main-container.js.map +1 -1
- package/dist/esm/components/app/public-layout-main-container.labels.d.ts.map +1 -1
- package/dist/esm/components/app/public-layout-terms.d.ts +46 -0
- package/dist/esm/components/app/public-layout-terms.d.ts.map +1 -0
- package/dist/esm/components/app/public-layout-terms.js +137 -0
- package/dist/esm/components/app/public-layout-terms.js.map +1 -0
- package/dist/esm/components/billing/billing-format.utils.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.d.ts +1 -1
- package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.js +3 -1
- package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.labels.js +1 -0
- package/dist/esm/components/billing/billing-invoice-history.labels.js.map +1 -1
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts +5 -0
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-plan-change-preview.js +22 -0
- package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
- package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts +3 -0
- package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-plan-change-preview.labels.js +19 -0
- package/dist/esm/components/billing/billing-plan-change-preview.labels.js.map +1 -0
- package/dist/esm/components/billing/billing-portal-link.d.ts +1 -1
- package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.js +3 -1
- package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.labels.js +1 -0
- package/dist/esm/components/billing/billing-portal-link.labels.js.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts +1 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.js +4 -2
- package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.labels.js +1 -0
- package/dist/esm/components/billing/billing-pricing-table.labels.js.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.d.ts +1 -1
- package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.js +3 -1
- package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.labels.js +1 -0
- package/dist/esm/components/billing/billing-subscription-status.labels.js.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.js +4 -4
- package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.labels.js +2 -0
- package/dist/esm/components/billing/billing-usage-dashboard.labels.js.map +1 -1
- package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
- package/dist/esm/components/data-display/avatar.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/badge.d.ts.map +1 -1
- package/dist/esm/components/data-display/badge.js +16 -15
- package/dist/esm/components/data-display/badge.js.map +1 -1
- package/dist/esm/components/data-display/badge.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/description-list.d.ts +2 -1
- package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
- package/dist/esm/components/data-display/description-list.js +24 -8
- package/dist/esm/components/data-display/description-list.js.map +1 -1
- package/dist/esm/components/data-display/description-list.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/duration.d.ts +15 -0
- package/dist/esm/components/data-display/duration.d.ts.map +1 -0
- package/dist/esm/components/data-display/duration.js +50 -0
- package/dist/esm/components/data-display/duration.js.map +1 -0
- package/dist/esm/components/data-display/duration.labels.d.ts +15 -0
- package/dist/esm/components/data-display/duration.labels.d.ts.map +1 -0
- package/dist/esm/components/data-display/duration.labels.js +35 -0
- package/dist/esm/components/data-display/duration.labels.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-address.d.ts +21 -0
- package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-address.js +75 -0
- package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-address.labels.d.ts +3 -0
- package/dist/esm/components/data-display/formatters/display-field-address.labels.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-address.labels.js +13 -0
- package/dist/esm/components/data-display/formatters/display-field-address.labels.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js +6 -2
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-boolean.js +2 -2
- package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-boolean.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-code.js +2 -2
- package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-code.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-date.d.ts +3 -3
- package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-date.js +17 -4
- package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-date.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts +3 -3
- package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-datetime.js +17 -4
- package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-datetime.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-duration.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-enum.js +12 -8
- package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-enum.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-audio.js +2 -1
- package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-audio.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts +4 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.js +18 -5
- package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.labels.js +20 -0
- package/dist/esm/components/data-display/formatters/display-field-file-document.labels.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-image.js +3 -1
- package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-image.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-video.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file.js +2 -2
- package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file.labels.js +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file.labels.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-i18n.utils.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-money.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-number.js +2 -2
- package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-number.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-phone.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-date.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-money.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-number.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-time.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-string.js +82 -7
- package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-string.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-time.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/identifier.d.ts +19 -0
- package/dist/esm/components/data-display/identifier.d.ts.map +1 -0
- package/dist/esm/components/data-display/identifier.js +21 -0
- package/dist/esm/components/data-display/identifier.js.map +1 -0
- package/dist/esm/components/data-display/kbd.d.ts +17 -0
- package/dist/esm/components/data-display/kbd.d.ts.map +1 -0
- package/dist/esm/components/data-display/kbd.js +18 -0
- package/dist/esm/components/data-display/kbd.js.map +1 -0
- package/dist/esm/components/data-display/markdown-content.d.ts.map +1 -1
- package/dist/esm/components/data-display/markdown-stream-runtime.d.ts.map +1 -1
- package/dist/esm/components/data-display/markdown-stream.lazy.d.ts.map +1 -1
- package/dist/esm/components/data-display/markdown-stream.lazy.js +13 -2
- package/dist/esm/components/data-display/markdown-stream.lazy.js.map +1 -1
- package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
- package/dist/esm/components/data-display/notification-indicator.js +3 -11
- package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
- package/dist/esm/components/data-display/notification-indicator.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.d.ts +63 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.d.ts.map +1 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.js +75 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.js.map +1 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.d.ts +32 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.d.ts.map +1 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.js +36 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.js.map +1 -0
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.d.ts +46 -6
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.d.ts.map +1 -1
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.js +70 -46
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.js.map +1 -1
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts +12 -2
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts.map +1 -1
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.js +3 -2
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.js.map +1 -1
- package/dist/esm/components/data-display/timeline.d.ts +3 -0
- package/dist/esm/components/data-display/timeline.d.ts.map +1 -0
- package/dist/esm/components/data-display/timeline.js +92 -0
- package/dist/esm/components/data-display/timeline.js.map +1 -0
- package/dist/esm/components/feedback/celebration-overlay.d.ts +13 -4
- package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
- package/dist/esm/components/feedback/celebration-overlay.js +146 -22
- package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
- package/dist/esm/components/feedback/celebration-overlay.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
- package/dist/esm/components/feedback/danger-zone.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
- package/dist/esm/components/feedback/empty-state.js +11 -1
- package/dist/esm/components/feedback/empty-state.js.map +1 -1
- package/dist/esm/components/feedback/empty-state.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
- package/dist/esm/components/feedback/error-display.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-limit-indicator.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-lock-badge.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
- package/dist/esm/components/feedback/loading-overlay.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
- package/dist/esm/components/feedback/loading-spinner.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
- package/dist/esm/components/feedback/notification-center.js +6 -6
- package/dist/esm/components/feedback/notification-center.js.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.js +9 -7
- package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/progress.d.ts.map +1 -1
- package/dist/esm/components/feedback/progress.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
- package/dist/esm/components/feedback/skeleton.labels.d.ts.map +1 -1
- package/dist/esm/components/feedback/toast.d.ts.map +1 -1
- package/dist/esm/components/feedback/toast.labels.d.ts.map +1 -1
- package/dist/esm/components/form/autosave-indicator.d.ts.map +1 -1
- package/dist/esm/components/form/autosave-indicator.labels.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/field.js +11 -3
- package/dist/esm/components/form/chromes/field.js.map +1 -1
- package/dist/esm/components/form/chromes/field.labels.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/form-primitive.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/form-primitive.labels.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/form-primitive.labels.js +28 -0
- package/dist/esm/components/form/chromes/form-primitive.labels.js.map +1 -1
- package/dist/esm/components/form/combobox.d.ts.map +1 -1
- package/dist/esm/components/form/combobox.js +4 -3
- package/dist/esm/components/form/combobox.js.map +1 -1
- package/dist/esm/components/form/combobox.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/checkbox.js +2 -2
- package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
- package/dist/esm/components/form/controls/boolean/checkbox.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/switch.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/code-editor/cm6-editor-appearance.d.ts.map +1 -1
- package/dist/esm/components/form/controls/code-editor/cm6-editor.d.ts.map +1 -1
- package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.d.ts.map +1 -1
- package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.js +11 -2
- package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.js.map +1 -1
- package/dist/esm/components/form/controls/code-editor/form-field-code.d.ts.map +1 -1
- package/dist/esm/components/form/controls/code-editor/markdown-editor.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/calendar.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/date-range-picker.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datepicker.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-picker.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.js +11 -2
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-picker.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-range-picker.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-range-picker.labels.js +11 -2
- package/dist/esm/components/form/controls/date-time/time-range-picker.labels.js.map +1 -1
- package/dist/esm/components/form/controls/enum/radio.d.ts +1 -1
- package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/radio.js +13 -12
- package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
- package/dist/esm/components/form/controls/enum/radio.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/select-multiple.js +5 -3
- package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
- package/dist/esm/components/form/controls/enum/select-multiple.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/select.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/toggle-group.js +96 -5
- package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
- package/dist/esm/components/form/controls/enum/toggle-group.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/file-upload.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/image-crop.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.d.ts +44 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.js +137 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.js.map +1 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.d.ts +22 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.js +27 -0
- package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.js.map +1 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.d.ts +54 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.js +159 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.js.map +1 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.d.ts +22 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.js +27 -0
- package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.js.map +1 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.d.ts +41 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.js +129 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.js.map +1 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.d.ts +22 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.js +27 -0
- package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.js.map +1 -0
- package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/input-group.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/input.d.ts.map +1 -1
- package/dist/esm/components/form/controls/input.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
- package/dist/esm/components/form/controls/number/slider.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/number/slider.labels.js +9 -2
- package/dist/esm/components/form/controls/number/slider.labels.js.map +1 -1
- package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/color-input.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/color-picker-surface.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/color-picker-surface.js.map +1 -1
- package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/input-otp.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/password-input.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/password-input.labels.js +9 -2
- package/dist/esm/components/form/controls/string/password-input.labels.js.map +1 -1
- package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/textarea.labels.d.ts.map +1 -1
- package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
- package/dist/esm/components/layout/aspect-ratio.labels.d.ts.map +1 -1
- package/dist/esm/components/layout/carousel.d.ts.map +1 -1
- package/dist/esm/components/layout/carousel.labels.d.ts.map +1 -1
- package/dist/esm/components/layout/divider.d.ts.map +1 -1
- package/dist/esm/components/layout/divider.labels.d.ts.map +1 -1
- package/dist/esm/components/layout/resizable.d.ts.map +1 -1
- package/dist/esm/components/layout/resizable.labels.d.ts.map +1 -1
- package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
- package/dist/esm/components/layout/scroll-area.labels.d.ts.map +1 -1
- package/dist/esm/components/layout/separator.d.ts.map +1 -1
- package/dist/esm/components/layout/separator.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/activity-bar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/activity-bar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/command-menu.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/command-menu.js +2 -2
- package/dist/esm/components/navigation/app-level/command-menu.js.map +1 -1
- package/dist/esm/components/navigation/app-level/command-menu.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/control-panel.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/control-panel.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/menu-user-org.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/menu-user-org.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/menubar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/menubar.js +35 -13
- package/dist/esm/components/navigation/app-level/menubar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/menubar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/navigation-back.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/navigation-back.js +10 -2
- package/dist/esm/components/navigation/app-level/navigation-back.js.map +1 -1
- package/dist/esm/components/navigation/app-level/navigation-back.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/notification-center.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/notification-center.js.map +1 -1
- package/dist/esm/components/navigation/app-level/notification-center.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/notification-center.labels.js +15 -0
- package/dist/esm/components/navigation/app-level/notification-center.labels.js.map +1 -1
- package/dist/esm/components/navigation/app-level/quick-action-button.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/quick-action-button.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/quick-action-button.labels.js +4 -0
- package/dist/esm/components/navigation/app-level/quick-action-button.labels.js.map +1 -1
- package/dist/esm/components/navigation/app-level/quick-switcher.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/quick-switcher.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/sidebar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/sidebar.js +38 -22
- package/dist/esm/components/navigation/app-level/sidebar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/sidebar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/sidebar.labels.js +1 -0
- package/dist/esm/components/navigation/app-level/sidebar.labels.js.map +1 -1
- package/dist/esm/components/navigation/app-level/status-bar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/status-bar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/toolbar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/toolbar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/utility-panel.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/utility-panel.js +30 -5
- package/dist/esm/components/navigation/app-level/utility-panel.js.map +1 -1
- package/dist/esm/components/navigation/app-level/utility-panel.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/utility-panel.labels.js.map +1 -1
- package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
- package/dist/esm/components/navigation/breadcrumb.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/command.d.ts.map +1 -1
- package/dist/esm/components/navigation/command.js +2 -2
- package/dist/esm/components/navigation/command.js.map +1 -1
- package/dist/esm/components/navigation/command.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
- package/dist/esm/components/navigation/menu-bar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
- package/dist/esm/components/navigation/navbar.labels.d.ts.map +1 -1
- package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
- package/dist/esm/components/navigation/sidebar.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/alert-dialog.js +11 -1
- package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
- package/dist/esm/components/overlays/containers/alert-dialog.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/alert.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.js +11 -1
- package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/drawer.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/sheet.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/context-menu.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/dropdown-menu.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/hover-card.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/popover.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/tooltip.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/accordion.d.ts.map +1 -1
- package/dist/esm/components/sections/accordion.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/card.d.ts.map +1 -1
- package/dist/esm/components/sections/card.js +71 -6
- package/dist/esm/components/sections/card.js.map +1 -1
- package/dist/esm/components/sections/card.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
- package/dist/esm/components/sections/collapsible.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/content-section.d.ts.map +1 -1
- package/dist/esm/components/sections/content-section.js +36 -6
- package/dist/esm/components/sections/content-section.js.map +1 -1
- package/dist/esm/components/sections/disclosure-nesting.d.ts.map +1 -1
- package/dist/esm/components/sections/option-gesture.d.ts +15 -0
- package/dist/esm/components/sections/option-gesture.d.ts.map +1 -0
- package/dist/esm/components/sections/option-gesture.js +66 -0
- package/dist/esm/components/sections/option-gesture.js.map +1 -0
- package/dist/esm/components/sections/pagination.d.ts.map +1 -1
- package/dist/esm/components/sections/pagination.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
- package/dist/esm/components/sections/stacked-layout.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/stepper.d.ts.map +1 -1
- package/dist/esm/components/sections/stepper.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/table.d.ts.map +1 -1
- package/dist/esm/components/sections/table.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/tabs.d.ts.map +1 -1
- package/dist/esm/components/sections/tabs.js +64 -15
- package/dist/esm/components/sections/tabs.js.map +1 -1
- package/dist/esm/components/sections/tabs.labels.d.ts.map +1 -1
- package/dist/esm/components/typography/heading.d.ts.map +1 -1
- package/dist/esm/components/typography/heading.labels.d.ts.map +1 -1
- package/dist/esm/components/typography/label.d.ts.map +1 -1
- package/dist/esm/components/typography/label.labels.d.ts.map +1 -1
- package/dist/esm/components/typography/link.d.ts.map +1 -1
- package/dist/esm/components/typography/link.js +9 -3
- package/dist/esm/components/typography/link.js.map +1 -1
- package/dist/esm/components/typography/link.labels.d.ts.map +1 -1
- package/dist/esm/components/typography/text.d.ts +1 -1
- package/dist/esm/components/typography/text.d.ts.map +1 -1
- package/dist/esm/components/typography/text.js +3 -2
- package/dist/esm/components/typography/text.js.map +1 -1
- package/dist/esm/components/typography/text.labels.d.ts.map +1 -1
- package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
- package/dist/esm/config/billing-shell.presets.d.ts.map +1 -1
- package/dist/esm/config/index.d.ts.map +1 -1
- package/dist/esm/config/preset-design-system.d.ts.map +1 -1
- package/dist/esm/config/preset-design-system.js +37 -60
- package/dist/esm/config/preset-design-system.js.map +1 -1
- package/dist/esm/config/preset-error-pages.d.ts.map +1 -1
- package/dist/esm/config/preset-kits.d.ts.map +1 -1
- package/dist/esm/config/preset-navigation.d.ts.map +1 -1
- package/dist/esm/config/preset-navigation.js +0 -5
- package/dist/esm/config/preset-navigation.js.map +1 -1
- package/dist/esm/config/preset-resources.d.ts.map +1 -1
- package/dist/esm/config/preset-shell.d.ts.map +1 -1
- package/dist/esm/config/preset-utils.d.ts.map +1 -1
- package/dist/esm/config/presets.d.ts.map +1 -1
- package/dist/esm/config/resources/application.resource-presets.d.ts +2 -0
- package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/application.resource-presets.js +163 -7
- package/dist/esm/config/resources/application.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/billing.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/billing.resource-presets.js +1 -0
- package/dist/esm/config/resources/billing.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/guidance.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/guidance.resource-presets.js +21 -5
- package/dist/esm/config/resources/guidance.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/identity.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/identity.resource-presets.js +25 -3
- package/dist/esm/config/resources/identity.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/index.d.ts.map +1 -1
- package/dist/esm/config/resources/index.js.map +1 -1
- package/dist/esm/config/resources/organizations.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/organizations.resource-presets.js +90 -12
- package/dist/esm/config/resources/organizations.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/resource.config.utils.d.ts.map +1 -1
- package/dist/esm/config/resources/security.resource-presets.d.ts +8 -2
- package/dist/esm/config/resources/security.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/security.resource-presets.js +185 -29
- package/dist/esm/config/resources/security.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/webhooks.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/webhooks.resource-presets.js +27 -2
- package/dist/esm/config/resources/webhooks.resource-presets.js.map +1 -1
- package/dist/esm/index.d.ts +7 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +7 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lottie/lottie.content.definitions.d.ts.map +1 -1
- package/dist/esm/lottie/lottie.definitions.d.ts.map +1 -1
- package/dist/esm/mermaid-stub.d.ts.map +1 -1
- package/dist/esm/registration/register-common-enums.d.ts.map +1 -1
- package/dist/esm/registration/register-common-enums.js +48 -34
- package/dist/esm/registration/register-common-enums.js.map +1 -1
- package/dist/esm/registration/register-default-animations.d.ts.map +1 -1
- package/dist/esm/registration/register-default-icons.d.ts.map +1 -1
- package/dist/esm/registration/register-default-icons.js +3 -1
- package/dist/esm/registration/register-default-icons.js.map +1 -1
- package/dist/esm/registration/register-default-presets.d.ts.map +1 -1
- package/dist/esm/registration/register-default-presets.js +36 -4
- package/dist/esm/registration/register-default-presets.js.map +1 -1
- package/dist/esm/registration/register-provider-components.d.ts +31 -0
- package/dist/esm/registration/register-provider-components.d.ts.map +1 -0
- package/dist/esm/registration/register-provider-components.js +50 -0
- package/dist/esm/registration/register-provider-components.js.map +1 -0
- package/dist/esm/shiki-subset.d.ts +11 -3
- package/dist/esm/shiki-subset.d.ts.map +1 -1
- package/dist/esm/shiki-subset.js +10 -2
- package/dist/esm/shiki-subset.js.map +1 -1
- package/dist/esm/theme-exports.d.ts.map +1 -1
- package/dist/esm/themes/cozy.theme.d.ts.map +1 -1
- package/dist/esm/themes/cozy.theme.js +19 -5
- package/dist/esm/themes/cozy.theme.js.map +1 -1
- package/dist/esm/themes/dense.theme.d.ts.map +1 -1
- package/dist/esm/themes/dense.theme.js +56 -10
- package/dist/esm/themes/dense.theme.js.map +1 -1
- package/dist/esm/themes/editorial.theme.d.ts.map +1 -1
- package/dist/esm/themes/editorial.theme.js +19 -5
- package/dist/esm/themes/editorial.theme.js.map +1 -1
- package/dist/esm/themes/glass.theme.d.ts.map +1 -1
- package/dist/esm/themes/glass.theme.js +5 -1
- package/dist/esm/themes/glass.theme.js.map +1 -1
- package/dist/esm/themes/neo-brutalist.theme.d.ts.map +1 -1
- package/dist/esm/themes/neo-brutalist.theme.js +9 -2
- package/dist/esm/themes/neo-brutalist.theme.js.map +1 -1
- package/dist/esm/themes/terminal.theme.d.ts.map +1 -1
- package/dist/esm/themes/terminal.theme.js +19 -5
- package/dist/esm/themes/terminal.theme.js.map +1 -1
- package/dist/esm/themes/trading.theme.d.ts.map +1 -1
- package/dist/esm/themes/trading.theme.js +22 -6
- package/dist/esm/themes/trading.theme.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +29 -44
- package/dist/esm/.native.tsbuildinfo +0 -1
- package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts +0 -16
- package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +0 -1
- package/dist/esm/components/form/controls/form-field-checkbox-group.js +0 -143
- package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.resource-presets.js","sourceRoot":"","sources":["../../../../src/config/resources/security.resource-presets.tsx"],"names":[],"mappings":";AAiBA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,6BAA6B,EAC7B,iCAAiC,EACjC,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,YAAY,EACZ,aAAa,EACb,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,aAAa,EACb,sBAAsB,EACtB,yBAAyB,EACzB,sCAAsC,EACtC,iCAAiC,EACjC,WAAW,EACX,WAAW,EACX,YAAY,GACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,GAAG,EACH,WAAW,EACX,KAAK,EACL,MAAM,EAEN,WAAW,EACX,OAAO,EACP,QAAQ,EACR,KAAK,EACL,aAAa,EACb,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,MAAM,EACN,OAAO,EACP,MAAM,EACN,OAAO,GACR,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,IAAI,CAAC,EACrB,qBAAqB,IAAI,EAAE,EAC3B,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,qDAAqD,IAAI,iBAAiB,EAC1E,iEAAiE,IAAI,6BAA6B,EAClG,oCAAoC,EACpC,kEAAkE,IAAI,8BAA8B,EACpG,4BAA4B,EAC5B,iCAAiC,EACjC,oDAAoD,IAAI,gBAAgB,EACxE,oCAAoC,EACpC,mCAAmC,EACnC,6BAA6B,EAC7B,oBAAoB,EACpB,iCAAiC,EACjC,0CAA0C,EAC1C,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,gCAAgC,EAChC,mBAAmB,EACnB,WAAW,EACX,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEtE,iFAAiF;AAEjF,MAAM,wBAAwB,GAAG;IAC/B,OAAO,EAAE,CAAC,MAAyC,EAAE,EAAE,CACrD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAC7B,cAAc,EAAE,qBAAqB,CAAC,gBAAgB;QACtD,OAAO,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE;QAC7E,IAAI,EAAE,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE;KAClE,CAAC;IACJ,UAAU,EAAE,CAAC,MAAyC,EAAE,EAAE,CACxD,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC/B,OAAO,EAAE,EAAE,WAAW,EAAE,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;QACvE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;KAChC,CAAC;IACJ,UAAU,EAAE,CAAC,MAAyC,EAAE,EAAE,CACxD,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;QAC7B,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;QACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;KAC/C,CAAC;IACJ,WAAW,EAAE,CAAC,MAAyC,EAAE,EAAE,CACzD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;QAC9B,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;QACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;KAChC,CAAC;IACJ,mBAAmB,EAAE,CAAC,MAAyC,EAAE,EAAE,CACjE,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,SAAS,CAAC;QACzC,cAAc,EAAE,qBAAqB,CAAC,MAAM;QAC5C,OAAO,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE;QAC7E,IAAI,EAAE,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE;KAClE,CAAC;IACJ,oBAAoB,EAAE,CAAC,MAAyC,EAAE,EAAE,CAClE,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC;QAC1C,cAAc,EAAE,qBAAqB,CAAC,MAAM;QAC5C,OAAO,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE;QAC7E,IAAI,EAAE,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE;KAClE,CAAC;IACJ,cAAc,EAAE,CAAC,MAAyC,EAAE,EAAE,CAC5D,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC;QACnC,UAAU,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,UAAU,EAAE;KACvG,CAAC;IACJ,cAAc,EAAE,CAAC,MAAyC,EAAE,EAAE,CAC5D,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC;QACnC,UAAU,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,CAAC,cAAc,EAAE;KAC1E,CAAC;CACL,CAAC;AAEF,SAAS,wBAAwB;IAC/B,OAAO,CACL,MAAC,aAAa,eACZ,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aACnD,KAAC,YAAY,IAAC,IAAI,EAAC,MAAM,GAAG,EAC5B,KAAC,YAAY,IAAC,IAAI,EAAC,OAAO,GAAG,EAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACzB,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,aACpB,KAAC,YAAY,IAAC,IAAI,EAAC,OAAO,GAAG,EAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,IAC3B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,WAAW,aACvB,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACzB,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,CACL,MAAC,UAAU,eACT,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aACnD,KAAC,SAAS,IAAC,IAAI,EAAC,MAAM,GAAG,EACzB,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC3B,KAAC,SAAS,IAAC,IAAI,EAAC,WAAW,GAAG,IACtB,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,aACpB,KAAC,SAAS,IAAC,IAAI,EAAC,OAAO,GAAG,EAC1B,KAAC,SAAS,IAAC,IAAI,EAAC,aAAa,GAAG,IACxB,IACC,CACd,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,YAAY,IAAC,IAAI,EAAC,MAAM,GAAG,EAC5B,MAAC,WAAW,eACV,KAAC,YAAY,IAAC,IAAI,EAAC,OAAO,GAAG,EAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACrB,IACA,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,CACL,MAAC,aAAa,eACZ,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aACnD,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACzB,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,aACpB,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,gBAAgB,GAAG,IAC9B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,SAAS,aACrB,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACzB,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,MAAC,WAAW,eACV,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACrB,IACA,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB;IAChC,OAAO,CACL,KAAC,aAAa,IAAC,IAAI,EAAE,WAAW,CAAC,GAAG,YAClC,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,GACjB,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO,CACL,MAAC,aAAa,eACZ,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aACnD,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,IAC7B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,aACtB,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,EAC/B,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,IAC3B,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,SAAS,YACrB,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,GAC5B,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,WAAW,cACV,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,GAClB,IACA,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,OAAO,IAAC,IAAI,EAAC,aAAa,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,YACtD,MAAC,WAAW,IAAC,IAAI,EAAC,aAAa,aAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,uBAAuB,GAAG,EAC7C,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,IAC9B,GACN,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,SAAS,YACrB,MAAC,WAAW,IAAC,IAAI,EAAC,SAAS,aACzB,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,mBAAmB,GAAG,EACzC,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,sBAAsB,GAAG,EAC5C,KAAC,YAAY,IAAC,IAAI,EAAC,0BAA0B,GAAG,IACpC,GACN,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,cAAc,YAC1B,MAAC,WAAW,IAAC,IAAI,EAAC,cAAc,aAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,GAAG,EAC3C,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,EAC1C,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,IAC9B,GACN,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,SAAS,YACrB,MAAC,WAAW,IAAC,IAAI,EAAC,iBAAiB,aACjC,KAAC,YAAY,IAAC,IAAI,EAAC,2BAA2B,GAAG,EACjD,KAAC,YAAY,IAAC,IAAI,EAAC,2BAA2B,GAAG,EACjD,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,GAAG,EAC3C,KAAC,YAAY,IAAC,IAAI,EAAC,uBAAuB,GAAG,IACjC,GACN,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,OAAO,YACnB,MAAC,WAAW,IAAC,IAAI,EAAC,aAAa,aAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,sBAAsB,GAAG,EAC5C,KAAC,YAAY,IAAC,IAAI,EAAC,gBAAgB,GAAG,EACtC,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,GAAG,EAC3C,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,IACzB,GACN,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,WAAW,YACvB,MAAC,WAAW,IAAC,IAAI,EAAC,iBAAiB,aACjC,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,EAC/B,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,IAC9B,GACN,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,OAAO,aACnB,MAAC,WAAW,IAAC,IAAI,EAAC,4BAA4B,aAC5C,KAAC,YAAY,IAAC,IAAI,EAAC,kBAAkB,GAAG,EACxC,KAAC,YAAY,IAAC,IAAI,EAAC,kBAAkB,GAAG,EACxC,KAAC,YAAY,IAAC,IAAI,EAAC,0BAA0B,GAAG,IACpC,EACd,KAAC,YAAY,IAAC,IAAI,EAAC,2BAA2B,GAAG,IACzC,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO,CACL,KAAC,aAAa,IAAC,IAAI,EAAE,WAAW,CAAC,GAAG,YAClC,KAAC,WAAW,IAAC,IAAI,EAAC,aAAa,YAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,GACtB,GACA,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO,CACL,MAAC,aAAa,eACZ,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aACnD,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,EAC/B,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,IAClC,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,MAAM,YAClB,MAAC,WAAW,IAAC,IAAI,EAAC,MAAM,aACtB,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,uBAAuB,GAAG,EAC7C,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,kBAAkB,GAAG,EACxC,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,EAC/B,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,EAC1C,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAWlC,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,IACzB,GACN,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,MAAM,YAClB,MAAC,WAAW,IAAC,IAAI,EAAC,MAAM,aACtB,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,QAAQ,GAAG,EAC9B,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,EAC1C,KAAC,YAAY,IAAC,IAAI,EAAC,kBAAkB,GAAG,EACxC,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,sBAAsB,GAAG,EAC5C,KAAC,YAAY,IAAC,IAAI,EAAC,mBAAmB,GAAG,EACzC,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,mBAAmB,GAAG,EACzC,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,IACzB,GACN,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,cAAc,aAC1B,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,EACpC,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,YAAY,IAAC,IAAI,EAAC,gBAAgB,GAAG,EACtC,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,YAAY,IAAC,IAAI,EAAC,cAAc,GAAG,IAC5B,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,MAAC,WAAW,eACV,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,IACnB,IACA,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B;IACtC,OAAO,CACL,MAAC,aAAa,eACZ,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aAInD,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,GAAG,EAC3C,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,IAC3B,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,SAAS,YACrB,KAAC,YAAY,IAAC,IAAI,EAAC,kBAAkB,GAAG,GAChC,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,WAAW,aACvB,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACzB,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B;IACtC,OAAO,CACL,KAAC,aAAa,IAAC,IAAI,EAAE,WAAW,CAAC,GAAG,YAClC,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,GACzB,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO,CACL,MAAC,aAAa,eACZ,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,aACnD,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,EAChC,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,IAC/B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,WAAW,aACvB,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,IACzB,IACI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,KAAC,WAAW,cACV,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,GAAG,GACpB,IACA,CACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO;QACL,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,wBAAwB,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAClI,IAAI,EAAE,GAAG;YACT,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC;iBAC9C;gBACD,iFAAiF;gBACjF,iBAAiB,EAAE,EAAE,OAAO,EAAE,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,YAAY,EAAE;gBACpI,OAAO,EAAE,wBAAwB;gBACjC,OAAO,EAAE,wBAAwB;gBACjC,IAAI,EAAE,qBAAqB;aAC5B;YACD,MAAM,EAAE;gBACN,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;oBAChC,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;oBACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;oBAC/B,MAAM,EAAE;wBACN,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;wBAC9D,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,SAAS,EAAE;wBAClE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;qBAChE;iBACF,CAAC;aACH;YACD,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI;YACnE,uEAAuE;YACvE,2EAA2E;YAC3E,0EAA0E;YAC1E,6DAA6D;YAC7D,UAAU,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC,MAAM,EAAE;YACxC,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;gBAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,8EAA8E;gBAC9E,6EAA6E;gBAC7E,yEAAyE;gBACzE,gEAAgE;gBAChE,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,qBAAqB,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAC1E,CAAC,qBAAqB,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC/E,CAAC,qBAAqB,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAC9E,CAAC,qBAAqB,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3E,CAAC,qBAAqB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC;gBACrF,CAAC,qBAAqB,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;aACnF;SACF,CAAC,CAAC;QAEH;;;;;;;;;;;;;;;;;;;WAmBG;QACH,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAAE,kBAAkB,CAC9C,6BAA6B,EAC7B,oCAAoC,EACpC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YACpB,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE;gBACN,eAAe,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC;oBAClD,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;oBACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;oBAC/B,MAAM,EAAE;wBACN,sFAAsF;wBACtF,+EAA+E;wBAC/E,CAAC,iCAAiC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,SAAS,EAAE;wBAC1F,CAAC,iCAAiC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;wBAClF,uFAAuF;wBACvF,qFAAqF;wBACrF,CAAC,iCAAiC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;qBACrF;iBACF,CAAC;aACH;YACD,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,GAAG,aAAa,CAAC,WAAW,MAAM,aAAa,CAAC,UAAU,EAAE;YAC7G,UAAU,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC,MAAM,EAAE;YACxC,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;gBAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;aAC9B;SACF,CAAC,CACH;QAED,CAAC,CAAC,CAAC,yBAAyB,CAAC,EAAE,kBAAkB,CAC/C,8BAA8B,EAC9B,4BAA4B,EAC5B,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YACpB,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE;gBACN,2FAA2F;gBAC3F,yFAAyF;gBACzF,2FAA2F;gBAC3F,oFAAoF;gBACpF,eAAe,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC;oBAClD,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;oBACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;oBAC/B,MAAM,EAAE;wBACN,sFAAsF;wBACtF,+EAA+E;wBAC/E,CAAC,iCAAiC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,SAAS,EAAE;wBAC1F,CAAC,iCAAiC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;wBAClF,wFAAwF;wBACxF,uFAAuF;wBACvF,uEAAuE;wBACvE,CAAC,iCAAiC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;qBACrF;iBACF,CAAC;aACH;YACD,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,GAAG,aAAa,CAAC,WAAW,MAAM,aAAa,CAAC,UAAU,EAAE;YAC7G,UAAU,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC,MAAM,EAAE;YACxC,8FAA8F;YAC9F,oFAAoF;YACpF,0EAA0E;YAC1E,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;gBAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;aAC9B;SACF,CAAC,CACH;QAED,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,EAAE,yBAAyB,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChI,IAAI,EAAE,WAAW;YACjB,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,GAAG,aAAa,CAAC,SAAS,IAAI,aAAa,MAAM,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE;YAClJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC;iBAC5C;gBACD,OAAO,EAAE,uBAAuB;gBAChC,OAAO,EAAE,uBAAuB;aACjC;YACD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;gBAC3B,yEAAyE;gBACzE,sEAAsE;gBACtE,uEAAuE;gBACvE,kDAAkD;gBAClD,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;wBACpB,uBAAuB,EAAE;4BACvB,gBAAgB,EAAE,UAAU;4BAC5B,kBAAkB,EAAE,WAAW;yBAChC;qBACF,CAAC,CAAC;gBACH,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;gBAC1B,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;aACrF;SACF,CAAC,CAAC;QAEH,GAAG,6BAA6B,CAC9B;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,+BAA+B,EAAE;gBACxF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,8BAA8B,EAAE;aACtF;SACF,EACD,oCAAoC,CAAC,CAAC,CAAC,+BAA+B,CAAC,EACvE,0BAA0B,EAC1B,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,KAAK;YACX,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,CAAC;iBAC5E;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,cAAc,CAAC,YAAY;iBAClC;gBACD,IAAI,EAAE,GAAG,EAAE;oBACT,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,sBAAsB,EAAE,CAAC;oBAC/D,OAAO,CACL,MAAC,UAAU,eAET,KAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,MAAM,YACpF,KAAC,SAAS,IAAC,IAAI,EAAC,SAAS,GAAG,GACpB,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,aAAa,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,YACtD,KAAC,SAAS,IAAC,IAAI,EAAC,YAAY,GAAG,GACvB,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,gBAAgB,aAC5B,KAAC,SAAS,IAAC,IAAI,EAAC,YAAY,GAAG,EAC/B,KAAC,SAAS,IAAC,IAAI,EAAC,gBAAgB,GAAG,EACnC,KAAC,SAAS,IAAC,IAAI,EAAC,gBAAgB,GAAG,IAC3B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,aACpB,KAAC,SAAS,IAAC,IAAI,EAAC,aAAa,GAAG,EAChC,MAAC,WAAW,IAAC,IAAI,EAAC,aAAa,aAC7B,KAAC,SAAS,IAAC,IAAI,EAAC,YAAY,GAAG,EAC/B,KAAC,SAAS,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACpC,KAAC,SAAS,IAAC,IAAI,EAAC,oBAAoB,GAAG,IAC3B,IACN,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,aAC/E,MAAC,WAAW,IAAC,IAAI,EAAC,UAAU,aAC1B,KAAC,SAAS,IAAC,IAAI,EAAC,WAAW,GAAG,EAC9B,KAAC,SAAS,IAAC,IAAI,EAAC,oBAAoB,GAAG,EACvC,KAAC,SAAS,IAAC,IAAI,EAAC,eAAe,GAAG,EAClC,KAAC,SAAS,IAAC,IAAI,EAAC,qBAAqB,GAAG,EACxC,KAAC,SAAS,IAAC,IAAI,EAAC,gBAAgB,GAAG,IACvB,EACd,KAAC,SAAS,IAAC,IAAI,EAAC,eAAe,GAAG,EAClC,KAAC,SAAS,IAAC,IAAI,EAAC,qBAAqB,GAAG,EACxC,KAAC,SAAS,IAAC,IAAI,EAAC,sBAAsB,GAAG,IACjC,IACC,CACd,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,GAAG,EAAE;oBACZ,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,yBAAyB,EAAE,CAAC;oBACxD,OAAO,CACL,MAAC,aAAa,eACZ,KAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,YACjD,KAAC,YAAY,IAAC,IAAI,EAAC,SAAS,GAAG,GACvB,EACV,KAAC,OAAO,IAAC,IAAI,EAAC,aAAa,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,YACtD,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,GAC1B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,gBAAgB,aAC5B,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,gBAAgB,GAAG,EACtC,KAAC,YAAY,IAAC,IAAI,EAAC,gBAAgB,GAAG,IAC9B,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,aACpB,KAAC,YAAY,IAAC,IAAI,EAAC,aAAa,GAAG,EACnC,MAAC,WAAW,IAAC,IAAI,EAAC,aAAa,aAC7B,KAAC,YAAY,IAAC,IAAI,EAAC,YAAY,GAAG,EAClC,KAAC,YAAY,IAAC,IAAI,EAAC,iBAAiB,GAAG,EACvC,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,IAC9B,IACN,EACV,MAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,WAAW,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,aAC/E,MAAC,WAAW,IAAC,IAAI,EAAC,UAAU,aAC1B,KAAC,YAAY,IAAC,IAAI,EAAC,WAAW,GAAG,EACjC,KAAC,YAAY,IAAC,IAAI,EAAC,oBAAoB,GAAG,EAC1C,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,GAAG,EAC3C,KAAC,YAAY,IAAC,IAAI,EAAC,gBAAgB,GAAG,IAC1B,EACd,KAAC,YAAY,IAAC,IAAI,EAAC,eAAe,GAAG,EACrC,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,GAAG,EAC3C,KAAC,YAAY,IAAC,IAAI,EAAC,sBAAsB,GAAG,IACpC,IACI,CACjB,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,yBAAyB;aACnC;YACD,MAAM,EAAE;gBACN,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC,MAAM,CAAC;gBACjD,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC,MAAM,CAAC;gBACvD,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC,MAAM,CAAC;gBACvD,WAAW,EAAE,wBAAwB,CAAC,WAAW,CAAC,MAAM,CAAC;gBACzD,mBAAmB,EAAE,wBAAwB,CAAC,mBAAmB,CAAC,MAAM,CAAC;gBACzE,oBAAoB,EAAE,wBAAwB,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBAC3E,cAAc,EAAE,wBAAwB,CAAC,cAAc,CAAC,MAAM,CAAC;gBAC/D,cAAc,EAAE,wBAAwB,CAAC,cAAc,CAAC,MAAM,CAAC;aAChE;YACD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;aACzB;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aAC/B;SACF,CAAC,CACH;QAED,GAAG,6BAA6B,CAC9B;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,8BAA8B,EAAE;gBACvF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,6BAA6B,EAAE;aACrF;SACF,EACD,mCAAmC,CAAC,CAAC,CAAC,8BAA8B,CAAC,EACrE,yBAAyB,EACzB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC;iBAC9C;gBACD,OAAO,EAAE,sBAAsB;gBAC/B,OAAO,EAAE,sBAAsB;aAChC;YACD,MAAM,EAAE;gBACN,8IAA8I;gBAC9I,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;oBACjC,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;oBACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;oBAC/B,MAAM,EAAE;wBACN,CAAC,qBAAqB,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;wBAC9E,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,WAAW,EAAE;wBAC9E,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE;qBAC3E;iBACF,CAAC;aACH;YACD,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,aAAa;YAC5E,KAAK,EAAE;gBACL,qEAAqE;gBACrE,oEAAoE;gBACpE,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;wBACpB,uBAAuB,EAAE;4BACvB,gBAAgB,EAAE,QAAQ;4BAC1B,kBAAkB,EAAE,WAAW;yBAChC;qBACF,CAAC,CAAC;gBACH,yEAAyE;gBACzE,yEAAyE;gBACzE,mEAAmE;gBACnE,CAAC,0BAA0B,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC;gBACvH,2EAA2E;gBAC3E,0EAA0E;gBAC1E,wEAAwE;gBACxE,CAAC,0BAA0B,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,CAAC,UAAU,EAAE,CAAC,CAAC;gBACzI,CAAC,0BAA0B,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,4BAA4B,CAAC,UAAU,EAAE,CAAC,CAAC;aACvI;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aAC/B;SACF,CAAC,CACH;QAED,GAAG,6BAA6B,CAC9B;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,uBAAuB,EAAE;gBAChF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,sBAAsB,EAAE;aAC9E;SACF,EACD,6BAA6B,CAAC,CAAC,CAAC,uBAAuB,CAAC,EACxD,mBAAmB,EACnB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,qBAAqB,CAAC,IAAI;YAChC,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC;iBAC/F;gBACD,OAAO,EAAE,wBAAwB;gBACjC,OAAO,EAAE,wBAAwB;aAClC;YACD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,yFAAyF;gBACzF,wFAAwF;gBACxF,uEAAuE;gBACvE,CAAC,oBAAoB,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5E,CAAC,oBAAoB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;gBACnF,CAAC,oBAAoB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;aAC/E;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aAC/B;SACF,CAAC,CACH;QAED,GAAG,6BAA6B,CAC9B;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,4BAA4B,EAAE;gBACrF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,2BAA2B,EAAE;aACnF;SACF,EACD,iCAAiC,CAAC,CAAC,CAAC,4BAA4B,CAAC,EACjE,uBAAuB,EACvB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC;iBACvD;gBACD,OAAO,EAAE,4BAA4B;gBACrC,OAAO,EAAE,4BAA4B;aACtC;YACD,MAAM,EAAE;gBACN,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;oBACrC,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;oBACtE,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;oBAC/B,MAAM,EAAE;wBACN,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE;wBACxD,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,SAAS,EAAE;qBAC9D;iBACF,CAAC;aACH;YACD,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,WAAW;YAC1E,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,wBAAwB,CAAC,eAAe,EAAE,WAAW,CAAC;wBACrD,YAAY,EAAE,OAAO;wBACrB,UAAU,EAAE,iCAAiC;qBAC9C,CAAC,CAAC;gBACH,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,WAAW,CAAC;wBACxD,YAAY,EAAE,MAAM;wBACpB,UAAU,EAAE,sCAAsC;qBACnD,CAAC,CAAC;aACJ;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aAC/B;SACF,CAAC,CACH;QAED,GAAG,6BAA6B,CAC9B;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,qCAAqC,EAAE;gBAC9F,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,oCAAoC,EAAE;aAC5F;SACF,EACD,0CAA0C,CAAC,CAAC,CAAC,qCAAqC,CAAC,EACnF,gCAAgC,EAChC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,OAAO;YACb,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC;iBAC/C;gBACD,OAAO,EAAE,+BAA+B;gBACxC,OAAO,EAAE,+BAA+B;aACzC;YACD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;aACzB;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;aAC/B;SACF,CAAC,CACH;QAED,GAAG,6BAA6B,CAC9B;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,wBAAwB,EAAE;aAClF;SACF,EACD,8BAA8B,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAC1D,mBAAmB,EACnB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,QAAQ;YACd,wBAAwB,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,WAAW;YAC1E,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;iBACpC;gBACD,OAAO,EAAE,wBAAwB;gBACjC,OAAO,EAAE,wBAAwB;aAClC;YACD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,qBAAqB,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAClF,CAAC,qBAAqB,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC/E,CAAC,qBAAqB,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;aACjF;SACF,CAAC,CACH;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAAiC;IACzE,OAAO;QACL,GAAG,iCAAiC,CAClC;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,+BAA+B,EAAE;gBACxF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,8BAA8B,EAAE;aACtF;SACF,EACD,oCAAoC,CAAC,CAAC,CAAC,+BAA+B,CAAC,EACvE,IAAI,EACJ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;aACzB;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACjB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;iBACrC;aACF;SACF,CAAC,CACH;QAED,GAAG,iCAAiC,CAClC;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,8BAA8B,EAAE;gBACvF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,6BAA6B,EAAE;aACrF;SACF,EACD,mCAAmC,CAAC,CAAC,CAAC,8BAA8B,CAAC,EACrE,IAAI,EACJ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;wBACpB,uBAAuB,EAAE;4BACvB,gBAAgB,EAAE,QAAQ;4BAC1B,kBAAkB,EAAE,WAAW;yBAChC;qBACF,CAAC,CAAC;gBACH,yEAAyE;gBACzE,yEAAyE;gBACzE,mEAAmE;gBACnE,CAAC,0BAA0B,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC;gBACvH,2EAA2E;gBAC3E,0EAA0E;gBAC1E,wEAAwE;gBACxE,CAAC,0BAA0B,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,CAAC,UAAU,EAAE,CAAC,CAAC;gBACzI,CAAC,0BAA0B,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,4BAA4B,CAAC,UAAU,EAAE,CAAC,CAAC;aACvI;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACjB,KAAK,EAAE;wBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;wBAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC;gCACvB,uBAAuB,EAAE;oCACvB,gBAAgB,EAAE,QAAQ;oCAC1B,kBAAkB,EAAE,WAAW;iCAChC;6BACF,CAAC,CAAC;qBACJ;iBACF;aACF;SACF,CAAC,CACH;QAED,GAAG,iCAAiC,CAClC;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,uBAAuB,EAAE;gBAChF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,sBAAsB,EAAE;aAC9E;SACF,EACD,6BAA6B,CAAC,CAAC,CAAC,uBAAuB,CAAC,EACxD,IAAI,EACJ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,oBAAoB,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5E,CAAC,oBAAoB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;gBACnF,CAAC,oBAAoB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;aAC/E;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACjB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;iBACrC;aACF;SACF,CAAC,CACH;QAED,GAAG,iCAAiC,CAClC;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,4BAA4B,EAAE;gBACrF,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,2BAA2B,EAAE;aACnF;SACF,EACD,iCAAiC,CAAC,CAAC,CAAC,4BAA4B,CAAC,EACjE,IAAI,EACJ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,wBAAwB,CAAC,eAAe,EAAE,WAAW,CAAC;wBACrD,YAAY,EAAE,OAAO;wBACrB,UAAU,EAAE,iCAAiC;qBAC9C,CAAC,CAAC;gBACH,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,WAAW,CAAC;wBACxD,YAAY,EAAE,MAAM;wBACpB,UAAU,EAAE,sCAAsC;qBACnD,CAAC,CAAC;aACJ;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACjB,KAAK,EAAE;wBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;wBAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;qBAC5B;iBACF;aACF;SACF,CAAC,CACH;QAED,GAAG,iCAAiC,CAClC;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,qCAAqC,EAAE;gBAC9F,EAAE,kBAAkB,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,oCAAoC,EAAE;aAC5F;SACF,EACD,0CAA0C,CAAC,CAAC,CAAC,qCAAqC,CAAC,EACnF,IAAI,EACJ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;aACzB;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACjB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;iBACrC;aACF;SACF,CAAC,CACH;QAED,GAAG,iCAAiC,CAClC;YACE,QAAQ,EAAE;gBACR,EAAE,kBAAkB,EAAE,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,wBAAwB,EAAE;aAClF;SACF,EACD,8BAA8B,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAC1D,IAAI,EACJ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,KAAK,EAAE;gBACL,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBACxB,CAAC,qBAAqB,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAClF,CAAC,qBAAqB,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC/E,CAAC,qBAAqB,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;aACjF;YACD,gBAAgB,EAAE;gBAChB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACjB,KAAK,EAAE;wBACL,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;wBAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;qBAC5B;iBACF;aACF;SACF,CAAC,CACH;QAED,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,sBAAsB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY,CAAE,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YACpH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE;gBACL,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBACxD,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBACxD,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBAC1D,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBAC1D,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBAC1D,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBAC7E,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBACjF,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBACjF,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBACjF,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;gBACpF,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;aACnF;SACF,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,wBAAwB,EAAE,CAAC;AAC9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,yBAAyB,CAAC,mBAAmB,CAAC,CAAC;AAEnF,MAAM,CAAC,MAAM,gCAAgC,GAAG,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAE,CAAC;AACrF,MAAM,CAAC,MAAM,iCAAiC,GAAG,oBAAoB,CAAC,CAAC,CAAC,YAAY,CAAE,CAAC;AACvF,MAAM,CAAC,MAAM,+BAA+B,GAAG,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAE,CAAC","sourcesContent":["/**\n * Security & Compliance — Resource frontend presets\n *\n * Domain: ORG_API_KEYS, AUDIT_LOGS, SIEM (polymorphic),\n * SSO_CONFIG (poly), SSO_CONNECTIONS (poly), SCIM_PROVISIONING (poly), SCIM_TOKENS (poly)\n *\n * SIEM layout JSX lives in this file next to `layout.refs` + `fields` so section chrome\n * and primitive UI params stay co-located with the preset. Edit/display templates are\n * inlined as arrow functions so `useFormTemplateContext` / `useDisplayTemplateContext`\n * are immediately available for future conditional rendering. SIEM `layout.defaultChromeMode.edit`\n * is `SETTINGS_ROW`; only sections that differ (e.g. status toggle) set `chromeMode` explicitly.\n * Other resources here use field-level UI only until they need custom sections; enum badges use\n * `showDescription: true` like billing.\n */\n\nimport React from 'react';\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n resourceUIBehavior,\n resourceUIBehaviorFrom,\n polymorphicResourceUIBehavior,\n polymorphicResourceUIBehaviorFrom,\n StandardIconReference,\n ResourceOperationActionScope,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n DisplayField,\n DisplayLayout,\n FormField,\n FormLayout,\n ObjectScope,\n Section,\n SummaryLayout,\n useFormTemplateContext,\n useDisplayTemplateContext,\n ResourceLayoutPreset_Create_SamlWizard,\n ResourceLayoutPreset_Read_SsoSaml,\n SummaryFlow,\n SummaryMeta,\n SummaryTitle,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n BadgeSemanticVariant,\n BooleanDisplayMode,\n BooleanEditMode,\n BooleanLabellingValue,\n SectionMode,\n DisplayChromeMode,\n EditChromeMode,\n EnumDisplayMode,\n ShowWhenOperator,\n StringDisplayMode,\n} from '@wildo-ai/zod-decorators';\nimport {\n Key,\n ShieldCheck,\n Globe,\n Unlink,\n ShieldAlert,\n Fingerprint,\n UserCog,\n KeyRound,\n Radio,\n AlertTriangle,\n RotateCw,\n RefreshCw,\n PowerOff,\n Power,\n CalendarPlus,\n ChartColumn,\n Download,\n Trash2,\n PlugZap,\n Search,\n ShieldX,\n} from 'lucide-react';\nimport {\n CoreResourceType as R,\n CoreResourceOperation as Op,\n ApiKeyStatus,\n OrgApiKeys_Operations,\n AuditLogs_Operations,\n SiemDeliveryDlq_Operations,\n SsoConnection_Operations,\n ScimTokens_Operations,\n orgApiKeysResourceConfiguration_InitializationFactory as orgApiKeysFactory,\n orgProviderCredentialsResourceConfiguration_InitializationFactory as orgProviderCredentialsFactory,\n OrganizationProviderCredentialSchema,\n userProviderCredentialsResourceConfiguration_InitializationFactory as userProviderCredentialsFactory,\n UserProviderCredentialSchema,\n ProviderCredentialValidationState,\n auditLogsResourceConfiguration_InitializationFactory as auditLogsFactory,\n siemExportConfigPolymorphicFactories,\n siemDeliveryDlqPolymorphicFactories,\n ssoConfigPolymorphicFactories,\n SsoConfig_Operations,\n ssoConnectionPolymorphicFactories,\n scimProvisioningConfigPolymorphicFactories,\n scimTokensPolymorphicFactories,\n ApiKeyOrganizationSchema,\n AuditableEvent_BaseSchema,\n SiemExportConfigBaseSchema,\n SiemDeliveryDlqBaseSchema,\n SiemDeliveryDlqStatus,\n SsoConfigBaseSchema,\n SsoConnectionBaseSchema,\n ScimProvisioningConfigBaseSchema,\n ScimTokenBaseSchema,\n SsoProtocol,\n SIEMAuthMethod,\n} from '@wildo-ai/saas-models';\nimport { addressable, notAddressable } from './resource.config.utils';\n\n// ── SIEM export config — field overrides (shared across polymorphic variants) ─\n\nconst siemExportFieldOverrides = {\n enabled: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.enabled.booleanUI({\n labellingValue: BooleanLabellingValue.ENABLED_DISABLED,\n display: { displayMode: BooleanDisplayMode.CHECKMARK, showDescription: true },\n edit: { editMode: BooleanEditMode.SWITCH, showDescription: true },\n }),\n webhookUrl: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.webhookUrl.stringUI({\n display: { displayMode: StringDisplayMode.COPY, showDescription: true },\n edit: { showDescription: true },\n }),\n authMethod: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.authMethod.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true, tooltip: true },\n }),\n eventFormat: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.eventFormat.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n }),\n includeRawEventData: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.includeRawEventData.booleanUI({\n labellingValue: BooleanLabellingValue.YES_NO,\n display: { displayMode: BooleanDisplayMode.CHECKMARK, showDescription: true },\n edit: { editMode: BooleanEditMode.SWITCH, showDescription: true },\n }),\n includeDeviceContext: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.includeDeviceContext.booleanUI({\n labellingValue: BooleanLabellingValue.YES_NO,\n display: { displayMode: BooleanDisplayMode.CHECKMARK, showDescription: true },\n edit: { editMode: BooleanEditMode.SWITCH, showDescription: true },\n }),\n authCredential: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.authCredential.showWhen({\n conditions: { field: 'authMethod', value: SIEMAuthMethod.NONE, operator: ShowWhenOperator.NOT_EQUALS },\n }),\n authHeaderName: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.authHeaderName.showWhen({\n conditions: { field: 'authMethod', value: SIEMAuthMethod.API_KEY_HEADER },\n }),\n};\n\nfunction OrgApiKeyDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"name\" />\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </Section>\n <Section name=\"access\">\n <DisplayField name=\"roles\" />\n <DisplayField name=\"description\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"expiresAt\" />\n <DisplayField name=\"lastUsedAt\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction OrgApiKeyEditTemplate(): React.JSX.Element {\n return (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"name\" />\n <FormField name=\"status\" />\n <FormField name=\"expiresAt\" />\n </Section>\n <Section name=\"access\">\n <FormField name=\"roles\" />\n <FormField name=\"description\" />\n </Section>\n </FormLayout>\n );\n}\n\nfunction OrgApiKeySummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"name\" />\n <SummaryMeta>\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction AuditLogDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"eventType\" />\n <DisplayField name=\"eventCategory\" />\n <DisplayField name=\"severity\" />\n <DisplayField name=\"riskLevel\" />\n </Section>\n <Section name=\"actors\">\n <DisplayField name=\"userId\" />\n <DisplayField name=\"organizationId\" />\n </Section>\n <Section name=\"payload\">\n <DisplayField name=\"eventData\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction AuditLogSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"eventType\" />\n <SummaryMeta>\n <DisplayField name=\"eventCategory\" />\n <DisplayField name=\"severity\" />\n <DisplayField name=\"createdAt\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction SiemExportSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"enabled\" />\n </SummaryLayout>\n );\n}\n\nfunction SiemDlqDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"status\" />\n <DisplayField name=\"failureReason\" />\n </Section>\n <Section name=\"delivery\">\n <DisplayField name=\"eventId\" />\n <DisplayField name=\"failureCount\" />\n <DisplayField name=\"lastAttemptAt\" />\n <DisplayField name=\"nextRetryAt\" />\n </Section>\n <Section name=\"payload\">\n <DisplayField name=\"eventPayload\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction SiemDlqSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"failureReason\" />\n <SummaryMeta>\n <DisplayField name=\"status\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction SsoConfigDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"enforcement\" appearance={SectionMode.CARD}>\n <ObjectScope name=\"enforcement\">\n <DisplayField name=\"requireSSO\" />\n <DisplayField name=\"allowPasswordFallback\" />\n <DisplayField name=\"graceLoginAttempts\" />\n </ObjectScope>\n </Section>\n <Section name=\"domains\">\n <ObjectScope name=\"domains\">\n <DisplayField name=\"verifiedDomains\" />\n <DisplayField name=\"ssoEnabledDomains\" />\n <DisplayField name=\"domainHinting\" />\n <DisplayField name=\"allowExternalDomains\" />\n <DisplayField name=\"domainVerificationStatus\" />\n </ObjectScope>\n </Section>\n <Section name=\"provisioning\">\n <ObjectScope name=\"provisioning\">\n <DisplayField name=\"autoCreateUsers\" />\n <DisplayField name=\"autoUpdateUsers\" />\n <DisplayField name=\"autoDeactivateUsers\" />\n <DisplayField name=\"defaultRole\" />\n <DisplayField name=\"requiredAttributes\" />\n <DisplayField name=\"syncFrequencyHours\" />\n </ObjectScope>\n </Section>\n <Section name=\"session\">\n <ObjectScope name=\"sessionSettings\">\n <DisplayField name=\"ssoSessionDurationMinutes\" />\n <DisplayField name=\"requireReauthForSensitive\" />\n <DisplayField name=\"singleLogoutEnabled\" />\n <DisplayField name=\"maxConcurrentSessions\" />\n </ObjectScope>\n </Section>\n <Section name=\"audit\">\n <ObjectScope name=\"auditConfig\">\n <DisplayField name=\"logAllSSOEvents\" />\n <DisplayField name=\"logProviderSwitching\" />\n <DisplayField name=\"logRoleMapping\" />\n <DisplayField name=\"complianceReporting\" />\n <DisplayField name=\"retentionDays\" />\n </ObjectScope>\n </Section>\n <Section name=\"emergency\">\n <ObjectScope name=\"emergencyAccess\">\n <DisplayField name=\"enabled\" />\n <DisplayField name=\"breakGlassAccounts\" />\n </ObjectScope>\n </Section>\n <Section name=\"oauth\">\n <ObjectScope name=\"oauth2ProviderRestrictions\">\n <DisplayField name=\"allowedProviders\" />\n <DisplayField name=\"blockedProviders\" />\n <DisplayField name=\"requireEnterpriseSSOOnly\" />\n </ObjectScope>\n <DisplayField name=\"socialCredentialOverrides\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction SsoConfigSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <ObjectScope name=\"enforcement\">\n <DisplayField name=\"requireSSO\" />\n </ObjectScope>\n </SummaryLayout>\n );\n}\n\nfunction SsoConnectionDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"displayName\" />\n <DisplayField name=\"protocol\" />\n <DisplayField name=\"enabled\" />\n <DisplayField name=\"isDefault\" />\n <DisplayField name=\"externalProviderId\" />\n </Section>\n <Section name=\"oidc\">\n <ObjectScope name=\"oidc\">\n <DisplayField name=\"templateMode\" />\n <DisplayField name=\"discoveryUrl\" />\n <DisplayField name=\"issuer\" />\n <DisplayField name=\"authorizationEndpoint\" />\n <DisplayField name=\"tokenEndpoint\" />\n <DisplayField name=\"userInfoEndpoint\" />\n <DisplayField name=\"jwksUri\" />\n <DisplayField name=\"endSessionEndpoint\" />\n <DisplayField name=\"clientId\" />\n <DisplayField name=\"scopes\" />\n <DisplayField name=\"responseType\" />\n <DisplayField name=\"responseMode\" />\n <DisplayField name=\"pkceEnabled\" />\n <DisplayField name=\"pkceMethod\" />\n {/*\n The authentication-strength demands placed on the identity provider. `prompt` was\n already rendered here; `acrValues` and `maxAge` are shown beside it because all three\n became real on 2026-09-08 (#419) — until then the screen offered them and the\n authorization request carried none of them.\n\n `validateIssuer` / `validateAudience` were rendered here and are gone with the schema\n fields: the verification is unconditional, so the screen was offering an operator a\n switch whose only reachable position was the unsafe one.\n */}\n <DisplayField name=\"prompt\" />\n <DisplayField name=\"acrValues\" />\n <DisplayField name=\"maxAge\" />\n <DisplayField name=\"claimsMapping\" />\n <DisplayField name=\"auditSettings\" />\n </ObjectScope>\n </Section>\n <Section name=\"saml\">\n <ObjectScope name=\"saml\">\n <DisplayField name=\"entityId\" />\n <DisplayField name=\"ssoUrl\" />\n <DisplayField name=\"sloUrl\" />\n <DisplayField name=\"x509CertificatePem\" />\n <DisplayField name=\"attributeMapping\" />\n <DisplayField name=\"signRequests\" />\n <DisplayField name=\"wantAssertionsSigned\" />\n <DisplayField name=\"allowedClockDrift\" />\n <DisplayField name=\"forceAuthn\" />\n <DisplayField name=\"maxAuthAge\" />\n <DisplayField name=\"nameIdFormat\" />\n <DisplayField name=\"allowIdpInitiated\" />\n <DisplayField name=\"auditSettings\" />\n </ObjectScope>\n </Section>\n <Section name=\"provisioning\">\n <DisplayField name=\"autoCreateUsers\" />\n <DisplayField name=\"autoVerifyEmail\" />\n <DisplayField name=\"bypassAppMFA\" />\n <DisplayField name=\"defaultRole\" />\n <DisplayField name=\"allowedDomains\" />\n <DisplayField name=\"roleMapping\" />\n <DisplayField name=\"groupMapping\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction SsoConnectionSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"displayName\" />\n <SummaryMeta>\n <DisplayField name=\"protocol\" />\n <DisplayField name=\"enabled\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction ScimProvisioningDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n {/* No `scimEnabled` — whether SCIM is on is an org-type setting\n (`organizationTypes[type].scimProvisioning.enabled`), not a field on this row.\n This section governs what happens to users once SCIM is enabled for the type. */}\n <DisplayField name=\"autoCreateUsers\" />\n <DisplayField name=\"autoVerifyEmail\" />\n <DisplayField name=\"autoDeactivateUsers\" />\n <DisplayField name=\"defaultRole\" />\n </Section>\n <Section name=\"mapping\">\n <DisplayField name=\"attributeMapping\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"createdAt\" />\n <DisplayField name=\"updatedAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction ScimProvisioningSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"autoCreateUsers\" />\n </SummaryLayout>\n );\n}\n\nfunction ScimTokenDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"displayName\" />\n <DisplayField name=\"isActive\" />\n <DisplayField name=\"createdByUserId\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"lastUsedAt\" />\n <DisplayField name=\"expiresAt\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction ScimTokenSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"displayName\" />\n <SummaryMeta>\n <DisplayField name=\"isActive\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nexport function buildSecurityMainPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.ORG_API_KEYS]: resourceUIBehavior(orgApiKeysFactory, ApiKeyOrganizationSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Key,\n layout: {\n refs: {\n sections: ['overview', 'access', 'lifecycle'],\n },\n // Settings-page chrome (Settings Hub → API keys): label-left / value-right rows.\n defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },\n display: OrgApiKeyDisplayTemplate,\n summary: OrgApiKeySummaryTemplate,\n edit: OrgApiKeyEditTemplate,\n },\n fields: {\n status: schemaShape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [ApiKeyStatus.ACTIVE]: { color: BadgeSemanticVariant.SUCCESS },\n [ApiKeyStatus.INACTIVE]: { color: BadgeSemanticVariant.SECONDARY },\n [ApiKeyStatus.EXPIRED]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.name,\n // The empty state's primary action is Create — surfaced because CREATE\n // declares a (non-addressable, overlay) view below. Creating a key returns\n // its one-time `plainKey` (`.isEphemeral()` on the CREATE response DTO) →\n // the ephemeral reveal dialog shows the secret exactly once.\n emptyState: { primaryAction: Op.CREATE },\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, addressable()],\n // CREATE has a view but is NOT URL-addressable — surface EMBEDDED; the create\n // form opens as a drill-in within the Settings Hub panel, not a routed page.\n // Its Create button still shows: action visibility is governed by the op\n // having a surface + `actionVisibility`, NOT by addressability.\n [Op.CREATE, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.DELETE, notAddressable()],\n [OrgApiKeys_Operations.ROTATE, notAddressable({ iconOverride: RotateCw })],\n [OrgApiKeys_Operations.REGENERATE, notAddressable({ iconOverride: RefreshCw })],\n [OrgApiKeys_Operations.DEACTIVATE, notAddressable({ iconOverride: PowerOff })],\n [OrgApiKeys_Operations.REACTIVATE, notAddressable({ iconOverride: Power })],\n [OrgApiKeys_Operations.EXTEND_EXPIRY, notAddressable({ iconOverride: CalendarPlus })],\n [OrgApiKeys_Operations.USAGE_STATS, notAddressable({ iconOverride: ChartColumn })],\n ],\n })),\n\n /**\n * The tenant's OWN credentials toward third parties.\n *\n * Easy to read as a sibling of API keys and it is their mirror image: an API key lets somebody\n * reach THIS application, and one of these lets this application reach somebody else AS THIS\n * TENANT. Same administrator, opposite direction — which is why they sit next to each other in\n * Settings and must not be described in the same words.\n *\n * ## No layout refs, deliberately\n *\n * Declaring `layout.refs.sections` creates a contract the resource SPECIFICATION has to document\n * slot for slot, validated at load; this resource has eight visible fields and no section would\n * earn that coupling. Field-level UI is the whole surface until it needs one.\n *\n * ## What the administrator can see, and what they cannot\n *\n * `secretValue` is `.isWriteOnlySecret()`, so it is present in the CREATE and UPDATE forms and\n * masked on every read — the operator supplies and rotates it, and no screen ever shows it back.\n * Nothing here weakens that; the preset only names the fields that are already readable.\n */\n [R.ORG_PROVIDER_CREDENTIALS]: resourceUIBehavior(\n orgProviderCredentialsFactory,\n OrganizationProviderCredentialSchema,\n ({ schemaShape }) => ({\n icon: KeyRound,\n fields: {\n validationState: schemaShape.validationState.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n // UNVALIDATED is the honest default and is not a warning: storing a credential proves\n // only that somebody typed one, which is a normal state rather than a problem.\n [ProviderCredentialValidationState.UNVALIDATED]: { color: BadgeSemanticVariant.SECONDARY },\n [ProviderCredentialValidationState.VALID]: { color: BadgeSemanticVariant.SUCCESS },\n // The provider REJECTED it on its last use, so the tenant is acting as nobody until it\n // is rotated. That is a call to action, not an error the screen has to explain away.\n [ProviderCredentialValidationState.INVALID]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.providerRef} · ${currentObject.secretSlug}`,\n emptyState: { primaryAction: Op.CREATE },\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, addressable()],\n [Op.CREATE, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n }),\n ),\n\n [R.USER_PROVIDER_CREDENTIALS]: resourceUIBehavior(\n userProviderCredentialsFactory,\n UserProviderCredentialSchema,\n ({ schemaShape }) => ({\n icon: KeyRound,\n fields: {\n // The same three states as the tenant's, coloured identically on purpose: a person reading\n // their own connections and an administrator reading the tenant's are answering the same\n // question, and two colour languages for one vocabulary is how a reader learns to distrust\n // both. The WORDS come from the enum's i18n entry, authored once for every surface.\n validationState: schemaShape.validationState.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n // UNVALIDATED is the honest default and is not a warning: storing a credential proves\n // only that somebody typed one, which is a normal state rather than a problem.\n [ProviderCredentialValidationState.UNVALIDATED]: { color: BadgeSemanticVariant.SECONDARY },\n [ProviderCredentialValidationState.VALID]: { color: BadgeSemanticVariant.SUCCESS },\n // The provider REJECTED it on its last use. For a person this is the more actionable of\n // the two failure shapes: nobody else can rotate it for them, so the badge is the only\n // notice they will get that their own integration has stopped working.\n [ProviderCredentialValidationState.INVALID]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.providerRef} · ${currentObject.secretSlug}`,\n emptyState: { primaryAction: Op.CREATE },\n // No `layout.refs`, matching the tenant sibling: this resource declares no layout sections in\n // its specification, and a preset naming refs the layout does not declare fails the\n // structural-slot validator at import time and crash-loops the companion.\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, addressable()],\n [Op.CREATE, notAddressable()],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n }),\n ),\n\n [R.AUDIT_LOGS]: resourceUIBehavior(auditLogsFactory, AuditableEvent_BaseSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: ShieldCheck,\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.eventType ?? 'Audit Event'} — ${currentObject.createdAt?.toISOString?.() ?? ''}`,\n layout: {\n refs: {\n sections: ['overview', 'actors', 'payload'],\n },\n display: AuditLogDisplayTemplate,\n summary: AuditLogSummaryTemplate,\n },\n views: [\n [Op.READ, notAddressable()],\n // Audit-trail review dashboard: severity quick tabs (All/Info/Warning/…)\n // + day-bucket grouping — the same generic collection capabilities as\n // the webhook delivery log. `severity` is an enum in the LIST op's own\n // `filterFields`; `createdAt` is a summary field.\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'severity',\n temporalGroupField: 'createdAt',\n },\n })],\n [Op.SEARCH, addressable()],\n [AuditLogs_Operations.EXPORT_AUDIT_LOGS, notAddressable({ iconOverride: Download })],\n ],\n })),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_EXPORT_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_EXPORT_CONFIG },\n ],\n },\n siemExportConfigPolymorphicFactories[R.ORGANIZATION_SIEM_EXPORT_CONFIG],\n SiemExportConfigBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Radio,\n layout: {\n refs: {\n sections: ['status', 'destination', 'authentication', 'format', 'advanced'],\n },\n defaultChromeMode: {\n edit: EditChromeMode.SETTINGS_ROW,\n },\n edit: () => {\n const { isExisting, operationType } = useFormTemplateContext();\n return (\n <FormLayout>\n {/* status is intentionally INLINE — toggle feels awkward as a settings row */}\n <Section name=\"status\" appearance={SectionMode.CARD} chromeMode={EditChromeMode.INLINE}>\n <FormField name=\"enabled\" />\n </Section>\n <Section name=\"destination\" appearance={SectionMode.CARD}>\n <FormField name=\"webhookUrl\" />\n </Section>\n <Section name=\"authentication\">\n <FormField name=\"authMethod\" />\n <FormField name=\"authCredential\" />\n <FormField name=\"authHeaderName\" />\n </Section>\n <Section name=\"format\">\n <FormField name=\"eventFormat\" />\n <ObjectScope name=\"eventFilter\">\n <FormField name=\"categories\" />\n <FormField name=\"severityMinimum\" />\n <FormField name=\"specificEventTypes\" />\n </ObjectScope>\n </Section>\n <Section name=\"advanced\" appearance={SectionMode.COLLAPSIBLE} defaultFocus={false}>\n <ObjectScope name=\"delivery\">\n <FormField name=\"batchSize\" />\n <FormField name=\"batchWindowSeconds\" />\n <FormField name=\"retryAttempts\" />\n <FormField name=\"retryBackoffSeconds\" />\n <FormField name=\"timeoutSeconds\" />\n </ObjectScope>\n <FormField name=\"customHeaders\" />\n <FormField name=\"includeRawEventData\" />\n <FormField name=\"includeDeviceContext\" />\n </Section>\n </FormLayout>\n );\n },\n display: () => {\n const { data, isLoading } = useDisplayTemplateContext();\n return (\n <DisplayLayout>\n <Section name=\"status\" appearance={SectionMode.CARD}>\n <DisplayField name=\"enabled\" />\n </Section>\n <Section name=\"destination\" appearance={SectionMode.CARD}>\n <DisplayField name=\"webhookUrl\" />\n </Section>\n <Section name=\"authentication\">\n <DisplayField name=\"authMethod\" />\n <DisplayField name=\"authCredential\" />\n <DisplayField name=\"authHeaderName\" />\n </Section>\n <Section name=\"format\">\n <DisplayField name=\"eventFormat\" />\n <ObjectScope name=\"eventFilter\">\n <DisplayField name=\"categories\" />\n <DisplayField name=\"severityMinimum\" />\n <DisplayField name=\"specificEventTypes\" />\n </ObjectScope>\n </Section>\n <Section name=\"advanced\" appearance={SectionMode.COLLAPSIBLE} defaultFocus={false}>\n <ObjectScope name=\"delivery\">\n <DisplayField name=\"batchSize\" />\n <DisplayField name=\"batchWindowSeconds\" />\n <DisplayField name=\"retryAttempts\" />\n <DisplayField name=\"retryBackoffSeconds\" />\n <DisplayField name=\"timeoutSeconds\" />\n </ObjectScope>\n <DisplayField name=\"customHeaders\" />\n <DisplayField name=\"includeRawEventData\" />\n <DisplayField name=\"includeDeviceContext\" />\n </Section>\n </DisplayLayout>\n );\n },\n summary: SiemExportSummaryTemplate,\n },\n fields: {\n enabled: siemExportFieldOverrides.enabled(schema),\n webhookUrl: siemExportFieldOverrides.webhookUrl(schema),\n authMethod: siemExportFieldOverrides.authMethod(schema),\n eventFormat: siemExportFieldOverrides.eventFormat(schema),\n includeRawEventData: siemExportFieldOverrides.includeRawEventData(schema),\n includeDeviceContext: siemExportFieldOverrides.includeDeviceContext(schema),\n authCredential: siemExportFieldOverrides.authCredential(schema),\n authHeaderName: siemExportFieldOverrides.authHeaderName(schema),\n },\n views: [\n [Op.READ, addressable()],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_DELIVERY_DLQ },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_DELIVERY_DLQ },\n ],\n },\n siemDeliveryDlqPolymorphicFactories[R.ORGANIZATION_SIEM_DELIVERY_DLQ],\n SiemDeliveryDlqBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: AlertTriangle,\n layout: {\n refs: {\n sections: ['overview', 'delivery', 'payload'],\n },\n display: SiemDlqDisplayTemplate,\n summary: SiemDlqSummaryTemplate,\n },\n fields: {\n // Same billing-style visibility as ORG_API_KEYS / SSO protocol — list rows stay compact; descriptions come from schema metadata when present.\n status: schema.shape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [SiemDeliveryDlqStatus.PENDING_RETRY]: { color: BadgeSemanticVariant.WARNING },\n [SiemDeliveryDlqStatus.EXHAUSTED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n [SiemDeliveryDlqStatus.DELIVERED]: { color: BadgeSemanticVariant.SUCCESS },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.failureReason,\n views: [\n // Failed-deliveries triage dashboard: status quick tabs + day-bucket\n // grouping (same generic capabilities as the webhook delivery log).\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'status',\n temporalGroupField: 'createdAt',\n },\n })],\n // Per-row retry: executes in place on the clicked row. Its backend reads\n // the target from the request-DTO `entryId` (not the URL id), so the row\n // id is injected into that body field via `rowTargetRequestField`.\n [SiemDeliveryDlq_Operations.RETRY_SINGLE, notAddressable({ iconOverride: RotateCw, rowTargetRequestField: 'entryId' })],\n // Whole-scope drain actions: rendered once in the list's collection-action\n // bar (not per row), confirm by risk (HIGH → confirm, CRITICAL → type-to-\n // confirm), and surface their `{ …count, message }` summary as a toast.\n [SiemDeliveryDlq_Operations.RETRY_ALL, notAddressable({ iconOverride: RefreshCw, actionScope: ResourceOperationActionScope.COLLECTION })],\n [SiemDeliveryDlq_Operations.PURGE_ALL, notAddressable({ iconOverride: Trash2, actionScope: ResourceOperationActionScope.COLLECTION })],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONFIG },\n ],\n },\n ssoConfigPolymorphicFactories[R.ORGANIZATION_SSO_CONFIG],\n SsoConfigBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: StandardIconReference.LOCK,\n layout: {\n refs: {\n sections: ['enforcement', 'domains', 'provisioning', 'session', 'audit', 'emergency', 'oauth'],\n },\n display: SsoConfigDisplayTemplate,\n summary: SsoConfigSummaryTemplate,\n },\n views: [\n [Op.READ, addressable()],\n // Domain ownership is the one publicly mutable part of this policy row (#424). The three\n // actions live beside the `domains` section: claim returns a DNS record to copy, verify\n // resolves it, revoke releases the domain for another scope to verify.\n [SsoConfig_Operations.CLAIM_DOMAIN, notAddressable({ iconOverride: Globe })],\n [SsoConfig_Operations.VERIFY_DOMAIN, notAddressable({ iconOverride: ShieldCheck })],\n [SsoConfig_Operations.REVOKE_DOMAIN, notAddressable({ iconOverride: Unlink })],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONNECTIONS },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONNECTIONS },\n ],\n },\n ssoConnectionPolymorphicFactories[R.ORGANIZATION_SSO_CONNECTIONS],\n SsoConnectionBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Fingerprint,\n layout: {\n refs: {\n sections: ['overview', 'oidc', 'saml', 'provisioning'],\n },\n display: SsoConnectionDisplayTemplate,\n summary: SsoConnectionSummaryTemplate,\n },\n fields: {\n protocol: schema.shape.protocol.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [SsoProtocol.OIDC]: { color: BadgeSemanticVariant.INFO },\n [SsoProtocol.SAML]: { color: BadgeSemanticVariant.SECONDARY },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.displayName,\n views: [\n [Op.LIST, addressable()],\n [SsoConnection_Operations.TEST_CONNECTION, addressable({\n iconOverride: PlugZap,\n customView: ResourceLayoutPreset_Read_SsoSaml,\n })],\n [SsoConnection_Operations.DISCOVER_ENDPOINTS, addressable({\n iconOverride: Search,\n customView: ResourceLayoutPreset_Create_SamlWizard,\n })],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_PROVISIONING_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SCIM_PROVISIONING_CONFIG },\n ],\n },\n scimProvisioningConfigPolymorphicFactories[R.ORGANIZATION_SCIM_PROVISIONING_CONFIG],\n ScimProvisioningConfigBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: UserCog,\n layout: {\n refs: {\n sections: ['overview', 'mapping', 'lifecycle'],\n },\n display: ScimProvisioningDisplayTemplate,\n summary: ScimProvisioningSummaryTemplate,\n },\n views: [\n [Op.READ, addressable()],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_TOKENS },\n ],\n },\n scimTokensPolymorphicFactories[R.ORGANIZATION_SCIM_TOKENS],\n ScimTokenBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: KeyRound,\n getFrontendResourceLabel: ({ currentObject }) => currentObject.displayName,\n layout: {\n refs: {\n sections: ['overview', 'lifecycle'],\n },\n display: ScimTokenDisplayTemplate,\n summary: ScimTokenSummaryTemplate,\n },\n views: [\n [Op.LIST, addressable()],\n [ScimTokens_Operations.GENERATE_TOKEN, notAddressable({ iconOverride: KeyRound })],\n [ScimTokens_Operations.REVOKE_TOKEN, notAddressable({ iconOverride: ShieldX })],\n [ScimTokens_Operations.ROTATE_TOKEN, notAddressable({ iconOverride: RotateCw })],\n ],\n }),\n ),\n };\n}\n\nexport function buildSecurityAdminPresets(main: Partial<ResourceUIBehavior>): Partial<ResourceUIBehavior> {\n return {\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_EXPORT_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_EXPORT_CONFIG },\n ],\n },\n siemExportConfigPolymorphicFactories[R.ORGANIZATION_SIEM_EXPORT_CONFIG],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n fields: base.fields,\n views: [\n [Op.READ, addressable()],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [[Op.READ, notAddressable()]],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_DELIVERY_DLQ },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_DELIVERY_DLQ },\n ],\n },\n siemDeliveryDlqPolymorphicFactories[R.ORGANIZATION_SIEM_DELIVERY_DLQ],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n fields: base.fields,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n views: [\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'status',\n temporalGroupField: 'createdAt',\n },\n })],\n // Per-row retry: executes in place on the clicked row. Its backend reads\n // the target from the request-DTO `entryId` (not the URL id), so the row\n // id is injected into that body field via `rowTargetRequestField`.\n [SiemDeliveryDlq_Operations.RETRY_SINGLE, notAddressable({ iconOverride: RotateCw, rowTargetRequestField: 'entryId' })],\n // Whole-scope drain actions: rendered once in the list's collection-action\n // bar (not per row), confirm by risk (HIGH → confirm, CRITICAL → type-to-\n // confirm), and surface their `{ …count, message }` summary as a toast.\n [SiemDeliveryDlq_Operations.RETRY_ALL, notAddressable({ iconOverride: RefreshCw, actionScope: ResourceOperationActionScope.COLLECTION })],\n [SiemDeliveryDlq_Operations.PURGE_ALL, notAddressable({ iconOverride: Trash2, actionScope: ResourceOperationActionScope.COLLECTION })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable({\n collectionDisplayConfig: {\n quickFilterField: 'status',\n temporalGroupField: 'createdAt',\n },\n })],\n ],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONFIG },\n ],\n },\n ssoConfigPolymorphicFactories[R.ORGANIZATION_SSO_CONFIG],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n views: [\n [Op.READ, addressable()],\n [SsoConfig_Operations.CLAIM_DOMAIN, notAddressable({ iconOverride: Globe })],\n [SsoConfig_Operations.VERIFY_DOMAIN, notAddressable({ iconOverride: ShieldCheck })],\n [SsoConfig_Operations.REVOKE_DOMAIN, notAddressable({ iconOverride: Unlink })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [[Op.READ, notAddressable()]],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONNECTIONS },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONNECTIONS },\n ],\n },\n ssoConnectionPolymorphicFactories[R.ORGANIZATION_SSO_CONNECTIONS],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n fields: base.fields,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n views: [\n [Op.LIST, addressable()],\n [SsoConnection_Operations.TEST_CONNECTION, addressable({\n iconOverride: PlugZap,\n customView: ResourceLayoutPreset_Read_SsoSaml,\n })],\n [SsoConnection_Operations.DISCOVER_ENDPOINTS, addressable({\n iconOverride: Search,\n customView: ResourceLayoutPreset_Create_SamlWizard,\n })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n ],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_PROVISIONING_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SCIM_PROVISIONING_CONFIG },\n ],\n },\n scimProvisioningConfigPolymorphicFactories[R.ORGANIZATION_SCIM_PROVISIONING_CONFIG],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n views: [\n [Op.READ, addressable()],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [[Op.READ, notAddressable()]],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_TOKENS },\n ],\n },\n scimTokensPolymorphicFactories[R.ORGANIZATION_SCIM_TOKENS],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n views: [\n [Op.LIST, addressable()],\n [ScimTokens_Operations.GENERATE_TOKEN, notAddressable({ iconOverride: KeyRound })],\n [ScimTokens_Operations.REVOKE_TOKEN, notAddressable({ iconOverride: ShieldX })],\n [ScimTokens_Operations.ROTATE_TOKEN, notAddressable({ iconOverride: RotateCw })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n ],\n },\n },\n }),\n ),\n\n [R.ORG_API_KEYS]: resourceUIBehaviorFrom(orgApiKeysFactory, main[R.ORG_API_KEYS]!, ({ base, opsVariantResolver }) => ({\n icon: base.icon,\n layout: base.layout,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n fields: base.fields,\n views: [\n [opsVariantResolver(Op.READ, 'admin'), notAddressable()],\n [opsVariantResolver(Op.LIST, 'admin'), notAddressable()],\n [opsVariantResolver(Op.SEARCH, 'admin'), notAddressable()],\n [opsVariantResolver(Op.CREATE, 'admin'), notAddressable()],\n [opsVariantResolver(Op.DELETE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.ROTATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.REGENERATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.DEACTIVATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.REACTIVATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.EXTEND_EXPIRY, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.USAGE_STATS, 'admin'), notAddressable()],\n ],\n })),\n };\n}\n\nexport const securityMainPresets = buildSecurityMainPresets();\nexport const securityAdminPresets = buildSecurityAdminPresets(securityMainPresets);\n\nexport const orgApiKeysMainResourceUIBehavior = securityMainPresets[R.ORG_API_KEYS]!;\nexport const orgApiKeysAdminResourceUIBehavior = securityAdminPresets[R.ORG_API_KEYS]!;\nexport const auditLogsMainResourceUIBehavior = securityMainPresets[R.AUDIT_LOGS]!;\n"]}
|
|
1
|
+
{"version":3,"file":"security.resource-presets.js","sourceRoot":"","sources":["../../../../../src/config/resources/security.resource-presets.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * Security & Compliance — Resource frontend presets\n *\n * Domain: ORG_API_KEYS, AUDIT_LOGS, SIEM (polymorphic),\n * SSO_CONFIG (poly), SSO_CONNECTIONS (poly), SCIM_PROVISIONING (poly), SCIM_TOKENS (poly)\n *\n * SIEM layout JSX lives in this file next to `layout.refs` + `fields` so section chrome\n * and primitive UI params stay co-located with the preset. Edit/display templates are\n * inlined as arrow functions so `useFormTemplateContext` / `useDisplayTemplateContext`\n * are immediately available for future conditional rendering. The scope-level CONFIGURATION records\n * here — SIEM export, SSO config, SCIM provisioning — declare the full settings chrome\n * (`display` + `summary` + `edit`), because each is reached as a READ inside the Settings Hub and is\n * opened to confirm a value far more often than to change one; only sections that differ (e.g. the\n * status toggle) set `chromeMode` explicitly. The COLLECTIONS beside them (SSO connections, the SIEM\n * dead-letter queue, SCIM tokens) declare none on purpose: a list has no label/value rows for the\n * treatment to apply to.\n * Other resources here use field-level UI only until they need custom sections; enum badges use\n * `showDescription: true` like billing.\n */\n\nimport React from 'react';\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n resourceUIBehavior,\n resourceUIBehaviorFrom,\n polymorphicResourceUIBehavior,\n polymorphicResourceUIBehaviorFrom,\n StandardIconReference,\n ResourceOperationActionScope,\n ActionVisibility,\n ResourceLayoutInlineEditDefault,\n CollectionDisplayMode,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n DisplayField,\n DisplayLayout,\n FormField,\n FormLayout,\n ObjectScope,\n Section,\n SummaryLayout,\n useFormTemplateContext,\n useDisplayTemplateContext,\n ResourceLayoutPreset_Create_SamlWizard,\n ResourceLayoutPreset_Read_SsoSaml,\n SummaryFlow,\n SummaryMeta,\n SummaryTitle,\n} from '@wildo-ai/saas-frontend-lib';\nimport {\n BadgeSemanticVariant,\n BooleanDisplayMode,\n BooleanEditMode,\n BooleanLabellingValue,\n SectionMode,\n DisplayChromeMode,\n EditChromeMode,\n EnumDisplayMode,\n ShowWhenOperator,\n StringDisplayMode,\n} from '@wildo-ai/zod-decorators';\nimport {\n Key,\n ShieldCheck,\n Globe,\n Unlink,\n ShieldAlert,\n Fingerprint,\n UserCog,\n KeyRound,\n Radio,\n AlertTriangle,\n RotateCw,\n RefreshCw,\n PowerOff,\n Power,\n CalendarPlus,\n ChartColumn,\n Download,\n Trash2,\n PlugZap,\n Search,\n ShieldX,\n} from 'lucide-react';\nimport {\n CoreResourceType as R,\n CoreResourceOperation as Op,\n ApiKeyStatus,\n OrgApiKeys_Operations,\n AuditLogs_Operations,\n SiemDeliveryDlq_Operations,\n SsoConnection_Operations,\n ScimTokens_Operations,\n orgApiKeysResourceConfiguration_InitializationFactory as orgApiKeysFactory,\n orgProviderCredentialsResourceConfiguration_InitializationFactory as orgProviderCredentialsFactory,\n OrganizationProviderCredentialSchema,\n userProviderCredentialsResourceConfiguration_InitializationFactory as userProviderCredentialsFactory,\n UserProviderCredentialSchema,\n ProviderCredentialValidationState,\n auditLogsResourceConfiguration_InitializationFactory as auditLogsFactory,\n applicationAuditLogsResourceConfiguration_InitializationFactory as applicationAuditLogsFactory,\n siemExportConfigPolymorphicFactories,\n siemDeliveryDlqPolymorphicFactories,\n ssoConfigPolymorphicFactories,\n SsoConfig_Operations,\n ssoConnectionPolymorphicFactories,\n scimProvisioningConfigPolymorphicFactories,\n scimTokensPolymorphicFactories,\n ApiKeyOrganizationSchema,\n AuditableEvent_BaseSchema,\n SiemExportConfigBaseSchema,\n SiemDeliveryDlqBaseSchema,\n SiemDeliveryDlqStatus,\n SsoConfigBaseSchema,\n SsoConnectionBaseSchema,\n ScimProvisioningConfigBaseSchema,\n ScimTokenBaseSchema,\n SsoProtocol,\n SIEMAuthMethod,\n} from '@wildo-ai/saas-models';\nimport { addressable, notAddressable } from './resource.config.utils';\n\n// ── SIEM export config — field overrides (shared across polymorphic variants) ─\n\nconst siemExportFieldOverrides = {\n enabled: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.enabled.booleanUI({\n labellingValue: BooleanLabellingValue.ENABLED_DISABLED,\n display: { displayMode: BooleanDisplayMode.CHECKMARK, showDescription: true },\n edit: { editMode: BooleanEditMode.SWITCH, showDescription: true },\n }),\n webhookUrl: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.webhookUrl.stringUI({\n display: { displayMode: StringDisplayMode.COPY, showDescription: true },\n edit: { showDescription: true },\n }),\n authMethod: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.authMethod.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true, tooltip: true },\n }),\n eventFormat: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.eventFormat.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n }),\n authCredential: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.authCredential.showWhen({\n conditions: { field: 'authMethod', value: SIEMAuthMethod.NONE, operator: ShowWhenOperator.NOT_EQUALS },\n }),\n authHeaderName: (schema: typeof SiemExportConfigBaseSchema) =>\n schema.shape.authHeaderName.showWhen({\n conditions: { field: 'authMethod', value: SIEMAuthMethod.API_KEY_HEADER },\n }),\n};\n\nfunction OrgApiKeyDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"name\" />\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </Section>\n <Section name=\"access\">\n <DisplayField name=\"roles\" />\n <DisplayField name=\"description\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"expiresAt\" />\n <DisplayField name=\"lastUsedAt\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction OrgApiKeyEditTemplate(): React.JSX.Element {\n return (\n <FormLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <FormField name=\"name\" />\n <FormField name=\"status\" />\n <FormField name=\"expiresAt\" />\n </Section>\n <Section name=\"access\">\n <FormField name=\"roles\" />\n <FormField name=\"description\" />\n </Section>\n </FormLayout>\n );\n}\n\nfunction OrgApiKeySummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"name\" />\n <SummaryMeta>\n <DisplayField name=\"scope\" />\n <DisplayField name=\"status\" />\n <DisplayField name=\"keyPrefix\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction AuditLogDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"eventType\" />\n <DisplayField name=\"eventCategory\" />\n <DisplayField name=\"severity\" />\n <DisplayField name=\"riskLevel\" />\n </Section>\n <Section name=\"actors\">\n <DisplayField name=\"userId\" />\n <DisplayField name=\"organizationId\" />\n </Section>\n <Section name=\"payload\">\n <DisplayField name=\"eventData\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction AuditLogSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"eventType\" />\n <SummaryMeta>\n <DisplayField name=\"eventCategory\" />\n <DisplayField name=\"severity\" />\n <DisplayField name=\"createdAt\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction SiemExportSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"enabled\" />\n </SummaryLayout>\n );\n}\n\nfunction SiemDlqDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"status\" />\n <DisplayField name=\"failureReason\" />\n </Section>\n <Section name=\"delivery\">\n <DisplayField name=\"eventId\" />\n <DisplayField name=\"failureCount\" />\n <DisplayField name=\"lastAttemptAt\" />\n <DisplayField name=\"nextRetryAt\" />\n </Section>\n <Section name=\"payload\">\n <DisplayField name=\"eventPayload\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction SiemDlqSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"failureReason\" />\n <SummaryMeta>\n <DisplayField name=\"status\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction SsoConfigDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n {/*\n * No `appearance` on any of these seven. The layout declares\n * `defaultDisplaySectionAppearance: VERTICAL_TABS` once, and grouping keys on\n * `(mode, its props)` over CONSECUTIVE siblings — so declaring it per section would be seven\n * agreements to keep, and one that slipped would render two rails rather than fail.\n * `enforcement` carried CARD here, which is what made it the odd one out: under a shared\n * container mode it would have been a card sitting above the rail instead of its first tab.\n */}\n <Section name=\"enforcement\">\n <ObjectScope name=\"enforcement\">\n <DisplayField name=\"requireSSO\" />\n <DisplayField name=\"allowPasswordFallback\" />\n <DisplayField name=\"graceLoginAttempts\" />\n </ObjectScope>\n </Section>\n <Section name=\"domains\">\n <ObjectScope name=\"domains\">\n <DisplayField name=\"verifiedDomains\" />\n <DisplayField name=\"ssoEnabledDomains\" />\n <DisplayField name=\"domainVerificationStatus\" />\n </ObjectScope>\n </Section>\n {/*\n No `provisioning` section. It rendered `SsoConfig.provisioning`, which decided nothing — and\n on THIS pane it was worse than inert: an administrator reading \"Single sign-on → Provisioning →\n create users automatically\" had every reason to believe it governed who gets an account when\n somebody signs in through the IdP. What governs that is the CONNECTION's own\n `autoCreateUsers`, one pane over under Connections; what governs a directory PUSH is the SCIM\n provisioning pane. Two live answers and a third that looked like the summary of both.\n */}\n {/*\n One row left in `session`, and no `audit` section at all. Both held switches that decided\n nothing: SSO events are not gated on a per-policy log flag, audit RETENTION is\n `ApplicationRetentionSchedule` over `DataRetentionClass`, session lifetime is the token\n issuer's, and the concurrency limit is `userTypes.<type>.auth.maxConcurrentSessions`. Four of\n them looked like security controls — which is why they had to go rather than be documented.\n */}\n <Section name=\"session\">\n <ObjectScope name=\"sessionSettings\">\n <DisplayField name=\"singleLogoutEnabled\" />\n </ObjectScope>\n </Section>\n <Section name=\"emergency\">\n <ObjectScope name=\"emergencyAccess\">\n <DisplayField name=\"enabled\" />\n <DisplayField name=\"breakGlassAccounts\" />\n </ObjectScope>\n </Section>\n <Section name=\"oauth\">\n <ObjectScope name=\"oauth2ProviderRestrictions\">\n <DisplayField name=\"allowedProviders\" />\n <DisplayField name=\"blockedProviders\" />\n <DisplayField name=\"requireEnterpriseSSOOnly\" />\n </ObjectScope>\n <DisplayField name=\"socialCredentialOverrides\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction SsoConfigSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <ObjectScope name=\"enforcement\">\n <DisplayField name=\"requireSSO\" />\n </ObjectScope>\n </SummaryLayout>\n );\n}\n\nfunction SsoConnectionDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"displayName\" />\n <DisplayField name=\"protocol\" />\n <DisplayField name=\"enabled\" />\n <DisplayField name=\"isDefault\" />\n <DisplayField name=\"externalProviderId\" />\n </Section>\n <Section name=\"oidc\">\n <ObjectScope name=\"oidc\">\n <DisplayField name=\"templateMode\" />\n <DisplayField name=\"discoveryUrl\" />\n <DisplayField name=\"issuer\" />\n <DisplayField name=\"authorizationEndpoint\" />\n <DisplayField name=\"tokenEndpoint\" />\n <DisplayField name=\"userInfoEndpoint\" />\n <DisplayField name=\"jwksUri\" />\n <DisplayField name=\"endSessionEndpoint\" />\n <DisplayField name=\"clientId\" />\n <DisplayField name=\"scopes\" />\n <DisplayField name=\"responseType\" />\n <DisplayField name=\"responseMode\" />\n <DisplayField name=\"pkceEnabled\" />\n <DisplayField name=\"pkceMethod\" />\n {/*\n The authentication-strength demands placed on the identity provider. `prompt` was\n already rendered here; `acrValues` and `maxAge` are shown beside it because all three\n became real on 2026-09-08 (#419) — until then the screen offered them and the\n authorization request carried none of them.\n\n `validateIssuer` / `validateAudience` were rendered here and are gone with the schema\n fields: the verification is unconditional, so the screen was offering an operator a\n switch whose only reachable position was the unsafe one.\n */}\n <DisplayField name=\"prompt\" />\n <DisplayField name=\"acrValues\" />\n <DisplayField name=\"maxAge\" />\n <DisplayField name=\"claimsMapping\" />\n <DisplayField name=\"auditSettings\" />\n </ObjectScope>\n </Section>\n <Section name=\"saml\">\n <ObjectScope name=\"saml\">\n <DisplayField name=\"entityId\" />\n <DisplayField name=\"ssoUrl\" />\n <DisplayField name=\"sloUrl\" />\n <DisplayField name=\"x509CertificatePem\" />\n <DisplayField name=\"attributeMapping\" />\n <DisplayField name=\"signRequests\" />\n <DisplayField name=\"wantAssertionsSigned\" />\n <DisplayField name=\"allowedClockDrift\" />\n <DisplayField name=\"forceAuthn\" />\n <DisplayField name=\"maxAuthAge\" />\n <DisplayField name=\"nameIdFormat\" />\n <DisplayField name=\"allowIdpInitiated\" />\n <DisplayField name=\"auditSettings\" />\n </ObjectScope>\n </Section>\n <Section name=\"provisioning\">\n <DisplayField name=\"autoCreateUsers\" />\n <DisplayField name=\"autoVerifyEmail\" />\n <DisplayField name=\"defaultRole\" />\n <DisplayField name=\"allowedDomains\" />\n <DisplayField name=\"roleMapping\" />\n <DisplayField name=\"groupMapping\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction SsoConnectionSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"displayName\" />\n <SummaryMeta>\n <DisplayField name=\"protocol\" />\n <DisplayField name=\"enabled\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nfunction ScimProvisioningDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n {/* No `scimEnabled` — whether SCIM is on is an org-type setting\n (`organizationTypes[type].scimProvisioning.enabled`), not a field on this row.\n This section governs what happens to users once SCIM is enabled for the type. */}\n <DisplayField name=\"autoCreateUsers\" />\n <DisplayField name=\"autoVerifyEmail\" />\n <DisplayField name=\"autoDeactivateUsers\" />\n <DisplayField name=\"defaultRole\" />\n </Section>\n <Section name=\"mapping\">\n <DisplayField name=\"attributeMapping\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"createdAt\" />\n <DisplayField name=\"updatedAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction ScimProvisioningSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout flow={SummaryFlow.ROW}>\n <DisplayField name=\"autoCreateUsers\" />\n </SummaryLayout>\n );\n}\n\nfunction ScimTokenDisplayTemplate(): React.JSX.Element {\n return (\n <DisplayLayout>\n <Section name=\"overview\" appearance={SectionMode.CARD}>\n <DisplayField name=\"displayName\" />\n <DisplayField name=\"isActive\" />\n <DisplayField name=\"createdByUserId\" />\n </Section>\n <Section name=\"lifecycle\">\n <DisplayField name=\"lastUsedAt\" />\n <DisplayField name=\"expiresAt\" />\n <DisplayField name=\"createdAt\" />\n </Section>\n </DisplayLayout>\n );\n}\n\nfunction ScimTokenSummaryTemplate(): React.JSX.Element {\n return (\n <SummaryLayout>\n <SummaryTitle name=\"displayName\" />\n <SummaryMeta>\n <DisplayField name=\"isActive\" />\n </SummaryMeta>\n </SummaryLayout>\n );\n}\n\nexport function buildSecurityMainPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.ORG_API_KEYS]: resourceUIBehavior(orgApiKeysFactory, ApiKeyOrganizationSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Key,\n layout: {\n refs: {\n sections: ['overview', 'access', 'lifecycle'],\n },\n // Settings-page chrome (Settings Hub → API keys): label-left / value-right rows.\n defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },\n display: OrgApiKeyDisplayTemplate,\n summary: OrgApiKeySummaryTemplate,\n edit: OrgApiKeyEditTemplate,\n },\n fields: {\n status: schemaShape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [ApiKeyStatus.ACTIVE]: { color: BadgeSemanticVariant.SUCCESS },\n [ApiKeyStatus.INACTIVE]: { color: BadgeSemanticVariant.SECONDARY },\n [ApiKeyStatus.EXPIRED]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.name,\n // The empty state's primary action is Create — surfaced because CREATE\n // declares a (non-addressable, overlay) view below. Creating a key returns\n // its one-time `plainKey` (`.isEphemeral()` on the CREATE response DTO) →\n // the ephemeral reveal dialog shows the secret exactly once.\n emptyState: { primaryAction: Op.CREATE },\n views: [\n [Op.READ, notAddressable()],\n // A key registry: name, scope, created, last used. Comparable rows.\n // CARDS is the framework default and nothing had ever declared otherwise, so every\n // collection in the product rendered as stacked cards — ~150px per row, four people to a\n // viewport, with each field's help text and label repeated on every card. TABLE writes the\n // headers once. `userSwitchableDisplayMode` keeps cards one click away rather than removing\n // a rendering somebody may prefer on a narrow screen.\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n displayMode: CollectionDisplayMode.TABLE,\n userSwitchableDisplayMode: true,\n },\n })],\n // CREATE has a view but is NOT URL-addressable — surface EMBEDDED; the create\n // form opens as a drill-in within the Settings Hub panel, not a routed page.\n // Its Create button still shows: action visibility is governed by the op\n // having a surface + `actionVisibility`, NOT by addressability.\n [Op.CREATE, notAddressable()],\n [Op.SEARCH, notAddressable()],\n [Op.DELETE, notAddressable()],\n [OrgApiKeys_Operations.ROTATE, notAddressable({ iconOverride: RotateCw })],\n [OrgApiKeys_Operations.REGENERATE, notAddressable({ iconOverride: RefreshCw })],\n [OrgApiKeys_Operations.DEACTIVATE, notAddressable({ iconOverride: PowerOff })],\n [OrgApiKeys_Operations.REACTIVATE, notAddressable({ iconOverride: Power })],\n [OrgApiKeys_Operations.EXTEND_EXPIRY, notAddressable({ iconOverride: CalendarPlus })],\n [OrgApiKeys_Operations.USAGE_STATS, notAddressable({ iconOverride: ChartColumn })],\n ],\n })),\n\n /**\n * The tenant's OWN credentials toward third parties.\n *\n * Easy to read as a sibling of API keys and it is their mirror image: an API key lets somebody\n * reach THIS application, and one of these lets this application reach somebody else AS THIS\n * TENANT. Same administrator, opposite direction — which is why they sit next to each other in\n * Settings and must not be described in the same words.\n *\n * ## No layout refs, deliberately\n *\n * Declaring `layout.refs.sections` creates a contract the resource SPECIFICATION has to document\n * slot for slot, validated at load; this resource has eight visible fields and no section would\n * earn that coupling. Field-level UI is the whole surface until it needs one.\n *\n * ## What the administrator can see, and what they cannot\n *\n * `secretValue` is `.isWriteOnlySecret()`, so it is present in the CREATE and UPDATE forms and\n * masked on every read — the operator supplies and rotates it, and no screen ever shows it back.\n * Nothing here weakens that; the preset only names the fields that are already readable.\n */\n [R.ORG_PROVIDER_CREDENTIALS]: resourceUIBehavior(\n orgProviderCredentialsFactory,\n OrganizationProviderCredentialSchema,\n ({ schemaShape }) => ({\n icon: KeyRound,\n fields: {\n validationState: schemaShape.validationState.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n // UNVALIDATED is the honest default and is not a warning: storing a credential proves\n // only that somebody typed one, which is a normal state rather than a problem.\n [ProviderCredentialValidationState.UNVALIDATED]: { color: BadgeSemanticVariant.SECONDARY },\n [ProviderCredentialValidationState.VALID]: { color: BadgeSemanticVariant.SUCCESS },\n // The provider REJECTED it on its last use, so the tenant is acting as nobody until it\n // is rotated. That is a call to action, not an error the screen has to explain away.\n [ProviderCredentialValidationState.INVALID]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.providerRef} · ${currentObject.secretSlug}`,\n // No Create call to action, and no Create on the list either (#1040). A credential is pasted through the Connect\n // tab beside this list, which offers only declared providers and each provider's declared slots. This list's\n // CREATE form took both as free text, so a value could be stored in a slot nothing reads, and the refusal naming\n // the valid slots never reached the person. The API's CREATE stays for callers that are not these screens.\n emptyState: { primaryAction: false },\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, addressable()],\n [Op.CREATE, notAddressable({ actionVisibility: ActionVisibility.HIDDEN })],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n }),\n ),\n\n [R.USER_PROVIDER_CREDENTIALS]: resourceUIBehavior(\n userProviderCredentialsFactory,\n UserProviderCredentialSchema,\n ({ schemaShape }) => ({\n icon: KeyRound,\n fields: {\n // The same three states as the tenant's, coloured identically on purpose: a person reading\n // their own connections and an administrator reading the tenant's are answering the same\n // question, and two colour languages for one vocabulary is how a reader learns to distrust\n // both. The WORDS come from the enum's i18n entry, authored once for every surface.\n validationState: schemaShape.validationState.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n // UNVALIDATED is the honest default and is not a warning: storing a credential proves\n // only that somebody typed one, which is a normal state rather than a problem.\n [ProviderCredentialValidationState.UNVALIDATED]: { color: BadgeSemanticVariant.SECONDARY },\n [ProviderCredentialValidationState.VALID]: { color: BadgeSemanticVariant.SUCCESS },\n // The provider REJECTED it on its last use. For a person this is the more actionable of\n // the two failure shapes: nobody else can rotate it for them, so the badge is the only\n // notice they will get that their own integration has stopped working.\n [ProviderCredentialValidationState.INVALID]: { color: BadgeSemanticVariant.WARNING },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.providerRef} · ${currentObject.secretSlug}`,\n // No Create call to action, and no Create on the list either (#1040). A credential is pasted through the Connect\n // tab beside this list, which offers only declared providers and each provider's declared slots. This list's\n // CREATE form took both as free text, so a value could be stored in a slot nothing reads, and the refusal naming\n // the valid slots never reached the person. The API's CREATE stays for callers that are not these screens.\n emptyState: { primaryAction: false },\n // No `layout.refs`, matching the tenant sibling: this resource declares no layout sections in\n // its specification, and a preset naming refs the layout does not declare fails the\n // structural-slot validator at import time and crash-loops the companion.\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, addressable()],\n [Op.CREATE, notAddressable({ actionVisibility: ActionVisibility.HIDDEN })],\n [Op.UPDATE, notAddressable()],\n [Op.DELETE, notAddressable()],\n ],\n }),\n ),\n\n [R.AUDIT_LOGS]: resourceUIBehavior(auditLogsFactory, AuditableEvent_BaseSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: ShieldCheck,\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.eventType ?? 'Audit Event'} — ${currentObject.createdAt?.toISOString?.() ?? ''}`,\n layout: {\n refs: {\n sections: ['overview', 'actors', 'payload'],\n },\n display: AuditLogDisplayTemplate,\n summary: AuditLogSummaryTemplate,\n },\n views: [\n [Op.READ, notAddressable()],\n // Audit-trail review dashboard: severity quick tabs (All/Info/Warning/…)\n // + day-bucket grouping — the same generic collection capabilities as\n // the webhook delivery log. `severity` is an enum in the LIST op's own\n // `filterFields`; `createdAt` is a summary field.\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'severity',\n temporalGroupField: 'createdAt',\n },\n })],\n [Op.SEARCH, addressable()],\n [AuditLogs_Operations.EXPORT_AUDIT_LOGS, notAddressable({ iconOverride: Download })],\n ],\n })),\n\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_EXPORT_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_EXPORT_CONFIG },\n ],\n },\n siemExportConfigPolymorphicFactories[R.ORGANIZATION_SIEM_EXPORT_CONFIG],\n SiemExportConfigBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Radio,\n layout: {\n refs: {\n sections: ['status', 'destination', 'authentication', 'format', 'advanced'],\n },\n // `display` and `summary` joined `edit` on 2026-09-18. Only the form carried the settings\n // treatment, so the READ an operator actually opens rendered with the stacked default while\n // its own edit form used rows — the same record, two shapes, depending on which verb you\n // reached it by.\n defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },\n // SIEM export configuration — a scope-level configuration record. A settings pane is a list of decisions an operator came to TAKE, so its\n // writable fields are offered in place rather than behind a whole-pane edit mode. The set is\n // DERIVED (not primary key, not excludeFromUpdate, not hidden, not opted out), so a field\n // added to this schema tomorrow is covered without anyone remembering to decorate it.\n defaultInlineEdit: ResourceLayoutInlineEditDefault.WRITABLE_FIELDS,\n // And its empty rows say WHICH emptiness they are — \"None yet\" for a list with no members,\n // \"Not available\" for a computed value, \"No value\" for a field awaiting input — instead of one\n // em dash standing for all three. The surface policy's dash is right where a reader is scanning;\n // on a settings row, which is read one at a time to decide something, it is an answer that\n // refuses to answer.\n defaultEmptyValue: 'placeholder',\n edit: () => {\n const { isExisting, operationType } = useFormTemplateContext();\n return (\n <FormLayout>\n {/* status is intentionally INLINE — toggle feels awkward as a settings row */}\n <Section name=\"status\" appearance={SectionMode.CARD} chromeMode={EditChromeMode.INLINE}>\n <FormField name=\"enabled\" />\n </Section>\n <Section name=\"destination\" appearance={SectionMode.CARD}>\n <FormField name=\"webhookUrl\" />\n </Section>\n <Section name=\"authentication\">\n <FormField name=\"authMethod\" />\n <FormField name=\"authCredential\" />\n <FormField name=\"authHeaderName\" />\n </Section>\n <Section name=\"format\">\n <FormField name=\"eventFormat\" />\n <ObjectScope name=\"eventFilter\">\n <FormField name=\"categories\" />\n <FormField name=\"severityMinimum\" />\n <FormField name=\"specificEventTypes\" />\n </ObjectScope>\n {/*\n * Data minimisation sits beside the filter on purpose: the filter decides WHICH\n * events leave, this decides WHAT each one carries, and an operator discharging a\n * processing agreement is answering both questions in one sitting.\n *\n * It is rendered rather than left to the schema because these templates are\n * EXPLICIT — a field nobody lists here has no door at all, and a privacy control\n * an operator cannot reach is the shape this pane has already shipped twice.\n */}\n <ObjectScope name=\"exportProjection\">\n <FormField name=\"disclosedTiers\" />\n <FormField name=\"disclosedEventDataClasses\" />\n </ObjectScope>\n </Section>\n <Section name=\"advanced\" appearance={SectionMode.COLLAPSIBLE} defaultFocus={false}>\n <ObjectScope name=\"delivery\">\n <FormField name=\"retryAttempts\" />\n <FormField name=\"retryBackoffSeconds\" />\n <FormField name=\"timeoutSeconds\" />\n </ObjectScope>\n <FormField name=\"customHeaders\" />\n </Section>\n </FormLayout>\n );\n },\n display: () => {\n const { data, isLoading } = useDisplayTemplateContext();\n return (\n <DisplayLayout>\n <Section name=\"status\" appearance={SectionMode.CARD}>\n <DisplayField name=\"enabled\" />\n </Section>\n <Section name=\"destination\" appearance={SectionMode.CARD}>\n <DisplayField name=\"webhookUrl\" />\n </Section>\n <Section name=\"authentication\">\n <DisplayField name=\"authMethod\" />\n <DisplayField name=\"authCredential\" />\n <DisplayField name=\"authHeaderName\" />\n </Section>\n <Section name=\"format\">\n <DisplayField name=\"eventFormat\" />\n <ObjectScope name=\"eventFilter\">\n <DisplayField name=\"categories\" />\n <DisplayField name=\"severityMinimum\" />\n <DisplayField name=\"specificEventTypes\" />\n </ObjectScope>\n <ObjectScope name=\"exportProjection\">\n <DisplayField name=\"disclosedTiers\" />\n <DisplayField name=\"disclosedEventDataClasses\" />\n </ObjectScope>\n </Section>\n <Section name=\"advanced\" appearance={SectionMode.COLLAPSIBLE} defaultFocus={false}>\n <ObjectScope name=\"delivery\">\n <DisplayField name=\"retryAttempts\" />\n <DisplayField name=\"retryBackoffSeconds\" />\n <DisplayField name=\"timeoutSeconds\" />\n </ObjectScope>\n <DisplayField name=\"customHeaders\" />\n </Section>\n </DisplayLayout>\n );\n },\n summary: SiemExportSummaryTemplate,\n },\n fields: {\n enabled: siemExportFieldOverrides.enabled(schema),\n webhookUrl: siemExportFieldOverrides.webhookUrl(schema),\n authMethod: siemExportFieldOverrides.authMethod(schema),\n eventFormat: siemExportFieldOverrides.eventFormat(schema),\n authCredential: siemExportFieldOverrides.authCredential(schema),\n authHeaderName: siemExportFieldOverrides.authHeaderName(schema),\n },\n views: [\n [Op.READ, addressable()],\n // The edit this preset's form was always rendering, and nothing could save (#953): UPDATE became\n // the administrator's API_CALL door. Not addressable — it opens from the READ view.\n [Op.UPDATE, notAddressable()],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_DELIVERY_DLQ },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_DELIVERY_DLQ },\n ],\n },\n siemDeliveryDlqPolymorphicFactories[R.ORGANIZATION_SIEM_DELIVERY_DLQ],\n SiemDeliveryDlqBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: AlertTriangle,\n layout: {\n refs: {\n sections: ['overview', 'delivery', 'payload'],\n },\n display: SiemDlqDisplayTemplate,\n summary: SiemDlqSummaryTemplate,\n },\n fields: {\n // Same billing-style visibility as ORG_API_KEYS / SSO protocol — list rows stay compact; descriptions come from schema metadata when present.\n status: schema.shape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [SiemDeliveryDlqStatus.PENDING_RETRY]: { color: BadgeSemanticVariant.WARNING },\n [SiemDeliveryDlqStatus.EXHAUSTED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n [SiemDeliveryDlqStatus.DELIVERED]: { color: BadgeSemanticVariant.SUCCESS },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.failureReason,\n views: [\n // Failed-deliveries triage dashboard: status quick tabs + day-bucket\n // grouping (same generic capabilities as the webhook delivery log).\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'status',\n temporalGroupField: 'createdAt',\n },\n })],\n // Per-row retry: executes in place on the clicked row. Its backend reads\n // the target from the request-DTO `entryId` (not the URL id), so the row\n // id is injected into that body field via `rowTargetRequestField`.\n [SiemDeliveryDlq_Operations.RETRY_SINGLE, notAddressable({ iconOverride: RotateCw, rowTargetRequestField: 'entryId' })],\n // Whole-scope drain actions: rendered once in the list's collection-action\n // bar (not per row), confirm by risk (HIGH → confirm, CRITICAL → type-to-\n // confirm), and surface their `{ …count, message }` summary as a toast.\n [SiemDeliveryDlq_Operations.RETRY_ALL, notAddressable({ iconOverride: RefreshCw, actionScope: ResourceOperationActionScope.COLLECTION })],\n [SiemDeliveryDlq_Operations.PURGE_ALL, notAddressable({ iconOverride: Trash2, actionScope: ResourceOperationActionScope.COLLECTION })],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONFIG },\n ],\n },\n ssoConfigPolymorphicFactories[R.ORGANIZATION_SSO_CONFIG],\n SsoConfigBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: StandardIconReference.LOCK,\n layout: {\n // Settings-page chrome (Settings Hub): label-left / value-right rows. A scope-level\n // configuration record is READ far more often than it is edited — an operator opens it to\n // confirm a value — so the DISPLAY side needs the row treatment at least as much as the form.\n defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },\n // SSO policy — a scope-level configuration record; every field here is a decision. A settings pane is a list of decisions an operator came to TAKE, so its\n // writable fields are offered in place rather than behind a whole-pane edit mode. The set is\n // DERIVED (not primary key, not excludeFromUpdate, not hidden, not opted out), so a field\n // added to this schema tomorrow is covered without anyone remembering to decorate it.\n defaultInlineEdit: ResourceLayoutInlineEditDefault.WRITABLE_FIELDS,\n // And its empty rows say WHICH emptiness they are — \"None yet\" for a list with no members,\n // \"Not available\" for a computed value, \"No value\" for a field awaiting input — instead of one\n // em dash standing for all three. The surface policy's dash is right where a reader is scanning;\n // on a settings row, which is read one at a time to decide something, it is an answer that\n // refuses to answer.\n defaultEmptyValue: 'placeholder',\n // Seven groups of decisions — enforcement, domains, provisioning, session, audit,\n // emergency access, OAuth restrictions — and thirty fields between them. Stacked, the pane\n // is a scroll in which the thing you came to change is below the fold and the six you did\n // not is what you read on the way. Vertical tabs is what a settings surface of this size\n // does: one group at a time, all of them named and reachable in one click, and the rail\n // doubles as the answer to \"what else does SSO decide here\".\n //\n // Declared on the LAYOUT rather than on the seven sections: the section grouping keys on\n // `(mode, its mode-specific props)` over consecutive siblings, so per-section it is an\n // agreement N authors must keep, and a member that slips renders a second rail rather than\n // failing. It is also what lets the Settings Hub know the pane carries a rail of its own\n // and give it the wider frame — a prop inside a React template cannot be read by anything\n // that has to size the surface around it.\n defaultDisplaySectionAppearance: SectionMode.VERTICAL_TABS,\n refs: {\n sections: ['enforcement', 'domains', 'session', 'emergency', 'oauth'],\n },\n display: SsoConfigDisplayTemplate,\n summary: SsoConfigSummaryTemplate,\n },\n views: [\n [Op.READ, addressable()],\n // The edit an administrator opens this pane to make, which until now nothing could save: the\n // literal UPDATE was INTERNAL_CALL, so no route existed and the frontend's update resolution\n // fell through to whichever custom verb below borrowed UPDATE semantics. Not addressable — it\n // opens from the READ view, like SIEM export config's (#953).\n [Op.UPDATE, notAddressable()],\n // Domain ownership is the one publicly mutable part of this policy row (#424). The three\n // actions live beside the `domains` section: claim returns a DNS record to copy, verify\n // resolves it, revoke releases the domain for another scope to verify.\n [SsoConfig_Operations.CLAIM_DOMAIN, notAddressable({ iconOverride: Globe })],\n [SsoConfig_Operations.VERIFY_DOMAIN, notAddressable({ iconOverride: ShieldCheck })],\n [SsoConfig_Operations.REVOKE_DOMAIN, notAddressable({ iconOverride: Unlink })],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONNECTIONS },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONNECTIONS },\n ],\n },\n ssoConnectionPolymorphicFactories[R.ORGANIZATION_SSO_CONNECTIONS],\n SsoConnectionBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Fingerprint,\n layout: {\n refs: {\n sections: ['overview', 'oidc', 'saml', 'provisioning'],\n },\n display: SsoConnectionDisplayTemplate,\n summary: SsoConnectionSummaryTemplate,\n },\n fields: {\n protocol: schema.shape.protocol.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [SsoProtocol.OIDC]: { color: BadgeSemanticVariant.INFO },\n [SsoProtocol.SAML]: { color: BadgeSemanticVariant.SECONDARY },\n },\n }),\n },\n getFrontendResourceLabel: ({ currentObject }) => currentObject.displayName,\n views: [\n // A connection registry: provider, protocol, status. Comparable rows.\n // CARDS is the framework default and nothing had ever declared otherwise, so every\n // collection in the product rendered as stacked cards — ~150px per row, four people to a\n // viewport, with each field's help text and label repeated on every card. TABLE writes the\n // headers once. `userSwitchableDisplayMode` keeps cards one click away rather than removing\n // a rendering somebody may prefer on a narrow screen.\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n displayMode: CollectionDisplayMode.TABLE,\n userSwitchableDisplayMode: true,\n },\n })],\n [SsoConnection_Operations.TEST_CONNECTION, addressable({\n iconOverride: PlugZap,\n customView: ResourceLayoutPreset_Read_SsoSaml,\n })],\n [SsoConnection_Operations.DISCOVER_ENDPOINTS, addressable({\n iconOverride: Search,\n customView: ResourceLayoutPreset_Create_SamlWizard,\n })],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_PROVISIONING_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SCIM_PROVISIONING_CONFIG },\n ],\n },\n scimProvisioningConfigPolymorphicFactories[R.ORGANIZATION_SCIM_PROVISIONING_CONFIG],\n ScimProvisioningConfigBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: UserCog,\n layout: {\n // Settings-page chrome (Settings Hub): label-left / value-right rows. A scope-level\n // configuration record is READ far more often than it is edited — an operator opens it to\n // confirm a value — so the DISPLAY side needs the row treatment at least as much as the form.\n defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },\n // SCIM provisioning policy — a scope-level configuration record. A settings pane is a list of decisions an operator came to TAKE, so its\n // writable fields are offered in place rather than behind a whole-pane edit mode. The set is\n // DERIVED (not primary key, not excludeFromUpdate, not hidden, not opted out), so a field\n // added to this schema tomorrow is covered without anyone remembering to decorate it.\n defaultInlineEdit: ResourceLayoutInlineEditDefault.WRITABLE_FIELDS,\n // And its empty rows say WHICH emptiness they are — \"None yet\" for a list with no members,\n // \"Not available\" for a computed value, \"No value\" for a field awaiting input — instead of one\n // em dash standing for all three. The surface policy's dash is right where a reader is scanning;\n // on a settings row, which is read one at a time to decide something, it is an answer that\n // refuses to answer.\n defaultEmptyValue: 'placeholder',\n refs: {\n sections: ['overview', 'mapping', 'lifecycle'],\n },\n display: ScimProvisioningDisplayTemplate,\n summary: ScimProvisioningSummaryTemplate,\n },\n views: [\n [Op.READ, addressable()],\n // The four decisions on this row — create users, verify their email, deactivate on\n // deprovision, and the role they land with — are what an operator opens SCIM settings to set,\n // and none of them was settable: the literal UPDATE was INTERNAL_CALL. Not addressable — it\n // opens from the READ view, like SIEM export config's (#953).\n [Op.UPDATE, notAddressable()],\n ],\n variantOverrides: {\n [R.APPLICATION]: { views: [] },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehavior(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_TOKENS },\n ],\n },\n scimTokensPolymorphicFactories[R.ORGANIZATION_SCIM_TOKENS],\n ScimTokenBaseSchema,\n ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: KeyRound,\n getFrontendResourceLabel: ({ currentObject }) => currentObject.displayName,\n layout: {\n refs: {\n sections: ['overview', 'lifecycle'],\n },\n display: ScimTokenDisplayTemplate,\n summary: ScimTokenSummaryTemplate,\n },\n views: [\n // A token registry: name, status, last used, expiry. Comparable rows.\n // CARDS is the framework default and nothing had ever declared otherwise, so every\n // collection in the product rendered as stacked cards — ~150px per row, four people to a\n // viewport, with each field's help text and label repeated on every card. TABLE writes the\n // headers once. `userSwitchableDisplayMode` keeps cards one click away rather than removing\n // a rendering somebody may prefer on a narrow screen.\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n displayMode: CollectionDisplayMode.TABLE,\n userSwitchableDisplayMode: true,\n },\n })],\n [ScimTokens_Operations.GENERATE_TOKEN, notAddressable({ iconOverride: KeyRound })],\n [ScimTokens_Operations.REVOKE_TOKEN, notAddressable({ iconOverride: ShieldX })],\n [ScimTokens_Operations.ROTATE_TOKEN, notAddressable({ iconOverride: RotateCw })],\n ],\n }),\n ),\n };\n}\n\nexport function buildSecurityAdminPresets(main: Partial<ResourceUIBehavior>): Partial<ResourceUIBehavior> {\n return {\n /**\n * The APPLICATION-wide audit trail — the same rows the organization door serves, read across\n * every tenant instead of inside one.\n *\n * A separate resource rather than a polymorphic variant of `AUDIT_LOGS`, which is why this is a\n * second entry and not a `variantOverrides` block: the two doors differ in what a read MEANS, not\n * only in scope. Every read here is a declared crossing (`admitsCrossTenantPlatformAdministration`)\n * and emits one crossing event per tenant reached, and under an `INDEPENDENT_APPROVAL` audit\n * policy it additionally needs a two-person `applicationAccessGrants` window. None of that is true\n * of the tenant door.\n *\n * It shares `AuditableEvent_BaseSchema` and therefore both templates verbatim: an audit event is\n * the same object whichever door served it, and giving the operator a differently-shaped row would\n * be a difference with no meaning behind it.\n *\n * NO `EXPORT_AUDIT_LOGS`: the application factory declares READ, LIST and SEARCH and no custom\n * operation, so naming the export here would name an operation that does not exist.\n */\n [R.APPLICATION_AUDIT_LOGS]: resourceUIBehavior(applicationAuditLogsFactory, AuditableEvent_BaseSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: ShieldCheck,\n getFrontendResourceLabel: ({ currentObject }) => `${currentObject.eventType ?? 'Audit Event'} — ${currentObject.createdAt?.toISOString?.() ?? ''}`,\n layout: {\n refs: {\n sections: ['overview', 'actors', 'payload'],\n },\n display: AuditLogDisplayTemplate,\n summary: AuditLogSummaryTemplate,\n },\n views: [\n [Op.READ, notAddressable()],\n // Same dashboard capabilities as the tenant door — `severity` is in this operation's own\n // declared `filterFields` and `createdAt` is a summary field, so both cues resolve here too.\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'severity',\n temporalGroupField: 'createdAt',\n },\n })],\n [Op.SEARCH, addressable()],\n ],\n })),\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_EXPORT_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_EXPORT_CONFIG },\n ],\n },\n siemExportConfigPolymorphicFactories[R.ORGANIZATION_SIEM_EXPORT_CONFIG],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n fields: base.fields,\n views: [\n [Op.READ, addressable()],\n // The admin app's own edit door for the APP-scope row. The `main` preset above declares\n // the same view for the ORG-scope pane; this block is the SECOND lane, and the two carry\n // the same operation set for a reason — an app super-administrator reading a\n // configuration record here is reading it to change it.\n [Op.UPDATE, notAddressable()],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [[Op.READ, notAddressable()]],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SIEM_DELIVERY_DLQ },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SIEM_DELIVERY_DLQ },\n ],\n },\n siemDeliveryDlqPolymorphicFactories[R.ORGANIZATION_SIEM_DELIVERY_DLQ],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n fields: base.fields,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n views: [\n [Op.LIST, addressable({\n collectionDisplayConfig: {\n quickFilterField: 'status',\n temporalGroupField: 'createdAt',\n },\n })],\n // Per-row retry: executes in place on the clicked row. Its backend reads\n // the target from the request-DTO `entryId` (not the URL id), so the row\n // id is injected into that body field via `rowTargetRequestField`.\n [SiemDeliveryDlq_Operations.RETRY_SINGLE, notAddressable({ iconOverride: RotateCw, rowTargetRequestField: 'entryId' })],\n // Whole-scope drain actions: rendered once in the list's collection-action\n // bar (not per row), confirm by risk (HIGH → confirm, CRITICAL → type-to-\n // confirm), and surface their `{ …count, message }` summary as a toast.\n [SiemDeliveryDlq_Operations.RETRY_ALL, notAddressable({ iconOverride: RefreshCw, actionScope: ResourceOperationActionScope.COLLECTION })],\n [SiemDeliveryDlq_Operations.PURGE_ALL, notAddressable({ iconOverride: Trash2, actionScope: ResourceOperationActionScope.COLLECTION })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable({\n collectionDisplayConfig: {\n quickFilterField: 'status',\n temporalGroupField: 'createdAt',\n },\n })],\n ],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONFIG },\n ],\n },\n ssoConfigPolymorphicFactories[R.ORGANIZATION_SSO_CONFIG],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n views: [\n [Op.READ, addressable()],\n // The admin app's own edit door for the APP-scope row. The `main` preset above declares\n // the same view for the ORG-scope pane; this block is the SECOND lane, and the two carry\n // the same operation set for a reason — an app super-administrator reading a\n // configuration record here is reading it to change it.\n [Op.UPDATE, notAddressable()],\n [SsoConfig_Operations.CLAIM_DOMAIN, notAddressable({ iconOverride: Globe })],\n [SsoConfig_Operations.VERIFY_DOMAIN, notAddressable({ iconOverride: ShieldCheck })],\n [SsoConfig_Operations.REVOKE_DOMAIN, notAddressable({ iconOverride: Unlink })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [[Op.READ, notAddressable()]],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SSO_CONNECTIONS },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SSO_CONNECTIONS },\n ],\n },\n ssoConnectionPolymorphicFactories[R.ORGANIZATION_SSO_CONNECTIONS],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n fields: base.fields,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n views: [\n [Op.LIST, addressable()],\n [SsoConnection_Operations.TEST_CONNECTION, addressable({\n iconOverride: PlugZap,\n customView: ResourceLayoutPreset_Read_SsoSaml,\n })],\n [SsoConnection_Operations.DISCOVER_ENDPOINTS, addressable({\n iconOverride: Search,\n customView: ResourceLayoutPreset_Create_SamlWizard,\n })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n ],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_PROVISIONING_CONFIG },\n { parentResourceType: R.APPLICATION, resourceType: R.APPLICATION_SCIM_PROVISIONING_CONFIG },\n ],\n },\n scimProvisioningConfigPolymorphicFactories[R.ORGANIZATION_SCIM_PROVISIONING_CONFIG],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n views: [\n [Op.READ, addressable()],\n // The admin app's own edit door for the APP-scope row. The `main` preset above declares\n // the same view for the ORG-scope pane; this block is the SECOND lane, and the two carry\n // the same operation set for a reason — an app super-administrator reading a\n // configuration record here is reading it to change it.\n [Op.UPDATE, notAddressable()],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [[Op.READ, notAddressable()]],\n },\n },\n }),\n ),\n\n ...polymorphicResourceUIBehaviorFrom(\n {\n variants: [\n { parentResourceType: R.ORGANIZATIONS, resourceType: R.ORGANIZATION_SCIM_TOKENS },\n ],\n },\n scimTokensPolymorphicFactories[R.ORGANIZATION_SCIM_TOKENS],\n main,\n ({ base }) => ({\n icon: base.icon,\n layout: base.layout,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n views: [\n [Op.LIST, addressable()],\n [ScimTokens_Operations.GENERATE_TOKEN, notAddressable({ iconOverride: KeyRound })],\n [ScimTokens_Operations.REVOKE_TOKEN, notAddressable({ iconOverride: ShieldX })],\n [ScimTokens_Operations.ROTATE_TOKEN, notAddressable({ iconOverride: RotateCw })],\n ],\n variantOverrides: {\n [R.ORGANIZATIONS]: {\n views: [\n [Op.READ, notAddressable()],\n [Op.LIST, notAddressable()],\n ],\n },\n },\n }),\n ),\n\n [R.ORG_API_KEYS]: resourceUIBehaviorFrom(orgApiKeysFactory, main[R.ORG_API_KEYS]!, ({ base, opsVariantResolver }) => ({\n icon: base.icon,\n layout: base.layout,\n getFrontendResourceLabel: base.getFrontendResourceLabel,\n fields: base.fields,\n views: [\n [opsVariantResolver(Op.READ, 'admin'), notAddressable()],\n [opsVariantResolver(Op.LIST, 'admin'), notAddressable()],\n [opsVariantResolver(Op.SEARCH, 'admin'), notAddressable()],\n [opsVariantResolver(Op.CREATE, 'admin'), notAddressable()],\n [opsVariantResolver(Op.DELETE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.ROTATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.REGENERATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.DEACTIVATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.REACTIVATE, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.EXTEND_EXPIRY, 'admin'), notAddressable()],\n [opsVariantResolver(OrgApiKeys_Operations.USAGE_STATS, 'admin'), notAddressable()],\n ],\n })),\n };\n}\n\nexport const securityMainPresets = buildSecurityMainPresets();\nexport const securityAdminPresets = buildSecurityAdminPresets(securityMainPresets);\n\nexport const orgApiKeysMainResourceUIBehavior = securityMainPresets[R.ORG_API_KEYS]!;\nexport const orgApiKeysAdminResourceUIBehavior = securityAdminPresets[R.ORG_API_KEYS]!;\nexport const auditLogsMainResourceUIBehavior = securityMainPresets[R.AUDIT_LOGS]!;\nexport const applicationAuditLogsAdminResourceUIBehavior = securityAdminPresets[R.APPLICATION_AUDIT_LOGS]!;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.resource-presets.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"webhooks.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/webhooks.resource-presets.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAkDtE,wBAAgB,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAgHtE;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAiFxG;AAED,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,oBAAoB,6BAAiD,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { DisplayField, DisplayLayout, Section, polymorphicResourceUIBehavior, polymorphicResourceUIBehaviorFrom, ResourceOperationActionScope, } from '@wildo-ai/saas-frontend-lib';
|
|
3
|
-
import { BadgeSemanticVariant, EnumDisplayMode, SectionMode } from '@wildo-ai/zod-decorators';
|
|
2
|
+
import { DisplayField, DisplayLayout, Section, polymorphicResourceUIBehavior, polymorphicResourceUIBehaviorFrom, ResourceOperationActionScope, ResourceLayoutInlineEditDefault, } from '@wildo-ai/saas-frontend-lib';
|
|
3
|
+
import { BadgeSemanticVariant, DisplayChromeMode, EditChromeMode, EnumDisplayMode, SectionMode } from '@wildo-ai/zod-decorators';
|
|
4
4
|
import { Webhook, Activity, PlugZap, RotateCw, Trash2 } from 'lucide-react';
|
|
5
5
|
import { CoreResourceType as R, CoreResourceOperation as Op, WebhookConfig_Operations, M2MWebhookDeliveryLog_Operations, M2MWebhookDeliveryLogStatus, webhookConfigPolymorphicFactories, m2mWebhookDeliveryLogPolymorphicFactories, WebhookConfigBaseSchema, M2MWebhookDeliveryLogBaseSchema, } from '@wildo-ai/saas-models';
|
|
6
6
|
import { addressable, notAddressable } from './resource.config.utils.js';
|
|
@@ -37,11 +37,31 @@ export function buildWebhooksMainPresets() {
|
|
|
37
37
|
// variants; the APP variant surfaces no views but keeps the structural
|
|
38
38
|
// section refs so its spec documents the same slots.
|
|
39
39
|
layout: {
|
|
40
|
+
// Settings-page chrome (Settings Hub): label-left / value-right rows. A scope-level
|
|
41
|
+
// configuration record is READ far more often than it is edited — an operator opens it to
|
|
42
|
+
// confirm a value — so the DISPLAY side needs the row treatment at least as much as the form.
|
|
43
|
+
defaultChromeMode: { display: DisplayChromeMode.SETTINGS_ROW, summary: DisplayChromeMode.INLINE, edit: EditChromeMode.SETTINGS_ROW },
|
|
44
|
+
// Webhook delivery configuration — a scope-level configuration record. A settings pane is a list of decisions an operator came to TAKE, so its
|
|
45
|
+
// writable fields are offered in place rather than behind a whole-pane edit mode. The set is
|
|
46
|
+
// DERIVED (not primary key, not excludeFromUpdate, not hidden, not opted out), so a field
|
|
47
|
+
// added to this schema tomorrow is covered without anyone remembering to decorate it.
|
|
48
|
+
defaultInlineEdit: ResourceLayoutInlineEditDefault.WRITABLE_FIELDS,
|
|
49
|
+
// And its empty rows say WHICH emptiness they are — "None yet" for a list with no members,
|
|
50
|
+
// "Not available" for a computed value, "No value" for a field awaiting input — instead of one
|
|
51
|
+
// em dash standing for all three. The surface policy's dash is right where a reader is scanning;
|
|
52
|
+
// on a settings row, which is read one at a time to decide something, it is an answer that
|
|
53
|
+
// refuses to answer.
|
|
54
|
+
defaultEmptyValue: 'placeholder',
|
|
40
55
|
refs: { sections: ['status', 'endpoints', 'verification'] },
|
|
41
56
|
display: WebhookConfigDisplayTemplate,
|
|
42
57
|
},
|
|
43
58
|
views: [
|
|
44
59
|
[Op.READ, addressable()],
|
|
60
|
+
// The edit this pane exists for, which until now had no route: the literal UPDATE was
|
|
61
|
+
// REPOSITORY_ONLY, so the frontend's update resolution fell through to `testEndpoint`
|
|
62
|
+
// below — the one operation here that borrows UPDATE semantics, and one that FIRES a
|
|
63
|
+
// delivery. Not addressable; it opens from the READ view, like SIEM export config's (#953).
|
|
64
|
+
[Op.UPDATE, notAddressable()],
|
|
45
65
|
[WebhookConfig_Operations.TEST_ENDPOINT, notAddressable({ iconOverride: PlugZap })],
|
|
46
66
|
],
|
|
47
67
|
variantOverrides: {
|
|
@@ -112,6 +132,11 @@ export function buildWebhooksAdminPresets(main) {
|
|
|
112
132
|
fields: base.fields,
|
|
113
133
|
views: [
|
|
114
134
|
[Op.READ, addressable()],
|
|
135
|
+
// The edit this pane exists for, which until now had no route: the literal UPDATE was
|
|
136
|
+
// REPOSITORY_ONLY, so the frontend's update resolution fell through to `testEndpoint`
|
|
137
|
+
// below — the one operation here that borrows UPDATE semantics, and one that FIRES a
|
|
138
|
+
// delivery. Not addressable; it opens from the READ view, like SIEM export config's (#953).
|
|
139
|
+
[Op.UPDATE, notAddressable()],
|
|
115
140
|
[WebhookConfig_Operations.TEST_ENDPOINT, notAddressable({ iconOverride: PlugZap })],
|
|
116
141
|
],
|
|
117
142
|
variantOverrides: {
|