@hanzo/ui 8.0.26 → 8.0.28
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/README.md +1 -1
- package/dist/backends/gui/aspect-ratio.cjs +15 -0
- package/dist/backends/gui/aspect-ratio.d.ts +15 -0
- package/dist/backends/gui/aspect-ratio.d.ts.map +1 -0
- package/dist/backends/gui/aspect-ratio.js +13 -0
- package/dist/backends/gui/aspect-ratio.js.map +1 -0
- package/dist/backends/gui/avatar.cjs +20 -0
- package/dist/backends/gui/avatar.d.ts +17 -0
- package/dist/backends/gui/avatar.d.ts.map +1 -0
- package/dist/backends/gui/avatar.js +16 -0
- package/dist/backends/gui/avatar.js.map +1 -0
- package/dist/backends/gui/badge.cjs +80 -0
- package/dist/backends/gui/badge.d.ts +20 -0
- package/dist/backends/gui/badge.d.ts.map +1 -0
- package/dist/backends/gui/badge.js +76 -0
- package/dist/backends/gui/badge.js.map +1 -0
- package/dist/backends/gui/button.cjs +114 -0
- package/dist/backends/gui/button.d.ts +30 -0
- package/dist/backends/gui/button.d.ts.map +1 -0
- package/dist/backends/gui/button.js +111 -0
- package/dist/backends/gui/button.js.map +1 -0
- package/dist/backends/gui/card.cjs +49 -0
- package/dist/backends/gui/card.d.ts +45 -0
- package/dist/backends/gui/card.d.ts.map +1 -0
- package/dist/backends/gui/card.js +41 -0
- package/dist/backends/gui/card.js.map +1 -0
- package/dist/backends/gui/checkbox.cjs +16 -0
- package/dist/backends/gui/checkbox.d.ts +10 -0
- package/dist/backends/gui/checkbox.d.ts.map +1 -0
- package/dist/backends/gui/checkbox.js +14 -0
- package/dist/backends/gui/checkbox.js.map +1 -0
- package/dist/backends/gui/collapsible.cjs +15 -0
- package/dist/backends/gui/collapsible.d.ts +11 -0
- package/dist/backends/gui/collapsible.d.ts.map +1 -0
- package/dist/backends/gui/collapsible.js +11 -0
- package/dist/backends/gui/collapsible.js.map +1 -0
- package/dist/backends/gui/command.cjs +198 -0
- package/dist/backends/gui/command.d.ts +87 -0
- package/dist/backends/gui/command.d.ts.map +1 -0
- package/dist/backends/gui/command.js +188 -0
- package/dist/backends/gui/command.js.map +1 -0
- package/dist/backends/gui/command.logic.cjs +49 -0
- package/dist/backends/gui/command.logic.d.ts +21 -0
- package/dist/backends/gui/command.logic.d.ts.map +1 -0
- package/dist/backends/gui/command.logic.js +45 -0
- package/dist/backends/gui/command.logic.js.map +1 -0
- package/dist/backends/gui/dialog.cjs +41 -0
- package/dist/backends/gui/dialog.d.ts +28 -0
- package/dist/backends/gui/dialog.d.ts.map +1 -0
- package/dist/backends/gui/dialog.js +30 -0
- package/dist/backends/gui/dialog.js.map +1 -0
- package/dist/backends/gui/dropdown-menu.cjs +168 -0
- package/dist/backends/gui/dropdown-menu.d.ts +99 -0
- package/dist/backends/gui/dropdown-menu.d.ts.map +1 -0
- package/dist/backends/gui/dropdown-menu.js +119 -0
- package/dist/backends/gui/dropdown-menu.js.map +1 -0
- package/dist/backends/gui/gesture.cjs +74 -0
- package/dist/backends/gui/gesture.d.ts +68 -0
- package/dist/backends/gui/gesture.d.ts.map +1 -0
- package/dist/backends/gui/gesture.js +69 -0
- package/dist/backends/gui/gesture.js.map +1 -0
- package/dist/backends/gui/index.cjs +134 -0
- package/dist/backends/gui/index.d.ts +25 -2
- package/dist/backends/gui/index.d.ts.map +1 -0
- package/dist/backends/gui/index.js +41 -0
- package/dist/backends/gui/index.js.map +1 -0
- package/dist/backends/gui/ink.cjs +14 -0
- package/dist/backends/gui/ink.d.ts +8 -0
- package/dist/backends/gui/ink.d.ts.map +1 -0
- package/dist/backends/gui/ink.js +11 -0
- package/dist/backends/gui/ink.js.map +1 -0
- package/dist/backends/gui/input.cjs +39 -0
- package/dist/backends/gui/input.d.ts +20 -0
- package/dist/backends/gui/input.d.ts.map +1 -0
- package/dist/backends/gui/input.js +37 -0
- package/dist/backends/gui/input.js.map +1 -0
- package/dist/backends/gui/label.cjs +10 -0
- package/dist/backends/gui/label.d.ts +7 -0
- package/dist/backends/gui/label.d.ts.map +1 -0
- package/dist/backends/gui/label.js +8 -0
- package/dist/backends/gui/label.js.map +1 -0
- package/dist/backends/gui/popover.cjs +39 -0
- package/dist/backends/gui/popover.d.ts +23 -0
- package/dist/backends/gui/popover.d.ts.map +1 -0
- package/dist/backends/gui/popover.js +33 -0
- package/dist/backends/gui/popover.js.map +1 -0
- package/dist/backends/gui/progress.cjs +10 -0
- package/dist/backends/gui/progress.d.ts +7 -0
- package/dist/backends/gui/progress.d.ts.map +1 -0
- package/dist/backends/gui/progress.js +8 -0
- package/dist/backends/gui/progress.js.map +1 -0
- package/dist/backends/gui/resizable.cjs +174 -0
- package/dist/backends/gui/resizable.d.ts +54 -0
- package/dist/backends/gui/resizable.d.ts.map +1 -0
- package/dist/backends/gui/resizable.js +168 -0
- package/dist/backends/gui/resizable.js.map +1 -0
- package/dist/backends/gui/resizable.logic.cjs +46 -0
- package/dist/backends/gui/resizable.logic.d.ts +24 -0
- package/dist/backends/gui/resizable.logic.d.ts.map +1 -0
- package/dist/backends/gui/resizable.logic.js +43 -0
- package/dist/backends/gui/resizable.logic.js.map +1 -0
- package/dist/backends/gui/scroll-area.cjs +126 -0
- package/dist/backends/gui/scroll-area.d.ts +46 -0
- package/dist/backends/gui/scroll-area.d.ts.map +1 -0
- package/dist/backends/gui/scroll-area.js +123 -0
- package/dist/backends/gui/scroll-area.js.map +1 -0
- package/dist/backends/gui/select.cjs +54 -0
- package/dist/backends/gui/select.d.ts +31 -0
- package/dist/backends/gui/select.d.ts.map +1 -0
- package/dist/backends/gui/select.js +43 -0
- package/dist/backends/gui/select.js.map +1 -0
- package/dist/backends/gui/separator.cjs +10 -0
- package/dist/backends/gui/separator.d.ts +11 -0
- package/dist/backends/gui/separator.d.ts.map +1 -0
- package/dist/backends/gui/separator.js +8 -0
- package/dist/backends/gui/separator.js.map +1 -0
- package/dist/backends/gui/slider.cjs +13 -0
- package/dist/backends/gui/slider.d.ts +7 -0
- package/dist/backends/gui/slider.d.ts.map +1 -0
- package/dist/backends/gui/slider.js +11 -0
- package/dist/backends/gui/slider.js.map +1 -0
- package/dist/backends/gui/slot.cjs +10 -0
- package/dist/backends/gui/slot.d.ts +7 -0
- package/dist/backends/gui/slot.d.ts.map +1 -0
- package/dist/backends/gui/slot.js +7 -0
- package/dist/backends/gui/slot.js.map +1 -0
- package/dist/backends/gui/switch.cjs +13 -0
- package/dist/backends/gui/switch.d.ts +7 -0
- package/dist/backends/gui/switch.d.ts.map +1 -0
- package/dist/backends/gui/switch.js +11 -0
- package/dist/backends/gui/switch.js.map +1 -0
- package/dist/backends/gui/tabs.cjs +19 -0
- package/dist/backends/gui/tabs.d.ts +13 -0
- package/dist/backends/gui/tabs.d.ts.map +1 -0
- package/dist/backends/gui/tabs.js +14 -0
- package/dist/backends/gui/tabs.js.map +1 -0
- package/dist/backends/gui/textarea.cjs +58 -0
- package/dist/backends/gui/textarea.d.ts +12 -0
- package/dist/backends/gui/textarea.d.ts.map +1 -0
- package/dist/backends/gui/textarea.js +23 -0
- package/dist/backends/gui/textarea.js.map +1 -0
- package/dist/backends/gui/toaster.cjs +13 -0
- package/dist/backends/gui/toaster.d.ts +29 -0
- package/dist/backends/gui/toaster.d.ts.map +1 -0
- package/dist/backends/gui/toaster.js +10 -0
- package/dist/backends/gui/toaster.js.map +1 -0
- package/dist/backends/gui/tooltip.cjs +22 -0
- package/dist/backends/gui/tooltip.d.ts +13 -0
- package/dist/backends/gui/tooltip.d.ts.map +1 -0
- package/dist/backends/gui/tooltip.js +17 -0
- package/dist/backends/gui/tooltip.js.map +1 -0
- package/dist/canvas.cjs +27 -14
- package/dist/canvas.d.ts +1 -0
- package/dist/canvas.d.ts.map +1 -0
- package/dist/canvas.js +10 -1
- package/dist/canvas.js.map +1 -1
- package/dist/cd/layout.cjs +143 -0
- package/dist/cd/layout.d.ts +1 -0
- package/dist/cd/layout.d.ts.map +1 -0
- package/dist/cd/layout.js +141 -0
- package/dist/cd/layout.js.map +1 -0
- package/dist/cd/status.cjs +132 -0
- package/dist/cd/status.d.ts +2 -1
- package/dist/cd/status.d.ts.map +1 -0
- package/dist/cd/status.js +120 -0
- package/dist/cd/status.js.map +1 -0
- package/dist/cd/time.cjs +60 -0
- package/dist/cd/time.d.ts +1 -0
- package/dist/cd/time.d.ts.map +1 -0
- package/dist/cd/time.js +56 -0
- package/dist/cd/time.js.map +1 -0
- package/dist/cd/types.cjs +19 -0
- package/dist/cd/types.d.ts +1 -0
- package/dist/cd/types.d.ts.map +1 -0
- package/dist/cd/types.js +19 -0
- package/dist/cd/types.js.map +1 -0
- package/dist/core/cn.cjs +15 -0
- package/dist/core/cn.d.ts +5 -5
- package/dist/core/cn.d.ts.map +1 -0
- package/dist/core/cn.js +13 -0
- package/dist/core/cn.js.map +1 -0
- package/dist/core/fonts.cjs +26 -0
- package/dist/core/fonts.d.ts +1 -0
- package/dist/core/fonts.d.ts.map +1 -0
- package/dist/core/fonts.js +24 -0
- package/dist/core/fonts.js.map +1 -0
- package/dist/core/index.cjs +31 -0
- package/dist/core/index.d.ts +4 -3
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +9 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/tokens.cjs +35 -0
- package/dist/core/tokens.d.ts +1 -0
- package/dist/core/tokens.d.ts.map +1 -0
- package/dist/core/tokens.js +16 -0
- package/dist/core/tokens.js.map +1 -0
- package/dist/dashboard.cjs +24 -14
- package/dist/dashboard.d.ts +1 -0
- package/dist/dashboard.d.ts.map +1 -0
- package/dist/dashboard.js +7 -1
- package/dist/dashboard.js.map +1 -1
- package/dist/data.cjs +28 -14
- package/dist/data.d.ts +1 -0
- package/dist/data.d.ts.map +1 -0
- package/dist/data.js +11 -1
- package/dist/data.js.map +1 -1
- package/dist/framework/CollectionBuilder.cjs +77 -0
- package/dist/framework/CollectionBuilder.d.ts +3 -2
- package/dist/framework/CollectionBuilder.d.ts.map +1 -0
- package/dist/framework/CollectionBuilder.js +75 -0
- package/dist/framework/CollectionBuilder.js.map +1 -0
- package/dist/framework/CollectionsBrowser.cjs +107 -0
- package/dist/framework/CollectionsBrowser.d.ts +3 -2
- package/dist/framework/CollectionsBrowser.d.ts.map +1 -0
- package/dist/framework/CollectionsBrowser.js +105 -0
- package/dist/framework/CollectionsBrowser.js.map +1 -0
- package/dist/framework/DocTypeDetail.cjs +187 -0
- package/dist/framework/DocTypeDetail.d.ts +2 -1
- package/dist/framework/DocTypeDetail.d.ts.map +1 -0
- package/dist/framework/DocTypeDetail.js +185 -0
- package/dist/framework/DocTypeDetail.js.map +1 -0
- package/dist/framework/DocTypeRecords.cjs +130 -0
- package/dist/framework/DocTypeRecords.d.ts +4 -3
- package/dist/framework/DocTypeRecords.d.ts.map +1 -0
- package/dist/framework/DocTypeRecords.js +128 -0
- package/dist/framework/DocTypeRecords.js.map +1 -0
- package/dist/framework/MediaGrid.cjs +134 -0
- package/dist/framework/MediaGrid.d.ts +4 -3
- package/dist/framework/MediaGrid.d.ts.map +1 -0
- package/dist/framework/MediaGrid.js +132 -0
- package/dist/framework/MediaGrid.js.map +1 -0
- package/dist/framework/RecordCards.cjs +47 -0
- package/dist/framework/RecordCards.d.ts +1 -0
- package/dist/framework/RecordCards.d.ts.map +1 -0
- package/dist/framework/RecordCards.js +45 -0
- package/dist/framework/RecordCards.js.map +1 -0
- package/dist/framework/builder-logic.cjs +169 -0
- package/dist/framework/builder-logic.d.ts +2 -1
- package/dist/framework/builder-logic.d.ts.map +1 -0
- package/dist/framework/builder-logic.js +156 -0
- package/dist/framework/builder-logic.js.map +1 -0
- package/dist/framework/client.cjs +95 -0
- package/dist/framework/client.d.ts +2 -1
- package/dist/framework/client.d.ts.map +1 -0
- package/dist/framework/client.js +91 -0
- package/dist/framework/client.js.map +1 -0
- package/dist/framework/core.cjs +36 -212
- package/dist/framework/core.d.ts +7 -6
- package/dist/framework/core.d.ts.map +1 -0
- package/dist/framework/core.js +20 -2
- package/dist/framework/core.js.map +1 -1
- package/dist/framework/data.cjs +41 -0
- package/dist/framework/data.d.ts +3 -2
- package/dist/framework/data.d.ts.map +1 -0
- package/dist/framework/data.js +38 -0
- package/dist/framework/data.js.map +1 -0
- package/dist/framework/fields.cjs +358 -0
- package/dist/framework/fields.d.ts +2 -1
- package/dist/framework/fields.d.ts.map +1 -0
- package/dist/framework/fields.js +335 -0
- package/dist/framework/fields.js.map +1 -0
- package/dist/framework/index.cjs +58 -1339
- package/dist/framework/index.d.ts +10 -9
- package/dist/framework/index.d.ts.map +1 -0
- package/dist/framework/index.js +35 -1117
- package/dist/framework/index.js.map +1 -1
- package/dist/framework/media.cjs +133 -0
- package/dist/framework/media.d.ts +2 -1
- package/dist/framework/media.d.ts.map +1 -0
- package/dist/framework/media.js +124 -0
- package/dist/framework/media.js.map +1 -0
- package/dist/framework/parts.cjs +60 -0
- package/dist/framework/parts.d.ts +1 -0
- package/dist/framework/parts.d.ts.map +1 -0
- package/dist/framework/parts.js +51 -0
- package/dist/framework/parts.js.map +1 -0
- package/dist/framework/responsive.cjs +62 -0
- package/dist/framework/responsive.d.ts +1 -0
- package/dist/framework/responsive.d.ts.map +1 -0
- package/dist/framework/responsive.js +58 -0
- package/dist/framework/responsive.js.map +1 -0
- package/dist/framework/types.cjs +20 -0
- package/dist/framework/types.d.ts +1 -0
- package/dist/framework/types.d.ts.map +1 -0
- package/dist/framework/types.js +18 -0
- package/dist/framework/types.js.map +1 -0
- package/dist/gitops.cjs +21 -14
- package/dist/gitops.d.ts +1 -0
- package/dist/gitops.d.ts.map +1 -0
- package/dist/gitops.js +4 -1
- package/dist/gitops.js.map +1 -1
- package/dist/gui-config.cjs +145 -112
- package/dist/gui-config.d.ts +1 -0
- package/dist/gui-config.d.ts.map +1 -0
- package/dist/gui-config.js +140 -104
- package/dist/gui-config.js.map +1 -1
- package/dist/index.cjs +40 -1144
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -1018
- package/dist/index.js.map +1 -1
- package/dist/models/ModelSelector.cjs +58 -0
- package/dist/models/ModelSelector.d.ts +10 -6
- package/dist/models/ModelSelector.d.ts.map +1 -0
- package/dist/models/ModelSelector.js +56 -0
- package/dist/models/ModelSelector.js.map +1 -0
- package/dist/models/catalog.cjs +191 -0
- package/dist/models/catalog.d.ts +2 -1
- package/dist/models/catalog.d.ts.map +1 -0
- package/dist/models/catalog.js +185 -0
- package/dist/models/catalog.js.map +1 -0
- package/dist/models/index.cjs +16 -0
- package/dist/models/index.d.ts +6 -5
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +8 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/types.cjs +8 -0
- package/dist/models/types.d.ts +1 -0
- package/dist/models/types.d.ts.map +1 -0
- package/dist/models/types.js +8 -0
- package/dist/models/types.js.map +1 -0
- package/dist/oss/blueprint.cjs +96 -0
- package/dist/oss/blueprint.d.ts +1 -0
- package/dist/oss/blueprint.d.ts.map +1 -0
- package/dist/oss/blueprint.js +94 -0
- package/dist/oss/blueprint.js.map +1 -0
- package/dist/oss/catalog.cjs +174 -0
- package/dist/oss/catalog.d.ts +1 -0
- package/dist/oss/catalog.d.ts.map +1 -0
- package/dist/oss/catalog.js +165 -0
- package/dist/oss/catalog.js.map +1 -0
- package/dist/oss.cjs +27 -188
- package/dist/oss.d.ts +3 -2
- package/dist/oss.d.ts.map +1 -0
- package/dist/oss.js +12 -178
- package/dist/oss.js.map +1 -1
- package/dist/primitives/AspectRatio.cjs +8 -0
- package/dist/primitives/AspectRatio.d.ts +2 -1
- package/dist/primitives/AspectRatio.d.ts.map +1 -0
- package/dist/primitives/AspectRatio.js +5 -0
- package/dist/primitives/AspectRatio.js.map +1 -0
- package/dist/primitives/Avatar.cjs +8 -0
- package/dist/primitives/Avatar.d.ts +2 -1
- package/dist/primitives/Avatar.d.ts.map +1 -0
- package/dist/primitives/Avatar.js +5 -0
- package/dist/primitives/Avatar.js.map +1 -0
- package/dist/primitives/AvatarFallback.cjs +8 -0
- package/dist/primitives/AvatarFallback.d.ts +2 -1
- package/dist/primitives/AvatarFallback.d.ts.map +1 -0
- package/dist/primitives/AvatarFallback.js +5 -0
- package/dist/primitives/AvatarFallback.js.map +1 -0
- package/dist/primitives/AvatarImage.cjs +8 -0
- package/dist/primitives/AvatarImage.d.ts +2 -1
- package/dist/primitives/AvatarImage.d.ts.map +1 -0
- package/dist/primitives/AvatarImage.js +5 -0
- package/dist/primitives/AvatarImage.js.map +1 -0
- package/dist/primitives/Badge.cjs +8 -0
- package/dist/primitives/Badge.d.ts +2 -1
- package/dist/primitives/Badge.d.ts.map +1 -0
- package/dist/primitives/Badge.js +5 -0
- package/dist/primitives/Badge.js.map +1 -0
- package/dist/primitives/Button.cjs +8 -0
- package/dist/primitives/Button.d.ts +2 -1
- package/dist/primitives/Button.d.ts.map +1 -0
- package/dist/primitives/Button.js +5 -0
- package/dist/primitives/Button.js.map +1 -0
- package/dist/primitives/Card.cjs +8 -0
- package/dist/primitives/Card.d.ts +2 -1
- package/dist/primitives/Card.d.ts.map +1 -0
- package/dist/primitives/Card.js +5 -0
- package/dist/primitives/Card.js.map +1 -0
- package/dist/primitives/CardAction.cjs +8 -0
- package/dist/primitives/CardAction.d.ts +2 -1
- package/dist/primitives/CardAction.d.ts.map +1 -0
- package/dist/primitives/CardAction.js +5 -0
- package/dist/primitives/CardAction.js.map +1 -0
- package/dist/primitives/CardContent.cjs +8 -0
- package/dist/primitives/CardContent.d.ts +2 -1
- package/dist/primitives/CardContent.d.ts.map +1 -0
- package/dist/primitives/CardContent.js +5 -0
- package/dist/primitives/CardContent.js.map +1 -0
- package/dist/primitives/CardDescription.cjs +8 -0
- package/dist/primitives/CardDescription.d.ts +2 -1
- package/dist/primitives/CardDescription.d.ts.map +1 -0
- package/dist/primitives/CardDescription.js +5 -0
- package/dist/primitives/CardDescription.js.map +1 -0
- package/dist/primitives/CardFooter.cjs +8 -0
- package/dist/primitives/CardFooter.d.ts +2 -1
- package/dist/primitives/CardFooter.d.ts.map +1 -0
- package/dist/primitives/CardFooter.js +5 -0
- package/dist/primitives/CardFooter.js.map +1 -0
- package/dist/primitives/CardHeader.cjs +8 -0
- package/dist/primitives/CardHeader.d.ts +2 -1
- package/dist/primitives/CardHeader.d.ts.map +1 -0
- package/dist/primitives/CardHeader.js +5 -0
- package/dist/primitives/CardHeader.js.map +1 -0
- package/dist/primitives/CardTitle.cjs +8 -0
- package/dist/primitives/CardTitle.d.ts +2 -1
- package/dist/primitives/CardTitle.d.ts.map +1 -0
- package/dist/primitives/CardTitle.js +5 -0
- package/dist/primitives/CardTitle.js.map +1 -0
- package/dist/primitives/Checkbox.cjs +8 -0
- package/dist/primitives/Checkbox.d.ts +2 -1
- package/dist/primitives/Checkbox.d.ts.map +1 -0
- package/dist/primitives/Checkbox.js +5 -0
- package/dist/primitives/Checkbox.js.map +1 -0
- package/dist/primitives/Collapsible.cjs +8 -0
- package/dist/primitives/Collapsible.d.ts +2 -1
- package/dist/primitives/Collapsible.d.ts.map +1 -0
- package/dist/primitives/Collapsible.js +5 -0
- package/dist/primitives/Collapsible.js.map +1 -0
- package/dist/primitives/CollapsibleContent.cjs +8 -0
- package/dist/primitives/CollapsibleContent.d.ts +2 -1
- package/dist/primitives/CollapsibleContent.d.ts.map +1 -0
- package/dist/primitives/CollapsibleContent.js +5 -0
- package/dist/primitives/CollapsibleContent.js.map +1 -0
- package/dist/primitives/CollapsibleTrigger.cjs +8 -0
- package/dist/primitives/CollapsibleTrigger.d.ts +2 -1
- package/dist/primitives/CollapsibleTrigger.d.ts.map +1 -0
- package/dist/primitives/CollapsibleTrigger.js +5 -0
- package/dist/primitives/CollapsibleTrigger.js.map +1 -0
- package/dist/primitives/Command.cjs +8 -0
- package/dist/primitives/Command.d.ts +2 -1
- package/dist/primitives/Command.d.ts.map +1 -0
- package/dist/primitives/Command.js +5 -0
- package/dist/primitives/Command.js.map +1 -0
- package/dist/primitives/CommandDialog.cjs +8 -0
- package/dist/primitives/CommandDialog.d.ts +2 -1
- package/dist/primitives/CommandDialog.d.ts.map +1 -0
- package/dist/primitives/CommandDialog.js +5 -0
- package/dist/primitives/CommandDialog.js.map +1 -0
- package/dist/primitives/CommandEmpty.cjs +8 -0
- package/dist/primitives/CommandEmpty.d.ts +2 -1
- package/dist/primitives/CommandEmpty.d.ts.map +1 -0
- package/dist/primitives/CommandEmpty.js +5 -0
- package/dist/primitives/CommandEmpty.js.map +1 -0
- package/dist/primitives/CommandGroup.cjs +8 -0
- package/dist/primitives/CommandGroup.d.ts +2 -1
- package/dist/primitives/CommandGroup.d.ts.map +1 -0
- package/dist/primitives/CommandGroup.js +5 -0
- package/dist/primitives/CommandGroup.js.map +1 -0
- package/dist/primitives/CommandInput.cjs +8 -0
- package/dist/primitives/CommandInput.d.ts +2 -1
- package/dist/primitives/CommandInput.d.ts.map +1 -0
- package/dist/primitives/CommandInput.js +5 -0
- package/dist/primitives/CommandInput.js.map +1 -0
- package/dist/primitives/CommandItem.cjs +8 -0
- package/dist/primitives/CommandItem.d.ts +2 -1
- package/dist/primitives/CommandItem.d.ts.map +1 -0
- package/dist/primitives/CommandItem.js +5 -0
- package/dist/primitives/CommandItem.js.map +1 -0
- package/dist/primitives/CommandList.cjs +8 -0
- package/dist/primitives/CommandList.d.ts +2 -1
- package/dist/primitives/CommandList.d.ts.map +1 -0
- package/dist/primitives/CommandList.js +5 -0
- package/dist/primitives/CommandList.js.map +1 -0
- package/dist/primitives/CommandSeparator.cjs +8 -0
- package/dist/primitives/CommandSeparator.d.ts +2 -1
- package/dist/primitives/CommandSeparator.d.ts.map +1 -0
- package/dist/primitives/CommandSeparator.js +5 -0
- package/dist/primitives/CommandSeparator.js.map +1 -0
- package/dist/primitives/CommandShortcut.cjs +8 -0
- package/dist/primitives/CommandShortcut.d.ts +2 -1
- package/dist/primitives/CommandShortcut.d.ts.map +1 -0
- package/dist/primitives/CommandShortcut.js +5 -0
- package/dist/primitives/CommandShortcut.js.map +1 -0
- package/dist/primitives/Dialog.cjs +8 -0
- package/dist/primitives/Dialog.d.ts +2 -1
- package/dist/primitives/Dialog.d.ts.map +1 -0
- package/dist/primitives/Dialog.js +5 -0
- package/dist/primitives/Dialog.js.map +1 -0
- package/dist/primitives/DialogClose.cjs +8 -0
- package/dist/primitives/DialogClose.d.ts +2 -1
- package/dist/primitives/DialogClose.d.ts.map +1 -0
- package/dist/primitives/DialogClose.js +5 -0
- package/dist/primitives/DialogClose.js.map +1 -0
- package/dist/primitives/DialogContent.cjs +8 -0
- package/dist/primitives/DialogContent.d.ts +2 -1
- package/dist/primitives/DialogContent.d.ts.map +1 -0
- package/dist/primitives/DialogContent.js +5 -0
- package/dist/primitives/DialogContent.js.map +1 -0
- package/dist/primitives/DialogDescription.cjs +8 -0
- package/dist/primitives/DialogDescription.d.ts +2 -1
- package/dist/primitives/DialogDescription.d.ts.map +1 -0
- package/dist/primitives/DialogDescription.js +5 -0
- package/dist/primitives/DialogDescription.js.map +1 -0
- package/dist/primitives/DialogFooter.cjs +8 -0
- package/dist/primitives/DialogFooter.d.ts +2 -1
- package/dist/primitives/DialogFooter.d.ts.map +1 -0
- package/dist/primitives/DialogFooter.js +5 -0
- package/dist/primitives/DialogFooter.js.map +1 -0
- package/dist/primitives/DialogHeader.cjs +8 -0
- package/dist/primitives/DialogHeader.d.ts +2 -1
- package/dist/primitives/DialogHeader.d.ts.map +1 -0
- package/dist/primitives/DialogHeader.js +5 -0
- package/dist/primitives/DialogHeader.js.map +1 -0
- package/dist/primitives/DialogOverlay.cjs +8 -0
- package/dist/primitives/DialogOverlay.d.ts +2 -1
- package/dist/primitives/DialogOverlay.d.ts.map +1 -0
- package/dist/primitives/DialogOverlay.js +5 -0
- package/dist/primitives/DialogOverlay.js.map +1 -0
- package/dist/primitives/DialogPortal.cjs +8 -0
- package/dist/primitives/DialogPortal.d.ts +2 -1
- package/dist/primitives/DialogPortal.d.ts.map +1 -0
- package/dist/primitives/DialogPortal.js +5 -0
- package/dist/primitives/DialogPortal.js.map +1 -0
- package/dist/primitives/DialogTitle.cjs +8 -0
- package/dist/primitives/DialogTitle.d.ts +2 -1
- package/dist/primitives/DialogTitle.d.ts.map +1 -0
- package/dist/primitives/DialogTitle.js +5 -0
- package/dist/primitives/DialogTitle.js.map +1 -0
- package/dist/primitives/DialogTrigger.cjs +8 -0
- package/dist/primitives/DialogTrigger.d.ts +2 -1
- package/dist/primitives/DialogTrigger.d.ts.map +1 -0
- package/dist/primitives/DialogTrigger.js +5 -0
- package/dist/primitives/DialogTrigger.js.map +1 -0
- package/dist/primitives/DropdownMenu.cjs +8 -0
- package/dist/primitives/DropdownMenu.d.ts +2 -1
- package/dist/primitives/DropdownMenu.d.ts.map +1 -0
- package/dist/primitives/DropdownMenu.js +5 -0
- package/dist/primitives/DropdownMenu.js.map +1 -0
- package/dist/primitives/DropdownMenuCheckboxItem.cjs +8 -0
- package/dist/primitives/DropdownMenuCheckboxItem.d.ts +2 -1
- package/dist/primitives/DropdownMenuCheckboxItem.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuCheckboxItem.js +5 -0
- package/dist/primitives/DropdownMenuCheckboxItem.js.map +1 -0
- package/dist/primitives/DropdownMenuContent.cjs +8 -0
- package/dist/primitives/DropdownMenuContent.d.ts +2 -1
- package/dist/primitives/DropdownMenuContent.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuContent.js +5 -0
- package/dist/primitives/DropdownMenuContent.js.map +1 -0
- package/dist/primitives/DropdownMenuGroup.cjs +8 -0
- package/dist/primitives/DropdownMenuGroup.d.ts +2 -1
- package/dist/primitives/DropdownMenuGroup.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuGroup.js +5 -0
- package/dist/primitives/DropdownMenuGroup.js.map +1 -0
- package/dist/primitives/DropdownMenuItem.cjs +8 -0
- package/dist/primitives/DropdownMenuItem.d.ts +2 -1
- package/dist/primitives/DropdownMenuItem.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuItem.js +5 -0
- package/dist/primitives/DropdownMenuItem.js.map +1 -0
- package/dist/primitives/DropdownMenuLabel.cjs +8 -0
- package/dist/primitives/DropdownMenuLabel.d.ts +2 -1
- package/dist/primitives/DropdownMenuLabel.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuLabel.js +5 -0
- package/dist/primitives/DropdownMenuLabel.js.map +1 -0
- package/dist/primitives/DropdownMenuPortal.cjs +8 -0
- package/dist/primitives/DropdownMenuPortal.d.ts +2 -1
- package/dist/primitives/DropdownMenuPortal.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuPortal.js +5 -0
- package/dist/primitives/DropdownMenuPortal.js.map +1 -0
- package/dist/primitives/DropdownMenuRadioGroup.cjs +8 -0
- package/dist/primitives/DropdownMenuRadioGroup.d.ts +2 -1
- package/dist/primitives/DropdownMenuRadioGroup.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuRadioGroup.js +5 -0
- package/dist/primitives/DropdownMenuRadioGroup.js.map +1 -0
- package/dist/primitives/DropdownMenuRadioItem.cjs +8 -0
- package/dist/primitives/DropdownMenuRadioItem.d.ts +2 -1
- package/dist/primitives/DropdownMenuRadioItem.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuRadioItem.js +5 -0
- package/dist/primitives/DropdownMenuRadioItem.js.map +1 -0
- package/dist/primitives/DropdownMenuSeparator.cjs +8 -0
- package/dist/primitives/DropdownMenuSeparator.d.ts +2 -1
- package/dist/primitives/DropdownMenuSeparator.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSeparator.js +5 -0
- package/dist/primitives/DropdownMenuSeparator.js.map +1 -0
- package/dist/primitives/DropdownMenuShortcut.cjs +8 -0
- package/dist/primitives/DropdownMenuShortcut.d.ts +2 -1
- package/dist/primitives/DropdownMenuShortcut.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuShortcut.js +5 -0
- package/dist/primitives/DropdownMenuShortcut.js.map +1 -0
- package/dist/primitives/DropdownMenuSub.cjs +8 -0
- package/dist/primitives/DropdownMenuSub.d.ts +2 -1
- package/dist/primitives/DropdownMenuSub.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSub.js +5 -0
- package/dist/primitives/DropdownMenuSub.js.map +1 -0
- package/dist/primitives/DropdownMenuSubContent.cjs +8 -0
- package/dist/primitives/DropdownMenuSubContent.d.ts +2 -1
- package/dist/primitives/DropdownMenuSubContent.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSubContent.js +5 -0
- package/dist/primitives/DropdownMenuSubContent.js.map +1 -0
- package/dist/primitives/DropdownMenuSubTrigger.cjs +8 -0
- package/dist/primitives/DropdownMenuSubTrigger.d.ts +2 -1
- package/dist/primitives/DropdownMenuSubTrigger.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSubTrigger.js +5 -0
- package/dist/primitives/DropdownMenuSubTrigger.js.map +1 -0
- package/dist/primitives/DropdownMenuTrigger.cjs +8 -0
- package/dist/primitives/DropdownMenuTrigger.d.ts +2 -1
- package/dist/primitives/DropdownMenuTrigger.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuTrigger.js +5 -0
- package/dist/primitives/DropdownMenuTrigger.js.map +1 -0
- package/dist/primitives/Input.cjs +8 -0
- package/dist/primitives/Input.d.ts +2 -1
- package/dist/primitives/Input.d.ts.map +1 -0
- package/dist/primitives/Input.js +5 -0
- package/dist/primitives/Input.js.map +1 -0
- package/dist/primitives/Label.cjs +8 -0
- package/dist/primitives/Label.d.ts +2 -1
- package/dist/primitives/Label.d.ts.map +1 -0
- package/dist/primitives/Label.js +5 -0
- package/dist/primitives/Label.js.map +1 -0
- package/dist/primitives/Popover.cjs +8 -0
- package/dist/primitives/Popover.d.ts +2 -1
- package/dist/primitives/Popover.d.ts.map +1 -0
- package/dist/primitives/Popover.js +5 -0
- package/dist/primitives/Popover.js.map +1 -0
- package/dist/primitives/PopoverAnchor.cjs +8 -0
- package/dist/primitives/PopoverAnchor.d.ts +2 -1
- package/dist/primitives/PopoverAnchor.d.ts.map +1 -0
- package/dist/primitives/PopoverAnchor.js +5 -0
- package/dist/primitives/PopoverAnchor.js.map +1 -0
- package/dist/primitives/PopoverClose.cjs +8 -0
- package/dist/primitives/PopoverClose.d.ts +2 -0
- package/dist/primitives/PopoverClose.d.ts.map +1 -0
- package/dist/primitives/PopoverClose.js +5 -0
- package/dist/primitives/PopoverClose.js.map +1 -0
- package/dist/primitives/PopoverContent.cjs +8 -0
- package/dist/primitives/PopoverContent.d.ts +2 -1
- package/dist/primitives/PopoverContent.d.ts.map +1 -0
- package/dist/primitives/PopoverContent.js +5 -0
- package/dist/primitives/PopoverContent.js.map +1 -0
- package/dist/primitives/PopoverTrigger.cjs +8 -0
- package/dist/primitives/PopoverTrigger.d.ts +2 -1
- package/dist/primitives/PopoverTrigger.d.ts.map +1 -0
- package/dist/primitives/PopoverTrigger.js +5 -0
- package/dist/primitives/PopoverTrigger.js.map +1 -0
- package/dist/primitives/Progress.cjs +8 -0
- package/dist/primitives/Progress.d.ts +2 -1
- package/dist/primitives/Progress.d.ts.map +1 -0
- package/dist/primitives/Progress.js +5 -0
- package/dist/primitives/Progress.js.map +1 -0
- package/dist/primitives/ResizableHandle.cjs +8 -0
- package/dist/primitives/ResizableHandle.d.ts +2 -0
- package/dist/primitives/ResizableHandle.d.ts.map +1 -0
- package/dist/primitives/ResizableHandle.js +5 -0
- package/dist/primitives/ResizableHandle.js.map +1 -0
- package/dist/primitives/ResizablePanel.cjs +8 -0
- package/dist/primitives/ResizablePanel.d.ts +2 -0
- package/dist/primitives/ResizablePanel.d.ts.map +1 -0
- package/dist/primitives/ResizablePanel.js +5 -0
- package/dist/primitives/ResizablePanel.js.map +1 -0
- package/dist/primitives/ResizablePanelGroup.cjs +8 -0
- package/dist/primitives/ResizablePanelGroup.d.ts +2 -0
- package/dist/primitives/ResizablePanelGroup.d.ts.map +1 -0
- package/dist/primitives/ResizablePanelGroup.js +5 -0
- package/dist/primitives/ResizablePanelGroup.js.map +1 -0
- package/dist/primitives/ScrollArea.cjs +8 -0
- package/dist/primitives/ScrollArea.d.ts +2 -1
- package/dist/primitives/ScrollArea.d.ts.map +1 -0
- package/dist/primitives/ScrollArea.js +5 -0
- package/dist/primitives/ScrollArea.js.map +1 -0
- package/dist/primitives/ScrollBar.cjs +8 -0
- package/dist/primitives/ScrollBar.d.ts +2 -1
- package/dist/primitives/ScrollBar.d.ts.map +1 -0
- package/dist/primitives/ScrollBar.js +5 -0
- package/dist/primitives/ScrollBar.js.map +1 -0
- package/dist/primitives/Select.cjs +8 -0
- package/dist/primitives/Select.d.ts +2 -1
- package/dist/primitives/Select.d.ts.map +1 -0
- package/dist/primitives/Select.js +5 -0
- package/dist/primitives/Select.js.map +1 -0
- package/dist/primitives/SelectContent.cjs +8 -0
- package/dist/primitives/SelectContent.d.ts +2 -1
- package/dist/primitives/SelectContent.d.ts.map +1 -0
- package/dist/primitives/SelectContent.js +5 -0
- package/dist/primitives/SelectContent.js.map +1 -0
- package/dist/primitives/SelectGroup.cjs +8 -0
- package/dist/primitives/SelectGroup.d.ts +2 -1
- package/dist/primitives/SelectGroup.d.ts.map +1 -0
- package/dist/primitives/SelectGroup.js +5 -0
- package/dist/primitives/SelectGroup.js.map +1 -0
- package/dist/primitives/SelectItem.cjs +8 -0
- package/dist/primitives/SelectItem.d.ts +2 -1
- package/dist/primitives/SelectItem.d.ts.map +1 -0
- package/dist/primitives/SelectItem.js +5 -0
- package/dist/primitives/SelectItem.js.map +1 -0
- package/dist/primitives/SelectLabel.cjs +8 -0
- package/dist/primitives/SelectLabel.d.ts +2 -1
- package/dist/primitives/SelectLabel.d.ts.map +1 -0
- package/dist/primitives/SelectLabel.js +5 -0
- package/dist/primitives/SelectLabel.js.map +1 -0
- package/dist/primitives/SelectScrollDownButton.cjs +8 -0
- package/dist/primitives/SelectScrollDownButton.d.ts +2 -1
- package/dist/primitives/SelectScrollDownButton.d.ts.map +1 -0
- package/dist/primitives/SelectScrollDownButton.js +5 -0
- package/dist/primitives/SelectScrollDownButton.js.map +1 -0
- package/dist/primitives/SelectScrollUpButton.cjs +8 -0
- package/dist/primitives/SelectScrollUpButton.d.ts +2 -1
- package/dist/primitives/SelectScrollUpButton.d.ts.map +1 -0
- package/dist/primitives/SelectScrollUpButton.js +5 -0
- package/dist/primitives/SelectScrollUpButton.js.map +1 -0
- package/dist/primitives/SelectSeparator.cjs +8 -0
- package/dist/primitives/SelectSeparator.d.ts +2 -1
- package/dist/primitives/SelectSeparator.d.ts.map +1 -0
- package/dist/primitives/SelectSeparator.js +5 -0
- package/dist/primitives/SelectSeparator.js.map +1 -0
- package/dist/primitives/SelectTrigger.cjs +8 -0
- package/dist/primitives/SelectTrigger.d.ts +2 -1
- package/dist/primitives/SelectTrigger.d.ts.map +1 -0
- package/dist/primitives/SelectTrigger.js +5 -0
- package/dist/primitives/SelectTrigger.js.map +1 -0
- package/dist/primitives/SelectValue.cjs +8 -0
- package/dist/primitives/SelectValue.d.ts +2 -1
- package/dist/primitives/SelectValue.d.ts.map +1 -0
- package/dist/primitives/SelectValue.js +5 -0
- package/dist/primitives/SelectValue.js.map +1 -0
- package/dist/primitives/Separator.cjs +8 -0
- package/dist/primitives/Separator.d.ts +2 -1
- package/dist/primitives/Separator.d.ts.map +1 -0
- package/dist/primitives/Separator.js +5 -0
- package/dist/primitives/Separator.js.map +1 -0
- package/dist/primitives/Slider.cjs +8 -0
- package/dist/primitives/Slider.d.ts +2 -1
- package/dist/primitives/Slider.d.ts.map +1 -0
- package/dist/primitives/Slider.js +5 -0
- package/dist/primitives/Slider.js.map +1 -0
- package/dist/primitives/Switch.cjs +8 -0
- package/dist/primitives/Switch.d.ts +2 -1
- package/dist/primitives/Switch.d.ts.map +1 -0
- package/dist/primitives/Switch.js +5 -0
- package/dist/primitives/Switch.js.map +1 -0
- package/dist/primitives/Tabs.cjs +8 -0
- package/dist/primitives/Tabs.d.ts +2 -1
- package/dist/primitives/Tabs.d.ts.map +1 -0
- package/dist/primitives/Tabs.js +5 -0
- package/dist/primitives/Tabs.js.map +1 -0
- package/dist/primitives/TabsContent.cjs +8 -0
- package/dist/primitives/TabsContent.d.ts +2 -1
- package/dist/primitives/TabsContent.d.ts.map +1 -0
- package/dist/primitives/TabsContent.js +5 -0
- package/dist/primitives/TabsContent.js.map +1 -0
- package/dist/primitives/TabsList.cjs +8 -0
- package/dist/primitives/TabsList.d.ts +2 -1
- package/dist/primitives/TabsList.d.ts.map +1 -0
- package/dist/primitives/TabsList.js +5 -0
- package/dist/primitives/TabsList.js.map +1 -0
- package/dist/primitives/TabsTrigger.cjs +8 -0
- package/dist/primitives/TabsTrigger.d.ts +2 -1
- package/dist/primitives/TabsTrigger.d.ts.map +1 -0
- package/dist/primitives/TabsTrigger.js +5 -0
- package/dist/primitives/TabsTrigger.js.map +1 -0
- package/dist/primitives/Textarea.cjs +8 -0
- package/dist/primitives/Textarea.d.ts +2 -1
- package/dist/primitives/Textarea.d.ts.map +1 -0
- package/dist/primitives/Textarea.js +5 -0
- package/dist/primitives/Textarea.js.map +1 -0
- package/dist/primitives/Toaster.cjs +8 -0
- package/dist/primitives/Toaster.d.ts +2 -1
- package/dist/primitives/Toaster.d.ts.map +1 -0
- package/dist/primitives/Toaster.js +5 -0
- package/dist/primitives/Toaster.js.map +1 -0
- package/dist/primitives/Tooltip.cjs +8 -0
- package/dist/primitives/Tooltip.d.ts +2 -1
- package/dist/primitives/Tooltip.d.ts.map +1 -0
- package/dist/primitives/Tooltip.js +5 -0
- package/dist/primitives/Tooltip.js.map +1 -0
- package/dist/primitives/TooltipContent.cjs +8 -0
- package/dist/primitives/TooltipContent.d.ts +2 -1
- package/dist/primitives/TooltipContent.d.ts.map +1 -0
- package/dist/primitives/TooltipContent.js +5 -0
- package/dist/primitives/TooltipContent.js.map +1 -0
- package/dist/primitives/TooltipProvider.cjs +8 -0
- package/dist/primitives/TooltipProvider.d.ts +2 -1
- package/dist/primitives/TooltipProvider.d.ts.map +1 -0
- package/dist/primitives/TooltipProvider.js +5 -0
- package/dist/primitives/TooltipProvider.js.map +1 -0
- package/dist/primitives/TooltipTrigger.cjs +8 -0
- package/dist/primitives/TooltipTrigger.d.ts +2 -1
- package/dist/primitives/TooltipTrigger.d.ts.map +1 -0
- package/dist/primitives/TooltipTrigger.js +5 -0
- package/dist/primitives/TooltipTrigger.js.map +1 -0
- package/dist/primitives/badgeVariants.cjs +8 -0
- package/dist/primitives/badgeVariants.d.ts +2 -1
- package/dist/primitives/badgeVariants.d.ts.map +1 -0
- package/dist/primitives/badgeVariants.js +5 -0
- package/dist/primitives/badgeVariants.js.map +1 -0
- package/dist/primitives/bases/data/index.cjs +28 -14
- package/dist/primitives/bases/data/index.d.ts +1 -0
- package/dist/primitives/bases/data/index.d.ts.map +1 -0
- package/dist/primitives/bases/data/index.js +11 -1
- package/dist/primitives/bases/data/index.js.map +1 -1
- package/dist/primitives/buttonVariants.cjs +8 -0
- package/dist/primitives/buttonVariants.d.ts +2 -1
- package/dist/primitives/buttonVariants.d.ts.map +1 -0
- package/dist/primitives/buttonVariants.js +5 -0
- package/dist/primitives/buttonVariants.js.map +1 -0
- package/dist/primitives/index.cjs +20 -0
- package/dist/primitives/index.d.ts +2 -1
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +5 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/primitives/toast.cjs +8 -0
- package/dist/primitives/toast.d.ts +2 -1
- package/dist/primitives/toast.d.ts.map +1 -0
- package/dist/primitives/toast.js +5 -0
- package/dist/primitives/toast.js.map +1 -0
- package/dist/product/AnimatedLogo.cjs +102 -0
- package/dist/product/AnimatedLogo.d.ts +2 -1
- package/dist/product/AnimatedLogo.d.ts.map +1 -0
- package/dist/product/AnimatedLogo.js +100 -0
- package/dist/product/AnimatedLogo.js.map +1 -0
- package/dist/product/AppHeader.cjs +55 -0
- package/dist/product/AppHeader.d.ts +2 -1
- package/dist/product/AppHeader.d.ts.map +1 -0
- package/dist/product/AppHeader.js +53 -0
- package/dist/product/AppHeader.js.map +1 -0
- package/dist/product/BackendState.cjs +80 -0
- package/dist/product/BackendState.d.ts +1 -0
- package/dist/product/BackendState.d.ts.map +1 -0
- package/dist/product/BackendState.js +76 -0
- package/dist/product/BackendState.js.map +1 -0
- package/dist/product/BrandMark.cjs +19 -0
- package/dist/product/BrandMark.d.ts +1 -0
- package/dist/product/BrandMark.d.ts.map +1 -0
- package/dist/product/BrandMark.js +17 -0
- package/dist/product/BrandMark.js.map +1 -0
- package/dist/product/Charts.cjs +243 -0
- package/dist/product/Charts.d.ts +1 -0
- package/dist/product/Charts.d.ts.map +1 -0
- package/dist/product/Charts.js +235 -0
- package/dist/product/Charts.js.map +1 -0
- package/dist/product/ComboBox.cjs +44 -0
- package/dist/product/ComboBox.d.ts +3 -2
- package/dist/product/ComboBox.d.ts.map +1 -0
- package/dist/product/ComboBox.js +42 -0
- package/dist/product/ComboBox.js.map +1 -0
- package/dist/product/CommerceResource.cjs +39 -0
- package/dist/product/CommerceResource.d.ts +2 -1
- package/dist/product/CommerceResource.d.ts.map +1 -0
- package/dist/product/CommerceResource.js +37 -0
- package/dist/product/CommerceResource.js.map +1 -0
- package/dist/product/ConfirmDelete.cjs +42 -0
- package/dist/product/ConfirmDelete.d.ts +1 -0
- package/dist/product/ConfirmDelete.d.ts.map +1 -0
- package/dist/product/ConfirmDelete.js +40 -0
- package/dist/product/ConfirmDelete.js.map +1 -0
- package/dist/product/DataTable.cjs +58 -0
- package/dist/product/DataTable.d.ts +1 -0
- package/dist/product/DataTable.d.ts.map +1 -0
- package/dist/product/DataTable.js +56 -0
- package/dist/product/DataTable.js.map +1 -0
- package/dist/product/Donut.cjs +25 -0
- package/dist/product/Donut.d.ts +1 -0
- package/dist/product/Donut.d.ts.map +1 -0
- package/dist/product/Donut.js +23 -0
- package/dist/product/Donut.js.map +1 -0
- package/dist/product/EmptyState.cjs +30 -0
- package/dist/product/EmptyState.d.ts +2 -1
- package/dist/product/EmptyState.d.ts.map +1 -0
- package/dist/product/EmptyState.js +28 -0
- package/dist/product/EmptyState.js.map +1 -0
- package/dist/product/FadeIn.cjs +9 -0
- package/dist/product/FadeIn.d.ts +1 -0
- package/dist/product/FadeIn.d.ts.map +1 -0
- package/dist/product/FadeIn.js +7 -0
- package/dist/product/FadeIn.js.map +1 -0
- package/dist/product/Field.cjs +111 -0
- package/dist/product/Field.d.ts +1 -0
- package/dist/product/Field.d.ts.map +1 -0
- package/dist/product/Field.js +104 -0
- package/dist/product/Field.js.map +1 -0
- package/dist/product/Filters.cjs +31 -0
- package/dist/product/Filters.d.ts +1 -0
- package/dist/product/Filters.d.ts.map +1 -0
- package/dist/product/Filters.js +28 -0
- package/dist/product/Filters.js.map +1 -0
- package/dist/product/HanzoMark.cjs +16 -0
- package/dist/product/HanzoMark.d.ts +1 -0
- package/dist/product/HanzoMark.d.ts.map +1 -0
- package/dist/product/HanzoMark.js +14 -0
- package/dist/product/HanzoMark.js.map +1 -0
- package/dist/product/Metric.cjs +96 -0
- package/dist/product/Metric.d.ts +1 -0
- package/dist/product/Metric.d.ts.map +1 -0
- package/dist/product/Metric.js +85 -0
- package/dist/product/Metric.js.map +1 -0
- package/dist/product/OrgMark.cjs +50 -0
- package/dist/product/OrgMark.d.ts +2 -1
- package/dist/product/OrgMark.d.ts.map +1 -0
- package/dist/product/OrgMark.js +47 -0
- package/dist/product/OrgMark.js.map +1 -0
- package/dist/product/OrgSwitcher.cjs +140 -0
- package/dist/product/OrgSwitcher.d.ts +2 -1
- package/dist/product/OrgSwitcher.d.ts.map +1 -0
- package/dist/product/OrgSwitcher.js +138 -0
- package/dist/product/OrgSwitcher.js.map +1 -0
- package/dist/product/PageHeader.cjs +15 -0
- package/dist/product/PageHeader.d.ts +1 -0
- package/dist/product/PageHeader.d.ts.map +1 -0
- package/dist/product/PageHeader.js +13 -0
- package/dist/product/PageHeader.js.map +1 -0
- package/dist/product/PrimaryButton.cjs +31 -0
- package/dist/product/PrimaryButton.d.ts +1 -0
- package/dist/product/PrimaryButton.d.ts.map +1 -0
- package/dist/product/PrimaryButton.js +29 -0
- package/dist/product/PrimaryButton.js.map +1 -0
- package/dist/product/ProductIcon.cjs +36 -0
- package/dist/product/ProductIcon.d.ts +2 -1
- package/dist/product/ProductIcon.d.ts.map +1 -0
- package/dist/product/ProductIcon.js +34 -0
- package/dist/product/ProductIcon.js.map +1 -0
- package/dist/product/ProviderLogo.cjs +84 -0
- package/dist/product/ProviderLogo.d.ts +1 -0
- package/dist/product/ProviderLogo.d.ts.map +1 -0
- package/dist/product/ProviderLogo.js +81 -0
- package/dist/product/ProviderLogo.js.map +1 -0
- package/dist/product/Reorder.cjs +82 -0
- package/dist/product/Reorder.d.ts +1 -0
- package/dist/product/Reorder.d.ts.map +1 -0
- package/dist/product/Reorder.js +78 -0
- package/dist/product/Reorder.js.map +1 -0
- package/dist/product/SelectMenu.cjs +19 -0
- package/dist/product/SelectMenu.d.ts +1 -0
- package/dist/product/SelectMenu.d.ts.map +1 -0
- package/dist/product/SelectMenu.js +17 -0
- package/dist/product/SelectMenu.js.map +1 -0
- package/dist/product/SiteFooter.cjs +17 -0
- package/dist/product/SiteFooter.d.ts +2 -1
- package/dist/product/SiteFooter.d.ts.map +1 -0
- package/dist/product/SiteFooter.js +15 -0
- package/dist/product/SiteFooter.js.map +1 -0
- package/dist/product/SiteNav.cjs +124 -0
- package/dist/product/SiteNav.d.ts +1 -0
- package/dist/product/SiteNav.d.ts.map +1 -0
- package/dist/product/SiteNav.js +122 -0
- package/dist/product/SiteNav.js.map +1 -0
- package/dist/product/SlideOver.cjs +129 -0
- package/dist/product/SlideOver.d.ts +2 -1
- package/dist/product/SlideOver.d.ts.map +1 -0
- package/dist/product/SlideOver.js +126 -0
- package/dist/product/SlideOver.js.map +1 -0
- package/dist/product/StatusTag.cjs +49 -0
- package/dist/product/StatusTag.d.ts +1 -0
- package/dist/product/StatusTag.d.ts.map +1 -0
- package/dist/product/StatusTag.js +47 -0
- package/dist/product/StatusTag.js.map +1 -0
- package/dist/product/ThemeToggle.cjs +120 -0
- package/dist/product/ThemeToggle.d.ts +1 -0
- package/dist/product/ThemeToggle.d.ts.map +1 -0
- package/dist/product/ThemeToggle.js +84 -0
- package/dist/product/ThemeToggle.js.map +1 -0
- package/dist/product/ThemeToggleNext.cjs +20 -0
- package/dist/product/ThemeToggleNext.d.ts +2 -1
- package/dist/product/ThemeToggleNext.d.ts.map +1 -0
- package/dist/product/ThemeToggleNext.js +19 -0
- package/dist/product/ThemeToggleNext.js.map +1 -0
- package/dist/product/Toast.cjs +90 -0
- package/dist/product/Toast.d.ts +1 -0
- package/dist/product/Toast.d.ts.map +1 -0
- package/dist/product/Toast.js +87 -0
- package/dist/product/Toast.js.map +1 -0
- package/dist/product/accent.cjs +97 -0
- package/dist/product/accent.d.ts +1 -0
- package/dist/product/accent.d.ts.map +1 -0
- package/dist/product/accent.js +90 -0
- package/dist/product/accent.js.map +1 -0
- package/dist/product/animatedLogo.logic.cjs +52 -0
- package/dist/product/animatedLogo.logic.d.ts +1 -0
- package/dist/product/animatedLogo.logic.d.ts.map +1 -0
- package/dist/product/animatedLogo.logic.js +47 -0
- package/dist/product/animatedLogo.logic.js.map +1 -0
- package/dist/product/brand.cjs +91 -0
- package/dist/product/brand.d.ts +1 -0
- package/dist/product/brand.d.ts.map +1 -0
- package/dist/product/brand.js +88 -0
- package/dist/product/brand.js.map +1 -0
- package/dist/product/color.cjs +6 -0
- package/dist/product/color.d.ts +1 -0
- package/dist/product/color.d.ts.map +1 -0
- package/dist/product/color.js +3 -0
- package/dist/product/color.js.map +1 -0
- package/dist/product/combobox/filter.cjs +31 -0
- package/dist/product/combobox/filter.d.ts +1 -0
- package/dist/product/combobox/filter.d.ts.map +1 -0
- package/dist/product/combobox/filter.js +28 -0
- package/dist/product/combobox/filter.js.map +1 -0
- package/dist/product/host.cjs +20 -0
- package/dist/product/host.d.ts +1 -0
- package/dist/product/host.d.ts.map +1 -0
- package/dist/product/host.js +16 -0
- package/dist/product/host.js.map +1 -0
- package/dist/product/index.cjs +120 -2240
- package/dist/product/index.d.ts +43 -41
- package/dist/product/index.d.ts.map +1 -0
- package/dist/product/index.js +88 -1912
- package/dist/product/index.js.map +1 -1
- package/dist/product/instrument.cjs +79 -0
- package/dist/product/instrument.d.ts +1 -0
- package/dist/product/instrument.d.ts.map +1 -0
- package/dist/product/instrument.js +72 -0
- package/dist/product/instrument.js.map +1 -0
- package/dist/product/menu/ContextMenu.cjs +26 -0
- package/dist/product/menu/ContextMenu.d.ts +2 -1
- package/dist/product/menu/ContextMenu.d.ts.map +1 -0
- package/dist/product/menu/ContextMenu.js +24 -0
- package/dist/product/menu/ContextMenu.js.map +1 -0
- package/dist/product/menu/FloatingMenu.cjs +87 -0
- package/dist/product/menu/FloatingMenu.d.ts +1 -0
- package/dist/product/menu/FloatingMenu.d.ts.map +1 -0
- package/dist/product/menu/FloatingMenu.js +85 -0
- package/dist/product/menu/FloatingMenu.js.map +1 -0
- package/dist/product/menu/index.cjs +30 -0
- package/dist/product/menu/index.d.ts +6 -5
- package/dist/product/menu/index.d.ts.map +1 -0
- package/dist/product/menu/index.js +19 -0
- package/dist/product/menu/index.js.map +1 -0
- package/dist/product/menu/items.cjs +92 -0
- package/dist/product/menu/items.d.ts +2 -1
- package/dist/product/menu/items.d.ts.map +1 -0
- package/dist/product/menu/items.js +85 -0
- package/dist/product/menu/items.js.map +1 -0
- package/dist/product/menu/portal-theme.cjs +13 -0
- package/dist/product/menu/portal-theme.d.ts +1 -0
- package/dist/product/menu/portal-theme.d.ts.map +1 -0
- package/dist/product/menu/portal-theme.js +12 -0
- package/dist/product/menu/portal-theme.js.map +1 -0
- package/dist/product/menu/roving.cjs +31 -0
- package/dist/product/menu/roving.d.ts +1 -0
- package/dist/product/menu/roving.d.ts.map +1 -0
- package/dist/product/menu/roving.js +29 -0
- package/dist/product/menu/roving.js.map +1 -0
- package/dist/product/scope.cjs +102 -0
- package/dist/product/scope.d.ts +1 -0
- package/dist/product/scope.d.ts.map +1 -0
- package/dist/product/scope.js +99 -0
- package/dist/product/scope.js.map +1 -0
- package/dist/product/social/CampaignCard.cjs +17 -0
- package/dist/product/social/CampaignCard.d.ts +1 -0
- package/dist/product/social/CampaignCard.d.ts.map +1 -0
- package/dist/product/social/CampaignCard.js +15 -0
- package/dist/product/social/CampaignCard.js.map +1 -0
- package/dist/product/social/ChannelBadge.cjs +24 -0
- package/dist/product/social/ChannelBadge.d.ts +2 -1
- package/dist/product/social/ChannelBadge.d.ts.map +1 -0
- package/dist/product/social/ChannelBadge.js +22 -0
- package/dist/product/social/ChannelBadge.js.map +1 -0
- package/dist/product/social/PostAgenda.cjs +40 -0
- package/dist/product/social/PostAgenda.d.ts +2 -1
- package/dist/product/social/PostAgenda.d.ts.map +1 -0
- package/dist/product/social/PostAgenda.js +38 -0
- package/dist/product/social/PostAgenda.js.map +1 -0
- package/dist/product/social/PostCard.cjs +19 -0
- package/dist/product/social/PostCard.d.ts +2 -1
- package/dist/product/social/PostCard.d.ts.map +1 -0
- package/dist/product/social/PostCard.js +17 -0
- package/dist/product/social/PostCard.js.map +1 -0
- package/dist/product/social/PostComposer.cjs +64 -0
- package/dist/product/social/PostComposer.d.ts +2 -1
- package/dist/product/social/PostComposer.d.ts.map +1 -0
- package/dist/product/social/PostComposer.js +61 -0
- package/dist/product/social/PostComposer.js.map +1 -0
- package/dist/product/social/ProviderReadinessList.cjs +16 -0
- package/dist/product/social/ProviderReadinessList.d.ts +2 -1
- package/dist/product/social/ProviderReadinessList.d.ts.map +1 -0
- package/dist/product/social/ProviderReadinessList.js +14 -0
- package/dist/product/social/ProviderReadinessList.js.map +1 -0
- package/dist/product/social/SocialResource.cjs +147 -0
- package/dist/product/social/SocialResource.d.ts +2 -1
- package/dist/product/social/SocialResource.d.ts.map +1 -0
- package/dist/product/social/SocialResource.js +145 -0
- package/dist/product/social/SocialResource.js.map +1 -0
- package/dist/product/social/SocialSummaryBar.cjs +20 -0
- package/dist/product/social/SocialSummaryBar.d.ts +2 -1
- package/dist/product/social/SocialSummaryBar.d.ts.map +1 -0
- package/dist/product/social/SocialSummaryBar.js +18 -0
- package/dist/product/social/SocialSummaryBar.js.map +1 -0
- package/dist/product/social/ViewToggle.cjs +23 -0
- package/dist/product/social/ViewToggle.d.ts +1 -0
- package/dist/product/social/ViewToggle.d.ts.map +1 -0
- package/dist/product/social/ViewToggle.js +21 -0
- package/dist/product/social/ViewToggle.js.map +1 -0
- package/dist/product/social/api.cjs +137 -52
- package/dist/product/social/api.d.ts +1 -0
- package/dist/product/social/api.d.ts.map +1 -0
- package/dist/product/social/api.js +126 -2
- package/dist/product/social/api.js.map +1 -1
- package/dist/product/social/format.cjs +39 -0
- package/dist/product/social/format.d.ts +1 -0
- package/dist/product/social/format.d.ts.map +1 -0
- package/dist/product/social/format.js +34 -0
- package/dist/product/social/format.js.map +1 -0
- package/dist/product/social/index.cjs +38 -111
- package/dist/product/social/index.d.ts +12 -11
- package/dist/product/social/index.d.ts.map +1 -0
- package/dist/product/social/index.js +22 -5
- package/dist/product/social/index.js.map +1 -1
- package/dist/product/surfaces.data.cjs +25 -0
- package/dist/product/surfaces.data.d.ts +1 -0
- package/dist/product/surfaces.data.d.ts.map +1 -0
- package/dist/product/surfaces.data.js +22 -0
- package/dist/product/surfaces.data.js.map +1 -0
- package/dist/styles/hanzo-motion.css +188 -0
- package/dist/telemetry.cjs +31 -14
- package/dist/telemetry.d.ts +1 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +14 -1
- package/dist/telemetry.js.map +1 -1
- package/dist/theme.css +185 -0
- package/dist/usage.cjs +24 -14
- package/dist/usage.d.ts +1 -0
- package/dist/usage.d.ts.map +1 -0
- package/dist/usage.js +7 -1
- package/dist/usage.js.map +1 -1
- package/package.json +35 -78
- package/dist/ThemeToggleNext-AEDLHX5X.js +0 -4
- package/dist/ThemeToggleNext-AEDLHX5X.js.map +0 -1
- package/dist/ThemeToggleNext-N6ASYJ6J.cjs +0 -19
- package/dist/ThemeToggleNext-N6ASYJ6J.cjs.map +0 -1
- package/dist/backends/shadcn/aspect-ratio.d.ts +0 -4
- package/dist/backends/shadcn/avatar.d.ts +0 -6
- package/dist/backends/shadcn/badge.d.ts +0 -9
- package/dist/backends/shadcn/button.d.ts +0 -19
- package/dist/backends/shadcn/card.d.ts +0 -9
- package/dist/backends/shadcn/checkbox.d.ts +0 -9
- package/dist/backends/shadcn/collapsible.d.ts +0 -5
- package/dist/backends/shadcn/command.d.ts +0 -80
- package/dist/backends/shadcn/dialog.d.ts +0 -15
- package/dist/backends/shadcn/dropdown-menu.d.ts +0 -34
- package/dist/backends/shadcn/index.d.ts +0 -23
- package/dist/backends/shadcn/input.d.ts +0 -11
- package/dist/backends/shadcn/label.d.ts +0 -4
- package/dist/backends/shadcn/popover.d.ts +0 -7
- package/dist/backends/shadcn/progress.d.ts +0 -4
- package/dist/backends/shadcn/scroll-area.d.ts +0 -5
- package/dist/backends/shadcn/select.d.ts +0 -13
- package/dist/backends/shadcn/separator.d.ts +0 -4
- package/dist/backends/shadcn/slider.d.ts +0 -4
- package/dist/backends/shadcn/switch.d.ts +0 -4
- package/dist/backends/shadcn/tabs.d.ts +0 -7
- package/dist/backends/shadcn/textarea.d.ts +0 -4
- package/dist/backends/shadcn/toaster.d.ts +0 -10
- package/dist/backends/shadcn/tooltip.d.ts +0 -7
- package/dist/backends/shadcn/utils.d.ts +0 -8
- package/dist/billing.cjs +0 -14
- package/dist/billing.cjs.map +0 -1
- package/dist/billing.d.ts +0 -1
- package/dist/billing.js +0 -3
- package/dist/billing.js.map +0 -1
- package/dist/canvas.cjs.map +0 -1
- package/dist/chunk-3NG33DV2.cjs +0 -606
- package/dist/chunk-3NG33DV2.cjs.map +0 -1
- package/dist/chunk-5CZOYONP.js +0 -342
- package/dist/chunk-5CZOYONP.js.map +0 -1
- package/dist/chunk-77AMCLN4.js +0 -99
- package/dist/chunk-77AMCLN4.js.map +0 -1
- package/dist/chunk-7XDEUEWI.cjs +0 -43
- package/dist/chunk-7XDEUEWI.cjs.map +0 -1
- package/dist/chunk-7ZNK6JSS.js +0 -830
- package/dist/chunk-7ZNK6JSS.js.map +0 -1
- package/dist/chunk-ARV3P4CE.cjs +0 -104
- package/dist/chunk-ARV3P4CE.cjs.map +0 -1
- package/dist/chunk-FVQXROBK.js +0 -36
- package/dist/chunk-FVQXROBK.js.map +0 -1
- package/dist/chunk-GVCOAJLO.js +0 -396
- package/dist/chunk-GVCOAJLO.js.map +0 -1
- package/dist/chunk-GWNNLYX4.cjs +0 -352
- package/dist/chunk-GWNNLYX4.cjs.map +0 -1
- package/dist/chunk-MWBFAV3D.cjs +0 -104
- package/dist/chunk-MWBFAV3D.cjs.map +0 -1
- package/dist/chunk-ONVERVFG.cjs +0 -850
- package/dist/chunk-ONVERVFG.cjs.map +0 -1
- package/dist/chunk-P2QU5MN5.js +0 -554
- package/dist/chunk-P2QU5MN5.js.map +0 -1
- package/dist/chunk-WHJR5S4L.cjs +0 -417
- package/dist/chunk-WHJR5S4L.cjs.map +0 -1
- package/dist/chunk-ZGTJCJ55.js +0 -92
- package/dist/chunk-ZGTJCJ55.js.map +0 -1
- package/dist/components.d.ts +0 -1
- package/dist/dashboard.cjs.map +0 -1
- package/dist/data.cjs.map +0 -1
- package/dist/framework/core.cjs.map +0 -1
- package/dist/framework/index.cjs.map +0 -1
- package/dist/gitops.cjs.map +0 -1
- package/dist/gui-config.cjs.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/network.cjs +0 -14
- package/dist/network.cjs.map +0 -1
- package/dist/network.d.ts +0 -1
- package/dist/network.js +0 -3
- package/dist/network.js.map +0 -1
- package/dist/oss.cjs.map +0 -1
- package/dist/primitives/bases/data/index.cjs.map +0 -1
- package/dist/product/index.cjs.map +0 -1
- package/dist/product/menu/DropdownMenu.d.ts +0 -29
- package/dist/product/social/api.cjs.map +0 -1
- package/dist/product/social/index.cjs.map +0 -1
- package/dist/telemetry.cjs.map +0 -1
- package/dist/usage.cjs.map +0 -1
- package/dist/wallet.cjs +0 -14
- package/dist/wallet.cjs.map +0 -1
- package/dist/wallet.d.ts +0 -1
- package/dist/wallet.js +0 -3
- package/dist/wallet.js.map +0 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
'use client';"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.RecordCards = RecordCards;
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
/**
|
|
7
|
+
* RecordCards — the PHONE view of a DocType's documents: one stacked card per
|
|
8
|
+
* record instead of a horizontally-scrolling grid.
|
|
9
|
+
*
|
|
10
|
+
* A 12-column ERP Sales Order in a table on a 390px screen is a wall you drag
|
|
11
|
+
* sideways to read one row; the same record as a card is a title plus its declared
|
|
12
|
+
* list columns as label → value pairs, reading top to bottom in the width you
|
|
13
|
+
* have. Nothing is hidden that the table would have shown — the card renders the
|
|
14
|
+
* DocType's OWN `inListView` projection (`cardFields`), and the full record is one
|
|
15
|
+
* tap away.
|
|
16
|
+
*
|
|
17
|
+
* The whole card is the tap target (far past the 44px floor), values render
|
|
18
|
+
* through the SAME `FieldDisplay` router the table uses, so every field type
|
|
19
|
+
* behaves identically in both, and search is the pure `searchRecords` — no second
|
|
20
|
+
* filtering model.
|
|
21
|
+
*/
|
|
22
|
+
const react_1 = require("react");
|
|
23
|
+
const gui_1 = require("@hanzo/gui");
|
|
24
|
+
const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
|
|
25
|
+
const data_1 = require("@hanzo/data");
|
|
26
|
+
const parts_1 = require("./parts.cjs");
|
|
27
|
+
/** The headline for a card: the title field, else the record key. */
|
|
28
|
+
function headline(record, titleField) {
|
|
29
|
+
const t = titleField ? record[titleField] : undefined;
|
|
30
|
+
if (typeof t === 'string' && t.trim())
|
|
31
|
+
return t;
|
|
32
|
+
if (typeof t === 'number')
|
|
33
|
+
return String(t);
|
|
34
|
+
const name = record.name ?? record.id;
|
|
35
|
+
return typeof name === 'string' && name ? name : 'Untitled';
|
|
36
|
+
}
|
|
37
|
+
function RecordCards({ titleField, fields, cardFields, records, loading, empty, onOpen, onCreate, createLabel = 'New record', toolbarExtra, }) {
|
|
38
|
+
const [query, setQuery] = (0, react_1.useState)('');
|
|
39
|
+
const visible = (0, react_1.useMemo)(() => (0, data_1.searchRecords)(records, query, fields), [records, query, fields]);
|
|
40
|
+
return ((0, jsx_runtime_1.jsxs)(gui_1.YStack, { testID: "doctype-cards", gap: "$3", width: "100%", children: [(0, jsx_runtime_1.jsxs)(gui_1.YStack, { gap: "$2", width: "100%", children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { items: "center", gap: "$2", px: "$3", minH: 44, rounded: "$3", borderWidth: 1, borderColor: "$borderColor", width: "100%", children: [(0, jsx_runtime_1.jsx)(lucide_icons_2_1.Search, { size: 15, opacity: 0.6 }), (0, jsx_runtime_1.jsx)(gui_1.Input, { unstyled: true, flex: 1, minW: 0, height: 42, fontSize: "$3", color: "$color12", placeholder: "Search", value: query, onChangeText: setQuery, autoCapitalize: "none" })] }), (0, jsx_runtime_1.jsxs)(gui_1.XStack, { gap: "$2", items: "center", flexWrap: "wrap", width: "100%", children: [onCreate ? ((0, jsx_runtime_1.jsx)(parts_1.Action, { phone: true, primary: true, onPress: onCreate, children: createLabel })) : null, toolbarExtra] })] }), loading ? (0, jsx_runtime_1.jsx)(parts_1.Loading, { label: "Loading records\u2026" }) : null, !loading && visible.length === 0 ? ((0, jsx_runtime_1.jsx)(gui_1.Card, { borderWidth: 1, borderColor: "$borderColor", p: "$4", width: "100%", children: (0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$3", color: "$color10", children: query ? `No records match “${query}”.` : empty ?? 'No records yet.' }) })) : null, (0, jsx_runtime_1.jsx)(gui_1.YStack, { gap: "$2", width: "100%", children: visible.map((rec, i) => {
|
|
41
|
+
const key = String(rec.name ?? rec.id ?? i);
|
|
42
|
+
return ((0, jsx_runtime_1.jsx)(gui_1.Card, { borderWidth: 1, borderColor: "$borderColor", rounded: "$3", p: "$3", width: "100%", cursor: onOpen ? 'pointer' : undefined, pressStyle: onOpen ? { bg: '$color3' } : undefined, hoverStyle: onOpen ? { borderColor: '$color8' } : undefined, onPress: onOpen ? () => onOpen(rec) : undefined, style: parts_1.WRAP_ANYWHERE, children: (0, jsx_runtime_1.jsxs)(gui_1.YStack, { gap: "$2", width: "100%", children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { items: "center", gap: "$2", width: "100%", children: [(0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$4", fontWeight: "700", flex: 1, minW: 0, numberOfLines: 2, children: headline(rec, titleField) }), onOpen ? (0, jsx_runtime_1.jsx)(lucide_icons_2_1.ChevronRight, { size: 16, opacity: 0.5 }) : null] }), cardFields.map((f) => (
|
|
43
|
+
// Label above value: a two-column row forces the value into a
|
|
44
|
+
// sliver at 390px. Stacked, every field type gets the full width.
|
|
45
|
+
(0, jsx_runtime_1.jsxs)(gui_1.YStack, { gap: "$0.5", width: "100%", children: [(0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$1", color: "$color10", textTransform: "uppercase", letterSpacing: 0.4, children: f.label }), (0, jsx_runtime_1.jsx)(gui_1.XStack, { width: "100%", flexWrap: "wrap", children: (0, jsx_runtime_1.jsx)(data_1.FieldDisplay, { field: f, value: rec[f.name] }) })] }, f.name)))] }) }, key));
|
|
46
|
+
}) }), visible.length ? ((0, jsx_runtime_1.jsxs)(parts_1.Meta, { children: [visible.length, " of ", records.length, " record", records.length === 1 ? '' : 's'] })) : null] }));
|
|
47
|
+
}
|
|
@@ -33,3 +33,4 @@ export interface RecordCardsProps {
|
|
|
33
33
|
toolbarExtra?: ReactNode;
|
|
34
34
|
}
|
|
35
35
|
export declare function RecordCards({ titleField, fields, cardFields, records, loading, empty, onOpen, onCreate, createLabel, toolbarExtra, }: RecordCardsProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
//# sourceMappingURL=RecordCards.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordCards.d.ts","sourceRoot":"","sources":["../../src/framework/RecordCards.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAGzD,OAAO,EAA+B,KAAK,eAAe,EAAE,MAAM,aAAa,CAAA;AAI/E,MAAM,WAAW,gBAAgB;IAC/B,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,4EAA4E;IAC5E,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,8DAA8D;IAC9D,UAAU,EAAE,eAAe,EAAE,CAAA;IAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAClC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IAClD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,SAAS,CAAA;CACzB;AAWD,wBAAgB,WAAW,CAAC,EAC1B,UAAU,EACV,MAAM,EACN,UAAU,EACV,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,EACN,QAAQ,EACR,WAA0B,EAC1B,YAAY,GACb,EAAE,gBAAgB,2CAuGlB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
/**
|
|
4
|
+
* RecordCards — the PHONE view of a DocType's documents: one stacked card per
|
|
5
|
+
* record instead of a horizontally-scrolling grid.
|
|
6
|
+
*
|
|
7
|
+
* A 12-column ERP Sales Order in a table on a 390px screen is a wall you drag
|
|
8
|
+
* sideways to read one row; the same record as a card is a title plus its declared
|
|
9
|
+
* list columns as label → value pairs, reading top to bottom in the width you
|
|
10
|
+
* have. Nothing is hidden that the table would have shown — the card renders the
|
|
11
|
+
* DocType's OWN `inListView` projection (`cardFields`), and the full record is one
|
|
12
|
+
* tap away.
|
|
13
|
+
*
|
|
14
|
+
* The whole card is the tap target (far past the 44px floor), values render
|
|
15
|
+
* through the SAME `FieldDisplay` router the table uses, so every field type
|
|
16
|
+
* behaves identically in both, and search is the pure `searchRecords` — no second
|
|
17
|
+
* filtering model.
|
|
18
|
+
*/
|
|
19
|
+
import { useMemo, useState } from 'react';
|
|
20
|
+
import { Card, Input, Text, XStack, YStack } from '@hanzo/gui';
|
|
21
|
+
import { ChevronRight, Search } from '@hanzogui/lucide-icons-2';
|
|
22
|
+
import { FieldDisplay, searchRecords } from '@hanzo/data';
|
|
23
|
+
import { Action, Loading, Meta, WRAP_ANYWHERE } from './parts.js';
|
|
24
|
+
/** The headline for a card: the title field, else the record key. */
|
|
25
|
+
function headline(record, titleField) {
|
|
26
|
+
const t = titleField ? record[titleField] : undefined;
|
|
27
|
+
if (typeof t === 'string' && t.trim())
|
|
28
|
+
return t;
|
|
29
|
+
if (typeof t === 'number')
|
|
30
|
+
return String(t);
|
|
31
|
+
const name = record.name ?? record.id;
|
|
32
|
+
return typeof name === 'string' && name ? name : 'Untitled';
|
|
33
|
+
}
|
|
34
|
+
export function RecordCards({ titleField, fields, cardFields, records, loading, empty, onOpen, onCreate, createLabel = 'New record', toolbarExtra, }) {
|
|
35
|
+
const [query, setQuery] = useState('');
|
|
36
|
+
const visible = useMemo(() => searchRecords(records, query, fields), [records, query, fields]);
|
|
37
|
+
return (_jsxs(YStack, { testID: "doctype-cards", gap: "$3", width: "100%", children: [_jsxs(YStack, { gap: "$2", width: "100%", children: [_jsxs(XStack, { items: "center", gap: "$2", px: "$3", minH: 44, rounded: "$3", borderWidth: 1, borderColor: "$borderColor", width: "100%", children: [_jsx(Search, { size: 15, opacity: 0.6 }), _jsx(Input, { unstyled: true, flex: 1, minW: 0, height: 42, fontSize: "$3", color: "$color12", placeholder: "Search", value: query, onChangeText: setQuery, autoCapitalize: "none" })] }), _jsxs(XStack, { gap: "$2", items: "center", flexWrap: "wrap", width: "100%", children: [onCreate ? (_jsx(Action, { phone: true, primary: true, onPress: onCreate, children: createLabel })) : null, toolbarExtra] })] }), loading ? _jsx(Loading, { label: "Loading records\u2026" }) : null, !loading && visible.length === 0 ? (_jsx(Card, { borderWidth: 1, borderColor: "$borderColor", p: "$4", width: "100%", children: _jsx(Text, { fontSize: "$3", color: "$color10", children: query ? `No records match “${query}”.` : empty ?? 'No records yet.' }) })) : null, _jsx(YStack, { gap: "$2", width: "100%", children: visible.map((rec, i) => {
|
|
38
|
+
const key = String(rec.name ?? rec.id ?? i);
|
|
39
|
+
return (_jsx(Card, { borderWidth: 1, borderColor: "$borderColor", rounded: "$3", p: "$3", width: "100%", cursor: onOpen ? 'pointer' : undefined, pressStyle: onOpen ? { bg: '$color3' } : undefined, hoverStyle: onOpen ? { borderColor: '$color8' } : undefined, onPress: onOpen ? () => onOpen(rec) : undefined, style: WRAP_ANYWHERE, children: _jsxs(YStack, { gap: "$2", width: "100%", children: [_jsxs(XStack, { items: "center", gap: "$2", width: "100%", children: [_jsx(Text, { fontSize: "$4", fontWeight: "700", flex: 1, minW: 0, numberOfLines: 2, children: headline(rec, titleField) }), onOpen ? _jsx(ChevronRight, { size: 16, opacity: 0.5 }) : null] }), cardFields.map((f) => (
|
|
40
|
+
// Label above value: a two-column row forces the value into a
|
|
41
|
+
// sliver at 390px. Stacked, every field type gets the full width.
|
|
42
|
+
_jsxs(YStack, { gap: "$0.5", width: "100%", children: [_jsx(Text, { fontSize: "$1", color: "$color10", textTransform: "uppercase", letterSpacing: 0.4, children: f.label }), _jsx(XStack, { width: "100%", flexWrap: "wrap", children: _jsx(FieldDisplay, { field: f, value: rec[f.name] }) })] }, f.name)))] }) }, key));
|
|
43
|
+
}) }), visible.length ? (_jsxs(Meta, { children: [visible.length, " of ", records.length, " record", records.length === 1 ? '' : 's'] })) : null] }));
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=RecordCards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordCards.js","sourceRoot":"","sources":["../../src/framework/RecordCards.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
'use client';"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BUILDER_FIELD_TYPES = void 0;
|
|
4
|
+
exports.fieldTypeLabel = fieldTypeLabel;
|
|
5
|
+
exports.fieldNeedsOptions = fieldNeedsOptions;
|
|
6
|
+
exports.newKey = newKey;
|
|
7
|
+
exports.blankField = blankField;
|
|
8
|
+
exports.starterFields = starterFields;
|
|
9
|
+
exports.fieldsFromDocType = fieldsFromDocType;
|
|
10
|
+
exports.fieldNameFromLabel = fieldNameFromLabel;
|
|
11
|
+
exports.validateBuilder = validateBuilder;
|
|
12
|
+
exports.toDocField = toDocField;
|
|
13
|
+
exports.moveField = moveField;
|
|
14
|
+
exports.toDocType = toDocType;
|
|
15
|
+
const fields_1 = require("./fields.cjs");
|
|
16
|
+
/**
|
|
17
|
+
* The builder's field-type vocabulary — every framework fieldtype, with a friendly
|
|
18
|
+
* label + hint. This is the ONE list the "add field" type picker renders, so the
|
|
19
|
+
* builder always offers exactly what the engine accepts (no drift). Order is the
|
|
20
|
+
* author-facing order (common types first).
|
|
21
|
+
*/
|
|
22
|
+
exports.BUILDER_FIELD_TYPES = [
|
|
23
|
+
{ type: 'Data', label: 'Text', hint: 'Single line of text' },
|
|
24
|
+
{ type: 'RichText', label: 'Rich text', hint: 'Formatted body (WYSIWYG)' },
|
|
25
|
+
{ type: 'LongText', label: 'Long text', hint: 'Multi-line plain text' },
|
|
26
|
+
{ type: 'Int', label: 'Number', hint: 'Whole number' },
|
|
27
|
+
{ type: 'Float', label: 'Decimal', hint: 'Decimal number' },
|
|
28
|
+
{ type: 'Currency', label: 'Currency', hint: 'Money amount' },
|
|
29
|
+
{ type: 'Check', label: 'Checkbox', hint: 'True / false' },
|
|
30
|
+
{ type: 'Date', label: 'Date', hint: 'Calendar date' },
|
|
31
|
+
{ type: 'Datetime', label: 'Date & time', hint: 'Date with time' },
|
|
32
|
+
{ type: 'Select', label: 'Select', hint: 'One of a list of options' },
|
|
33
|
+
{ type: 'Link', label: 'Relation', hint: 'Reference another collection' },
|
|
34
|
+
{ type: 'Attach', label: 'Attachment', hint: 'A file / image URL' },
|
|
35
|
+
{ type: 'Table', label: 'Table', hint: 'Repeatable child rows (JSON)' },
|
|
36
|
+
{ type: 'JSON', label: 'JSON', hint: 'Arbitrary JSON' },
|
|
37
|
+
];
|
|
38
|
+
const LABELS = Object.fromEntries(exports.BUILDER_FIELD_TYPES.map((t) => [t.type, t.label]));
|
|
39
|
+
/** The friendly label for a fieldtype (falls back to the raw type). */
|
|
40
|
+
function fieldTypeLabel(t) {
|
|
41
|
+
return LABELS[t] ?? t;
|
|
42
|
+
}
|
|
43
|
+
/** True when a fieldtype needs `options` (Select choices, Link/Table target). */
|
|
44
|
+
function fieldNeedsOptions(t) {
|
|
45
|
+
return t === 'Select' || t === 'Link' || t === 'Table';
|
|
46
|
+
}
|
|
47
|
+
let seq = 0;
|
|
48
|
+
/** A fresh, unique client key. */
|
|
49
|
+
function newKey() {
|
|
50
|
+
seq += 1;
|
|
51
|
+
return `f${seq}_${Math.random().toString(36).slice(2, 8)}`;
|
|
52
|
+
}
|
|
53
|
+
/** A blank field row of a given type. */
|
|
54
|
+
function blankField(type = 'Data') {
|
|
55
|
+
return { key: newKey(), label: '', type, required: false, inListView: false, options: '' };
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* The default starter fields for a NEW content collection: a required Title, a URL
|
|
59
|
+
* Slug (the autoname key), a rich Body, and a Draft/Published Status. The author
|
|
60
|
+
* edits from here. Mirrors the cloud CMS seed so a hand-built collection matches a
|
|
61
|
+
* seeded one.
|
|
62
|
+
*/
|
|
63
|
+
function starterFields() {
|
|
64
|
+
return [
|
|
65
|
+
{ key: newKey(), label: 'Title', type: 'Data', required: true, inListView: true, options: '' },
|
|
66
|
+
{ key: newKey(), label: 'Slug', type: 'Data', required: true, inListView: true, options: '' },
|
|
67
|
+
{ key: newKey(), label: 'Body', type: 'RichText', required: false, inListView: false, options: '' },
|
|
68
|
+
{ key: newKey(), label: 'Status', type: 'Select', required: false, inListView: true, options: 'Draft\nPublished' },
|
|
69
|
+
// Optional project scope — lets a host's org→project switcher filter this collection.
|
|
70
|
+
{ key: newKey(), label: 'Project', type: 'Data', required: false, inListView: false, options: '' },
|
|
71
|
+
];
|
|
72
|
+
}
|
|
73
|
+
/** An existing DocType → editable builder rows (drops engine-managed fields). */
|
|
74
|
+
function fieldsFromDocType(dt) {
|
|
75
|
+
return (dt.fields ?? []).map((f) => ({
|
|
76
|
+
key: newKey(),
|
|
77
|
+
label: f.label || f.fieldname,
|
|
78
|
+
type: f.fieldtype,
|
|
79
|
+
required: Boolean(f.reqd),
|
|
80
|
+
inListView: Boolean(f.inListView),
|
|
81
|
+
options: f.options ?? '',
|
|
82
|
+
}));
|
|
83
|
+
}
|
|
84
|
+
/** The fieldname derived from a label (slug with underscores; identifier-safe). */
|
|
85
|
+
function fieldNameFromLabel(label) {
|
|
86
|
+
const slug = (0, fields_1.slugify)(label).replace(/-/g, '_');
|
|
87
|
+
// A leading digit isn't a valid identifier lead; prefix it.
|
|
88
|
+
return /^[0-9]/.test(slug) ? `f_${slug}` : slug;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Validate the whole builder: the collection name, at least one field, unique
|
|
92
|
+
* non-empty field labels/names, and options present where required. Pure.
|
|
93
|
+
*/
|
|
94
|
+
function validateBuilder(name, fields) {
|
|
95
|
+
const fieldErrors = {};
|
|
96
|
+
let formError = null;
|
|
97
|
+
if (!(0, fields_1.isValidDoctypeName)(name.trim())) {
|
|
98
|
+
formError = 'Enter a collection name with letters, digits, dashes or underscores (no spaces).';
|
|
99
|
+
}
|
|
100
|
+
else if (fields.length === 0) {
|
|
101
|
+
formError = 'Add at least one field.';
|
|
102
|
+
}
|
|
103
|
+
const seen = new Set();
|
|
104
|
+
for (const f of fields) {
|
|
105
|
+
const label = f.label.trim();
|
|
106
|
+
if (!label) {
|
|
107
|
+
fieldErrors[f.key] = 'Name this field.';
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
const fname = fieldNameFromLabel(label);
|
|
111
|
+
if (!fname) {
|
|
112
|
+
fieldErrors[f.key] = 'Use letters or digits in the field name.';
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
if (seen.has(fname)) {
|
|
116
|
+
fieldErrors[f.key] = `Duplicate field "${fname}".`;
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
seen.add(fname);
|
|
120
|
+
if ((f.type === 'Link' || f.type === 'Table') && !f.options.trim()) {
|
|
121
|
+
fieldErrors[f.key] = f.type === 'Link' ? 'Choose the collection to relate to.' : 'Name the child collection.';
|
|
122
|
+
}
|
|
123
|
+
else if (f.type === 'Select' && !f.options.trim()) {
|
|
124
|
+
fieldErrors[f.key] = 'Add at least one option.';
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return { ok: !formError && Object.keys(fieldErrors).length === 0, fieldErrors, formError };
|
|
128
|
+
}
|
|
129
|
+
/** A builder row → a framework DocField (drops UI-only bits, coerces options). */
|
|
130
|
+
function toDocField(f) {
|
|
131
|
+
const fieldname = fieldNameFromLabel(f.label);
|
|
132
|
+
const field = {
|
|
133
|
+
fieldname,
|
|
134
|
+
fieldtype: f.type,
|
|
135
|
+
label: f.label.trim(),
|
|
136
|
+
};
|
|
137
|
+
if (f.required)
|
|
138
|
+
field.reqd = true;
|
|
139
|
+
if (f.inListView)
|
|
140
|
+
field.inListView = true;
|
|
141
|
+
if (fieldNeedsOptions(f.type) && f.options.trim())
|
|
142
|
+
field.options = f.options.trim();
|
|
143
|
+
return field;
|
|
144
|
+
}
|
|
145
|
+
/** Move a row within the ordered field list (a no-op at either end). Pure. */
|
|
146
|
+
function moveField(fields, key, dir) {
|
|
147
|
+
const i = fields.findIndex((f) => f.key === key);
|
|
148
|
+
const j = i + dir;
|
|
149
|
+
if (i < 0 || j < 0 || j >= fields.length)
|
|
150
|
+
return fields;
|
|
151
|
+
const next = [...fields];
|
|
152
|
+
[next[i], next[j]] = [next[j], next[i]];
|
|
153
|
+
return next;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* The builder → a `DocType` create body. Auto-derives `autoname`/`titleField` from
|
|
157
|
+
* conventional fields when present (a `slug` field → `field:slug` naming; a `title`
|
|
158
|
+
* field → the title). Tags the module so the collection joins the lane.
|
|
159
|
+
*/
|
|
160
|
+
function toDocType(name, module, fields) {
|
|
161
|
+
const docFields = fields.map(toDocField);
|
|
162
|
+
const byName = new Set(docFields.map((f) => f.fieldname));
|
|
163
|
+
const dt = { name: name.trim(), module, fields: docFields };
|
|
164
|
+
if (byName.has('slug'))
|
|
165
|
+
dt.autoname = 'field:slug';
|
|
166
|
+
if (byName.has('title'))
|
|
167
|
+
dt.titleField = 'title';
|
|
168
|
+
return dt;
|
|
169
|
+
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* projects the whole thing to a valid `DocType` create body. Names are slugified
|
|
10
10
|
* to field-name rules so a save never 400s on a bad identifier.
|
|
11
11
|
*/
|
|
12
|
-
import type { DocType, DocField, Fieldtype } from './types';
|
|
12
|
+
import type { DocType, DocField, Fieldtype } from './types.js';
|
|
13
13
|
/**
|
|
14
14
|
* The builder's field-type vocabulary — every framework fieldtype, with a friendly
|
|
15
15
|
* label + hint. This is the ONE list the "add field" type picker renders, so the
|
|
@@ -74,3 +74,4 @@ export declare function moveField(fields: BuilderField[], key: string, dir: -1 |
|
|
|
74
74
|
* field → the title). Tags the module so the collection joins the lane.
|
|
75
75
|
*/
|
|
76
76
|
export declare function toDocType(name: string, module: string, fields: BuilderField[]): DocType;
|
|
77
|
+
//# sourceMappingURL=builder-logic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder-logic.d.ts","sourceRoot":"","sources":["../../src/framework/builder-logic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAG3D;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAejF,CAAA;AAMD,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAEnD;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAEvD;AAED,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAA;IACX,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,SAAS,CAAA;IACf,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAA;CAChB;AAGD,kCAAkC;AAClC,wBAAgB,MAAM,IAAI,MAAM,CAG/B;AAED,yCAAyC;AACzC,wBAAgB,UAAU,CAAC,IAAI,GAAE,SAAkB,GAAG,YAAY,CAEjE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,YAAY,EAAE,CAS9C;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,YAAY,EAAE,CAS7D;AAED,mFAAmF;AACnF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIxD;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAA;IACX,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,6CAA6C;IAC7C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,iBAAiB,CAmCvF;AAED,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,QAAQ,CAWpD;AAED,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,YAAY,EAAE,CAO1F;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAOvF"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
'use client';import { slugify, isValidDoctypeName } from './fields.js';
|
|
2
|
+
/**
|
|
3
|
+
* The builder's field-type vocabulary — every framework fieldtype, with a friendly
|
|
4
|
+
* label + hint. This is the ONE list the "add field" type picker renders, so the
|
|
5
|
+
* builder always offers exactly what the engine accepts (no drift). Order is the
|
|
6
|
+
* author-facing order (common types first).
|
|
7
|
+
*/
|
|
8
|
+
export const BUILDER_FIELD_TYPES = [
|
|
9
|
+
{ type: 'Data', label: 'Text', hint: 'Single line of text' },
|
|
10
|
+
{ type: 'RichText', label: 'Rich text', hint: 'Formatted body (WYSIWYG)' },
|
|
11
|
+
{ type: 'LongText', label: 'Long text', hint: 'Multi-line plain text' },
|
|
12
|
+
{ type: 'Int', label: 'Number', hint: 'Whole number' },
|
|
13
|
+
{ type: 'Float', label: 'Decimal', hint: 'Decimal number' },
|
|
14
|
+
{ type: 'Currency', label: 'Currency', hint: 'Money amount' },
|
|
15
|
+
{ type: 'Check', label: 'Checkbox', hint: 'True / false' },
|
|
16
|
+
{ type: 'Date', label: 'Date', hint: 'Calendar date' },
|
|
17
|
+
{ type: 'Datetime', label: 'Date & time', hint: 'Date with time' },
|
|
18
|
+
{ type: 'Select', label: 'Select', hint: 'One of a list of options' },
|
|
19
|
+
{ type: 'Link', label: 'Relation', hint: 'Reference another collection' },
|
|
20
|
+
{ type: 'Attach', label: 'Attachment', hint: 'A file / image URL' },
|
|
21
|
+
{ type: 'Table', label: 'Table', hint: 'Repeatable child rows (JSON)' },
|
|
22
|
+
{ type: 'JSON', label: 'JSON', hint: 'Arbitrary JSON' },
|
|
23
|
+
];
|
|
24
|
+
const LABELS = Object.fromEntries(BUILDER_FIELD_TYPES.map((t) => [t.type, t.label]));
|
|
25
|
+
/** The friendly label for a fieldtype (falls back to the raw type). */
|
|
26
|
+
export function fieldTypeLabel(t) {
|
|
27
|
+
return LABELS[t] ?? t;
|
|
28
|
+
}
|
|
29
|
+
/** True when a fieldtype needs `options` (Select choices, Link/Table target). */
|
|
30
|
+
export function fieldNeedsOptions(t) {
|
|
31
|
+
return t === 'Select' || t === 'Link' || t === 'Table';
|
|
32
|
+
}
|
|
33
|
+
let seq = 0;
|
|
34
|
+
/** A fresh, unique client key. */
|
|
35
|
+
export function newKey() {
|
|
36
|
+
seq += 1;
|
|
37
|
+
return `f${seq}_${Math.random().toString(36).slice(2, 8)}`;
|
|
38
|
+
}
|
|
39
|
+
/** A blank field row of a given type. */
|
|
40
|
+
export function blankField(type = 'Data') {
|
|
41
|
+
return { key: newKey(), label: '', type, required: false, inListView: false, options: '' };
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The default starter fields for a NEW content collection: a required Title, a URL
|
|
45
|
+
* Slug (the autoname key), a rich Body, and a Draft/Published Status. The author
|
|
46
|
+
* edits from here. Mirrors the cloud CMS seed so a hand-built collection matches a
|
|
47
|
+
* seeded one.
|
|
48
|
+
*/
|
|
49
|
+
export function starterFields() {
|
|
50
|
+
return [
|
|
51
|
+
{ key: newKey(), label: 'Title', type: 'Data', required: true, inListView: true, options: '' },
|
|
52
|
+
{ key: newKey(), label: 'Slug', type: 'Data', required: true, inListView: true, options: '' },
|
|
53
|
+
{ key: newKey(), label: 'Body', type: 'RichText', required: false, inListView: false, options: '' },
|
|
54
|
+
{ key: newKey(), label: 'Status', type: 'Select', required: false, inListView: true, options: 'Draft\nPublished' },
|
|
55
|
+
// Optional project scope — lets a host's org→project switcher filter this collection.
|
|
56
|
+
{ key: newKey(), label: 'Project', type: 'Data', required: false, inListView: false, options: '' },
|
|
57
|
+
];
|
|
58
|
+
}
|
|
59
|
+
/** An existing DocType → editable builder rows (drops engine-managed fields). */
|
|
60
|
+
export function fieldsFromDocType(dt) {
|
|
61
|
+
return (dt.fields ?? []).map((f) => ({
|
|
62
|
+
key: newKey(),
|
|
63
|
+
label: f.label || f.fieldname,
|
|
64
|
+
type: f.fieldtype,
|
|
65
|
+
required: Boolean(f.reqd),
|
|
66
|
+
inListView: Boolean(f.inListView),
|
|
67
|
+
options: f.options ?? '',
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
/** The fieldname derived from a label (slug with underscores; identifier-safe). */
|
|
71
|
+
export function fieldNameFromLabel(label) {
|
|
72
|
+
const slug = slugify(label).replace(/-/g, '_');
|
|
73
|
+
// A leading digit isn't a valid identifier lead; prefix it.
|
|
74
|
+
return /^[0-9]/.test(slug) ? `f_${slug}` : slug;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Validate the whole builder: the collection name, at least one field, unique
|
|
78
|
+
* non-empty field labels/names, and options present where required. Pure.
|
|
79
|
+
*/
|
|
80
|
+
export function validateBuilder(name, fields) {
|
|
81
|
+
const fieldErrors = {};
|
|
82
|
+
let formError = null;
|
|
83
|
+
if (!isValidDoctypeName(name.trim())) {
|
|
84
|
+
formError = 'Enter a collection name with letters, digits, dashes or underscores (no spaces).';
|
|
85
|
+
}
|
|
86
|
+
else if (fields.length === 0) {
|
|
87
|
+
formError = 'Add at least one field.';
|
|
88
|
+
}
|
|
89
|
+
const seen = new Set();
|
|
90
|
+
for (const f of fields) {
|
|
91
|
+
const label = f.label.trim();
|
|
92
|
+
if (!label) {
|
|
93
|
+
fieldErrors[f.key] = 'Name this field.';
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
const fname = fieldNameFromLabel(label);
|
|
97
|
+
if (!fname) {
|
|
98
|
+
fieldErrors[f.key] = 'Use letters or digits in the field name.';
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
if (seen.has(fname)) {
|
|
102
|
+
fieldErrors[f.key] = `Duplicate field "${fname}".`;
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
seen.add(fname);
|
|
106
|
+
if ((f.type === 'Link' || f.type === 'Table') && !f.options.trim()) {
|
|
107
|
+
fieldErrors[f.key] = f.type === 'Link' ? 'Choose the collection to relate to.' : 'Name the child collection.';
|
|
108
|
+
}
|
|
109
|
+
else if (f.type === 'Select' && !f.options.trim()) {
|
|
110
|
+
fieldErrors[f.key] = 'Add at least one option.';
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return { ok: !formError && Object.keys(fieldErrors).length === 0, fieldErrors, formError };
|
|
114
|
+
}
|
|
115
|
+
/** A builder row → a framework DocField (drops UI-only bits, coerces options). */
|
|
116
|
+
export function toDocField(f) {
|
|
117
|
+
const fieldname = fieldNameFromLabel(f.label);
|
|
118
|
+
const field = {
|
|
119
|
+
fieldname,
|
|
120
|
+
fieldtype: f.type,
|
|
121
|
+
label: f.label.trim(),
|
|
122
|
+
};
|
|
123
|
+
if (f.required)
|
|
124
|
+
field.reqd = true;
|
|
125
|
+
if (f.inListView)
|
|
126
|
+
field.inListView = true;
|
|
127
|
+
if (fieldNeedsOptions(f.type) && f.options.trim())
|
|
128
|
+
field.options = f.options.trim();
|
|
129
|
+
return field;
|
|
130
|
+
}
|
|
131
|
+
/** Move a row within the ordered field list (a no-op at either end). Pure. */
|
|
132
|
+
export function moveField(fields, key, dir) {
|
|
133
|
+
const i = fields.findIndex((f) => f.key === key);
|
|
134
|
+
const j = i + dir;
|
|
135
|
+
if (i < 0 || j < 0 || j >= fields.length)
|
|
136
|
+
return fields;
|
|
137
|
+
const next = [...fields];
|
|
138
|
+
[next[i], next[j]] = [next[j], next[i]];
|
|
139
|
+
return next;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* The builder → a `DocType` create body. Auto-derives `autoname`/`titleField` from
|
|
143
|
+
* conventional fields when present (a `slug` field → `field:slug` naming; a `title`
|
|
144
|
+
* field → the title). Tags the module so the collection joins the lane.
|
|
145
|
+
*/
|
|
146
|
+
export function toDocType(name, module, fields) {
|
|
147
|
+
const docFields = fields.map(toDocField);
|
|
148
|
+
const byName = new Set(docFields.map((f) => f.fieldname));
|
|
149
|
+
const dt = { name: name.trim(), module, fields: docFields };
|
|
150
|
+
if (byName.has('slug'))
|
|
151
|
+
dt.autoname = 'field:slug';
|
|
152
|
+
if (byName.has('title'))
|
|
153
|
+
dt.titleField = 'title';
|
|
154
|
+
return dt;
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=builder-logic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder-logic.js","sourceRoot":"","sources":["../../src/framework/builder-logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
'use client';"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rows = rows;
|
|
4
|
+
exports.listQuery = listQuery;
|
|
5
|
+
exports.createFrameworkClient = createFrameworkClient;
|
|
6
|
+
const enc = encodeURIComponent;
|
|
7
|
+
const asRecord = (v) => v && typeof v === 'object' && !Array.isArray(v) ? v : {};
|
|
8
|
+
/** Pull the first array under a common envelope key (the engine uses `data`). */
|
|
9
|
+
function rows(payload) {
|
|
10
|
+
if (Array.isArray(payload)) {
|
|
11
|
+
return payload.filter((x) => x && typeof x === 'object');
|
|
12
|
+
}
|
|
13
|
+
const o = asRecord(payload);
|
|
14
|
+
for (const k of ['data', 'items', 'rows']) {
|
|
15
|
+
if (Array.isArray(o[k])) {
|
|
16
|
+
return o[k].filter((x) => x && typeof x === 'object');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
21
|
+
/** A framework document is already a flat map + envelope; keep it as-is (typed). */
|
|
22
|
+
const asDoc = (v) => asRecord(v);
|
|
23
|
+
const asDocType = (v) => {
|
|
24
|
+
const r = asRecord(v);
|
|
25
|
+
return {
|
|
26
|
+
...r,
|
|
27
|
+
name: String(r.name ?? ''),
|
|
28
|
+
fields: Array.isArray(r.fields) ? r.fields : [],
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
/** Build the generic document list querystring from a typed ListQuery. Pure. */
|
|
32
|
+
function listQuery(q) {
|
|
33
|
+
if (!q)
|
|
34
|
+
return '';
|
|
35
|
+
const p = new URLSearchParams();
|
|
36
|
+
if (q.filters && Object.keys(q.filters).length)
|
|
37
|
+
p.set('filters', JSON.stringify(q.filters));
|
|
38
|
+
if (q.fields && q.fields.length)
|
|
39
|
+
p.set('fields', q.fields.join(','));
|
|
40
|
+
if (q.orderBy)
|
|
41
|
+
p.set('order_by', q.orderBy);
|
|
42
|
+
if (q.limit)
|
|
43
|
+
p.set('limit', String(q.limit));
|
|
44
|
+
const s = p.toString();
|
|
45
|
+
return s ? `?${s}` : '';
|
|
46
|
+
}
|
|
47
|
+
/** Bind the framework surface to a host's transport. */
|
|
48
|
+
function createFrameworkClient(t) {
|
|
49
|
+
return {
|
|
50
|
+
doctypes: {
|
|
51
|
+
list: () => t.get('doctypes').then((r) => rows(r).map(asDocType)),
|
|
52
|
+
get: (name) => t.get(`doctypes/${enc(name)}`).then(asDocType),
|
|
53
|
+
create: (dt) => t.post('doctypes', dt).then(asDocType),
|
|
54
|
+
update: (name, dt) => t.put(`doctypes/${enc(name)}`, dt).then(asDocType),
|
|
55
|
+
remove: (name) => t.del(`doctypes/${enc(name)}`),
|
|
56
|
+
},
|
|
57
|
+
records: {
|
|
58
|
+
list: (doctype, q) => t.get(`${enc(doctype)}${listQuery(q)}`).then((r) => rows(r).map(asDoc)),
|
|
59
|
+
get: (doctype, name) => t.get(`${enc(doctype)}/${enc(name)}`).then(asDoc),
|
|
60
|
+
create: (doctype, data) => t.post(enc(doctype), data).then(asDoc),
|
|
61
|
+
update: (doctype, name, data) => t.put(`${enc(doctype)}/${enc(name)}`, data).then(asDoc),
|
|
62
|
+
remove: (doctype, name) => t.del(`${enc(doctype)}/${enc(name)}`),
|
|
63
|
+
submit: (doctype, name) => t.post(`${enc(doctype)}/${enc(name)}/submit`).then(asDoc),
|
|
64
|
+
cancel: (doctype, name) => t.post(`${enc(doctype)}/${enc(name)}/cancel`).then(asDoc),
|
|
65
|
+
},
|
|
66
|
+
modules: {
|
|
67
|
+
list: () => t.get('modules').then((r) => rows(r).map((m) => ({
|
|
68
|
+
module: String(m.module ?? ''),
|
|
69
|
+
doctypes: Array.isArray(m.doctypes) ? m.doctypes : [],
|
|
70
|
+
}))),
|
|
71
|
+
get: (module) => t.get(`modules/${enc(module)}`).then((v) => {
|
|
72
|
+
const r = asRecord(v);
|
|
73
|
+
return {
|
|
74
|
+
module: String(r.module ?? module),
|
|
75
|
+
doctypes: Array.isArray(r.doctypes) ? r.doctypes : [],
|
|
76
|
+
installed: Array.isArray(r.installed) ? r.installed : [],
|
|
77
|
+
};
|
|
78
|
+
}),
|
|
79
|
+
install: (module) => t.post(`modules/${enc(module)}/install`).then((v) => {
|
|
80
|
+
const r = asRecord(v);
|
|
81
|
+
return {
|
|
82
|
+
module: String(r.module ?? module),
|
|
83
|
+
created: Array.isArray(r.created) ? r.created : [],
|
|
84
|
+
existing: Array.isArray(r.existing) ? r.existing : [],
|
|
85
|
+
};
|
|
86
|
+
}),
|
|
87
|
+
},
|
|
88
|
+
roles: {
|
|
89
|
+
list: () => t.get('roles').then((r) => rows(r).map((x) => ({ user: String(x.user ?? ''), role: String(x.role ?? '') }))),
|
|
90
|
+
assign: (user, role) => t.post('roles', { user, role }).then(() => undefined),
|
|
91
|
+
revoke: (user, role) => t.del(`roles/${enc(user)}/${enc(role)}`),
|
|
92
|
+
},
|
|
93
|
+
summary: () => t.get('summary').then(asRecord),
|
|
94
|
+
};
|
|
95
|
+
}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* Payloads are read defensively from `{ data }` (or a bare array), so a shape drift
|
|
16
16
|
* degrades a list rather than throwing.
|
|
17
17
|
*/
|
|
18
|
-
import type { DocType, FrameworkDoc, InstallResult, ListQuery, ModuleInfo } from './types';
|
|
18
|
+
import type { DocType, FrameworkDoc, InstallResult, ListQuery, ModuleInfo } from './types.js';
|
|
19
19
|
/**
|
|
20
20
|
* The ONE seam a host injects. Paths are relative to the framework root and never
|
|
21
21
|
* start with a slash; the host prefixes its own base (and adds credentials).
|
|
@@ -72,3 +72,4 @@ export interface FrameworkClient {
|
|
|
72
72
|
}
|
|
73
73
|
/** Bind the framework surface to a host's transport. */
|
|
74
74
|
export declare function createFrameworkClient(t: FrameworkTransport): FrameworkClient;
|
|
75
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/framework/client.ts"],"names":[],"mappings":"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"}
|