@rangka/client 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/add-widget/SKILL.md +101 -0
- package/.turbo/turbo-build.log +29 -0
- package/CLAUDE.md +236 -0
- package/LICENSE +21 -0
- package/README.md +68 -0
- package/components.json +25 -0
- package/dist/App.d.ts +2 -0
- package/dist/App.d.ts.map +1 -0
- package/dist/App.js +24 -0
- package/dist/App.js.map +1 -0
- package/dist/api/auth.d.ts +12 -0
- package/dist/api/auth.d.ts.map +1 -0
- package/dist/api/auth.js +25 -0
- package/dist/api/auth.js.map +1 -0
- package/dist/api/boot.d.ts +3 -0
- package/dist/api/boot.d.ts.map +1 -0
- package/dist/api/boot.js +9 -0
- package/dist/api/boot.js.map +1 -0
- package/dist/api/client.d.ts +2 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +22 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/paths.d.ts +2 -0
- package/dist/api/paths.d.ts.map +1 -0
- package/dist/api/paths.js +4 -0
- package/dist/api/paths.js.map +1 -0
- package/dist/api/token.d.ts +4 -0
- package/dist/api/token.d.ts.map +1 -0
- package/dist/api/token.js +11 -0
- package/dist/api/token.js.map +1 -0
- package/dist/auth/LoginForm.d.ts +11 -0
- package/dist/auth/LoginForm.d.ts.map +1 -0
- package/dist/auth/LoginForm.js +17 -0
- package/dist/auth/LoginForm.js.map +1 -0
- package/dist/auth/SessionExpired.d.ts +5 -0
- package/dist/auth/SessionExpired.d.ts.map +1 -0
- package/dist/auth/SessionExpired.js +7 -0
- package/dist/auth/SessionExpired.js.map +1 -0
- package/dist/auth/SetupForm.d.ts +11 -0
- package/dist/auth/SetupForm.d.ts.map +1 -0
- package/dist/auth/SetupForm.js +17 -0
- package/dist/auth/SetupForm.js.map +1 -0
- package/dist/boot/BootGate.d.ts +5 -0
- package/dist/boot/BootGate.d.ts.map +1 -0
- package/dist/boot/BootGate.js +25 -0
- package/dist/boot/BootGate.js.map +1 -0
- package/dist/boot/BootProvider.d.ts +17 -0
- package/dist/boot/BootProvider.d.ts.map +1 -0
- package/dist/boot/BootProvider.js +16 -0
- package/dist/boot/BootProvider.js.map +1 -0
- package/dist/boot/types.d.ts +18 -0
- package/dist/boot/types.d.ts.map +1 -0
- package/dist/boot/types.js +2 -0
- package/dist/boot/types.js.map +1 -0
- package/dist/boot/useBoot.d.ts +12 -0
- package/dist/boot/useBoot.d.ts.map +1 -0
- package/dist/boot/useBoot.js +79 -0
- package/dist/boot/useBoot.js.map +1 -0
- package/dist/components/Icon.d.ts +6 -0
- package/dist/components/Icon.d.ts.map +1 -0
- package/dist/components/Icon.js +13 -0
- package/dist/components/Icon.js.map +1 -0
- package/dist/components/ui/accordion.d.ts +8 -0
- package/dist/components/ui/accordion.d.ts.map +1 -0
- package/dist/components/ui/accordion.js +18 -0
- package/dist/components/ui/accordion.js.map +1 -0
- package/dist/components/ui/alert-dialog.d.ts +19 -0
- package/dist/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/components/ui/alert-dialog.js +42 -0
- package/dist/components/ui/alert-dialog.js.map +1 -0
- package/dist/components/ui/alert.d.ts +11 -0
- package/dist/components/ui/alert.d.ts.map +1 -0
- package/dist/components/ui/alert.js +28 -0
- package/dist/components/ui/alert.js.map +1 -0
- package/dist/components/ui/aspect-ratio.d.ts +4 -0
- package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/components/ui/aspect-ratio.js +8 -0
- package/dist/components/ui/aspect-ratio.js.map +1 -0
- package/dist/components/ui/avatar.d.ts +12 -0
- package/dist/components/ui/avatar.d.ts.map +1 -0
- package/dist/components/ui/avatar.js +23 -0
- package/dist/components/ui/avatar.js.map +1 -0
- package/dist/components/ui/badge.d.ts +10 -0
- package/dist/components/ui/badge.d.ts.map +1 -0
- package/dist/components/ui/badge.js +25 -0
- package/dist/components/ui/badge.js.map +1 -0
- package/dist/components/ui/breadcrumb.d.ts +12 -0
- package/dist/components/ui/breadcrumb.d.ts.map +1 -0
- package/dist/components/ui/breadcrumb.js +28 -0
- package/dist/components/ui/breadcrumb.js.map +1 -0
- package/dist/components/ui/button-group.d.ts +12 -0
- package/dist/components/ui/button-group.d.ts.map +1 -0
- package/dist/components/ui/button-group.js +28 -0
- package/dist/components/ui/button-group.js.map +1 -0
- package/dist/components/ui/button.d.ts +11 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/button.js +36 -0
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/calendar.d.ts +11 -0
- package/dist/components/ui/calendar.d.ts.map +1 -0
- package/dist/components/ui/calendar.js +78 -0
- package/dist/components/ui/calendar.js.map +1 -0
- package/dist/components/ui/card.d.ts +12 -0
- package/dist/components/ui/card.d.ts.map +1 -0
- package/dist/components/ui/card.js +25 -0
- package/dist/components/ui/card.js.map +1 -0
- package/dist/components/ui/carousel.d.ts +29 -0
- package/dist/components/ui/carousel.d.ts.map +1 -0
- package/dist/components/ui/carousel.js +91 -0
- package/dist/components/ui/carousel.js.map +1 -0
- package/dist/components/ui/chart.d.ts +45 -0
- package/dist/components/ui/chart.d.ts.map +1 -0
- package/dist/components/ui/chart.js +119 -0
- package/dist/components/ui/chart.js.map +1 -0
- package/dist/components/ui/checkbox.d.ts +5 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -0
- package/dist/components/ui/checkbox.js +9 -0
- package/dist/components/ui/checkbox.js.map +1 -0
- package/dist/components/ui/collapsible.d.ts +6 -0
- package/dist/components/ui/collapsible.d.ts.map +1 -0
- package/dist/components/ui/collapsible.js +14 -0
- package/dist/components/ui/collapsible.js.map +1 -0
- package/dist/components/ui/combobox.d.ts +25 -0
- package/dist/components/ui/combobox.d.ts.map +1 -0
- package/dist/components/ui/combobox.js +59 -0
- package/dist/components/ui/combobox.js.map +1 -0
- package/dist/components/ui/command.d.ts +19 -0
- package/dist/components/ui/command.d.ts.map +1 -0
- package/dist/components/ui/command.js +35 -0
- package/dist/components/ui/command.js.map +1 -0
- package/dist/components/ui/context-menu.d.ts +32 -0
- package/dist/components/ui/context-menu.d.ts.map +1 -0
- package/dist/components/ui/context-menu.js +51 -0
- package/dist/components/ui/context-menu.js.map +1 -0
- package/dist/components/ui/dialog.d.ts +18 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/dialog.js +38 -0
- package/dist/components/ui/dialog.js.map +1 -0
- package/dist/components/ui/direction.d.ts +8 -0
- package/dist/components/ui/direction.d.ts.map +1 -0
- package/dist/components/ui/direction.js +9 -0
- package/dist/components/ui/direction.js.map +1 -0
- package/dist/components/ui/drawer.d.ts +14 -0
- package/dist/components/ui/drawer.d.ts.map +1 -0
- package/dist/components/ui/drawer.js +35 -0
- package/dist/components/ui/drawer.js.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +30 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu.js +52 -0
- package/dist/components/ui/dropdown-menu.js.map +1 -0
- package/dist/components/ui/empty.d.ts +12 -0
- package/dist/components/ui/empty.d.ts.map +1 -0
- package/dist/components/ui/empty.js +34 -0
- package/dist/components/ui/empty.js.map +1 -0
- package/dist/components/ui/field.d.ts +25 -0
- package/dist/components/ui/field.d.ts.map +1 -0
- package/dist/components/ui/field.js +67 -0
- package/dist/components/ui/field.js.map +1 -0
- package/dist/components/ui/hover-card.d.ts +7 -0
- package/dist/components/ui/hover-card.d.ts.map +1 -0
- package/dist/components/ui/hover-card.js +14 -0
- package/dist/components/ui/hover-card.js.map +1 -0
- package/dist/components/ui/input-group.d.ts +17 -0
- package/dist/components/ui/input-group.d.ts.map +1 -0
- package/dist/components/ui/input-group.js +57 -0
- package/dist/components/ui/input-group.js.map +1 -0
- package/dist/components/ui/input-otp.d.ts +12 -0
- package/dist/components/ui/input-otp.d.ts.map +1 -0
- package/dist/components/ui/input-otp.js +22 -0
- package/dist/components/ui/input-otp.js.map +1 -0
- package/dist/components/ui/input.d.ts +4 -0
- package/dist/components/ui/input.d.ts.map +1 -0
- package/dist/components/ui/input.js +7 -0
- package/dist/components/ui/input.js.map +1 -0
- package/dist/components/ui/item.d.ts +24 -0
- package/dist/components/ui/item.d.ts.map +1 -0
- package/dist/components/ui/item.js +68 -0
- package/dist/components/ui/item.js.map +1 -0
- package/dist/components/ui/kbd.d.ts +4 -0
- package/dist/components/ui/kbd.d.ts.map +1 -0
- package/dist/components/ui/kbd.js +10 -0
- package/dist/components/ui/kbd.js.map +1 -0
- package/dist/components/ui/label.d.ts +5 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/label.js +8 -0
- package/dist/components/ui/label.js.map +1 -0
- package/dist/components/ui/menubar.d.ts +31 -0
- package/dist/components/ui/menubar.d.ts.map +1 -0
- package/dist/components/ui/menubar.js +55 -0
- package/dist/components/ui/menubar.js.map +1 -0
- package/dist/components/ui/native-select.d.ts +9 -0
- package/dist/components/ui/native-select.d.ts.map +1 -0
- package/dist/components/ui/native-select.js +14 -0
- package/dist/components/ui/native-select.js.map +1 -0
- package/dist/components/ui/navigation-menu.d.ts +15 -0
- package/dist/components/ui/navigation-menu.d.ts.map +1 -0
- package/dist/components/ui/navigation-menu.js +32 -0
- package/dist/components/ui/navigation-menu.js.map +1 -0
- package/dist/components/ui/pagination.d.ts +18 -0
- package/dist/components/ui/pagination.d.ts.map +1 -0
- package/dist/components/ui/pagination.js +27 -0
- package/dist/components/ui/pagination.js.map +1 -0
- package/dist/components/ui/popover.d.ts +11 -0
- package/dist/components/ui/popover.d.ts.map +1 -0
- package/dist/components/ui/popover.js +26 -0
- package/dist/components/ui/popover.js.map +1 -0
- package/dist/components/ui/progress.d.ts +5 -0
- package/dist/components/ui/progress.d.ts.map +1 -0
- package/dist/components/ui/progress.js +9 -0
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/radio-group.d.ts +6 -0
- package/dist/components/ui/radio-group.d.ts.map +1 -0
- package/dist/components/ui/radio-group.js +11 -0
- package/dist/components/ui/radio-group.js.map +1 -0
- package/dist/components/ui/resizable.d.ts +8 -0
- package/dist/components/ui/resizable.d.ts.map +1 -0
- package/dist/components/ui/resizable.js +15 -0
- package/dist/components/ui/resizable.js.map +1 -0
- package/dist/components/ui/scroll-area.d.ts +6 -0
- package/dist/components/ui/scroll-area.d.ts.map +1 -0
- package/dist/components/ui/scroll-area.js +11 -0
- package/dist/components/ui/scroll-area.js.map +1 -0
- package/dist/components/ui/select.d.ts +16 -0
- package/dist/components/ui/select.d.ts.map +1 -0
- package/dist/components/ui/select.js +38 -0
- package/dist/components/ui/select.js.map +1 -0
- package/dist/components/ui/separator.d.ts +5 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/separator.js +8 -0
- package/dist/components/ui/separator.js.map +1 -0
- package/dist/components/ui/sheet.d.ts +15 -0
- package/dist/components/ui/sheet.d.ts.map +1 -0
- package/dist/components/ui/sheet.js +37 -0
- package/dist/components/ui/sheet.js.map +1 -0
- package/dist/components/ui/sidebar.d.ts +70 -0
- package/dist/components/ui/sidebar.d.ts.map +1 -0
- package/dist/components/ui/sidebar.js +205 -0
- package/dist/components/ui/sidebar.js.map +1 -0
- package/dist/components/ui/skeleton.d.ts +3 -0
- package/dist/components/ui/skeleton.d.ts.map +1 -0
- package/dist/components/ui/skeleton.js +7 -0
- package/dist/components/ui/skeleton.js.map +1 -0
- package/dist/components/ui/slider.d.ts +5 -0
- package/dist/components/ui/slider.d.ts.map +1 -0
- package/dist/components/ui/slider.js +11 -0
- package/dist/components/ui/slider.js.map +1 -0
- package/dist/components/ui/sonner.d.ts +4 -0
- package/dist/components/ui/sonner.d.ts.map +1 -0
- package/dist/components/ui/sonner.js +25 -0
- package/dist/components/ui/sonner.js.map +1 -0
- package/dist/components/ui/spinner.d.ts +3 -0
- package/dist/components/ui/spinner.d.ts.map +1 -0
- package/dist/components/ui/spinner.js +8 -0
- package/dist/components/ui/spinner.js.map +1 -0
- package/dist/components/ui/switch.d.ts +7 -0
- package/dist/components/ui/switch.d.ts.map +1 -0
- package/dist/components/ui/switch.js +9 -0
- package/dist/components/ui/switch.js.map +1 -0
- package/dist/components/ui/table.d.ts +11 -0
- package/dist/components/ui/table.d.ts.map +1 -0
- package/dist/components/ui/table.js +28 -0
- package/dist/components/ui/table.js.map +1 -0
- package/dist/components/ui/tabs.d.ts +12 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/components/ui/tabs.js +30 -0
- package/dist/components/ui/tabs.js.map +1 -0
- package/dist/components/ui/textarea.d.ts +4 -0
- package/dist/components/ui/textarea.d.ts.map +1 -0
- package/dist/components/ui/textarea.js +7 -0
- package/dist/components/ui/textarea.js.map +1 -0
- package/dist/components/ui/toggle-group.d.ts +11 -0
- package/dist/components/ui/toggle-group.d.ts.map +1 -0
- package/dist/components/ui/toggle-group.js +24 -0
- package/dist/components/ui/toggle-group.js.map +1 -0
- package/dist/components/ui/toggle.d.ts +10 -0
- package/dist/components/ui/toggle.d.ts.map +1 -0
- package/dist/components/ui/toggle.js +26 -0
- package/dist/components/ui/toggle.js.map +1 -0
- package/dist/components/ui/tooltip.d.ts +8 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/components/ui/tooltip.js +18 -0
- package/dist/components/ui/tooltip.js.map +1 -0
- package/dist/context/MetaContext.d.ts +13 -0
- package/dist/context/MetaContext.d.ts.map +1 -0
- package/dist/context/MetaContext.js +14 -0
- package/dist/context/MetaContext.js.map +1 -0
- package/dist/context/ModuleContext.d.ts +14 -0
- package/dist/context/ModuleContext.d.ts.map +1 -0
- package/dist/context/ModuleContext.js +40 -0
- package/dist/context/ModuleContext.js.map +1 -0
- package/dist/context/PermissionsContext.d.ts +14 -0
- package/dist/context/PermissionsContext.d.ts.map +1 -0
- package/dist/context/PermissionsContext.js +20 -0
- package/dist/context/PermissionsContext.js.map +1 -0
- package/dist/context/ShellProviders.d.ts +7 -0
- package/dist/context/ShellProviders.d.ts.map +1 -0
- package/dist/context/ShellProviders.js +16 -0
- package/dist/context/ShellProviders.js.map +1 -0
- package/dist/context/UserContext.d.ts +8 -0
- package/dist/context/UserContext.d.ts.map +1 -0
- package/dist/context/UserContext.js +14 -0
- package/dist/context/UserContext.js.map +1 -0
- package/dist/data/QueryProvider.d.ts +7 -0
- package/dist/data/QueryProvider.d.ts.map +1 -0
- package/dist/data/QueryProvider.js +6 -0
- package/dist/data/QueryProvider.js.map +1 -0
- package/dist/data/queryClient.d.ts +3 -0
- package/dist/data/queryClient.d.ts.map +1 -0
- package/dist/data/queryClient.js +18 -0
- package/dist/data/queryClient.js.map +1 -0
- package/dist/data/useModelMeta.d.ts +6 -0
- package/dist/data/useModelMeta.d.ts.map +1 -0
- package/dist/data/useModelMeta.js +12 -0
- package/dist/data/useModelMeta.js.map +1 -0
- package/dist/data/useMutation.d.ts +8 -0
- package/dist/data/useMutation.d.ts.map +1 -0
- package/dist/data/useMutation.js +51 -0
- package/dist/data/useMutation.js.map +1 -0
- package/dist/data/useRecord.d.ts +6 -0
- package/dist/data/useRecord.d.ts.map +1 -0
- package/dist/data/useRecord.js +21 -0
- package/dist/data/useRecord.js.map +1 -0
- package/dist/data/useSource.d.ts +27 -0
- package/dist/data/useSource.d.ts.map +1 -0
- package/dist/data/useSource.js +82 -0
- package/dist/data/useSource.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +2 -0
- package/dist/hooks/use-mobile.d.ts.map +1 -0
- package/dist/hooks/use-mobile.js +16 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +12 -0
- package/dist/main.js.map +1 -0
- package/dist/router/NotFound.d.ts +2 -0
- package/dist/router/NotFound.d.ts.map +1 -0
- package/dist/router/NotFound.js +5 -0
- package/dist/router/NotFound.js.map +1 -0
- package/dist/router/RouterProvider.d.ts +5 -0
- package/dist/router/RouterProvider.d.ts.map +1 -0
- package/dist/router/RouterProvider.js +7 -0
- package/dist/router/RouterProvider.js.map +1 -0
- package/dist/router/buildRouteTree.d.ts +3 -0
- package/dist/router/buildRouteTree.d.ts.map +1 -0
- package/dist/router/buildRouteTree.js +43 -0
- package/dist/router/buildRouteTree.js.map +1 -0
- package/dist/router/createShellRouter.d.ts +4 -0
- package/dist/router/createShellRouter.d.ts.map +1 -0
- package/dist/router/createShellRouter.js +8 -0
- package/dist/router/createShellRouter.js.map +1 -0
- package/dist/router/hooks.d.ts +10 -0
- package/dist/router/hooks.d.ts.map +1 -0
- package/dist/router/hooks.js +31 -0
- package/dist/router/hooks.js.map +1 -0
- package/dist/shell/assets/index--35CAvcP.js +8715 -0
- package/dist/shell/assets/index-COLmoPYo.css +1 -0
- package/dist/shell/assets/index-Ck_eod9F.js +1 -0
- package/dist/shell/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
- package/dist/shell/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
- package/dist/shell/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
- package/dist/shell/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
- package/dist/shell/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
- package/dist/shell/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
- package/dist/shell/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
- package/dist/shell/index.html +13 -0
- package/dist/studio/bridge.d.ts +2 -0
- package/dist/studio/bridge.d.ts.map +1 -0
- package/dist/studio/bridge.js +112 -0
- package/dist/studio/bridge.js.map +1 -0
- package/dist/studio/index.d.ts +2 -0
- package/dist/studio/index.d.ts.map +1 -0
- package/dist/studio/index.js +3 -0
- package/dist/studio/index.js.map +1 -0
- package/dist/studio/overlay.d.ts +11 -0
- package/dist/studio/overlay.d.ts.map +1 -0
- package/dist/studio/overlay.js +41 -0
- package/dist/studio/overlay.js.map +1 -0
- package/dist/studio/types.d.ts +42 -0
- package/dist/studio/types.d.ts.map +1 -0
- package/dist/studio/types.js +2 -0
- package/dist/studio/types.js.map +1 -0
- package/dist/studio/walker.d.ts +6 -0
- package/dist/studio/walker.d.ts.map +1 -0
- package/dist/studio/walker.js +43 -0
- package/dist/studio/walker.js.map +1 -0
- package/dist/widgets/action/dispatcher.d.ts +31 -0
- package/dist/widgets/action/dispatcher.d.ts.map +1 -0
- package/dist/widgets/action/dispatcher.js +224 -0
- package/dist/widgets/action/dispatcher.js.map +1 -0
- package/dist/widgets/action/index.d.ts +3 -0
- package/dist/widgets/action/index.d.ts.map +1 -0
- package/dist/widgets/action/index.js +2 -0
- package/dist/widgets/action/index.js.map +1 -0
- package/dist/widgets/binding/index.d.ts +3 -0
- package/dist/widgets/binding/index.d.ts.map +1 -0
- package/dist/widgets/binding/index.js +2 -0
- package/dist/widgets/binding/index.js.map +1 -0
- package/dist/widgets/binding/resolver.d.ts +23 -0
- package/dist/widgets/binding/resolver.d.ts.map +1 -0
- package/dist/widgets/binding/resolver.js +33 -0
- package/dist/widgets/binding/resolver.js.map +1 -0
- package/dist/widgets/components/AttachmentWidget.d.ts +29 -0
- package/dist/widgets/components/AttachmentWidget.d.ts.map +1 -0
- package/dist/widgets/components/AttachmentWidget.js +53 -0
- package/dist/widgets/components/AttachmentWidget.js.map +1 -0
- package/dist/widgets/components/AttachmentsWidget.d.ts +33 -0
- package/dist/widgets/components/AttachmentsWidget.d.ts.map +1 -0
- package/dist/widgets/components/AttachmentsWidget.js +52 -0
- package/dist/widgets/components/AttachmentsWidget.js.map +1 -0
- package/dist/widgets/components/BadgeWidget.d.ts +29 -0
- package/dist/widgets/components/BadgeWidget.d.ts.map +1 -0
- package/dist/widgets/components/BadgeWidget.js +31 -0
- package/dist/widgets/components/BadgeWidget.js.map +1 -0
- package/dist/widgets/components/ButtonWidget.d.ts +38 -0
- package/dist/widgets/components/ButtonWidget.d.ts.map +1 -0
- package/dist/widgets/components/ButtonWidget.js +29 -0
- package/dist/widgets/components/ButtonWidget.js.map +1 -0
- package/dist/widgets/components/CardWidget.d.ts +33 -0
- package/dist/widgets/components/CardWidget.d.ts.map +1 -0
- package/dist/widgets/components/CardWidget.js +28 -0
- package/dist/widgets/components/CardWidget.js.map +1 -0
- package/dist/widgets/components/CheckboxWidget.d.ts +23 -0
- package/dist/widgets/components/CheckboxWidget.d.ts.map +1 -0
- package/dist/widgets/components/CheckboxWidget.js +24 -0
- package/dist/widgets/components/CheckboxWidget.js.map +1 -0
- package/dist/widgets/components/CodeWidget.d.ts +30 -0
- package/dist/widgets/components/CodeWidget.d.ts.map +1 -0
- package/dist/widgets/components/CodeWidget.js +27 -0
- package/dist/widgets/components/CodeWidget.js.map +1 -0
- package/dist/widgets/components/ColumnWidget.d.ts +34 -0
- package/dist/widgets/components/ColumnWidget.d.ts.map +1 -0
- package/dist/widgets/components/ColumnWidget.js +20 -0
- package/dist/widgets/components/ColumnWidget.js.map +1 -0
- package/dist/widgets/components/ComputedWidget.d.ts +24 -0
- package/dist/widgets/components/ComputedWidget.d.ts.map +1 -0
- package/dist/widgets/components/ComputedWidget.js +39 -0
- package/dist/widgets/components/ComputedWidget.js.map +1 -0
- package/dist/widgets/components/DataWidget.d.ts +22 -0
- package/dist/widgets/components/DataWidget.d.ts.map +1 -0
- package/dist/widgets/components/DataWidget.js +99 -0
- package/dist/widgets/components/DataWidget.js.map +1 -0
- package/dist/widgets/components/DatePickerWidget.d.ts +23 -0
- package/dist/widgets/components/DatePickerWidget.d.ts.map +1 -0
- package/dist/widgets/components/DatePickerWidget.js +38 -0
- package/dist/widgets/components/DatePickerWidget.js.map +1 -0
- package/dist/widgets/components/DatetimeWidget.d.ts +23 -0
- package/dist/widgets/components/DatetimeWidget.d.ts.map +1 -0
- package/dist/widgets/components/DatetimeWidget.js +68 -0
- package/dist/widgets/components/DatetimeWidget.js.map +1 -0
- package/dist/widgets/components/DividerWidget.d.ts +24 -0
- package/dist/widgets/components/DividerWidget.d.ts.map +1 -0
- package/dist/widgets/components/DividerWidget.js +33 -0
- package/dist/widgets/components/DividerWidget.js.map +1 -0
- package/dist/widgets/components/DrawerWidget.d.ts +28 -0
- package/dist/widgets/components/DrawerWidget.d.ts.map +1 -0
- package/dist/widgets/components/DrawerWidget.js +36 -0
- package/dist/widgets/components/DrawerWidget.js.map +1 -0
- package/dist/widgets/components/DynamicLinkWidget.d.ts +29 -0
- package/dist/widgets/components/DynamicLinkWidget.d.ts.map +1 -0
- package/dist/widgets/components/DynamicLinkWidget.js +51 -0
- package/dist/widgets/components/DynamicLinkWidget.js.map +1 -0
- package/dist/widgets/components/GridWidget.d.ts +53 -0
- package/dist/widgets/components/GridWidget.d.ts.map +1 -0
- package/dist/widgets/components/GridWidget.js +111 -0
- package/dist/widgets/components/GridWidget.js.map +1 -0
- package/dist/widgets/components/GroupWidget.d.ts +50 -0
- package/dist/widgets/components/GroupWidget.d.ts.map +1 -0
- package/dist/widgets/components/GroupWidget.js +85 -0
- package/dist/widgets/components/GroupWidget.js.map +1 -0
- package/dist/widgets/components/IconWidget.d.ts +27 -0
- package/dist/widgets/components/IconWidget.d.ts.map +1 -0
- package/dist/widgets/components/IconWidget.js +22 -0
- package/dist/widgets/components/IconWidget.js.map +1 -0
- package/dist/widgets/components/ImageWidget.d.ts +28 -0
- package/dist/widgets/components/ImageWidget.d.ts.map +1 -0
- package/dist/widgets/components/ImageWidget.js +25 -0
- package/dist/widgets/components/ImageWidget.js.map +1 -0
- package/dist/widgets/components/InputWidget.d.ts +51 -0
- package/dist/widgets/components/InputWidget.d.ts.map +1 -0
- package/dist/widgets/components/InputWidget.js +46 -0
- package/dist/widgets/components/InputWidget.js.map +1 -0
- package/dist/widgets/components/JsonWidget.d.ts +27 -0
- package/dist/widgets/components/JsonWidget.d.ts.map +1 -0
- package/dist/widgets/components/JsonWidget.js +54 -0
- package/dist/widgets/components/JsonWidget.js.map +1 -0
- package/dist/widgets/components/LinkWidget.d.ts +26 -0
- package/dist/widgets/components/LinkWidget.d.ts.map +1 -0
- package/dist/widgets/components/LinkWidget.js +42 -0
- package/dist/widgets/components/LinkWidget.js.map +1 -0
- package/dist/widgets/components/ManyToManyWidget.d.ts +26 -0
- package/dist/widgets/components/ManyToManyWidget.d.ts.map +1 -0
- package/dist/widgets/components/ManyToManyWidget.js +54 -0
- package/dist/widgets/components/ManyToManyWidget.js.map +1 -0
- package/dist/widgets/components/ModalWidget.d.ts +28 -0
- package/dist/widgets/components/ModalWidget.d.ts.map +1 -0
- package/dist/widgets/components/ModalWidget.js +36 -0
- package/dist/widgets/components/ModalWidget.js.map +1 -0
- package/dist/widgets/components/MoneyWidget.d.ts +31 -0
- package/dist/widgets/components/MoneyWidget.d.ts.map +1 -0
- package/dist/widgets/components/MoneyWidget.js +52 -0
- package/dist/widgets/components/MoneyWidget.js.map +1 -0
- package/dist/widgets/components/RepeatWidget.d.ts +30 -0
- package/dist/widgets/components/RepeatWidget.d.ts.map +1 -0
- package/dist/widgets/components/RepeatWidget.js +50 -0
- package/dist/widgets/components/RepeatWidget.js.map +1 -0
- package/dist/widgets/components/ScrollAreaWidget.d.ts +27 -0
- package/dist/widgets/components/ScrollAreaWidget.d.ts.map +1 -0
- package/dist/widgets/components/ScrollAreaWidget.js +27 -0
- package/dist/widgets/components/ScrollAreaWidget.js.map +1 -0
- package/dist/widgets/components/SectionWidget.d.ts +36 -0
- package/dist/widgets/components/SectionWidget.d.ts.map +1 -0
- package/dist/widgets/components/SectionWidget.js +46 -0
- package/dist/widgets/components/SectionWidget.js.map +1 -0
- package/dist/widgets/components/SelectWidget.d.ts +30 -0
- package/dist/widgets/components/SelectWidget.d.ts.map +1 -0
- package/dist/widgets/components/SelectWidget.js +30 -0
- package/dist/widgets/components/SelectWidget.js.map +1 -0
- package/dist/widgets/components/SequenceWidget.d.ts +19 -0
- package/dist/widgets/components/SequenceWidget.d.ts.map +1 -0
- package/dist/widgets/components/SequenceWidget.js +20 -0
- package/dist/widgets/components/SequenceWidget.js.map +1 -0
- package/dist/widgets/components/SpacerWidget.d.ts +21 -0
- package/dist/widgets/components/SpacerWidget.d.ts.map +1 -0
- package/dist/widgets/components/SpacerWidget.js +25 -0
- package/dist/widgets/components/SpacerWidget.js.map +1 -0
- package/dist/widgets/components/SplitWidget.d.ts +32 -0
- package/dist/widgets/components/SplitWidget.d.ts.map +1 -0
- package/dist/widgets/components/SplitWidget.js +41 -0
- package/dist/widgets/components/SplitWidget.js.map +1 -0
- package/dist/widgets/components/StackWidget.d.ts +24 -0
- package/dist/widgets/components/StackWidget.d.ts.map +1 -0
- package/dist/widgets/components/StackWidget.js +29 -0
- package/dist/widgets/components/StackWidget.js.map +1 -0
- package/dist/widgets/components/TableWidget.d.ts +36 -0
- package/dist/widgets/components/TableWidget.d.ts.map +1 -0
- package/dist/widgets/components/TableWidget.js +154 -0
- package/dist/widgets/components/TableWidget.js.map +1 -0
- package/dist/widgets/components/TextWidget.d.ts +21 -0
- package/dist/widgets/components/TextWidget.d.ts.map +1 -0
- package/dist/widgets/components/TextWidget.js +38 -0
- package/dist/widgets/components/TextWidget.js.map +1 -0
- package/dist/widgets/components/TextareaWidget.d.ts +34 -0
- package/dist/widgets/components/TextareaWidget.d.ts.map +1 -0
- package/dist/widgets/components/TextareaWidget.js +31 -0
- package/dist/widgets/components/TextareaWidget.js.map +1 -0
- package/dist/widgets/components/TreeWidget.d.ts +26 -0
- package/dist/widgets/components/TreeWidget.d.ts.map +1 -0
- package/dist/widgets/components/TreeWidget.js +46 -0
- package/dist/widgets/components/TreeWidget.js.map +1 -0
- package/dist/widgets/components/index.d.ts +31 -0
- package/dist/widgets/components/index.d.ts.map +1 -0
- package/dist/widgets/components/index.js +31 -0
- package/dist/widgets/components/index.js.map +1 -0
- package/dist/widgets/components/register.d.ts +2 -0
- package/dist/widgets/components/register.d.ts.map +1 -0
- package/dist/widgets/components/register.js +85 -0
- package/dist/widgets/components/register.js.map +1 -0
- package/dist/widgets/components/table/CellRenderers.d.ts +11 -0
- package/dist/widgets/components/table/CellRenderers.d.ts.map +1 -0
- package/dist/widgets/components/table/CellRenderers.js +71 -0
- package/dist/widgets/components/table/CellRenderers.js.map +1 -0
- package/dist/widgets/components/table/TablePagination.d.ts +10 -0
- package/dist/widgets/components/table/TablePagination.d.ts.map +1 -0
- package/dist/widgets/components/table/TablePagination.js +11 -0
- package/dist/widgets/components/table/TablePagination.js.map +1 -0
- package/dist/widgets/components/table/TableToolbar.d.ts +17 -0
- package/dist/widgets/components/table/TableToolbar.d.ts.map +1 -0
- package/dist/widgets/components/table/TableToolbar.js +115 -0
- package/dist/widgets/components/table/TableToolbar.js.map +1 -0
- package/dist/widgets/components/table/filter-operators.d.ts +26 -0
- package/dist/widgets/components/table/filter-operators.d.ts.map +1 -0
- package/dist/widgets/components/table/filter-operators.js +111 -0
- package/dist/widgets/components/table/filter-operators.js.map +1 -0
- package/dist/widgets/components/table/index.d.ts +6 -0
- package/dist/widgets/components/table/index.d.ts.map +1 -0
- package/dist/widgets/components/table/index.js +5 -0
- package/dist/widgets/components/table/index.js.map +1 -0
- package/dist/widgets/condition/evaluator.d.ts +5 -0
- package/dist/widgets/condition/evaluator.d.ts.map +1 -0
- package/dist/widgets/condition/evaluator.js +49 -0
- package/dist/widgets/condition/evaluator.js.map +1 -0
- package/dist/widgets/condition/index.d.ts +2 -0
- package/dist/widgets/condition/index.d.ts.map +1 -0
- package/dist/widgets/condition/index.js +2 -0
- package/dist/widgets/condition/index.js.map +1 -0
- package/dist/widgets/context/builder.d.ts +7 -0
- package/dist/widgets/context/builder.d.ts.map +1 -0
- package/dist/widgets/context/builder.js +81 -0
- package/dist/widgets/context/builder.js.map +1 -0
- package/dist/widgets/context/index.d.ts +4 -0
- package/dist/widgets/context/index.d.ts.map +1 -0
- package/dist/widgets/context/index.js +3 -0
- package/dist/widgets/context/index.js.map +1 -0
- package/dist/widgets/context/types.d.ts +13 -0
- package/dist/widgets/context/types.d.ts.map +1 -0
- package/dist/widgets/context/types.js +21 -0
- package/dist/widgets/context/types.js.map +1 -0
- package/dist/widgets/data/index.d.ts +5 -0
- package/dist/widgets/data/index.d.ts.map +1 -0
- package/dist/widgets/data/index.js +3 -0
- package/dist/widgets/data/index.js.map +1 -0
- package/dist/widgets/data/useModelQuery.d.ts +21 -0
- package/dist/widgets/data/useModelQuery.d.ts.map +1 -0
- package/dist/widgets/data/useModelQuery.js +87 -0
- package/dist/widgets/data/useModelQuery.js.map +1 -0
- package/dist/widgets/data/useModelRecord.d.ts +12 -0
- package/dist/widgets/data/useModelRecord.d.ts.map +1 -0
- package/dist/widgets/data/useModelRecord.js +24 -0
- package/dist/widgets/data/useModelRecord.js.map +1 -0
- package/dist/widgets/expression/evaluator.d.ts +4 -0
- package/dist/widgets/expression/evaluator.d.ts.map +1 -0
- package/dist/widgets/expression/evaluator.js +84 -0
- package/dist/widgets/expression/evaluator.js.map +1 -0
- package/dist/widgets/expression/functions.d.ts +5 -0
- package/dist/widgets/expression/functions.d.ts.map +1 -0
- package/dist/widgets/expression/functions.js +128 -0
- package/dist/widgets/expression/functions.js.map +1 -0
- package/dist/widgets/expression/index.d.ts +6 -0
- package/dist/widgets/expression/index.d.ts.map +1 -0
- package/dist/widgets/expression/index.js +4 -0
- package/dist/widgets/expression/index.js.map +1 -0
- package/dist/widgets/expression/parser.d.ts +3 -0
- package/dist/widgets/expression/parser.d.ts.map +1 -0
- package/dist/widgets/expression/parser.js +202 -0
- package/dist/widgets/expression/parser.js.map +1 -0
- package/dist/widgets/expression/types.d.ts +27 -0
- package/dist/widgets/expression/types.d.ts.map +1 -0
- package/dist/widgets/expression/types.js +2 -0
- package/dist/widgets/expression/types.js.map +1 -0
- package/dist/widgets/form/FormContext.d.ts +20 -0
- package/dist/widgets/form/FormContext.d.ts.map +1 -0
- package/dist/widgets/form/FormContext.js +7 -0
- package/dist/widgets/form/FormContext.js.map +1 -0
- package/dist/widgets/form/FormProvider.d.ts +10 -0
- package/dist/widgets/form/FormProvider.d.ts.map +1 -0
- package/dist/widgets/form/FormProvider.js +64 -0
- package/dist/widgets/form/FormProvider.js.map +1 -0
- package/dist/widgets/form/FormWidget.d.ts +15 -0
- package/dist/widgets/form/FormWidget.d.ts.map +1 -0
- package/dist/widgets/form/FormWidget.js +28 -0
- package/dist/widgets/form/FormWidget.js.map +1 -0
- package/dist/widgets/form/index.d.ts +5 -0
- package/dist/widgets/form/index.d.ts.map +1 -0
- package/dist/widgets/form/index.js +4 -0
- package/dist/widgets/form/index.js.map +1 -0
- package/dist/widgets/form/useFormState.d.ts +22 -0
- package/dist/widgets/form/useFormState.d.ts.map +1 -0
- package/dist/widgets/form/useFormState.js +89 -0
- package/dist/widgets/form/useFormState.js.map +1 -0
- package/dist/widgets/form/useFormSubmit.d.ts +16 -0
- package/dist/widgets/form/useFormSubmit.d.ts.map +1 -0
- package/dist/widgets/form/useFormSubmit.js +66 -0
- package/dist/widgets/form/useFormSubmit.js.map +1 -0
- package/dist/widgets/form/useFormValidation.d.ts +6 -0
- package/dist/widgets/form/useFormValidation.d.ts.map +1 -0
- package/dist/widgets/form/useFormValidation.js +48 -0
- package/dist/widgets/form/useFormValidation.js.map +1 -0
- package/dist/widgets/hooks/index.d.ts +9 -0
- package/dist/widgets/hooks/index.d.ts.map +1 -0
- package/dist/widgets/hooks/index.js +8 -0
- package/dist/widgets/hooks/index.js.map +1 -0
- package/dist/widgets/hooks/useAction.d.ts +7 -0
- package/dist/widgets/hooks/useAction.d.ts.map +1 -0
- package/dist/widgets/hooks/useAction.js +73 -0
- package/dist/widgets/hooks/useAction.js.map +1 -0
- package/dist/widgets/hooks/useBind.d.ts +4 -0
- package/dist/widgets/hooks/useBind.d.ts.map +1 -0
- package/dist/widgets/hooks/useBind.js +27 -0
- package/dist/widgets/hooks/useBind.js.map +1 -0
- package/dist/widgets/hooks/useCondition.d.ts +3 -0
- package/dist/widgets/hooks/useCondition.d.ts.map +1 -0
- package/dist/widgets/hooks/useCondition.js +21 -0
- package/dist/widgets/hooks/useCondition.js.map +1 -0
- package/dist/widgets/hooks/useDataQuery.d.ts +19 -0
- package/dist/widgets/hooks/useDataQuery.d.ts.map +1 -0
- package/dist/widgets/hooks/useDataQuery.js +32 -0
- package/dist/widgets/hooks/useDataQuery.js.map +1 -0
- package/dist/widgets/hooks/useExpression.d.ts +2 -0
- package/dist/widgets/hooks/useExpression.d.ts.map +1 -0
- package/dist/widgets/hooks/useExpression.js +15 -0
- package/dist/widgets/hooks/useExpression.js.map +1 -0
- package/dist/widgets/hooks/usePageState.d.ts +5 -0
- package/dist/widgets/hooks/usePageState.d.ts.map +1 -0
- package/dist/widgets/hooks/usePageState.js +17 -0
- package/dist/widgets/hooks/usePageState.js.map +1 -0
- package/dist/widgets/hooks/useSurfaceContext.d.ts +5 -0
- package/dist/widgets/hooks/useSurfaceContext.d.ts.map +1 -0
- package/dist/widgets/hooks/useSurfaceContext.js +7 -0
- package/dist/widgets/hooks/useSurfaceContext.js.map +1 -0
- package/dist/widgets/hooks/useWidgetContext.d.ts +4 -0
- package/dist/widgets/hooks/useWidgetContext.d.ts.map +1 -0
- package/dist/widgets/hooks/useWidgetContext.js +11 -0
- package/dist/widgets/hooks/useWidgetContext.js.map +1 -0
- package/dist/widgets/index.d.ts +44 -0
- package/dist/widgets/index.d.ts.map +1 -0
- package/dist/widgets/index.js +31 -0
- package/dist/widgets/index.js.map +1 -0
- package/dist/widgets/lib/layout-props.d.ts +8 -0
- package/dist/widgets/lib/layout-props.d.ts.map +1 -0
- package/dist/widgets/lib/layout-props.js +134 -0
- package/dist/widgets/lib/layout-props.js.map +1 -0
- package/dist/widgets/reactivity/index.d.ts +5 -0
- package/dist/widgets/reactivity/index.d.ts.map +1 -0
- package/dist/widgets/reactivity/index.js +3 -0
- package/dist/widgets/reactivity/index.js.map +1 -0
- package/dist/widgets/reactivity/tracker.d.ts +8 -0
- package/dist/widgets/reactivity/tracker.d.ts.map +1 -0
- package/dist/widgets/reactivity/tracker.js +115 -0
- package/dist/widgets/reactivity/tracker.js.map +1 -0
- package/dist/widgets/reactivity/variables.d.ts +71 -0
- package/dist/widgets/reactivity/variables.d.ts.map +1 -0
- package/dist/widgets/reactivity/variables.js +175 -0
- package/dist/widgets/reactivity/variables.js.map +1 -0
- package/dist/widgets/registry.d.ts +14 -0
- package/dist/widgets/registry.d.ts.map +1 -0
- package/dist/widgets/registry.js +24 -0
- package/dist/widgets/registry.js.map +1 -0
- package/dist/widgets/renderer/SlotRenderer.d.ts +16 -0
- package/dist/widgets/renderer/SlotRenderer.d.ts.map +1 -0
- package/dist/widgets/renderer/SlotRenderer.js +13 -0
- package/dist/widgets/renderer/SlotRenderer.js.map +1 -0
- package/dist/widgets/renderer/WidgetRenderer.d.ts +12 -0
- package/dist/widgets/renderer/WidgetRenderer.d.ts.map +1 -0
- package/dist/widgets/renderer/WidgetRenderer.js +136 -0
- package/dist/widgets/renderer/WidgetRenderer.js.map +1 -0
- package/dist/widgets/renderer/index.d.ts +5 -0
- package/dist/widgets/renderer/index.d.ts.map +1 -0
- package/dist/widgets/renderer/index.js +3 -0
- package/dist/widgets/renderer/index.js.map +1 -0
- package/dist/widgets/shell/WidgetSlotRenderer.d.ts +14 -0
- package/dist/widgets/shell/WidgetSlotRenderer.d.ts.map +1 -0
- package/dist/widgets/shell/WidgetSlotRenderer.js +27 -0
- package/dist/widgets/shell/WidgetSlotRenderer.js.map +1 -0
- package/dist/widgets/shell/index.d.ts +5 -0
- package/dist/widgets/shell/index.d.ts.map +1 -0
- package/dist/widgets/shell/index.js +3 -0
- package/dist/widgets/shell/index.js.map +1 -0
- package/dist/widgets/shell/useActionHandlers.d.ts +7 -0
- package/dist/widgets/shell/useActionHandlers.d.ts.map +1 -0
- package/dist/widgets/shell/useActionHandlers.js +123 -0
- package/dist/widgets/shell/useActionHandlers.js.map +1 -0
- package/dist/widgets/state/index.d.ts +3 -0
- package/dist/widgets/state/index.d.ts.map +1 -0
- package/dist/widgets/state/index.js +2 -0
- package/dist/widgets/state/index.js.map +1 -0
- package/dist/widgets/state/store.d.ts +20 -0
- package/dist/widgets/state/store.d.ts.map +1 -0
- package/dist/widgets/state/store.js +84 -0
- package/dist/widgets/state/store.js.map +1 -0
- package/dist/widgets/types.d.ts +28 -0
- package/dist/widgets/types.d.ts.map +1 -0
- package/dist/widgets/types.js +2 -0
- package/dist/widgets/types.js.map +1 -0
- package/dist/widgets/validation/index.d.ts +3 -0
- package/dist/widgets/validation/index.d.ts.map +1 -0
- package/dist/widgets/validation/index.js +2 -0
- package/dist/widgets/validation/index.js.map +1 -0
- package/dist/widgets/validation/validator.d.ts +7 -0
- package/dist/widgets/validation/validator.d.ts.map +1 -0
- package/dist/widgets/validation/validator.js +125 -0
- package/dist/widgets/validation/validator.js.map +1 -0
- package/index.html +12 -0
- package/package.json +58 -0
- package/src/App.tsx +44 -0
- package/src/__tests__/setup.ts +1 -0
- package/src/api/auth.ts +41 -0
- package/src/api/boot.ts +10 -0
- package/src/api/client.ts +26 -0
- package/src/api/paths.ts +3 -0
- package/src/api/token.ts +13 -0
- package/src/auth/LoginForm.tsx +67 -0
- package/src/auth/SessionExpired.tsx +24 -0
- package/src/auth/SetupForm.tsx +76 -0
- package/src/boot/BootGate.tsx +35 -0
- package/src/boot/BootProvider.tsx +28 -0
- package/src/boot/types.ts +9 -0
- package/src/boot/useBoot.ts +111 -0
- package/src/components/Icon.tsx +17 -0
- package/src/components/ui/accordion.tsx +82 -0
- package/src/components/ui/alert-dialog.tsx +180 -0
- package/src/components/ui/alert.tsx +76 -0
- package/src/components/ui/aspect-ratio.tsx +9 -0
- package/src/components/ui/avatar.tsx +94 -0
- package/src/components/ui/badge.tsx +45 -0
- package/src/components/ui/breadcrumb.tsx +104 -0
- package/src/components/ui/button-group.tsx +78 -0
- package/src/components/ui/button.tsx +65 -0
- package/src/components/ui/calendar.tsx +187 -0
- package/src/components/ui/card.tsx +85 -0
- package/src/components/ui/carousel.tsx +229 -0
- package/src/components/ui/chart.tsx +339 -0
- package/src/components/ui/checkbox.tsx +27 -0
- package/src/components/ui/collapsible.tsx +21 -0
- package/src/components/ui/combobox.tsx +275 -0
- package/src/components/ui/command.tsx +178 -0
- package/src/components/ui/context-menu.tsx +242 -0
- package/src/components/ui/dialog.tsx +146 -0
- package/src/components/ui/direction.tsx +20 -0
- package/src/components/ui/drawer.tsx +118 -0
- package/src/components/ui/dropdown-menu.tsx +247 -0
- package/src/components/ui/empty.tsx +94 -0
- package/src/components/ui/field.tsx +224 -0
- package/src/components/ui/hover-card.tsx +36 -0
- package/src/components/ui/input-group.tsx +142 -0
- package/src/components/ui/input-otp.tsx +86 -0
- package/src/components/ui/input.tsx +19 -0
- package/src/components/ui/item.tsx +182 -0
- package/src/components/ui/kbd.tsx +26 -0
- package/src/components/ui/label.tsx +19 -0
- package/src/components/ui/menubar.tsx +260 -0
- package/src/components/ui/native-select.tsx +55 -0
- package/src/components/ui/navigation-menu.tsx +160 -0
- package/src/components/ui/pagination.tsx +112 -0
- package/src/components/ui/popover.tsx +74 -0
- package/src/components/ui/progress.tsx +31 -0
- package/src/components/ui/radio-group.tsx +42 -0
- package/src/components/ui/resizable.tsx +42 -0
- package/src/components/ui/scroll-area.tsx +53 -0
- package/src/components/ui/select.tsx +185 -0
- package/src/components/ui/separator.tsx +26 -0
- package/src/components/ui/sheet.tsx +128 -0
- package/src/components/ui/sidebar.tsx +669 -0
- package/src/components/ui/skeleton.tsx +13 -0
- package/src/components/ui/slider.tsx +54 -0
- package/src/components/ui/sonner.tsx +43 -0
- package/src/components/ui/spinner.tsx +16 -0
- package/src/components/ui/switch.tsx +33 -0
- package/src/components/ui/table.tsx +87 -0
- package/src/components/ui/tabs.tsx +80 -0
- package/src/components/ui/textarea.tsx +18 -0
- package/src/components/ui/toggle-group.tsx +86 -0
- package/src/components/ui/toggle.tsx +44 -0
- package/src/components/ui/tooltip.tsx +53 -0
- package/src/context/MetaContext.tsx +22 -0
- package/src/context/ModuleContext.tsx +62 -0
- package/src/context/PermissionsContext.tsx +39 -0
- package/src/context/ShellProviders.tsx +33 -0
- package/src/context/UserContext.tsx +16 -0
- package/src/data/QueryProvider.tsx +7 -0
- package/src/data/queryClient.ts +18 -0
- package/src/data/useModelMeta.ts +17 -0
- package/src/data/useMutation.ts +60 -0
- package/src/data/useRecord.ts +29 -0
- package/src/data/useSource.ts +112 -0
- package/src/hooks/use-mobile.ts +19 -0
- package/src/index.css +260 -0
- package/src/index.ts +16 -0
- package/src/lib/utils.ts +6 -0
- package/src/main.tsx +17 -0
- package/src/router/NotFound.tsx +8 -0
- package/src/router/RouterProvider.tsx +7 -0
- package/src/router/buildRouteTree.tsx +63 -0
- package/src/router/createShellRouter.ts +9 -0
- package/src/router/hooks.ts +43 -0
- package/src/shell/CommandPalette.tsx +76 -0
- package/src/shell/ConfirmDialog.tsx +34 -0
- package/src/shell/ConfirmProvider.tsx +56 -0
- package/src/shell/DrawerContext.tsx +44 -0
- package/src/shell/HeaderActions.tsx +31 -0
- package/src/shell/ModuleSelectorPage.tsx +149 -0
- package/src/shell/PageOutlet.tsx +21 -0
- package/src/shell/ShellContext.tsx +45 -0
- package/src/shell/ShellDevTools.tsx +153 -0
- package/src/shell/ShellLayout.tsx +231 -0
- package/src/shell/Toast.tsx +58 -0
- package/src/shell/ToastProvider.tsx +60 -0
- package/src/shell/app-sidebar/AppSidebar.tsx +44 -0
- package/src/shell/app-sidebar/ModuleSwitcher.tsx +87 -0
- package/src/shell/app-sidebar/NavMain.tsx +64 -0
- package/src/shell/app-sidebar/NavUser.tsx +97 -0
- package/src/shell/app-sidebar/SearchMenu.tsx +22 -0
- package/src/shell/app-sidebar/index.ts +8 -0
- package/src/shell/app-sidebar/types.ts +38 -0
- package/src/shell/types.ts +6 -0
- package/src/shell/useBreadcrumbs.ts +42 -0
- package/src/studio/bridge.ts +125 -0
- package/src/studio/index.ts +3 -0
- package/src/studio/overlay.ts +47 -0
- package/src/studio/types.ts +32 -0
- package/src/studio/walker.ts +48 -0
- package/src/vite-env.d.ts +1 -0
- package/src/widgets/__tests__/action-edge-cases.test.ts +281 -0
- package/src/widgets/__tests__/action.test.ts +236 -0
- package/src/widgets/__tests__/attachment-widget.test.tsx +85 -0
- package/src/widgets/__tests__/attachments-widget.test.tsx +109 -0
- package/src/widgets/__tests__/binding.test.ts +76 -0
- package/src/widgets/__tests__/button-widget.test.tsx +145 -0
- package/src/widgets/__tests__/checkbox-widget.test.tsx +158 -0
- package/src/widgets/__tests__/code-widget.test.tsx +64 -0
- package/src/widgets/__tests__/computed-widget.test.tsx +62 -0
- package/src/widgets/__tests__/condition-edge-cases.test.ts +120 -0
- package/src/widgets/__tests__/condition.test.ts +221 -0
- package/src/widgets/__tests__/context.test.ts +99 -0
- package/src/widgets/__tests__/data-widget.test.tsx +204 -0
- package/src/widgets/__tests__/datepicker-widget.test.tsx +66 -0
- package/src/widgets/__tests__/datetime-widget.test.tsx +67 -0
- package/src/widgets/__tests__/drawer-widget.test.tsx +149 -0
- package/src/widgets/__tests__/dynamic-link-widget.test.tsx +52 -0
- package/src/widgets/__tests__/edge-cases.test.ts +232 -0
- package/src/widgets/__tests__/evaluator.test.ts +107 -0
- package/src/widgets/__tests__/functions.test.ts +147 -0
- package/src/widgets/__tests__/grid-widget.test.tsx +137 -0
- package/src/widgets/__tests__/hooks.test.tsx +249 -0
- package/src/widgets/__tests__/icon-widget.test.tsx +129 -0
- package/src/widgets/__tests__/input-widget.test.tsx +264 -0
- package/src/widgets/__tests__/integration.test.ts +116 -0
- package/src/widgets/__tests__/json-widget.test.tsx +70 -0
- package/src/widgets/__tests__/link-widget.test.tsx +92 -0
- package/src/widgets/__tests__/many-to-many-widget.test.tsx +93 -0
- package/src/widgets/__tests__/modal-widget.test.tsx +148 -0
- package/src/widgets/__tests__/money-widget.test.tsx +97 -0
- package/src/widgets/__tests__/parser.test.ts +171 -0
- package/src/widgets/__tests__/reactive-variables.test.ts +383 -0
- package/src/widgets/__tests__/renderer.test.tsx +300 -0
- package/src/widgets/__tests__/repeat-widget.test.tsx +229 -0
- package/src/widgets/__tests__/select-widget.test.tsx +231 -0
- package/src/widgets/__tests__/sequence-widget.test.tsx +58 -0
- package/src/widgets/__tests__/shell-integration.test.tsx +1343 -0
- package/src/widgets/__tests__/split-widget.test.tsx +133 -0
- package/src/widgets/__tests__/state-edge-cases.test.ts +118 -0
- package/src/widgets/__tests__/state.test.ts +106 -0
- package/src/widgets/__tests__/table-data-binding.test.tsx +482 -0
- package/src/widgets/__tests__/table-filter-popover.test.tsx +486 -0
- package/src/widgets/__tests__/table-search.test.tsx +305 -0
- package/src/widgets/__tests__/table-widget.test.tsx +509 -0
- package/src/widgets/__tests__/textarea-widget.test.tsx +105 -0
- package/src/widgets/__tests__/tracker-validator-edge-cases.test.ts +242 -0
- package/src/widgets/__tests__/tracker.test.ts +133 -0
- package/src/widgets/__tests__/tree-widget.test.tsx +97 -0
- package/src/widgets/__tests__/use-model-source.test.ts +67 -0
- package/src/widgets/__tests__/validator.test.ts +208 -0
- package/src/widgets/action/dispatcher.ts +334 -0
- package/src/widgets/action/index.ts +2 -0
- package/src/widgets/binding/index.ts +2 -0
- package/src/widgets/binding/resolver.ts +61 -0
- package/src/widgets/components/AttachmentWidget.tsx +111 -0
- package/src/widgets/components/AttachmentsWidget.tsx +121 -0
- package/src/widgets/components/BadgeWidget.tsx +35 -0
- package/src/widgets/components/ButtonWidget.tsx +43 -0
- package/src/widgets/components/CardWidget.tsx +68 -0
- package/src/widgets/components/CheckboxWidget.tsx +39 -0
- package/src/widgets/components/CodeWidget.tsx +44 -0
- package/src/widgets/components/ColumnWidget.tsx +22 -0
- package/src/widgets/components/ComputedWidget.tsx +49 -0
- package/src/widgets/components/DataWidget.tsx +189 -0
- package/src/widgets/components/DatePickerWidget.tsx +73 -0
- package/src/widgets/components/DatetimeWidget.tsx +160 -0
- package/src/widgets/components/DividerWidget.tsx +37 -0
- package/src/widgets/components/DrawerWidget.tsx +52 -0
- package/src/widgets/components/DynamicLinkWidget.tsx +130 -0
- package/src/widgets/components/GridWidget.tsx +134 -0
- package/src/widgets/components/GroupWidget.tsx +111 -0
- package/src/widgets/components/IconWidget.tsx +29 -0
- package/src/widgets/components/ImageWidget.tsx +28 -0
- package/src/widgets/components/InputWidget.tsx +70 -0
- package/src/widgets/components/JsonWidget.tsx +78 -0
- package/src/widgets/components/LinkWidget.tsx +99 -0
- package/src/widgets/components/ManyToManyWidget.tsx +125 -0
- package/src/widgets/components/ModalWidget.tsx +52 -0
- package/src/widgets/components/MoneyWidget.tsx +80 -0
- package/src/widgets/components/RepeatWidget.tsx +66 -0
- package/src/widgets/components/ScrollAreaWidget.tsx +40 -0
- package/src/widgets/components/SectionWidget.tsx +78 -0
- package/src/widgets/components/SelectWidget.tsx +63 -0
- package/src/widgets/components/SequenceWidget.tsx +32 -0
- package/src/widgets/components/SpacerWidget.tsx +29 -0
- package/src/widgets/components/SplitWidget.tsx +60 -0
- package/src/widgets/components/StackWidget.tsx +44 -0
- package/src/widgets/components/TableWidget.tsx +366 -0
- package/src/widgets/components/TextWidget.tsx +44 -0
- package/src/widgets/components/TextareaWidget.tsx +49 -0
- package/src/widgets/components/TreeWidget.tsx +109 -0
- package/src/widgets/components/index.ts +30 -0
- package/src/widgets/components/register.ts +93 -0
- package/src/widgets/components/table/CellRenderers.tsx +83 -0
- package/src/widgets/components/table/TablePagination.tsx +45 -0
- package/src/widgets/components/table/TableToolbar.tsx +285 -0
- package/src/widgets/components/table/filter-operators.ts +134 -0
- package/src/widgets/components/table/index.ts +11 -0
- package/src/widgets/condition/evaluator.ts +57 -0
- package/src/widgets/condition/index.ts +1 -0
- package/src/widgets/context/builder.ts +99 -0
- package/src/widgets/context/index.ts +8 -0
- package/src/widgets/context/types.ts +37 -0
- package/src/widgets/data/index.ts +5 -0
- package/src/widgets/data/useModelQuery.ts +116 -0
- package/src/widgets/data/useModelRecord.ts +37 -0
- package/src/widgets/expression/evaluator.ts +100 -0
- package/src/widgets/expression/functions.ts +131 -0
- package/src/widgets/expression/index.ts +13 -0
- package/src/widgets/expression/parser.ts +229 -0
- package/src/widgets/expression/types.ts +45 -0
- package/src/widgets/form/FormContext.ts +29 -0
- package/src/widgets/form/FormProvider.tsx +84 -0
- package/src/widgets/form/FormWidget.tsx +42 -0
- package/src/widgets/form/index.ts +4 -0
- package/src/widgets/form/useFormState.ts +127 -0
- package/src/widgets/form/useFormSubmit.ts +90 -0
- package/src/widgets/form/useFormValidation.ts +62 -0
- package/src/widgets/hooks/index.ts +8 -0
- package/src/widgets/hooks/useAction.ts +83 -0
- package/src/widgets/hooks/useBind.ts +34 -0
- package/src/widgets/hooks/useCondition.ts +21 -0
- package/src/widgets/hooks/useDataQuery.ts +48 -0
- package/src/widgets/hooks/useExpression.ts +14 -0
- package/src/widgets/hooks/usePageState.ts +21 -0
- package/src/widgets/hooks/useSurfaceContext.ts +11 -0
- package/src/widgets/hooks/useWidgetContext.ts +14 -0
- package/src/widgets/index.ts +80 -0
- package/src/widgets/lib/layout-props.ts +135 -0
- package/src/widgets/reactivity/index.ts +11 -0
- package/src/widgets/reactivity/tracker.ts +139 -0
- package/src/widgets/reactivity/variables.ts +213 -0
- package/src/widgets/registry.ts +41 -0
- package/src/widgets/renderer/SlotRenderer.tsx +47 -0
- package/src/widgets/renderer/WidgetRenderer.tsx +191 -0
- package/src/widgets/renderer/index.ts +4 -0
- package/src/widgets/shell/WidgetSlotRenderer.tsx +73 -0
- package/src/widgets/shell/index.ts +4 -0
- package/src/widgets/shell/useActionHandlers.ts +170 -0
- package/src/widgets/state/index.ts +2 -0
- package/src/widgets/state/store.ts +96 -0
- package/src/widgets/types.ts +28 -0
- package/src/widgets/validation/index.ts +2 -0
- package/src/widgets/validation/validator.ts +140 -0
- package/tsconfig.json +27 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/vite.config.ts +21 -0
- package/vitest.config.ts +16 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { useModelRecord } from '../data/useModelRecord.js';
|
|
4
|
+
import { useModelQuery } from '../data/useModelQuery.js';
|
|
5
|
+
import { useWidgetContext, WidgetContextProvider } from '../hooks/useWidgetContext.js';
|
|
6
|
+
import { WidgetRenderer } from '../renderer/WidgetRenderer.js';
|
|
7
|
+
export function DataWidget({ bind, props, on, childNodes }) {
|
|
8
|
+
const ctx = useWidgetContext();
|
|
9
|
+
const modelName = ctx.model;
|
|
10
|
+
const id = bind.id ?? undefined;
|
|
11
|
+
const pageSize = props.pageSize;
|
|
12
|
+
const placeholder = props.placeholder;
|
|
13
|
+
if (!modelName)
|
|
14
|
+
return null;
|
|
15
|
+
if (id) {
|
|
16
|
+
return (_jsx(DataRecordMode, { model: modelName, id: id, placeholder: placeholder, on: on, childNodes: childNodes }));
|
|
17
|
+
}
|
|
18
|
+
return (_jsx(DataListMode, { model: modelName, pageSize: pageSize, placeholder: placeholder, on: on, childNodes: childNodes }));
|
|
19
|
+
}
|
|
20
|
+
function DataRecordMode({ model, id, placeholder, on, childNodes, }) {
|
|
21
|
+
const parentCtx = useWidgetContext();
|
|
22
|
+
const { data, isLoading, error } = useModelRecord({ model, id });
|
|
23
|
+
React.useEffect(() => {
|
|
24
|
+
if (error)
|
|
25
|
+
on.error?.({ message: error.message });
|
|
26
|
+
}, [error, on]);
|
|
27
|
+
React.useEffect(() => {
|
|
28
|
+
if (data)
|
|
29
|
+
on.load?.({ record: data });
|
|
30
|
+
}, [data, on]);
|
|
31
|
+
if (isLoading) {
|
|
32
|
+
if (placeholder)
|
|
33
|
+
return (_jsx("div", { "data-rangka-widget": "data", "data-state": "loading", children: placeholder }));
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
if (!data) {
|
|
37
|
+
if (placeholder)
|
|
38
|
+
return (_jsx("div", { "data-rangka-widget": "data", "data-state": "empty", children: placeholder }));
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const ctx = {
|
|
42
|
+
record: data,
|
|
43
|
+
model,
|
|
44
|
+
mode: 'view',
|
|
45
|
+
parent: parentCtx,
|
|
46
|
+
};
|
|
47
|
+
return (_jsx(WidgetContextProvider, { value: ctx, children: _jsx("div", { "data-rangka-widget": "data", children: _jsx(DataChildren, { childNodes: childNodes }) }) }));
|
|
48
|
+
}
|
|
49
|
+
function DataListMode({ model, pageSize, placeholder, on, childNodes, }) {
|
|
50
|
+
const parentCtx = useWidgetContext();
|
|
51
|
+
const { data, isLoading, error } = useModelQuery({
|
|
52
|
+
model,
|
|
53
|
+
pageSize: pageSize ?? 20,
|
|
54
|
+
});
|
|
55
|
+
React.useEffect(() => {
|
|
56
|
+
if (error)
|
|
57
|
+
on.error?.({ message: error.message });
|
|
58
|
+
}, [error, on]);
|
|
59
|
+
React.useEffect(() => {
|
|
60
|
+
if (data && data.length > 0)
|
|
61
|
+
on.load?.({ records: data });
|
|
62
|
+
}, [data, on]);
|
|
63
|
+
if (isLoading) {
|
|
64
|
+
if (placeholder)
|
|
65
|
+
return (_jsx("div", { "data-rangka-widget": "data", "data-state": "loading", children: placeholder }));
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
if (!data || data.length === 0) {
|
|
69
|
+
if (placeholder)
|
|
70
|
+
return (_jsx("div", { "data-rangka-widget": "data", "data-state": "empty", children: placeholder }));
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
const ctx = {
|
|
74
|
+
record: data[0],
|
|
75
|
+
records: data,
|
|
76
|
+
model,
|
|
77
|
+
mode: 'view',
|
|
78
|
+
parent: parentCtx,
|
|
79
|
+
};
|
|
80
|
+
return (_jsx(WidgetContextProvider, { value: ctx, children: _jsx("div", { "data-rangka-widget": "data", children: _jsx(DataChildren, { childNodes: childNodes }) }) }));
|
|
81
|
+
}
|
|
82
|
+
function DataChildren({ childNodes }) {
|
|
83
|
+
if (!childNodes || childNodes.length === 0)
|
|
84
|
+
return null;
|
|
85
|
+
return (_jsx(_Fragment, { children: childNodes.map((child, i) => (_jsx(WidgetRenderer, { node: child }, child.id ?? i))) }));
|
|
86
|
+
}
|
|
87
|
+
DataWidget.widgetMeta = {
|
|
88
|
+
name: 'data',
|
|
89
|
+
label: 'Data',
|
|
90
|
+
category: 'data',
|
|
91
|
+
schema: {
|
|
92
|
+
placeholder: { type: 'string' },
|
|
93
|
+
pageSize: { type: 'number' },
|
|
94
|
+
},
|
|
95
|
+
binding: 'model',
|
|
96
|
+
triggers: ['load', 'error'],
|
|
97
|
+
container: true,
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=DataWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataWidget.js","sourceRoot":"","sources":["../../../src/widgets/components/DataWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { WidgetProps } from '../types.js';
|
|
3
|
+
export declare function DatePickerWidget({ props, bind, on }: WidgetProps): React.JSX.Element;
|
|
4
|
+
export declare namespace DatePickerWidget {
|
|
5
|
+
var widgetMeta: {
|
|
6
|
+
name: string;
|
|
7
|
+
label: string;
|
|
8
|
+
category: "input";
|
|
9
|
+
schema: {
|
|
10
|
+
label: {
|
|
11
|
+
type: "string";
|
|
12
|
+
};
|
|
13
|
+
disabled: {
|
|
14
|
+
type: "boolean";
|
|
15
|
+
default: boolean;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
binding: "field";
|
|
19
|
+
triggers: string[];
|
|
20
|
+
container: boolean;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=DatePickerWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePickerWidget.d.ts","sourceRoot":"","sources":["../../../src/widgets/components/DatePickerWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAOxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,WAAW,qBAkDhE;yBAlDe,gBAAgB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Popover, PopoverTrigger, PopoverContent } from '@/components/ui/popover';
|
|
4
|
+
import { Button } from '@/components/ui/button';
|
|
5
|
+
import { Calendar } from '@/components/ui/calendar';
|
|
6
|
+
import { Field, FieldLabel } from '@/components/ui/field';
|
|
7
|
+
import { CalendarIcon } from 'lucide-react';
|
|
8
|
+
import { format, parseISO } from 'date-fns';
|
|
9
|
+
export function DatePickerWidget({ props, bind, on }) {
|
|
10
|
+
const label = props.label ?? bind.meta?.label ?? '';
|
|
11
|
+
const disabled = props.disabled ?? bind.meta?.readOnly ?? false;
|
|
12
|
+
const [open, setOpen] = useState(false);
|
|
13
|
+
const error = bind.error;
|
|
14
|
+
const rawValue = bind.value;
|
|
15
|
+
const dateValue = rawValue ? parseISO(rawValue) : undefined;
|
|
16
|
+
const handleSelect = (day) => {
|
|
17
|
+
if (day) {
|
|
18
|
+
const iso = format(day, 'yyyy-MM-dd');
|
|
19
|
+
bind.setValue?.(iso);
|
|
20
|
+
on.change?.(iso);
|
|
21
|
+
}
|
|
22
|
+
setOpen(false);
|
|
23
|
+
};
|
|
24
|
+
return (_jsxs(Field, { children: [label && _jsx(FieldLabel, { children: label }), _jsxs(Popover, { open: open, onOpenChange: setOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", disabled: disabled, className: "w-full justify-start text-left font-normal h-8 text-xs", children: [_jsx(CalendarIcon, { className: "mr-2 size-3.5 text-muted-foreground" }), dateValue ? (format(dateValue, 'PPP')) : (_jsx("span", { className: "text-muted-foreground", children: "Pick a date" }))] }) }), _jsx(PopoverContent, { className: "w-auto p-0", align: "start", children: _jsx(Calendar, { mode: "single", selected: dateValue, onSelect: handleSelect, captionLayout: "dropdown", startMonth: new Date(1900, 0), endMonth: new Date(2100, 11) }) })] }), error && _jsx("p", { className: "text-xs text-destructive mt-1", children: error })] }));
|
|
25
|
+
}
|
|
26
|
+
DatePickerWidget.widgetMeta = {
|
|
27
|
+
name: 'datepicker',
|
|
28
|
+
label: 'Date Picker',
|
|
29
|
+
category: 'input',
|
|
30
|
+
schema: {
|
|
31
|
+
label: { type: 'string' },
|
|
32
|
+
disabled: { type: 'boolean', default: false },
|
|
33
|
+
},
|
|
34
|
+
binding: 'field',
|
|
35
|
+
triggers: ['change'],
|
|
36
|
+
container: false,
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=DatePickerWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePickerWidget.js","sourceRoot":"","sources":["../../../src/widgets/components/DatePickerWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { WidgetProps } from '../types.js';
|
|
3
|
+
export declare function DatetimeWidget({ props, bind, on }: WidgetProps): React.JSX.Element;
|
|
4
|
+
export declare namespace DatetimeWidget {
|
|
5
|
+
var widgetMeta: {
|
|
6
|
+
name: string;
|
|
7
|
+
label: string;
|
|
8
|
+
category: "input";
|
|
9
|
+
schema: {
|
|
10
|
+
label: {
|
|
11
|
+
type: "string";
|
|
12
|
+
};
|
|
13
|
+
disabled: {
|
|
14
|
+
type: "boolean";
|
|
15
|
+
default: boolean;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
binding: "field";
|
|
19
|
+
triggers: string[];
|
|
20
|
+
container: boolean;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=DatetimeWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatetimeWidget.d.ts","sourceRoot":"","sources":["../../../src/widgets/components/DatetimeWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAcxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM/C,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,WAAW,qBA8H9D;yBA9He,cAAc"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Popover, PopoverTrigger, PopoverContent } from '@/components/ui/popover';
|
|
4
|
+
import { Button } from '@/components/ui/button';
|
|
5
|
+
import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, } from '@/components/ui/select';
|
|
6
|
+
import { Calendar } from '@/components/ui/calendar';
|
|
7
|
+
import { Field, FieldLabel } from '@/components/ui/field';
|
|
8
|
+
import { CalendarIcon } from 'lucide-react';
|
|
9
|
+
import { format, parseISO, setHours, setMinutes } from 'date-fns';
|
|
10
|
+
const HOURS = Array.from({ length: 12 }, (_, i) => (i === 0 ? 12 : i).toString());
|
|
11
|
+
const MINUTES = Array.from({ length: 60 }, (_, i) => i.toString().padStart(2, '0'));
|
|
12
|
+
const PERIODS = ['AM', 'PM'];
|
|
13
|
+
export function DatetimeWidget({ props, bind, on }) {
|
|
14
|
+
const label = props.label ?? bind.meta?.label ?? '';
|
|
15
|
+
const disabled = props.disabled ?? bind.meta?.readOnly ?? false;
|
|
16
|
+
const [open, setOpen] = useState(false);
|
|
17
|
+
const rawValue = bind.value;
|
|
18
|
+
const dateValue = rawValue ? parseISO(rawValue) : undefined;
|
|
19
|
+
const hours = dateValue ? dateValue.getHours() : 0;
|
|
20
|
+
const minutes = dateValue ? dateValue.getMinutes() : 0;
|
|
21
|
+
const period = hours >= 12 ? 'PM' : 'AM';
|
|
22
|
+
const displayHour = hours % 12 === 0 ? 12 : hours % 12;
|
|
23
|
+
const updateValue = (day, h, m) => {
|
|
24
|
+
if (!day)
|
|
25
|
+
return;
|
|
26
|
+
let d = setHours(day, h);
|
|
27
|
+
d = setMinutes(d, m);
|
|
28
|
+
const iso = d.toISOString();
|
|
29
|
+
bind.setValue?.(iso);
|
|
30
|
+
on.change?.(iso);
|
|
31
|
+
};
|
|
32
|
+
const handleSelect = (day) => {
|
|
33
|
+
if (day) {
|
|
34
|
+
updateValue(day, hours, minutes);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
const handleHourChange = (value) => {
|
|
38
|
+
const h12 = parseInt(value);
|
|
39
|
+
const h24 = period === 'AM' ? (h12 === 12 ? 0 : h12) : h12 === 12 ? 12 : h12 + 12;
|
|
40
|
+
const day = dateValue ?? new Date();
|
|
41
|
+
updateValue(day, h24, minutes);
|
|
42
|
+
};
|
|
43
|
+
const handleMinuteChange = (value) => {
|
|
44
|
+
const m = parseInt(value);
|
|
45
|
+
const day = dateValue ?? new Date();
|
|
46
|
+
updateValue(day, hours, m);
|
|
47
|
+
};
|
|
48
|
+
const handlePeriodChange = (value) => {
|
|
49
|
+
const h12 = displayHour;
|
|
50
|
+
const h24 = value === 'AM' ? (h12 === 12 ? 0 : h12) : h12 === 12 ? 12 : h12 + 12;
|
|
51
|
+
const day = dateValue ?? new Date();
|
|
52
|
+
updateValue(day, h24, minutes);
|
|
53
|
+
};
|
|
54
|
+
return (_jsxs(Field, { children: [label && _jsx(FieldLabel, { children: label }), _jsxs(Popover, { open: open, onOpenChange: setOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", disabled: disabled, className: "w-full justify-start text-left font-normal h-8 text-xs", children: [_jsx(CalendarIcon, { className: "mr-2 size-3.5 text-muted-foreground" }), dateValue ? (format(dateValue, 'PPP hh:mm a')) : (_jsx("span", { className: "text-muted-foreground", children: "Pick date and time" }))] }) }), _jsxs(PopoverContent, { className: "w-auto p-0", align: "start", children: [_jsx(Calendar, { mode: "single", selected: dateValue, onSelect: handleSelect, captionLayout: "dropdown", startMonth: new Date(1900, 0), endMonth: new Date(2100, 11) }), _jsxs("div", { className: "flex items-center gap-2 border-t border-border px-3 py-2", children: [_jsxs(Select, { value: displayHour.toString(), onValueChange: handleHourChange, disabled: disabled, children: [_jsx(SelectTrigger, { className: "w-16 h-7 text-xs", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { position: "popper", className: "max-h-48", children: HOURS.map((h) => (_jsx(SelectItem, { value: h, className: "text-xs", children: h }, h))) })] }), _jsx("span", { className: "text-xs text-muted-foreground", children: ":" }), _jsxs(Select, { value: minutes.toString().padStart(2, '0'), onValueChange: handleMinuteChange, disabled: disabled, children: [_jsx(SelectTrigger, { className: "w-16 h-7 text-xs", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { position: "popper", className: "max-h-48", children: MINUTES.map((m) => (_jsx(SelectItem, { value: m, className: "text-xs", children: m }, m))) })] }), _jsxs(Select, { value: period, onValueChange: handlePeriodChange, disabled: disabled, children: [_jsx(SelectTrigger, { className: "w-16 h-7 text-xs", children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { children: PERIODS.map((p) => (_jsx(SelectItem, { value: p, className: "text-xs", children: p }, p))) })] })] })] })] })] }));
|
|
55
|
+
}
|
|
56
|
+
DatetimeWidget.widgetMeta = {
|
|
57
|
+
name: 'datetime',
|
|
58
|
+
label: 'Date & Time',
|
|
59
|
+
category: 'input',
|
|
60
|
+
schema: {
|
|
61
|
+
label: { type: 'string' },
|
|
62
|
+
disabled: { type: 'boolean', default: false },
|
|
63
|
+
},
|
|
64
|
+
binding: 'field',
|
|
65
|
+
triggers: ['change'],
|
|
66
|
+
container: false,
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=DatetimeWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatetimeWidget.js","sourceRoot":"","sources":["../../../src/widgets/components/DatetimeWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { WidgetProps } from '../types.js';
|
|
3
|
+
export declare function DividerWidget({ props }: WidgetProps): React.JSX.Element;
|
|
4
|
+
export declare namespace DividerWidget {
|
|
5
|
+
var widgetMeta: {
|
|
6
|
+
name: string;
|
|
7
|
+
label: string;
|
|
8
|
+
category: "layout";
|
|
9
|
+
schema: {
|
|
10
|
+
margin: {
|
|
11
|
+
type: "enum";
|
|
12
|
+
options: string[];
|
|
13
|
+
};
|
|
14
|
+
marginY: {
|
|
15
|
+
type: "enum";
|
|
16
|
+
options: string[];
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
binding: "none";
|
|
20
|
+
triggers: never[];
|
|
21
|
+
container: boolean;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=DividerWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DividerWidget.d.ts","sourceRoot":"","sources":["../../../src/widgets/components/DividerWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAU/C,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,qBAKnD;yBALe,aAAa"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Separator } from '@/components/ui/separator';
|
|
3
|
+
const spacingMap = {
|
|
4
|
+
none: 'my-0',
|
|
5
|
+
sm: 'my-2',
|
|
6
|
+
md: 'my-4',
|
|
7
|
+
lg: 'my-6',
|
|
8
|
+
xl: 'my-8',
|
|
9
|
+
};
|
|
10
|
+
export function DividerWidget({ props }) {
|
|
11
|
+
const margin = props.margin ?? props.marginY ?? 'md';
|
|
12
|
+
const className = spacingMap[margin] ?? spacingMap.md;
|
|
13
|
+
return _jsx(Separator, { className: className });
|
|
14
|
+
}
|
|
15
|
+
DividerWidget.widgetMeta = {
|
|
16
|
+
name: 'divider',
|
|
17
|
+
label: 'Divider',
|
|
18
|
+
category: 'layout',
|
|
19
|
+
schema: {
|
|
20
|
+
margin: {
|
|
21
|
+
type: 'enum',
|
|
22
|
+
options: ['none', 'sm', 'md', 'lg', 'xl'],
|
|
23
|
+
},
|
|
24
|
+
marginY: {
|
|
25
|
+
type: 'enum',
|
|
26
|
+
options: ['none', 'sm', 'md', 'lg', 'xl'],
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
binding: 'none',
|
|
30
|
+
triggers: [],
|
|
31
|
+
container: false,
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=DividerWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DividerWidget.js","sourceRoot":"","sources":["../../../src/widgets/components/DividerWidget.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGtD,MAAM,UAAU,GAA2B;IACzC,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;CACX,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAe;IAClD,MAAM,MAAM,GAAI,KAAK,CAAC,MAAiB,IAAK,KAAK,CAAC,OAAkB,IAAI,IAAI,CAAC;IAC7E,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC;IAEtD,OAAO,KAAC,SAAS,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC;AAC7C,CAAC;AAED,aAAa,CAAC,UAAU,GAAG;IACzB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,QAAiB;IAC3B,MAAM,EAAE;QACN,MAAM,EAAE;YACN,IAAI,EAAE,MAAe;YACrB,OAAO,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;SAC1C;QACD,OAAO,EAAE;YACP,IAAI,EAAE,MAAe;YACrB,OAAO,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;SAC1C;KACF;IACD,OAAO,EAAE,MAAe;IACxB,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,KAAK;CACjB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { WidgetProps } from '../types.js';
|
|
3
|
+
export declare function DrawerWidget({ props, children }: WidgetProps): React.JSX.Element;
|
|
4
|
+
export declare namespace DrawerWidget {
|
|
5
|
+
var widgetMeta: {
|
|
6
|
+
name: string;
|
|
7
|
+
label: string;
|
|
8
|
+
category: "layout";
|
|
9
|
+
schema: {
|
|
10
|
+
width: {
|
|
11
|
+
type: "enum";
|
|
12
|
+
options: string[];
|
|
13
|
+
default: string;
|
|
14
|
+
};
|
|
15
|
+
title: {
|
|
16
|
+
type: "string";
|
|
17
|
+
};
|
|
18
|
+
closable: {
|
|
19
|
+
type: "boolean";
|
|
20
|
+
default: boolean;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
binding: "none";
|
|
24
|
+
triggers: never[];
|
|
25
|
+
container: boolean;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=DrawerWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerWidget.d.ts","sourceRoot":"","sources":["../../../src/widgets/components/DrawerWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAS/C,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,WAAW,qBA0B5D;yBA1Be,YAAY"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Sheet, SheetContent, SheetHeader, SheetTitle } from '@/components/ui/sheet';
|
|
3
|
+
import { usePageState } from '../hooks/usePageState.js';
|
|
4
|
+
const sizeMap = {
|
|
5
|
+
sm: 'w-80',
|
|
6
|
+
md: 'w-[28rem]',
|
|
7
|
+
lg: 'w-[40rem]',
|
|
8
|
+
};
|
|
9
|
+
export function DrawerWidget({ props, children }) {
|
|
10
|
+
const title = props.title ?? '';
|
|
11
|
+
const size = props.width ?? 'md';
|
|
12
|
+
const closable = props.closable ?? true;
|
|
13
|
+
const visibleField = props._visibleField;
|
|
14
|
+
const state = usePageState();
|
|
15
|
+
const handleOpenChange = (open) => {
|
|
16
|
+
if (!open && closable && visibleField && visibleField.startsWith('$state.')) {
|
|
17
|
+
const key = visibleField.slice(7);
|
|
18
|
+
state.set(key, false);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
return (_jsx(Sheet, { open: true, onOpenChange: handleOpenChange, children: _jsxs(SheetContent, { className: sizeMap[size], side: "right", children: [title && (_jsx(SheetHeader, { children: _jsx(SheetTitle, { children: title }) })), _jsx("div", { className: "flex-1 overflow-y-auto p-4", children: children })] }) }));
|
|
22
|
+
}
|
|
23
|
+
DrawerWidget.widgetMeta = {
|
|
24
|
+
name: 'drawer',
|
|
25
|
+
label: 'Drawer',
|
|
26
|
+
category: 'layout',
|
|
27
|
+
schema: {
|
|
28
|
+
width: { type: 'enum', options: ['sm', 'md', 'lg'], default: 'md' },
|
|
29
|
+
title: { type: 'string' },
|
|
30
|
+
closable: { type: 'boolean', default: true },
|
|
31
|
+
},
|
|
32
|
+
binding: 'none',
|
|
33
|
+
triggers: [],
|
|
34
|
+
container: true,
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=DrawerWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerWidget.js","sourceRoot":"","sources":["../../../src/widgets/components/DrawerWidget.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAErF,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,OAAO,GAAG;IACd,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,WAAW;CAChB,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAe;IAC3D,MAAM,KAAK,GAAI,KAAK,CAAC,KAAgB,IAAI,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAI,KAAK,CAAC,KAA4B,IAAI,IAAI,CAAC;IACzD,MAAM,QAAQ,GAAI,KAAK,CAAC,QAAoB,IAAI,IAAI,CAAC;IACrD,MAAM,YAAY,GAAG,KAAK,CAAC,aAAmC,CAAC;IAC/D,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;IAE7B,MAAM,gBAAgB,GAAG,CAAC,IAAa,EAAE,EAAE;QACzC,IAAI,CAAC,IAAI,IAAI,QAAQ,IAAI,YAAY,IAAI,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5E,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,KAAK,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,YAC/C,MAAC,YAAY,IAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAC,OAAO,aACjD,KAAK,IAAI,CACR,KAAC,WAAW,cACV,KAAC,UAAU,cAAE,KAAK,GAAc,GACpB,CACf,EACD,cAAK,SAAS,EAAC,4BAA4B,YAAE,QAAQ,GAAO,IAC/C,GACT,CACT,CAAC;AACJ,CAAC;AAED,YAAY,CAAC,UAAU,GAAG;IACxB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,QAAiB;IAC3B,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;QAC5E,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;QAClC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAkB,EAAE,OAAO,EAAE,IAAI,EAAE;KACtD;IACD,OAAO,EAAE,MAAe;IACxB,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,IAAI;CAChB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { WidgetProps } from '../types.js';
|
|
3
|
+
export declare function DynamicLinkWidget({ props, bind, on, context }: WidgetProps): React.JSX.Element;
|
|
4
|
+
export declare namespace DynamicLinkWidget {
|
|
5
|
+
var widgetMeta: {
|
|
6
|
+
name: string;
|
|
7
|
+
label: string;
|
|
8
|
+
category: "input";
|
|
9
|
+
schema: {
|
|
10
|
+
label: {
|
|
11
|
+
type: "string";
|
|
12
|
+
};
|
|
13
|
+
modelField: {
|
|
14
|
+
type: "string";
|
|
15
|
+
};
|
|
16
|
+
models: {
|
|
17
|
+
type: "array";
|
|
18
|
+
};
|
|
19
|
+
disabled: {
|
|
20
|
+
type: "boolean";
|
|
21
|
+
default: boolean;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
binding: "field";
|
|
25
|
+
triggers: string[];
|
|
26
|
+
container: boolean;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=DynamicLinkWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamicLinkWidget.d.ts","sourceRoot":"","sources":["../../../src/widgets/components/DynamicLinkWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAoBxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,WAAW,qBA4F1E;yBA5Fe,iBAAiB"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Popover, PopoverTrigger, PopoverContent } from '@/components/ui/popover';
|
|
4
|
+
import { Command, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, } from '@/components/ui/command';
|
|
5
|
+
import { Button } from '@/components/ui/button';
|
|
6
|
+
import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, } from '@/components/ui/select';
|
|
7
|
+
import { Field, FieldLabel } from '@/components/ui/field';
|
|
8
|
+
import { cn } from '@/lib/utils';
|
|
9
|
+
export function DynamicLinkWidget({ props, bind, on, context }) {
|
|
10
|
+
const label = props.label ?? bind.meta?.label ?? '';
|
|
11
|
+
const disabled = props.disabled ?? bind.meta?.readOnly ?? false;
|
|
12
|
+
const models = props.models ?? [];
|
|
13
|
+
const [open, setOpen] = useState(false);
|
|
14
|
+
const [search, setSearch] = useState('');
|
|
15
|
+
const options = (bind.meta?.options ?? []);
|
|
16
|
+
const currentValue = bind.value;
|
|
17
|
+
const selectedOption = options.find((o) => o.value === currentValue);
|
|
18
|
+
// The model type field name from the dynamicLink config
|
|
19
|
+
const modelField = props.modelField ?? '';
|
|
20
|
+
const currentModel = context.record[modelField] ?? '';
|
|
21
|
+
const handleModelChange = (model) => {
|
|
22
|
+
// Update the model type field on the record
|
|
23
|
+
on.change?.({ model, value: null });
|
|
24
|
+
};
|
|
25
|
+
const handleRecordSelect = (value) => {
|
|
26
|
+
bind.setValue?.(value);
|
|
27
|
+
on.change?.({ model: currentModel, value });
|
|
28
|
+
setOpen(false);
|
|
29
|
+
setSearch('');
|
|
30
|
+
};
|
|
31
|
+
const handleSearchChange = (value) => {
|
|
32
|
+
setSearch(value);
|
|
33
|
+
on.search?.(value);
|
|
34
|
+
};
|
|
35
|
+
return (_jsxs(Field, { children: [label && _jsx(FieldLabel, { children: label }), _jsxs("div", { className: "flex gap-2", children: [_jsxs(Select, { value: currentModel, onValueChange: handleModelChange, disabled: disabled, children: [_jsx(SelectTrigger, { className: "w-40 h-7 text-xs", children: _jsx(SelectValue, { placeholder: "Model..." }) }), _jsx(SelectContent, { children: models.map((m) => (_jsx(SelectItem, { value: m, children: m }, m))) })] }), _jsxs(Popover, { open: open, onOpenChange: setOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(Button, { variant: "outline", role: "combobox", "aria-expanded": open, disabled: disabled || !currentModel, className: "flex-1 justify-between font-normal h-7 text-xs", children: selectedOption ? (selectedOption.label) : (_jsx("span", { className: "text-muted-foreground", children: "Select record..." })) }) }), _jsx(PopoverContent, { className: "w-[var(--radix-popover-trigger-width)] p-0", align: "start", children: _jsxs(Command, { shouldFilter: false, children: [_jsx(CommandInput, { placeholder: "Search...", value: search, onValueChange: handleSearchChange }), _jsxs(CommandList, { children: [_jsx(CommandEmpty, { children: "No results found." }), _jsx(CommandGroup, { children: options.map((opt) => (_jsx(CommandItem, { value: opt.value, onSelect: () => handleRecordSelect(opt.value), className: cn(opt.value === currentValue && 'bg-accent'), children: opt.label }, opt.value))) })] })] }) })] })] })] }));
|
|
36
|
+
}
|
|
37
|
+
DynamicLinkWidget.widgetMeta = {
|
|
38
|
+
name: 'dynamic-link',
|
|
39
|
+
label: 'Dynamic Link',
|
|
40
|
+
category: 'input',
|
|
41
|
+
schema: {
|
|
42
|
+
label: { type: 'string' },
|
|
43
|
+
modelField: { type: 'string' },
|
|
44
|
+
models: { type: 'array' },
|
|
45
|
+
disabled: { type: 'boolean', default: false },
|
|
46
|
+
},
|
|
47
|
+
binding: 'field',
|
|
48
|
+
triggers: ['change', 'search'],
|
|
49
|
+
container: false,
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=DynamicLinkWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamicLinkWidget.js","sourceRoot":"","sources":["../../../src/widgets/components/DynamicLinkWidget.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EACL,OAAO,EACP,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAGjC,MAAM,UAAU,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAe;IACzE,MAAM,KAAK,GAAI,KAAK,CAAC,KAAgB,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;IAChE,MAAM,QAAQ,GAAI,KAAK,CAAC,QAAoB,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,KAAK,CAAC;IAC7E,MAAM,MAAM,GAAI,KAAK,CAAC,MAAmB,IAAI,EAAE,CAAC;IAChD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEzC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAuC,CAAC;IACjF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAkC,CAAC;IAC7D,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC;IAErE,wDAAwD;IACxD,MAAM,UAAU,GAAI,KAAK,CAAC,UAAqB,IAAI,EAAE,CAAC;IACtD,MAAM,YAAY,GAAI,OAAO,CAAC,MAAM,CAAC,UAAU,CAAY,IAAI,EAAE,CAAC;IAElE,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,EAAE;QAC1C,4CAA4C;QAC5C,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;QAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QACvB,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,CAAC;QACf,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;QAC3C,SAAS,CAAC,KAAK,CAAC,CAAC;QACjB,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,KAAK,eACH,KAAK,IAAI,KAAC,UAAU,cAAE,KAAK,GAAc,EAC1C,eAAK,SAAS,EAAC,YAAY,aACzB,MAAC,MAAM,IAAC,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,aAC/E,KAAC,aAAa,IAAC,SAAS,EAAC,kBAAkB,YACzC,KAAC,WAAW,IAAC,WAAW,EAAC,UAAU,GAAG,GACxB,EAChB,KAAC,aAAa,cACX,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjB,KAAC,UAAU,IAAS,KAAK,EAAE,CAAC,YACzB,CAAC,IADa,CAAC,CAEL,CACd,CAAC,GACY,IACT,EACT,MAAC,OAAO,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,aACxC,KAAC,cAAc,IAAC,OAAO,kBACrB,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,UAAU,mBACA,IAAI,EACnB,QAAQ,EAAE,QAAQ,IAAI,CAAC,YAAY,EACnC,SAAS,EAAC,gDAAgD,YAEzD,cAAc,CAAC,CAAC,CAAC,CAChB,cAAc,CAAC,KAAK,CACrB,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,uBAAuB,iCAAwB,CAChE,GACM,GACM,EACjB,KAAC,cAAc,IAAC,SAAS,EAAC,4CAA4C,EAAC,KAAK,EAAC,OAAO,YAClF,MAAC,OAAO,IAAC,YAAY,EAAE,KAAK,aAC1B,KAAC,YAAY,IACX,WAAW,EAAC,WAAW,EACvB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,kBAAkB,GACjC,EACF,MAAC,WAAW,eACV,KAAC,YAAY,oCAAiC,EAC9C,KAAC,YAAY,cACV,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACpB,KAAC,WAAW,IAEV,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAC7C,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,YAAY,IAAI,WAAW,CAAC,YAEvD,GAAG,CAAC,KAAK,IALL,GAAG,CAAC,KAAK,CAMF,CACf,CAAC,GACW,IACH,IACN,GACK,IACT,IACN,IACA,CACT,CAAC;AACJ,CAAC;AAED,iBAAiB,CAAC,UAAU,GAAG;IAC7B,IAAI,EAAE,cAAc;IACpB,KAAK,EAAE,cAAc;IACrB,QAAQ,EAAE,OAAgB;IAC1B,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;QAClC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;QACvC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAgB,EAAE;QAClC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAkB,EAAE,OAAO,EAAE,KAAK,EAAE;KACvD;IACD,OAAO,EAAE,OAAgB;IACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC9B,SAAS,EAAE,KAAK;CACjB,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { WidgetProps } from '../types.js';
|
|
3
|
+
export declare function GridWidget({ props, children }: WidgetProps): React.JSX.Element;
|
|
4
|
+
export declare namespace GridWidget {
|
|
5
|
+
var widgetMeta: {
|
|
6
|
+
name: string;
|
|
7
|
+
label: string;
|
|
8
|
+
category: "layout";
|
|
9
|
+
schema: {
|
|
10
|
+
columns: {
|
|
11
|
+
type: "number";
|
|
12
|
+
default: number;
|
|
13
|
+
};
|
|
14
|
+
gap: {
|
|
15
|
+
type: "enum";
|
|
16
|
+
options: string[];
|
|
17
|
+
default: string;
|
|
18
|
+
};
|
|
19
|
+
rowGap: {
|
|
20
|
+
type: "enum";
|
|
21
|
+
options: string[];
|
|
22
|
+
};
|
|
23
|
+
colGap: {
|
|
24
|
+
type: "enum";
|
|
25
|
+
options: string[];
|
|
26
|
+
};
|
|
27
|
+
autoFlow: {
|
|
28
|
+
type: "enum";
|
|
29
|
+
options: string[];
|
|
30
|
+
default: string;
|
|
31
|
+
};
|
|
32
|
+
responsive: {
|
|
33
|
+
type: "object";
|
|
34
|
+
};
|
|
35
|
+
padding: {
|
|
36
|
+
type: "enum";
|
|
37
|
+
options: string[];
|
|
38
|
+
};
|
|
39
|
+
paddingX: {
|
|
40
|
+
type: "enum";
|
|
41
|
+
options: string[];
|
|
42
|
+
};
|
|
43
|
+
paddingY: {
|
|
44
|
+
type: "enum";
|
|
45
|
+
options: string[];
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
binding: "none";
|
|
49
|
+
triggers: never[];
|
|
50
|
+
container: boolean;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=GridWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridWidget.d.ts","sourceRoot":"","sources":["../../../src/widgets/components/GridWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AA+D/C,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,WAAW,qBA2C1D;yBA3Ce,UAAU"}
|