@wildo-ai/presets-components 1.1.1 → 1.1.3
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/.native.tsbuildinfo +1 -0
- package/dist/esm/components/actions/action-bar.d.ts.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 +1 -4
- package/dist/esm/components/actions/action-button.d.ts.map +1 -1
- package/dist/esm/components/actions/action-button.js +21 -5
- 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.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-browser.js +7 -3
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.js.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.labels.d.ts.map +1 -1
- 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.d.ts +18 -3
- package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/decision/approval.js +5 -3
- 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 +10 -2
- 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.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/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.map +1 -1
- package/dist/esm/components/ai-elements/meta/agent.js +23 -3
- 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/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.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-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 +10 -2
- 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.map +1 -1
- package/dist/esm/components/app/public-layout-main-container.js +52 -5
- 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/billing/billing-format.utils.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.labels.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.labels.d.ts.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.labels.d.ts.map +1 -1
- package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
- package/dist/esm/components/data-display/description-list.js +10 -7
- 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/formatters/display-field-bigdecimal.d.ts.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 +20 -1
- 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.labels.d.ts.map +1 -1
- 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.labels.d.ts.map +1 -1
- 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.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.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.labels.d.ts.map +1 -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.labels.d.ts.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.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.labels.d.ts.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.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 +3 -0
- 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/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/notification-indicator.d.ts.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.d.ts.map +1 -1
- package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts.map +1 -1
- package/dist/esm/components/feedback/celebration-overlay.d.ts.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.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 +7 -0
- 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 +5 -3
- package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
- package/dist/esm/components/feedback/notification-center.js +7 -5
- package/dist/esm/components/feedback/notification-center.js.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts.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.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 +2 -2
- 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.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.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/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/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/enum/radio.d.ts.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.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.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/form-field-checkbox-group.d.ts.map +1 -1
- 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/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 +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/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.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.js +8 -2
- package/dist/esm/components/navigation/app-level/menu-user-org.js.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.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.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 +22 -19
- 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 +11 -14
- 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-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 +32 -15
- 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/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 +41 -8
- 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 +1 -0
- 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.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.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.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.js +2 -2
- package/dist/esm/components/overlays/containers/sheet.js.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.js +43 -13
- package/dist/esm/components/sections/accordion.js.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.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
- package/dist/esm/components/sections/collapsible.js +17 -3
- package/dist/esm/components/sections/collapsible.js.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 +11 -7
- package/dist/esm/components/sections/content-section.js.map +1 -1
- package/dist/esm/components/sections/disclosure-nesting.d.ts +20 -0
- package/dist/esm/components/sections/disclosure-nesting.d.ts.map +1 -0
- package/dist/esm/components/sections/disclosure-nesting.js +20 -0
- package/dist/esm/components/sections/disclosure-nesting.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 +141 -10
- 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.labels.d.ts.map +1 -1
- package/dist/esm/components/typography/text.d.ts.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-error-pages.d.ts.map +1 -1
- package/dist/esm/config/preset-kits.d.ts.map +1 -1
- package/dist/esm/config/preset-kits.js +0 -4
- package/dist/esm/config/preset-kits.js.map +1 -1
- package/dist/esm/config/preset-navigation.d.ts.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-shell.js +0 -4
- package/dist/esm/config/preset-shell.js.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/presets.js +0 -1
- package/dist/esm/config/presets.js.map +1 -1
- package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -1
- package/dist/esm/config/resources/application.resource-presets.js +6 -6
- 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 +8 -8
- 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 +7 -7
- 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 +13 -7
- package/dist/esm/config/resources/identity.resource-presets.js.map +1 -1
- package/dist/esm/config/resources/index.d.ts +23 -1
- package/dist/esm/config/resources/index.d.ts.map +1 -1
- package/dist/esm/config/resources/index.js +24 -3
- 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 +8 -8
- 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.map +1 -1
- package/dist/esm/config/resources/security.resource-presets.js +104 -13
- 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/index.d.ts +0 -3
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +0 -3
- 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 +20 -1
- 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-presets.d.ts.map +1 -1
- package/dist/esm/registration/register-default-presets.js +0 -4
- package/dist/esm/registration/register-default-presets.js.map +1 -1
- package/dist/esm/shiki-subset.d.ts.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 +8 -3
- 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 +8 -5
- 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 +8 -3
- 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 +10 -4
- 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 +8 -3
- 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 +8 -3
- 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 +8 -3
- package/dist/esm/themes/trading.theme.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/dist/esm/.builder.pid +0 -9
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts +0 -13
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +0 -1
- package/dist/esm/components/billing/billing-plan-change-preview.js +0 -44
- package/dist/esm/components/billing/billing-plan-change-preview.js.map +0 -1
- package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts +0 -3
- package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts.map +0 -1
- package/dist/esm/components/billing/billing-plan-change-preview.labels.js +0 -36
- package/dist/esm/components/billing/billing-plan-change-preview.labels.js.map +0 -1
- package/dist/esm/components/billing/billing-promotion-code-input.d.ts +0 -10
- package/dist/esm/components/billing/billing-promotion-code-input.d.ts.map +0 -1
- package/dist/esm/components/billing/billing-promotion-code-input.js +0 -68
- package/dist/esm/components/billing/billing-promotion-code-input.js.map +0 -1
- package/dist/esm/components/billing/billing-promotion-code-input.labels.d.ts +0 -3
- package/dist/esm/components/billing/billing-promotion-code-input.labels.d.ts.map +0 -1
- package/dist/esm/components/billing/billing-promotion-code-input.labels.js +0 -14
- package/dist/esm/components/billing/billing-promotion-code-input.labels.js.map +0 -1
- package/dist/esm/config/resources/infrastructure.resource-presets.d.ts +0 -16
- package/dist/esm/config/resources/infrastructure.resource-presets.d.ts.map +0 -1
- package/dist/esm/config/resources/infrastructure.resource-presets.js +0 -110
- package/dist/esm/config/resources/infrastructure.resource-presets.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wildo-ai/presets-components",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE",
|
|
5
5
|
"description": "Component preset implementations for Wildo AI - community extensible",
|
|
6
6
|
"author": "Wildo AI",
|
|
@@ -70,10 +70,10 @@
|
|
|
70
70
|
"@codemirror/state": "^6.7.1",
|
|
71
71
|
"@codemirror/view": "^6.43.9",
|
|
72
72
|
"@lezer/highlight": "^1.2.3",
|
|
73
|
-
"@wildo-ai/presets-components-models": "1.1.
|
|
74
|
-
"@wildo-ai/saas-frontend-lib": "1.1.
|
|
75
|
-
"@wildo-ai/saas-models": "1.1.
|
|
76
|
-
"@wildo-ai/zod-decorators": "1.1.
|
|
73
|
+
"@wildo-ai/presets-components-models": "1.1.3",
|
|
74
|
+
"@wildo-ai/saas-frontend-lib": "1.1.3",
|
|
75
|
+
"@wildo-ai/saas-models": "1.1.3",
|
|
76
|
+
"@wildo-ai/zod-decorators": "1.1.3",
|
|
77
77
|
"micromark": "^4.0.2",
|
|
78
78
|
"pdfjs-dist": "^6.2.108",
|
|
79
79
|
"streamdown": "^1.6.11"
|
|
@@ -121,12 +121,12 @@
|
|
|
121
121
|
"input-otp": "^1.4.2",
|
|
122
122
|
"lodash": "^4.17.23",
|
|
123
123
|
"lottie-react": "^2.4.0",
|
|
124
|
-
"lucide-react": "^
|
|
124
|
+
"lucide-react": "^1.39.0",
|
|
125
125
|
"motion": "^12.23.24",
|
|
126
126
|
"nanoid": "^5.1.6",
|
|
127
127
|
"react": "^19.0.0",
|
|
128
128
|
"react-aria-components": "^1.12.1",
|
|
129
|
-
"react-day-picker": "^
|
|
129
|
+
"react-day-picker": "^10.0.1",
|
|
130
130
|
"react-dom": "^19.0.0",
|
|
131
131
|
"react-hook-form": "^7.51.2",
|
|
132
132
|
"react-resizable-panels": "^3.0.6",
|
package/dist/esm/.builder.pid
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"schemaVersion": 1,
|
|
3
|
-
"writerPid": 94875,
|
|
4
|
-
"orchestratorPid": 94847,
|
|
5
|
-
"orchestratorSessionId": null,
|
|
6
|
-
"orchestratorStartedAt": "Mon Aug 31 09:18:19 2026",
|
|
7
|
-
"distDirectory": "/Users/paulcayon/Projects/Wildo.ai/dev/wildo-ai/engine/presets-components/dist/esm",
|
|
8
|
-
"acquiredAt": "2026-08-31T07:18:20.656Z"
|
|
9
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PlanChangePreview (Preset)
|
|
3
|
-
*
|
|
4
|
-
* Shows prorated cost breakdown before a user commits to a plan change.
|
|
5
|
-
* Data comes from the provider's upcoming invoice API.
|
|
6
|
-
*
|
|
7
|
-
* Formatting: Uses useI18n() for locale-aware formatting
|
|
8
|
-
* of dates and monetary amounts, respecting user/org regional preferences.
|
|
9
|
-
*/
|
|
10
|
-
import { PlanChangePreviewProps } from '@wildo-ai/saas-frontend-lib';
|
|
11
|
-
import React from 'react';
|
|
12
|
-
export declare function PlanChangePreview({ amount, lineItems, periodStart, onConfirm, onCancel, isConfirming, isLoading, error, }: PlanChangePreviewProps): React.JSX.Element | null;
|
|
13
|
-
//# sourceMappingURL=billing-plan-change-preview.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-plan-change-preview.d.ts","sourceRoot":"","sources":["../../../../../src/components/billing/billing-plan-change-preview.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EACL,sBAAsB,EAavB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAkB,MAAM,OAAO,CAAC;AAKvC,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,KAAK,GACN,EAAE,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CA8HnD"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* PlanChangePreview (Preset)
|
|
4
|
-
*
|
|
5
|
-
* Shows prorated cost breakdown before a user commits to a plan change.
|
|
6
|
-
* Data comes from the provider's upcoming invoice API.
|
|
7
|
-
*
|
|
8
|
-
* Formatting: Uses useI18n() for locale-aware formatting
|
|
9
|
-
* of dates and monetary amounts, respecting user/org regional preferences.
|
|
10
|
-
*/
|
|
11
|
-
import { FrontendComponentType, SurfaceVariant, TypographyVariant, UIBehavior } from '@wildo-ai/presets-components-models';
|
|
12
|
-
import { Alert, AlertDescription, Button, ButtonVariants_Variant, cn, IconSize, Skeleton, StandardIconReference, useI18n, useIconRegistry, useUI, Surface, } from '@wildo-ai/saas-frontend-lib';
|
|
13
|
-
import { useMemo } from 'react';
|
|
14
|
-
import { useFormatMoney } from './billing-format.utils.js';
|
|
15
|
-
// ── Component ───────────────────────────────────────────────────────
|
|
16
|
-
export function PlanChangePreview({ amount, lineItems, periodStart, onConfirm, onCancel, isConfirming, isLoading, error, }) {
|
|
17
|
-
const { getRecipe } = useUI();
|
|
18
|
-
const { makeTrComponent, formatDate, isReady } = useI18n({
|
|
19
|
-
component: FrontendComponentType.LOW_LEVEL_BILLING_PLAN_CHANGE_PREVIEW,
|
|
20
|
-
});
|
|
21
|
-
const { renderIcon } = useIconRegistry();
|
|
22
|
-
const formatMoney = useFormatMoney();
|
|
23
|
-
const surfaceRecipe = getRecipe(UIBehavior.SURFACE, SurfaceVariant.BASE);
|
|
24
|
-
const headingRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.HEADING);
|
|
25
|
-
const descriptionRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);
|
|
26
|
-
const t = useMemo(() => makeTrComponent(FrontendComponentType.LOW_LEVEL_BILLING_PLAN_CHANGE_PREVIEW), [makeTrComponent]);
|
|
27
|
-
const isCredit = amount.amount < 0n;
|
|
28
|
-
/** Create an absolute value MoneyValue for display */
|
|
29
|
-
const absAmount = useMemo(() => ({
|
|
30
|
-
amount: isCredit ? -amount.amount : amount.amount,
|
|
31
|
-
currency: amount.currency,
|
|
32
|
-
decimals: amount.decimals,
|
|
33
|
-
}), [amount, isCredit]);
|
|
34
|
-
if (error) {
|
|
35
|
-
return (_jsx(Alert, { variant: "destructive", children: _jsx(AlertDescription, { children: error }) }));
|
|
36
|
-
}
|
|
37
|
-
if (isLoading) {
|
|
38
|
-
return (_jsx(Surface, { asChild: true, emitPolicyVars: false, variant: SurfaceVariant.BASE, children: _jsxs("div", { className: cn("p-card max-w-md mx-auto", surfaceRecipe.base), children: [_jsx(Skeleton, { className: "h-5 w-40 mb-section" }), _jsx("div", { className: "space-y-element mb-section", children: [0, 1, 2].map(i => (_jsxs("div", { className: "flex justify-between", children: [_jsx(Skeleton, { className: "h-4 w-32" }), _jsx(Skeleton, { className: "h-4 w-16" })] }, i))) }), _jsx("div", { className: "border-t border-border my-section" }), _jsxs("div", { className: "flex justify-between items-center mb-section", children: [_jsx(Skeleton, { className: "h-4 w-28" }), _jsx(Skeleton, { className: "h-6 w-20" })] }), _jsxs("div", { className: "flex gap-element", children: [_jsx(Skeleton, { className: "flex-1 h-10 rounded-md" }), _jsx(Skeleton, { className: "flex-1 h-10 rounded-md" })] })] }) }));
|
|
39
|
-
}
|
|
40
|
-
if (!isReady)
|
|
41
|
-
return null;
|
|
42
|
-
return (_jsx(Surface, { asChild: true, emitPolicyVars: false, variant: SurfaceVariant.BASE, children: _jsxs("div", { className: cn("p-card max-w-md mx-auto", surfaceRecipe.base), children: [_jsx("h3", { className: cn(headingRecipe.base, headingRecipe.sizes?.md, "mb-section"), children: t('title') }), lineItems.length > 0 && (_jsx("div", { className: "space-y-element mb-section", children: lineItems.map((item, idx) => (_jsxs("div", { className: cn("flex justify-between", descriptionRecipe.base), children: [_jsx("span", { className: descriptionRecipe.base, children: item.description }), _jsx("span", { className: cn("font-medium", item.amount.amount < 0n ? 'text-success' : 'text-foreground'), children: formatMoney(item.amount) })] }, idx))) })), _jsx("div", { className: "border-t border-border my-section" }), _jsxs("div", { className: "flex justify-between items-center mb-section", children: [_jsx("span", { className: cn(descriptionRecipe.base, "font-medium text-foreground"), children: isCredit ? t('creditApplied') : t('additionalCharge') }), _jsx("span", { className: cn("text-xl font-bold", isCredit ? 'text-success' : 'text-foreground'), children: formatMoney(absAmount) })] }), periodStart && (_jsxs("div", { className: cn("flex items-center gap-2 mb-section", descriptionRecipe.base), children: [renderIcon(StandardIconReference.CALENDAR, { size: IconSize.SM }), _jsxs("span", { children: [t('effectiveDate'), ": ", formatDate(periodStart)] })] })), _jsxs("div", { className: "flex gap-element", children: [_jsx(Button, { variant: ButtonVariants_Variant.GHOST, className: "flex-1", onClick: onCancel, disabled: isConfirming, children: t('cancel') }), _jsx(Button, { variant: ButtonVariants_Variant.DEFAULT, className: "flex-1", onClick: onConfirm, disabled: isConfirming, children: t('confirmChange') })] })] }) }));
|
|
43
|
-
}
|
|
44
|
-
//# sourceMappingURL=billing-plan-change-preview.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-plan-change-preview.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-plan-change-preview.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * PlanChangePreview (Preset)\n *\n * Shows prorated cost breakdown before a user commits to a plan change.\n * Data comes from the provider's upcoming invoice API.\n *\n * Formatting: Uses useI18n() for locale-aware formatting\n * of dates and monetary amounts, respecting user/org regional preferences.\n */\n\nimport { FrontendComponentType, SurfaceVariant, TypographyVariant, UIBehavior } from '@wildo-ai/presets-components-models';\nimport {\n PlanChangePreviewProps,\n Alert,\n AlertDescription,\n Button,\n ButtonVariants_Variant,\n cn,\n IconSize,\n Skeleton,\n StandardIconReference,\n useI18n,\n useIconRegistry,\n useUI,\n Surface,\n} from '@wildo-ai/saas-frontend-lib';\n\nimport type { MoneyValue } from '@wildo-ai/zod-decorators';\nimport React, { useMemo } from 'react';\nimport { useFormatMoney } from './billing-format.utils';\n\n// ── Component ───────────────────────────────────────────────────────\n\nexport function PlanChangePreview({\n amount,\n lineItems,\n periodStart,\n onConfirm,\n onCancel,\n isConfirming,\n isLoading,\n error,\n}: PlanChangePreviewProps): React.JSX.Element | null {\n const { getRecipe } = useUI();\n const { makeTrComponent, formatDate, isReady } = useI18n({\n component: FrontendComponentType.LOW_LEVEL_BILLING_PLAN_CHANGE_PREVIEW,\n });\n const { renderIcon } = useIconRegistry();\n const formatMoney = useFormatMoney();\n\n const surfaceRecipe = getRecipe(UIBehavior.SURFACE, SurfaceVariant.BASE);\n const headingRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.HEADING);\n const descriptionRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n const t = useMemo(\n () => makeTrComponent(FrontendComponentType.LOW_LEVEL_BILLING_PLAN_CHANGE_PREVIEW),\n [makeTrComponent],\n );\n\n const isCredit = amount.amount < 0n;\n\n /** Create an absolute value MoneyValue for display */\n const absAmount: MoneyValue = useMemo(() => ({\n amount: isCredit ? -amount.amount : amount.amount,\n currency: amount.currency,\n decimals: amount.decimals,\n }), [amount, isCredit]);\n\n if (error) {\n return (\n <Alert variant=\"destructive\">\n <AlertDescription>{error}</AlertDescription>\n </Alert>\n );\n }\n\n if (isLoading) {\n return (\n <Surface asChild emitPolicyVars={false} variant={SurfaceVariant.BASE}>\n <div className={cn(\"p-card max-w-md mx-auto\", surfaceRecipe.base)}>\n <Skeleton className=\"h-5 w-40 mb-section\" />\n <div className=\"space-y-element mb-section\">\n {[0, 1, 2].map(i => (\n <div key={i} className=\"flex justify-between\">\n <Skeleton className=\"h-4 w-32\" />\n <Skeleton className=\"h-4 w-16\" />\n </div>\n ))}\n </div>\n <div className=\"border-t border-border my-section\" />\n <div className=\"flex justify-between items-center mb-section\">\n <Skeleton className=\"h-4 w-28\" />\n <Skeleton className=\"h-6 w-20\" />\n </div>\n <div className=\"flex gap-element\">\n <Skeleton className=\"flex-1 h-10 rounded-md\" />\n <Skeleton className=\"flex-1 h-10 rounded-md\" />\n </div>\n </div>\n </Surface>\n );\n }\n\n if (!isReady) return null;\n\n return (\n <Surface asChild emitPolicyVars={false} variant={SurfaceVariant.BASE}>\n <div className={cn(\"p-card max-w-md mx-auto\", surfaceRecipe.base)}>\n {/* Header */}\n <h3 className={cn(headingRecipe.base, headingRecipe.sizes?.md, \"mb-section\")}>{t('title')}</h3>\n\n {/* Line items */}\n {lineItems.length > 0 && (\n <div className=\"space-y-element mb-section\">\n {lineItems.map((item, idx) => (\n <div key={idx} className={cn(\"flex justify-between\", descriptionRecipe.base)}>\n <span className={descriptionRecipe.base}>{item.description}</span>\n <span className={cn(\"font-medium\", item.amount.amount < 0n ? 'text-success' : 'text-foreground')}>\n {formatMoney(item.amount)}\n </span>\n </div>\n ))}\n </div>\n )}\n\n {/* Divider */}\n <div className=\"border-t border-border my-section\" />\n\n {/* Total */}\n <div className=\"flex justify-between items-center mb-section\">\n <span className={cn(descriptionRecipe.base, \"font-medium text-foreground\")}>\n {isCredit ? t('creditApplied') : t('additionalCharge')}\n </span>\n <span className={cn(\"text-xl font-bold\", isCredit ? 'text-success' : 'text-foreground')}>\n {formatMoney(absAmount)}\n </span>\n </div>\n\n {/* Effective date */}\n {periodStart && (\n <div className={cn(\"flex items-center gap-2 mb-section\", descriptionRecipe.base)}>\n {renderIcon(StandardIconReference.CALENDAR, { size: IconSize.SM })}\n <span>{t('effectiveDate')}: {formatDate(periodStart)}</span>\n </div>\n )}\n\n {/* Actions */}\n <div className=\"flex gap-element\">\n <Button\n variant={ButtonVariants_Variant.GHOST}\n className=\"flex-1\"\n onClick={onCancel}\n disabled={isConfirming}\n >\n {t('cancel')}\n </Button>\n <Button\n variant={ButtonVariants_Variant.DEFAULT}\n className=\"flex-1\"\n onClick={onConfirm}\n disabled={isConfirming}\n >\n {t('confirmChange')}\n </Button>\n </div>\n </div>\n </Surface>\n );\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-plan-change-preview.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/billing/billing-plan-change-preview.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAM7C,eAAO,MAAM,sCAAsC,EAAE,mBAAmB,EA6BvE,CAAC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { FrontendComponentType, LabelKind, registerComponentLabels, } from '@wildo-ai/presets-components-models';
|
|
2
|
-
// Companion-only label metadata for this component: keys + params + per-key
|
|
3
|
-
// purpose / kind / variable meaning. Statically scanned by the dev companion;
|
|
4
|
-
// NOT imported at runtime, so it never ships in the bundle.
|
|
5
|
-
export const LowLevelBillingPlanChangePreviewLabels = [
|
|
6
|
-
{ ref: 'title', kind: LabelKind.HEADING, purpose: 'Heading for the plan-change preview panel' },
|
|
7
|
-
{
|
|
8
|
-
ref: 'proratedAmount',
|
|
9
|
-
kind: LabelKind.LABEL,
|
|
10
|
-
purpose: 'Label for the prorated charge or credit owed for the plan change',
|
|
11
|
-
},
|
|
12
|
-
{ ref: 'effectiveDate', kind: LabelKind.LABEL, purpose: 'Label indicating when the plan change takes effect' },
|
|
13
|
-
{ ref: 'confirmChange', kind: LabelKind.BUTTON, purpose: 'Action that commits the previewed plan change' },
|
|
14
|
-
{ ref: 'cancel', kind: LabelKind.BUTTON, purpose: 'Action that dismisses the preview without changing the plan' },
|
|
15
|
-
{
|
|
16
|
-
ref: 'creditApplied',
|
|
17
|
-
kind: LabelKind.LABEL,
|
|
18
|
-
purpose: 'Label for proration credit returned to the customer by the change',
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
ref: 'additionalCharge',
|
|
22
|
-
kind: LabelKind.LABEL,
|
|
23
|
-
purpose: 'Label for the extra amount the customer owes for the change',
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
ref: 'lineItem',
|
|
27
|
-
kind: LabelKind.LABEL,
|
|
28
|
-
purpose: 'Renders one line of the proration breakdown with its description and amount',
|
|
29
|
-
params: [
|
|
30
|
-
{ key: 'description', meaning: 'proration line-item description' },
|
|
31
|
-
{ key: 'amount', meaning: 'monetary amount for that line item' },
|
|
32
|
-
],
|
|
33
|
-
},
|
|
34
|
-
];
|
|
35
|
-
registerComponentLabels(FrontendComponentType.LOW_LEVEL_BILLING_PLAN_CHANGE_PREVIEW, LowLevelBillingPlanChangePreviewLabels);
|
|
36
|
-
//# sourceMappingURL=billing-plan-change-preview.labels.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-plan-change-preview.labels.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-plan-change-preview.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,SAAS,EAET,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAE7C,4EAA4E;AAC5E,8EAA8E;AAC9E,4DAA4D;AAE5D,MAAM,CAAC,MAAM,sCAAsC,GAA0B;IAC3E,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,2CAA2C,EAAE;IAC/F;QACE,GAAG,EAAE,gBAAgB;QACrB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,kEAAkE;KAC5E;IACD,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,oDAAoD,EAAE;IAC9G,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,+CAA+C,EAAE;IAC1G,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,6DAA6D,EAAE;IACjH;QACE,GAAG,EAAE,eAAe;QACpB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,mEAAmE;KAC7E;IACD;QACE,GAAG,EAAE,kBAAkB;QACvB,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,6DAA6D;KACvE;IACD;QACE,GAAG,EAAE,UAAU;QACf,IAAI,EAAE,SAAS,CAAC,KAAK;QACrB,OAAO,EAAE,6EAA6E;QACtF,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,iCAAiC,EAAE;YAClE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,oCAAoC,EAAE;SACjE;KACF;CACF,CAAC;AACF,uBAAuB,CAAC,qBAAqB,CAAC,qCAAqC,EAAE,sCAAsC,CAAC,CAAC","sourcesContent":["import {\n FrontendComponentType,\n LabelKind,\n type LabellingUnitaryDef,\n registerComponentLabels,\n} from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + per-key\n// purpose / kind / variable meaning. Statically scanned by the dev companion;\n// NOT imported at runtime, so it never ships in the bundle.\n\nexport const LowLevelBillingPlanChangePreviewLabels: LabellingUnitaryDef[] = [\n { ref: 'title', kind: LabelKind.HEADING, purpose: 'Heading for the plan-change preview panel' },\n {\n ref: 'proratedAmount',\n kind: LabelKind.LABEL,\n purpose: 'Label for the prorated charge or credit owed for the plan change',\n },\n { ref: 'effectiveDate', kind: LabelKind.LABEL, purpose: 'Label indicating when the plan change takes effect' },\n { ref: 'confirmChange', kind: LabelKind.BUTTON, purpose: 'Action that commits the previewed plan change' },\n { ref: 'cancel', kind: LabelKind.BUTTON, purpose: 'Action that dismisses the preview without changing the plan' },\n {\n ref: 'creditApplied',\n kind: LabelKind.LABEL,\n purpose: 'Label for proration credit returned to the customer by the change',\n },\n {\n ref: 'additionalCharge',\n kind: LabelKind.LABEL,\n purpose: 'Label for the extra amount the customer owes for the change',\n },\n {\n ref: 'lineItem',\n kind: LabelKind.LABEL,\n purpose: 'Renders one line of the proration breakdown with its description and amount',\n params: [\n { key: 'description', meaning: 'proration line-item description' },\n { key: 'amount', meaning: 'monetary amount for that line item' },\n ],\n },\n];\nregisterComponentLabels(FrontendComponentType.LOW_LEVEL_BILLING_PLAN_CHANGE_PREVIEW, LowLevelBillingPlanChangePreviewLabels);\n"]}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PromotionCodeInput (Preset)
|
|
3
|
-
*
|
|
4
|
-
* Coupon/promo code entry field for the checkout flow.
|
|
5
|
-
* Validates the code and shows success/error states.
|
|
6
|
-
*/
|
|
7
|
-
import React from 'react';
|
|
8
|
-
import type { PromotionCodeInputProps } from '@wildo-ai/saas-frontend-lib';
|
|
9
|
-
export declare function PromotionCodeInput({ onApply, onRemove, appliedCode, disabled, billingError, }: PromotionCodeInputProps): React.JSX.Element | null;
|
|
10
|
-
//# sourceMappingURL=billing-promotion-code-input.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-promotion-code-input.d.ts","sourceRoot":"","sources":["../../../../../src/components/billing/billing-promotion-code-input.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAA4B,MAAM,OAAO,CAAC;AAejD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAI3E,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,EACP,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,YAAY,GACb,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAiHpD"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* PromotionCodeInput (Preset)
|
|
4
|
-
*
|
|
5
|
-
* Coupon/promo code entry field for the checkout flow.
|
|
6
|
-
* Validates the code and shows success/error states.
|
|
7
|
-
*/
|
|
8
|
-
import { useMemo, useState } from 'react';
|
|
9
|
-
import { ButtonSize, FrontendComponentType, IndicatorVariant, UIBehavior } from '@wildo-ai/presets-components-models';
|
|
10
|
-
import { cn, useI18n, useIconRegistry, StandardIconReference, IconSize, useUI, Button, ButtonVariants_Variant, InputRoot, Alert, AlertDescription, } from '@wildo-ai/saas-frontend-lib';
|
|
11
|
-
// ── Component ───────────────────────────────────────────────────────
|
|
12
|
-
export function PromotionCodeInput({ onApply, onRemove, appliedCode, disabled, billingError, }) {
|
|
13
|
-
const { getRecipe } = useUI();
|
|
14
|
-
const { makeTrComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_BILLING_PROMOTION_CODE_INPUT });
|
|
15
|
-
const { renderIcon } = useIconRegistry();
|
|
16
|
-
const indicatorSuccessRecipe = getRecipe(UIBehavior.INDICATOR, IndicatorVariant.SUCCESS);
|
|
17
|
-
const t = useMemo(() => makeTrComponent(FrontendComponentType.LOW_LEVEL_BILLING_PROMOTION_CODE_INPUT), [makeTrComponent]);
|
|
18
|
-
const [inputValue, setInputValue] = useState('');
|
|
19
|
-
const [isApplying, setIsApplying] = useState(false);
|
|
20
|
-
const [error, setError] = useState(null);
|
|
21
|
-
const handleApply = async () => {
|
|
22
|
-
if (!inputValue.trim())
|
|
23
|
-
return;
|
|
24
|
-
setIsApplying(true);
|
|
25
|
-
setError(null);
|
|
26
|
-
try {
|
|
27
|
-
const success = await onApply(inputValue.trim());
|
|
28
|
-
if (!success) {
|
|
29
|
-
setError(t('invalid'));
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
setInputValue('');
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
catch (err) {
|
|
36
|
-
const message = err instanceof Error ? err.message : undefined;
|
|
37
|
-
setError(message || t('invalid'));
|
|
38
|
-
}
|
|
39
|
-
finally {
|
|
40
|
-
setIsApplying(false);
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
const handleRemove = () => {
|
|
44
|
-
setError(null);
|
|
45
|
-
setInputValue('');
|
|
46
|
-
onRemove?.();
|
|
47
|
-
};
|
|
48
|
-
const handleKeyDown = (e) => {
|
|
49
|
-
if (e.key === 'Enter') {
|
|
50
|
-
e.preventDefault();
|
|
51
|
-
void handleApply();
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
if (billingError) {
|
|
55
|
-
return (_jsx(Alert, { variant: "destructive", children: _jsx(AlertDescription, { children: billingError }) }));
|
|
56
|
-
}
|
|
57
|
-
if (!isReady)
|
|
58
|
-
return null;
|
|
59
|
-
if (appliedCode) {
|
|
60
|
-
return (_jsxs("div", { className: cn("flex items-center gap-2 px-3 py-2", indicatorSuccessRecipe.base), children: [renderIcon(StandardIconReference.CHECK, { size: IconSize.SM }), _jsxs("span", { className: "flex-1 text-sm font-medium", children: [appliedCode, " \u2014 ", t('applied')] }), onRemove && (_jsx(Button, { variant: ButtonVariants_Variant.GHOST, size: ButtonSize.SM, onClick: handleRemove, children: t('remove') }))] }));
|
|
61
|
-
}
|
|
62
|
-
const inputId = 'billing-promo-code-input';
|
|
63
|
-
return (_jsxs("div", { className: "space-y-1", children: [_jsxs("div", { className: "flex gap-2", children: [_jsx(InputRoot, { id: inputId, type: "text", className: "flex-1", placeholder: t('placeholder'), value: inputValue, onChange: e => {
|
|
64
|
-
setInputValue(e.target.value);
|
|
65
|
-
setError(null);
|
|
66
|
-
}, onKeyDown: handleKeyDown, disabled: disabled || isApplying, "aria-label": t('placeholder'), "aria-invalid": error != null, "aria-describedby": error ? `${inputId}-error` : undefined }), _jsx(Button, { variant: ButtonVariants_Variant.SECONDARY, onClick: handleApply, disabled: disabled || isApplying || !inputValue.trim(), children: t('apply') })] }), error && (_jsx("p", { id: `${inputId}-error`, className: "text-xs text-destructive", role: "alert", children: error }))] }));
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=billing-promotion-code-input.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-promotion-code-input.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-promotion-code-input.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * PromotionCodeInput (Preset)\n *\n * Coupon/promo code entry field for the checkout flow.\n * Validates the code and shows success/error states.\n */\n\nimport React, { useMemo, useState } from 'react';\nimport { ButtonSize, FrontendComponentType, IndicatorVariant, UIBehavior } from '@wildo-ai/presets-components-models';\nimport {\n cn,\n useI18n,\n useIconRegistry,\n StandardIconReference,\n IconSize,\n useUI,\n Button,\n ButtonVariants_Variant,\n InputRoot,\n Alert,\n AlertDescription,\n} from '@wildo-ai/saas-frontend-lib';\nimport type { PromotionCodeInputProps } from '@wildo-ai/saas-frontend-lib';\n\n// ── Component ───────────────────────────────────────────────────────\n\nexport function PromotionCodeInput({\n onApply,\n onRemove,\n appliedCode,\n disabled,\n billingError,\n}: PromotionCodeInputProps): React.JSX.Element | null {\n const { getRecipe } = useUI();\n const { makeTrComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_BILLING_PROMOTION_CODE_INPUT });\n const { renderIcon } = useIconRegistry();\n\n const indicatorSuccessRecipe = getRecipe(UIBehavior.INDICATOR, IndicatorVariant.SUCCESS);\n\n const t = useMemo(\n () => makeTrComponent(FrontendComponentType.LOW_LEVEL_BILLING_PROMOTION_CODE_INPUT),\n [makeTrComponent],\n );\n\n const [inputValue, setInputValue] = useState('');\n const [isApplying, setIsApplying] = useState(false);\n const [error, setError] = useState<string | null>(null);\n\n const handleApply = async () => {\n if (!inputValue.trim()) return;\n setIsApplying(true);\n setError(null);\n\n try {\n const success = await onApply(inputValue.trim());\n if (!success) {\n setError(t('invalid'));\n } else {\n setInputValue('');\n }\n } catch (err: unknown) {\n const message = err instanceof Error ? err.message : undefined;\n setError(message || t('invalid'));\n } finally {\n setIsApplying(false);\n }\n };\n\n const handleRemove = () => {\n setError(null);\n setInputValue('');\n onRemove?.();\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n void handleApply();\n }\n };\n\n if (billingError) {\n return (\n <Alert variant=\"destructive\">\n <AlertDescription>{billingError}</AlertDescription>\n </Alert>\n );\n }\n\n if (!isReady) return null;\n\n if (appliedCode) {\n return (\n <div className={cn(\"flex items-center gap-2 px-3 py-2\", indicatorSuccessRecipe.base)}>\n {renderIcon(StandardIconReference.CHECK, { size: IconSize.SM })}\n <span className=\"flex-1 text-sm font-medium\">\n {appliedCode} — {t('applied')}\n </span>\n {onRemove && (\n <Button\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.SM}\n onClick={handleRemove}\n >\n {t('remove')}\n </Button>\n )}\n </div>\n );\n }\n\n const inputId = 'billing-promo-code-input';\n\n return (\n <div className=\"space-y-1\">\n <div className=\"flex gap-2\">\n <InputRoot\n id={inputId}\n type=\"text\"\n className=\"flex-1\"\n placeholder={t('placeholder')}\n value={inputValue}\n onChange={e => {\n setInputValue(e.target.value);\n setError(null);\n }}\n onKeyDown={handleKeyDown}\n disabled={disabled || isApplying}\n aria-label={t('placeholder')}\n aria-invalid={error != null}\n aria-describedby={error ? `${inputId}-error` : undefined}\n />\n <Button\n variant={ButtonVariants_Variant.SECONDARY}\n onClick={handleApply}\n disabled={disabled || isApplying || !inputValue.trim()}\n >\n {t('apply')}\n </Button>\n </div>\n {error && (\n <p id={`${inputId}-error`} className=\"text-xs text-destructive\" role=\"alert\">{error}</p>\n )}\n </div>\n );\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-promotion-code-input.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/billing/billing-promotion-code-input.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAM7C,eAAO,MAAM,uCAAuC,EAAE,mBAAmB,EAOxE,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { FrontendComponentType, LabelKind, registerComponentLabels, } from '@wildo-ai/presets-components-models';
|
|
2
|
-
// Companion-only label metadata for this component: keys + params + per-key
|
|
3
|
-
// purpose / kind / variable meaning. Statically scanned by the dev companion;
|
|
4
|
-
// NOT imported at runtime, so it never ships in the bundle.
|
|
5
|
-
export const LowLevelBillingPromotionCodeInputLabels = [
|
|
6
|
-
{ ref: 'placeholder', kind: LabelKind.PLACEHOLDER, purpose: 'Prompt inside the empty promotion-code input field' },
|
|
7
|
-
{ ref: 'apply', kind: LabelKind.BUTTON, purpose: 'Action that submits the entered promotion code for validation' },
|
|
8
|
-
{ ref: 'applied', kind: LabelKind.MESSAGE, purpose: 'Confirmation that the promotion code was accepted' },
|
|
9
|
-
{ ref: 'invalid', kind: LabelKind.MESSAGE, purpose: 'Error shown when the entered promotion code is not recognised' },
|
|
10
|
-
{ ref: 'expired', kind: LabelKind.MESSAGE, purpose: 'Error shown when the promotion code is no longer valid' },
|
|
11
|
-
{ ref: 'remove', kind: LabelKind.BUTTON, purpose: 'Action that clears an already-applied promotion code' },
|
|
12
|
-
];
|
|
13
|
-
registerComponentLabels(FrontendComponentType.LOW_LEVEL_BILLING_PROMOTION_CODE_INPUT, LowLevelBillingPromotionCodeInputLabels);
|
|
14
|
-
//# sourceMappingURL=billing-promotion-code-input.labels.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing-promotion-code-input.labels.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-promotion-code-input.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,SAAS,EAET,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAE7C,4EAA4E;AAC5E,8EAA8E;AAC9E,4DAA4D;AAE5D,MAAM,CAAC,MAAM,uCAAuC,GAA0B;IAC5E,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,oDAAoD,EAAE;IAClH,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,+DAA+D,EAAE;IAClH,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,mDAAmD,EAAE;IACzG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,+DAA+D,EAAE;IACrH,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,wDAAwD,EAAE;IAC9G,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,sDAAsD,EAAE;CAC3G,CAAC;AACF,uBAAuB,CAAC,qBAAqB,CAAC,sCAAsC,EAAE,uCAAuC,CAAC,CAAC","sourcesContent":["import {\n FrontendComponentType,\n LabelKind,\n type LabellingUnitaryDef,\n registerComponentLabels,\n} from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + per-key\n// purpose / kind / variable meaning. Statically scanned by the dev companion;\n// NOT imported at runtime, so it never ships in the bundle.\n\nexport const LowLevelBillingPromotionCodeInputLabels: LabellingUnitaryDef[] = [\n { ref: 'placeholder', kind: LabelKind.PLACEHOLDER, purpose: 'Prompt inside the empty promotion-code input field' },\n { ref: 'apply', kind: LabelKind.BUTTON, purpose: 'Action that submits the entered promotion code for validation' },\n { ref: 'applied', kind: LabelKind.MESSAGE, purpose: 'Confirmation that the promotion code was accepted' },\n { ref: 'invalid', kind: LabelKind.MESSAGE, purpose: 'Error shown when the entered promotion code is not recognised' },\n { ref: 'expired', kind: LabelKind.MESSAGE, purpose: 'Error shown when the promotion code is no longer valid' },\n { ref: 'remove', kind: LabelKind.BUTTON, purpose: 'Action that clears an already-applied promotion code' },\n];\nregisterComponentLabels(FrontendComponentType.LOW_LEVEL_BILLING_PROMOTION_CODE_INPUT, LowLevelBillingPromotionCodeInputLabels);\n"]}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Infrastructure / Queue — Resource frontend presets (Platform scope)
|
|
3
|
-
*
|
|
4
|
-
* Domain: JOB_EXECUTIONS, JOB_PAYLOAD_STORAGE
|
|
5
|
-
*
|
|
6
|
-
* These resources are **Platform-only** — they belong to the Wildo platform layer (companion,
|
|
7
|
-
* internal ops dashboards, CLI), not to end-user or app-admin UIs. Field-level `{primitive}UI`
|
|
8
|
-
* is defined so any platform surface that renders jobs gets consistent badges and truncation.
|
|
9
|
-
*
|
|
10
|
-
* **`views` is intentionally empty:** when the platform wires a job browser, append the
|
|
11
|
-
* appropriate `[operation, addressable() | notAddressable()]` entries here.
|
|
12
|
-
*/
|
|
13
|
-
import type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';
|
|
14
|
-
export declare function buildInfrastructurePlatformPresets(): Partial<ResourceUIBehavior>;
|
|
15
|
-
export declare const infrastructurePlatformPresets: Partial<ResourceUIBehavior>;
|
|
16
|
-
//# sourceMappingURL=infrastructure.resource-presets.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"infrastructure.resource-presets.d.ts","sourceRoot":"","sources":["../../../../../src/config/resources/infrastructure.resource-presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAmBtE,wBAAgB,kCAAkC,IAAI,OAAO,CAAC,kBAAkB,CAAC,CA4FhF;AAED,eAAO,MAAM,6BAA6B,6BAAuC,CAAC"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Infrastructure / Queue — Resource frontend presets (Platform scope)
|
|
3
|
-
*
|
|
4
|
-
* Domain: JOB_EXECUTIONS, JOB_PAYLOAD_STORAGE
|
|
5
|
-
*
|
|
6
|
-
* These resources are **Platform-only** — they belong to the Wildo platform layer (companion,
|
|
7
|
-
* internal ops dashboards, CLI), not to end-user or app-admin UIs. Field-level `{primitive}UI`
|
|
8
|
-
* is defined so any platform surface that renders jobs gets consistent badges and truncation.
|
|
9
|
-
*
|
|
10
|
-
* **`views` is intentionally empty:** when the platform wires a job browser, append the
|
|
11
|
-
* appropriate `[operation, addressable() | notAddressable()]` entries here.
|
|
12
|
-
*/
|
|
13
|
-
import { resourceUIBehavior } from '@wildo-ai/saas-frontend-lib';
|
|
14
|
-
import { BadgeSemanticVariant, EnumDisplayMode, NumberDisplayMode, StringDisplayMode, } from '@wildo-ai/zod-decorators';
|
|
15
|
-
import { Cog, HardDrive } from 'lucide-react';
|
|
16
|
-
import { CoreResourceType as R, jobExecution_ResourceConfiguration_InitializationFactory as jobExecutionFactory, jobPayloadStorage_ResourceConfiguration_InitializationFactory as jobPayloadStorageFactory, JobExecutionSchema, JobPayloadStorageSchema, JobExecutionStatus, JobPriority, } from '@wildo-ai/saas-models';
|
|
17
|
-
export function buildInfrastructurePlatformPresets() {
|
|
18
|
-
return {
|
|
19
|
-
[R.JOB_EXECUTIONS]: resourceUIBehavior(jobExecutionFactory, JobExecutionSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
|
|
20
|
-
icon: Cog,
|
|
21
|
-
emptyState: { primaryAction: false },
|
|
22
|
-
getFrontendResourceLabel: ({ currentObject }) => `Job ${currentObject.jobId}`,
|
|
23
|
-
fields: {
|
|
24
|
-
jobId: schemaShape.jobId.stringUI({
|
|
25
|
-
display: { displayMode: StringDisplayMode.COPY, showDescription: true },
|
|
26
|
-
edit: { showDescription: true },
|
|
27
|
-
}),
|
|
28
|
-
jobType: schemaShape.jobType.enumUI({
|
|
29
|
-
display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },
|
|
30
|
-
edit: { showDescription: true },
|
|
31
|
-
defaultColor: BadgeSemanticVariant.SECONDARY,
|
|
32
|
-
}),
|
|
33
|
-
status: schemaShape.status.enumUI({
|
|
34
|
-
display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },
|
|
35
|
-
edit: { showDescription: true },
|
|
36
|
-
values: {
|
|
37
|
-
[JobExecutionStatus.PENDING]: { color: BadgeSemanticVariant.SECONDARY },
|
|
38
|
-
[JobExecutionStatus.QUEUED]: { color: BadgeSemanticVariant.SECONDARY },
|
|
39
|
-
[JobExecutionStatus.PROCESSING]: { color: BadgeSemanticVariant.INFO },
|
|
40
|
-
[JobExecutionStatus.COMPLETED]: { color: BadgeSemanticVariant.SUCCESS },
|
|
41
|
-
[JobExecutionStatus.FAILED]: { color: BadgeSemanticVariant.DESTRUCTIVE },
|
|
42
|
-
[JobExecutionStatus.RETRYING]: { color: BadgeSemanticVariant.WARNING },
|
|
43
|
-
[JobExecutionStatus.DEAD_LETTER]: { color: BadgeSemanticVariant.DESTRUCTIVE },
|
|
44
|
-
[JobExecutionStatus.CANCELLED]: { color: BadgeSemanticVariant.OUTLINE },
|
|
45
|
-
},
|
|
46
|
-
}),
|
|
47
|
-
initiatedBy: schemaShape.initiatedBy.enumUI({
|
|
48
|
-
display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },
|
|
49
|
-
edit: { showDescription: true },
|
|
50
|
-
defaultColor: BadgeSemanticVariant.OUTLINE,
|
|
51
|
-
}),
|
|
52
|
-
priority: schemaShape.priority.enumUI({
|
|
53
|
-
display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },
|
|
54
|
-
edit: { showDescription: true },
|
|
55
|
-
values: {
|
|
56
|
-
[JobPriority.LOW]: { color: BadgeSemanticVariant.SECONDARY },
|
|
57
|
-
[JobPriority.NORMAL]: { color: BadgeSemanticVariant.DEFAULT },
|
|
58
|
-
[JobPriority.HIGH]: { color: BadgeSemanticVariant.WARNING },
|
|
59
|
-
[JobPriority.CRITICAL]: { color: BadgeSemanticVariant.DESTRUCTIVE },
|
|
60
|
-
},
|
|
61
|
-
}),
|
|
62
|
-
operationPathKey: schemaShape.operationPathKey.stringUI({
|
|
63
|
-
display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 56, showDescription: true },
|
|
64
|
-
edit: { showDescription: true },
|
|
65
|
-
}),
|
|
66
|
-
batchRef: schemaShape.batchRef.stringUI({
|
|
67
|
-
display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 40, showDescription: true },
|
|
68
|
-
edit: { showDescription: true },
|
|
69
|
-
}),
|
|
70
|
-
domainCategory: schemaShape.domainCategory.stringUI({
|
|
71
|
-
display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 32, showDescription: true },
|
|
72
|
-
edit: { showDescription: true },
|
|
73
|
-
}),
|
|
74
|
-
queueName: schemaShape.queueName.stringUI({
|
|
75
|
-
display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 48, showDescription: true },
|
|
76
|
-
edit: { showDescription: true },
|
|
77
|
-
}),
|
|
78
|
-
retryCount: schemaShape.retryCount.numberUI({
|
|
79
|
-
display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },
|
|
80
|
-
edit: { showDescription: true },
|
|
81
|
-
}),
|
|
82
|
-
maxRetries: schemaShape.maxRetries.numberUI({
|
|
83
|
-
display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },
|
|
84
|
-
edit: { showDescription: true },
|
|
85
|
-
}),
|
|
86
|
-
durationMs: schemaShape.durationMs.numberUI({
|
|
87
|
-
display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },
|
|
88
|
-
edit: { showDescription: true },
|
|
89
|
-
}),
|
|
90
|
-
},
|
|
91
|
-
// See module JSDoc: no shell routes until product wires a job/payload browser.
|
|
92
|
-
views: [],
|
|
93
|
-
})),
|
|
94
|
-
[R.JOB_PAYLOAD_STORAGE]: resourceUIBehavior(jobPayloadStorageFactory, JobPayloadStorageSchema, ({ schema, schemaShape, opsVariantResolver }) => ({
|
|
95
|
-
icon: HardDrive,
|
|
96
|
-
emptyState: { primaryAction: false },
|
|
97
|
-
getFrontendResourceLabel: ({ currentObject }) => `Payload ${currentObject.storageId}`,
|
|
98
|
-
fields: {
|
|
99
|
-
storageId: schemaShape.storageId.stringUI({
|
|
100
|
-
display: { displayMode: StringDisplayMode.COPY, showDescription: true },
|
|
101
|
-
edit: { showDescription: true },
|
|
102
|
-
}),
|
|
103
|
-
},
|
|
104
|
-
// See module JSDoc: no shell routes until product wires a job/payload browser.
|
|
105
|
-
views: [],
|
|
106
|
-
})),
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
export const infrastructurePlatformPresets = buildInfrastructurePlatformPresets();
|
|
110
|
-
//# sourceMappingURL=infrastructure.resource-presets.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"infrastructure.resource-presets.js","sourceRoot":"","sources":["../../../../../src/config/resources/infrastructure.resource-presets.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Infrastructure / Queue — Resource frontend presets (Platform scope)\n *\n * Domain: JOB_EXECUTIONS, JOB_PAYLOAD_STORAGE\n *\n * These resources are **Platform-only** — they belong to the Wildo platform layer (companion,\n * internal ops dashboards, CLI), not to end-user or app-admin UIs. Field-level `{primitive}UI`\n * is defined so any platform surface that renders jobs gets consistent badges and truncation.\n *\n * **`views` is intentionally empty:** when the platform wires a job browser, append the\n * appropriate `[operation, addressable() | notAddressable()]` entries here.\n */\n\nimport type { ResourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport { resourceUIBehavior } from '@wildo-ai/saas-frontend-lib';\nimport {\n BadgeSemanticVariant,\n EnumDisplayMode,\n NumberDisplayMode,\n StringDisplayMode,\n} from '@wildo-ai/zod-decorators';\nimport { Cog, HardDrive } from 'lucide-react';\nimport {\n CoreResourceType as R,\n jobExecution_ResourceConfiguration_InitializationFactory as jobExecutionFactory,\n jobPayloadStorage_ResourceConfiguration_InitializationFactory as jobPayloadStorageFactory,\n JobExecutionSchema,\n JobPayloadStorageSchema,\n JobExecutionStatus,\n JobPriority,\n} from '@wildo-ai/saas-models';\n\nexport function buildInfrastructurePlatformPresets(): Partial<ResourceUIBehavior> {\n return {\n [R.JOB_EXECUTIONS]: resourceUIBehavior(jobExecutionFactory, JobExecutionSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: Cog,\n emptyState: { primaryAction: false },\n getFrontendResourceLabel: ({ currentObject }) => `Job ${currentObject.jobId}`,\n fields: {\n jobId: schemaShape.jobId.stringUI({\n display: { displayMode: StringDisplayMode.COPY, showDescription: true },\n edit: { showDescription: true },\n }),\n jobType: schemaShape.jobType.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n defaultColor: BadgeSemanticVariant.SECONDARY,\n }),\n status: schemaShape.status.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [JobExecutionStatus.PENDING]: { color: BadgeSemanticVariant.SECONDARY },\n [JobExecutionStatus.QUEUED]: { color: BadgeSemanticVariant.SECONDARY },\n [JobExecutionStatus.PROCESSING]: { color: BadgeSemanticVariant.INFO },\n [JobExecutionStatus.COMPLETED]: { color: BadgeSemanticVariant.SUCCESS },\n [JobExecutionStatus.FAILED]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n [JobExecutionStatus.RETRYING]: { color: BadgeSemanticVariant.WARNING },\n [JobExecutionStatus.DEAD_LETTER]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n [JobExecutionStatus.CANCELLED]: { color: BadgeSemanticVariant.OUTLINE },\n },\n }),\n initiatedBy: schemaShape.initiatedBy.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n defaultColor: BadgeSemanticVariant.OUTLINE,\n }),\n priority: schemaShape.priority.enumUI({\n display: { displayMode: EnumDisplayMode.BADGE, showDescription: true },\n edit: { showDescription: true },\n values: {\n [JobPriority.LOW]: { color: BadgeSemanticVariant.SECONDARY },\n [JobPriority.NORMAL]: { color: BadgeSemanticVariant.DEFAULT },\n [JobPriority.HIGH]: { color: BadgeSemanticVariant.WARNING },\n [JobPriority.CRITICAL]: { color: BadgeSemanticVariant.DESTRUCTIVE },\n },\n }),\n operationPathKey: schemaShape.operationPathKey.stringUI({\n display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 56, showDescription: true },\n edit: { showDescription: true },\n }),\n batchRef: schemaShape.batchRef.stringUI({\n display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 40, showDescription: true },\n edit: { showDescription: true },\n }),\n domainCategory: schemaShape.domainCategory.stringUI({\n display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 32, showDescription: true },\n edit: { showDescription: true },\n }),\n queueName: schemaShape.queueName.stringUI({\n display: { displayMode: StringDisplayMode.TRUNCATE, truncateLength: 48, showDescription: true },\n edit: { showDescription: true },\n }),\n retryCount: schemaShape.retryCount.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n maxRetries: schemaShape.maxRetries.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n durationMs: schemaShape.durationMs.numberUI({\n display: { displayMode: NumberDisplayMode.FORMATTED, showDescription: true },\n edit: { showDescription: true },\n }),\n },\n // See module JSDoc: no shell routes until product wires a job/payload browser.\n views: [],\n })),\n\n [R.JOB_PAYLOAD_STORAGE]: resourceUIBehavior(jobPayloadStorageFactory, JobPayloadStorageSchema, ({ schema, schemaShape, opsVariantResolver }) => ({\n icon: HardDrive,\n emptyState: { primaryAction: false },\n getFrontendResourceLabel: ({ currentObject }) => `Payload ${currentObject.storageId}`,\n fields: {\n storageId: schemaShape.storageId.stringUI({\n display: { displayMode: StringDisplayMode.COPY, showDescription: true },\n edit: { showDescription: true },\n }),\n },\n // See module JSDoc: no shell routes until product wires a job/payload browser.\n views: [],\n })),\n };\n}\n\nexport const infrastructurePlatformPresets = buildInfrastructurePlatformPresets();\n\n"]}
|