@kestack/web-platform 0.0.0-stage → 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/LICENSE +21 -0
- package/README.md +523 -2
- package/dist/_virtual/_rolldown/runtime.js +27 -0
- package/dist/app/apis/apis.d.ts +55 -0
- package/dist/app/apis/apis.d.ts.map +1 -0
- package/dist/app/apis/apis.js +43 -0
- package/dist/app/apis/apis.js.map +1 -0
- package/dist/app/apis/index.d.ts +2 -0
- package/dist/app/apis/index.js +2 -0
- package/dist/app/app.d.ts +77 -0
- package/dist/app/app.d.ts.map +1 -0
- package/dist/app/app.js +118 -0
- package/dist/app/app.js.map +1 -0
- package/dist/app/assemble/assemble.d.ts +167 -0
- package/dist/app/assemble/assemble.d.ts.map +1 -0
- package/dist/app/assemble/assemble.js +186 -0
- package/dist/app/assemble/assemble.js.map +1 -0
- package/dist/app/assemble/index.d.ts +2 -0
- package/dist/app/assemble/index.js +2 -0
- package/dist/app/assemble/public.d.ts +18 -0
- package/dist/app/assemble/public.d.ts.map +1 -0
- package/dist/app/assemble/public.js +41 -0
- package/dist/app/assemble/public.js.map +1 -0
- package/dist/app/gate/domain/check.d.ts +33 -0
- package/dist/app/gate/domain/check.d.ts.map +1 -0
- package/dist/app/gate/domain/check.js +50 -0
- package/dist/app/gate/domain/check.js.map +1 -0
- package/dist/app/gate/domain/index.d.ts +4 -0
- package/dist/app/gate/domain/index.js +3 -0
- package/dist/app/gate/domain/machine.d.ts +180 -0
- package/dist/app/gate/domain/machine.d.ts.map +1 -0
- package/dist/app/gate/domain/machine.js +383 -0
- package/dist/app/gate/domain/machine.js.map +1 -0
- package/dist/app/gate/domain/services.d.ts +37 -0
- package/dist/app/gate/domain/services.d.ts.map +1 -0
- package/dist/app/gate/domain/services.js +13 -0
- package/dist/app/gate/domain/services.js.map +1 -0
- package/dist/app/gate/domain/types.d.ts +44 -0
- package/dist/app/gate/domain/types.d.ts.map +1 -0
- package/dist/app/gate/domain/types.js +0 -0
- package/dist/app/gate/gate.d.ts +86 -0
- package/dist/app/gate/gate.d.ts.map +1 -0
- package/dist/app/gate/gate.js +351 -0
- package/dist/app/gate/gate.js.map +1 -0
- package/dist/app/gate/index.d.ts +5 -0
- package/dist/app/gate/index.js +3 -0
- package/dist/app/gate/memory.d.ts +97 -0
- package/dist/app/gate/memory.d.ts.map +1 -0
- package/dist/app/gate/memory.js +48 -0
- package/dist/app/gate/memory.js.map +1 -0
- package/dist/app/gate/react.d.ts +74 -0
- package/dist/app/gate/react.d.ts.map +1 -0
- package/dist/app/gate/react.js +107 -0
- package/dist/app/gate/react.js.map +1 -0
- package/dist/app/host/host.d.ts +90 -0
- package/dist/app/host/host.d.ts.map +1 -0
- package/dist/app/host/host.js +75 -0
- package/dist/app/host/host.js.map +1 -0
- package/dist/app/host/index.d.ts +2 -0
- package/dist/app/host/index.js +2 -0
- package/dist/app/index.d.ts +4 -0
- package/dist/app/index.js +2 -0
- package/dist/app/session/define.d.ts +60 -0
- package/dist/app/session/define.d.ts.map +1 -0
- package/dist/app/session/define.js +31 -0
- package/dist/app/session/define.js.map +1 -0
- package/dist/app/session/index.d.ts +6 -0
- package/dist/app/session/index.js +6 -0
- package/dist/app/session/keeper.d.ts +17 -0
- package/dist/app/session/keeper.d.ts.map +1 -0
- package/dist/app/session/keeper.js +21 -0
- package/dist/app/session/keeper.js.map +1 -0
- package/dist/app/session/open.d.ts +44 -0
- package/dist/app/session/open.d.ts.map +1 -0
- package/dist/app/session/open.js +70 -0
- package/dist/app/session/open.js.map +1 -0
- package/dist/app/session/react.d.ts +17 -0
- package/dist/app/session/react.d.ts.map +1 -0
- package/dist/app/session/react.js +28 -0
- package/dist/app/session/react.js.map +1 -0
- package/dist/app/session/status.d.ts +24 -0
- package/dist/app/session/status.d.ts.map +1 -0
- package/dist/app/session/status.js +25 -0
- package/dist/app/session/status.js.map +1 -0
- package/dist/app/web-host.d.ts +16 -0
- package/dist/app/web-host.d.ts.map +1 -0
- package/dist/app/web-host.js +85 -0
- package/dist/app/web-host.js.map +1 -0
- package/dist/client/index.d.ts +3 -0
- package/dist/client/index.js +2 -0
- package/dist/client/root/index.d.ts +2 -0
- package/dist/client/root/index.js +2 -0
- package/dist/client/root/root.d.ts +62 -0
- package/dist/client/root/root.d.ts.map +1 -0
- package/dist/client/root/root.js +92 -0
- package/dist/client/root/root.js.map +1 -0
- package/dist/client/server.d.ts +2 -0
- package/dist/client/server.js +2 -0
- package/dist/client/theme/index.d.ts +2 -0
- package/dist/client/theme/index.js +2 -0
- package/dist/client/theme/tanstack-start.d.ts +5 -0
- package/dist/client/theme/tanstack-start.d.ts.map +1 -0
- package/dist/client/theme/tanstack-start.js +9 -0
- package/dist/client/theme/tanstack-start.js.map +1 -0
- package/dist/components/hooks/use-element-width.d.ts +9 -0
- package/dist/components/hooks/use-element-width.d.ts.map +1 -0
- package/dist/components/hooks/use-element-width.js +26 -0
- package/dist/components/hooks/use-element-width.js.map +1 -0
- package/dist/components/hooks/use-mobile.d.ts +6 -0
- package/dist/components/hooks/use-mobile.d.ts.map +1 -0
- package/dist/components/hooks/use-mobile.js +16 -0
- package/dist/components/hooks/use-mobile.js.map +1 -0
- package/dist/components/hooks/use-scroll.d.ts +12 -0
- package/dist/components/hooks/use-scroll.d.ts.map +1 -0
- package/dist/components/hooks/use-scroll.js +198 -0
- package/dist/components/hooks/use-scroll.js.map +1 -0
- package/dist/components/lib/lucide.d.ts +1 -0
- package/dist/components/lib/lucide.js +10 -0
- package/dist/components/lib/lucide.js.map +1 -0
- package/dist/components/lib/motion.d.ts +1 -0
- package/dist/components/lib/motion.js +1 -0
- package/dist/components/lib/scrollStyles.d.ts +13 -0
- package/dist/components/lib/scrollStyles.d.ts.map +1 -0
- package/dist/components/lib/scrollStyles.js +19 -0
- package/dist/components/lib/scrollStyles.js.map +1 -0
- package/dist/components/lib/shadow-dom.d.ts +17 -0
- package/dist/components/lib/shadow-dom.d.ts.map +1 -0
- package/dist/components/lib/shadow-dom.js +50 -0
- package/dist/components/lib/shadow-dom.js.map +1 -0
- package/dist/components/lib/utils.d.ts +5 -0
- package/dist/components/lib/utils.d.ts.map +1 -0
- package/dist/components/lib/utils.js +10 -0
- package/dist/components/lib/utils.js.map +1 -0
- package/dist/components/ui/accordion.d.ts +9 -0
- package/dist/components/ui/accordion.d.ts.map +1 -0
- package/dist/components/ui/accordion.js +55 -0
- package/dist/components/ui/accordion.js.map +1 -0
- package/dist/components/ui/alert-dialog.d.ts +21 -0
- package/dist/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/components/ui/alert-dialog.js +96 -0
- package/dist/components/ui/alert-dialog.js.map +1 -0
- package/dist/components/ui/alert.d.ts +13 -0
- package/dist/components/ui/alert.d.ts.map +1 -0
- package/dist/components/ui/alert.js +45 -0
- package/dist/components/ui/alert.js.map +1 -0
- package/dist/components/ui/aspect-ratio.d.ts +7 -0
- package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/components/ui/aspect-ratio.js +15 -0
- package/dist/components/ui/aspect-ratio.js.map +1 -0
- package/dist/components/ui/attachment.d.ts +26 -0
- package/dist/components/ui/attachment.d.ts.map +1 -0
- package/dist/components/ui/attachment.js +106 -0
- package/dist/components/ui/attachment.js.map +1 -0
- package/dist/components/ui/avatar.d.ts +14 -0
- package/dist/components/ui/avatar.d.ts.map +1 -0
- package/dist/components/ui/avatar.js +52 -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 +31 -0
- package/dist/components/ui/badge.js.map +1 -0
- package/dist/components/ui/breadcrumb.d.ts +13 -0
- package/dist/components/ui/breadcrumb.d.ts.map +1 -0
- package/dist/components/ui/breadcrumb.js +74 -0
- package/dist/components/ui/breadcrumb.js.map +1 -0
- package/dist/components/ui/bubble.d.ts +19 -0
- package/dist/components/ui/bubble.d.ts.map +1 -0
- package/dist/components/ui/bubble.js +75 -0
- package/dist/components/ui/bubble.js.map +1 -0
- package/dist/components/ui/button-group.d.ts +13 -0
- package/dist/components/ui/button-group.d.ts.map +1 -0
- package/dist/components/ui/button-group.js +43 -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 +46 -0
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/calendar.d.ts +13 -0
- package/dist/components/ui/calendar.d.ts.map +1 -0
- package/dist/components/ui/calendar.js +110 -0
- package/dist/components/ui/calendar.js.map +1 -0
- package/dist/components/ui/card.d.ts +14 -0
- package/dist/components/ui/card.d.ts.map +1 -0
- package/dist/components/ui/card.js +58 -0
- package/dist/components/ui/card.js.map +1 -0
- package/dist/components/ui/carousel.d.ts +31 -0
- package/dist/components/ui/carousel.d.ts.map +1 -0
- package/dist/components/ui/carousel.js +133 -0
- package/dist/components/ui/carousel.js.map +1 -0
- package/dist/components/ui/chart.d.ts +47 -0
- package/dist/components/ui/chart.d.ts.map +1 -0
- package/dist/components/ui/chart.js +150 -0
- package/dist/components/ui/chart.js.map +1 -0
- package/dist/components/ui/checkbox.d.ts +6 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -0
- package/dist/components/ui/checkbox.js +22 -0
- package/dist/components/ui/checkbox.js.map +1 -0
- package/dist/components/ui/collapsible.d.ts +8 -0
- package/dist/components/ui/collapsible.d.ts.map +1 -0
- package/dist/components/ui/collapsible.js +25 -0
- package/dist/components/ui/collapsible.js.map +1 -0
- package/dist/components/ui/combobox.d.ts +27 -0
- package/dist/components/ui/combobox.d.ts.map +1 -0
- package/dist/components/ui/combobox.js +163 -0
- package/dist/components/ui/combobox.js.map +1 -0
- package/dist/components/ui/command.d.ts +22 -0
- package/dist/components/ui/command.d.ts.map +1 -0
- package/dist/components/ui/command.js +90 -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 +135 -0
- package/dist/components/ui/context-menu.js.map +1 -0
- package/dist/components/ui/dialog.d.ts +20 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/dialog.js +94 -0
- package/dist/components/ui/dialog.js.map +1 -0
- package/dist/components/ui/direction.d.ts +2 -0
- package/dist/components/ui/direction.js +2 -0
- package/dist/components/ui/drawer.d.ts +19 -0
- package/dist/components/ui/drawer.d.ts.map +1 -0
- package/dist/components/ui/drawer.js +125 -0
- package/dist/components/ui/drawer.js.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +35 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu.js +141 -0
- package/dist/components/ui/dropdown-menu.js.map +1 -0
- package/dist/components/ui/empty.d.ts +14 -0
- package/dist/components/ui/empty.d.ts.map +1 -0
- package/dist/components/ui/empty.js +61 -0
- package/dist/components/ui/empty.js.map +1 -0
- package/dist/components/ui/field.d.ts +27 -0
- package/dist/components/ui/field.d.ts.map +1 -0
- package/dist/components/ui/field.js +111 -0
- package/dist/components/ui/field.js.map +1 -0
- package/dist/components/ui/file-tree.d.ts +62 -0
- package/dist/components/ui/file-tree.d.ts.map +1 -0
- package/dist/components/ui/file-tree.js +300 -0
- package/dist/components/ui/file-tree.js.map +1 -0
- package/dist/components/ui/google-button.d.ts +9 -0
- package/dist/components/ui/google-button.d.ts.map +1 -0
- package/dist/components/ui/google-button.js +183 -0
- package/dist/components/ui/google-button.js.map +1 -0
- package/dist/components/ui/hover-card.d.ts +8 -0
- package/dist/components/ui/hover-card.d.ts.map +1 -0
- package/dist/components/ui/hover-card.js +38 -0
- package/dist/components/ui/hover-card.js.map +1 -0
- package/dist/components/ui/input-group.d.ts +21 -0
- package/dist/components/ui/input-group.d.ts.map +1 -0
- package/dist/components/ui/input-group.js +81 -0
- package/dist/components/ui/input-group.js.map +1 -0
- package/dist/components/ui/input-otp.d.ts +14 -0
- package/dist/components/ui/input-otp.d.ts.map +1 -0
- package/dist/components/ui/input-otp.js +48 -0
- package/dist/components/ui/input-otp.js.map +1 -0
- package/dist/components/ui/input.d.ts +6 -0
- package/dist/components/ui/input.d.ts.map +1 -0
- package/dist/components/ui/input.js +17 -0
- package/dist/components/ui/input.js.map +1 -0
- package/dist/components/ui/item.d.ts +25 -0
- package/dist/components/ui/item.d.ts.map +1 -0
- package/dist/components/ui/item.js +123 -0
- package/dist/components/ui/item.js.map +1 -0
- package/dist/components/ui/kbd.d.ts +6 -0
- package/dist/components/ui/kbd.d.ts.map +1 -0
- package/dist/components/ui/kbd.js +21 -0
- package/dist/components/ui/kbd.js.map +1 -0
- package/dist/components/ui/label.d.ts +6 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/label.js +16 -0
- package/dist/components/ui/label.js.map +1 -0
- package/dist/components/ui/marker.d.ts +13 -0
- package/dist/components/ui/marker.d.ts.map +1 -0
- package/dist/components/ui/marker.js +45 -0
- package/dist/components/ui/marker.js.map +1 -0
- package/dist/components/ui/menubar.d.ts +32 -0
- package/dist/components/ui/menubar.d.ts.map +1 -0
- package/dist/components/ui/menubar.js +138 -0
- package/dist/components/ui/menubar.js.map +1 -0
- package/dist/components/ui/message-scroller.d.ts +13 -0
- package/dist/components/ui/message-scroller.d.ts.map +1 -0
- package/dist/components/ui/message-scroller.js +62 -0
- package/dist/components/ui/message-scroller.js.map +1 -0
- package/dist/components/ui/message.d.ts +13 -0
- package/dist/components/ui/message.d.ts.map +1 -0
- package/dist/components/ui/message.js +51 -0
- package/dist/components/ui/message.js.map +1 -0
- package/dist/components/ui/native-select.d.ts +11 -0
- package/dist/components/ui/native-select.d.ts.map +1 -0
- package/dist/components/ui/native-select.js +40 -0
- package/dist/components/ui/native-select.js.map +1 -0
- package/dist/components/ui/navigation-menu.d.ts +14 -0
- package/dist/components/ui/navigation-menu.d.ts.map +1 -0
- package/dist/components/ui/navigation-menu.js +84 -0
- package/dist/components/ui/navigation-menu.js.map +1 -0
- package/dist/components/ui/pagination.d.ts +20 -0
- package/dist/components/ui/pagination.d.ts.map +1 -0
- package/dist/components/ui/pagination.js +82 -0
- package/dist/components/ui/pagination.js.map +1 -0
- package/dist/components/ui/popover.d.ts +12 -0
- package/dist/components/ui/popover.d.ts.map +1 -0
- package/dist/components/ui/popover.js +56 -0
- package/dist/components/ui/popover.js.map +1 -0
- package/dist/components/ui/progress.d.ts +10 -0
- package/dist/components/ui/progress.d.ts.map +1 -0
- package/dist/components/ui/progress.js +46 -0
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/questionnaire.d.ts +22 -0
- package/dist/components/ui/questionnaire.d.ts.map +1 -0
- package/dist/components/ui/questionnaire.js +172 -0
- package/dist/components/ui/questionnaire.js.map +1 -0
- package/dist/components/ui/radio-group.d.ts +8 -0
- package/dist/components/ui/radio-group.d.ts.map +1 -0
- package/dist/components/ui/radio-group.js +28 -0
- package/dist/components/ui/radio-group.js.map +1 -0
- package/dist/components/ui/resizable.d.ts +10 -0
- package/dist/components/ui/resizable.d.ts.map +1 -0
- package/dist/components/ui/resizable.js +30 -0
- package/dist/components/ui/resizable.js.map +1 -0
- package/dist/components/ui/scroll-area.d.ts +10 -0
- package/dist/components/ui/scroll-area.d.ts.map +1 -0
- package/dist/components/ui/scroll-area.js +38 -0
- package/dist/components/ui/scroll-area.js.map +1 -0
- package/dist/components/ui/select.d.ts +18 -0
- package/dist/components/ui/select.d.ts.map +1 -0
- package/dist/components/ui/select.js +100 -0
- package/dist/components/ui/select.js.map +1 -0
- package/dist/components/ui/separator.d.ts +6 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/separator.js +16 -0
- package/dist/components/ui/separator.js.map +1 -0
- package/dist/components/ui/sheet.d.ts +17 -0
- package/dist/components/ui/sheet.d.ts.map +1 -0
- package/dist/components/ui/sheet.js +90 -0
- package/dist/components/ui/sheet.js.map +1 -0
- package/dist/components/ui/skeleton.d.ts +5 -0
- package/dist/components/ui/skeleton.d.ts.map +1 -0
- package/dist/components/ui/skeleton.js +14 -0
- package/dist/components/ui/skeleton.js.map +1 -0
- package/dist/components/ui/slider.d.ts +6 -0
- package/dist/components/ui/slider.d.ts.map +1 -0
- package/dist/components/ui/slider.js +35 -0
- package/dist/components/ui/slider.js.map +1 -0
- package/dist/components/ui/sonner.d.ts +6 -0
- package/dist/components/ui/sonner.d.ts.map +1 -0
- package/dist/components/ui/sonner.js +28 -0
- package/dist/components/ui/sonner.js.map +1 -0
- package/dist/components/ui/spinner.d.ts +5 -0
- package/dist/components/ui/spinner.d.ts.map +1 -0
- package/dist/components/ui/spinner.js +17 -0
- package/dist/components/ui/spinner.js.map +1 -0
- package/dist/components/ui/switch.d.ts +8 -0
- package/dist/components/ui/switch.d.ts.map +1 -0
- package/dist/components/ui/switch.js +21 -0
- package/dist/components/ui/switch.js.map +1 -0
- package/dist/components/ui/table.d.ts +13 -0
- package/dist/components/ui/table.d.ts.map +1 -0
- package/dist/components/ui/table.js +68 -0
- package/dist/components/ui/table.js.map +1 -0
- package/dist/components/ui/tabs.d.ts +13 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/components/ui/tabs.js +47 -0
- package/dist/components/ui/tabs.js.map +1 -0
- package/dist/components/ui/textarea.d.ts +6 -0
- package/dist/components/ui/textarea.d.ts.map +1 -0
- package/dist/components/ui/textarea.js +15 -0
- package/dist/components/ui/textarea.js.map +1 -0
- package/dist/components/ui/toast.d.ts +19 -0
- package/dist/components/ui/toast.d.ts.map +1 -0
- package/dist/components/ui/toast.js +125 -0
- package/dist/components/ui/toast.js.map +1 -0
- package/dist/components/ui/toggle-group.d.ts +14 -0
- package/dist/components/ui/toggle-group.d.ts.map +1 -0
- package/dist/components/ui/toggle-group.js +53 -0
- package/dist/components/ui/toggle-group.js.map +1 -0
- package/dist/components/ui/toggle.d.ts +11 -0
- package/dist/components/ui/toggle.d.ts.map +1 -0
- package/dist/components/ui/toggle.js +37 -0
- package/dist/components/ui/toggle.js.map +1 -0
- package/dist/components/ui/tooltip.d.ts +9 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/components/ui/tooltip.js +43 -0
- package/dist/components/ui/tooltip.js.map +1 -0
- package/dist/components/viewers/diff-viewer/align.d.ts +23 -0
- package/dist/components/viewers/diff-viewer/align.d.ts.map +1 -0
- package/dist/components/viewers/diff-viewer/align.js +68 -0
- package/dist/components/viewers/diff-viewer/align.js.map +1 -0
- package/dist/components/viewers/diff-viewer/collapse.d.ts +20 -0
- package/dist/components/viewers/diff-viewer/collapse.d.ts.map +1 -0
- package/dist/components/viewers/diff-viewer/collapse.js +84 -0
- package/dist/components/viewers/diff-viewer/collapse.js.map +1 -0
- package/dist/components/viewers/diff-viewer/diff-viewer.d.ts +34 -0
- package/dist/components/viewers/diff-viewer/diff-viewer.d.ts.map +1 -0
- package/dist/components/viewers/diff-viewer/diff-viewer.js +373 -0
- package/dist/components/viewers/diff-viewer/diff-viewer.js.map +1 -0
- package/dist/components/viewers/diff-viewer/index.d.ts +2 -0
- package/dist/components/viewers/diff-viewer/index.js +2 -0
- package/dist/components/viewers/diff-viewer/render-model.d.ts +27 -0
- package/dist/components/viewers/diff-viewer/render-model.d.ts.map +1 -0
- package/dist/components/viewers/diff-viewer/render-model.js +83 -0
- package/dist/components/viewers/diff-viewer/render-model.js.map +1 -0
- package/dist/components/viewers/diff-viewer/sync-rows.d.ts +8 -0
- package/dist/components/viewers/diff-viewer/sync-rows.d.ts.map +1 -0
- package/dist/components/viewers/diff-viewer/sync-rows.js +32 -0
- package/dist/components/viewers/diff-viewer/sync-rows.js.map +1 -0
- package/dist/components/viewers/file-tree/expand.d.ts +7 -0
- package/dist/components/viewers/file-tree/expand.d.ts.map +1 -0
- package/dist/components/viewers/file-tree/expand.js +37 -0
- package/dist/components/viewers/file-tree/expand.js.map +1 -0
- package/dist/components/viewers/file-tree/file-tree.d.ts +20 -0
- package/dist/components/viewers/file-tree/file-tree.d.ts.map +1 -0
- package/dist/components/viewers/file-tree/file-tree.js +116 -0
- package/dist/components/viewers/file-tree/file-tree.js.map +1 -0
- package/dist/components/viewers/file-tree/index.d.ts +3 -0
- package/dist/components/viewers/file-tree/index.js +3 -0
- package/dist/components/viewers/git-changes/git-changes.d.ts +40 -0
- package/dist/components/viewers/git-changes/git-changes.d.ts.map +1 -0
- package/dist/components/viewers/git-changes/git-changes.js +170 -0
- package/dist/components/viewers/git-changes/git-changes.js.map +1 -0
- package/dist/components/viewers/git-changes/index.d.ts +2 -0
- package/dist/components/viewers/git-changes/index.js +2 -0
- package/dist/components/viewers/json/index.d.ts +4 -0
- package/dist/components/viewers/json/index.js +4 -0
- package/dist/components/viewers/json/json-editor.d.ts +14 -0
- package/dist/components/viewers/json/json-editor.d.ts.map +1 -0
- package/dist/components/viewers/json/json-editor.js +84 -0
- package/dist/components/viewers/json/json-editor.js.map +1 -0
- package/dist/components/viewers/json/json-tree.d.ts +11 -0
- package/dist/components/viewers/json/json-tree.d.ts.map +1 -0
- package/dist/components/viewers/json/json-tree.js +88 -0
- package/dist/components/viewers/json/json-tree.js.map +1 -0
- package/dist/components/viewers/json/json-viewer.d.ts +10 -0
- package/dist/components/viewers/json/json-viewer.d.ts.map +1 -0
- package/dist/components/viewers/json/json-viewer.js +48 -0
- package/dist/components/viewers/json/json-viewer.js.map +1 -0
- package/dist/components/viewers/markdown-viewer/index.d.ts +2 -0
- package/dist/components/viewers/markdown-viewer/index.js +2 -0
- package/dist/components/viewers/markdown-viewer/markdown-viewer.d.ts +8 -0
- package/dist/components/viewers/markdown-viewer/markdown-viewer.d.ts.map +1 -0
- package/dist/components/viewers/markdown-viewer/markdown-viewer.js +65 -0
- package/dist/components/viewers/markdown-viewer/markdown-viewer.js.map +1 -0
- package/dist/components/viewers/source-explorer/index.d.ts +2 -0
- package/dist/components/viewers/source-explorer/index.js +2 -0
- package/dist/components/viewers/source-explorer/initial-selection.d.ts +6 -0
- package/dist/components/viewers/source-explorer/initial-selection.d.ts.map +1 -0
- package/dist/components/viewers/source-explorer/initial-selection.js +13 -0
- package/dist/components/viewers/source-explorer/initial-selection.js.map +1 -0
- package/dist/components/viewers/source-explorer/snapshot-tree.d.ts +11 -0
- package/dist/components/viewers/source-explorer/snapshot-tree.d.ts.map +1 -0
- package/dist/components/viewers/source-explorer/snapshot-tree.js +21 -0
- package/dist/components/viewers/source-explorer/snapshot-tree.js.map +1 -0
- package/dist/components/viewers/source-explorer/source-explorer.d.ts +49 -0
- package/dist/components/viewers/source-explorer/source-explorer.d.ts.map +1 -0
- package/dist/components/viewers/source-explorer/source-explorer.js +364 -0
- package/dist/components/viewers/source-explorer/source-explorer.js.map +1 -0
- package/dist/components/viewers/source-viewer/index.d.ts +2 -0
- package/dist/components/viewers/source-viewer/index.js +2 -0
- package/dist/components/viewers/source-viewer/source-viewer.d.ts +33 -0
- package/dist/components/viewers/source-viewer/source-viewer.d.ts.map +1 -0
- package/dist/components/viewers/source-viewer/source-viewer.js +224 -0
- package/dist/components/viewers/source-viewer/source-viewer.js.map +1 -0
- package/dist/define/index.d.ts +10 -0
- package/dist/define/index.js +4 -0
- package/dist/feedback/index.d.ts +2 -0
- package/dist/feedback/index.js +2 -0
- package/dist/feedback/sound.d.ts +28 -0
- package/dist/feedback/sound.d.ts.map +1 -0
- package/dist/feedback/sound.js +150 -0
- package/dist/feedback/sound.js.map +1 -0
- package/dist/form/components/submit-button.d.ts +11 -0
- package/dist/form/components/submit-button.d.ts.map +1 -0
- package/dist/form/components/submit-button.js +26 -0
- package/dist/form/components/submit-button.js.map +1 -0
- package/dist/form/context.d.ts +8 -0
- package/dist/form/context.d.ts.map +1 -0
- package/dist/form/context.js +11 -0
- package/dist/form/context.js.map +1 -0
- package/dist/form/create-form-hook.d.ts +62 -0
- package/dist/form/create-form-hook.d.ts.map +1 -0
- package/dist/form/create-form-hook.js +51 -0
- package/dist/form/create-form-hook.js.map +1 -0
- package/dist/form/fields/date-picker-field.d.ts +9 -0
- package/dist/form/fields/date-picker-field.d.ts.map +1 -0
- package/dist/form/fields/date-picker-field.js +84 -0
- package/dist/form/fields/date-picker-field.js.map +1 -0
- package/dist/form/fields/select-field.d.ts +15 -0
- package/dist/form/fields/select-field.d.ts.map +1 -0
- package/dist/form/fields/select-field.js +65 -0
- package/dist/form/fields/select-field.js.map +1 -0
- package/dist/form/fields/switch-field.d.ts +9 -0
- package/dist/form/fields/switch-field.d.ts.map +1 -0
- package/dist/form/fields/switch-field.js +56 -0
- package/dist/form/fields/switch-field.js.map +1 -0
- package/dist/form/fields/text-field.d.ts +10 -0
- package/dist/form/fields/text-field.d.ts.map +1 -0
- package/dist/form/fields/text-field.js +58 -0
- package/dist/form/fields/text-field.js.map +1 -0
- package/dist/form/fields/textarea-field.d.ts +10 -0
- package/dist/form/fields/textarea-field.d.ts.map +1 -0
- package/dist/form/fields/textarea-field.js +58 -0
- package/dist/form/fields/textarea-field.js.map +1 -0
- package/dist/form/index.d.ts +10 -0
- package/dist/form/index.js +3 -0
- package/dist/form/types.d.ts +51 -0
- package/dist/form/types.d.ts.map +1 -0
- package/dist/form/types.js +23 -0
- package/dist/form/types.js.map +1 -0
- package/dist/input/device/device.d.ts +21 -0
- package/dist/input/device/device.d.ts.map +1 -0
- package/dist/input/device/device.js +61 -0
- package/dist/input/device/device.js.map +1 -0
- package/dist/input/device/index.d.ts +2 -0
- package/dist/input/device/index.js +2 -0
- package/dist/input/gesture/index.d.ts +9 -0
- package/dist/input/gesture/index.js +5 -0
- package/dist/input/gesture/patterns/index.d.ts +5 -0
- package/dist/input/gesture/patterns/index.js +3 -0
- package/dist/input/gesture/patterns/pull-to-refresh/index.d.ts +2 -0
- package/dist/input/gesture/patterns/pull-to-refresh/index.js +2 -0
- package/dist/input/gesture/patterns/pull-to-refresh/use-pull-to-refresh.d.ts +32 -0
- package/dist/input/gesture/patterns/pull-to-refresh/use-pull-to-refresh.d.ts.map +1 -0
- package/dist/input/gesture/patterns/pull-to-refresh/use-pull-to-refresh.js +75 -0
- package/dist/input/gesture/patterns/pull-to-refresh/use-pull-to-refresh.js.map +1 -0
- package/dist/input/gesture/patterns/sidebar/index.d.ts +2 -0
- package/dist/input/gesture/patterns/sidebar/index.js +2 -0
- package/dist/input/gesture/patterns/sidebar/use-sidebar.d.ts +41 -0
- package/dist/input/gesture/patterns/sidebar/use-sidebar.d.ts.map +1 -0
- package/dist/input/gesture/patterns/sidebar/use-sidebar.js +131 -0
- package/dist/input/gesture/patterns/sidebar/use-sidebar.js.map +1 -0
- package/dist/input/gesture/recognizers/index.d.ts +3 -0
- package/dist/input/gesture/recognizers/index.js +2 -0
- package/dist/input/gesture/recognizers/swipe/index.d.ts +2 -0
- package/dist/input/gesture/recognizers/swipe/index.js +2 -0
- package/dist/input/gesture/recognizers/swipe/use-swipe.d.ts +56 -0
- package/dist/input/gesture/recognizers/swipe/use-swipe.d.ts.map +1 -0
- package/dist/input/gesture/recognizers/swipe/use-swipe.js +150 -0
- package/dist/input/gesture/recognizers/swipe/use-swipe.js.map +1 -0
- package/dist/input/gesture/zones/index.d.ts +4 -0
- package/dist/input/gesture/zones/index.js +2 -0
- package/dist/input/gesture/zones/touch-input/index.d.ts +3 -0
- package/dist/input/gesture/zones/touch-input/index.js +3 -0
- package/dist/input/gesture/zones/touch-input/native-scroll.d.ts +28 -0
- package/dist/input/gesture/zones/touch-input/native-scroll.d.ts.map +1 -0
- package/dist/input/gesture/zones/touch-input/native-scroll.js +61 -0
- package/dist/input/gesture/zones/touch-input/native-scroll.js.map +1 -0
- package/dist/input/gesture/zones/touch-input/touch-input.d.ts +54 -0
- package/dist/input/gesture/zones/touch-input/touch-input.d.ts.map +1 -0
- package/dist/input/gesture/zones/touch-input/touch-input.js +243 -0
- package/dist/input/gesture/zones/touch-input/touch-input.js.map +1 -0
- package/dist/input/gesture/zones/zone/index.d.ts +3 -0
- package/dist/input/gesture/zones/zone/index.js +2 -0
- package/dist/input/gesture/zones/zone/motion-pointers.d.ts +33 -0
- package/dist/input/gesture/zones/zone/motion-pointers.d.ts.map +1 -0
- package/dist/input/gesture/zones/zone/motion-pointers.js +52 -0
- package/dist/input/gesture/zones/zone/motion-pointers.js.map +1 -0
- package/dist/input/gesture/zones/zone/zone.d.ts +93 -0
- package/dist/input/gesture/zones/zone/zone.d.ts.map +1 -0
- package/dist/input/gesture/zones/zone/zone.js +169 -0
- package/dist/input/gesture/zones/zone/zone.js.map +1 -0
- package/dist/input/index.d.ts +8 -0
- package/dist/input/index.js +6 -0
- package/dist/pwa/browser/dom-events.d.ts +9 -0
- package/dist/pwa/browser/dom-events.d.ts.map +1 -0
- package/dist/pwa/browser/dom-events.js +10 -0
- package/dist/pwa/browser/dom-events.js.map +1 -0
- package/dist/pwa/browser/subscription-ref.d.ts +6 -0
- package/dist/pwa/browser/subscription-ref.d.ts.map +1 -0
- package/dist/pwa/browser/subscription-ref.js +19 -0
- package/dist/pwa/browser/subscription-ref.js.map +1 -0
- package/dist/pwa/client/client.d.ts +32 -0
- package/dist/pwa/client/client.d.ts.map +1 -0
- package/dist/pwa/client/client.js +36 -0
- package/dist/pwa/client/client.js.map +1 -0
- package/dist/pwa/client/commands/commands.d.ts +9 -0
- package/dist/pwa/client/commands/commands.d.ts.map +1 -0
- package/dist/pwa/client/commands/commands.js +21 -0
- package/dist/pwa/client/commands/commands.js.map +1 -0
- package/dist/pwa/client/commands/index.d.ts +2 -0
- package/dist/pwa/client/commands/index.js +2 -0
- package/dist/pwa/client/index.d.ts +3 -0
- package/dist/pwa/client/index.js +3 -0
- package/dist/pwa/client/registration.d.ts +14 -0
- package/dist/pwa/client/registration.d.ts.map +1 -0
- package/dist/pwa/client/registration.js +36 -0
- package/dist/pwa/client/registration.js.map +1 -0
- package/dist/pwa/client/runtime-cache.d.ts +9 -0
- package/dist/pwa/client/runtime-cache.d.ts.map +1 -0
- package/dist/pwa/client/runtime-cache.js +15 -0
- package/dist/pwa/client/runtime-cache.js.map +1 -0
- package/dist/pwa/client/status/index.d.ts +2 -0
- package/dist/pwa/client/status/index.js +2 -0
- package/dist/pwa/client/status/status.d.ts +136 -0
- package/dist/pwa/client/status/status.d.ts.map +1 -0
- package/dist/pwa/client/status/status.js +83 -0
- package/dist/pwa/client/status/status.js.map +1 -0
- package/dist/pwa/extras/display-mode/display-mode.d.ts +18 -0
- package/dist/pwa/extras/display-mode/display-mode.d.ts.map +1 -0
- package/dist/pwa/extras/display-mode/display-mode.js +42 -0
- package/dist/pwa/extras/display-mode/display-mode.js.map +1 -0
- package/dist/pwa/extras/display-mode/index.d.ts +2 -0
- package/dist/pwa/extras/display-mode/index.js +2 -0
- package/dist/pwa/extras/index.d.ts +13 -0
- package/dist/pwa/extras/index.js +9 -0
- package/dist/pwa/extras/install/index.d.ts +5 -0
- package/dist/pwa/extras/install/index.js +5 -0
- package/dist/pwa/extras/install/install-content.d.ts +12 -0
- package/dist/pwa/extras/install/install-content.d.ts.map +1 -0
- package/dist/pwa/extras/install/install-content.js +57 -0
- package/dist/pwa/extras/install/install-content.js.map +1 -0
- package/dist/pwa/extras/install/install-dismissal.d.ts +5 -0
- package/dist/pwa/extras/install/install-dismissal.d.ts.map +1 -0
- package/dist/pwa/extras/install/install-dismissal.js +20 -0
- package/dist/pwa/extras/install/install-dismissal.js.map +1 -0
- package/dist/pwa/extras/install/install-prompt.d.ts +12 -0
- package/dist/pwa/extras/install/install-prompt.d.ts.map +1 -0
- package/dist/pwa/extras/install/install-prompt.js +66 -0
- package/dist/pwa/extras/install/install-prompt.js.map +1 -0
- package/dist/pwa/extras/install/install.d.ts +125 -0
- package/dist/pwa/extras/install/install.d.ts.map +1 -0
- package/dist/pwa/extras/install/install.js +80 -0
- package/dist/pwa/extras/install/install.js.map +1 -0
- package/dist/pwa/extras/install/ios.d.ts +8 -0
- package/dist/pwa/extras/install/ios.d.ts.map +1 -0
- package/dist/pwa/extras/install/ios.js +10 -0
- package/dist/pwa/extras/install/ios.js.map +1 -0
- package/dist/pwa/extras/install/media-query.d.ts +5 -0
- package/dist/pwa/extras/install/media-query.d.ts.map +1 -0
- package/dist/pwa/extras/install/media-query.js +15 -0
- package/dist/pwa/extras/install/media-query.js.map +1 -0
- package/dist/pwa/extras/lazy-service/index.d.ts +2 -0
- package/dist/pwa/extras/lazy-service/index.js +2 -0
- package/dist/pwa/extras/lazy-service/lazy-service.d.ts +11 -0
- package/dist/pwa/extras/lazy-service/lazy-service.d.ts.map +1 -0
- package/dist/pwa/extras/lazy-service/lazy-service.js +30 -0
- package/dist/pwa/extras/lazy-service/lazy-service.js.map +1 -0
- package/dist/pwa/extras/online/index.d.ts +3 -0
- package/dist/pwa/extras/online/index.js +3 -0
- package/dist/pwa/extras/online/offline-indicator.d.ts +11 -0
- package/dist/pwa/extras/online/offline-indicator.d.ts.map +1 -0
- package/dist/pwa/extras/online/offline-indicator.js +26 -0
- package/dist/pwa/extras/online/offline-indicator.js.map +1 -0
- package/dist/pwa/extras/online/online.d.ts +15 -0
- package/dist/pwa/extras/online/online.d.ts.map +1 -0
- package/dist/pwa/extras/online/online.js +27 -0
- package/dist/pwa/extras/online/online.js.map +1 -0
- package/dist/pwa/extras/storage/index.d.ts +2 -0
- package/dist/pwa/extras/storage/index.js +2 -0
- package/dist/pwa/extras/storage/storage.d.ts +28 -0
- package/dist/pwa/extras/storage/storage.d.ts.map +1 -0
- package/dist/pwa/extras/storage/storage.js +51 -0
- package/dist/pwa/extras/storage/storage.js.map +1 -0
- package/dist/pwa/index.d.ts +8 -0
- package/dist/pwa/index.js +5 -0
- package/dist/pwa/react/head.d.ts +33 -0
- package/dist/pwa/react/head.d.ts.map +1 -0
- package/dist/pwa/react/head.js +43 -0
- package/dist/pwa/react/head.js.map +1 -0
- package/dist/pwa/react/index.d.ts +4 -0
- package/dist/pwa/react/index.js +3 -0
- package/dist/pwa/react/react.d.ts +33 -0
- package/dist/pwa/react/react.d.ts.map +1 -0
- package/dist/pwa/react/react.js +67 -0
- package/dist/pwa/react/react.js.map +1 -0
- package/dist/pwa/react/update-prompt.d.ts +12 -0
- package/dist/pwa/react/update-prompt.d.ts.map +1 -0
- package/dist/pwa/react/update-prompt.js +23 -0
- package/dist/pwa/react/update-prompt.js.map +1 -0
- package/dist/pwa/react/update-toast.d.ts +15 -0
- package/dist/pwa/react/update-toast.d.ts.map +1 -0
- package/dist/pwa/react/update-toast.js +52 -0
- package/dist/pwa/react/update-toast.js.map +1 -0
- package/dist/pwa/root/index.d.ts +2 -0
- package/dist/pwa/root/index.js +2 -0
- package/dist/pwa/root/root.d.ts +14 -0
- package/dist/pwa/root/root.d.ts.map +1 -0
- package/dist/pwa/root/root.js +35 -0
- package/dist/pwa/root/root.js.map +1 -0
- package/dist/pwa/rpc/client/client.d.ts +49 -0
- package/dist/pwa/rpc/client/client.d.ts.map +1 -0
- package/dist/pwa/rpc/client/client.js +55 -0
- package/dist/pwa/rpc/client/client.js.map +1 -0
- package/dist/pwa/rpc/client/index.d.ts +3 -0
- package/dist/pwa/rpc/client/index.js +3 -0
- package/dist/pwa/rpc/client/page-environment.d.ts +25 -0
- package/dist/pwa/rpc/client/page-environment.d.ts.map +1 -0
- package/dist/pwa/rpc/client/page-environment.js +46 -0
- package/dist/pwa/rpc/client/page-environment.js.map +1 -0
- package/dist/pwa/rpc/client/platform.d.ts +26 -0
- package/dist/pwa/rpc/client/platform.d.ts.map +1 -0
- package/dist/pwa/rpc/client/platform.js +144 -0
- package/dist/pwa/rpc/client/platform.js.map +1 -0
- package/dist/pwa/rpc/client/version-skew.d.ts +24 -0
- package/dist/pwa/rpc/client/version-skew.d.ts.map +1 -0
- package/dist/pwa/rpc/client/version-skew.js +63 -0
- package/dist/pwa/rpc/client/version-skew.js.map +1 -0
- package/dist/pwa/rpc/handshake/handshake.d.ts +74 -0
- package/dist/pwa/rpc/handshake/handshake.d.ts.map +1 -0
- package/dist/pwa/rpc/handshake/handshake.js +104 -0
- package/dist/pwa/rpc/handshake/handshake.js.map +1 -0
- package/dist/pwa/rpc/handshake/index.d.ts +2 -0
- package/dist/pwa/rpc/handshake/index.js +2 -0
- package/dist/pwa/rpc/worker/connections.d.ts +31 -0
- package/dist/pwa/rpc/worker/connections.d.ts.map +1 -0
- package/dist/pwa/rpc/worker/connections.js +48 -0
- package/dist/pwa/rpc/worker/connections.js.map +1 -0
- package/dist/pwa/rpc/worker/index.d.ts +2 -0
- package/dist/pwa/rpc/worker/index.js +2 -0
- package/dist/pwa/rpc/worker/keep-alive.d.ts +11 -0
- package/dist/pwa/rpc/worker/keep-alive.d.ts.map +1 -0
- package/dist/pwa/rpc/worker/keep-alive.js +30 -0
- package/dist/pwa/rpc/worker/keep-alive.js.map +1 -0
- package/dist/pwa/rpc/worker/runner-platform.d.ts +18 -0
- package/dist/pwa/rpc/worker/runner-platform.d.ts.map +1 -0
- package/dist/pwa/rpc/worker/runner-platform.js +113 -0
- package/dist/pwa/rpc/worker/runner-platform.js.map +1 -0
- package/dist/pwa/rpc/worker/worker.d.ts +22 -0
- package/dist/pwa/rpc/worker/worker.d.ts.map +1 -0
- package/dist/pwa/rpc/worker/worker.js +23 -0
- package/dist/pwa/rpc/worker/worker.js.map +1 -0
- package/dist/pwa/shared/build/build.d.ts +55 -0
- package/dist/pwa/shared/build/build.d.ts.map +1 -0
- package/dist/pwa/shared/build/build.js +55 -0
- package/dist/pwa/shared/build/build.js.map +1 -0
- package/dist/pwa/shared/build/canonical-json.d.ts +5 -0
- package/dist/pwa/shared/build/canonical-json.d.ts.map +1 -0
- package/dist/pwa/shared/build/canonical-json.js +7 -0
- package/dist/pwa/shared/build/canonical-json.js.map +1 -0
- package/dist/pwa/shared/build/fnv1a.d.ts +5 -0
- package/dist/pwa/shared/build/fnv1a.d.ts.map +1 -0
- package/dist/pwa/shared/build/fnv1a.js +17 -0
- package/dist/pwa/shared/build/fnv1a.js.map +1 -0
- package/dist/pwa/shared/build/index.d.ts +2 -0
- package/dist/pwa/shared/build/index.js +2 -0
- package/dist/pwa/shared/commands/commands.d.ts +39 -0
- package/dist/pwa/shared/commands/commands.d.ts.map +1 -0
- package/dist/pwa/shared/commands/commands.js +51 -0
- package/dist/pwa/shared/commands/commands.js.map +1 -0
- package/dist/pwa/shared/commands/index.d.ts +2 -0
- package/dist/pwa/shared/commands/index.js +2 -0
- package/dist/pwa/shared/config/config.d.ts +231 -0
- package/dist/pwa/shared/config/config.d.ts.map +1 -0
- package/dist/pwa/shared/config/config.js +136 -0
- package/dist/pwa/shared/config/config.js.map +1 -0
- package/dist/pwa/shared/config/index.d.ts +2 -0
- package/dist/pwa/shared/config/index.js +2 -0
- package/dist/pwa/shared/config/presets.d.ts +19 -0
- package/dist/pwa/shared/config/presets.d.ts.map +1 -0
- package/dist/pwa/shared/config/presets.js +45 -0
- package/dist/pwa/shared/config/presets.js.map +1 -0
- package/dist/pwa/shared/manifest/index.d.ts +2 -0
- package/dist/pwa/shared/manifest/index.js +2 -0
- package/dist/pwa/shared/manifest/manifest.d.ts +53 -0
- package/dist/pwa/shared/manifest/manifest.d.ts.map +1 -0
- package/dist/pwa/shared/manifest/manifest.js +87 -0
- package/dist/pwa/shared/manifest/manifest.js.map +1 -0
- package/dist/pwa/shared/strategy/index.d.ts +2 -0
- package/dist/pwa/shared/strategy/index.js +2 -0
- package/dist/pwa/shared/strategy/pattern.d.ts +6 -0
- package/dist/pwa/shared/strategy/pattern.d.ts.map +1 -0
- package/dist/pwa/shared/strategy/pattern.js +23 -0
- package/dist/pwa/shared/strategy/pattern.js.map +1 -0
- package/dist/pwa/shared/strategy/strategy.d.ts +41 -0
- package/dist/pwa/shared/strategy/strategy.d.ts.map +1 -0
- package/dist/pwa/shared/strategy/strategy.js +60 -0
- package/dist/pwa/shared/strategy/strategy.js.map +1 -0
- package/dist/pwa/shared/worker-host/index.d.ts +2 -0
- package/dist/pwa/shared/worker-host/index.js +2 -0
- package/dist/pwa/shared/worker-host/worker-host.d.ts +22 -0
- package/dist/pwa/shared/worker-host/worker-host.d.ts.map +1 -0
- package/dist/pwa/shared/worker-host/worker-host.js +11 -0
- package/dist/pwa/shared/worker-host/worker-host.js.map +1 -0
- package/dist/pwa/splash/devices.d.ts +85 -0
- package/dist/pwa/splash/devices.d.ts.map +1 -0
- package/dist/pwa/splash/devices.js +109 -0
- package/dist/pwa/splash/devices.js.map +1 -0
- package/dist/pwa/splash/index.d.ts +2 -0
- package/dist/pwa/splash/index.js +2 -0
- package/dist/pwa/splash/splash.d.ts +29 -0
- package/dist/pwa/splash/splash.d.ts.map +1 -0
- package/dist/pwa/splash/splash.js +38 -0
- package/dist/pwa/splash/splash.js.map +1 -0
- package/dist/pwa/vite/build/build-plugin.d.ts +15 -0
- package/dist/pwa/vite/build/build-plugin.d.ts.map +1 -0
- package/dist/pwa/vite/build/build-plugin.js +105 -0
- package/dist/pwa/vite/build/build-plugin.js.map +1 -0
- package/dist/pwa/vite/build/build-state.d.ts +17 -0
- package/dist/pwa/vite/build/build-state.d.ts.map +1 -0
- package/dist/pwa/vite/build/build-state.js +9 -0
- package/dist/pwa/vite/build/build-state.js.map +1 -0
- package/dist/pwa/vite/build/headers.d.ts +10 -0
- package/dist/pwa/vite/build/headers.d.ts.map +1 -0
- package/dist/pwa/vite/build/headers.js +26 -0
- package/dist/pwa/vite/build/headers.js.map +1 -0
- package/dist/pwa/vite/build/index.d.ts +3 -0
- package/dist/pwa/vite/build/index.js +3 -0
- package/dist/pwa/vite/build/output-files.d.ts +12 -0
- package/dist/pwa/vite/build/output-files.d.ts.map +1 -0
- package/dist/pwa/vite/build/output-files.js +35 -0
- package/dist/pwa/vite/build/output-files.js.map +1 -0
- package/dist/pwa/vite/build/start-setup.d.ts +19 -0
- package/dist/pwa/vite/build/start-setup.d.ts.map +1 -0
- package/dist/pwa/vite/build/start-setup.js +27 -0
- package/dist/pwa/vite/build/start-setup.js.map +1 -0
- package/dist/pwa/vite/client-module/build-version.d.ts +15 -0
- package/dist/pwa/vite/client-module/build-version.d.ts.map +1 -0
- package/dist/pwa/vite/client-module/build-version.js +45 -0
- package/dist/pwa/vite/client-module/build-version.js.map +1 -0
- package/dist/pwa/vite/client-module/client-info.d.ts +22 -0
- package/dist/pwa/vite/client-module/client-info.d.ts.map +1 -0
- package/dist/pwa/vite/client-module/client-info.js +38 -0
- package/dist/pwa/vite/client-module/client-info.js.map +1 -0
- package/dist/pwa/vite/client-module/client-module.d.ts +16 -0
- package/dist/pwa/vite/client-module/client-module.d.ts.map +1 -0
- package/dist/pwa/vite/client-module/client-module.js +47 -0
- package/dist/pwa/vite/client-module/client-module.js.map +1 -0
- package/dist/pwa/vite/client-module/index.d.ts +2 -0
- package/dist/pwa/vite/client-module/index.js +2 -0
- package/dist/pwa/vite/dev/dev-plugin.d.ts +13 -0
- package/dist/pwa/vite/dev/dev-plugin.d.ts.map +1 -0
- package/dist/pwa/vite/dev/dev-plugin.js +61 -0
- package/dist/pwa/vite/dev/dev-plugin.js.map +1 -0
- package/dist/pwa/vite/dev/index.d.ts +2 -0
- package/dist/pwa/vite/dev/index.js +2 -0
- package/dist/pwa/vite/index.d.ts +2 -0
- package/dist/pwa/vite/index.js +2 -0
- package/dist/pwa/vite/precache/asset-kind.d.ts +7 -0
- package/dist/pwa/vite/precache/asset-kind.d.ts.map +1 -0
- package/dist/pwa/vite/precache/asset-kind.js +24 -0
- package/dist/pwa/vite/precache/asset-kind.js.map +1 -0
- package/dist/pwa/vite/precache/index.d.ts +2 -0
- package/dist/pwa/vite/precache/index.js +2 -0
- package/dist/pwa/vite/precache/precache.d.ts +39 -0
- package/dist/pwa/vite/precache/precache.d.ts.map +1 -0
- package/dist/pwa/vite/precache/precache.js +60 -0
- package/dist/pwa/vite/precache/precache.js.map +1 -0
- package/dist/pwa/vite/precache/revision.d.ts +5 -0
- package/dist/pwa/vite/precache/revision.d.ts.map +1 -0
- package/dist/pwa/vite/precache/revision.js +8 -0
- package/dist/pwa/vite/precache/revision.js.map +1 -0
- package/dist/pwa/vite/precache/url-path.d.ts +12 -0
- package/dist/pwa/vite/precache/url-path.d.ts.map +1 -0
- package/dist/pwa/vite/precache/url-path.js +23 -0
- package/dist/pwa/vite/precache/url-path.js.map +1 -0
- package/dist/pwa/vite/vite.d.ts +14 -0
- package/dist/pwa/vite/vite.d.ts.map +1 -0
- package/dist/pwa/vite/vite.js +27 -0
- package/dist/pwa/vite/vite.js.map +1 -0
- package/dist/pwa/vite/worker-bundle/build-module.d.ts +11 -0
- package/dist/pwa/vite/worker-bundle/build-module.d.ts.map +1 -0
- package/dist/pwa/vite/worker-bundle/build-module.js +23 -0
- package/dist/pwa/vite/worker-bundle/build-module.js.map +1 -0
- package/dist/pwa/vite/worker-bundle/entry.d.ts +10 -0
- package/dist/pwa/vite/worker-bundle/entry.d.ts.map +1 -0
- package/dist/pwa/vite/worker-bundle/entry.js +25 -0
- package/dist/pwa/vite/worker-bundle/entry.js.map +1 -0
- package/dist/pwa/vite/worker-bundle/index.d.ts +2 -0
- package/dist/pwa/vite/worker-bundle/index.js +2 -0
- package/dist/pwa/vite/worker-bundle/kill-switch.d.ts +9 -0
- package/dist/pwa/vite/worker-bundle/kill-switch.d.ts.map +1 -0
- package/dist/pwa/vite/worker-bundle/kill-switch.js +27 -0
- package/dist/pwa/vite/worker-bundle/kill-switch.js.map +1 -0
- package/dist/pwa/vite/worker-bundle/worker-bundle.d.ts +25 -0
- package/dist/pwa/vite/worker-bundle/worker-bundle.d.ts.map +1 -0
- package/dist/pwa/vite/worker-bundle/worker-bundle.js +49 -0
- package/dist/pwa/vite/worker-bundle/worker-bundle.js.map +1 -0
- package/dist/pwa/worker/commands/commands.d.ts +13 -0
- package/dist/pwa/worker/commands/commands.d.ts.map +1 -0
- package/dist/pwa/worker/commands/commands.js +23 -0
- package/dist/pwa/worker/commands/commands.js.map +1 -0
- package/dist/pwa/worker/commands/index.d.ts +2 -0
- package/dist/pwa/worker/commands/index.js +2 -0
- package/dist/pwa/worker/global-scope/global-scope.d.ts +35 -0
- package/dist/pwa/worker/global-scope/global-scope.d.ts.map +1 -0
- package/dist/pwa/worker/global-scope/global-scope.js +45 -0
- package/dist/pwa/worker/global-scope/global-scope.js.map +1 -0
- package/dist/pwa/worker/global-scope/index.d.ts +2 -0
- package/dist/pwa/worker/global-scope/index.js +2 -0
- package/dist/pwa/worker/index.d.ts +3 -0
- package/dist/pwa/worker/index.js +3 -0
- package/dist/pwa/worker/lifecycle/index.d.ts +2 -0
- package/dist/pwa/worker/lifecycle/index.js +2 -0
- package/dist/pwa/worker/lifecycle/lifecycle.d.ts +19 -0
- package/dist/pwa/worker/lifecycle/lifecycle.d.ts.map +1 -0
- package/dist/pwa/worker/lifecycle/lifecycle.js +32 -0
- package/dist/pwa/worker/lifecycle/lifecycle.js.map +1 -0
- package/dist/pwa/worker/messages/index.d.ts +2 -0
- package/dist/pwa/worker/messages/index.js +2 -0
- package/dist/pwa/worker/messages/messages.d.ts +16 -0
- package/dist/pwa/worker/messages/messages.d.ts.map +1 -0
- package/dist/pwa/worker/messages/messages.js +59 -0
- package/dist/pwa/worker/messages/messages.js.map +1 -0
- package/dist/pwa/worker/precache/download.d.ts +11 -0
- package/dist/pwa/worker/precache/download.d.ts.map +1 -0
- package/dist/pwa/worker/precache/download.js +26 -0
- package/dist/pwa/worker/precache/download.js.map +1 -0
- package/dist/pwa/worker/precache/index.d.ts +2 -0
- package/dist/pwa/worker/precache/index.js +2 -0
- package/dist/pwa/worker/precache/precache.d.ts +21 -0
- package/dist/pwa/worker/precache/precache.d.ts.map +1 -0
- package/dist/pwa/worker/precache/precache.js +35 -0
- package/dist/pwa/worker/precache/precache.js.map +1 -0
- package/dist/pwa/worker/requests/index.d.ts +2 -0
- package/dist/pwa/worker/requests/index.js +2 -0
- package/dist/pwa/worker/requests/pages/index.d.ts +2 -0
- package/dist/pwa/worker/requests/pages/index.js +2 -0
- package/dist/pwa/worker/requests/pages/pages.d.ts +25 -0
- package/dist/pwa/worker/requests/pages/pages.d.ts.map +1 -0
- package/dist/pwa/worker/requests/pages/pages.js +74 -0
- package/dist/pwa/worker/requests/pages/pages.js.map +1 -0
- package/dist/pwa/worker/requests/requests.d.ts +17 -0
- package/dist/pwa/worker/requests/requests.d.ts.map +1 -0
- package/dist/pwa/worker/requests/requests.js +28 -0
- package/dist/pwa/worker/requests/requests.js.map +1 -0
- package/dist/pwa/worker/requests/strategies/cache-store.d.ts +19 -0
- package/dist/pwa/worker/requests/strategies/cache-store.d.ts.map +1 -0
- package/dist/pwa/worker/requests/strategies/cache-store.js +50 -0
- package/dist/pwa/worker/requests/strategies/cache-store.js.map +1 -0
- package/dist/pwa/worker/requests/strategies/index.d.ts +3 -0
- package/dist/pwa/worker/requests/strategies/index.js +3 -0
- package/dist/pwa/worker/requests/strategies/kinds.d.ts +11 -0
- package/dist/pwa/worker/requests/strategies/kinds.d.ts.map +1 -0
- package/dist/pwa/worker/requests/strategies/kinds.js +35 -0
- package/dist/pwa/worker/requests/strategies/kinds.js.map +1 -0
- package/dist/pwa/worker/requests/strategies/network-first.d.ts +18 -0
- package/dist/pwa/worker/requests/strategies/network-first.d.ts.map +1 -0
- package/dist/pwa/worker/requests/strategies/network-first.js +30 -0
- package/dist/pwa/worker/requests/strategies/network-first.js.map +1 -0
- package/dist/pwa/worker/requests/strategies/strategies.d.ts +16 -0
- package/dist/pwa/worker/requests/strategies/strategies.d.ts.map +1 -0
- package/dist/pwa/worker/requests/strategies/strategies.js +22 -0
- package/dist/pwa/worker/requests/strategies/strategies.js.map +1 -0
- package/dist/pwa/worker/worker.d.ts +23 -0
- package/dist/pwa/worker/worker.d.ts.map +1 -0
- package/dist/pwa/worker/worker.js +53 -0
- package/dist/pwa/worker/worker.js.map +1 -0
- package/dist/recipes/account-lost/account-lost.d.ts +24 -0
- package/dist/recipes/account-lost/account-lost.d.ts.map +1 -0
- package/dist/recipes/account-lost/account-lost.js +35 -0
- package/dist/recipes/account-lost/account-lost.js.map +1 -0
- package/dist/recipes/account-lost/index.d.ts +2 -0
- package/dist/recipes/account-lost/index.js +2 -0
- package/dist/recipes/account-switcher/account-switcher.d.ts +25 -0
- package/dist/recipes/account-switcher/account-switcher.d.ts.map +1 -0
- package/dist/recipes/account-switcher/account-switcher.js +124 -0
- package/dist/recipes/account-switcher/account-switcher.js.map +1 -0
- package/dist/recipes/account-switcher/index.d.ts +2 -0
- package/dist/recipes/account-switcher/index.js +2 -0
- package/dist/recipes/frame/app-shell.d.ts +37 -0
- package/dist/recipes/frame/app-shell.d.ts.map +1 -0
- package/dist/recipes/frame/app-shell.js +46 -0
- package/dist/recipes/frame/app-shell.js.map +1 -0
- package/dist/recipes/frame/frame/frame.d.ts +32 -0
- package/dist/recipes/frame/frame/frame.d.ts.map +1 -0
- package/dist/recipes/frame/frame/frame.js +135 -0
- package/dist/recipes/frame/frame/frame.js.map +1 -0
- package/dist/recipes/frame/frame/geometry.d.ts +22 -0
- package/dist/recipes/frame/frame/geometry.d.ts.map +1 -0
- package/dist/recipes/frame/frame/geometry.js +36 -0
- package/dist/recipes/frame/frame/geometry.js.map +1 -0
- package/dist/recipes/frame/frame/index.d.ts +2 -0
- package/dist/recipes/frame/frame/index.js +2 -0
- package/dist/recipes/frame/frame/motion.d.ts +20 -0
- package/dist/recipes/frame/frame/motion.d.ts.map +1 -0
- package/dist/recipes/frame/frame/motion.js +58 -0
- package/dist/recipes/frame/frame/motion.js.map +1 -0
- package/dist/recipes/frame/frame/state.d.ts +17 -0
- package/dist/recipes/frame/frame/state.d.ts.map +1 -0
- package/dist/recipes/frame/frame/state.js +27 -0
- package/dist/recipes/frame/frame/state.js.map +1 -0
- package/dist/recipes/frame/header.d.ts +18 -0
- package/dist/recipes/frame/header.d.ts.map +1 -0
- package/dist/recipes/frame/header.js +43 -0
- package/dist/recipes/frame/header.js.map +1 -0
- package/dist/recipes/frame/index.d.ts +4 -0
- package/dist/recipes/frame/index.js +4 -0
- package/dist/recipes/frame/sidebar/blocks.d.ts +31 -0
- package/dist/recipes/frame/sidebar/blocks.d.ts.map +1 -0
- package/dist/recipes/frame/sidebar/blocks.js +126 -0
- package/dist/recipes/frame/sidebar/blocks.js.map +1 -0
- package/dist/recipes/frame/sidebar/index.d.ts +4 -0
- package/dist/recipes/frame/sidebar/index.js +4 -0
- package/dist/recipes/frame/sidebar/nav.d.ts +22 -0
- package/dist/recipes/frame/sidebar/nav.d.ts.map +1 -0
- package/dist/recipes/frame/sidebar/nav.js +14 -0
- package/dist/recipes/frame/sidebar/nav.js.map +1 -0
- package/dist/recipes/frame/sidebar/resize-handle.d.ts +12 -0
- package/dist/recipes/frame/sidebar/resize-handle.d.ts.map +1 -0
- package/dist/recipes/frame/sidebar/resize-handle.js +90 -0
- package/dist/recipes/frame/sidebar/resize-handle.js.map +1 -0
- package/dist/recipes/frame/sidebar/sidebar.d.ts +24 -0
- package/dist/recipes/frame/sidebar/sidebar.d.ts.map +1 -0
- package/dist/recipes/frame/sidebar/sidebar.js +30 -0
- package/dist/recipes/frame/sidebar/sidebar.js.map +1 -0
- package/dist/recipes/frame/sidebar/width.d.ts +9 -0
- package/dist/recipes/frame/sidebar/width.d.ts.map +1 -0
- package/dist/recipes/frame/sidebar/width.js +22 -0
- package/dist/recipes/frame/sidebar/width.js.map +1 -0
- package/dist/recipes/gate-screens/gate-screens.d.ts +52 -0
- package/dist/recipes/gate-screens/gate-screens.d.ts.map +1 -0
- package/dist/recipes/gate-screens/gate-screens.js +192 -0
- package/dist/recipes/gate-screens/gate-screens.js.map +1 -0
- package/dist/recipes/gate-screens/index.d.ts +2 -0
- package/dist/recipes/gate-screens/index.js +2 -0
- package/dist/recipes/kabuki-devtools/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/index.js +2 -0
- package/dist/recipes/kabuki-devtools/ink/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/ink/index.js +2 -0
- package/dist/recipes/kabuki-devtools/ink/ink.d.ts +37 -0
- package/dist/recipes/kabuki-devtools/ink/ink.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/ink/ink.js +37 -0
- package/dist/recipes/kabuki-devtools/ink/ink.js.map +1 -0
- package/dist/recipes/kabuki-devtools/kabuki-devtools.d.ts +40 -0
- package/dist/recipes/kabuki-devtools/kabuki-devtools.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/kabuki-devtools.js +279 -0
- package/dist/recipes/kabuki-devtools/kabuki-devtools.js.map +1 -0
- package/dist/recipes/kabuki-devtools/map/beat/beat.d.ts +13 -0
- package/dist/recipes/kabuki-devtools/map/beat/beat.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/map/beat/beat.js +223 -0
- package/dist/recipes/kabuki-devtools/map/beat/beat.js.map +1 -0
- package/dist/recipes/kabuki-devtools/map/beat/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/map/beat/index.js +2 -0
- package/dist/recipes/kabuki-devtools/map/canvas/canvas.d.ts +29 -0
- package/dist/recipes/kabuki-devtools/map/canvas/canvas.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/map/canvas/canvas.js +221 -0
- package/dist/recipes/kabuki-devtools/map/canvas/canvas.js.map +1 -0
- package/dist/recipes/kabuki-devtools/map/canvas/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/map/canvas/index.js +2 -0
- package/dist/recipes/kabuki-devtools/map/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/map/index.js +2 -0
- package/dist/recipes/kabuki-devtools/map/link/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/map/link/index.js +2 -0
- package/dist/recipes/kabuki-devtools/map/link/link.d.ts +22 -0
- package/dist/recipes/kabuki-devtools/map/link/link.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/map/link/link.js +72 -0
- package/dist/recipes/kabuki-devtools/map/link/link.js.map +1 -0
- package/dist/recipes/kabuki-devtools/map/map.d.ts +26 -0
- package/dist/recipes/kabuki-devtools/map/map.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/map/map.js +362 -0
- package/dist/recipes/kabuki-devtools/map/map.js.map +1 -0
- package/dist/recipes/kabuki-devtools/map/node/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/map/node/index.js +2 -0
- package/dist/recipes/kabuki-devtools/map/node/node.d.ts +25 -0
- package/dist/recipes/kabuki-devtools/map/node/node.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/map/node/node.js +251 -0
- package/dist/recipes/kabuki-devtools/map/node/node.js.map +1 -0
- package/dist/recipes/kabuki-devtools/map/popup/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/map/popup/index.js +2 -0
- package/dist/recipes/kabuki-devtools/map/popup/popup.d.ts +12 -0
- package/dist/recipes/kabuki-devtools/map/popup/popup.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/map/popup/popup.js +72 -0
- package/dist/recipes/kabuki-devtools/map/popup/popup.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/beats.d.ts +36 -0
- package/dist/recipes/kabuki-devtools/scene/beats.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/beats.js +46 -0
- package/dist/recipes/kabuki-devtools/scene/beats.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/index.d.ts +5 -0
- package/dist/recipes/kabuki-devtools/scene/index.js +3 -0
- package/dist/recipes/kabuki-devtools/scene/layout/index.d.ts +3 -0
- package/dist/recipes/kabuki-devtools/scene/layout/index.js +2 -0
- package/dist/recipes/kabuki-devtools/scene/layout/layout.d.ts +6 -0
- package/dist/recipes/kabuki-devtools/scene/layout/layout.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/layout.js +8 -0
- package/dist/recipes/kabuki-devtools/scene/layout/layout.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/outline.d.ts +5 -0
- package/dist/recipes/kabuki-devtools/scene/layout/outline.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/outline.js +84 -0
- package/dist/recipes/kabuki-devtools/scene/layout/outline.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/shapes.d.ts +57 -0
- package/dist/recipes/kabuki-devtools/scene/layout/shapes.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/shapes.js +38 -0
- package/dist/recipes/kabuki-devtools/scene/layout/shapes.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/tree.d.ts +5 -0
- package/dist/recipes/kabuki-devtools/scene/layout/tree.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/layout/tree.js +146 -0
- package/dist/recipes/kabuki-devtools/scene/layout/tree.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/nodes.d.ts +67 -0
- package/dist/recipes/kabuki-devtools/scene/nodes.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/nodes.js +39 -0
- package/dist/recipes/kabuki-devtools/scene/nodes.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/scene.d.ts +78 -0
- package/dist/recipes/kabuki-devtools/scene/scene.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/scene.js +128 -0
- package/dist/recipes/kabuki-devtools/scene/scene.js.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/tree.d.ts +20 -0
- package/dist/recipes/kabuki-devtools/scene/tree.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/scene/tree.js +85 -0
- package/dist/recipes/kabuki-devtools/scene/tree.js.map +1 -0
- package/dist/recipes/kabuki-devtools/sheet/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/sheet/index.js +2 -0
- package/dist/recipes/kabuki-devtools/sheet/sheet.d.ts +33 -0
- package/dist/recipes/kabuki-devtools/sheet/sheet.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/sheet/sheet.js +129 -0
- package/dist/recipes/kabuki-devtools/sheet/sheet.js.map +1 -0
- package/dist/recipes/kabuki-devtools/timeline/index.d.ts +2 -0
- package/dist/recipes/kabuki-devtools/timeline/index.js +2 -0
- package/dist/recipes/kabuki-devtools/timeline/timeline.d.ts +25 -0
- package/dist/recipes/kabuki-devtools/timeline/timeline.d.ts.map +1 -0
- package/dist/recipes/kabuki-devtools/timeline/timeline.js +122 -0
- package/dist/recipes/kabuki-devtools/timeline/timeline.js.map +1 -0
- package/dist/recipes/key-bindings/index.d.ts +2 -0
- package/dist/recipes/key-bindings/index.js +2 -0
- package/dist/recipes/key-bindings/key-bindings.d.ts +19 -0
- package/dist/recipes/key-bindings/key-bindings.d.ts.map +1 -0
- package/dist/recipes/key-bindings/key-bindings.js +61 -0
- package/dist/recipes/key-bindings/key-bindings.js.map +1 -0
- package/dist/recipes/local-sign-in/index.d.ts +2 -0
- package/dist/recipes/local-sign-in/index.js +2 -0
- package/dist/recipes/local-sign-in/local-sign-in.d.ts +18 -0
- package/dist/recipes/local-sign-in/local-sign-in.d.ts.map +1 -0
- package/dist/recipes/local-sign-in/local-sign-in.js +109 -0
- package/dist/recipes/local-sign-in/local-sign-in.js.map +1 -0
- package/dist/recipes/parts/email-privacy/email-privacy.d.ts +24 -0
- package/dist/recipes/parts/email-privacy/email-privacy.d.ts.map +1 -0
- package/dist/recipes/parts/email-privacy/email-privacy.js +35 -0
- package/dist/recipes/parts/email-privacy/email-privacy.js.map +1 -0
- package/dist/recipes/parts/email-privacy/index.d.ts +2 -0
- package/dist/recipes/parts/email-privacy/index.js +2 -0
- package/dist/recipes/swipe-row/index.d.ts +2 -0
- package/dist/recipes/swipe-row/index.js +2 -0
- package/dist/recipes/swipe-row/swipe-row.d.ts +16 -0
- package/dist/recipes/swipe-row/swipe-row.d.ts.map +1 -0
- package/dist/recipes/swipe-row/swipe-row.js +96 -0
- package/dist/recipes/swipe-row/swipe-row.js.map +1 -0
- package/dist/recipes/thumb-picker/choice.d.ts +18 -0
- package/dist/recipes/thumb-picker/choice.d.ts.map +1 -0
- package/dist/recipes/thumb-picker/choice.js +0 -0
- package/dist/recipes/thumb-picker/index.d.ts +3 -0
- package/dist/recipes/thumb-picker/index.js +2 -0
- package/dist/recipes/thumb-picker/list.d.ts +18 -0
- package/dist/recipes/thumb-picker/list.d.ts.map +1 -0
- package/dist/recipes/thumb-picker/list.js +48 -0
- package/dist/recipes/thumb-picker/list.js.map +1 -0
- package/dist/recipes/thumb-picker/lock.d.ts +18 -0
- package/dist/recipes/thumb-picker/lock.d.ts.map +1 -0
- package/dist/recipes/thumb-picker/lock.js +71 -0
- package/dist/recipes/thumb-picker/lock.js.map +1 -0
- package/dist/recipes/thumb-picker/menu.d.ts +19 -0
- package/dist/recipes/thumb-picker/menu.d.ts.map +1 -0
- package/dist/recipes/thumb-picker/menu.js +127 -0
- package/dist/recipes/thumb-picker/menu.js.map +1 -0
- package/dist/recipes/thumb-picker/thumb-picker.d.ts +31 -0
- package/dist/recipes/thumb-picker/thumb-picker.d.ts.map +1 -0
- package/dist/recipes/thumb-picker/thumb-picker.js +65 -0
- package/dist/recipes/thumb-picker/thumb-picker.js.map +1 -0
- package/dist/server/index.d.ts +7 -0
- package/dist/server/index.js +5 -0
- package/dist/server/live/index.d.ts +2 -0
- package/dist/server/live/index.js +2 -0
- package/dist/server/live/live.d.ts +56 -0
- package/dist/server/live/live.d.ts.map +1 -0
- package/dist/server/live/live.js +98 -0
- package/dist/server/live/live.js.map +1 -0
- package/dist/server/serve/index.d.ts +2 -0
- package/dist/server/serve/index.js +2 -0
- package/dist/server/serve/serve.d.ts +48 -0
- package/dist/server/serve/serve.d.ts.map +1 -0
- package/dist/server/serve/serve.js +47 -0
- package/dist/server/serve/serve.js.map +1 -0
- package/dist/server/stage/index.d.ts +2 -0
- package/dist/server/stage/index.js +2 -0
- package/dist/server/stage/stage.d.ts +14 -0
- package/dist/server/stage/stage.d.ts.map +1 -0
- package/dist/server/stage/stage.js +28 -0
- package/dist/server/stage/stage.js.map +1 -0
- package/dist/server/worker/index.d.ts +2 -0
- package/dist/server/worker/index.js +2 -0
- package/dist/server/worker/worker.d.ts +19 -0
- package/dist/server/worker/worker.d.ts.map +1 -0
- package/dist/server/worker/worker.js +18 -0
- package/dist/server/worker/worker.js.map +1 -0
- package/dist/theme/cookie.d.ts +6 -0
- package/dist/theme/cookie.d.ts.map +1 -0
- package/dist/theme/cookie.js +21 -0
- package/dist/theme/cookie.js.map +1 -0
- package/dist/theme/css/font-inter.css +2 -0
- package/dist/theme/css/global.css +62 -0
- package/dist/theme/css/shiki.css +71 -0
- package/dist/theme/css/sources.css +6 -0
- package/dist/theme/css/theme.css +170 -0
- package/dist/theme/css/typography.css +1 -0
- package/dist/theme/document.d.ts +6 -0
- package/dist/theme/document.d.ts.map +1 -0
- package/dist/theme/document.js +26 -0
- package/dist/theme/document.js.map +1 -0
- package/dist/theme/index.d.ts +4 -0
- package/dist/theme/index.js +4 -0
- package/dist/theme/model.d.ts +9 -0
- package/dist/theme/model.d.ts.map +1 -0
- package/dist/theme/model.js +13 -0
- package/dist/theme/model.js.map +1 -0
- package/dist/theme/status-bar.d.ts +10 -0
- package/dist/theme/status-bar.d.ts.map +1 -0
- package/dist/theme/status-bar.js +19 -0
- package/dist/theme/status-bar.js.map +1 -0
- package/dist/theme/store.d.ts +6 -0
- package/dist/theme/store.d.ts.map +1 -0
- package/dist/theme/store.js +45 -0
- package/dist/theme/store.js.map +1 -0
- package/dist/theme/theme.d.ts +22 -0
- package/dist/theme/theme.d.ts.map +1 -0
- package/dist/theme/theme.js +37 -0
- package/dist/theme/theme.js.map +1 -0
- package/package.json +255 -3
- package/src/app/apis/apis.ts +109 -0
- package/src/app/apis/index.ts +13 -0
- package/src/app/app.tsx +232 -0
- package/src/app/assemble/assemble.tsx +339 -0
- package/src/app/assemble/index.ts +7 -0
- package/src/app/assemble/public.ts +98 -0
- package/src/app/gate/domain/check.ts +76 -0
- package/src/app/gate/domain/index.ts +3 -0
- package/src/app/gate/domain/machine.ts +439 -0
- package/src/app/gate/domain/services.ts +46 -0
- package/src/app/gate/domain/types.ts +36 -0
- package/src/app/gate/gate.ts +501 -0
- package/src/app/gate/index.ts +3 -0
- package/src/app/gate/memory.ts +56 -0
- package/src/app/gate/react.tsx +139 -0
- package/src/app/host/host.ts +166 -0
- package/src/app/host/index.ts +10 -0
- package/src/app/index.ts +10 -0
- package/src/app/session/define.ts +75 -0
- package/src/app/session/index.ts +17 -0
- package/src/app/session/keeper.ts +34 -0
- package/src/app/session/open.ts +207 -0
- package/src/app/session/react.tsx +38 -0
- package/src/app/session/status.ts +46 -0
- package/src/app/web-host.ts +104 -0
- package/src/client/index.ts +9 -0
- package/src/client/root/index.ts +7 -0
- package/src/client/root/root.tsx +149 -0
- package/src/client/server.ts +3 -0
- package/src/client/theme/index.ts +1 -0
- package/src/client/theme/tanstack-start.ts +5 -0
- package/src/components/hooks/use-element-width.ts +24 -0
- package/src/components/hooks/use-mobile.ts +21 -0
- package/src/components/hooks/use-scroll.ts +292 -0
- package/src/components/lib/lucide.ts +1 -0
- package/src/components/lib/motion.ts +1 -0
- package/src/components/lib/scrollStyles.ts +44 -0
- package/src/components/lib/shadow-dom.tsx +86 -0
- package/src/components/lib/utils.ts +6 -0
- package/src/components/ui/accordion.tsx +71 -0
- package/src/components/ui/alert-dialog.tsx +185 -0
- package/src/components/ui/alert.tsx +75 -0
- package/src/components/ui/aspect-ratio.tsx +22 -0
- package/src/components/ui/attachment.tsx +207 -0
- package/src/components/ui/avatar.tsx +106 -0
- package/src/components/ui/badge.tsx +51 -0
- package/src/components/ui/breadcrumb.tsx +124 -0
- package/src/components/ui/bubble.tsx +127 -0
- package/src/components/ui/button-group.tsx +87 -0
- package/src/components/ui/button.tsx +57 -0
- package/src/components/ui/calendar.tsx +221 -0
- package/src/components/ui/card.tsx +102 -0
- package/src/components/ui/carousel.tsx +240 -0
- package/src/components/ui/chart.tsx +370 -0
- package/src/components/ui/checkbox.tsx +28 -0
- package/src/components/ui/collapsible.tsx +19 -0
- package/src/components/ui/combobox.tsx +295 -0
- package/src/components/ui/command.tsx +196 -0
- package/src/components/ui/context-menu.tsx +270 -0
- package/src/components/ui/dialog.tsx +157 -0
- package/src/components/ui/direction.tsx +4 -0
- package/src/components/ui/drawer.tsx +224 -0
- package/src/components/ui/dropdown-menu.tsx +275 -0
- package/src/components/ui/empty.tsx +103 -0
- package/src/components/ui/field.tsx +236 -0
- package/src/components/ui/file-tree.tsx +619 -0
- package/src/components/ui/google-button.tsx +194 -0
- package/src/components/ui/hover-card.tsx +50 -0
- package/src/components/ui/input-group.tsx +158 -0
- package/src/components/ui/input-otp.tsx +84 -0
- package/src/components/ui/input.tsx +19 -0
- package/src/components/ui/item.tsx +201 -0
- package/src/components/ui/kbd.tsx +26 -0
- package/src/components/ui/label.tsx +19 -0
- package/src/components/ui/marker.tsx +70 -0
- package/src/components/ui/menubar.tsx +280 -0
- package/src/components/ui/message-scroller.tsx +129 -0
- package/src/components/ui/message.tsx +91 -0
- package/src/components/ui/native-select.tsx +60 -0
- package/src/components/ui/navigation-menu.tsx +167 -0
- package/src/components/ui/pagination.tsx +130 -0
- package/src/components/ui/popover.tsx +87 -0
- package/src/components/ui/progress.tsx +82 -0
- package/src/components/ui/questionnaire.tsx +324 -0
- package/src/components/ui/radio-group.tsx +35 -0
- package/src/components/ui/resizable.tsx +49 -0
- package/src/components/ui/scroll-area.tsx +60 -0
- package/src/components/ui/select.tsx +200 -0
- package/src/components/ui/separator.tsx +22 -0
- package/src/components/ui/sheet.tsx +133 -0
- package/src/components/ui/skeleton.tsx +13 -0
- package/src/components/ui/slider.tsx +51 -0
- package/src/components/ui/sonner.tsx +43 -0
- package/src/components/ui/spinner.tsx +10 -0
- package/src/components/ui/switch.tsx +31 -0
- package/src/components/ui/table.tsx +113 -0
- package/src/components/ui/tabs.tsx +81 -0
- package/src/components/ui/textarea.tsx +17 -0
- package/src/components/ui/toast.tsx +234 -0
- package/src/components/ui/toggle-group.tsx +87 -0
- package/src/components/ui/toggle.tsx +42 -0
- package/src/components/ui/tooltip.tsx +65 -0
- package/src/components/viewers/diff-viewer/align.ts +83 -0
- package/src/components/viewers/diff-viewer/collapse.ts +102 -0
- package/src/components/viewers/diff-viewer/diff-viewer.tsx +605 -0
- package/src/components/viewers/diff-viewer/index.ts +8 -0
- package/src/components/viewers/diff-viewer/render-model.ts +123 -0
- package/src/components/viewers/diff-viewer/sync-rows.ts +41 -0
- package/src/components/viewers/file-tree/expand.ts +58 -0
- package/src/components/viewers/file-tree/file-tree.tsx +199 -0
- package/src/components/viewers/file-tree/index.ts +2 -0
- package/src/components/viewers/git-changes/git-changes.tsx +287 -0
- package/src/components/viewers/git-changes/index.ts +11 -0
- package/src/components/viewers/json/index.ts +3 -0
- package/src/components/viewers/json/json-editor.tsx +94 -0
- package/src/components/viewers/json/json-tree.tsx +110 -0
- package/src/components/viewers/json/json-viewer.tsx +61 -0
- package/src/components/viewers/markdown-viewer/index.ts +1 -0
- package/src/components/viewers/markdown-viewer/markdown-viewer.tsx +83 -0
- package/src/components/viewers/source-explorer/index.ts +11 -0
- package/src/components/viewers/source-explorer/initial-selection.ts +21 -0
- package/src/components/viewers/source-explorer/snapshot-tree.ts +39 -0
- package/src/components/viewers/source-explorer/source-explorer.tsx +598 -0
- package/src/components/viewers/source-viewer/index.ts +7 -0
- package/src/components/viewers/source-viewer/source-viewer.tsx +437 -0
- package/src/cosmos.decorator.tsx +38 -0
- package/src/css.d.ts +1 -0
- package/src/define/index.ts +26 -0
- package/src/feedback/index.ts +1 -0
- package/src/feedback/sound.ts +167 -0
- package/src/form/components/submit-button.tsx +52 -0
- package/src/form/context.ts +8 -0
- package/src/form/create-form-hook.ts +50 -0
- package/src/form/fields/date-picker-field.tsx +125 -0
- package/src/form/fields/select-field.tsx +110 -0
- package/src/form/fields/switch-field.tsx +72 -0
- package/src/form/fields/text-field.tsx +82 -0
- package/src/form/fields/textarea-field.tsx +82 -0
- package/src/form/index.ts +56 -0
- package/src/form/types.ts +76 -0
- package/src/input/device/device.ts +83 -0
- package/src/input/device/index.ts +1 -0
- package/src/input/gesture/index.ts +26 -0
- package/src/input/gesture/patterns/index.ts +3 -0
- package/src/input/gesture/patterns/pull-to-refresh/index.ts +6 -0
- package/src/input/gesture/patterns/pull-to-refresh/use-pull-to-refresh.ts +101 -0
- package/src/input/gesture/patterns/sidebar/index.ts +2 -0
- package/src/input/gesture/patterns/sidebar/use-sidebar.ts +201 -0
- package/src/input/gesture/recognizers/index.ts +12 -0
- package/src/input/gesture/recognizers/swipe/index.ts +12 -0
- package/src/input/gesture/recognizers/swipe/use-swipe.ts +224 -0
- package/src/input/gesture/zones/index.ts +11 -0
- package/src/input/gesture/zones/touch-input/index.ts +10 -0
- package/src/input/gesture/zones/touch-input/native-scroll.ts +74 -0
- package/src/input/gesture/zones/touch-input/touch-input.ts +322 -0
- package/src/input/gesture/zones/zone/index.ts +11 -0
- package/src/input/gesture/zones/zone/motion-pointers.ts +74 -0
- package/src/input/gesture/zones/zone/zone.tsx +291 -0
- package/src/input/index.ts +4 -0
- package/src/pwa/browser/dom-events.ts +17 -0
- package/src/pwa/browser/subscription-ref.ts +29 -0
- package/src/pwa/client/client.ts +43 -0
- package/src/pwa/client/commands/commands.ts +28 -0
- package/src/pwa/client/commands/index.ts +1 -0
- package/src/pwa/client/index.ts +1 -0
- package/src/pwa/client/registration.ts +63 -0
- package/src/pwa/client/runtime-cache.ts +24 -0
- package/src/pwa/client/status/index.ts +1 -0
- package/src/pwa/client/status/status.ts +155 -0
- package/src/pwa/extras/display-mode/display-mode.ts +64 -0
- package/src/pwa/extras/display-mode/index.ts +6 -0
- package/src/pwa/extras/index.ts +15 -0
- package/src/pwa/extras/install/index.ts +4 -0
- package/src/pwa/extras/install/install-content.tsx +45 -0
- package/src/pwa/extras/install/install-dismissal.ts +20 -0
- package/src/pwa/extras/install/install-prompt.tsx +93 -0
- package/src/pwa/extras/install/install.ts +134 -0
- package/src/pwa/extras/install/ios.ts +13 -0
- package/src/pwa/extras/install/media-query.ts +18 -0
- package/src/pwa/extras/lazy-service/index.ts +1 -0
- package/src/pwa/extras/lazy-service/lazy-service.ts +38 -0
- package/src/pwa/extras/online/index.ts +2 -0
- package/src/pwa/extras/online/offline-indicator.tsx +26 -0
- package/src/pwa/extras/online/online.ts +35 -0
- package/src/pwa/extras/storage/index.ts +1 -0
- package/src/pwa/extras/storage/storage.ts +101 -0
- package/src/pwa/index.ts +5 -0
- package/src/pwa/react/head.ts +69 -0
- package/src/pwa/react/index.ts +3 -0
- package/src/pwa/react/react.tsx +98 -0
- package/src/pwa/react/update-prompt.tsx +26 -0
- package/src/pwa/react/update-toast.ts +57 -0
- package/src/pwa/root/index.ts +1 -0
- package/src/pwa/root/root.tsx +39 -0
- package/src/pwa/rpc/client/client.ts +105 -0
- package/src/pwa/rpc/client/index.ts +1 -0
- package/src/pwa/rpc/client/page-environment.ts +88 -0
- package/src/pwa/rpc/client/platform.ts +213 -0
- package/src/pwa/rpc/client/version-skew.ts +71 -0
- package/src/pwa/rpc/handshake/handshake.ts +125 -0
- package/src/pwa/rpc/handshake/index.ts +11 -0
- package/src/pwa/rpc/worker/connections.ts +62 -0
- package/src/pwa/rpc/worker/index.ts +1 -0
- package/src/pwa/rpc/worker/keep-alive.ts +26 -0
- package/src/pwa/rpc/worker/runner-platform.ts +200 -0
- package/src/pwa/rpc/worker/worker.ts +44 -0
- package/src/pwa/shared/build/build.ts +78 -0
- package/src/pwa/shared/build/canonical-json.ts +11 -0
- package/src/pwa/shared/build/fnv1a.ts +13 -0
- package/src/pwa/shared/build/index.ts +19 -0
- package/src/pwa/shared/commands/commands.ts +60 -0
- package/src/pwa/shared/commands/index.ts +11 -0
- package/src/pwa/shared/config/config.ts +185 -0
- package/src/pwa/shared/config/index.ts +11 -0
- package/src/pwa/shared/config/presets.ts +45 -0
- package/src/pwa/shared/manifest/index.ts +5 -0
- package/src/pwa/shared/manifest/manifest.ts +102 -0
- package/src/pwa/shared/strategy/index.ts +8 -0
- package/src/pwa/shared/strategy/pattern.ts +20 -0
- package/src/pwa/shared/strategy/strategy.ts +107 -0
- package/src/pwa/shared/worker-host/index.ts +1 -0
- package/src/pwa/shared/worker-host/worker-host.ts +22 -0
- package/src/pwa/splash/devices.ts +28 -0
- package/src/pwa/splash/index.ts +1 -0
- package/src/pwa/splash/splash.ts +44 -0
- package/src/pwa/virtual.d.ts +13 -0
- package/src/pwa/vite/build/build-plugin.ts +153 -0
- package/src/pwa/vite/build/build-state.ts +17 -0
- package/src/pwa/vite/build/headers.ts +34 -0
- package/src/pwa/vite/build/index.ts +2 -0
- package/src/pwa/vite/build/output-files.ts +49 -0
- package/src/pwa/vite/build/start-setup.ts +50 -0
- package/src/pwa/vite/client-module/build-version.ts +43 -0
- package/src/pwa/vite/client-module/client-info.ts +58 -0
- package/src/pwa/vite/client-module/client-module.ts +67 -0
- package/src/pwa/vite/client-module/index.ts +1 -0
- package/src/pwa/vite/dev/dev-plugin.ts +72 -0
- package/src/pwa/vite/dev/index.ts +1 -0
- package/src/pwa/vite/index.ts +1 -0
- package/src/pwa/vite/precache/asset-kind.ts +25 -0
- package/src/pwa/vite/precache/index.ts +6 -0
- package/src/pwa/vite/precache/precache.ts +97 -0
- package/src/pwa/vite/precache/revision.ts +5 -0
- package/src/pwa/vite/precache/url-path.ts +21 -0
- package/src/pwa/vite/vite.ts +25 -0
- package/src/pwa/vite/worker-bundle/build-module.ts +28 -0
- package/src/pwa/vite/worker-bundle/entry.ts +29 -0
- package/src/pwa/vite/worker-bundle/index.ts +1 -0
- package/src/pwa/vite/worker-bundle/kill-switch.ts +23 -0
- package/src/pwa/vite/worker-bundle/worker-bundle.ts +71 -0
- package/src/pwa/worker/commands/commands.ts +31 -0
- package/src/pwa/worker/commands/index.ts +1 -0
- package/src/pwa/worker/global-scope/global-scope.ts +99 -0
- package/src/pwa/worker/global-scope/index.ts +9 -0
- package/src/pwa/worker/index.ts +1 -0
- package/src/pwa/worker/lifecycle/index.ts +1 -0
- package/src/pwa/worker/lifecycle/lifecycle.ts +52 -0
- package/src/pwa/worker/messages/index.ts +1 -0
- package/src/pwa/worker/messages/messages.ts +67 -0
- package/src/pwa/worker/precache/download.ts +38 -0
- package/src/pwa/worker/precache/index.ts +7 -0
- package/src/pwa/worker/precache/precache.ts +72 -0
- package/src/pwa/worker/requests/index.ts +1 -0
- package/src/pwa/worker/requests/pages/index.ts +1 -0
- package/src/pwa/worker/requests/pages/pages.ts +116 -0
- package/src/pwa/worker/requests/requests.ts +39 -0
- package/src/pwa/worker/requests/strategies/cache-store.ts +82 -0
- package/src/pwa/worker/requests/strategies/index.ts +2 -0
- package/src/pwa/worker/requests/strategies/kinds.ts +63 -0
- package/src/pwa/worker/requests/strategies/network-first.ts +40 -0
- package/src/pwa/worker/requests/strategies/strategies.ts +40 -0
- package/src/pwa/worker/worker.ts +99 -0
- package/src/recipes/account-lost/account-lost.tsx +66 -0
- package/src/recipes/account-lost/index.ts +5 -0
- package/src/recipes/account-switcher/account-switcher.tsx +199 -0
- package/src/recipes/account-switcher/index.ts +5 -0
- package/src/recipes/frame/app-shell.tsx +74 -0
- package/src/recipes/frame/frame/frame.tsx +204 -0
- package/src/recipes/frame/frame/geometry.ts +60 -0
- package/src/recipes/frame/frame/index.ts +1 -0
- package/src/recipes/frame/frame/motion.ts +85 -0
- package/src/recipes/frame/frame/state.ts +29 -0
- package/src/recipes/frame/header.tsx +54 -0
- package/src/recipes/frame/index.ts +16 -0
- package/src/recipes/frame/sidebar/blocks.tsx +214 -0
- package/src/recipes/frame/sidebar/index.ts +15 -0
- package/src/recipes/frame/sidebar/nav.tsx +46 -0
- package/src/recipes/frame/sidebar/resize-handle.tsx +94 -0
- package/src/recipes/frame/sidebar/sidebar.tsx +44 -0
- package/src/recipes/frame/sidebar/width.ts +23 -0
- package/src/recipes/gate-screens/gate-screens.tsx +213 -0
- package/src/recipes/gate-screens/index.ts +5 -0
- package/src/recipes/kabuki-devtools/index.ts +1 -0
- package/src/recipes/kabuki-devtools/ink/index.ts +2 -0
- package/src/recipes/kabuki-devtools/ink/ink.ts +53 -0
- package/src/recipes/kabuki-devtools/kabuki-devtools.tsx +419 -0
- package/src/recipes/kabuki-devtools/map/beat/beat.tsx +243 -0
- package/src/recipes/kabuki-devtools/map/beat/index.ts +1 -0
- package/src/recipes/kabuki-devtools/map/canvas/canvas.tsx +320 -0
- package/src/recipes/kabuki-devtools/map/canvas/index.ts +2 -0
- package/src/recipes/kabuki-devtools/map/index.ts +2 -0
- package/src/recipes/kabuki-devtools/map/link/index.ts +1 -0
- package/src/recipes/kabuki-devtools/map/link/link.tsx +107 -0
- package/src/recipes/kabuki-devtools/map/map.tsx +474 -0
- package/src/recipes/kabuki-devtools/map/node/index.ts +2 -0
- package/src/recipes/kabuki-devtools/map/node/node.tsx +437 -0
- package/src/recipes/kabuki-devtools/map/popup/index.ts +1 -0
- package/src/recipes/kabuki-devtools/map/popup/popup.tsx +73 -0
- package/src/recipes/kabuki-devtools/scene/beats.ts +110 -0
- package/src/recipes/kabuki-devtools/scene/index.ts +11 -0
- package/src/recipes/kabuki-devtools/scene/layout/index.ts +3 -0
- package/src/recipes/kabuki-devtools/scene/layout/layout.ts +14 -0
- package/src/recipes/kabuki-devtools/scene/layout/outline.ts +80 -0
- package/src/recipes/kabuki-devtools/scene/layout/shapes.ts +93 -0
- package/src/recipes/kabuki-devtools/scene/layout/tree.ts +181 -0
- package/src/recipes/kabuki-devtools/scene/nodes.ts +116 -0
- package/src/recipes/kabuki-devtools/scene/scene.ts +268 -0
- package/src/recipes/kabuki-devtools/scene/tree.ts +191 -0
- package/src/recipes/kabuki-devtools/sheet/index.ts +1 -0
- package/src/recipes/kabuki-devtools/sheet/sheet.tsx +193 -0
- package/src/recipes/kabuki-devtools/timeline/index.ts +2 -0
- package/src/recipes/kabuki-devtools/timeline/timeline.tsx +206 -0
- package/src/recipes/key-bindings/index.ts +1 -0
- package/src/recipes/key-bindings/key-bindings.tsx +80 -0
- package/src/recipes/local-sign-in/index.ts +5 -0
- package/src/recipes/local-sign-in/local-sign-in.tsx +148 -0
- package/src/recipes/parts/email-privacy/email-privacy.tsx +52 -0
- package/src/recipes/parts/email-privacy/index.ts +1 -0
- package/src/recipes/swipe-row/index.ts +1 -0
- package/src/recipes/swipe-row/swipe-row.tsx +97 -0
- package/src/recipes/thumb-picker/choice.ts +14 -0
- package/src/recipes/thumb-picker/index.ts +1 -0
- package/src/recipes/thumb-picker/list.tsx +73 -0
- package/src/recipes/thumb-picker/lock.ts +86 -0
- package/src/recipes/thumb-picker/menu.tsx +105 -0
- package/src/recipes/thumb-picker/thumb-picker.tsx +84 -0
- package/src/server/index.ts +21 -0
- package/src/server/live/index.ts +9 -0
- package/src/server/live/live.ts +219 -0
- package/src/server/serve/index.ts +6 -0
- package/src/server/serve/serve.ts +115 -0
- package/src/server/stage/index.ts +6 -0
- package/src/server/stage/stage.ts +43 -0
- package/src/server/worker/index.ts +1 -0
- package/src/server/worker/worker.ts +26 -0
- package/src/theme/cookie.ts +22 -0
- package/src/theme/css/font-inter.css +2 -0
- package/src/theme/css/global.css +62 -0
- package/src/theme/css/shiki.css +71 -0
- package/src/theme/css/sources.css +6 -0
- package/src/theme/css/theme.css +170 -0
- package/src/theme/css/typography.css +1 -0
- package/src/theme/document.ts +37 -0
- package/src/theme/index.ts +3 -0
- package/src/theme/model.ts +12 -0
- package/src/theme/status-bar.ts +28 -0
- package/src/theme/store.ts +66 -0
- package/src/theme/theme.ts +45 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-swipe.d.ts","names":["Rules","Direction"],"sources":["../../../../../src/input/gesture/recognizers/swipe/use-swipe.ts"],"mappings":";;;YAMY,aAAaA,QAAM;YACnB,OAAOA,QAAM;YACb,UAAUA,QAAM;YAChB,cAAcA,QAAM;YACpB,eAAeA,QAAM;YAQrB;;WAED;WACA,WAAWC;;WAEX,UAAU;;;;;;WAMV,OAAO;;WAEP,SAAS;;WAET;;WAEA,YAAY,SAAS;;WAErB,YAAY,QAAQ,aAAa,UAAU;;;;;;YAO1C;YAEA;;WAED,QAAQ;;WAER,UAAU;;WAEV,UAAU;;WAEV,YAAY;WACZ,OAAO;;;;;;;;;wBA+BF,SAAS,SAAS,eAAe"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { useGesture } from "../../zones/zone/zone.js";
|
|
2
|
+
import { useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
3
|
+
import { useMotionValue } from "motion/react";
|
|
4
|
+
import { Swipe } from "@kestack/use-gesture";
|
|
5
|
+
//#region src/input/gesture/recognizers/swipe/use-swipe.ts
|
|
6
|
+
const down = (pointers) => [...pointers.values()].filter((pointer) => pointer.end === void 0).map((pointer) => ({
|
|
7
|
+
dx: pointer.dx.get(),
|
|
8
|
+
dy: pointer.dy.get()
|
|
9
|
+
}));
|
|
10
|
+
const TICK = 16;
|
|
11
|
+
const useLatest = (value) => {
|
|
12
|
+
const ref = useRef(value);
|
|
13
|
+
useLayoutEffect(() => {
|
|
14
|
+
ref.current = value;
|
|
15
|
+
});
|
|
16
|
+
return ref;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* The Swipe Recognizer: fingers moving one way. It wants its own Direction,
|
|
20
|
+
* or, with `from`, captures touches landing at that edge. It locks once the
|
|
21
|
+
* touch's Direction is read, follows the fingers while Tracking, and
|
|
22
|
+
* decides at the first finger lifting, so a two-finger Swipe is judged as
|
|
23
|
+
* its fingers leave.
|
|
24
|
+
*/
|
|
25
|
+
function useSwipe(options) {
|
|
26
|
+
const latest = useLatest(options);
|
|
27
|
+
const offset = useMotionValue(0);
|
|
28
|
+
const progress = useMotionValue(0);
|
|
29
|
+
const velocity = useMotionValue(0);
|
|
30
|
+
const willCommit = useMotionValue(false);
|
|
31
|
+
const [state, setState] = useState("idle");
|
|
32
|
+
const run = useRef(void 0);
|
|
33
|
+
const rule = () => latest.current.commit ?? Swipe.DEFAULT_COMMIT;
|
|
34
|
+
const stop = (current) => {
|
|
35
|
+
current.phase = "done";
|
|
36
|
+
clearInterval(current.timer);
|
|
37
|
+
velocity.set(0);
|
|
38
|
+
willCommit.set(false);
|
|
39
|
+
setState("idle");
|
|
40
|
+
};
|
|
41
|
+
const cancel = (current, reason, at) => {
|
|
42
|
+
stop(current);
|
|
43
|
+
latest.current.onCancel?.(reason, at);
|
|
44
|
+
};
|
|
45
|
+
const measure = (current) => {
|
|
46
|
+
const speed = current.velocity.at(performance.now(), offset.get());
|
|
47
|
+
velocity.set(speed);
|
|
48
|
+
willCommit.set(Swipe.commits(rule(), offset.get(), speed));
|
|
49
|
+
};
|
|
50
|
+
const step = (current) => {
|
|
51
|
+
const { direction, fingers = 1 } = latest.current;
|
|
52
|
+
const live = down(current.pointers);
|
|
53
|
+
const move = Swipe.movement(live);
|
|
54
|
+
if (current.phase === "possible") {
|
|
55
|
+
if (!current.locked) return;
|
|
56
|
+
if (!Swipe.fingersMatch(fingers, live.length)) return cancel(current, "fingers");
|
|
57
|
+
current.phase = "tracking";
|
|
58
|
+
current.timer = setInterval(() => measure(current), TICK);
|
|
59
|
+
setState("tracking");
|
|
60
|
+
latest.current.onStart?.();
|
|
61
|
+
}
|
|
62
|
+
if (current.phase !== "tracking") return;
|
|
63
|
+
const value = Math.max(0, Swipe.along(direction, move));
|
|
64
|
+
const { distance } = rule();
|
|
65
|
+
offset.set(value);
|
|
66
|
+
progress.set(distance === void 0 ? 0 : value / distance);
|
|
67
|
+
current.velocity.add(performance.now(), value);
|
|
68
|
+
measure(current);
|
|
69
|
+
};
|
|
70
|
+
const end = (current) => {
|
|
71
|
+
for (const unsubscribe of current.unsubscribes) unsubscribe();
|
|
72
|
+
clearInterval(current.timer);
|
|
73
|
+
if (run.current === current) run.current = void 0;
|
|
74
|
+
};
|
|
75
|
+
useEffect(() => () => run.current && end(run.current), []);
|
|
76
|
+
useGesture({
|
|
77
|
+
enabled: options.enabled !== false,
|
|
78
|
+
directions: options.from === void 0 ? [options.direction] : [],
|
|
79
|
+
captures: (point) => {
|
|
80
|
+
const { from } = latest.current;
|
|
81
|
+
const viewport = {
|
|
82
|
+
width: innerWidth,
|
|
83
|
+
height: innerHeight
|
|
84
|
+
};
|
|
85
|
+
return from !== void 0 && Swipe.startsFrom(from, point, viewport);
|
|
86
|
+
},
|
|
87
|
+
onStart: (pointers) => {
|
|
88
|
+
const [first] = pointers.values();
|
|
89
|
+
const viewport = {
|
|
90
|
+
width: innerWidth,
|
|
91
|
+
height: innerHeight
|
|
92
|
+
};
|
|
93
|
+
if (first === void 0 || !Swipe.startsFrom(latest.current.from, first.start, viewport)) return;
|
|
94
|
+
offset.set(0);
|
|
95
|
+
progress.set(0);
|
|
96
|
+
run.current = {
|
|
97
|
+
phase: "possible",
|
|
98
|
+
locked: false,
|
|
99
|
+
pointers,
|
|
100
|
+
velocity: Swipe.createVelocity(),
|
|
101
|
+
unsubscribes: []
|
|
102
|
+
};
|
|
103
|
+
setState("possible");
|
|
104
|
+
},
|
|
105
|
+
onDirection: (way) => {
|
|
106
|
+
const current = run.current;
|
|
107
|
+
if (current === void 0 || current.phase !== "possible") return;
|
|
108
|
+
if (way !== latest.current.direction) return cancel(current, "direction");
|
|
109
|
+
current.locked = true;
|
|
110
|
+
step(current);
|
|
111
|
+
},
|
|
112
|
+
onPointer: (pointer, pointers) => {
|
|
113
|
+
const current = run.current;
|
|
114
|
+
if (current === void 0 || current.phase === "done") return;
|
|
115
|
+
if (pointer.end === void 0) {
|
|
116
|
+
current.pointers = pointers;
|
|
117
|
+
current.unsubscribes.push(pointer.dx.on("change", () => step(current)), pointer.dy.on("change", () => step(current)));
|
|
118
|
+
if (current.phase === "tracking") cancel(current, "fingers");
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
if (current.phase !== "tracking") {
|
|
122
|
+
current.pointers = pointers;
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
measure(current);
|
|
126
|
+
const at = Swipe.release(offset.get(), velocity.get());
|
|
127
|
+
if (willCommit.get()) {
|
|
128
|
+
stop(current);
|
|
129
|
+
latest.current.onCommit?.(at);
|
|
130
|
+
} else cancel(current, "short", at);
|
|
131
|
+
},
|
|
132
|
+
onEnd: (_pointers, { interrupted }) => {
|
|
133
|
+
const current = run.current;
|
|
134
|
+
if (current === void 0) return;
|
|
135
|
+
if (current.phase !== "done") cancel(current, interrupted ? "interrupted" : "short");
|
|
136
|
+
end(current);
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
return {
|
|
140
|
+
offset,
|
|
141
|
+
progress,
|
|
142
|
+
velocity,
|
|
143
|
+
willCommit,
|
|
144
|
+
state
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
//#endregion
|
|
148
|
+
export { useSwipe };
|
|
149
|
+
|
|
150
|
+
//# sourceMappingURL=use-swipe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-swipe.js","names":["Rules"],"sources":["../../../../../src/input/gesture/recognizers/swipe/use-swipe.ts"],"sourcesContent":["import { type MotionValue, useMotionValue } from 'motion/react';\nimport { useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport { type Direction, Swipe as Rules } from '@kestack/use-gesture';\nimport { type Pointers, useGesture } from '../../zones/index.ts';\n\nexport type { Direction } from '@kestack/use-gesture';\nexport type CommitRule = Rules.CommitRule;\nexport type Edge = Rules.Edge;\nexport type Fingers = Rules.Fingers;\nexport type SwipeCancel = Rules.SwipeCancel;\nexport type SwipeRelease = Rules.SwipeRelease;\n\n// The fingers still down, each with how far it moved from where it landed.\nconst down = (pointers: Pointers) =>\n [...pointers.values()]\n .filter((pointer) => pointer.end === undefined)\n .map((pointer) => ({ dx: pointer.dx.get(), dy: pointer.dy.get() }));\n\nexport type SwipeOptions = {\n /** Whether it takes the next Gesture: true by default. Read as its first finger lands. */\n readonly enabled?: boolean;\n readonly direction: Direction;\n /** How many fingers: 1 by default. */\n readonly fingers?: Fingers;\n /**\n * Where the first finger must land; anywhere in the zone by default. A touch\n * that lands there is the Swipe's even over an element that scrolls, and it\n * takes no touch that lands anywhere else.\n */\n readonly from?: Edge;\n /** What it needs at release to Commit: `{ distance: 80, velocity: 500 }` by default. */\n readonly commit?: CommitRule;\n /** The touch's Direction is `direction`, with the right fingers: it is Tracking. */\n readonly onStart?: () => void;\n /** It met its CommitRule as its first finger lifted. */\n readonly onCommit?: (release: SwipeRelease) => void;\n /** It gave up; `release` is set when that was at a finger lifting. */\n readonly onCancel?: (reason: SwipeCancel, release?: SwipeRelease) => void;\n};\n\n/**\n * `possible` from the first finger landing where `from` asks until the\n * touch's Direction is read, then `tracking` until it Commits or Cancels.\n */\nexport type SwipeState = 'idle' | 'possible' | 'tracking';\n\nexport type Swipe = {\n /** Px moved toward `direction`, never below 0. Reset as the next Gesture lands. */\n readonly offset: MotionValue<number>;\n /** `offset` over the CommitRule's `distance`, unclamped; 0 without a `distance`. */\n readonly progress: MotionValue<number>;\n /** Px/s toward `direction`, falling to 0 while the fingers rest. */\n readonly velocity: MotionValue<number>;\n /** Whether letting go now would Commit. */\n readonly willCommit: MotionValue<boolean>;\n readonly state: SwipeState;\n};\n\ntype Run = {\n phase: 'possible' | 'tracking' | 'done';\n // Whether the touch's Direction is the Swipe's own.\n locked: boolean;\n pointers: Pointers;\n readonly velocity: ReturnType<typeof Rules.createVelocity>;\n readonly unsubscribes: Array<() => void>;\n timer?: ReturnType<typeof setInterval>;\n};\n\n// How often velocity is re-read while the fingers rest.\nconst TICK = 16;\n\nconst useLatest = <T>(value: T) => {\n const ref = useRef(value);\n useLayoutEffect(() => {\n ref.current = value;\n });\n return ref;\n};\n\n/**\n * The Swipe Recognizer: fingers moving one way. It wants its own Direction,\n * or, with `from`, captures touches landing at that edge. It locks once the\n * touch's Direction is read, follows the fingers while Tracking, and\n * decides at the first finger lifting, so a two-finger Swipe is judged as\n * its fingers leave.\n */\nexport function useSwipe(options: SwipeOptions): Swipe {\n const latest = useLatest(options);\n const offset = useMotionValue(0);\n const progress = useMotionValue(0);\n const velocity = useMotionValue(0);\n const willCommit = useMotionValue(false);\n const [state, setState] = useState<SwipeState>('idle');\n const run = useRef<Run | undefined>(undefined);\n\n const rule = () => latest.current.commit ?? Rules.DEFAULT_COMMIT;\n\n const stop = (current: Run) => {\n current.phase = 'done';\n clearInterval(current.timer);\n velocity.set(0);\n willCommit.set(false);\n setState('idle');\n };\n\n const cancel = (current: Run, reason: SwipeCancel, at?: SwipeRelease) => {\n stop(current);\n latest.current.onCancel?.(reason, at);\n };\n\n // Velocity and what it means for a Commit, re-read on every move and tick.\n const measure = (current: Run) => {\n const speed = current.velocity.at(performance.now(), offset.get());\n velocity.set(speed);\n willCommit.set(Rules.commits(rule(), offset.get(), speed));\n };\n\n const step = (current: Run) => {\n const { direction, fingers = 1 } = latest.current;\n const live = down(current.pointers);\n const move = Rules.movement(live);\n if (current.phase === 'possible') {\n if (!current.locked) return;\n if (!Rules.fingersMatch(fingers, live.length)) {\n return cancel(current, 'fingers');\n }\n current.phase = 'tracking';\n current.timer = setInterval(() => measure(current), TICK);\n setState('tracking');\n latest.current.onStart?.();\n }\n if (current.phase !== 'tracking') return;\n const value = Math.max(0, Rules.along(direction, move));\n const { distance } = rule();\n offset.set(value);\n progress.set(distance === undefined ? 0 : value / distance);\n current.velocity.add(performance.now(), value);\n measure(current);\n };\n\n const end = (current: Run) => {\n for (const unsubscribe of current.unsubscribes) unsubscribe();\n clearInterval(current.timer);\n if (run.current === current) run.current = undefined;\n };\n\n useEffect(() => () => run.current && end(run.current), []);\n\n useGesture({\n enabled: options.enabled !== false,\n directions: options.from === undefined ? [options.direction] : [],\n // A Swipe from an edge owns touches that start there, over any scroller.\n captures: (point) => {\n const { from } = latest.current;\n const viewport = { width: innerWidth, height: innerHeight };\n return from !== undefined && Rules.startsFrom(from, point, viewport);\n },\n onStart: (pointers) => {\n const [first] = pointers.values();\n const viewport = { width: innerWidth, height: innerHeight };\n if (\n first === undefined ||\n !Rules.startsFrom(latest.current.from, first.start, viewport)\n ) {\n return;\n }\n offset.set(0);\n progress.set(0);\n run.current = {\n phase: 'possible',\n locked: false,\n pointers,\n velocity: Rules.createVelocity(),\n unsubscribes: [],\n };\n setState('possible');\n },\n onDirection: (way) => {\n const current = run.current;\n if (current === undefined || current.phase !== 'possible') return;\n if (way !== latest.current.direction) {\n return cancel(current, 'direction');\n }\n current.locked = true;\n step(current);\n },\n onPointer: (pointer, pointers) => {\n const current = run.current;\n if (current === undefined || current.phase === 'done') return;\n if (pointer.end === undefined) {\n // Followed once: a Gesture's first finger lands here too.\n current.pointers = pointers;\n current.unsubscribes.push(\n pointer.dx.on('change', () => step(current)),\n pointer.dy.on('change', () => step(current)),\n );\n if (current.phase === 'tracking') cancel(current, 'fingers');\n return;\n }\n if (current.phase !== 'tracking') {\n current.pointers = pointers;\n return;\n }\n measure(current);\n const at = Rules.release(offset.get(), velocity.get());\n if (willCommit.get()) {\n stop(current);\n latest.current.onCommit?.(at);\n } else {\n cancel(current, 'short', at);\n }\n },\n onEnd: (_pointers, { interrupted }) => {\n const current = run.current;\n if (current === undefined) return;\n if (current.phase !== 'done') {\n cancel(current, interrupted ? 'interrupted' : 'short');\n }\n end(current);\n },\n });\n\n return { offset, progress, velocity, willCommit, state };\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Pointer, Pointers } from "./zone/motion-pointers.js";
|
|
2
|
+
import { Direction, Directions, GestureEnd, GestureOptions, GestureProvider, GestureState, GestureZone, GestureZoneProps, useGesture } from "./zone/zone.js";
|
|
3
|
+
import "./zone/index.js";
|
|
4
|
+
export { type Direction, type Directions, type GestureEnd, type GestureOptions, GestureProvider, type GestureState, GestureZone, type GestureZoneProps, type Pointer, type Pointers, useGesture };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ZONE_GESTURE_ATTRIBUTE, ZoneGesture } from "./native-scroll.js";
|
|
2
|
+
import { DOM_ZONES, TRAPPED_ATTRIBUTE, Target, TouchInput, ZONE_SELECTOR, createTouchInput, zoneOf } from "./touch-input.js";
|
|
3
|
+
export { DOM_ZONES, TRAPPED_ATTRIBUTE, type Target, type TouchInput, ZONE_GESTURE_ATTRIBUTE, ZONE_SELECTOR, type ZoneGesture, createTouchInput, zoneOf };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ZONE_GESTURE_ATTRIBUTE } from "./native-scroll.js";
|
|
2
|
+
import { DOM_ZONES, TRAPPED_ATTRIBUTE, ZONE_SELECTOR, createTouchInput, zoneOf } from "./touch-input.js";
|
|
3
|
+
export { DOM_ZONES, TRAPPED_ATTRIBUTE, ZONE_GESTURE_ATTRIBUTE, ZONE_SELECTOR, createTouchInput, zoneOf };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
//#region src/input/gesture/zones/touch-input/native-scroll.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* The attribute any element in the zone decides the zone's hold on touch
|
|
4
|
+
* with, for itself and what it holds; the nearest one decides. `enabled`:
|
|
5
|
+
* the zone captures every touch there, even over something that scrolls.
|
|
6
|
+
* `disabled`: the zone never takes a touch there. Without one, the zone
|
|
7
|
+
* captures a touch only when a listener takes it.
|
|
8
|
+
*/
|
|
9
|
+
export declare const ZONE_GESTURE_ATTRIBUTE = "data-zone-gesture";
|
|
10
|
+
/** How the zone treats a touch that lands on an element. */
|
|
11
|
+
export type ZoneGesture = 'enabled' | 'disabled' | 'auto';
|
|
12
|
+
/**
|
|
13
|
+
* Whether `target` is in text being edited, which keeps its own touch
|
|
14
|
+
* handling: selecting and caret dragging. A field that isn't focused is
|
|
15
|
+
* like any other element: a swipe over it is a Gesture, and a tap still
|
|
16
|
+
* reaches it, to focus it.
|
|
17
|
+
*/
|
|
18
|
+
export declare const isTextEntry: (target: EventTarget | null) => boolean;
|
|
19
|
+
/** How the zone treats a touch landing on `target`. */
|
|
20
|
+
export declare const zoneGestureOf: (target: EventTarget | null) => ZoneGesture;
|
|
21
|
+
/**
|
|
22
|
+
* Whether a Native Scroll keeps a finger that landed on `target` and first
|
|
23
|
+
* moved by dx, dy: some element from it up to `zone` can still scroll that
|
|
24
|
+
* way.
|
|
25
|
+
*/
|
|
26
|
+
export declare const nativeScrollKeeps: (target: EventTarget | null, zone: Element, dx: number, dy: number) => boolean;
|
|
27
|
+
//#endregion
|
|
28
|
+
//# sourceMappingURL=native-scroll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-scroll.d.ts","names":[],"sources":["../../../../../src/input/gesture/zones/touch-input/native-scroll.ts"],"mappings":";;;;;;;;qBAOa;;YAGD;;;;;;;qBAUC,cAAW,QAAY;;qBAOvB,gBAAa,QAAY,uBAAqB;;;;;;qBA8B9C,oBAAiB,QACpB,oBAAkB,MACpB,SAAO,YACH"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
//#region src/input/gesture/zones/touch-input/native-scroll.ts
|
|
2
|
+
/**
|
|
3
|
+
* The attribute any element in the zone decides the zone's hold on touch
|
|
4
|
+
* with, for itself and what it holds; the nearest one decides. `enabled`:
|
|
5
|
+
* the zone captures every touch there, even over something that scrolls.
|
|
6
|
+
* `disabled`: the zone never takes a touch there. Without one, the zone
|
|
7
|
+
* captures a touch only when a listener takes it.
|
|
8
|
+
*/
|
|
9
|
+
const ZONE_GESTURE_ATTRIBUTE = "data-zone-gesture";
|
|
10
|
+
const TEXT_ENTRY = "input, textarea, select, [contenteditable=\"true\"]";
|
|
11
|
+
/**
|
|
12
|
+
* Whether `target` is in text being edited, which keeps its own touch
|
|
13
|
+
* handling: selecting and caret dragging. A field that isn't focused is
|
|
14
|
+
* like any other element: a swipe over it is a Gesture, and a tap still
|
|
15
|
+
* reaches it, to focus it.
|
|
16
|
+
*/
|
|
17
|
+
const isTextEntry = (target) => {
|
|
18
|
+
if (!(target instanceof Element)) return false;
|
|
19
|
+
const entry = target.closest(TEXT_ENTRY);
|
|
20
|
+
return entry !== null && entry.contains(entry.ownerDocument.activeElement);
|
|
21
|
+
};
|
|
22
|
+
/** How the zone treats a touch landing on `target`. */
|
|
23
|
+
const zoneGestureOf = (target) => {
|
|
24
|
+
if (!(target instanceof Element) || isTextEntry(target)) return "disabled";
|
|
25
|
+
const value = target.closest(`[${ZONE_GESTURE_ATTRIBUTE}]`)?.getAttribute(ZONE_GESTURE_ATTRIBUTE);
|
|
26
|
+
return value === "enabled" || value === "disabled" ? value : "auto";
|
|
27
|
+
};
|
|
28
|
+
const SCROLLS = /* @__PURE__ */ new Set([
|
|
29
|
+
"auto",
|
|
30
|
+
"scroll",
|
|
31
|
+
"overlay"
|
|
32
|
+
]);
|
|
33
|
+
const followsFinger = (element, dx, dy) => {
|
|
34
|
+
const style = getComputedStyle(element);
|
|
35
|
+
if (Math.abs(dy) >= Math.abs(dx)) {
|
|
36
|
+
if (!SCROLLS.has(style.overflowY)) return false;
|
|
37
|
+
const end = element.scrollHeight - element.clientHeight;
|
|
38
|
+
return dy < 0 ? element.scrollTop < end - 1 : element.scrollTop > 0;
|
|
39
|
+
}
|
|
40
|
+
if (!SCROLLS.has(style.overflowX)) return false;
|
|
41
|
+
const end = element.scrollWidth - element.clientWidth;
|
|
42
|
+
const left = Math.abs(element.scrollLeft);
|
|
43
|
+
return dx < 0 ? left < end - 1 : left > 0;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Whether a Native Scroll keeps a finger that landed on `target` and first
|
|
47
|
+
* moved by dx, dy: some element from it up to `zone` can still scroll that
|
|
48
|
+
* way.
|
|
49
|
+
*/
|
|
50
|
+
const nativeScrollKeeps = (target, zone, dx, dy) => {
|
|
51
|
+
if (dx === 0 && dy === 0) return false;
|
|
52
|
+
for (let element = target instanceof Element ? target : null; element !== null; element = element.parentElement) {
|
|
53
|
+
if (followsFinger(element, dx, dy)) return true;
|
|
54
|
+
if (element === zone) return false;
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
};
|
|
58
|
+
//#endregion
|
|
59
|
+
export { ZONE_GESTURE_ATTRIBUTE, isTextEntry, nativeScrollKeeps, zoneGestureOf };
|
|
60
|
+
|
|
61
|
+
//# sourceMappingURL=native-scroll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-scroll.js","names":[],"sources":["../../../../../src/input/gesture/zones/touch-input/native-scroll.ts"],"sourcesContent":["/**\n * The attribute any element in the zone decides the zone's hold on touch\n * with, for itself and what it holds; the nearest one decides. `enabled`:\n * the zone captures every touch there, even over something that scrolls.\n * `disabled`: the zone never takes a touch there. Without one, the zone\n * captures a touch only when a listener takes it.\n */\nexport const ZONE_GESTURE_ATTRIBUTE = 'data-zone-gesture';\n\n/** How the zone treats a touch that lands on an element. */\nexport type ZoneGesture = 'enabled' | 'disabled' | 'auto';\n\nconst TEXT_ENTRY = 'input, textarea, select, [contenteditable=\"true\"]';\n\n/**\n * Whether `target` is in text being edited, which keeps its own touch\n * handling: selecting and caret dragging. A field that isn't focused is\n * like any other element: a swipe over it is a Gesture, and a tap still\n * reaches it, to focus it.\n */\nexport const isTextEntry = (target: EventTarget | null) => {\n if (!(target instanceof Element)) return false;\n const entry = target.closest(TEXT_ENTRY);\n return entry !== null && entry.contains(entry.ownerDocument.activeElement);\n};\n\n/** How the zone treats a touch landing on `target`. */\nexport const zoneGestureOf = (target: EventTarget | null): ZoneGesture => {\n if (!(target instanceof Element) || isTextEntry(target)) return 'disabled';\n const value = target\n .closest(`[${ZONE_GESTURE_ATTRIBUTE}]`)\n ?.getAttribute(ZONE_GESTURE_ATTRIBUTE);\n return value === 'enabled' || value === 'disabled' ? value : 'auto';\n};\n\nconst SCROLLS = new Set(['auto', 'scroll', 'overlay']);\n\n// Whether `element` can still scroll to follow a finger moving by dx, dy\n// along its main direction. A finger moving up scrolls the content down.\nconst followsFinger = (element: Element, dx: number, dy: number) => {\n const style = getComputedStyle(element);\n if (Math.abs(dy) >= Math.abs(dx)) {\n if (!SCROLLS.has(style.overflowY)) return false;\n const end = element.scrollHeight - element.clientHeight;\n return dy < 0 ? element.scrollTop < end - 1 : element.scrollTop > 0;\n }\n if (!SCROLLS.has(style.overflowX)) return false;\n const end = element.scrollWidth - element.clientWidth;\n const left = Math.abs(element.scrollLeft);\n return dx < 0 ? left < end - 1 : left > 0;\n};\n\n/**\n * Whether a Native Scroll keeps a finger that landed on `target` and first\n * moved by dx, dy: some element from it up to `zone` can still scroll that\n * way.\n */\nexport const nativeScrollKeeps = (\n target: EventTarget | null,\n zone: Element,\n dx: number,\n dy: number,\n) => {\n if (dx === 0 && dy === 0) return false;\n for (\n let element = target instanceof Element ? target : null;\n element !== null;\n element = element.parentElement\n ) {\n if (followsFinger(element, dx, dy)) return true;\n if (element === zone) return false;\n }\n return false;\n};\n"],"mappings":";;;;;;;;AAOA,MAAa,yBAAyB;AAKtC,MAAM,aAAa;;;;;;;AAQnB,MAAa,eAAe,WAA+B;CACzD,IAAI,EAAE,kBAAkB,UAAU,OAAO;CACzC,MAAM,QAAQ,OAAO,QAAQ,UAAU;CACvC,OAAO,UAAU,QAAQ,MAAM,SAAS,MAAM,cAAc,aAAa;AAC3E;;AAGA,MAAa,iBAAiB,WAA4C;CACxE,IAAI,EAAE,kBAAkB,YAAY,YAAY,MAAM,GAAG,OAAO;CAChE,MAAM,QAAQ,OACX,QAAQ,IAAI,uBAAuB,EAAE,CAAC,EACrC,aAAa,sBAAsB;CACvC,OAAO,UAAU,aAAa,UAAU,aAAa,QAAQ;AAC/D;AAEA,MAAM,0BAAU,IAAI,IAAI;CAAC;CAAQ;CAAU;AAAS,CAAC;AAIrD,MAAM,iBAAiB,SAAkB,IAAY,OAAe;CAClE,MAAM,QAAQ,iBAAiB,OAAO;CACtC,IAAI,KAAK,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,GAAG;EAChC,IAAI,CAAC,QAAQ,IAAI,MAAM,SAAS,GAAG,OAAO;EAC1C,MAAM,MAAM,QAAQ,eAAe,QAAQ;EAC3C,OAAO,KAAK,IAAI,QAAQ,YAAY,MAAM,IAAI,QAAQ,YAAY;CACpE;CACA,IAAI,CAAC,QAAQ,IAAI,MAAM,SAAS,GAAG,OAAO;CAC1C,MAAM,MAAM,QAAQ,cAAc,QAAQ;CAC1C,MAAM,OAAO,KAAK,IAAI,QAAQ,UAAU;CACxC,OAAO,KAAK,IAAI,OAAO,MAAM,IAAI,OAAO;AAC1C;;;;;;AAOA,MAAa,qBACX,QACA,MACA,IACA,OACG;CACH,IAAI,OAAO,KAAK,OAAO,GAAG,OAAO;CACjC,KACE,IAAI,UAAU,kBAAkB,UAAU,SAAS,MACnD,YAAY,MACZ,UAAU,QAAQ,eAClB;EACA,IAAI,cAAc,SAAS,IAAI,EAAE,GAAG,OAAO;EAC3C,IAAI,YAAY,MAAM,OAAO;CAC/B;CACA,OAAO;AACT"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { PointerSink, ZoneTree } from "@kestack/use-gesture";
|
|
2
|
+
//#region src/input/gesture/zones/touch-input/touch-input.d.ts
|
|
3
|
+
/** How a Gesture Zone's element is marked. */
|
|
4
|
+
export declare const ZONE_SELECTOR = "[data-slot=\"gesture-zone\"]";
|
|
5
|
+
/** Set on a trapped zone: Gestures that start in it go no further up. */
|
|
6
|
+
export declare const TRAPPED_ATTRIBUTE = "data-trapped";
|
|
7
|
+
/** The innermost Gesture Zone around `target`, if any. */
|
|
8
|
+
export declare const zoneOf: (target: EventTarget | null | undefined) => Element | null;
|
|
9
|
+
/** A finger on the page: what it landed on is an element, if anything. */
|
|
10
|
+
export type Target = Element | null;
|
|
11
|
+
/**
|
|
12
|
+
* How Gesture Zones nest in the page: each is an element marked
|
|
13
|
+
* ZONE_SELECTOR, inside the zone around it, Trapped while it has
|
|
14
|
+
* TRAPPED_ATTRIBUTE.
|
|
15
|
+
*/
|
|
16
|
+
export declare const DOM_ZONES: ZoneTree<Element, Target>;
|
|
17
|
+
/**
|
|
18
|
+
* How far from a side edge, in px, a touch in a zone is kept from the
|
|
19
|
+
* browser's own edge swipe: back and forward on iOS, in Safari and installed.
|
|
20
|
+
*/
|
|
21
|
+
export declare const EDGE_GUARD_PX = 24;
|
|
22
|
+
/**
|
|
23
|
+
* Whether a touch landing at `x` on `target` must be kept from the browser's
|
|
24
|
+
* edge swipe: it lands in a zone, within EDGE_GUARD_PX of a side edge, on
|
|
25
|
+
* nothing that is turned off for the zone or must still click.
|
|
26
|
+
*/
|
|
27
|
+
export declare const guardsEdge: (target: EventTarget | null, x: number, width: number) => boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Feeds every touch and pen pointer on the page to `sink`, for one Gesture
|
|
30
|
+
* Provider; the mouse is left to the browser. It listens on the window in
|
|
31
|
+
* the capture phase, so nothing inside a zone can hide a finger from it. Fingers where the zone is disabled, and in text
|
|
32
|
+
* entry, are left alone. Moves and releases of tracked pointers follow
|
|
33
|
+
* them anywhere. The browser taking a touch, such as for a Native Scroll or
|
|
34
|
+
* the system back gesture, or the page going away mid-touch, cancels every
|
|
35
|
+
* pointer.
|
|
36
|
+
*
|
|
37
|
+
* Holding the browser back has to happen on each zone's own element, since
|
|
38
|
+
* a blocking touch listener on the whole page would make every scroll wait:
|
|
39
|
+
* `bindZone` adds it. A touch's first movement reads its Direction and
|
|
40
|
+
* decides who owns it: the zone when a listener takes it, or when two
|
|
41
|
+
* fingers are down; otherwise the browser, which scrolls, while the Gesture
|
|
42
|
+
* is cancelled and nothing is tracked until every finger lifts.
|
|
43
|
+
*/
|
|
44
|
+
export declare const createTouchInput: (win: Window, sink: PointerSink<Target>) => {
|
|
45
|
+
/** Starts listening to the page. */
|
|
46
|
+
start: () => void;
|
|
47
|
+
/** Stops listening, cancelling any Gesture under way. */
|
|
48
|
+
stop: () => void;
|
|
49
|
+
/** Holds the browser back from a zone's element; returns the unbind. */
|
|
50
|
+
bindZone: (element: Element) => () => void;
|
|
51
|
+
};
|
|
52
|
+
export type TouchInput = ReturnType<typeof createTouchInput>;
|
|
53
|
+
//#endregion
|
|
54
|
+
//# sourceMappingURL=touch-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"touch-input.d.ts","names":[],"sources":["../../../../../src/input/gesture/zones/touch-input/touch-input.ts"],"mappings":";;;qBAaa;;qBAGA;;qBAGA,SAAM,QAAY,mCAA8B;;YAIjD,SAAS;;;;;;qBAOR,WAAW,SAAS,SAAS;;;;;qBAY7B;;;;;;qBAWA,aAAU,QACb,oBAAkB,WACjB;;;;;;;;;;;;;;;;;qBAsEE,mBAAgB,KAAS,QAAM,MAAQ,YAAY;;EAqJ5D;;EAoBA;;EAcA,WAAQ,SAAY;;YAaZ,aAAa,kBAAkB"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { isTextEntry, nativeScrollKeeps, zoneGestureOf } from "./native-scroll.js";
|
|
2
|
+
import { directionOf } from "@kestack/use-gesture";
|
|
3
|
+
//#region src/input/gesture/zones/touch-input/touch-input.ts
|
|
4
|
+
/** How a Gesture Zone's element is marked. */
|
|
5
|
+
const ZONE_SELECTOR = "[data-slot=\"gesture-zone\"]";
|
|
6
|
+
/** Set on a trapped zone: Gestures that start in it go no further up. */
|
|
7
|
+
const TRAPPED_ATTRIBUTE = "data-trapped";
|
|
8
|
+
/** The innermost Gesture Zone around `target`, if any. */
|
|
9
|
+
const zoneOf = (target) => target instanceof Element ? target.closest(ZONE_SELECTOR) : null;
|
|
10
|
+
/**
|
|
11
|
+
* How Gesture Zones nest in the page: each is an element marked
|
|
12
|
+
* ZONE_SELECTOR, inside the zone around it, Trapped while it has
|
|
13
|
+
* TRAPPED_ATTRIBUTE.
|
|
14
|
+
*/
|
|
15
|
+
const DOM_ZONES = {
|
|
16
|
+
zoneOf,
|
|
17
|
+
parentOf: (zone) => zoneOf(zone.parentElement),
|
|
18
|
+
trapped: (zone) => zone.hasAttribute(TRAPPED_ATTRIBUTE)
|
|
19
|
+
};
|
|
20
|
+
const STYLE_ID = "kui-gesture-zone";
|
|
21
|
+
/**
|
|
22
|
+
* How far from a side edge, in px, a touch in a zone is kept from the
|
|
23
|
+
* browser's own edge swipe: back and forward on iOS, in Safari and installed.
|
|
24
|
+
*/
|
|
25
|
+
const EDGE_GUARD_PX = 24;
|
|
26
|
+
const INTERACTIVE = "a[href], button, input, select, textarea, label, summary, [role=\"button\"], [role=\"link\"], [tabindex]:not([tabindex=\"-1\"])";
|
|
27
|
+
/**
|
|
28
|
+
* Whether a touch landing at `x` on `target` must be kept from the browser's
|
|
29
|
+
* edge swipe: it lands in a zone, within EDGE_GUARD_PX of a side edge, on
|
|
30
|
+
* nothing that is turned off for the zone or must still click.
|
|
31
|
+
*/
|
|
32
|
+
const guardsEdge = (target, x, width) => (x <= 24 || x >= width - 24) && zoneOf(target) !== null && zoneGestureOf(target) !== "disabled" && !(target instanceof Element && target.closest(INTERACTIVE) !== null);
|
|
33
|
+
const RULES = `${ZONE_SELECTOR} { touch-action: pan-x pan-y; }`;
|
|
34
|
+
const installStyle = (doc) => {
|
|
35
|
+
if (doc.getElementById(STYLE_ID) !== null) return;
|
|
36
|
+
const style = doc.createElement("style");
|
|
37
|
+
style.id = STYLE_ID;
|
|
38
|
+
style.textContent = RULES;
|
|
39
|
+
doc.head.appendChild(style);
|
|
40
|
+
};
|
|
41
|
+
const sampleOf = (event) => ({
|
|
42
|
+
id: event.pointerId,
|
|
43
|
+
x: event.clientX,
|
|
44
|
+
y: event.clientY,
|
|
45
|
+
t: event.timeStamp,
|
|
46
|
+
target: event.target instanceof Element ? event.target : null
|
|
47
|
+
});
|
|
48
|
+
const CLICK_WAIT_MS = 600;
|
|
49
|
+
/**
|
|
50
|
+
* A release over a link or button that must not also click it. The click
|
|
51
|
+
* arrives later than the release, so it is swallowed until it comes, the
|
|
52
|
+
* next finger lands, or CLICK_WAIT_MS passes.
|
|
53
|
+
*/
|
|
54
|
+
const swallowNextClick = (win) => {
|
|
55
|
+
const stop = () => {
|
|
56
|
+
win.removeEventListener("click", swallow, { capture: true });
|
|
57
|
+
win.removeEventListener("pointerdown", stop, { capture: true });
|
|
58
|
+
win.clearTimeout(timer);
|
|
59
|
+
};
|
|
60
|
+
const swallow = (event) => {
|
|
61
|
+
event.preventDefault();
|
|
62
|
+
event.stopPropagation();
|
|
63
|
+
stop();
|
|
64
|
+
};
|
|
65
|
+
win.addEventListener("click", swallow, { capture: true });
|
|
66
|
+
win.addEventListener("pointerdown", stop, { capture: true });
|
|
67
|
+
const timer = win.setTimeout(stop, CLICK_WAIT_MS);
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Feeds every touch and pen pointer on the page to `sink`, for one Gesture
|
|
71
|
+
* Provider; the mouse is left to the browser. It listens on the window in
|
|
72
|
+
* the capture phase, so nothing inside a zone can hide a finger from it. Fingers where the zone is disabled, and in text
|
|
73
|
+
* entry, are left alone. Moves and releases of tracked pointers follow
|
|
74
|
+
* them anywhere. The browser taking a touch, such as for a Native Scroll or
|
|
75
|
+
* the system back gesture, or the page going away mid-touch, cancels every
|
|
76
|
+
* pointer.
|
|
77
|
+
*
|
|
78
|
+
* Holding the browser back has to happen on each zone's own element, since
|
|
79
|
+
* a blocking touch listener on the whole page would make every scroll wait:
|
|
80
|
+
* `bindZone` adds it. A touch's first movement reads its Direction and
|
|
81
|
+
* decides who owns it: the zone when a listener takes it, or when two
|
|
82
|
+
* fingers are down; otherwise the browser, which scrolls, while the Gesture
|
|
83
|
+
* is cancelled and nothing is tracked until every finger lifts.
|
|
84
|
+
*/
|
|
85
|
+
const createTouchInput = (win, sink) => {
|
|
86
|
+
const doc = win.document;
|
|
87
|
+
const tracked = /* @__PURE__ */ new Map();
|
|
88
|
+
const untrack = (id) => {
|
|
89
|
+
const pointer = tracked.get(id);
|
|
90
|
+
if (pointer === void 0) return false;
|
|
91
|
+
pointer.unwatch();
|
|
92
|
+
tracked.delete(id);
|
|
93
|
+
return true;
|
|
94
|
+
};
|
|
95
|
+
const landed = /* @__PURE__ */ new Map();
|
|
96
|
+
let owner = "undecided";
|
|
97
|
+
let swallowing = false;
|
|
98
|
+
const onDown = (event) => {
|
|
99
|
+
if (event.pointerType === "mouse") return;
|
|
100
|
+
if (owner === "browser" || zoneGestureOf(event.target) === "disabled") return;
|
|
101
|
+
if (!sink.down(sampleOf(event))) return;
|
|
102
|
+
const target = event.target;
|
|
103
|
+
target?.addEventListener("pointerup", onUp);
|
|
104
|
+
target?.addEventListener("pointercancel", onCancel);
|
|
105
|
+
tracked.set(event.pointerId, {
|
|
106
|
+
touch: event.pointerType === "touch",
|
|
107
|
+
unwatch: () => {
|
|
108
|
+
target?.removeEventListener("pointerup", onUp);
|
|
109
|
+
target?.removeEventListener("pointercancel", onCancel);
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
const onMove = (event) => {
|
|
114
|
+
if (!tracked.has(event.pointerId)) return;
|
|
115
|
+
const undecided = owner === "undecided" && landed.size > 0;
|
|
116
|
+
sink.move({
|
|
117
|
+
...sampleOf(event),
|
|
118
|
+
undecided
|
|
119
|
+
});
|
|
120
|
+
};
|
|
121
|
+
const onUp = (event) => {
|
|
122
|
+
if (!untrack(event.pointerId)) return;
|
|
123
|
+
if (!sink.up(sampleOf(event))) return;
|
|
124
|
+
swallowNextClick(win);
|
|
125
|
+
swallowing = true;
|
|
126
|
+
};
|
|
127
|
+
const onCancel = (event) => {
|
|
128
|
+
if (tracked.has(event.pointerId)) onAway();
|
|
129
|
+
};
|
|
130
|
+
const onAway = () => {
|
|
131
|
+
for (const id of Array.from(tracked.keys())) untrack(id);
|
|
132
|
+
sink.cancelAll(performance.now());
|
|
133
|
+
};
|
|
134
|
+
const onVisibility = () => {
|
|
135
|
+
if (doc.visibilityState === "hidden") onAway();
|
|
136
|
+
};
|
|
137
|
+
const onContextMenu = (event) => {
|
|
138
|
+
if (event.pointerType !== "mouse" && zoneOf(event.target) !== null && !isTextEntry(event.target)) event.preventDefault();
|
|
139
|
+
};
|
|
140
|
+
const onTouchStart = (event) => {
|
|
141
|
+
swallowing = false;
|
|
142
|
+
const fingers = [...tracked.values()].filter((pointer) => pointer.touch);
|
|
143
|
+
if (event.touches.length < fingers.length) onAway();
|
|
144
|
+
for (const touch of event.changedTouches) {
|
|
145
|
+
landed.set(touch.identifier, {
|
|
146
|
+
x: touch.clientX,
|
|
147
|
+
y: touch.clientY
|
|
148
|
+
});
|
|
149
|
+
const { clientX: x, clientY: y } = touch;
|
|
150
|
+
if (event.cancelable && guardsEdge(touch.target, x, win.innerWidth) && sink.claimsEdge({
|
|
151
|
+
x,
|
|
152
|
+
y
|
|
153
|
+
}, x <= 24 ? "right" : "left")) event.preventDefault();
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
const decide = (event) => {
|
|
157
|
+
const touches = [...event.touches];
|
|
158
|
+
const [touch] = touches;
|
|
159
|
+
const start = touch && landed.get(touch.identifier);
|
|
160
|
+
const dx = touch && start ? touch.clientX - start.x : 0;
|
|
161
|
+
const dy = touch && start ? touch.clientY - start.y : 0;
|
|
162
|
+
const direction = sink.direction() ?? directionOf(dx, dy);
|
|
163
|
+
const how = sink.pick(direction);
|
|
164
|
+
const owner = (() => {
|
|
165
|
+
if (touches.length !== 1 || touch === void 0) return "zone";
|
|
166
|
+
const zone = zoneOf(touch.target);
|
|
167
|
+
if (zone === null) return "zone";
|
|
168
|
+
if (zoneGestureOf(touch.target) === "enabled") return "zone";
|
|
169
|
+
if (how === "captures") return "zone";
|
|
170
|
+
if (nativeScrollKeeps(touch.target, zone, dx, dy)) return "browser";
|
|
171
|
+
return how === "directions" ? "zone" : "browser";
|
|
172
|
+
})();
|
|
173
|
+
if (owner === "zone") sink.settle(direction);
|
|
174
|
+
return owner;
|
|
175
|
+
};
|
|
176
|
+
const onTouchMove = (event) => {
|
|
177
|
+
if (!sink.active()) return;
|
|
178
|
+
if (owner === "undecided") {
|
|
179
|
+
owner = decide(event);
|
|
180
|
+
if (owner === "browser") onAway();
|
|
181
|
+
}
|
|
182
|
+
if (owner === "zone" && event.cancelable) event.preventDefault();
|
|
183
|
+
};
|
|
184
|
+
const onTouchEnd = (event) => {
|
|
185
|
+
if (swallowing && event.type === "touchend" && event.cancelable) event.preventDefault();
|
|
186
|
+
swallowing = false;
|
|
187
|
+
for (const touch of event.changedTouches) landed.delete(touch.identifier);
|
|
188
|
+
if (event.touches.length === 0) {
|
|
189
|
+
landed.clear();
|
|
190
|
+
owner = "undecided";
|
|
191
|
+
}
|
|
192
|
+
};
|
|
193
|
+
const onSafariGesture = (event) => event.preventDefault();
|
|
194
|
+
return {
|
|
195
|
+
/** Starts listening to the page. */
|
|
196
|
+
start: () => {
|
|
197
|
+
installStyle(doc);
|
|
198
|
+
win.addEventListener("pointerdown", onDown, { capture: true });
|
|
199
|
+
win.addEventListener("pointermove", onMove, { capture: true });
|
|
200
|
+
win.addEventListener("pointerup", onUp, { capture: true });
|
|
201
|
+
win.addEventListener("pointercancel", onCancel, { capture: true });
|
|
202
|
+
win.addEventListener("contextmenu", onContextMenu, { capture: true });
|
|
203
|
+
win.addEventListener("touchstart", onTouchStart, {
|
|
204
|
+
capture: true,
|
|
205
|
+
passive: false
|
|
206
|
+
});
|
|
207
|
+
win.addEventListener("touchend", onTouchEnd, {
|
|
208
|
+
capture: true,
|
|
209
|
+
passive: false
|
|
210
|
+
});
|
|
211
|
+
win.addEventListener("touchcancel", onTouchEnd, { capture: true });
|
|
212
|
+
win.addEventListener("blur", onAway);
|
|
213
|
+
doc.addEventListener("visibilitychange", onVisibility);
|
|
214
|
+
},
|
|
215
|
+
/** Stops listening, cancelling any Gesture under way. */
|
|
216
|
+
stop: () => {
|
|
217
|
+
win.removeEventListener("pointerdown", onDown, { capture: true });
|
|
218
|
+
win.removeEventListener("pointermove", onMove, { capture: true });
|
|
219
|
+
win.removeEventListener("pointerup", onUp, { capture: true });
|
|
220
|
+
win.removeEventListener("pointercancel", onCancel, { capture: true });
|
|
221
|
+
win.removeEventListener("contextmenu", onContextMenu, { capture: true });
|
|
222
|
+
win.removeEventListener("touchstart", onTouchStart, { capture: true });
|
|
223
|
+
win.removeEventListener("touchend", onTouchEnd, { capture: true });
|
|
224
|
+
win.removeEventListener("touchcancel", onTouchEnd, { capture: true });
|
|
225
|
+
win.removeEventListener("blur", onAway);
|
|
226
|
+
doc.removeEventListener("visibilitychange", onVisibility);
|
|
227
|
+
onAway();
|
|
228
|
+
},
|
|
229
|
+
/** Holds the browser back from a zone's element; returns the unbind. */
|
|
230
|
+
bindZone: (element) => {
|
|
231
|
+
element.addEventListener("touchmove", onTouchMove, { passive: false });
|
|
232
|
+
element.addEventListener("gesturestart", onSafariGesture);
|
|
233
|
+
return () => {
|
|
234
|
+
element.removeEventListener("touchmove", onTouchMove);
|
|
235
|
+
element.removeEventListener("gesturestart", onSafariGesture);
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
};
|
|
240
|
+
//#endregion
|
|
241
|
+
export { DOM_ZONES, EDGE_GUARD_PX, TRAPPED_ATTRIBUTE, ZONE_SELECTOR, createTouchInput, guardsEdge, zoneOf };
|
|
242
|
+
|
|
243
|
+
//# sourceMappingURL=touch-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"touch-input.js","names":[],"sources":["../../../../../src/input/gesture/zones/touch-input/touch-input.ts"],"sourcesContent":["import {\n directionOf,\n type PointerSample,\n type PointerSink,\n type ZoneTree,\n} from '@kestack/use-gesture';\nimport {\n isTextEntry,\n nativeScrollKeeps,\n zoneGestureOf,\n} from './native-scroll.ts';\n\n/** How a Gesture Zone's element is marked. */\nexport const ZONE_SELECTOR = '[data-slot=\"gesture-zone\"]';\n\n/** Set on a trapped zone: Gestures that start in it go no further up. */\nexport const TRAPPED_ATTRIBUTE = 'data-trapped';\n\n/** The innermost Gesture Zone around `target`, if any. */\nexport const zoneOf = (target: EventTarget | null | undefined) =>\n target instanceof Element ? target.closest(ZONE_SELECTOR) : null;\n\n/** A finger on the page: what it landed on is an element, if anything. */\nexport type Target = Element | null;\n\n/**\n * How Gesture Zones nest in the page: each is an element marked\n * ZONE_SELECTOR, inside the zone around it, Trapped while it has\n * TRAPPED_ATTRIBUTE.\n */\nexport const DOM_ZONES: ZoneTree<Element, Target> = {\n zoneOf,\n parentOf: (zone) => zoneOf(zone.parentElement),\n trapped: (zone) => zone.hasAttribute(TRAPPED_ATTRIBUTE),\n};\n\nconst STYLE_ID = 'kui-gesture-zone';\n\n/**\n * How far from a side edge, in px, a touch in a zone is kept from the\n * browser's own edge swipe: back and forward on iOS, in Safari and installed.\n */\nexport const EDGE_GUARD_PX = 24;\n\n// Taps on these must still click, so their touches are left to the browser.\nconst INTERACTIVE =\n 'a[href], button, input, select, textarea, label, summary, [role=\"button\"], [role=\"link\"], [tabindex]:not([tabindex=\"-1\"])';\n\n/**\n * Whether a touch landing at `x` on `target` must be kept from the browser's\n * edge swipe: it lands in a zone, within EDGE_GUARD_PX of a side edge, on\n * nothing that is turned off for the zone or must still click.\n */\nexport const guardsEdge = (\n target: EventTarget | null,\n x: number,\n width: number,\n) =>\n (x <= EDGE_GUARD_PX || x >= width - EDGE_GUARD_PX) &&\n zoneOf(target) !== null &&\n zoneGestureOf(target) !== 'disabled' &&\n !(target instanceof Element && target.closest(INTERACTIVE) !== null);\n\n// The browser decides what a touch may do as the finger lands. A zone lets\n// it pan, so the browser can scroll whatever the zone does not take at the\n// first movement. Nothing in a zone zooms the page.\nconst RULES = `${ZONE_SELECTOR} { touch-action: pan-x pan-y; }`;\n\nconst installStyle = (doc: Document) => {\n if (doc.getElementById(STYLE_ID) !== null) return;\n const style = doc.createElement('style');\n style.id = STYLE_ID;\n style.textContent = RULES;\n doc.head.appendChild(style);\n};\n\nconst sampleOf = (event: PointerEvent): PointerSample<Target> => ({\n id: event.pointerId,\n x: event.clientX,\n y: event.clientY,\n t: event.timeStamp,\n target: event.target instanceof Element ? event.target : null,\n});\n\n// How long a swallowed release waits for its click. Mobile browsers send\n// it a moment after the finger lifts, sometimes after other tasks.\nconst CLICK_WAIT_MS = 600;\n\n/**\n * A release over a link or button that must not also click it. The click\n * arrives later than the release, so it is swallowed until it comes, the\n * next finger lands, or CLICK_WAIT_MS passes.\n */\nconst swallowNextClick = (win: Window) => {\n const stop = () => {\n win.removeEventListener('click', swallow, { capture: true });\n win.removeEventListener('pointerdown', stop, { capture: true });\n win.clearTimeout(timer);\n };\n const swallow = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n stop();\n };\n win.addEventListener('click', swallow, { capture: true });\n win.addEventListener('pointerdown', stop, { capture: true });\n const timer = win.setTimeout(stop, CLICK_WAIT_MS);\n};\n\n/**\n * Feeds every touch and pen pointer on the page to `sink`, for one Gesture\n * Provider; the mouse is left to the browser. It listens on the window in\n * the capture phase, so nothing inside a zone can hide a finger from it. Fingers where the zone is disabled, and in text\n * entry, are left alone. Moves and releases of tracked pointers follow\n * them anywhere. The browser taking a touch, such as for a Native Scroll or\n * the system back gesture, or the page going away mid-touch, cancels every\n * pointer.\n *\n * Holding the browser back has to happen on each zone's own element, since\n * a blocking touch listener on the whole page would make every scroll wait:\n * `bindZone` adds it. A touch's first movement reads its Direction and\n * decides who owns it: the zone when a listener takes it, or when two\n * fingers are down; otherwise the browser, which scrolls, while the Gesture\n * is cancelled and nothing is tracked until every finger lifts.\n */\nexport const createTouchInput = (win: Window, sink: PointerSink<Target>) => {\n const doc = win.document;\n // Each tracked pointer, with whether it is a finger and how to stop\n // listening on the element it landed on.\n const tracked = new Map<number, { touch: boolean; unwatch: () => void }>();\n const untrack = (id: number) => {\n const pointer = tracked.get(id);\n if (pointer === undefined) return false;\n pointer.unwatch();\n tracked.delete(id);\n return true;\n };\n // Where each finger on the screen landed, until the touch is decided.\n const landed = new Map<number, { x: number; y: number }>();\n // Who the fingers on the screen belong to, decided at their first movement.\n let owner: 'undecided' | 'zone' | 'browser' = 'undecided';\n // A finger's release must not click: cancel the touch's end too, which\n // stops the browser's click and mouse events for it altogether.\n let swallowing = false;\n\n const onDown = (event: PointerEvent) => {\n // A Gesture is touch or pen: a mouse drag selects text and never\n // scrolls, so the browser keeps it.\n if (event.pointerType === 'mouse') return;\n if (owner === 'browser' || zoneGestureOf(event.target) === 'disabled') {\n return;\n }\n if (!sink.down(sampleOf(event))) return;\n // iOS sends a finger's release to the element it landed on, even after\n // that element has left the page, and from there it never reaches the\n // window. Listening on the element itself still hears it.\n const target = event.target;\n target?.addEventListener('pointerup', onUp as EventListener);\n target?.addEventListener('pointercancel', onCancel as EventListener);\n tracked.set(event.pointerId, {\n touch: event.pointerType === 'touch',\n unwatch: () => {\n target?.removeEventListener('pointerup', onUp as EventListener);\n target?.removeEventListener('pointercancel', onCancel as EventListener);\n },\n });\n };\n const onMove = (event: PointerEvent) => {\n if (!tracked.has(event.pointerId)) return;\n // The browser sends a finger's pointermove before its touchmove: until\n // that decides, the move only moves.\n const undecided = owner === 'undecided' && landed.size > 0;\n sink.move({ ...sampleOf(event), undecided });\n };\n const onUp = (event: PointerEvent) => {\n if (!untrack(event.pointerId)) return;\n if (!sink.up(sampleOf(event))) return;\n swallowNextClick(win);\n swallowing = true;\n };\n const onCancel = (event: PointerEvent) => {\n if (tracked.has(event.pointerId)) onAway();\n };\n const onAway = () => {\n // A copy of the ids, as `untrack` deletes from `tracked`.\n for (const id of Array.from(tracked.keys())) untrack(id);\n // Pointer events stamp their time on this clock.\n sink.cancelAll(performance.now());\n };\n const onVisibility = () => {\n if (doc.visibilityState === 'hidden') onAway();\n };\n // A long press opens the callout menu on touch; the app owns touch in a zone.\n const onContextMenu = (event: Event) => {\n const pointerType = (event as Partial<PointerEvent>).pointerType;\n if (\n pointerType !== 'mouse' &&\n zoneOf(event.target) !== null &&\n !isTextEntry(event.target)\n ) {\n event.preventDefault();\n }\n };\n\n const onTouchStart = (event: TouchEvent) => {\n // A swallow meant for a touch whose end came first must not reach this one.\n swallowing = false;\n // More fingers tracked than are on the screen: a release went unheard,\n // so the Gesture under way is stale. End it rather than let the next\n // touch join it.\n const fingers = [...tracked.values()].filter((pointer) => pointer.touch);\n if (event.touches.length < fingers.length) onAway();\n for (const touch of event.changedTouches) {\n landed.set(touch.identifier, { x: touch.clientX, y: touch.clientY });\n // iOS starts its back and forward swipe from here, before any touchmove\n // the zone could hold back; only a touchstart kept from it stops that.\n const { clientX: x, clientY: y } = touch;\n if (\n event.cancelable &&\n guardsEdge(touch.target, x, win.innerWidth) &&\n sink.claimsEdge({ x, y }, x <= EDGE_GUARD_PX ? 'right' : 'left')\n ) {\n event.preventDefault();\n }\n }\n };\n // Who owns a touch, from its first movement; first match wins.\n const decide = (event: TouchEvent) => {\n const touches = [...event.touches];\n const [touch] = touches;\n const start = touch && landed.get(touch.identifier);\n const dx = touch && start ? touch.clientX - start.x : 0;\n const dy = touch && start ? touch.clientY - start.y : 0;\n const direction = sink.direction() ?? directionOf(dx, dy);\n const how = sink.pick(direction);\n const owner = ((): 'zone' | 'browser' => {\n if (touches.length !== 1 || touch === undefined) return 'zone';\n const zone = zoneOf(touch.target);\n if (zone === null) return 'zone';\n if (zoneGestureOf(touch.target) === 'enabled') return 'zone';\n if (how === 'captures') return 'zone';\n if (nativeScrollKeeps(touch.target, zone, dx, dy)) return 'browser';\n return how === 'directions' ? 'zone' : 'browser';\n })();\n // Only a touch the zone keeps has a Direction for its listeners: one the\n // browser scrolls must not start them moving before it cancels them.\n if (owner === 'zone') sink.settle(direction);\n return owner;\n };\n // From each zone's element: keeps a Gesture's touch from the browser.\n const onTouchMove = (event: TouchEvent) => {\n if (!sink.active()) return;\n if (owner === 'undecided') {\n owner = decide(event);\n if (owner === 'browser') onAway();\n }\n if (owner === 'zone' && event.cancelable) event.preventDefault();\n };\n const onTouchEnd = (event: TouchEvent) => {\n if (swallowing && event.type === 'touchend' && event.cancelable) {\n event.preventDefault();\n }\n swallowing = false;\n for (const touch of event.changedTouches) landed.delete(touch.identifier);\n if (event.touches.length === 0) {\n landed.clear();\n owner = 'undecided';\n }\n };\n // iOS Safari pinch-zooms the page from its own gesture events.\n const onSafariGesture = (event: Event) => event.preventDefault();\n\n return {\n /** Starts listening to the page. */\n start: () => {\n installStyle(doc);\n win.addEventListener('pointerdown', onDown, { capture: true });\n win.addEventListener('pointermove', onMove, { capture: true });\n win.addEventListener('pointerup', onUp, { capture: true });\n win.addEventListener('pointercancel', onCancel, { capture: true });\n win.addEventListener('contextmenu', onContextMenu, { capture: true });\n win.addEventListener('touchstart', onTouchStart, {\n capture: true,\n passive: false,\n });\n win.addEventListener('touchend', onTouchEnd, {\n capture: true,\n passive: false,\n });\n win.addEventListener('touchcancel', onTouchEnd, { capture: true });\n win.addEventListener('blur', onAway);\n doc.addEventListener('visibilitychange', onVisibility);\n },\n /** Stops listening, cancelling any Gesture under way. */\n stop: () => {\n win.removeEventListener('pointerdown', onDown, { capture: true });\n win.removeEventListener('pointermove', onMove, { capture: true });\n win.removeEventListener('pointerup', onUp, { capture: true });\n win.removeEventListener('pointercancel', onCancel, { capture: true });\n win.removeEventListener('contextmenu', onContextMenu, { capture: true });\n win.removeEventListener('touchstart', onTouchStart, { capture: true });\n win.removeEventListener('touchend', onTouchEnd, { capture: true });\n win.removeEventListener('touchcancel', onTouchEnd, { capture: true });\n win.removeEventListener('blur', onAway);\n doc.removeEventListener('visibilitychange', onVisibility);\n onAway();\n },\n /** Holds the browser back from a zone's element; returns the unbind. */\n bindZone: (element: Element) => {\n element.addEventListener('touchmove', onTouchMove as EventListener, {\n passive: false,\n });\n element.addEventListener('gesturestart', onSafariGesture);\n return () => {\n element.removeEventListener('touchmove', onTouchMove as EventListener);\n element.removeEventListener('gesturestart', onSafariGesture);\n };\n },\n };\n};\n\nexport type TouchInput = ReturnType<typeof createTouchInput>;\n"],"mappings":"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"}
|