@wildo-ai/presets-components 1.0.1
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 +8 -0
- package/dist/esm/components/actions/action-bar.d.ts.map +1 -0
- package/dist/esm/components/actions/action-bar.js +125 -0
- package/dist/esm/components/actions/action-bar.js.map +1 -0
- package/dist/esm/components/actions/action-button.d.ts +8 -0
- package/dist/esm/components/actions/action-button.d.ts.map +1 -0
- package/dist/esm/components/actions/action-button.js +36 -0
- package/dist/esm/components/actions/action-button.js.map +1 -0
- package/dist/esm/components/actions/button-group.d.ts +7 -0
- package/dist/esm/components/actions/button-group.d.ts.map +1 -0
- package/dist/esm/components/actions/button-group.js +34 -0
- package/dist/esm/components/actions/button-group.js.map +1 -0
- package/dist/esm/components/actions/button.d.ts +5 -0
- package/dist/esm/components/actions/button.d.ts.map +1 -0
- package/dist/esm/components/actions/button.js +38 -0
- package/dist/esm/components/actions/button.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts +3 -0
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.js +136 -0
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/artifact.d.ts +13 -0
- package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/artifact.js +52 -0
- package/dist/esm/components/ai-elements/artifacts/artifact.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/code-block.d.ts +17 -0
- package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/code-block.js +114 -0
- package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/image.d.ts +4 -0
- package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/image.js +4 -0
- package/dist/esm/components/ai-elements/artifacts/image.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts +31 -0
- package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/web-preview.js +93 -0
- package/dist/esm/components/ai-elements/artifacts/web-preview.js.map +1 -0
- package/dist/esm/components/ai-elements/chat/conversation.d.ts +3 -0
- package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/chat/conversation.js +32 -0
- package/dist/esm/components/ai-elements/chat/conversation.js.map +1 -0
- package/dist/esm/components/ai-elements/chat/message.d.ts +3 -0
- package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/chat/message.js +138 -0
- package/dist/esm/components/ai-elements/chat/message.js.map +1 -0
- package/dist/esm/components/ai-elements/chat/prompt-input.d.ts +144 -0
- package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/chat/prompt-input.js +622 -0
- package/dist/esm/components/ai-elements/chat/prompt-input.js.map +1 -0
- package/dist/esm/components/ai-elements/chat/sources.d.ts +11 -0
- package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/chat/sources.js +23 -0
- package/dist/esm/components/ai-elements/chat/sources.js.map +1 -0
- package/dist/esm/components/ai-elements/chat/suggestion.d.ts +5 -0
- package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/chat/suggestion.js +12 -0
- package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -0
- package/dist/esm/components/ai-elements/decision/approval.d.ts +51 -0
- package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/decision/approval.js +95 -0
- package/dist/esm/components/ai-elements/decision/approval.js.map +1 -0
- package/dist/esm/components/ai-elements/decision/decision-request.d.ts +31 -0
- package/dist/esm/components/ai-elements/decision/decision-request.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/decision/decision-request.js +135 -0
- package/dist/esm/components/ai-elements/decision/decision-request.js.map +1 -0
- package/dist/esm/components/ai-elements/execution/confirmation.d.ts +10 -0
- package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/execution/confirmation.js +59 -0
- package/dist/esm/components/ai-elements/execution/confirmation.js.map +1 -0
- package/dist/esm/components/ai-elements/execution/queue.d.ts +3 -0
- package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/execution/queue.js +90 -0
- package/dist/esm/components/ai-elements/execution/queue.js.map +1 -0
- package/dist/esm/components/ai-elements/execution/task.d.ts +3 -0
- package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/execution/task.js +25 -0
- package/dist/esm/components/ai-elements/execution/task.js.map +1 -0
- package/dist/esm/components/ai-elements/execution/tool.d.ts +3 -0
- package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/execution/tool.js +87 -0
- package/dist/esm/components/ai-elements/execution/tool.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/canvas.d.ts +10 -0
- package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/canvas.js +5 -0
- package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/connection.d.ts +3 -0
- package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/connection.js +4 -0
- package/dist/esm/components/ai-elements/graph/connection.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/controls.d.ts +6 -0
- package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/controls.js +11 -0
- package/dist/esm/components/ai-elements/graph/controls.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/edge.d.ts +13 -0
- package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/edge.js +88 -0
- package/dist/esm/components/ai-elements/graph/edge.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/node.d.ts +23 -0
- package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/node.js +11 -0
- package/dist/esm/components/ai-elements/graph/node.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/panel.d.ts +7 -0
- package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/panel.js +14 -0
- package/dist/esm/components/ai-elements/graph/panel.js.map +1 -0
- package/dist/esm/components/ai-elements/graph/toolbar.d.ts +7 -0
- package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/graph/toolbar.js +5 -0
- package/dist/esm/components/ai-elements/graph/toolbar.js.map +1 -0
- package/dist/esm/components/ai-elements/meta/agent.d.ts +100 -0
- package/dist/esm/components/ai-elements/meta/agent.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/meta/agent.js +111 -0
- package/dist/esm/components/ai-elements/meta/agent.js.map +1 -0
- package/dist/esm/components/ai-elements/meta/context.d.ts +33 -0
- package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/meta/context.js +195 -0
- package/dist/esm/components/ai-elements/meta/context.js.map +1 -0
- package/dist/esm/components/ai-elements/meta/model-selector.d.ts +36 -0
- package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/meta/model-selector.js +22 -0
- package/dist/esm/components/ai-elements/meta/model-selector.js.map +1 -0
- package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts +15 -0
- package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/meta/open-in-chat.js +111 -0
- package/dist/esm/components/ai-elements/meta/open-in-chat.js.map +1 -0
- package/dist/esm/components/ai-elements/shared/loader.d.ts +5 -0
- package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/shared/loader.js +5 -0
- package/dist/esm/components/ai-elements/shared/loader.js.map +1 -0
- package/dist/esm/components/ai-elements/shared/shimmer.d.ts +11 -0
- package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/shared/shimmer.js +19 -0
- package/dist/esm/components/ai-elements/shared/shimmer.js.map +1 -0
- package/dist/esm/components/ai-elements/stream/execution-stream.d.ts +24 -0
- package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/stream/execution-stream.js +41 -0
- package/dist/esm/components/ai-elements/stream/execution-stream.js.map +1 -0
- package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +29 -0
- package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/trace/chain-of-thought.js +69 -0
- package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -0
- package/dist/esm/components/ai-elements/trace/checkpoint.d.ts +14 -0
- package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/trace/checkpoint.js +21 -0
- package/dist/esm/components/ai-elements/trace/checkpoint.js.map +1 -0
- package/dist/esm/components/ai-elements/trace/inline-citation.d.ts +38 -0
- package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/trace/inline-citation.js +81 -0
- package/dist/esm/components/ai-elements/trace/inline-citation.js.map +1 -0
- package/dist/esm/components/ai-elements/trace/plan.d.ts +19 -0
- package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/trace/plan.js +42 -0
- package/dist/esm/components/ai-elements/trace/plan.js.map +1 -0
- package/dist/esm/components/ai-elements/trace/reasoning.d.ts +16 -0
- package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/trace/reasoning.js +89 -0
- package/dist/esm/components/ai-elements/trace/reasoning.js.map +1 -0
- package/dist/esm/components/app/app-layout-main-container.d.ts +4 -0
- package/dist/esm/components/app/app-layout-main-container.d.ts.map +1 -0
- package/dist/esm/components/app/app-layout-main-container.js +22 -0
- package/dist/esm/components/app/app-layout-main-container.js.map +1 -0
- package/dist/esm/components/app/public-layout-main-container.d.ts +4 -0
- package/dist/esm/components/app/public-layout-main-container.d.ts.map +1 -0
- package/dist/esm/components/app/public-layout-main-container.js +10 -0
- package/dist/esm/components/app/public-layout-main-container.js.map +1 -0
- package/dist/esm/components/billing/billing-format.utils.d.ts +21 -0
- package/dist/esm/components/billing/billing-format.utils.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-format.utils.js +35 -0
- package/dist/esm/components/billing/billing-format.utils.js.map +1 -0
- package/dist/esm/components/billing/billing-invoice-history.d.ts +13 -0
- package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-invoice-history.js +55 -0
- package/dist/esm/components/billing/billing-invoice-history.js.map +1 -0
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts +13 -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 +44 -0
- package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
- package/dist/esm/components/billing/billing-portal-link.d.ts +10 -0
- package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-portal-link.js +35 -0
- package/dist/esm/components/billing/billing-portal-link.js.map +1 -0
- package/dist/esm/components/billing/billing-pricing-table.d.ts +16 -0
- package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-pricing-table.js +74 -0
- package/dist/esm/components/billing/billing-pricing-table.js.map +1 -0
- package/dist/esm/components/billing/billing-promotion-code-input.d.ts +10 -0
- package/dist/esm/components/billing/billing-promotion-code-input.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-promotion-code-input.js +68 -0
- package/dist/esm/components/billing/billing-promotion-code-input.js.map +1 -0
- package/dist/esm/components/billing/billing-subscription-status.d.ts +13 -0
- package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-subscription-status.js +58 -0
- package/dist/esm/components/billing/billing-subscription-status.js.map +1 -0
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts +13 -0
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-usage-dashboard.js +49 -0
- package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -0
- package/dist/esm/components/data-display/avatar.d.ts +3 -0
- package/dist/esm/components/data-display/avatar.d.ts.map +1 -0
- package/dist/esm/components/data-display/avatar.js +24 -0
- package/dist/esm/components/data-display/avatar.js.map +1 -0
- package/dist/esm/components/data-display/badge.d.ts +5 -0
- package/dist/esm/components/data-display/badge.d.ts.map +1 -0
- package/dist/esm/components/data-display/badge.js +24 -0
- package/dist/esm/components/data-display/badge.js.map +1 -0
- package/dist/esm/components/data-display/description-list.d.ts +5 -0
- package/dist/esm/components/data-display/description-list.d.ts.map +1 -0
- package/dist/esm/components/data-display/description-list.js +36 -0
- package/dist/esm/components/data-display/description-list.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts +17 -0
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js +93 -0
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts +19 -0
- package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-boolean.js +53 -0
- package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-code.d.ts +22 -0
- package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-code.js +90 -0
- package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-date.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-date.js +16 -0
- package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-datetime.js +16 -0
- package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-duration.d.ts +16 -0
- package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-duration.js +36 -0
- package/dist/esm/components/data-display/formatters/display-field-duration.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-enum.d.ts +16 -0
- package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-enum.js +80 -0
- package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts +14 -0
- package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-audio.js +33 -0
- package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts +14 -0
- package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-document.js +57 -0
- package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts +17 -0
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.js +87 -0
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts +15 -0
- package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-image.js +48 -0
- package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts +14 -0
- package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file-video.js +34 -0
- package/dist/esm/components/data-display/formatters/display-field-file-video.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file.d.ts +33 -0
- package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-file.js +240 -0
- package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts +43 -0
- package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-format.utils.js +113 -0
- package/dist/esm/components/data-display/formatters/display-field-format.utils.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-money.d.ts +19 -0
- package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-money.js +88 -0
- package/dist/esm/components/data-display/formatters/display-field-money.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-number.d.ts +16 -0
- package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-number.js +87 -0
- package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-phone.d.ts +15 -0
- package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-phone.js +31 -0
- package/dist/esm/components/data-display/formatters/display-field-phone.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts +16 -0
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js +117 -0
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-date.js +35 -0
- package/dist/esm/components/data-display/formatters/display-field-range-date.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.js +35 -0
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts +16 -0
- package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-money.js +83 -0
- package/dist/esm/components/data-display/formatters/display-field-range-money.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-number.js +35 -0
- package/dist/esm/components/data-display/formatters/display-field-range-number.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-range-time.js +38 -0
- package/dist/esm/components/data-display/formatters/display-field-range-time.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-string.d.ts +16 -0
- package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-string.js +86 -0
- package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-time.d.ts +13 -0
- package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-time.js +20 -0
- package/dist/esm/components/data-display/formatters/display-field-time.js.map +1 -0
- package/dist/esm/components/feedback/celebration-overlay.d.ts +20 -0
- package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -0
- package/dist/esm/components/feedback/celebration-overlay.js +46 -0
- package/dist/esm/components/feedback/celebration-overlay.js.map +1 -0
- package/dist/esm/components/feedback/danger-zone.d.ts +4 -0
- package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -0
- package/dist/esm/components/feedback/danger-zone.js +16 -0
- package/dist/esm/components/feedback/danger-zone.js.map +1 -0
- package/dist/esm/components/feedback/empty-state.d.ts +14 -0
- package/dist/esm/components/feedback/empty-state.d.ts.map +1 -0
- package/dist/esm/components/feedback/empty-state.js +24 -0
- package/dist/esm/components/feedback/empty-state.js.map +1 -0
- package/dist/esm/components/feedback/error-display.d.ts +5 -0
- package/dist/esm/components/feedback/error-display.d.ts.map +1 -0
- package/dist/esm/components/feedback/error-display.js +38 -0
- package/dist/esm/components/feedback/error-display.js.map +1 -0
- package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts +13 -0
- package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -0
- package/dist/esm/components/feedback/features/feature-limit-indicator.js +19 -0
- package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -0
- package/dist/esm/components/feedback/features/feature-lock-badge.d.ts +10 -0
- package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -0
- package/dist/esm/components/feedback/features/feature-lock-badge.js +29 -0
- package/dist/esm/components/feedback/features/feature-lock-badge.js.map +1 -0
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts +10 -0
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -0
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.js +6 -0
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.js.map +1 -0
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts +12 -0
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -0
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.js +45 -0
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -0
- package/dist/esm/components/feedback/loading-overlay.d.ts +13 -0
- package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -0
- package/dist/esm/components/feedback/loading-overlay.js +19 -0
- package/dist/esm/components/feedback/loading-overlay.js.map +1 -0
- package/dist/esm/components/feedback/loading-spinner.d.ts +11 -0
- package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -0
- package/dist/esm/components/feedback/loading-spinner.js +17 -0
- package/dist/esm/components/feedback/loading-spinner.js.map +1 -0
- package/dist/esm/components/feedback/notification-center.d.ts +14 -0
- package/dist/esm/components/feedback/notification-center.d.ts.map +1 -0
- package/dist/esm/components/feedback/notification-center.js +45 -0
- package/dist/esm/components/feedback/notification-center.js.map +1 -0
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts +5 -0
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -0
- package/dist/esm/components/feedback/operations-confirm-critical.js +23 -0
- package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -0
- package/dist/esm/components/feedback/progress.d.ts +5 -0
- package/dist/esm/components/feedback/progress.d.ts.map +1 -0
- package/dist/esm/components/feedback/progress.js +22 -0
- package/dist/esm/components/feedback/progress.js.map +1 -0
- package/dist/esm/components/feedback/skeleton.d.ts +4 -0
- package/dist/esm/components/feedback/skeleton.d.ts.map +1 -0
- package/dist/esm/components/feedback/skeleton.js +10 -0
- package/dist/esm/components/feedback/skeleton.js.map +1 -0
- package/dist/esm/components/feedback/toast.d.ts +5 -0
- package/dist/esm/components/feedback/toast.d.ts.map +1 -0
- package/dist/esm/components/feedback/toast.js +12 -0
- package/dist/esm/components/feedback/toast.js.map +1 -0
- package/dist/esm/components/form/autosave-indicator.d.ts +15 -0
- package/dist/esm/components/form/autosave-indicator.d.ts.map +1 -0
- package/dist/esm/components/form/autosave-indicator.js +43 -0
- package/dist/esm/components/form/autosave-indicator.js.map +1 -0
- package/dist/esm/components/form/chromes/field.d.ts +23 -0
- package/dist/esm/components/form/chromes/field.d.ts.map +1 -0
- package/dist/esm/components/form/chromes/field.js +84 -0
- package/dist/esm/components/form/chromes/field.js.map +1 -0
- package/dist/esm/components/form/chromes/form-primitive.d.ts +14 -0
- package/dist/esm/components/form/chromes/form-primitive.d.ts.map +1 -0
- package/dist/esm/components/form/chromes/form-primitive.js +38 -0
- package/dist/esm/components/form/chromes/form-primitive.js.map +1 -0
- package/dist/esm/components/form/combobox.d.ts +6 -0
- package/dist/esm/components/form/combobox.d.ts.map +1 -0
- package/dist/esm/components/form/combobox.js +138 -0
- package/dist/esm/components/form/combobox.js.map +1 -0
- package/dist/esm/components/form/controls/boolean/checkbox.d.ts +3 -0
- package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -0
- package/dist/esm/components/form/controls/boolean/checkbox.js +49 -0
- package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -0
- package/dist/esm/components/form/controls/boolean/switch.d.ts +3 -0
- package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -0
- package/dist/esm/components/form/controls/boolean/switch.js +56 -0
- package/dist/esm/components/form/controls/boolean/switch.js.map +1 -0
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts +5 -0
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -0
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js +63 -0
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js.map +1 -0
- package/dist/esm/components/form/controls/boolean/toggle.d.ts +5 -0
- package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -0
- package/dist/esm/components/form/controls/boolean/toggle.js +41 -0
- package/dist/esm/components/form/controls/boolean/toggle.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/calendar.d.ts +6 -0
- package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/calendar.js +129 -0
- package/dist/esm/components/form/controls/date-time/calendar.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts +11 -0
- package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/date-range-picker.js +89 -0
- package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/datepicker.d.ts +5 -0
- package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/datepicker.js +62 -0
- package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts +11 -0
- package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/datetime-picker.js +161 -0
- package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts +11 -0
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.js +200 -0
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/time-picker.d.ts +11 -0
- package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/time-picker.js +169 -0
- package/dist/esm/components/form/controls/date-time/time-picker.js.map +1 -0
- package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts +11 -0
- package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -0
- package/dist/esm/components/form/controls/date-time/time-range-picker.js +232 -0
- package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -0
- package/dist/esm/components/form/controls/enum/radio.d.ts +7 -0
- package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -0
- package/dist/esm/components/form/controls/enum/radio.js +65 -0
- package/dist/esm/components/form/controls/enum/radio.js.map +1 -0
- package/dist/esm/components/form/controls/enum/select-multiple.d.ts +7 -0
- package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -0
- package/dist/esm/components/form/controls/enum/select-multiple.js +59 -0
- package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -0
- package/dist/esm/components/form/controls/enum/select.d.ts +27 -0
- package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -0
- package/dist/esm/components/form/controls/enum/select.js +98 -0
- package/dist/esm/components/form/controls/enum/select.js.map +1 -0
- package/dist/esm/components/form/controls/enum/toggle-group.d.ts +3 -0
- package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -0
- package/dist/esm/components/form/controls/enum/toggle-group.js +41 -0
- package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -0
- package/dist/esm/components/form/controls/file/file-upload.d.ts +52 -0
- package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/file-upload.js +230 -0
- package/dist/esm/components/form/controls/file/file-upload.js.map +1 -0
- package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts +16 -0
- package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -0
- package/dist/esm/components/form/controls/form-field-checkbox-group.js +131 -0
- package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -0
- package/dist/esm/components/form/controls/input-group.d.ts +10 -0
- package/dist/esm/components/form/controls/input-group.d.ts.map +1 -0
- package/dist/esm/components/form/controls/input-group.js +76 -0
- package/dist/esm/components/form/controls/input-group.js.map +1 -0
- package/dist/esm/components/form/controls/input.d.ts +3 -0
- package/dist/esm/components/form/controls/input.d.ts.map +1 -0
- package/dist/esm/components/form/controls/input.js +76 -0
- package/dist/esm/components/form/controls/input.js.map +1 -0
- package/dist/esm/components/form/controls/number/slider.d.ts +13 -0
- package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -0
- package/dist/esm/components/form/controls/number/slider.js +114 -0
- package/dist/esm/components/form/controls/number/slider.js.map +1 -0
- package/dist/esm/components/form/controls/string/color-input.d.ts +5 -0
- package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -0
- package/dist/esm/components/form/controls/string/color-input.js +49 -0
- package/dist/esm/components/form/controls/string/color-input.js.map +1 -0
- package/dist/esm/components/form/controls/string/input-otp.d.ts +3 -0
- package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -0
- package/dist/esm/components/form/controls/string/input-otp.js +35 -0
- package/dist/esm/components/form/controls/string/input-otp.js.map +1 -0
- package/dist/esm/components/form/controls/string/password-input.d.ts +16 -0
- package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -0
- package/dist/esm/components/form/controls/string/password-input.js +54 -0
- package/dist/esm/components/form/controls/string/password-input.js.map +1 -0
- package/dist/esm/components/form/controls/string/textarea.d.ts +3 -0
- package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -0
- package/dist/esm/components/form/controls/string/textarea.js +51 -0
- package/dist/esm/components/form/controls/string/textarea.js.map +1 -0
- package/dist/esm/components/layout/aspect-ratio.d.ts +5 -0
- package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -0
- package/dist/esm/components/layout/aspect-ratio.js +8 -0
- package/dist/esm/components/layout/aspect-ratio.js.map +1 -0
- package/dist/esm/components/layout/carousel.d.ts +3 -0
- package/dist/esm/components/layout/carousel.d.ts.map +1 -0
- package/dist/esm/components/layout/carousel.js +107 -0
- package/dist/esm/components/layout/carousel.js.map +1 -0
- package/dist/esm/components/layout/divider.d.ts +4 -0
- package/dist/esm/components/layout/divider.d.ts.map +1 -0
- package/dist/esm/components/layout/divider.js +15 -0
- package/dist/esm/components/layout/divider.js.map +1 -0
- package/dist/esm/components/layout/resizable.d.ts +3 -0
- package/dist/esm/components/layout/resizable.d.ts.map +1 -0
- package/dist/esm/components/layout/resizable.js +16 -0
- package/dist/esm/components/layout/resizable.js.map +1 -0
- package/dist/esm/components/layout/scroll-area.d.ts +3 -0
- package/dist/esm/components/layout/scroll-area.d.ts.map +1 -0
- package/dist/esm/components/layout/scroll-area.js +22 -0
- package/dist/esm/components/layout/scroll-area.js.map +1 -0
- package/dist/esm/components/layout/separator.d.ts +5 -0
- package/dist/esm/components/layout/separator.d.ts.map +1 -0
- package/dist/esm/components/layout/separator.js +15 -0
- package/dist/esm/components/layout/separator.js.map +1 -0
- package/dist/esm/components/navigation/app-level/action-sheet.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/action-sheet.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/action-sheet.js +59 -0
- package/dist/esm/components/navigation/app-level/action-sheet.js.map +1 -0
- package/dist/esm/components/navigation/app-level/activity-bar.d.ts +16 -0
- package/dist/esm/components/navigation/app-level/activity-bar.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/activity-bar.js +33 -0
- package/dist/esm/components/navigation/app-level/activity-bar.js.map +1 -0
- package/dist/esm/components/navigation/app-level/command-menu.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/command-menu.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/command-menu.js +26 -0
- package/dist/esm/components/navigation/app-level/command-menu.js.map +1 -0
- package/dist/esm/components/navigation/app-level/control-panel.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/control-panel.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/control-panel.js +48 -0
- package/dist/esm/components/navigation/app-level/control-panel.js.map +1 -0
- package/dist/esm/components/navigation/app-level/menu-user-org.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/menu-user-org.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/menu-user-org.js +89 -0
- package/dist/esm/components/navigation/app-level/menu-user-org.js.map +1 -0
- package/dist/esm/components/navigation/app-level/menubar.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/menubar.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/menubar.js +73 -0
- package/dist/esm/components/navigation/app-level/menubar.js.map +1 -0
- package/dist/esm/components/navigation/app-level/navigation-back.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/navigation-back.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/navigation-back.js +17 -0
- package/dist/esm/components/navigation/app-level/navigation-back.js.map +1 -0
- package/dist/esm/components/navigation/app-level/navigation-rail.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/navigation-rail.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/navigation-rail.js +36 -0
- package/dist/esm/components/navigation/app-level/navigation-rail.js.map +1 -0
- package/dist/esm/components/navigation/app-level/notification-center.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/notification-center.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/notification-center.js +91 -0
- package/dist/esm/components/navigation/app-level/notification-center.js.map +1 -0
- package/dist/esm/components/navigation/app-level/quick-action-button.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/quick-action-button.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/quick-action-button.js +34 -0
- package/dist/esm/components/navigation/app-level/quick-action-button.js.map +1 -0
- package/dist/esm/components/navigation/app-level/quick-switcher.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/quick-switcher.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/quick-switcher.js +33 -0
- package/dist/esm/components/navigation/app-level/quick-switcher.js.map +1 -0
- package/dist/esm/components/navigation/app-level/sidebar.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/sidebar.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/sidebar.js +146 -0
- package/dist/esm/components/navigation/app-level/sidebar.js.map +1 -0
- package/dist/esm/components/navigation/app-level/status-bar.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/status-bar.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/status-bar.js +66 -0
- package/dist/esm/components/navigation/app-level/status-bar.js.map +1 -0
- package/dist/esm/components/navigation/app-level/toolbar.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/toolbar.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/toolbar.js +19 -0
- package/dist/esm/components/navigation/app-level/toolbar.js.map +1 -0
- package/dist/esm/components/navigation/app-level/utility-panel.d.ts +4 -0
- package/dist/esm/components/navigation/app-level/utility-panel.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/utility-panel.js +54 -0
- package/dist/esm/components/navigation/app-level/utility-panel.js.map +1 -0
- package/dist/esm/components/navigation/breadcrumb.d.ts +3 -0
- package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -0
- package/dist/esm/components/navigation/breadcrumb.js +46 -0
- package/dist/esm/components/navigation/breadcrumb.js.map +1 -0
- package/dist/esm/components/navigation/command.d.ts +19 -0
- package/dist/esm/components/navigation/command.d.ts.map +1 -0
- package/dist/esm/components/navigation/command.js +66 -0
- package/dist/esm/components/navigation/command.js.map +1 -0
- package/dist/esm/components/navigation/menu-bar.d.ts +41 -0
- package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -0
- package/dist/esm/components/navigation/menu-bar.js +114 -0
- package/dist/esm/components/navigation/menu-bar.js.map +1 -0
- package/dist/esm/components/navigation/navbar.d.ts +3 -0
- package/dist/esm/components/navigation/navbar.d.ts.map +1 -0
- package/dist/esm/components/navigation/navbar.js +70 -0
- package/dist/esm/components/navigation/navbar.js.map +1 -0
- package/dist/esm/components/navigation/sidebar.d.ts +3 -0
- package/dist/esm/components/navigation/sidebar.d.ts.map +1 -0
- package/dist/esm/components/navigation/sidebar.js +247 -0
- package/dist/esm/components/navigation/sidebar.js.map +1 -0
- package/dist/esm/components/overlays/containers/alert-dialog.d.ts +4 -0
- package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -0
- package/dist/esm/components/overlays/containers/alert-dialog.js +70 -0
- package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -0
- package/dist/esm/components/overlays/containers/alert.d.ts +3 -0
- package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -0
- package/dist/esm/components/overlays/containers/alert.js +54 -0
- package/dist/esm/components/overlays/containers/alert.js.map +1 -0
- package/dist/esm/components/overlays/containers/dialog.d.ts +4 -0
- package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -0
- package/dist/esm/components/overlays/containers/dialog.js +57 -0
- package/dist/esm/components/overlays/containers/dialog.js.map +1 -0
- package/dist/esm/components/overlays/containers/drawer.d.ts +4 -0
- package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -0
- package/dist/esm/components/overlays/containers/drawer.js +51 -0
- package/dist/esm/components/overlays/containers/drawer.js.map +1 -0
- package/dist/esm/components/overlays/containers/sheet.d.ts +4 -0
- package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -0
- package/dist/esm/components/overlays/containers/sheet.js +61 -0
- package/dist/esm/components/overlays/containers/sheet.js.map +1 -0
- package/dist/esm/components/overlays/floating/context-menu.d.ts +26 -0
- package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -0
- package/dist/esm/components/overlays/floating/context-menu.js +120 -0
- package/dist/esm/components/overlays/floating/context-menu.js.map +1 -0
- package/dist/esm/components/overlays/floating/dropdown-menu.d.ts +34 -0
- package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -0
- package/dist/esm/components/overlays/floating/dropdown-menu.js +123 -0
- package/dist/esm/components/overlays/floating/dropdown-menu.js.map +1 -0
- package/dist/esm/components/overlays/floating/hover-card.d.ts +3 -0
- package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -0
- package/dist/esm/components/overlays/floating/hover-card.js +22 -0
- package/dist/esm/components/overlays/floating/hover-card.js.map +1 -0
- package/dist/esm/components/overlays/floating/popover.d.ts +35 -0
- package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -0
- package/dist/esm/components/overlays/floating/popover.js +35 -0
- package/dist/esm/components/overlays/floating/popover.js.map +1 -0
- package/dist/esm/components/overlays/floating/tooltip.d.ts +3 -0
- package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -0
- package/dist/esm/components/overlays/floating/tooltip.js +28 -0
- package/dist/esm/components/overlays/floating/tooltip.js.map +1 -0
- package/dist/esm/components/sections/accordion.d.ts +3 -0
- package/dist/esm/components/sections/accordion.d.ts.map +1 -0
- package/dist/esm/components/sections/accordion.js +27 -0
- package/dist/esm/components/sections/accordion.js.map +1 -0
- package/dist/esm/components/sections/card.d.ts +3 -0
- package/dist/esm/components/sections/card.d.ts.map +1 -0
- package/dist/esm/components/sections/card.js +48 -0
- package/dist/esm/components/sections/card.js.map +1 -0
- package/dist/esm/components/sections/collapsible.d.ts +3 -0
- package/dist/esm/components/sections/collapsible.d.ts.map +1 -0
- package/dist/esm/components/sections/collapsible.js +14 -0
- package/dist/esm/components/sections/collapsible.js.map +1 -0
- package/dist/esm/components/sections/pagination.d.ts +3 -0
- package/dist/esm/components/sections/pagination.d.ts.map +1 -0
- package/dist/esm/components/sections/pagination.js +45 -0
- package/dist/esm/components/sections/pagination.js.map +1 -0
- package/dist/esm/components/sections/stacked-layout.d.ts +3 -0
- package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -0
- package/dist/esm/components/sections/stacked-layout.js +77 -0
- package/dist/esm/components/sections/stacked-layout.js.map +1 -0
- package/dist/esm/components/sections/stepper.d.ts +3 -0
- package/dist/esm/components/sections/stepper.d.ts.map +1 -0
- package/dist/esm/components/sections/stepper.js +70 -0
- package/dist/esm/components/sections/stepper.js.map +1 -0
- package/dist/esm/components/sections/table.d.ts +3 -0
- package/dist/esm/components/sections/table.d.ts.map +1 -0
- package/dist/esm/components/sections/table.js +52 -0
- package/dist/esm/components/sections/table.js.map +1 -0
- package/dist/esm/components/sections/tabs.d.ts +3 -0
- package/dist/esm/components/sections/tabs.d.ts.map +1 -0
- package/dist/esm/components/sections/tabs.js +31 -0
- package/dist/esm/components/sections/tabs.js.map +1 -0
- package/dist/esm/components/typography/heading.d.ts +5 -0
- package/dist/esm/components/typography/heading.d.ts.map +1 -0
- package/dist/esm/components/typography/heading.js +23 -0
- package/dist/esm/components/typography/heading.js.map +1 -0
- package/dist/esm/components/typography/label.d.ts +5 -0
- package/dist/esm/components/typography/label.d.ts.map +1 -0
- package/dist/esm/components/typography/label.js +17 -0
- package/dist/esm/components/typography/label.js.map +1 -0
- package/dist/esm/components/typography/link.d.ts +5 -0
- package/dist/esm/components/typography/link.d.ts.map +1 -0
- package/dist/esm/components/typography/link.js +72 -0
- package/dist/esm/components/typography/link.js.map +1 -0
- package/dist/esm/components/typography/text.d.ts +10 -0
- package/dist/esm/components/typography/text.d.ts.map +1 -0
- package/dist/esm/components/typography/text.js +36 -0
- package/dist/esm/components/typography/text.js.map +1 -0
- package/dist/esm/components/typography/truncated-text.d.ts +17 -0
- package/dist/esm/components/typography/truncated-text.d.ts.map +1 -0
- package/dist/esm/components/typography/truncated-text.js +45 -0
- package/dist/esm/components/typography/truncated-text.js.map +1 -0
- package/dist/esm/config/billing-shell.presets.d.ts +7 -0
- package/dist/esm/config/billing-shell.presets.d.ts.map +1 -0
- package/dist/esm/config/billing-shell.presets.js +54 -0
- package/dist/esm/config/billing-shell.presets.js.map +1 -0
- package/dist/esm/config/default-hotkeys.preset.d.ts +15 -0
- package/dist/esm/config/default-hotkeys.preset.d.ts.map +1 -0
- package/dist/esm/config/default-hotkeys.preset.js +51 -0
- package/dist/esm/config/default-hotkeys.preset.js.map +1 -0
- package/dist/esm/config/index.d.ts +9 -0
- package/dist/esm/config/index.d.ts.map +1 -0
- package/dist/esm/config/index.js +9 -0
- package/dist/esm/config/index.js.map +1 -0
- package/dist/esm/config/preset-design-system.d.ts +1498 -0
- package/dist/esm/config/preset-design-system.d.ts.map +1 -0
- package/dist/esm/config/preset-design-system.js +581 -0
- package/dist/esm/config/preset-design-system.js.map +1 -0
- package/dist/esm/config/preset-error-pages.d.ts +52 -0
- package/dist/esm/config/preset-error-pages.d.ts.map +1 -0
- package/dist/esm/config/preset-error-pages.js +190 -0
- package/dist/esm/config/preset-error-pages.js.map +1 -0
- package/dist/esm/config/preset-kits.d.ts +129 -0
- package/dist/esm/config/preset-kits.d.ts.map +1 -0
- package/dist/esm/config/preset-kits.js +290 -0
- package/dist/esm/config/preset-kits.js.map +1 -0
- package/dist/esm/config/preset-navigation.d.ts +91 -0
- package/dist/esm/config/preset-navigation.d.ts.map +1 -0
- package/dist/esm/config/preset-navigation.js +304 -0
- package/dist/esm/config/preset-navigation.js.map +1 -0
- package/dist/esm/config/preset-resources.d.ts +10 -0
- package/dist/esm/config/preset-resources.d.ts.map +1 -0
- package/dist/esm/config/preset-resources.js +10 -0
- package/dist/esm/config/preset-resources.js.map +1 -0
- package/dist/esm/config/preset-shell.d.ts +69 -0
- package/dist/esm/config/preset-shell.d.ts.map +1 -0
- package/dist/esm/config/preset-shell.js +244 -0
- package/dist/esm/config/preset-shell.js.map +1 -0
- package/dist/esm/config/preset-utils.d.ts +51 -0
- package/dist/esm/config/preset-utils.d.ts.map +1 -0
- package/dist/esm/config/preset-utils.js +127 -0
- package/dist/esm/config/preset-utils.js.map +1 -0
- package/dist/esm/config/presets.d.ts +111 -0
- package/dist/esm/config/presets.d.ts.map +1 -0
- package/dist/esm/config/presets.js +286 -0
- package/dist/esm/config/presets.js.map +1 -0
- package/dist/esm/config/resources/application-layout-templates.d.ts +14 -0
- package/dist/esm/config/resources/application-layout-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/application-layout-templates.js +40 -0
- package/dist/esm/config/resources/application-layout-templates.js.map +1 -0
- package/dist/esm/config/resources/application.resource-presets.d.ts +15 -0
- package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/application.resource-presets.js +159 -0
- package/dist/esm/config/resources/application.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/billing-layout-templates.d.ts +14 -0
- package/dist/esm/config/resources/billing-layout-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/billing-layout-templates.js +24 -0
- package/dist/esm/config/resources/billing-layout-templates.js.map +1 -0
- package/dist/esm/config/resources/billing.resource-presets.d.ts +26 -0
- package/dist/esm/config/resources/billing.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/billing.resource-presets.js +528 -0
- package/dist/esm/config/resources/billing.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/email-layout-templates.d.ts +8 -0
- package/dist/esm/config/resources/email-layout-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/email-layout-templates.js +22 -0
- package/dist/esm/config/resources/email-layout-templates.js.map +1 -0
- package/dist/esm/config/resources/email.resource-presets.d.ts +12 -0
- package/dist/esm/config/resources/email.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/email.resource-presets.js +134 -0
- package/dist/esm/config/resources/email.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/guidance-layout-templates.d.ts +9 -0
- package/dist/esm/config/resources/guidance-layout-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/guidance-layout-templates.js +25 -0
- package/dist/esm/config/resources/guidance-layout-templates.js.map +1 -0
- package/dist/esm/config/resources/guidance.resource-presets.d.ts +5 -0
- package/dist/esm/config/resources/guidance.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/guidance.resource-presets.js +198 -0
- package/dist/esm/config/resources/guidance.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/identity-layout-templates.d.ts +16 -0
- package/dist/esm/config/resources/identity-layout-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/identity-layout-templates.js +46 -0
- package/dist/esm/config/resources/identity-layout-templates.js.map +1 -0
- package/dist/esm/config/resources/identity.resource-presets.d.ts +17 -0
- package/dist/esm/config/resources/identity.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/identity.resource-presets.js +216 -0
- package/dist/esm/config/resources/identity.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/index.d.ts +22 -0
- package/dist/esm/config/resources/index.d.ts.map +1 -0
- package/dist/esm/config/resources/index.js +39 -0
- package/dist/esm/config/resources/index.js.map +1 -0
- package/dist/esm/config/resources/infrastructure.resource-presets.d.ts +15 -0
- package/dist/esm/config/resources/infrastructure.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/infrastructure.resource-presets.js +109 -0
- package/dist/esm/config/resources/infrastructure.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/organizations-layout-templates.d.ts +26 -0
- package/dist/esm/config/resources/organizations-layout-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/organizations-layout-templates.js +76 -0
- package/dist/esm/config/resources/organizations-layout-templates.js.map +1 -0
- package/dist/esm/config/resources/organizations.resource-presets.d.ts +14 -0
- package/dist/esm/config/resources/organizations.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/organizations.resource-presets.js +253 -0
- package/dist/esm/config/resources/organizations.resource-presets.js.map +1 -0
- package/dist/esm/config/resources/resource.config.utils.d.ts +11 -0
- package/dist/esm/config/resources/resource.config.utils.d.ts.map +1 -0
- package/dist/esm/config/resources/resource.config.utils.js +14 -0
- package/dist/esm/config/resources/resource.config.utils.js.map +1 -0
- package/dist/esm/config/resources/security-siem-templates.d.ts +14 -0
- package/dist/esm/config/resources/security-siem-templates.d.ts.map +1 -0
- package/dist/esm/config/resources/security-siem-templates.js +17 -0
- package/dist/esm/config/resources/security-siem-templates.js.map +1 -0
- package/dist/esm/config/resources/security.resource-presets.d.ts +18 -0
- package/dist/esm/config/resources/security.resource-presets.d.ts.map +1 -0
- package/dist/esm/config/resources/security.resource-presets.js +543 -0
- package/dist/esm/config/resources/security.resource-presets.js.map +1 -0
- package/dist/esm/index.d.ts +169 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +183 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lottie/lottie.content.definitions.d.ts +10 -0
- package/dist/esm/lottie/lottie.content.definitions.d.ts.map +1 -0
- package/dist/esm/lottie/lottie.content.definitions.js +10 -0
- package/dist/esm/lottie/lottie.content.definitions.js.map +1 -0
- package/dist/esm/lottie/lottie.definitions.d.ts +27 -0
- package/dist/esm/lottie/lottie.definitions.d.ts.map +1 -0
- package/dist/esm/lottie/lottie.definitions.js +45 -0
- package/dist/esm/lottie/lottie.definitions.js.map +1 -0
- package/dist/esm/registration/register-common-enums.d.ts +15 -0
- package/dist/esm/registration/register-common-enums.d.ts.map +1 -0
- package/dist/esm/registration/register-common-enums.js +138 -0
- package/dist/esm/registration/register-common-enums.js.map +1 -0
- package/dist/esm/registration/register-default-animations.d.ts +9 -0
- package/dist/esm/registration/register-default-animations.d.ts.map +1 -0
- package/dist/esm/registration/register-default-animations.js +24 -0
- package/dist/esm/registration/register-default-animations.js.map +1 -0
- package/dist/esm/registration/register-default-icons.d.ts +6 -0
- package/dist/esm/registration/register-default-icons.d.ts.map +1 -0
- package/dist/esm/registration/register-default-icons.js +130 -0
- package/dist/esm/registration/register-default-icons.js.map +1 -0
- package/dist/esm/registration/register-default-presets.d.ts +2 -0
- package/dist/esm/registration/register-default-presets.d.ts.map +1 -0
- package/dist/esm/registration/register-default-presets.js +440 -0
- package/dist/esm/registration/register-default-presets.js.map +1 -0
- package/dist/esm/themes/glass.theme.d.ts +3 -0
- package/dist/esm/themes/glass.theme.d.ts.map +1 -0
- package/dist/esm/themes/glass.theme.js +420 -0
- package/dist/esm/themes/glass.theme.js.map +1 -0
- package/dist/esm/themes/neo-brutalist.theme.d.ts +3 -0
- package/dist/esm/themes/neo-brutalist.theme.d.ts.map +1 -0
- package/dist/esm/themes/neo-brutalist.theme.js +400 -0
- package/dist/esm/themes/neo-brutalist.theme.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +131 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/controls/input.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAsD,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAkLpH,eAAO,MAAM,KAAK,eAAsE,CAAA"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { UIBehavior, FormControlVariant } from "@wildo-ai/presets-components-models";
|
|
5
|
+
import { cn, useUI, createCompoundPreset } from "@wildo-ai/saas-frontend-lib";
|
|
6
|
+
import { FieldSchemaType, getNumberConstraints, getSchemaType, getStringFormat } from "@wildo-ai/zod-decorators";
|
|
7
|
+
/** Structure classes for input — layout, file input handling. Theme-independent. */
|
|
8
|
+
const INPUT_STRUCTURE = "w-full min-w-0 outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground";
|
|
9
|
+
const InputRoot = React.forwardRef(({ className, type, prefix, suffix, wrapperClassName, ...props }, ref) => {
|
|
10
|
+
const { getRecipe } = useUI();
|
|
11
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
12
|
+
const inputElement = (_jsx("input", { type: type, "data-slot": "input", className: cn(INPUT_STRUCTURE, recipe.base, recipe.states.focus, recipe.states.disabled, recipe.states.invalid, recipe.sizes?.md, recipe.motion.transition, prefix && "ps-10", suffix && "pe-10", className), ref: ref, ...props }));
|
|
13
|
+
if (!prefix && !suffix) {
|
|
14
|
+
return inputElement;
|
|
15
|
+
}
|
|
16
|
+
return (_jsxs("div", { className: cn("relative", wrapperClassName), children: [prefix && (_jsx("span", { className: "pointer-events-none absolute start-3 top-1/2 -translate-y-1/2 text-muted-foreground text-sm", children: prefix })), inputElement, suffix && (_jsx("span", { className: "absolute end-0 top-0 flex h-full items-center", children: suffix }))] }));
|
|
17
|
+
});
|
|
18
|
+
InputRoot.displayName = "InputRoot";
|
|
19
|
+
/**
|
|
20
|
+
* Deduce the HTML input type from a schema
|
|
21
|
+
*/
|
|
22
|
+
function deduceInputType(schema) {
|
|
23
|
+
const schemaType = getSchemaType(schema);
|
|
24
|
+
if (schemaType === FieldSchemaType.NUMBER) {
|
|
25
|
+
return 'number';
|
|
26
|
+
}
|
|
27
|
+
if (schemaType === FieldSchemaType.STRING) {
|
|
28
|
+
const format = getStringFormat(schema);
|
|
29
|
+
switch (format) {
|
|
30
|
+
case 'email': return 'email';
|
|
31
|
+
case 'url': return 'url';
|
|
32
|
+
default: return 'text';
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return 'text';
|
|
36
|
+
}
|
|
37
|
+
const InputImpl = React.forwardRef(({ schema, name, placeholder, autoComplete, type: typeProp, disabled, readOnly, autoFocus, className, value: controlledValue, onChange, onBlur, defaultValue, validationMode: validationModeProp, step: stepProp, min: minProp, max: maxProp, inputMode, }, ref) => {
|
|
38
|
+
const { getRecipe } = useUI();
|
|
39
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
40
|
+
// Internal state for uncontrolled mode
|
|
41
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? '');
|
|
42
|
+
// Determine if controlled
|
|
43
|
+
const isControlled = controlledValue !== undefined;
|
|
44
|
+
const currentValue = isControlled ? controlledValue : internalValue;
|
|
45
|
+
// Auto-detect from schema
|
|
46
|
+
const schemaType = getSchemaType(schema);
|
|
47
|
+
const deducedType = typeProp ?? deduceInputType(schema);
|
|
48
|
+
// Number constraints from schema
|
|
49
|
+
const numberConstraints = schemaType === FieldSchemaType.NUMBER ? getNumberConstraints(schema) : {};
|
|
50
|
+
const min = minProp ?? numberConstraints.min;
|
|
51
|
+
const max = maxProp ?? numberConstraints.max;
|
|
52
|
+
const step = stepProp ?? numberConstraints.step;
|
|
53
|
+
// Handle change - validation is handled by parent FormField via RHF
|
|
54
|
+
const handleChange = React.useCallback((e) => {
|
|
55
|
+
const rawValue = e.target.value;
|
|
56
|
+
const parsedValue = deducedType === 'number' && rawValue !== ''
|
|
57
|
+
? parseFloat(rawValue)
|
|
58
|
+
: rawValue;
|
|
59
|
+
if (isControlled) {
|
|
60
|
+
onChange?.(parsedValue);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
setInternalValue(parsedValue);
|
|
64
|
+
}
|
|
65
|
+
}, [isControlled, onChange, deducedType]);
|
|
66
|
+
// Handle blur - validation is handled by parent FormField via RHF
|
|
67
|
+
const handleBlur = React.useCallback(() => {
|
|
68
|
+
onBlur?.();
|
|
69
|
+
}, [onBlur]);
|
|
70
|
+
// ID for accessibility
|
|
71
|
+
const inputId = `field-${name}`;
|
|
72
|
+
return (_jsx("input", { ref: ref, id: inputId, name: name, type: deducedType, placeholder: placeholder, autoComplete: autoComplete, disabled: disabled, readOnly: readOnly, autoFocus: autoFocus, inputMode: inputMode, value: currentValue, onChange: handleChange, onBlur: handleBlur, min: min, max: max, step: step, "data-slot": "input", className: cn(INPUT_STRUCTURE, recipe.base, recipe.states.focus, recipe.states.disabled, recipe.states.invalid, recipe.sizes?.md, recipe.motion.transition, readOnly && "opacity-[0.75] cursor-default", className) }));
|
|
73
|
+
});
|
|
74
|
+
InputImpl.displayName = "Input";
|
|
75
|
+
export const Input = createCompoundPreset(InputImpl, { Root: InputRoot });
|
|
76
|
+
//# sourceMappingURL=input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../../../../src/components/form/controls/input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { RangeSliderProps, SliderCompound } from '@wildo-ai/saas-frontend-lib';
|
|
3
|
+
/**
|
|
4
|
+
* Range Slider component for z_range('number') schemas.
|
|
5
|
+
*
|
|
6
|
+
* Displays a two-thumb slider for selecting a min/max range.
|
|
7
|
+
* Includes label, description, error display, and validation.
|
|
8
|
+
* Auto-detects min/max from schema constraints.
|
|
9
|
+
*/
|
|
10
|
+
declare const RangeSlider: React.ForwardRefExoticComponent<RangeSliderProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
export declare const Slider: SliderCompound;
|
|
12
|
+
export { RangeSlider };
|
|
13
|
+
//# sourceMappingURL=slider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/controls/number/slider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAQ9B,OAAO,KAAK,EAEV,gBAAgB,EAKhB,cAAc,EACf,MAAM,6BAA6B,CAAA;AA+KpC;;;;;;GAMG;AACH,QAAA,MAAM,WAAW,yFAwHf,CAED;AAED,eAAO,MAAM,MAAM,gBAAyE,CAAA;AAC5F,OAAO,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import * as SliderPrimitive from "@radix-ui/react-slider";
|
|
5
|
+
import { cn, useI18n, useUI, createCompoundPreset } from "@wildo-ai/saas-frontend-lib";
|
|
6
|
+
import { UIBehavior, FormControlVariant, FrontendComponentType } from "@wildo-ai/presets-components-models";
|
|
7
|
+
import { getNumberConstraints } from "@wildo-ai/zod-decorators";
|
|
8
|
+
import { DisplayDirection } from "@wildo-ai/zod-decorators";
|
|
9
|
+
const SliderRoot = React.forwardRef(function SliderRoot({ className, defaultValue, max = 100, step = 1, ...props }, ref) {
|
|
10
|
+
const _values = defaultValue ?? [max / 2];
|
|
11
|
+
const { getRecipe } = useUI();
|
|
12
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
13
|
+
return (_jsxs(SliderPrimitive.Root, { ref: ref, "data-slot": "slider", defaultValue: _values, max: max, step: step, className: cn("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-[var(--opacity-disabled)] data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col", className), ...props, children: [_jsx(SliderPrimitive.Track, { "data-slot": "slider-track", className: "bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5", children: _jsx(SliderPrimitive.Range, { "data-slot": "slider-range", className: "bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full" }) }), Array.from({ length: _values.length }, (_, index) => (_jsx(SliderPrimitive.Thumb, { "data-slot": "slider-thumb", className: cn(
|
|
14
|
+
// Structure
|
|
15
|
+
"block size-4 shrink-0 rounded-full border border-primary bg-background",
|
|
16
|
+
// States — standardized focus ring (decision 1.16)
|
|
17
|
+
"ring-ring hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden", "disabled:pointer-events-none disabled:opacity-[var(--opacity-disabled)]", recipe.motion.transition) }, index)))] }));
|
|
18
|
+
});
|
|
19
|
+
SliderRoot.displayName = "SliderRoot";
|
|
20
|
+
/**
|
|
21
|
+
* Schema-aware Slider component
|
|
22
|
+
*
|
|
23
|
+
* Includes label, description, error display, and validation.
|
|
24
|
+
* Auto-detects min/max from schema constraints.
|
|
25
|
+
*/
|
|
26
|
+
const SliderImpl = React.forwardRef(function Slider({ schema, name, disabled, className, value: controlledValue, onValueChange, onBlur, defaultValue, validationMode: validationModeProp, min: minProp, max: maxProp, step: stepProp, showValue = false, orientation = DisplayDirection.HORIZONTAL, }, ref) {
|
|
27
|
+
const { formatNumber, isReady } = useI18n({
|
|
28
|
+
component: FrontendComponentType.LOW_LEVEL_SLIDER,
|
|
29
|
+
});
|
|
30
|
+
const { getRecipe } = useUI();
|
|
31
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
32
|
+
// Auto-detect from schema
|
|
33
|
+
const constraints = getNumberConstraints(schema);
|
|
34
|
+
const min = minProp ?? constraints.min ?? 0;
|
|
35
|
+
const max = maxProp ?? constraints.max ?? 100;
|
|
36
|
+
const step = stepProp ?? constraints.step ?? 1;
|
|
37
|
+
// Internal state for uncontrolled mode
|
|
38
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? [min]);
|
|
39
|
+
// Determine if controlled
|
|
40
|
+
const isControlled = controlledValue !== undefined;
|
|
41
|
+
const currentValue = isControlled ? controlledValue : internalValue;
|
|
42
|
+
// Handle value change - validation is handled by parent FormField via RHF
|
|
43
|
+
const handleValueChange = React.useCallback((newValue) => {
|
|
44
|
+
if (isControlled) {
|
|
45
|
+
onValueChange?.(newValue);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
setInternalValue(newValue);
|
|
49
|
+
}
|
|
50
|
+
}, [isControlled, onValueChange]);
|
|
51
|
+
// Handle blur (commit) - validation is handled by parent FormField via RHF
|
|
52
|
+
const handleValueCommit = React.useCallback((value) => {
|
|
53
|
+
onBlur?.();
|
|
54
|
+
}, [onBlur]);
|
|
55
|
+
// Format display value with locale-aware formatting from regional preferences
|
|
56
|
+
const displayValue = currentValue.length === 1
|
|
57
|
+
? formatNumber(currentValue[0])
|
|
58
|
+
: `${formatNumber(currentValue[0])} - ${formatNumber(currentValue[currentValue.length - 1])}`;
|
|
59
|
+
return (_jsxs("div", { ref: ref, className: className, "data-field": name, children: [showValue && (_jsx("div", { className: "flex items-center justify-end mb-1", children: _jsx("span", { className: "text-sm text-muted-foreground tabular-nums", children: displayValue }) })), _jsxs(SliderPrimitive.Root, { value: currentValue, onValueChange: handleValueChange, onValueCommit: handleValueCommit, min: min, max: max, step: step, disabled: disabled, orientation: orientation, "data-slot": "slider", className: cn("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-[var(--opacity-disabled)] data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col"), children: [_jsx(SliderPrimitive.Track, { "data-slot": "slider-track", className: cn("bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"), children: _jsx(SliderPrimitive.Range, { "data-slot": "slider-range", className: cn("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full") }) }), Array.from({ length: currentValue.length }, (_, index) => (_jsx(SliderPrimitive.Thumb, { "data-slot": "slider-thumb", className: cn("block size-4 shrink-0 rounded-full border border-primary bg-background pointer-coarse:size-6", "ring-ring hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden", "disabled:pointer-events-none disabled:opacity-[var(--opacity-disabled)]", recipe.motion.transition) }, index)))] })] }));
|
|
60
|
+
});
|
|
61
|
+
SliderImpl.displayName = "Slider";
|
|
62
|
+
// ============================================================================
|
|
63
|
+
// RANGE SLIDER COMPONENT
|
|
64
|
+
// ============================================================================
|
|
65
|
+
/**
|
|
66
|
+
* Range Slider component for z_range('number') schemas.
|
|
67
|
+
*
|
|
68
|
+
* Displays a two-thumb slider for selecting a min/max range.
|
|
69
|
+
* Includes label, description, error display, and validation.
|
|
70
|
+
* Auto-detects min/max from schema constraints.
|
|
71
|
+
*/
|
|
72
|
+
const RangeSlider = React.forwardRef(function RangeSlider({ schema, name, disabled, className, value: controlledValue, onValueChange, onBlur, defaultValue, validationMode: validationModeProp, min: minProp, max: maxProp, step: stepProp, showValue = true, orientation = DisplayDirection.HORIZONTAL, }, ref) {
|
|
73
|
+
const { formatNumber, tComponent, isReady } = useI18n({
|
|
74
|
+
component: [FrontendComponentType.LOW_LEVEL_SLIDER, FrontendComponentType.LOW_LEVEL_RANGE_SLIDER],
|
|
75
|
+
});
|
|
76
|
+
const { getRecipe: getRangeRecipe } = useUI();
|
|
77
|
+
const rangeRecipe = getRangeRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
78
|
+
// Auto-detect from schema - check if it's a range schema
|
|
79
|
+
const constraints = getNumberConstraints(schema);
|
|
80
|
+
const min = minProp ?? constraints.min ?? 0;
|
|
81
|
+
const max = maxProp ?? constraints.max ?? 100;
|
|
82
|
+
const step = stepProp ?? constraints.step ?? 1;
|
|
83
|
+
// Internal state for uncontrolled mode
|
|
84
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? { from: min, to: max });
|
|
85
|
+
// Determine if controlled
|
|
86
|
+
const isControlled = controlledValue !== undefined;
|
|
87
|
+
const currentValue = isControlled ? controlledValue : internalValue;
|
|
88
|
+
// Convert to slider format [from, to]
|
|
89
|
+
const sliderValue = [
|
|
90
|
+
currentValue?.from ?? min,
|
|
91
|
+
currentValue?.to ?? max
|
|
92
|
+
];
|
|
93
|
+
// Handle value change - validation is handled by parent FormField via RHF
|
|
94
|
+
const handleValueChange = React.useCallback((newValue) => {
|
|
95
|
+
const rangeValue = { from: newValue[0], to: newValue[1] };
|
|
96
|
+
if (isControlled) {
|
|
97
|
+
onValueChange?.(rangeValue);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
setInternalValue(rangeValue);
|
|
101
|
+
}
|
|
102
|
+
}, [isControlled, onValueChange]);
|
|
103
|
+
// Handle blur (commit) - validation is handled by parent FormField via RHF
|
|
104
|
+
const handleValueCommit = React.useCallback((value) => {
|
|
105
|
+
onBlur?.();
|
|
106
|
+
}, [onBlur]);
|
|
107
|
+
// Format display value with locale-aware formatting from regional preferences
|
|
108
|
+
const displayValueText = `${formatNumber(sliderValue[0])} - ${formatNumber(sliderValue[1])}`;
|
|
109
|
+
return (_jsxs("div", { ref: ref, className: className, "data-field": name, children: [showValue && (_jsx("div", { className: "flex items-center justify-end mb-1", children: _jsx("span", { className: "text-sm text-muted-foreground tabular-nums", children: displayValueText }) })), _jsxs(SliderPrimitive.Root, { value: sliderValue, onValueChange: handleValueChange, onValueCommit: handleValueCommit, min: min, max: max, step: step, disabled: disabled, orientation: orientation, "data-slot": "range-slider", className: cn("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-[var(--opacity-disabled)] data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col"), children: [_jsx(SliderPrimitive.Track, { "data-slot": "slider-track", className: cn("bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"), children: _jsx(SliderPrimitive.Range, { "data-slot": "slider-range", className: cn("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full") }) }), _jsx(SliderPrimitive.Thumb, { "data-slot": "slider-thumb", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_RANGE_SLIDER, 'minimumValue'), className: cn("block size-4 shrink-0 rounded-full border border-primary bg-background pointer-coarse:size-6", "ring-ring hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden", "disabled:pointer-events-none disabled:opacity-[var(--opacity-disabled)]", rangeRecipe.motion.transition) }), _jsx(SliderPrimitive.Thumb, { "data-slot": "slider-thumb", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_RANGE_SLIDER, 'maximumValue'), className: cn("block size-4 shrink-0 rounded-full border border-primary bg-background pointer-coarse:size-6", "ring-ring hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden", "disabled:pointer-events-none disabled:opacity-[var(--opacity-disabled)]", rangeRecipe.motion.transition) })] })] }));
|
|
110
|
+
});
|
|
111
|
+
RangeSlider.displayName = "RangeSlider";
|
|
112
|
+
export const Slider = createCompoundPreset(SliderImpl, { Root: SliderRoot });
|
|
113
|
+
export { RangeSlider };
|
|
114
|
+
//# sourceMappingURL=slider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider.js","sourceRoot":"","sources":["../../../../../../src/components/form/controls/number/slider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ColorInputProps } from '@wildo-ai/saas-frontend-lib';
|
|
3
|
+
declare const ColorInput: React.ForwardRefExoticComponent<ColorInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
4
|
+
export { ColorInput };
|
|
5
|
+
//# sourceMappingURL=color-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-input.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/color-input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,6BAA6B,CAAA;AAGjF,QAAA,MAAM,UAAU,0FAoGd,CAED;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { cn, useI18n, Button, ButtonVariants_Variant, Input, Popover, PopoverContent, PopoverTrigger } from "@wildo-ai/saas-frontend-lib";
|
|
5
|
+
import { FrontendComponentType } from "@wildo-ai/presets-components-models";
|
|
6
|
+
import { HorizontalAlign } from "@wildo-ai/zod-decorators";
|
|
7
|
+
const ColorInput = React.forwardRef(function ColorInput({ schema, name, placeholder = "#000000", disabled, readOnly, className, value: controlledValue, onChange, onBlur, defaultValue, validationMode: validationModeProp, format = 'hex', }, ref) {
|
|
8
|
+
// Internal state for uncontrolled mode
|
|
9
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? '');
|
|
10
|
+
// Popover open state
|
|
11
|
+
const [open, setOpen] = React.useState(false);
|
|
12
|
+
// Determine if controlled
|
|
13
|
+
const isControlled = controlledValue !== undefined;
|
|
14
|
+
const currentValue = isControlled ? controlledValue : internalValue;
|
|
15
|
+
// Handle input change - validation is handled by parent FormField via RHF
|
|
16
|
+
const handleInputChange = React.useCallback((newValue) => {
|
|
17
|
+
if (isControlled) {
|
|
18
|
+
onChange?.(newValue);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
setInternalValue(newValue);
|
|
22
|
+
}
|
|
23
|
+
}, [isControlled, onChange]);
|
|
24
|
+
// Handle color picker change
|
|
25
|
+
const handleColorChange = React.useCallback((e) => {
|
|
26
|
+
const newValue = e.target.value;
|
|
27
|
+
handleInputChange(newValue);
|
|
28
|
+
}, [handleInputChange]);
|
|
29
|
+
// Handle blur - validation is handled by parent FormField via RHF
|
|
30
|
+
const handleBlur = React.useCallback(() => {
|
|
31
|
+
onBlur?.();
|
|
32
|
+
}, [onBlur]);
|
|
33
|
+
// Handle popover close
|
|
34
|
+
const handleOpenChange = React.useCallback((newOpen) => {
|
|
35
|
+
setOpen(newOpen);
|
|
36
|
+
if (!newOpen) {
|
|
37
|
+
handleBlur();
|
|
38
|
+
}
|
|
39
|
+
}, [handleBlur]);
|
|
40
|
+
const { tComponent } = useI18n({ component: FrontendComponentType.LOW_LEVEL_COLOR_INPUT });
|
|
41
|
+
// ID for accessibility
|
|
42
|
+
const colorInputId = `field-${name}`;
|
|
43
|
+
// Ensure hex format for color input
|
|
44
|
+
const displayValue = currentValue || '#000000';
|
|
45
|
+
return (_jsxs("div", { className: cn("flex items-center gap-element", className), children: [_jsxs(Popover, { open: open, onOpenChange: handleOpenChange, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(Button, { type: "button", variant: ButtonVariants_Variant.OUTLINE, disabled: disabled || readOnly, className: "h-9 w-12 border border-input shadow-xs p-0", style: { backgroundColor: displayValue }, "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_COLOR_INPUT, 'selectColor') }) }), _jsx(PopoverContent, { className: "w-auto p-card-sm", align: HorizontalAlign.START, children: _jsx("input", { type: "color", value: displayValue, onChange: handleColorChange, disabled: disabled || readOnly, className: "w-full h-10 cursor-pointer disabled:cursor-not-allowed" }) })] }), _jsx(Input, { ref: ref, schema: schema, name: `${name}-input`, value: currentValue, onChange: handleInputChange, onBlur: handleBlur, placeholder: placeholder, disabled: disabled, readOnly: readOnly, validationMode: validationModeProp, className: "flex-1" })] }));
|
|
46
|
+
});
|
|
47
|
+
ColorInput.displayName = "ColorInput";
|
|
48
|
+
export { ColorInput };
|
|
49
|
+
//# sourceMappingURL=color-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-input.js","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/color-input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-otp.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/input-otp.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAgF,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAuFjJ,eAAO,MAAM,QAAQ,kBAAmI,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { OTPInput, OTPInputContext } from "input-otp";
|
|
5
|
+
import { createCompoundPreset, cn, useIconRegistry, StandardIconReference, IconSize, useUI } from "@wildo-ai/saas-frontend-lib";
|
|
6
|
+
import { UIBehavior, FormControlVariant } from "@wildo-ai/presets-components-models";
|
|
7
|
+
const InputOTPRoot = React.forwardRef(function InputOTPRoot({ className, containerClassName, render: _render, children, ...props }, ref) {
|
|
8
|
+
return (_jsx(OTPInput, { ref: ref, "data-slot": "input-otp", containerClassName: cn("flex items-center gap-2 has-disabled:opacity-[var(--opacity-disabled)]", containerClassName), className: cn("disabled:cursor-not-allowed", className), ...props, children: children }));
|
|
9
|
+
});
|
|
10
|
+
function InputOTPGroup({ className, ...props }) {
|
|
11
|
+
return (_jsx("div", { "data-slot": "input-otp-group", className: cn("flex items-center", className), ...props }));
|
|
12
|
+
}
|
|
13
|
+
function InputOTPSlot({ index, className, ...props }) {
|
|
14
|
+
const inputOTPContext = React.useContext(OTPInputContext);
|
|
15
|
+
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
16
|
+
const { getRecipe } = useUI();
|
|
17
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
18
|
+
return (_jsxs("div", { "data-slot": "input-otp-slot", "data-active": isActive, className: cn(
|
|
19
|
+
// Structure
|
|
20
|
+
"relative flex h-9 w-9 items-center justify-center border-y border-e text-sm shadow-xs outline-none first:rounded-s-md first:border-s last:rounded-e-md",
|
|
21
|
+
// Style from FORM_CONTROL.DEFAULT recipe
|
|
22
|
+
recipe.base,
|
|
23
|
+
// Active state — standardized focus ring (decision 1.16)
|
|
24
|
+
"data-[active=true]:border-ring data-[active=true]:ring-2 data-[active=true]:ring-ring data-[active=true]:z-10",
|
|
25
|
+
// Invalid states
|
|
26
|
+
recipe.states.invalid, "data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 data-[active=true]:aria-invalid:border-destructive",
|
|
27
|
+
// Motion
|
|
28
|
+
recipe.motion.transition, className), ...props, children: [char, hasFakeCaret && (_jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: _jsx("div", { className: "animate-caret-blink bg-foreground h-4 w-px duration-1000" }) }))] }));
|
|
29
|
+
}
|
|
30
|
+
function InputOTPSeparator({ ...props }) {
|
|
31
|
+
const { renderIcon } = useIconRegistry();
|
|
32
|
+
return (_jsx("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: renderIcon(StandardIconReference.MINUS, { size: IconSize.SM }) }));
|
|
33
|
+
}
|
|
34
|
+
export const InputOTP = createCompoundPreset(InputOTPRoot, { Group: InputOTPGroup, Slot: InputOTPSlot, Separator: InputOTPSeparator });
|
|
35
|
+
//# sourceMappingURL=input-otp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-otp.js","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/input-otp.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAErD,OAAO,EAAE,oBAAoB,EAAE,EAAE,EAAE,eAAe,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAA;AAC/H,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAEpF,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAkC,SAAS,YAAY,CAAC,EAC3F,SAAS,EACT,kBAAkB,EAClB,MAAM,EAAE,OAAO,EACf,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,GAAG;IACJ,OAAO,CACL,KAAC,QAAQ,IACP,GAAG,EAAE,GAAG,eACE,WAAW,EACrB,kBAAkB,EAAE,EAAE,CACpB,wEAAwE,EACxE,kBAAkB,CACnB,EACD,SAAS,EAAE,EAAE,CAAC,6BAA6B,EAAE,SAAS,CAAC,KACnD,KAAK,YAER,QAAQ,GACA,CACZ,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,SAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAsB;IAChE,OAAO,CACL,2BACY,iBAAiB,EAC3B,SAAS,EAAE,EAAE,CAAC,mBAAmB,EAAE,SAAS,CAAC,KACzC,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,KAAK,EACL,SAAS,EACT,GAAG,KAAK,EACU;IAClB,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;IACzD,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5E,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAA;IAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,YAAY,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAE7E,OAAO,CACL,4BACY,gBAAgB,iBACb,QAAQ,EACrB,SAAS,EAAE,EAAE;QACX,YAAY;QACZ,wJAAwJ;QACxJ,yCAAyC;QACzC,MAAM,CAAC,IAAI;QACX,yDAAyD;QACzD,+GAA+G;QAC/G,iBAAiB;QACjB,MAAM,CAAC,MAAM,CAAC,OAAO,EACrB,iKAAiK;QACjK,SAAS;QACT,MAAM,CAAC,MAAM,CAAC,UAAU,EACxB,SAAS,CACV,KACG,KAAK,aAER,IAAI,EACJ,YAAY,IAAI,CACf,cAAK,SAAS,EAAC,uEAAuE,YACpF,cAAK,SAAS,EAAC,0DAA0D,GAAG,GACxE,CACP,IACG,CACP,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAA0B;IAC7D,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAA;IAExC,OAAO,CACL,2BAAe,qBAAqB,EAAC,IAAI,EAAC,WAAW,KAAK,KAAK,YAC5D,UAAU,CAAC,qBAAqB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,GAC3D,CACP,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,oBAAoB,CAAmB,YAAY,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PasswordInput Component
|
|
3
|
+
*
|
|
4
|
+
* A password input field with show/hide toggle button.
|
|
5
|
+
* Uses the eye icon to toggle visibility of the password.
|
|
6
|
+
*/
|
|
7
|
+
import * as React from "react";
|
|
8
|
+
import type { PasswordInputProps } from '@wildo-ai/saas-frontend-lib';
|
|
9
|
+
/**
|
|
10
|
+
* PasswordInput component
|
|
11
|
+
*
|
|
12
|
+
* Renders a password input with a show/hide toggle button
|
|
13
|
+
*/
|
|
14
|
+
declare const PasswordInput: React.ForwardRefExoticComponent<PasswordInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
15
|
+
export { PasswordInput };
|
|
16
|
+
//# sourceMappingURL=password-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"password-input.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/password-input.tsx"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,6BAA6B,CAAA;AAGvF;;;;GAIG;AACH,QAAA,MAAM,aAAa,6FA4FjB,CAED;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
/**
|
|
4
|
+
* PasswordInput Component
|
|
5
|
+
*
|
|
6
|
+
* A password input field with show/hide toggle button.
|
|
7
|
+
* Uses the eye icon to toggle visibility of the password.
|
|
8
|
+
*/
|
|
9
|
+
import * as React from "react";
|
|
10
|
+
import { cn, Button, ButtonVariants_Variant, InputRoot, StandardIconReference, IconSize, useIconRegistry, useI18n } from "@wildo-ai/saas-frontend-lib";
|
|
11
|
+
import { FrontendComponentType, ButtonSize } from "@wildo-ai/presets-components-models";
|
|
12
|
+
/**
|
|
13
|
+
* PasswordInput component
|
|
14
|
+
*
|
|
15
|
+
* Renders a password input with a show/hide toggle button
|
|
16
|
+
*/
|
|
17
|
+
const PasswordInput = React.forwardRef(function PasswordInput({ schema, name, disabled, readOnly, autoFocus, className, value: controlledValue, onChange, onBlur, defaultValue, validationMode: validationModeProp, placeholder, autoComplete = "current-password", showToggle = true, }, ref) {
|
|
18
|
+
const { renderIcon } = useIconRegistry();
|
|
19
|
+
const { tComponent } = useI18n({ component: FrontendComponentType.LOW_LEVEL_PASSWORD_INPUT });
|
|
20
|
+
// State for password visibility
|
|
21
|
+
const [isVisible, setIsVisible] = React.useState(false);
|
|
22
|
+
// Internal state for uncontrolled mode
|
|
23
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? '');
|
|
24
|
+
// Determine if controlled
|
|
25
|
+
const isControlled = controlledValue !== undefined;
|
|
26
|
+
const currentValue = isControlled ? controlledValue : internalValue;
|
|
27
|
+
// Handle change - validation is handled by parent FormField via RHF
|
|
28
|
+
const handleChange = React.useCallback((e) => {
|
|
29
|
+
const newValue = e.target.value;
|
|
30
|
+
if (isControlled) {
|
|
31
|
+
onChange?.(newValue);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
setInternalValue(newValue);
|
|
35
|
+
}
|
|
36
|
+
}, [isControlled, onChange]);
|
|
37
|
+
// Handle blur - validation is handled by parent FormField via RHF
|
|
38
|
+
const handleBlur = React.useCallback(() => {
|
|
39
|
+
onBlur?.();
|
|
40
|
+
}, [onBlur]);
|
|
41
|
+
// Toggle visibility
|
|
42
|
+
const toggleVisibility = React.useCallback(() => {
|
|
43
|
+
setIsVisible(prev => !prev);
|
|
44
|
+
}, []);
|
|
45
|
+
// ID for accessibility
|
|
46
|
+
const inputId = `field-${name}`;
|
|
47
|
+
const toggleButton = showToggle && !disabled ? (_jsx(Button, { type: "button", variant: ButtonVariants_Variant.GHOST, size: ButtonSize.ICON, onClick: toggleVisibility, tabIndex: -1, "aria-label": isVisible
|
|
48
|
+
? tComponent(FrontendComponentType.LOW_LEVEL_PASSWORD_INPUT, 'hidePassword')
|
|
49
|
+
: tComponent(FrontendComponentType.LOW_LEVEL_PASSWORD_INPUT, 'showPassword'), className: "h-9 w-9 hover:bg-transparent", children: renderIcon(isVisible ? StandardIconReference.EYE_OFF : StandardIconReference.EYE, { size: IconSize.SM, className: "text-muted-foreground" }) })) : undefined;
|
|
50
|
+
return (_jsx(InputRoot, { ref: ref, id: inputId, name: name, type: isVisible ? 'text' : 'password', placeholder: placeholder, autoComplete: autoComplete, disabled: disabled, readOnly: readOnly, autoFocus: autoFocus, value: currentValue, onChange: handleChange, onBlur: handleBlur, suffix: toggleButton, wrapperClassName: className, className: cn(readOnly && "bg-muted cursor-default") }));
|
|
51
|
+
});
|
|
52
|
+
PasswordInput.displayName = "PasswordInput";
|
|
53
|
+
export { PasswordInput };
|
|
54
|
+
//# sourceMappingURL=password-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"password-input.js","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/password-input.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAEtJ,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAEvF;;;;GAIG;AACH,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAAuC,SAAS,aAAa,CAAC,EAClG,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,SAAS,EACT,KAAK,EAAE,eAAe,EACtB,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,cAAc,EAAE,kBAAkB,EAClC,WAAW,EACX,YAAY,GAAG,kBAAkB,EACjC,UAAU,GAAG,IAAI,GAClB,EAAE,GAAG;IACJ,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAA;IACxC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,qBAAqB,CAAC,wBAAwB,EAAE,CAAC,CAAA;IAE7F,gCAAgC;IAChC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEvD,uCAAuC;IACvC,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,YAAY,IAAI,EAAE,CAAC,CAAA;IAEpF,0BAA0B;IAC1B,MAAM,YAAY,GAAG,eAAe,KAAK,SAAS,CAAA;IAClD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAA;IAEnE,oEAAoE;IACpE,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAsC,EAAE,EAAE;QAChF,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;QAE/B,IAAI,YAAY,EAAE,CAAC;YACjB,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,QAAQ,CAAC,CAAA;QAC5B,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAA;IAE5B,kEAAkE;IAClE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,EAAE,CAAA;IACZ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,oBAAoB;IACpB,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC9C,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,uBAAuB;IACvB,MAAM,OAAO,GAAG,SAAS,IAAI,EAAE,CAAA;IAE/B,MAAM,YAAY,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC7C,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,sBAAsB,CAAC,KAAK,EACrC,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,CAAC,CAAC,gBACA,SAAS;YACnB,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC5E,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,wBAAwB,EAAE,cAAc,CAAC,EAE9E,SAAS,EAAC,8BAA8B,YAEvC,UAAU,CACT,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,EACrE,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAC1D,GACM,CACV,CAAC,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO,CACL,KAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EACrC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,SAAS,EAC3B,SAAS,EAAE,EAAE,CAAC,QAAQ,IAAI,yBAAyB,CAAC,GACpD,CACH,CAAA;AACH,CAAC,CAAC,CAED;AAAC,aAAgE,CAAC,WAAW,GAAG,eAAe,CAAA;AAEhG,OAAO,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/textarea.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAA8B,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAiH/F,eAAO,MAAM,QAAQ,kBAA+E,CAAA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { cn, useUI, createCompoundPreset } from "@wildo-ai/saas-frontend-lib";
|
|
5
|
+
import { UIBehavior, FormControlVariant } from "@wildo-ai/presets-components-models";
|
|
6
|
+
import { getStringConstraints, } from "@wildo-ai/zod-decorators";
|
|
7
|
+
const TextareaRoot = React.forwardRef(({ className, ...props }, ref) => {
|
|
8
|
+
const { getRecipe } = useUI();
|
|
9
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
10
|
+
return (_jsx("textarea", { "data-slot": "textarea", className: cn(
|
|
11
|
+
// Structure
|
|
12
|
+
"flex min-h-16 w-full px-card-sm py-card-sm outline-none",
|
|
13
|
+
// Style from FORM_CONTROL.DEFAULT recipe
|
|
14
|
+
recipe.base, recipe.states.focus, recipe.states.disabled, recipe.states.invalid, recipe.motion.transition, className), ref: ref, ...props }));
|
|
15
|
+
});
|
|
16
|
+
TextareaRoot.displayName = "TextareaRoot";
|
|
17
|
+
const TextareaImpl = React.forwardRef(({ schema, name, placeholder, disabled, readOnly, autoFocus, className, value: controlledValue, onChange, onBlur, defaultValue, validationMode: validationModeProp, rows = 4, autoResize = false, }, ref) => {
|
|
18
|
+
const { getRecipe } = useUI();
|
|
19
|
+
const recipe = getRecipe(UIBehavior.FORM_CONTROL, FormControlVariant.DEFAULT);
|
|
20
|
+
// Internal state for uncontrolled mode
|
|
21
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? '');
|
|
22
|
+
// Determine if controlled
|
|
23
|
+
const isControlled = controlledValue !== undefined;
|
|
24
|
+
const currentValue = isControlled ? controlledValue : internalValue;
|
|
25
|
+
// Auto-detect from schema
|
|
26
|
+
const constraints = getStringConstraints(schema);
|
|
27
|
+
// Handle change - validation is handled by parent FormField via RHF
|
|
28
|
+
const handleChange = React.useCallback((e) => {
|
|
29
|
+
const rawValue = e.target.value;
|
|
30
|
+
if (isControlled) {
|
|
31
|
+
onChange?.(rawValue);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
setInternalValue(rawValue);
|
|
35
|
+
}
|
|
36
|
+
}, [isControlled, onChange]);
|
|
37
|
+
// Handle blur - validation is handled by parent FormField via RHF
|
|
38
|
+
const handleBlur = React.useCallback(() => {
|
|
39
|
+
onBlur?.();
|
|
40
|
+
}, [onBlur]);
|
|
41
|
+
// ID for accessibility
|
|
42
|
+
const textareaId = `field-${name}`;
|
|
43
|
+
return (_jsx("textarea", { ref: ref, id: textareaId, name: name, placeholder: placeholder, disabled: disabled, readOnly: readOnly, autoFocus: autoFocus, value: currentValue, onChange: handleChange, onBlur: handleBlur, rows: rows, maxLength: constraints.maxLength, "data-slot": "textarea", className: cn(
|
|
44
|
+
// Structure
|
|
45
|
+
"flex min-h-16 w-full px-card-sm py-card-sm outline-none",
|
|
46
|
+
// Style from FORM_CONTROL.DEFAULT recipe
|
|
47
|
+
recipe.base, recipe.states.focus, recipe.states.disabled, recipe.states.invalid, recipe.motion.transition, autoResize && "field-sizing-content resize-none", readOnly && "bg-muted cursor-default", className) }));
|
|
48
|
+
});
|
|
49
|
+
TextareaImpl.displayName = "Textarea";
|
|
50
|
+
export const Textarea = createCompoundPreset(TextareaImpl, { Root: TextareaRoot });
|
|
51
|
+
//# sourceMappingURL=textarea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../../../src/components/form/controls/string/textarea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aspect-ratio.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/aspect-ratio.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAEtC;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
|
|
4
|
+
function AspectRatio({ ...props }) {
|
|
5
|
+
return _jsx(AspectRatioPrimitive.Root, { "data-slot": "aspect-ratio", ...props });
|
|
6
|
+
}
|
|
7
|
+
export { AspectRatio };
|
|
8
|
+
//# sourceMappingURL=aspect-ratio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aspect-ratio.js","sourceRoot":"","sources":["../../../../src/components/layout/aspect-ratio.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAA;AAGpE,SAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACS;IACjB,OAAO,KAAC,oBAAoB,CAAC,IAAI,iBAAW,cAAc,KAAK,KAAK,GAAI,CAAA;AAC1E,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"carousel.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/carousel.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAA8B,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAoO/F,eAAO,MAAM,QAAQ,kBAKnB,CAAA"}
|