tempest-react-sdk 0.22.0 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -64
- package/dist/access/Can.cjs +2 -0
- package/dist/access/Can.cjs.map +1 -0
- package/dist/access/Can.js +10 -0
- package/dist/access/Can.js.map +1 -0
- package/dist/access/access-control-context.cjs +2 -0
- package/dist/access/access-control-context.cjs.map +1 -0
- package/dist/access/access-control-context.js +14 -0
- package/dist/access/access-control-context.js.map +1 -0
- package/dist/access/create-role-access-control.cjs +2 -0
- package/dist/access/create-role-access-control.cjs.map +1 -0
- package/dist/access/create-role-access-control.js +19 -0
- package/dist/access/create-role-access-control.js.map +1 -0
- package/dist/access/permissions-from-token.cjs +2 -0
- package/dist/access/permissions-from-token.cjs.map +1 -0
- package/dist/access/permissions-from-token.js +21 -0
- package/dist/access/permissions-from-token.js.map +1 -0
- package/dist/access/use-can.cjs +2 -0
- package/dist/access/use-can.cjs.map +1 -0
- package/dist/access/use-can.js +34 -0
- package/dist/access/use-can.js.map +1 -0
- package/dist/app/AppProviders.cjs +2 -0
- package/dist/app/AppProviders.cjs.map +1 -0
- package/dist/app/AppProviders.js +13 -0
- package/dist/app/AppProviders.js.map +1 -0
- package/dist/audio/audio-player.cjs +2 -0
- package/dist/audio/audio-player.cjs.map +1 -0
- package/dist/audio/audio-player.js +39 -0
- package/dist/audio/audio-player.js.map +1 -0
- package/dist/audio/use-audio.cjs +2 -0
- package/dist/audio/use-audio.cjs.map +1 -0
- package/dist/audio/use-audio.js +18 -0
- package/dist/audio/use-audio.js.map +1 -0
- package/dist/auth/AuthGuard.cjs +2 -0
- package/dist/auth/AuthGuard.cjs.map +1 -0
- package/dist/auth/AuthGuard.js +8 -0
- package/dist/auth/AuthGuard.js.map +1 -0
- package/dist/auth/create-auth-store.cjs +2 -0
- package/dist/auth/create-auth-store.cjs.map +1 -0
- package/dist/auth/create-auth-store.js +30 -0
- package/dist/auth/create-auth-store.js.map +1 -0
- package/dist/auth/create-tempest-auth.cjs +2 -0
- package/dist/auth/create-tempest-auth.cjs.map +1 -0
- package/dist/auth/create-tempest-auth.js +70 -0
- package/dist/auth/create-tempest-auth.js.map +1 -0
- package/dist/auth/jwt.cjs +2 -0
- package/dist/auth/jwt.cjs.map +1 -0
- package/dist/auth/jwt.js +33 -0
- package/dist/auth/jwt.js.map +1 -0
- package/dist/auth/lazy-with-retry.cjs +2 -0
- package/dist/auth/lazy-with-retry.cjs.map +1 -0
- package/dist/auth/lazy-with-retry.js +18 -0
- package/dist/auth/lazy-with-retry.js.map +1 -0
- package/dist/auth/refresh-queue.cjs +2 -0
- package/dist/auth/refresh-queue.cjs.map +1 -0
- package/dist/auth/refresh-queue.js +14 -0
- package/dist/auth/refresh-queue.js.map +1 -0
- package/dist/br/BrazilMap.cjs +2 -0
- package/dist/br/BrazilMap.cjs.map +1 -0
- package/dist/br/BrazilMap.js +195 -0
- package/dist/br/BrazilMap.js.map +1 -0
- package/dist/br/BrazilMap.module.css.cjs +2 -0
- package/dist/br/BrazilMap.module.css.cjs.map +1 -0
- package/dist/br/BrazilMap.module.css.js +28 -0
- package/dist/br/BrazilMap.module.css.js.map +1 -0
- package/dist/br/BrazilStateCitySelect.cjs +2 -0
- package/dist/br/BrazilStateCitySelect.cjs.map +1 -0
- package/dist/br/BrazilStateCitySelect.js +69 -0
- package/dist/br/BrazilStateCitySelect.js.map +1 -0
- package/dist/br/BrazilStateMap.cjs +2 -0
- package/dist/br/BrazilStateMap.cjs.map +1 -0
- package/dist/br/BrazilStateMap.js +181 -0
- package/dist/br/BrazilStateMap.js.map +1 -0
- package/dist/br/MapLegend.cjs +2 -0
- package/dist/br/MapLegend.cjs.map +1 -0
- package/dist/br/MapLegend.js +39 -0
- package/dist/br/MapLegend.js.map +1 -0
- package/dist/br/MapLegend.module.css.cjs +2 -0
- package/dist/br/MapLegend.module.css.cjs.map +1 -0
- package/dist/br/MapLegend.module.css.js +22 -0
- package/dist/br/MapLegend.module.css.js.map +1 -0
- package/dist/br/MapMarkers.cjs +2 -0
- package/dist/br/MapMarkers.cjs.map +1 -0
- package/dist/br/MapMarkers.js +31 -0
- package/dist/br/MapMarkers.js.map +1 -0
- package/dist/br/MapTooltip.cjs +2 -0
- package/dist/br/MapTooltip.cjs.map +1 -0
- package/dist/br/MapTooltip.js +19 -0
- package/dist/br/MapTooltip.js.map +1 -0
- package/dist/br/MunicipalitySearch.cjs +2 -0
- package/dist/br/MunicipalitySearch.cjs.map +1 -0
- package/dist/br/MunicipalitySearch.js +75 -0
- package/dist/br/MunicipalitySearch.js.map +1 -0
- package/dist/br/MunicipalitySearch.module.css.cjs +2 -0
- package/dist/br/MunicipalitySearch.module.css.cjs.map +1 -0
- package/dist/br/MunicipalitySearch.module.css.js +14 -0
- package/dist/br/MunicipalitySearch.module.css.js.map +1 -0
- package/dist/br/br-geo.cjs +2 -0
- package/dist/br/br-geo.cjs.map +1 -0
- package/dist/br/br-geo.js +6 -0
- package/dist/br/br-geo.js.map +1 -0
- package/dist/br/data/br-centroids.json.cjs +2 -0
- package/dist/br/data/br-centroids.json.cjs.map +1 -0
- package/dist/br/data/br-centroids.json.js +10 -0
- package/dist/br/data/br-centroids.json.js.map +1 -0
- package/dist/br/data/br-locations.json.cjs +2 -0
- package/dist/br/data/br-locations.json.cjs.map +1 -0
- package/dist/br/data/br-locations.json.js +8 -0
- package/dist/br/data/br-locations.json.js.map +1 -0
- package/dist/br/data/br-uf-geo.json.cjs +2 -0
- package/dist/br/data/br-uf-geo.json.cjs.map +1 -0
- package/dist/br/data/br-uf-geo.json.js +10 -0
- package/dist/br/data/br-uf-geo.json.js.map +1 -0
- package/dist/br/data/mun/AC.json.cjs +2 -0
- package/dist/br/data/mun/AC.json.cjs.map +1 -0
- package/dist/br/data/mun/AC.json.js +12 -0
- package/dist/br/data/mun/AC.json.js.map +1 -0
- package/dist/br/data/mun/AL.json.cjs +2 -0
- package/dist/br/data/mun/AL.json.cjs.map +1 -0
- package/dist/br/data/mun/AL.json.js +12 -0
- package/dist/br/data/mun/AL.json.js.map +1 -0
- package/dist/br/data/mun/AM.json.cjs +2 -0
- package/dist/br/data/mun/AM.json.cjs.map +1 -0
- package/dist/br/data/mun/AM.json.js +12 -0
- package/dist/br/data/mun/AM.json.js.map +1 -0
- package/dist/br/data/mun/AP.json.cjs +2 -0
- package/dist/br/data/mun/AP.json.cjs.map +1 -0
- package/dist/br/data/mun/AP.json.js +12 -0
- package/dist/br/data/mun/AP.json.js.map +1 -0
- package/dist/br/data/mun/BA.json.cjs +2 -0
- package/dist/br/data/mun/BA.json.cjs.map +1 -0
- package/dist/br/data/mun/BA.json.js +12 -0
- package/dist/br/data/mun/BA.json.js.map +1 -0
- package/dist/br/data/mun/CE.json.cjs +2 -0
- package/dist/br/data/mun/CE.json.cjs.map +1 -0
- package/dist/br/data/mun/CE.json.js +12 -0
- package/dist/br/data/mun/CE.json.js.map +1 -0
- package/dist/br/data/mun/DF.json.cjs +2 -0
- package/dist/br/data/mun/DF.json.cjs.map +1 -0
- package/dist/br/data/mun/DF.json.js +12 -0
- package/dist/br/data/mun/DF.json.js.map +1 -0
- package/dist/br/data/mun/ES.json.cjs +2 -0
- package/dist/br/data/mun/ES.json.cjs.map +1 -0
- package/dist/br/data/mun/ES.json.js +12 -0
- package/dist/br/data/mun/ES.json.js.map +1 -0
- package/dist/br/data/mun/GO.json.cjs +2 -0
- package/dist/br/data/mun/GO.json.cjs.map +1 -0
- package/dist/br/data/mun/GO.json.js +12 -0
- package/dist/br/data/mun/GO.json.js.map +1 -0
- package/dist/br/data/mun/MA.json.cjs +2 -0
- package/dist/br/data/mun/MA.json.cjs.map +1 -0
- package/dist/br/data/mun/MA.json.js +12 -0
- package/dist/br/data/mun/MA.json.js.map +1 -0
- package/dist/br/data/mun/MG.json.cjs +2 -0
- package/dist/br/data/mun/MG.json.cjs.map +1 -0
- package/dist/br/data/mun/MG.json.js +12 -0
- package/dist/br/data/mun/MG.json.js.map +1 -0
- package/dist/br/data/mun/MS.json.cjs +2 -0
- package/dist/br/data/mun/MS.json.cjs.map +1 -0
- package/dist/br/data/mun/MS.json.js +12 -0
- package/dist/br/data/mun/MS.json.js.map +1 -0
- package/dist/br/data/mun/MT.json.cjs +2 -0
- package/dist/br/data/mun/MT.json.cjs.map +1 -0
- package/dist/br/data/mun/MT.json.js +12 -0
- package/dist/br/data/mun/MT.json.js.map +1 -0
- package/dist/br/data/mun/PA.json.cjs +2 -0
- package/dist/br/data/mun/PA.json.cjs.map +1 -0
- package/dist/br/data/mun/PA.json.js +12 -0
- package/dist/br/data/mun/PA.json.js.map +1 -0
- package/dist/br/data/mun/PB.json.cjs +2 -0
- package/dist/br/data/mun/PB.json.cjs.map +1 -0
- package/dist/br/data/mun/PB.json.js +12 -0
- package/dist/br/data/mun/PB.json.js.map +1 -0
- package/dist/br/data/mun/PE.json.cjs +2 -0
- package/dist/br/data/mun/PE.json.cjs.map +1 -0
- package/dist/br/data/mun/PE.json.js +12 -0
- package/dist/br/data/mun/PE.json.js.map +1 -0
- package/dist/br/data/mun/PI.json.cjs +2 -0
- package/dist/br/data/mun/PI.json.cjs.map +1 -0
- package/dist/br/data/mun/PI.json.js +12 -0
- package/dist/br/data/mun/PI.json.js.map +1 -0
- package/dist/br/data/mun/PR.json.cjs +2 -0
- package/dist/br/data/mun/PR.json.cjs.map +1 -0
- package/dist/br/data/mun/PR.json.js +12 -0
- package/dist/br/data/mun/PR.json.js.map +1 -0
- package/dist/br/data/mun/RJ.json.cjs +2 -0
- package/dist/br/data/mun/RJ.json.cjs.map +1 -0
- package/dist/br/data/mun/RJ.json.js +12 -0
- package/dist/br/data/mun/RJ.json.js.map +1 -0
- package/dist/br/data/mun/RN.json.cjs +2 -0
- package/dist/br/data/mun/RN.json.cjs.map +1 -0
- package/dist/br/data/mun/RN.json.js +12 -0
- package/dist/br/data/mun/RN.json.js.map +1 -0
- package/dist/br/data/mun/RO.json.cjs +2 -0
- package/dist/br/data/mun/RO.json.cjs.map +1 -0
- package/dist/br/data/mun/RO.json.js +12 -0
- package/dist/br/data/mun/RO.json.js.map +1 -0
- package/dist/br/data/mun/RR.json.cjs +2 -0
- package/dist/br/data/mun/RR.json.cjs.map +1 -0
- package/dist/br/data/mun/RR.json.js +12 -0
- package/dist/br/data/mun/RR.json.js.map +1 -0
- package/dist/br/data/mun/RS.json.cjs +2 -0
- package/dist/br/data/mun/RS.json.cjs.map +1 -0
- package/dist/br/data/mun/RS.json.js +12 -0
- package/dist/br/data/mun/RS.json.js.map +1 -0
- package/dist/br/data/mun/SC.json.cjs +2 -0
- package/dist/br/data/mun/SC.json.cjs.map +1 -0
- package/dist/br/data/mun/SC.json.js +12 -0
- package/dist/br/data/mun/SC.json.js.map +1 -0
- package/dist/br/data/mun/SE.json.cjs +2 -0
- package/dist/br/data/mun/SE.json.cjs.map +1 -0
- package/dist/br/data/mun/SE.json.js +12 -0
- package/dist/br/data/mun/SE.json.js.map +1 -0
- package/dist/br/data/mun/SP.json.cjs +2 -0
- package/dist/br/data/mun/SP.json.cjs.map +1 -0
- package/dist/br/data/mun/SP.json.js +12 -0
- package/dist/br/data/mun/SP.json.js.map +1 -0
- package/dist/br/data/mun/TO.json.cjs +2 -0
- package/dist/br/data/mun/TO.json.cjs.map +1 -0
- package/dist/br/data/mun/TO.json.js +12 -0
- package/dist/br/data/mun/TO.json.js.map +1 -0
- package/dist/br/geocode.cjs +2 -0
- package/dist/br/geocode.cjs.map +1 -0
- package/dist/br/geocode.js +89 -0
- package/dist/br/geocode.js.map +1 -0
- package/dist/br/locations.cjs +2 -0
- package/dist/br/locations.cjs.map +1 -0
- package/dist/br/locations.js +80 -0
- package/dist/br/locations.js.map +1 -0
- package/dist/br/regions.cjs +2 -0
- package/dist/br/regions.cjs.map +1 -0
- package/dist/br/regions.js +18 -0
- package/dist/br/regions.js.map +1 -0
- package/dist/br/scales.cjs +2 -0
- package/dist/br/scales.cjs.map +1 -0
- package/dist/br/scales.js +65 -0
- package/dist/br/scales.js.map +1 -0
- package/dist/br/state-geo.cjs +2 -0
- package/dist/br/state-geo.cjs.map +1 -0
- package/dist/br/state-geo.js +39 -0
- package/dist/br/state-geo.js.map +1 -0
- package/dist/br/svg-utils.cjs +2 -0
- package/dist/br/svg-utils.cjs.map +1 -0
- package/dist/br/svg-utils.js +46 -0
- package/dist/br/svg-utils.js.map +1 -0
- package/dist/br/use-map-hover.cjs +2 -0
- package/dist/br/use-map-hover.cjs.map +1 -0
- package/dist/br/use-map-hover.js +15 -0
- package/dist/br/use-map-hover.js.map +1 -0
- package/dist/br/use-map-zoom.cjs +2 -0
- package/dist/br/use-map-zoom.cjs.map +1 -0
- package/dist/br/use-map-zoom.js +48 -0
- package/dist/br/use-map-zoom.js.map +1 -0
- package/dist/br.cjs +1 -1
- package/dist/br.cjs.map +1 -1
- package/dist/br.js +46 -945
- package/dist/br.js.map +1 -1
- package/dist/charts/AreaChart.cjs +2 -0
- package/dist/charts/AreaChart.cjs.map +1 -0
- package/dist/charts/AreaChart.js +47 -0
- package/dist/charts/AreaChart.js.map +1 -0
- package/dist/charts/BarChart.cjs +2 -0
- package/dist/charts/BarChart.cjs.map +1 -0
- package/dist/charts/BarChart.js +41 -0
- package/dist/charts/BarChart.js.map +1 -0
- package/dist/charts/LineChart.cjs +2 -0
- package/dist/charts/LineChart.cjs.map +1 -0
- package/dist/charts/LineChart.js +41 -0
- package/dist/charts/LineChart.js.map +1 -0
- package/dist/charts/PieChart.cjs +2 -0
- package/dist/charts/PieChart.cjs.map +1 -0
- package/dist/charts/PieChart.js +39 -0
- package/dist/charts/PieChart.js.map +1 -0
- package/dist/charts/RadarChart.cjs +2 -0
- package/dist/charts/RadarChart.cjs.map +1 -0
- package/dist/charts/RadarChart.js +43 -0
- package/dist/charts/RadarChart.js.map +1 -0
- package/dist/charts/palette.cjs +2 -0
- package/dist/charts/palette.cjs.map +1 -0
- package/dist/charts/palette.js +18 -0
- package/dist/charts/palette.js.map +1 -0
- package/dist/charts/types.cjs +2 -0
- package/dist/charts/types.cjs.map +1 -0
- package/dist/charts/types.js +8 -0
- package/dist/charts/types.js.map +1 -0
- package/dist/charts.cjs +1 -1
- package/dist/charts.cjs.map +1 -1
- package/dist/charts.js +12 -193
- package/dist/charts.js.map +1 -1
- package/dist/components/Accordion/Accordion.cjs +2 -0
- package/dist/components/Accordion/Accordion.cjs.map +1 -0
- package/dist/components/Accordion/Accordion.js +78 -0
- package/dist/components/Accordion/Accordion.js.map +1 -0
- package/dist/components/Accordion/Accordion.module.css.cjs +2 -0
- package/dist/components/Accordion/Accordion.module.css.cjs.map +1 -0
- package/dist/components/Accordion/Accordion.module.css.js +20 -0
- package/dist/components/Accordion/Accordion.module.css.js.map +1 -0
- package/dist/components/Alert/Alert.cjs +2 -0
- package/dist/components/Alert/Alert.cjs.map +1 -0
- package/dist/components/Alert/Alert.js +63 -0
- package/dist/components/Alert/Alert.js.map +1 -0
- package/dist/components/Alert/Alert.module.css.cjs +2 -0
- package/dist/components/Alert/Alert.module.css.cjs.map +1 -0
- package/dist/components/Alert/Alert.module.css.js +32 -0
- package/dist/components/Alert/Alert.module.css.js.map +1 -0
- package/dist/components/AppBar/AppBar.cjs +2 -0
- package/dist/components/AppBar/AppBar.cjs.map +1 -0
- package/dist/components/AppBar/AppBar.js +59 -0
- package/dist/components/AppBar/AppBar.js.map +1 -0
- package/dist/components/AppBar/AppBar.module.css.cjs +2 -0
- package/dist/components/AppBar/AppBar.module.css.cjs.map +1 -0
- package/dist/components/AppBar/AppBar.module.css.js +32 -0
- package/dist/components/AppBar/AppBar.module.css.js.map +1 -0
- package/dist/components/AppShell/AppShell.cjs +2 -0
- package/dist/components/AppShell/AppShell.cjs.map +1 -0
- package/dist/components/AppShell/AppShell.js +29 -0
- package/dist/components/AppShell/AppShell.js.map +1 -0
- package/dist/components/AppShell/AppShell.module.css.cjs +2 -0
- package/dist/components/AppShell/AppShell.module.css.cjs.map +1 -0
- package/dist/components/AppShell/AppShell.module.css.js +20 -0
- package/dist/components/AppShell/AppShell.module.css.js.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.cjs +2 -0
- package/dist/components/AspectRatio/AspectRatio.cjs.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.js +17 -0
- package/dist/components/AspectRatio/AspectRatio.js.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.module.css.cjs +2 -0
- package/dist/components/AspectRatio/AspectRatio.module.css.cjs.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.module.css.js +8 -0
- package/dist/components/AspectRatio/AspectRatio.module.css.js.map +1 -0
- package/dist/components/Avatar/Avatar.cjs +2 -0
- package/dist/components/Avatar/Avatar.cjs.map +1 -0
- package/dist/components/Avatar/Avatar.js +47 -0
- package/dist/components/Avatar/Avatar.js.map +1 -0
- package/dist/components/Avatar/Avatar.module.css.cjs +2 -0
- package/dist/components/Avatar/Avatar.module.css.cjs.map +1 -0
- package/dist/components/Avatar/Avatar.module.css.js +30 -0
- package/dist/components/Avatar/Avatar.module.css.js.map +1 -0
- package/dist/components/Badge/Badge.cjs +2 -0
- package/dist/components/Badge/Badge.cjs.map +1 -0
- package/dist/components/Badge/Badge.js +37 -0
- package/dist/components/Badge/Badge.js.map +1 -0
- package/dist/components/Badge/Badge.module.css.cjs +2 -0
- package/dist/components/Badge/Badge.module.css.cjs.map +1 -0
- package/dist/components/Badge/Badge.module.css.js +34 -0
- package/dist/components/Badge/Badge.module.css.js.map +1 -0
- package/dist/components/Banner/Banner.cjs +2 -0
- package/dist/components/Banner/Banner.cjs.map +1 -0
- package/dist/components/Banner/Banner.js +41 -0
- package/dist/components/Banner/Banner.js.map +1 -0
- package/dist/components/Banner/Banner.module.css.cjs +2 -0
- package/dist/components/Banner/Banner.module.css.cjs.map +1 -0
- package/dist/components/Banner/Banner.module.css.js +28 -0
- package/dist/components/Banner/Banner.module.css.js.map +1 -0
- package/dist/components/BottomNavigation/BottomNavigation.cjs +2 -0
- package/dist/components/BottomNavigation/BottomNavigation.cjs.map +1 -0
- package/dist/components/BottomNavigation/BottomNavigation.js +37 -0
- package/dist/components/BottomNavigation/BottomNavigation.js.map +1 -0
- package/dist/components/BottomNavigation/BottomNavigation.module.css.cjs +2 -0
- package/dist/components/BottomNavigation/BottomNavigation.module.css.cjs.map +1 -0
- package/dist/components/BottomNavigation/BottomNavigation.module.css.js +20 -0
- package/dist/components/BottomNavigation/BottomNavigation.module.css.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.cjs +2 -0
- package/dist/components/BottomSheet/BottomSheet.cjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.js +60 -0
- package/dist/components/BottomSheet/BottomSheet.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.module.css.cjs +2 -0
- package/dist/components/BottomSheet/BottomSheet.module.css.cjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.module.css.js +20 -0
- package/dist/components/BottomSheet/BottomSheet.module.css.js.map +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.cjs +2 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.cjs.map +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.js +34 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.module.css.cjs +2 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.module.css.cjs.map +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.module.css.js +16 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.module.css.js.map +1 -0
- package/dist/components/Button/Button.cjs +2 -0
- package/dist/components/Button/Button.cjs.map +1 -0
- package/dist/components/Button/Button.js +68 -0
- package/dist/components/Button/Button.js.map +1 -0
- package/dist/components/Button/Button.module.css.cjs +2 -0
- package/dist/components/Button/Button.module.css.cjs.map +1 -0
- package/dist/components/Button/Button.module.css.js +50 -0
- package/dist/components/Button/Button.module.css.js.map +1 -0
- package/dist/components/Calendar/Calendar.cjs +2 -0
- package/dist/components/Calendar/Calendar.cjs.map +1 -0
- package/dist/components/Calendar/Calendar.js +156 -0
- package/dist/components/Calendar/Calendar.js.map +1 -0
- package/dist/components/Calendar/Calendar.module.css.cjs +2 -0
- package/dist/components/Calendar/Calendar.module.css.cjs.map +1 -0
- package/dist/components/Calendar/Calendar.module.css.js +28 -0
- package/dist/components/Calendar/Calendar.module.css.js.map +1 -0
- package/dist/components/Card/Card.cjs +2 -0
- package/dist/components/Card/Card.cjs.map +1 -0
- package/dist/components/Card/Card.js +45 -0
- package/dist/components/Card/Card.js.map +1 -0
- package/dist/components/Card/Card.module.css.cjs +2 -0
- package/dist/components/Card/Card.module.css.cjs.map +1 -0
- package/dist/components/Card/Card.module.css.js +28 -0
- package/dist/components/Card/Card.module.css.js.map +1 -0
- package/dist/components/Carousel/Carousel.cjs +2 -0
- package/dist/components/Carousel/Carousel.cjs.map +1 -0
- package/dist/components/Carousel/Carousel.js +97 -0
- package/dist/components/Carousel/Carousel.js.map +1 -0
- package/dist/components/Carousel/Carousel.module.css.cjs +2 -0
- package/dist/components/Carousel/Carousel.module.css.cjs.map +1 -0
- package/dist/components/Carousel/Carousel.module.css.js +26 -0
- package/dist/components/Carousel/Carousel.module.css.js.map +1 -0
- package/dist/components/Center/Center.cjs +2 -0
- package/dist/components/Center/Center.cjs.map +1 -0
- package/dist/components/Center/Center.js +23 -0
- package/dist/components/Center/Center.js.map +1 -0
- package/dist/components/Center/Center.module.css.cjs +2 -0
- package/dist/components/Center/Center.module.css.cjs.map +1 -0
- package/dist/components/Center/Center.module.css.js +14 -0
- package/dist/components/Center/Center.module.css.js.map +1 -0
- package/dist/components/Checkbox/Checkbox.cjs +2 -0
- package/dist/components/Checkbox/Checkbox.cjs.map +1 -0
- package/dist/components/Checkbox/Checkbox.js +49 -0
- package/dist/components/Checkbox/Checkbox.js.map +1 -0
- package/dist/components/Checkbox/Checkbox.module.css.cjs +2 -0
- package/dist/components/Checkbox/Checkbox.module.css.cjs.map +1 -0
- package/dist/components/Checkbox/Checkbox.module.css.js +20 -0
- package/dist/components/Checkbox/Checkbox.module.css.js.map +1 -0
- package/dist/components/ChipInput/ChipInput.cjs +2 -0
- package/dist/components/ChipInput/ChipInput.cjs.map +1 -0
- package/dist/components/ChipInput/ChipInput.js +79 -0
- package/dist/components/ChipInput/ChipInput.js.map +1 -0
- package/dist/components/ChipInput/ChipInput.module.css.cjs +2 -0
- package/dist/components/ChipInput/ChipInput.module.css.cjs.map +1 -0
- package/dist/components/ChipInput/ChipInput.module.css.js +24 -0
- package/dist/components/ChipInput/ChipInput.module.css.js.map +1 -0
- package/dist/components/ClickOutside/ClickOutside.cjs +2 -0
- package/dist/components/ClickOutside/ClickOutside.cjs.map +1 -0
- package/dist/components/ClickOutside/ClickOutside.js +20 -0
- package/dist/components/ClickOutside/ClickOutside.js.map +1 -0
- package/dist/components/Collapsible/Collapsible.cjs +2 -0
- package/dist/components/Collapsible/Collapsible.cjs.map +1 -0
- package/dist/components/Collapsible/Collapsible.js +47 -0
- package/dist/components/Collapsible/Collapsible.js.map +1 -0
- package/dist/components/Collapsible/Collapsible.module.css.cjs +2 -0
- package/dist/components/Collapsible/Collapsible.module.css.cjs.map +1 -0
- package/dist/components/Collapsible/Collapsible.module.css.js +12 -0
- package/dist/components/Collapsible/Collapsible.module.css.js.map +1 -0
- package/dist/components/Combobox/Combobox.cjs +2 -0
- package/dist/components/Combobox/Combobox.cjs.map +1 -0
- package/dist/components/Combobox/Combobox.js +103 -0
- package/dist/components/Combobox/Combobox.js.map +1 -0
- package/dist/components/Combobox/Combobox.module.css.cjs +2 -0
- package/dist/components/Combobox/Combobox.module.css.cjs.map +1 -0
- package/dist/components/Combobox/Combobox.module.css.js +32 -0
- package/dist/components/Combobox/Combobox.module.css.js.map +1 -0
- package/dist/components/Command/Command.cjs +2 -0
- package/dist/components/Command/Command.cjs.map +1 -0
- package/dist/components/Command/Command.js +143 -0
- package/dist/components/Command/Command.js.map +1 -0
- package/dist/components/Command/Command.module.css.cjs +2 -0
- package/dist/components/Command/Command.module.css.cjs.map +1 -0
- package/dist/components/Command/Command.module.css.js +34 -0
- package/dist/components/Command/Command.module.css.js.map +1 -0
- package/dist/components/ConditionalWrapper/ConditionalWrapper.cjs +2 -0
- package/dist/components/ConditionalWrapper/ConditionalWrapper.cjs.map +1 -0
- package/dist/components/ConditionalWrapper/ConditionalWrapper.js +12 -0
- package/dist/components/ConditionalWrapper/ConditionalWrapper.js.map +1 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.cjs +2 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.cjs.map +1 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.js +35 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenu.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.js +86 -0
- package/dist/components/ContextMenu/ContextMenu.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.module.css.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenu.module.css.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.module.css.js +18 -0
- package/dist/components/ContextMenu/ContextMenu.module.css.js.map +1 -0
- package/dist/components/CopyButton/CopyButton.cjs +2 -0
- package/dist/components/CopyButton/CopyButton.cjs.map +1 -0
- package/dist/components/CopyButton/CopyButton.js +43 -0
- package/dist/components/CopyButton/CopyButton.js.map +1 -0
- package/dist/components/CopyButton/CopyButton.module.css.cjs +2 -0
- package/dist/components/CopyButton/CopyButton.module.css.cjs.map +1 -0
- package/dist/components/CopyButton/CopyButton.module.css.js +10 -0
- package/dist/components/CopyButton/CopyButton.module.css.js.map +1 -0
- package/dist/components/DataList/DataList.cjs +2 -0
- package/dist/components/DataList/DataList.cjs.map +1 -0
- package/dist/components/DataList/DataList.js +17 -0
- package/dist/components/DataList/DataList.js.map +1 -0
- package/dist/components/DataList/DataList.module.css.cjs +2 -0
- package/dist/components/DataList/DataList.module.css.cjs.map +1 -0
- package/dist/components/DataList/DataList.module.css.js +10 -0
- package/dist/components/DataList/DataList.module.css.js.map +1 -0
- package/dist/components/DataTable/DataTable.cjs +2 -0
- package/dist/components/DataTable/DataTable.cjs.map +1 -0
- package/dist/components/DataTable/DataTable.js +111 -0
- package/dist/components/DataTable/DataTable.js.map +1 -0
- package/dist/components/DataTable/DataTable.module.css.cjs +2 -0
- package/dist/components/DataTable/DataTable.module.css.cjs.map +1 -0
- package/dist/components/DataTable/DataTable.module.css.js +14 -0
- package/dist/components/DataTable/DataTable.module.css.js.map +1 -0
- package/dist/components/DatePicker/DatePicker.cjs +2 -0
- package/dist/components/DatePicker/DatePicker.cjs.map +1 -0
- package/dist/components/DatePicker/DatePicker.js +19 -0
- package/dist/components/DatePicker/DatePicker.js.map +1 -0
- package/dist/components/DateRangePicker/DateRangePicker.cjs +2 -0
- package/dist/components/DateRangePicker/DateRangePicker.cjs.map +1 -0
- package/dist/components/DateRangePicker/DateRangePicker.js +152 -0
- package/dist/components/DateRangePicker/DateRangePicker.js.map +1 -0
- package/dist/components/DateRangePicker/DateRangePicker.module.css.cjs +2 -0
- package/dist/components/DateRangePicker/DateRangePicker.module.css.cjs.map +1 -0
- package/dist/components/DateRangePicker/DateRangePicker.module.css.js +40 -0
- package/dist/components/DateRangePicker/DateRangePicker.module.css.js.map +1 -0
- package/dist/components/DescriptionList/DescriptionList.cjs +2 -0
- package/dist/components/DescriptionList/DescriptionList.cjs.map +1 -0
- package/dist/components/DescriptionList/DescriptionList.js +14 -0
- package/dist/components/DescriptionList/DescriptionList.js.map +1 -0
- package/dist/components/DescriptionList/DescriptionList.module.css.cjs +2 -0
- package/dist/components/DescriptionList/DescriptionList.module.css.cjs.map +1 -0
- package/dist/components/DescriptionList/DescriptionList.module.css.js +12 -0
- package/dist/components/DescriptionList/DescriptionList.module.css.js.map +1 -0
- package/dist/components/Divider/Divider.cjs +2 -0
- package/dist/components/Divider/Divider.cjs.map +1 -0
- package/dist/components/Divider/Divider.js +57 -0
- package/dist/components/Divider/Divider.js.map +1 -0
- package/dist/components/Divider/Divider.module.css.cjs +2 -0
- package/dist/components/Divider/Divider.module.css.cjs.map +1 -0
- package/dist/components/Divider/Divider.module.css.js +20 -0
- package/dist/components/Divider/Divider.module.css.js.map +1 -0
- package/dist/components/Drawer/Drawer.cjs +2 -0
- package/dist/components/Drawer/Drawer.cjs.map +1 -0
- package/dist/components/Drawer/Drawer.js +96 -0
- package/dist/components/Drawer/Drawer.js.map +1 -0
- package/dist/components/Drawer/Drawer.module.css.cjs +2 -0
- package/dist/components/Drawer/Drawer.module.css.cjs.map +1 -0
- package/dist/components/Drawer/Drawer.module.css.js +42 -0
- package/dist/components/Drawer/Drawer.module.css.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenu.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.js +109 -0
- package/dist/components/DropdownMenu/DropdownMenu.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.module.css.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenu.module.css.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.module.css.js +28 -0
- package/dist/components/DropdownMenu/DropdownMenu.module.css.js.map +1 -0
- package/dist/components/Dropzone/Dropzone.cjs +2 -0
- package/dist/components/Dropzone/Dropzone.cjs.map +1 -0
- package/dist/components/Dropzone/Dropzone.js +80 -0
- package/dist/components/Dropzone/Dropzone.js.map +1 -0
- package/dist/components/Dropzone/Dropzone.module.css.cjs +2 -0
- package/dist/components/Dropzone/Dropzone.module.css.cjs.map +1 -0
- package/dist/components/Dropzone/Dropzone.module.css.js +16 -0
- package/dist/components/Dropzone/Dropzone.module.css.js.map +1 -0
- package/dist/components/EmptyState/EmptyState.cjs +2 -0
- package/dist/components/EmptyState/EmptyState.cjs.map +1 -0
- package/dist/components/EmptyState/EmptyState.js +15 -0
- package/dist/components/EmptyState/EmptyState.js.map +1 -0
- package/dist/components/EmptyState/EmptyState.module.css.cjs +2 -0
- package/dist/components/EmptyState/EmptyState.module.css.cjs.map +1 -0
- package/dist/components/EmptyState/EmptyState.module.css.js +16 -0
- package/dist/components/EmptyState/EmptyState.module.css.js.map +1 -0
- package/dist/components/ErrorState/ErrorState.cjs +2 -0
- package/dist/components/ErrorState/ErrorState.cjs.map +1 -0
- package/dist/components/ErrorState/ErrorState.js +35 -0
- package/dist/components/ErrorState/ErrorState.js.map +1 -0
- package/dist/components/ErrorState/ErrorState.module.css.cjs +2 -0
- package/dist/components/ErrorState/ErrorState.module.css.cjs.map +1 -0
- package/dist/components/ErrorState/ErrorState.module.css.js +16 -0
- package/dist/components/ErrorState/ErrorState.module.css.js.map +1 -0
- package/dist/components/ErrorText/ErrorText.cjs +2 -0
- package/dist/components/ErrorText/ErrorText.cjs.map +1 -0
- package/dist/components/ErrorText/ErrorText.js +10 -0
- package/dist/components/ErrorText/ErrorText.js.map +1 -0
- package/dist/components/ErrorText/ErrorText.module.css.cjs +2 -0
- package/dist/components/ErrorText/ErrorText.module.css.cjs.map +1 -0
- package/dist/components/ErrorText/ErrorText.module.css.js +8 -0
- package/dist/components/ErrorText/ErrorText.module.css.js.map +1 -0
- package/dist/components/FileUpload/FileUpload.cjs +2 -0
- package/dist/components/FileUpload/FileUpload.cjs.map +1 -0
- package/dist/components/FileUpload/FileUpload.js +127 -0
- package/dist/components/FileUpload/FileUpload.js.map +1 -0
- package/dist/components/FileUpload/FileUpload.module.css.cjs +2 -0
- package/dist/components/FileUpload/FileUpload.module.css.cjs.map +1 -0
- package/dist/components/FileUpload/FileUpload.module.css.js +32 -0
- package/dist/components/FileUpload/FileUpload.module.css.js.map +1 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.cjs +2 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.cjs.map +1 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.js +39 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.js.map +1 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.module.css.cjs +2 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.module.css.cjs.map +1 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.module.css.js +32 -0
- package/dist/components/FloatingActionButton/FloatingActionButton.module.css.js.map +1 -0
- package/dist/components/For/For.cjs +2 -0
- package/dist/components/For/For.cjs.map +1 -0
- package/dist/components/For/For.js +9 -0
- package/dist/components/For/For.js.map +1 -0
- package/dist/components/Form/Form.cjs +2 -0
- package/dist/components/Form/Form.cjs.map +1 -0
- package/dist/components/Form/Form.js +72 -0
- package/dist/components/Form/Form.js.map +1 -0
- package/dist/components/Form/Form.module.css.cjs +2 -0
- package/dist/components/Form/Form.module.css.cjs.map +1 -0
- package/dist/components/Form/Form.module.css.js +36 -0
- package/dist/components/Form/Form.module.css.js.map +1 -0
- package/dist/components/HoverCard/HoverCard.cjs +2 -0
- package/dist/components/HoverCard/HoverCard.cjs.map +1 -0
- package/dist/components/HoverCard/HoverCard.js +48 -0
- package/dist/components/HoverCard/HoverCard.js.map +1 -0
- package/dist/components/HoverCard/HoverCard.module.css.cjs +2 -0
- package/dist/components/HoverCard/HoverCard.module.css.cjs.map +1 -0
- package/dist/components/HoverCard/HoverCard.module.css.js +22 -0
- package/dist/components/HoverCard/HoverCard.module.css.js.map +1 -0
- package/dist/components/Image/Image.cjs +2 -0
- package/dist/components/Image/Image.cjs.map +1 -0
- package/dist/components/Image/Image.js +32 -0
- package/dist/components/Image/Image.js.map +1 -0
- package/dist/components/Image/Image.module.css.cjs +2 -0
- package/dist/components/Image/Image.module.css.cjs.map +1 -0
- package/dist/components/Image/Image.module.css.js +8 -0
- package/dist/components/Image/Image.module.css.js.map +1 -0
- package/dist/components/Input/Input.cjs +2 -0
- package/dist/components/Input/Input.cjs.map +1 -0
- package/dist/components/Input/Input.js +52 -0
- package/dist/components/Input/Input.js.map +1 -0
- package/dist/components/Input/Input.module.css.cjs +2 -0
- package/dist/components/Input/Input.module.css.cjs.map +1 -0
- package/dist/components/Input/Input.module.css.js +36 -0
- package/dist/components/Input/Input.module.css.js.map +1 -0
- package/dist/components/InstallBanner/InstallBanner.cjs +2 -0
- package/dist/components/InstallBanner/InstallBanner.cjs.map +1 -0
- package/dist/components/InstallBanner/InstallBanner.js +66 -0
- package/dist/components/InstallBanner/InstallBanner.js.map +1 -0
- package/dist/components/InstallBanner/InstallBanner.module.css.cjs +2 -0
- package/dist/components/InstallBanner/InstallBanner.module.css.cjs.map +1 -0
- package/dist/components/InstallBanner/InstallBanner.module.css.js +18 -0
- package/dist/components/InstallBanner/InstallBanner.module.css.js.map +1 -0
- package/dist/components/InstallButton/InstallButton.cjs +2 -0
- package/dist/components/InstallButton/InstallButton.cjs.map +1 -0
- package/dist/components/InstallButton/InstallButton.js +20 -0
- package/dist/components/InstallButton/InstallButton.js.map +1 -0
- package/dist/components/Kbd/Kbd.cjs +2 -0
- package/dist/components/Kbd/Kbd.cjs.map +1 -0
- package/dist/components/Kbd/Kbd.js +10 -0
- package/dist/components/Kbd/Kbd.js.map +1 -0
- package/dist/components/Kbd/Kbd.module.css.cjs +2 -0
- package/dist/components/Kbd/Kbd.module.css.cjs.map +1 -0
- package/dist/components/Kbd/Kbd.module.css.js +14 -0
- package/dist/components/Kbd/Kbd.module.css.js.map +1 -0
- package/dist/components/Label/Label.cjs +2 -0
- package/dist/components/Label/Label.cjs.map +1 -0
- package/dist/components/Label/Label.js +14 -0
- package/dist/components/Label/Label.js.map +1 -0
- package/dist/components/Label/Label.module.css.cjs +2 -0
- package/dist/components/Label/Label.module.css.cjs.map +1 -0
- package/dist/components/Label/Label.module.css.js +10 -0
- package/dist/components/Label/Label.module.css.js.map +1 -0
- package/dist/components/Layout/Layout.cjs +2 -0
- package/dist/components/Layout/Layout.cjs.map +1 -0
- package/dist/components/Layout/Layout.js +72 -0
- package/dist/components/Layout/Layout.js.map +1 -0
- package/dist/components/Layout/Layout.module.css.cjs +2 -0
- package/dist/components/Layout/Layout.module.css.cjs.map +1 -0
- package/dist/components/Layout/Layout.module.css.js +44 -0
- package/dist/components/Layout/Layout.module.css.js.map +1 -0
- package/dist/components/ListTile/ListTile.cjs +2 -0
- package/dist/components/ListTile/ListTile.cjs.map +1 -0
- package/dist/components/ListTile/ListTile.js +42 -0
- package/dist/components/ListTile/ListTile.js.map +1 -0
- package/dist/components/ListTile/ListTile.module.css.cjs +2 -0
- package/dist/components/ListTile/ListTile.module.css.cjs.map +1 -0
- package/dist/components/ListTile/ListTile.module.css.js +24 -0
- package/dist/components/ListTile/ListTile.module.css.js.map +1 -0
- package/dist/components/Menubar/Menubar.cjs +2 -0
- package/dist/components/Menubar/Menubar.cjs.map +1 -0
- package/dist/components/Menubar/Menubar.js +84 -0
- package/dist/components/Menubar/Menubar.js.map +1 -0
- package/dist/components/Menubar/Menubar.module.css.cjs +2 -0
- package/dist/components/Menubar/Menubar.module.css.cjs.map +1 -0
- package/dist/components/Menubar/Menubar.module.css.js +24 -0
- package/dist/components/Menubar/Menubar.module.css.js.map +1 -0
- package/dist/components/Modal/Modal.cjs +2 -0
- package/dist/components/Modal/Modal.cjs.map +1 -0
- package/dist/components/Modal/Modal.js +97 -0
- package/dist/components/Modal/Modal.js.map +1 -0
- package/dist/components/Modal/Modal.module.css.cjs +2 -0
- package/dist/components/Modal/Modal.module.css.cjs.map +1 -0
- package/dist/components/Modal/Modal.module.css.js +40 -0
- package/dist/components/Modal/Modal.module.css.js.map +1 -0
- package/dist/components/ModalsManager/ModalsManager.cjs +2 -0
- package/dist/components/ModalsManager/ModalsManager.cjs.map +1 -0
- package/dist/components/ModalsManager/ModalsManager.js +88 -0
- package/dist/components/ModalsManager/ModalsManager.js.map +1 -0
- package/dist/components/ModalsManager/ModalsManager.module.css.cjs +2 -0
- package/dist/components/ModalsManager/ModalsManager.module.css.cjs.map +1 -0
- package/dist/components/ModalsManager/ModalsManager.module.css.js +8 -0
- package/dist/components/ModalsManager/ModalsManager.module.css.js.map +1 -0
- package/dist/components/Money/Money.cjs +2 -0
- package/dist/components/Money/Money.cjs.map +1 -0
- package/dist/components/Money/Money.js +12 -0
- package/dist/components/Money/Money.js.map +1 -0
- package/dist/components/MultiSelect/MultiSelect.cjs +2 -0
- package/dist/components/MultiSelect/MultiSelect.cjs.map +1 -0
- package/dist/components/MultiSelect/MultiSelect.js +155 -0
- package/dist/components/MultiSelect/MultiSelect.js.map +1 -0
- package/dist/components/MultiSelect/MultiSelect.module.css.cjs +2 -0
- package/dist/components/MultiSelect/MultiSelect.module.css.cjs.map +1 -0
- package/dist/components/MultiSelect/MultiSelect.module.css.js +38 -0
- package/dist/components/MultiSelect/MultiSelect.module.css.js.map +1 -0
- package/dist/components/NProgress/NProgress.cjs +2 -0
- package/dist/components/NProgress/NProgress.cjs.map +1 -0
- package/dist/components/NProgress/NProgress.js +66 -0
- package/dist/components/NProgress/NProgress.js.map +1 -0
- package/dist/components/NProgress/NProgress.module.css.cjs +2 -0
- package/dist/components/NProgress/NProgress.module.css.cjs.map +1 -0
- package/dist/components/NProgress/NProgress.module.css.js +8 -0
- package/dist/components/NProgress/NProgress.module.css.js.map +1 -0
- package/dist/components/Navbar/Navbar.cjs +2 -0
- package/dist/components/Navbar/Navbar.cjs.map +1 -0
- package/dist/components/Navbar/Navbar.js +36 -0
- package/dist/components/Navbar/Navbar.js.map +1 -0
- package/dist/components/Navbar/Navbar.module.css.cjs +2 -0
- package/dist/components/Navbar/Navbar.module.css.cjs.map +1 -0
- package/dist/components/Navbar/Navbar.module.css.js +24 -0
- package/dist/components/Navbar/Navbar.module.css.js.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.cjs +2 -0
- package/dist/components/NavigationMenu/NavigationMenu.cjs.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.js +78 -0
- package/dist/components/NavigationMenu/NavigationMenu.js.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.module.css.cjs +2 -0
- package/dist/components/NavigationMenu/NavigationMenu.module.css.cjs.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.module.css.js +20 -0
- package/dist/components/NavigationMenu/NavigationMenu.module.css.js.map +1 -0
- package/dist/components/NavigationRail/NavigationRail.cjs +2 -0
- package/dist/components/NavigationRail/NavigationRail.cjs.map +1 -0
- package/dist/components/NavigationRail/NavigationRail.js +42 -0
- package/dist/components/NavigationRail/NavigationRail.js.map +1 -0
- package/dist/components/NavigationRail/NavigationRail.module.css.cjs +2 -0
- package/dist/components/NavigationRail/NavigationRail.module.css.cjs.map +1 -0
- package/dist/components/NavigationRail/NavigationRail.module.css.js +26 -0
- package/dist/components/NavigationRail/NavigationRail.module.css.js.map +1 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.cjs +2 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.cjs.map +1 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.js +50 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.js.map +1 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.module.css.cjs +2 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.module.css.cjs.map +1 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.module.css.js +18 -0
- package/dist/components/OfflineIndicator/OfflineIndicator.module.css.js.map +1 -0
- package/dist/components/Page/Page.cjs +2 -0
- package/dist/components/Page/Page.cjs.map +1 -0
- package/dist/components/Page/Page.js +34 -0
- package/dist/components/Page/Page.js.map +1 -0
- package/dist/components/Page/Page.module.css.cjs +2 -0
- package/dist/components/Page/Page.module.css.cjs.map +1 -0
- package/dist/components/Page/Page.module.css.js +28 -0
- package/dist/components/Page/Page.module.css.js.map +1 -0
- package/dist/components/Pagination/Pagination.cjs +2 -0
- package/dist/components/Pagination/Pagination.cjs.map +1 -0
- package/dist/components/Pagination/Pagination.js +97 -0
- package/dist/components/Pagination/Pagination.js.map +1 -0
- package/dist/components/Pagination/Pagination.module.css.cjs +2 -0
- package/dist/components/Pagination/Pagination.module.css.cjs.map +1 -0
- package/dist/components/Pagination/Pagination.module.css.js +22 -0
- package/dist/components/Pagination/Pagination.module.css.js.map +1 -0
- package/dist/components/PasswordInput/PasswordInput.cjs +2 -0
- package/dist/components/PasswordInput/PasswordInput.cjs.map +1 -0
- package/dist/components/PasswordInput/PasswordInput.js +76 -0
- package/dist/components/PasswordInput/PasswordInput.js.map +1 -0
- package/dist/components/PasswordInput/PasswordInput.module.css.cjs +2 -0
- package/dist/components/PasswordInput/PasswordInput.module.css.cjs.map +1 -0
- package/dist/components/PasswordInput/PasswordInput.module.css.js +44 -0
- package/dist/components/PasswordInput/PasswordInput.module.css.js.map +1 -0
- package/dist/components/PinInput/PinInput.cjs +2 -0
- package/dist/components/PinInput/PinInput.cjs.map +1 -0
- package/dist/components/PinInput/PinInput.js +86 -0
- package/dist/components/PinInput/PinInput.js.map +1 -0
- package/dist/components/PinInput/PinInput.module.css.cjs +2 -0
- package/dist/components/PinInput/PinInput.module.css.cjs.map +1 -0
- package/dist/components/PinInput/PinInput.module.css.js +26 -0
- package/dist/components/PinInput/PinInput.module.css.js.map +1 -0
- package/dist/components/Popover/Popover.cjs +2 -0
- package/dist/components/Popover/Popover.cjs.map +1 -0
- package/dist/components/Popover/Popover.js +60 -0
- package/dist/components/Popover/Popover.js.map +1 -0
- package/dist/components/Popover/Popover.module.css.cjs +2 -0
- package/dist/components/Popover/Popover.module.css.cjs.map +1 -0
- package/dist/components/Popover/Popover.module.css.js +20 -0
- package/dist/components/Popover/Popover.module.css.js.map +1 -0
- package/dist/components/Portal/Portal.cjs +2 -0
- package/dist/components/Portal/Portal.cjs.map +1 -0
- package/dist/components/Portal/Portal.js +10 -0
- package/dist/components/Portal/Portal.js.map +1 -0
- package/dist/components/Progress/Progress.cjs +2 -0
- package/dist/components/Progress/Progress.cjs.map +1 -0
- package/dist/components/Progress/Progress.js +48 -0
- package/dist/components/Progress/Progress.js.map +1 -0
- package/dist/components/Progress/Progress.module.css.cjs +2 -0
- package/dist/components/Progress/Progress.module.css.cjs.map +1 -0
- package/dist/components/Progress/Progress.module.css.js +24 -0
- package/dist/components/Progress/Progress.module.css.js.map +1 -0
- package/dist/components/Radio/Radio.cjs +2 -0
- package/dist/components/Radio/Radio.cjs.map +1 -0
- package/dist/components/Radio/Radio.js +82 -0
- package/dist/components/Radio/Radio.js.map +1 -0
- package/dist/components/Radio/Radio.module.css.cjs +2 -0
- package/dist/components/Radio/Radio.module.css.cjs.map +1 -0
- package/dist/components/Radio/Radio.module.css.js +24 -0
- package/dist/components/Radio/Radio.module.css.js.map +1 -0
- package/dist/components/RangeSlider/RangeSlider.cjs +2 -0
- package/dist/components/RangeSlider/RangeSlider.cjs.map +1 -0
- package/dist/components/RangeSlider/RangeSlider.js +79 -0
- package/dist/components/RangeSlider/RangeSlider.js.map +1 -0
- package/dist/components/RangeSlider/RangeSlider.module.css.cjs +2 -0
- package/dist/components/RangeSlider/RangeSlider.module.css.cjs.map +1 -0
- package/dist/components/RangeSlider/RangeSlider.module.css.js +22 -0
- package/dist/components/RangeSlider/RangeSlider.module.css.js.map +1 -0
- package/dist/components/RatingStars/RatingStars.cjs +2 -0
- package/dist/components/RatingStars/RatingStars.cjs.map +1 -0
- package/dist/components/RatingStars/RatingStars.js +71 -0
- package/dist/components/RatingStars/RatingStars.js.map +1 -0
- package/dist/components/RatingStars/RatingStars.module.css.cjs +2 -0
- package/dist/components/RatingStars/RatingStars.module.css.cjs.map +1 -0
- package/dist/components/RatingStars/RatingStars.module.css.js +22 -0
- package/dist/components/RatingStars/RatingStars.module.css.js.map +1 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.cjs +2 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.cjs.map +1 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.js +90 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.js.map +1 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.module.css.cjs +2 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.module.css.cjs.map +1 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.module.css.js +14 -0
- package/dist/components/RefreshIndicator/RefreshIndicator.module.css.js.map +1 -0
- package/dist/components/RelativeTime/RelativeTime.cjs +2 -0
- package/dist/components/RelativeTime/RelativeTime.cjs.map +1 -0
- package/dist/components/RelativeTime/RelativeTime.js +10 -0
- package/dist/components/RelativeTime/RelativeTime.js.map +1 -0
- package/dist/components/Resizable/Resizable.cjs +2 -0
- package/dist/components/Resizable/Resizable.cjs.map +1 -0
- package/dist/components/Resizable/Resizable.js +89 -0
- package/dist/components/Resizable/Resizable.js.map +1 -0
- package/dist/components/Resizable/Resizable.module.css.cjs +2 -0
- package/dist/components/Resizable/Resizable.module.css.cjs.map +1 -0
- package/dist/components/Resizable/Resizable.module.css.js +18 -0
- package/dist/components/Resizable/Resizable.module.css.js.map +1 -0
- package/dist/components/Responsive/Responsive.cjs +2 -0
- package/dist/components/Responsive/Responsive.cjs.map +1 -0
- package/dist/components/Responsive/Responsive.js +17 -0
- package/dist/components/Responsive/Responsive.js.map +1 -0
- package/dist/components/SafeArea/SafeArea.cjs +2 -0
- package/dist/components/SafeArea/SafeArea.cjs.map +1 -0
- package/dist/components/SafeArea/SafeArea.js +33 -0
- package/dist/components/SafeArea/SafeArea.js.map +1 -0
- package/dist/components/SafeArea/SafeArea.module.css.cjs +2 -0
- package/dist/components/SafeArea/SafeArea.module.css.cjs.map +1 -0
- package/dist/components/SafeArea/SafeArea.module.css.js +18 -0
- package/dist/components/SafeArea/SafeArea.module.css.js.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.cjs +2 -0
- package/dist/components/ScrollArea/ScrollArea.cjs.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.js +17 -0
- package/dist/components/ScrollArea/ScrollArea.js.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.module.css.cjs +2 -0
- package/dist/components/ScrollArea/ScrollArea.module.css.cjs.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.module.css.js +8 -0
- package/dist/components/ScrollArea/ScrollArea.module.css.js.map +1 -0
- package/dist/components/SearchBar/SearchBar.cjs +2 -0
- package/dist/components/SearchBar/SearchBar.cjs.map +1 -0
- package/dist/components/SearchBar/SearchBar.js +55 -0
- package/dist/components/SearchBar/SearchBar.js.map +1 -0
- package/dist/components/SearchBar/SearchBar.module.css.cjs +2 -0
- package/dist/components/SearchBar/SearchBar.module.css.cjs.map +1 -0
- package/dist/components/SearchBar/SearchBar.module.css.js +14 -0
- package/dist/components/SearchBar/SearchBar.module.css.js.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.cjs +2 -0
- package/dist/components/SegmentedControl/SegmentedControl.cjs.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.js +46 -0
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.module.css.cjs +2 -0
- package/dist/components/SegmentedControl/SegmentedControl.module.css.cjs.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.module.css.js +24 -0
- package/dist/components/SegmentedControl/SegmentedControl.module.css.js.map +1 -0
- package/dist/components/Select/Select.cjs +2 -0
- package/dist/components/Select/Select.cjs.map +1 -0
- package/dist/components/Select/Select.js +61 -0
- package/dist/components/Select/Select.js.map +1 -0
- package/dist/components/Select/Select.module.css.cjs +2 -0
- package/dist/components/Select/Select.module.css.cjs.map +1 -0
- package/dist/components/Select/Select.module.css.js +24 -0
- package/dist/components/Select/Select.module.css.js.map +1 -0
- package/dist/components/Sidebar/Sidebar.cjs +2 -0
- package/dist/components/Sidebar/Sidebar.cjs.map +1 -0
- package/dist/components/Sidebar/Sidebar.js +54 -0
- package/dist/components/Sidebar/Sidebar.js.map +1 -0
- package/dist/components/Sidebar/Sidebar.module.css.cjs +2 -0
- package/dist/components/Sidebar/Sidebar.module.css.cjs.map +1 -0
- package/dist/components/Sidebar/Sidebar.module.css.js +26 -0
- package/dist/components/Sidebar/Sidebar.module.css.js.map +1 -0
- package/dist/components/Skeleton/Skeleton.cjs +2 -0
- package/dist/components/Skeleton/Skeleton.cjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.js +22 -0
- package/dist/components/Skeleton/Skeleton.js.map +1 -0
- package/dist/components/Skeleton/Skeleton.module.css.cjs +2 -0
- package/dist/components/Skeleton/Skeleton.module.css.cjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.module.css.js +12 -0
- package/dist/components/Skeleton/Skeleton.module.css.js.map +1 -0
- package/dist/components/Slider/Slider.cjs +2 -0
- package/dist/components/Slider/Slider.cjs.map +1 -0
- package/dist/components/Slider/Slider.js +56 -0
- package/dist/components/Slider/Slider.js.map +1 -0
- package/dist/components/Slider/Slider.module.css.cjs +2 -0
- package/dist/components/Slider/Slider.module.css.cjs.map +1 -0
- package/dist/components/Slider/Slider.module.css.js +22 -0
- package/dist/components/Slider/Slider.module.css.js.map +1 -0
- package/dist/components/Spacer/Spacer.cjs +2 -0
- package/dist/components/Spacer/Spacer.cjs.map +1 -0
- package/dist/components/Spacer/Spacer.js +10 -0
- package/dist/components/Spacer/Spacer.js.map +1 -0
- package/dist/components/Spacer/Spacer.module.css.cjs +2 -0
- package/dist/components/Spacer/Spacer.module.css.cjs.map +1 -0
- package/dist/components/Spacer/Spacer.module.css.js +14 -0
- package/dist/components/Spacer/Spacer.module.css.js.map +1 -0
- package/dist/components/Spinner/Spinner.cjs +2 -0
- package/dist/components/Spinner/Spinner.cjs.map +1 -0
- package/dist/components/Spinner/Spinner.js +36 -0
- package/dist/components/Spinner/Spinner.js.map +1 -0
- package/dist/components/Spinner/Spinner.module.css.cjs +2 -0
- package/dist/components/Spinner/Spinner.module.css.cjs.map +1 -0
- package/dist/components/Spinner/Spinner.module.css.js +26 -0
- package/dist/components/Spinner/Spinner.module.css.js.map +1 -0
- package/dist/components/Stat/Stat.cjs +2 -0
- package/dist/components/Stat/Stat.cjs.map +1 -0
- package/dist/components/Stat/Stat.js +38 -0
- package/dist/components/Stat/Stat.js.map +1 -0
- package/dist/components/Stat/Stat.module.css.cjs +2 -0
- package/dist/components/Stat/Stat.module.css.cjs.map +1 -0
- package/dist/components/Stat/Stat.module.css.js +28 -0
- package/dist/components/Stat/Stat.module.css.js.map +1 -0
- package/dist/components/Stepper/Stepper.cjs +2 -0
- package/dist/components/Stepper/Stepper.cjs.map +1 -0
- package/dist/components/Stepper/Stepper.js +43 -0
- package/dist/components/Stepper/Stepper.js.map +1 -0
- package/dist/components/Stepper/Stepper.module.css.cjs +2 -0
- package/dist/components/Stepper/Stepper.module.css.cjs.map +1 -0
- package/dist/components/Stepper/Stepper.module.css.js +22 -0
- package/dist/components/Stepper/Stepper.module.css.js.map +1 -0
- package/dist/components/StepperInput/StepperInput.cjs +2 -0
- package/dist/components/StepperInput/StepperInput.cjs.map +1 -0
- package/dist/components/StepperInput/StepperInput.js +56 -0
- package/dist/components/StepperInput/StepperInput.js.map +1 -0
- package/dist/components/StepperInput/StepperInput.module.css.cjs +2 -0
- package/dist/components/StepperInput/StepperInput.module.css.cjs.map +1 -0
- package/dist/components/StepperInput/StepperInput.module.css.js +24 -0
- package/dist/components/StepperInput/StepperInput.module.css.js.map +1 -0
- package/dist/components/Switch/Switch.cjs +2 -0
- package/dist/components/Switch/Switch.cjs.map +1 -0
- package/dist/components/Switch/Switch.js +25 -0
- package/dist/components/Switch/Switch.js.map +1 -0
- package/dist/components/Switch/Switch.module.css.cjs +2 -0
- package/dist/components/Switch/Switch.module.css.cjs.map +1 -0
- package/dist/components/Switch/Switch.module.css.js +18 -0
- package/dist/components/Switch/Switch.module.css.js.map +1 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.cjs +2 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.cjs.map +1 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.js +62 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.js.map +1 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.module.css.cjs +2 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.module.css.cjs.map +1 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.module.css.js +28 -0
- package/dist/components/SyncStatusBadge/SyncStatusBadge.module.css.js.map +1 -0
- package/dist/components/Table/Table.cjs +2 -0
- package/dist/components/Table/Table.cjs.map +1 -0
- package/dist/components/Table/Table.js +67 -0
- package/dist/components/Table/Table.js.map +1 -0
- package/dist/components/Table/Table.module.css.cjs +2 -0
- package/dist/components/Table/Table.module.css.cjs.map +1 -0
- package/dist/components/Table/Table.module.css.js +34 -0
- package/dist/components/Table/Table.module.css.js.map +1 -0
- package/dist/components/Tabs/Tabs.cjs +2 -0
- package/dist/components/Tabs/Tabs.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.js +51 -0
- package/dist/components/Tabs/Tabs.js.map +1 -0
- package/dist/components/Tabs/Tabs.module.css.cjs +2 -0
- package/dist/components/Tabs/Tabs.module.css.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.module.css.js +16 -0
- package/dist/components/Tabs/Tabs.module.css.js.map +1 -0
- package/dist/components/Tag/Tag.cjs +2 -0
- package/dist/components/Tag/Tag.cjs.map +1 -0
- package/dist/components/Tag/Tag.js +30 -0
- package/dist/components/Tag/Tag.js.map +1 -0
- package/dist/components/Tag/Tag.module.css.cjs +2 -0
- package/dist/components/Tag/Tag.module.css.cjs.map +1 -0
- package/dist/components/Tag/Tag.module.css.js +30 -0
- package/dist/components/Tag/Tag.module.css.js.map +1 -0
- package/dist/components/Textarea/Textarea.cjs +2 -0
- package/dist/components/Textarea/Textarea.cjs.map +1 -0
- package/dist/components/Textarea/Textarea.js +29 -0
- package/dist/components/Textarea/Textarea.js.map +1 -0
- package/dist/components/Textarea/Textarea.module.css.cjs +2 -0
- package/dist/components/Textarea/Textarea.module.css.cjs.map +1 -0
- package/dist/components/Textarea/Textarea.module.css.js +20 -0
- package/dist/components/Textarea/Textarea.module.css.js.map +1 -0
- package/dist/components/TimePicker/TimePicker.cjs +2 -0
- package/dist/components/TimePicker/TimePicker.cjs.map +1 -0
- package/dist/components/TimePicker/TimePicker.js +107 -0
- package/dist/components/TimePicker/TimePicker.js.map +1 -0
- package/dist/components/TimePicker/TimePicker.module.css.cjs +2 -0
- package/dist/components/TimePicker/TimePicker.module.css.cjs.map +1 -0
- package/dist/components/TimePicker/TimePicker.module.css.js +24 -0
- package/dist/components/TimePicker/TimePicker.module.css.js.map +1 -0
- package/dist/components/Timeline/Timeline.cjs +2 -0
- package/dist/components/Timeline/Timeline.cjs.map +1 -0
- package/dist/components/Timeline/Timeline.js +35 -0
- package/dist/components/Timeline/Timeline.js.map +1 -0
- package/dist/components/Timeline/Timeline.module.css.cjs +2 -0
- package/dist/components/Timeline/Timeline.module.css.cjs.map +1 -0
- package/dist/components/Timeline/Timeline.module.css.js +36 -0
- package/dist/components/Timeline/Timeline.module.css.js.map +1 -0
- package/dist/components/Toast/Toast.module.css.cjs +2 -0
- package/dist/components/Toast/Toast.module.css.cjs.map +1 -0
- package/dist/components/Toast/Toast.module.css.js +38 -0
- package/dist/components/Toast/Toast.module.css.js.map +1 -0
- package/dist/components/Toast/ToastProvider.cjs +2 -0
- package/dist/components/Toast/ToastProvider.cjs.map +1 -0
- package/dist/components/Toast/ToastProvider.js +114 -0
- package/dist/components/Toast/ToastProvider.js.map +1 -0
- package/dist/components/Toggle/Toggle.cjs +2 -0
- package/dist/components/Toggle/Toggle.cjs.map +1 -0
- package/dist/components/Toggle/Toggle.js +49 -0
- package/dist/components/Toggle/Toggle.js.map +1 -0
- package/dist/components/Toggle/Toggle.module.css.cjs +2 -0
- package/dist/components/Toggle/Toggle.module.css.cjs.map +1 -0
- package/dist/components/Toggle/Toggle.module.css.js +18 -0
- package/dist/components/Toggle/Toggle.module.css.js.map +1 -0
- package/dist/components/ToggleGroup/ToggleGroup.cjs +2 -0
- package/dist/components/ToggleGroup/ToggleGroup.cjs.map +1 -0
- package/dist/components/ToggleGroup/ToggleGroup.js +74 -0
- package/dist/components/ToggleGroup/ToggleGroup.js.map +1 -0
- package/dist/components/ToggleGroup/ToggleGroup.module.css.cjs +2 -0
- package/dist/components/ToggleGroup/ToggleGroup.module.css.cjs.map +1 -0
- package/dist/components/ToggleGroup/ToggleGroup.module.css.js +12 -0
- package/dist/components/ToggleGroup/ToggleGroup.module.css.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.cjs +2 -0
- package/dist/components/Tooltip/Tooltip.cjs.map +1 -0
- package/dist/components/Tooltip/Tooltip.js +43 -0
- package/dist/components/Tooltip/Tooltip.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.module.css.cjs +2 -0
- package/dist/components/Tooltip/Tooltip.module.css.cjs.map +1 -0
- package/dist/components/Tooltip/Tooltip.module.css.js +20 -0
- package/dist/components/Tooltip/Tooltip.module.css.js.map +1 -0
- package/dist/components/TruncateText/TruncateText.cjs +2 -0
- package/dist/components/TruncateText/TruncateText.cjs.map +1 -0
- package/dist/components/TruncateText/TruncateText.js +20 -0
- package/dist/components/TruncateText/TruncateText.js.map +1 -0
- package/dist/components/TruncateText/TruncateText.module.css.cjs +2 -0
- package/dist/components/TruncateText/TruncateText.module.css.cjs.map +1 -0
- package/dist/components/TruncateText/TruncateText.module.css.js +8 -0
- package/dist/components/TruncateText/TruncateText.module.css.js.map +1 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.cjs +2 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.cjs.map +1 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.js +43 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.js.map +1 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.module.css.cjs +2 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.module.css.cjs.map +1 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.module.css.js +20 -0
- package/dist/components/UpdatePrompt/UpdatePrompt.module.css.js.map +1 -0
- package/dist/components/VirtualList/VirtualList.cjs +2 -0
- package/dist/components/VirtualList/VirtualList.cjs.map +1 -0
- package/dist/components/VirtualList/VirtualList.js +50 -0
- package/dist/components/VirtualList/VirtualList.js.map +1 -0
- package/dist/components/VirtualList/VirtualList.module.css.cjs +2 -0
- package/dist/components/VirtualList/VirtualList.module.css.cjs.map +1 -0
- package/dist/components/VirtualList/VirtualList.module.css.js +12 -0
- package/dist/components/VirtualList/VirtualList.module.css.js.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.cjs +2 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.cjs.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js +15 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.module.css.cjs +2 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.module.css.cjs.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.module.css.js +8 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.module.css.js.map +1 -0
- package/dist/data/create-data-provider.cjs +2 -0
- package/dist/data/create-data-provider.cjs.map +1 -0
- package/dist/data/create-data-provider.js +46 -0
- package/dist/data/create-data-provider.js.map +1 -0
- package/dist/data/data-provider-context.cjs +2 -0
- package/dist/data/data-provider-context.cjs.map +1 -0
- package/dist/data/data-provider-context.js +17 -0
- package/dist/data/data-provider-context.js.map +1 -0
- package/dist/data/use-resource.cjs +2 -0
- package/dist/data/use-resource.cjs.map +1 -0
- package/dist/data/use-resource.js +66 -0
- package/dist/data/use-resource.js.map +1 -0
- package/dist/editor/RichTextEditor.cjs +2 -0
- package/dist/editor/RichTextEditor.cjs.map +1 -0
- package/dist/editor/RichTextEditor.js +183 -0
- package/dist/editor/RichTextEditor.js.map +1 -0
- package/dist/editor/RichTextEditor.module.css.cjs +2 -0
- package/dist/editor/RichTextEditor.module.css.cjs.map +1 -0
- package/dist/editor/RichTextEditor.module.css.js +18 -0
- package/dist/editor/RichTextEditor.module.css.js.map +1 -0
- package/dist/editor.cjs +1 -1
- package/dist/editor.cjs.map +1 -1
- package/dist/editor.js +2 -187
- package/dist/editor.js.map +1 -1
- package/dist/error-boundary/ErrorBoundary.cjs +2 -0
- package/dist/error-boundary/ErrorBoundary.cjs.map +1 -0
- package/dist/error-boundary/ErrorBoundary.js +32 -0
- package/dist/error-boundary/ErrorBoundary.js.map +1 -0
- package/dist/error-boundary/use-error-handler.cjs +2 -0
- package/dist/error-boundary/use-error-handler.cjs.map +1 -0
- package/dist/error-boundary/use-error-handler.js +13 -0
- package/dist/error-boundary/use-error-handler.js.map +1 -0
- package/dist/feature-flags/FeatureFlagsProvider.cjs +2 -0
- package/dist/feature-flags/FeatureFlagsProvider.cjs.map +1 -0
- package/dist/feature-flags/FeatureFlagsProvider.js +29 -0
- package/dist/feature-flags/FeatureFlagsProvider.js.map +1 -0
- package/dist/feature-flags/growthbook-adapter.cjs +2 -0
- package/dist/feature-flags/growthbook-adapter.cjs.map +1 -0
- package/dist/feature-flags/growthbook-adapter.js +27 -0
- package/dist/feature-flags/growthbook-adapter.js.map +1 -0
- package/dist/feature-flags/in-memory-adapter.cjs +2 -0
- package/dist/feature-flags/in-memory-adapter.cjs.map +1 -0
- package/dist/feature-flags/in-memory-adapter.js +24 -0
- package/dist/feature-flags/in-memory-adapter.js.map +1 -0
- package/dist/feature-flags/launchdarkly-adapter.cjs +2 -0
- package/dist/feature-flags/launchdarkly-adapter.cjs.map +1 -0
- package/dist/feature-flags/launchdarkly-adapter.js +21 -0
- package/dist/feature-flags/launchdarkly-adapter.js.map +1 -0
- package/dist/forms/FormField.cjs +2 -0
- package/dist/forms/FormField.cjs.map +1 -0
- package/dist/forms/FormField.js +37 -0
- package/dist/forms/FormField.js.map +1 -0
- package/dist/forms/br-validators.cjs +2 -0
- package/dist/forms/br-validators.cjs.map +1 -0
- package/dist/forms/br-validators.js +44 -0
- package/dist/forms/br-validators.js.map +1 -0
- package/dist/forms/masked-inputs.cjs +2 -0
- package/dist/forms/masked-inputs.cjs.map +1 -0
- package/dist/forms/masked-inputs.js +48 -0
- package/dist/forms/masked-inputs.js.map +1 -0
- package/dist/forms/use-viacep.cjs +2 -0
- package/dist/forms/use-viacep.cjs.map +1 -0
- package/dist/forms/use-viacep.js +24 -0
- package/dist/forms/use-viacep.js.map +1 -0
- package/dist/forms/use-zod-form.cjs +2 -0
- package/dist/forms/use-zod-form.cjs.map +1 -0
- package/dist/forms/use-zod-form.js +12 -0
- package/dist/forms/use-zod-form.js.map +1 -0
- package/dist/forms/validate-form.cjs +2 -0
- package/dist/forms/validate-form.cjs.map +1 -0
- package/dist/forms/validate-form.js +15 -0
- package/dist/forms/validate-form.js.map +1 -0
- package/dist/forms/zod-resolver.cjs +2 -0
- package/dist/forms/zod-resolver.cjs.map +1 -0
- package/dist/forms/zod-resolver.js +17 -0
- package/dist/forms/zod-resolver.js.map +1 -0
- package/dist/geo/TrajectoryMap.cjs +2 -0
- package/dist/geo/TrajectoryMap.cjs.map +1 -0
- package/dist/geo/TrajectoryMap.js +216 -0
- package/dist/geo/TrajectoryMap.js.map +1 -0
- package/dist/geo/TrajectoryMap.module.css.cjs +2 -0
- package/dist/geo/TrajectoryMap.module.css.cjs.map +1 -0
- package/dist/geo/TrajectoryMap.module.css.js +30 -0
- package/dist/geo/TrajectoryMap.module.css.js.map +1 -0
- package/dist/geo/bounds.cjs +2 -0
- package/dist/geo/bounds.cjs.map +1 -0
- package/dist/geo/bounds.js +28 -0
- package/dist/geo/bounds.js.map +1 -0
- package/dist/geo/create-position-tracker.cjs +2 -0
- package/dist/geo/create-position-tracker.cjs.map +1 -0
- package/dist/geo/create-position-tracker.js +65 -0
- package/dist/geo/create-position-tracker.js.map +1 -0
- package/dist/geo/distance.cjs +2 -0
- package/dist/geo/distance.cjs.map +1 -0
- package/dist/geo/distance.js +26 -0
- package/dist/geo/distance.js.map +1 -0
- package/dist/geo/estimate.cjs +2 -0
- package/dist/geo/estimate.cjs.map +1 -0
- package/dist/geo/estimate.js +35 -0
- package/dist/geo/estimate.js.map +1 -0
- package/dist/geo/leaflet-map.cjs +2 -0
- package/dist/geo/leaflet-map.cjs.map +1 -0
- package/dist/geo/leaflet-map.js +51 -0
- package/dist/geo/leaflet-map.js.map +1 -0
- package/dist/geo/projection.cjs +2 -0
- package/dist/geo/projection.cjs.map +1 -0
- package/dist/geo/projection.js +36 -0
- package/dist/geo/projection.js.map +1 -0
- package/dist/geo/routing.cjs +2 -0
- package/dist/geo/routing.cjs.map +1 -0
- package/dist/geo/routing.js +29 -0
- package/dist/geo/routing.js.map +1 -0
- package/dist/geo/types.cjs +2 -0
- package/dist/geo/types.cjs.map +1 -0
- package/dist/geo/types.js +25 -0
- package/dist/geo/types.js.map +1 -0
- package/dist/geo/use-position-tracker.cjs +2 -0
- package/dist/geo/use-position-tracker.cjs.map +1 -0
- package/dist/geo/use-position-tracker.js +35 -0
- package/dist/geo/use-position-tracker.js.map +1 -0
- package/dist/hooks/pwa-env.cjs +2 -0
- package/dist/hooks/pwa-env.cjs.map +1 -0
- package/dist/hooks/pwa-env.js +31 -0
- package/dist/hooks/pwa-env.js.map +1 -0
- package/dist/hooks/use-async.cjs +2 -0
- package/dist/hooks/use-async.cjs.map +1 -0
- package/dist/hooks/use-async.js +38 -0
- package/dist/hooks/use-async.js.map +1 -0
- package/dist/hooks/use-before-install-prompt.cjs +2 -0
- package/dist/hooks/use-before-install-prompt.cjs.map +1 -0
- package/dist/hooks/use-before-install-prompt.js +38 -0
- package/dist/hooks/use-before-install-prompt.js.map +1 -0
- package/dist/hooks/use-breakpoint.cjs +2 -0
- package/dist/hooks/use-breakpoint.cjs.map +1 -0
- package/dist/hooks/use-breakpoint.js +40 -0
- package/dist/hooks/use-breakpoint.js.map +1 -0
- package/dist/hooks/use-click-outside.cjs +2 -0
- package/dist/hooks/use-click-outside.cjs.map +1 -0
- package/dist/hooks/use-click-outside.js +18 -0
- package/dist/hooks/use-click-outside.js.map +1 -0
- package/dist/hooks/use-client-filter.cjs +2 -0
- package/dist/hooks/use-client-filter.cjs.map +1 -0
- package/dist/hooks/use-client-filter.js +16 -0
- package/dist/hooks/use-client-filter.js.map +1 -0
- package/dist/hooks/use-clipboard.cjs +2 -0
- package/dist/hooks/use-clipboard.cjs.map +1 -0
- package/dist/hooks/use-clipboard.js +29 -0
- package/dist/hooks/use-clipboard.js.map +1 -0
- package/dist/hooks/use-counter.cjs +2 -0
- package/dist/hooks/use-counter.cjs.map +1 -0
- package/dist/hooks/use-counter.js +27 -0
- package/dist/hooks/use-counter.js.map +1 -0
- package/dist/hooks/use-debounce.cjs +2 -0
- package/dist/hooks/use-debounce.cjs.map +1 -0
- package/dist/hooks/use-debounce.js +12 -0
- package/dist/hooks/use-debounce.js.map +1 -0
- package/dist/hooks/use-deep-memo.cjs +2 -0
- package/dist/hooks/use-deep-memo.cjs.map +1 -0
- package/dist/hooks/use-deep-memo.js +19 -0
- package/dist/hooks/use-deep-memo.js.map +1 -0
- package/dist/hooks/use-disclosure.cjs +2 -0
- package/dist/hooks/use-disclosure.cjs.map +1 -0
- package/dist/hooks/use-disclosure.js +12 -0
- package/dist/hooks/use-disclosure.js.map +1 -0
- package/dist/hooks/use-document-title.cjs +2 -0
- package/dist/hooks/use-document-title.cjs.map +1 -0
- package/dist/hooks/use-document-title.js +14 -0
- package/dist/hooks/use-document-title.js.map +1 -0
- package/dist/hooks/use-document-visibility.cjs +2 -0
- package/dist/hooks/use-document-visibility.cjs.map +1 -0
- package/dist/hooks/use-document-visibility.js +15 -0
- package/dist/hooks/use-document-visibility.js.map +1 -0
- package/dist/hooks/use-event-listener.cjs +2 -0
- package/dist/hooks/use-event-listener.cjs.map +1 -0
- package/dist/hooks/use-event-listener.js +14 -0
- package/dist/hooks/use-event-listener.js.map +1 -0
- package/dist/hooks/use-favicon.cjs +2 -0
- package/dist/hooks/use-favicon.cjs.map +1 -0
- package/dist/hooks/use-favicon.js +12 -0
- package/dist/hooks/use-favicon.js.map +1 -0
- package/dist/hooks/use-focus-trap.cjs +2 -0
- package/dist/hooks/use-focus-trap.cjs.map +1 -0
- package/dist/hooks/use-focus-trap.js +43 -0
- package/dist/hooks/use-focus-trap.js.map +1 -0
- package/dist/hooks/use-geolocation.cjs +2 -0
- package/dist/hooks/use-geolocation.cjs.map +1 -0
- package/dist/hooks/use-geolocation.js +44 -0
- package/dist/hooks/use-geolocation.js.map +1 -0
- package/dist/hooks/use-hover.cjs +2 -0
- package/dist/hooks/use-hover.cjs.map +1 -0
- package/dist/hooks/use-hover.js +16 -0
- package/dist/hooks/use-hover.js.map +1 -0
- package/dist/hooks/use-idle.cjs +2 -0
- package/dist/hooks/use-idle.cjs.map +1 -0
- package/dist/hooks/use-idle.js +30 -0
- package/dist/hooks/use-idle.js.map +1 -0
- package/dist/hooks/use-install-prompt.cjs +2 -0
- package/dist/hooks/use-install-prompt.cjs.map +1 -0
- package/dist/hooks/use-install-prompt.js +69 -0
- package/dist/hooks/use-install-prompt.js.map +1 -0
- package/dist/hooks/use-intersection-observer.cjs +2 -0
- package/dist/hooks/use-intersection-observer.cjs.map +1 -0
- package/dist/hooks/use-intersection-observer.js +19 -0
- package/dist/hooks/use-intersection-observer.js.map +1 -0
- package/dist/hooks/use-interval.cjs +2 -0
- package/dist/hooks/use-interval.cjs.map +1 -0
- package/dist/hooks/use-interval.js +13 -0
- package/dist/hooks/use-interval.js.map +1 -0
- package/dist/hooks/use-is-first-render.cjs +2 -0
- package/dist/hooks/use-is-first-render.cjs.map +1 -0
- package/dist/hooks/use-is-first-render.js +9 -0
- package/dist/hooks/use-is-first-render.js.map +1 -0
- package/dist/hooks/use-keyboard-shortcut.cjs +2 -0
- package/dist/hooks/use-keyboard-shortcut.cjs.map +1 -0
- package/dist/hooks/use-keyboard-shortcut.js +38 -0
- package/dist/hooks/use-keyboard-shortcut.js.map +1 -0
- package/dist/hooks/use-list-state.cjs +2 -0
- package/dist/hooks/use-list-state.cjs.map +1 -0
- package/dist/hooks/use-list-state.js +40 -0
- package/dist/hooks/use-list-state.js.map +1 -0
- package/dist/hooks/use-local-storage.cjs +2 -0
- package/dist/hooks/use-local-storage.cjs.map +1 -0
- package/dist/hooks/use-local-storage.js +55 -0
- package/dist/hooks/use-local-storage.js.map +1 -0
- package/dist/hooks/use-long-press-handlers.cjs +2 -0
- package/dist/hooks/use-long-press-handlers.cjs.map +1 -0
- package/dist/hooks/use-long-press-handlers.js +31 -0
- package/dist/hooks/use-long-press-handlers.js.map +1 -0
- package/dist/hooks/use-long-press.cjs +2 -0
- package/dist/hooks/use-long-press.cjs.map +1 -0
- package/dist/hooks/use-long-press.js +27 -0
- package/dist/hooks/use-long-press.js.map +1 -0
- package/dist/hooks/use-map.cjs +2 -0
- package/dist/hooks/use-map.cjs.map +1 -0
- package/dist/hooks/use-map.js +33 -0
- package/dist/hooks/use-map.js.map +1 -0
- package/dist/hooks/use-media-query.cjs +2 -0
- package/dist/hooks/use-media-query.cjs.map +1 -0
- package/dist/hooks/use-media-query.js +13 -0
- package/dist/hooks/use-media-query.js.map +1 -0
- package/dist/hooks/use-object-url.cjs +2 -0
- package/dist/hooks/use-object-url.cjs.map +1 -0
- package/dist/hooks/use-object-url.js +16 -0
- package/dist/hooks/use-object-url.js.map +1 -0
- package/dist/hooks/use-online.cjs +2 -0
- package/dist/hooks/use-online.cjs.map +1 -0
- package/dist/hooks/use-online.js +47 -0
- package/dist/hooks/use-online.js.map +1 -0
- package/dist/hooks/use-pagination.cjs +2 -0
- package/dist/hooks/use-pagination.cjs.map +1 -0
- package/dist/hooks/use-pagination.js +9 -0
- package/dist/hooks/use-pagination.js.map +1 -0
- package/dist/hooks/use-previous.cjs +2 -0
- package/dist/hooks/use-previous.cjs.map +1 -0
- package/dist/hooks/use-previous.js +11 -0
- package/dist/hooks/use-previous.js.map +1 -0
- package/dist/hooks/use-queue.cjs +2 -0
- package/dist/hooks/use-queue.cjs.map +1 -0
- package/dist/hooks/use-queue.js +48 -0
- package/dist/hooks/use-queue.js.map +1 -0
- package/dist/hooks/use-resize-observer.cjs +2 -0
- package/dist/hooks/use-resize-observer.cjs.map +1 -0
- package/dist/hooks/use-resize-observer.js +19 -0
- package/dist/hooks/use-resize-observer.js.map +1 -0
- package/dist/hooks/use-scroll-lock.cjs +2 -0
- package/dist/hooks/use-scroll-lock.cjs.map +1 -0
- package/dist/hooks/use-scroll-lock.js +14 -0
- package/dist/hooks/use-scroll-lock.js.map +1 -0
- package/dist/hooks/use-service-worker-update.cjs +2 -0
- package/dist/hooks/use-service-worker-update.cjs.map +1 -0
- package/dist/hooks/use-service-worker-update.js +34 -0
- package/dist/hooks/use-service-worker-update.js.map +1 -0
- package/dist/hooks/use-set.cjs +2 -0
- package/dist/hooks/use-set.cjs.map +1 -0
- package/dist/hooks/use-set.js +39 -0
- package/dist/hooks/use-set.js.map +1 -0
- package/dist/hooks/use-stable-callback.cjs +2 -0
- package/dist/hooks/use-stable-callback.cjs.map +1 -0
- package/dist/hooks/use-stable-callback.js +9 -0
- package/dist/hooks/use-stable-callback.js.map +1 -0
- package/dist/hooks/use-storage-estimate.cjs +2 -0
- package/dist/hooks/use-storage-estimate.cjs.map +1 -0
- package/dist/hooks/use-storage-estimate.js +54 -0
- package/dist/hooks/use-storage-estimate.js.map +1 -0
- package/dist/hooks/use-throttle.cjs +2 -0
- package/dist/hooks/use-throttle.cjs.map +1 -0
- package/dist/hooks/use-throttle.js +16 -0
- package/dist/hooks/use-throttle.js.map +1 -0
- package/dist/hooks/use-timeout.cjs +2 -0
- package/dist/hooks/use-timeout.cjs.map +1 -0
- package/dist/hooks/use-timeout.js +13 -0
- package/dist/hooks/use-timeout.js.map +1 -0
- package/dist/hooks/use-toggle.cjs +2 -0
- package/dist/hooks/use-toggle.cjs.map +1 -0
- package/dist/hooks/use-toggle.js +9 -0
- package/dist/hooks/use-toggle.js.map +1 -0
- package/dist/hooks/use-window-size.cjs +2 -0
- package/dist/hooks/use-window-size.cjs.map +1 -0
- package/dist/hooks/use-window-size.js +15 -0
- package/dist/hooks/use-window-size.js.map +1 -0
- package/dist/http/api-client.cjs +2 -0
- package/dist/http/api-client.cjs.map +1 -0
- package/dist/http/api-client.js +81 -0
- package/dist/http/api-client.js.map +1 -0
- package/dist/http/errors.cjs +2 -0
- package/dist/http/errors.cjs.map +1 -0
- package/dist/http/errors.js +39 -0
- package/dist/http/errors.js.map +1 -0
- package/dist/http/idempotency.cjs +2 -0
- package/dist/http/idempotency.cjs.map +1 -0
- package/dist/http/idempotency.js +10 -0
- package/dist/http/idempotency.js.map +1 -0
- package/dist/http/parse-response.cjs +6 -0
- package/dist/http/parse-response.cjs.map +1 -0
- package/dist/http/parse-response.js +20 -0
- package/dist/http/parse-response.js.map +1 -0
- package/dist/http/retry.cjs +2 -0
- package/dist/http/retry.cjs.map +1 -0
- package/dist/http/retry.js +44 -0
- package/dist/http/retry.js.map +1 -0
- package/dist/http/upload-with-progress.cjs +2 -0
- package/dist/http/upload-with-progress.cjs.map +1 -0
- package/dist/http/upload-with-progress.js +91 -0
- package/dist/http/upload-with-progress.js.map +1 -0
- package/dist/http/use-poll.cjs +2 -0
- package/dist/http/use-poll.cjs.map +1 -0
- package/dist/http/use-poll.js +41 -0
- package/dist/http/use-poll.js.map +1 -0
- package/dist/i18n/I18nProvider.cjs +2 -0
- package/dist/i18n/I18nProvider.cjs.map +1 -0
- package/dist/i18n/I18nProvider.js +52 -0
- package/dist/i18n/I18nProvider.js.map +1 -0
- package/dist/i18n/create-i18n.cjs +2 -0
- package/dist/i18n/create-i18n.cjs.map +1 -0
- package/dist/i18n/create-i18n.js +50 -0
- package/dist/i18n/create-i18n.js.map +1 -0
- package/dist/logger/logger.cjs +2 -0
- package/dist/logger/logger.cjs.map +1 -0
- package/dist/logger/logger.js +41 -0
- package/dist/logger/logger.js.map +1 -0
- package/dist/oauth/GoogleSignIn.cjs +2 -0
- package/dist/oauth/GoogleSignIn.cjs.map +1 -0
- package/dist/oauth/GoogleSignIn.js +50 -0
- package/dist/oauth/GoogleSignIn.js.map +1 -0
- package/dist/oauth/use-oauth-callback.cjs +2 -0
- package/dist/oauth/use-oauth-callback.cjs.map +1 -0
- package/dist/oauth/use-oauth-callback.js +21 -0
- package/dist/oauth/use-oauth-callback.js.map +1 -0
- package/dist/offline/conflict.cjs +2 -0
- package/dist/offline/conflict.cjs.map +1 -0
- package/dist/offline/conflict.js +17 -0
- package/dist/offline/conflict.js.map +1 -0
- package/dist/offline/create-offline-store.cjs +2 -0
- package/dist/offline/create-offline-store.cjs.map +1 -0
- package/dist/offline/create-offline-store.js +46 -0
- package/dist/offline/create-offline-store.js.map +1 -0
- package/dist/offline/create-offline-sync.cjs +2 -0
- package/dist/offline/create-offline-sync.cjs.map +1 -0
- package/dist/offline/create-offline-sync.js +146 -0
- package/dist/offline/create-offline-sync.js.map +1 -0
- package/dist/offline/use-offline-sync.cjs +2 -0
- package/dist/offline/use-offline-sync.cjs.map +1 -0
- package/dist/offline/use-offline-sync.js +42 -0
- package/dist/offline/use-offline-sync.js.map +1 -0
- package/dist/push/use-push-subscription.cjs +2 -0
- package/dist/push/use-push-subscription.cjs.map +1 -0
- package/dist/push/use-push-subscription.js +68 -0
- package/dist/push/use-push-subscription.js.map +1 -0
- package/dist/push/utils.cjs +2 -0
- package/dist/push/utils.cjs.map +1 -0
- package/dist/push/utils.js +14 -0
- package/dist/push/utils.js.map +1 -0
- package/dist/push/web-push-client.cjs +2 -0
- package/dist/push/web-push-client.cjs.map +1 -0
- package/dist/push/web-push-client.js +83 -0
- package/dist/push/web-push-client.js.map +1 -0
- package/dist/query/QueryProvider.cjs +2 -0
- package/dist/query/QueryProvider.cjs.map +1 -0
- package/dist/query/QueryProvider.js +28 -0
- package/dist/query/QueryProvider.js.map +1 -0
- package/dist/query/constants.cjs +2 -0
- package/dist/query/constants.cjs.map +1 -0
- package/dist/query/constants.js +21 -0
- package/dist/query/constants.js.map +1 -0
- package/dist/query/create-query-keys.cjs +2 -0
- package/dist/query/create-query-keys.cjs.map +1 -0
- package/dist/query/create-query-keys.js +10 -0
- package/dist/query/create-query-keys.js.map +1 -0
- package/dist/query/offline-persistence.cjs +2 -0
- package/dist/query/offline-persistence.cjs.map +1 -0
- package/dist/query/offline-persistence.js +40 -0
- package/dist/query/offline-persistence.js.map +1 -0
- package/dist/query/optimistic.cjs +2 -0
- package/dist/query/optimistic.cjs.map +1 -0
- package/dist/query/optimistic.js +19 -0
- package/dist/query/optimistic.js.map +1 -0
- package/dist/query/pagination.cjs +2 -0
- package/dist/query/pagination.cjs.map +1 -0
- package/dist/query/pagination.js +19 -0
- package/dist/query/pagination.js.map +1 -0
- package/dist/query/use-cursor-query.cjs +2 -0
- package/dist/query/use-cursor-query.cjs.map +1 -0
- package/dist/query/use-cursor-query.js +28 -0
- package/dist/query/use-cursor-query.js.map +1 -0
- package/dist/query/use-offline-mutation.cjs +2 -0
- package/dist/query/use-offline-mutation.cjs.map +1 -0
- package/dist/query/use-offline-mutation.js +30 -0
- package/dist/query/use-offline-mutation.js.map +1 -0
- package/dist/query/use-paginated-query.cjs +2 -0
- package/dist/query/use-paginated-query.cjs.map +1 -0
- package/dist/query/use-paginated-query.js +44 -0
- package/dist/query/use-paginated-query.js.map +1 -0
- package/dist/router/AppRouter.cjs +2 -0
- package/dist/router/AppRouter.cjs.map +1 -0
- package/dist/router/AppRouter.js +60 -0
- package/dist/router/AppRouter.js.map +1 -0
- package/dist/router/RouteGuard.cjs +2 -0
- package/dist/router/RouteGuard.cjs.map +1 -0
- package/dist/router/RouteGuard.js +9 -0
- package/dist/router/RouteGuard.js.map +1 -0
- package/dist/share/share-or-download.cjs +2 -0
- package/dist/share/share-or-download.cjs.map +1 -0
- package/dist/share/share-or-download.js +11 -0
- package/dist/share/share-or-download.js.map +1 -0
- package/dist/share/share.cjs +2 -0
- package/dist/share/share.cjs.map +1 -0
- package/dist/share/share.js +19 -0
- package/dist/share/share.js.map +1 -0
- package/dist/sse/create-event-stream.cjs +2 -0
- package/dist/sse/create-event-stream.cjs.map +1 -0
- package/dist/sse/create-event-stream.js +76 -0
- package/dist/sse/create-event-stream.js.map +1 -0
- package/dist/sse/use-event-stream.cjs +2 -0
- package/dist/sse/use-event-stream.cjs.map +1 -0
- package/dist/sse/use-event-stream.js +29 -0
- package/dist/sse/use-event-stream.js.map +1 -0
- package/dist/store/create-selectors.cjs +2 -0
- package/dist/store/create-selectors.cjs.map +1 -0
- package/dist/store/create-selectors.js +11 -0
- package/dist/store/create-selectors.js.map +1 -0
- package/dist/store/create-store.cjs +2 -0
- package/dist/store/create-store.cjs.map +1 -0
- package/dist/store/create-store.js +20 -0
- package/dist/store/create-store.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/sw/background-sync.cjs +2 -0
- package/dist/sw/background-sync.cjs.map +1 -0
- package/dist/sw/background-sync.js +106 -0
- package/dist/sw/background-sync.js.map +1 -0
- package/dist/sw/cache-inspect.cjs +2 -0
- package/dist/sw/cache-inspect.cjs.map +1 -0
- package/dist/sw/cache-inspect.js +47 -0
- package/dist/sw/cache-inspect.js.map +1 -0
- package/dist/sw/cache.cjs +2 -0
- package/dist/sw/cache.cjs.map +1 -0
- package/dist/sw/cache.js +176 -0
- package/dist/sw/cache.js.map +1 -0
- package/dist/sw/create-push-handler.cjs +2 -0
- package/dist/sw/create-push-handler.cjs.map +1 -0
- package/dist/sw/create-push-handler.js +64 -0
- package/dist/sw/create-push-handler.js.map +1 -0
- package/dist/sw/periodic-sync.cjs +2 -0
- package/dist/sw/periodic-sync.cjs.map +1 -0
- package/dist/sw/periodic-sync.js +18 -0
- package/dist/sw/periodic-sync.js.map +1 -0
- package/dist/sw/register-service-worker.cjs +2 -0
- package/dist/sw/register-service-worker.cjs.map +1 -0
- package/dist/sw/register-service-worker.js +50 -0
- package/dist/sw/register-service-worker.js.map +1 -0
- package/dist/sw.cjs +1 -1
- package/dist/sw.cjs.map +1 -1
- package/dist/sw.d.ts +99 -0
- package/dist/sw.js +19 -374
- package/dist/sw.js.map +1 -1
- package/dist/telemetry/TelemetryProvider.cjs +2 -0
- package/dist/telemetry/TelemetryProvider.cjs.map +1 -0
- package/dist/telemetry/TelemetryProvider.js +18 -0
- package/dist/telemetry/TelemetryProvider.js.map +1 -0
- package/dist/telemetry/console-adapter.cjs +2 -0
- package/dist/telemetry/console-adapter.cjs.map +1 -0
- package/dist/telemetry/console-adapter.js +15 -0
- package/dist/telemetry/console-adapter.js.map +1 -0
- package/dist/telemetry/posthog-adapter.cjs +2 -0
- package/dist/telemetry/posthog-adapter.cjs.map +1 -0
- package/dist/telemetry/posthog-adapter.js +43 -0
- package/dist/telemetry/posthog-adapter.js.map +1 -0
- package/dist/telemetry/sentry-adapter.cjs +2 -0
- package/dist/telemetry/sentry-adapter.cjs.map +1 -0
- package/dist/telemetry/sentry-adapter.js +39 -0
- package/dist/telemetry/sentry-adapter.js.map +1 -0
- package/dist/tempest-react-sdk.cjs +1 -14
- package/dist/tempest-react-sdk.cjs.map +1 -1
- package/dist/tempest-react-sdk.d.ts +770 -8
- package/dist/tempest-react-sdk.js +638 -9470
- package/dist/tempest-react-sdk.js.map +1 -1
- package/dist/testing/create-mock-handlers.cjs +2 -0
- package/dist/testing/create-mock-handlers.cjs.map +1 -0
- package/dist/testing/create-mock-handlers.js +14 -0
- package/dist/testing/create-mock-handlers.js.map +1 -0
- package/dist/testing.cjs +1 -1
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.js +1 -10
- package/dist/testing.js.map +1 -1
- package/dist/theme/ThemeProvider.cjs +2 -0
- package/dist/theme/ThemeProvider.cjs.map +1 -0
- package/dist/theme/ThemeProvider.js +78 -0
- package/dist/theme/ThemeProvider.js.map +1 -0
- package/dist/theme/initial-theme.cjs +11 -0
- package/dist/theme/initial-theme.cjs.map +1 -0
- package/dist/theme/initial-theme.js +31 -0
- package/dist/theme/initial-theme.js.map +1 -0
- package/dist/utils/arrays.cjs +2 -0
- package/dist/utils/arrays.cjs.map +1 -0
- package/dist/utils/arrays.js +40 -0
- package/dist/utils/arrays.js.map +1 -0
- package/dist/utils/cn.cjs +2 -0
- package/dist/utils/cn.cjs.map +1 -0
- package/dist/utils/cn.js +19 -0
- package/dist/utils/cn.js.map +1 -0
- package/dist/utils/format.cjs +2 -0
- package/dist/utils/format.cjs.map +1 -0
- package/dist/utils/format.js +40 -0
- package/dist/utils/format.js.map +1 -0
- package/dist/utils/functions.cjs +2 -0
- package/dist/utils/functions.cjs.map +1 -0
- package/dist/utils/functions.js +49 -0
- package/dist/utils/functions.js.map +1 -0
- package/dist/utils/guards.cjs +2 -0
- package/dist/utils/guards.cjs.map +1 -0
- package/dist/utils/guards.js +25 -0
- package/dist/utils/guards.js.map +1 -0
- package/dist/utils/ids.cjs +2 -0
- package/dist/utils/ids.cjs.map +1 -0
- package/dist/utils/ids.js +14 -0
- package/dist/utils/ids.js.map +1 -0
- package/dist/utils/numbers.cjs +2 -0
- package/dist/utils/numbers.cjs.map +1 -0
- package/dist/utils/numbers.js +27 -0
- package/dist/utils/numbers.js.map +1 -0
- package/dist/utils/objects.cjs +2 -0
- package/dist/utils/objects.cjs.map +1 -0
- package/dist/utils/objects.js +37 -0
- package/dist/utils/objects.js.map +1 -0
- package/dist/utils/promises.cjs +2 -0
- package/dist/utils/promises.cjs.map +1 -0
- package/dist/utils/promises.js +24 -0
- package/dist/utils/promises.js.map +1 -0
- package/dist/utils/relative-time.cjs +2 -0
- package/dist/utils/relative-time.cjs.map +1 -0
- package/dist/utils/relative-time.js +67 -0
- package/dist/utils/relative-time.js.map +1 -0
- package/dist/utils/storage.cjs +2 -0
- package/dist/utils/storage.cjs.map +1 -0
- package/dist/utils/storage.js +29 -0
- package/dist/utils/storage.js.map +1 -0
- package/dist/utils/strings.cjs +2 -0
- package/dist/utils/strings.cjs.map +1 -0
- package/dist/utils/strings.js +33 -0
- package/dist/utils/strings.js.map +1 -0
- package/dist/utils/xlsx.cjs +2 -0
- package/dist/utils/xlsx.cjs.map +1 -0
- package/dist/utils/xlsx.js +41 -0
- package/dist/utils/xlsx.js.map +1 -0
- package/dist/vision/core/canvas.cjs +2 -0
- package/dist/vision/core/canvas.cjs.map +1 -0
- package/dist/vision/core/canvas.js +41 -0
- package/dist/vision/core/canvas.js.map +1 -0
- package/dist/vision/core/exceptions.cjs +2 -0
- package/dist/vision/core/exceptions.cjs.map +1 -0
- package/dist/vision/core/exceptions.js +24 -0
- package/dist/vision/core/exceptions.js.map +1 -0
- package/dist/vision/core/providers.cjs +2 -0
- package/dist/vision/core/providers.cjs.map +1 -0
- package/dist/vision/core/providers.js +9 -0
- package/dist/vision/core/providers.js.map +1 -0
- package/dist/vision/core/session.cjs +2 -0
- package/dist/vision/core/session.cjs.map +1 -0
- package/dist/vision/core/session.js +71 -0
- package/dist/vision/core/session.js.map +1 -0
- package/dist/vision/index.cjs +2 -0
- package/dist/vision/index.cjs.map +1 -0
- package/dist/vision/index.js +5 -0
- package/dist/vision/index.js.map +1 -0
- package/dist/vision/io/image.cjs +2 -0
- package/dist/vision/io/image.cjs.map +1 -0
- package/dist/vision/io/image.js +75 -0
- package/dist/vision/io/image.js.map +1 -0
- package/dist/vision/labels.cjs +2 -0
- package/dist/vision/labels.cjs.map +1 -0
- package/dist/vision/labels.js +125 -0
- package/dist/vision/labels.js.map +1 -0
- package/dist/vision/luminance.cjs +2 -0
- package/dist/vision/luminance.cjs.map +1 -0
- package/dist/vision/luminance.js +45 -0
- package/dist/vision/luminance.js.map +1 -0
- package/dist/vision/postprocess/classification.cjs +2 -0
- package/dist/vision/postprocess/classification.cjs.map +1 -0
- package/dist/vision/postprocess/classification.js +32 -0
- package/dist/vision/postprocess/classification.js.map +1 -0
- package/dist/vision/postprocess/detection.cjs +2 -0
- package/dist/vision/postprocess/detection.cjs.map +1 -0
- package/dist/vision/postprocess/detection.js +153 -0
- package/dist/vision/postprocess/detection.js.map +1 -0
- package/dist/vision/postprocess/segmentation.cjs +2 -0
- package/dist/vision/postprocess/segmentation.cjs.map +1 -0
- package/dist/vision/postprocess/segmentation.js +109 -0
- package/dist/vision/postprocess/segmentation.js.map +1 -0
- package/dist/vision/preprocess/image.cjs +2 -0
- package/dist/vision/preprocess/image.cjs.map +1 -0
- package/dist/vision/preprocess/image.js +93 -0
- package/dist/vision/preprocess/image.js.map +1 -0
- package/dist/vision/results.cjs +2 -0
- package/dist/vision/results.cjs.map +1 -0
- package/dist/vision/results.js +213 -0
- package/dist/vision/results.js.map +1 -0
- package/dist/vision/tasks/base.cjs +2 -0
- package/dist/vision/tasks/base.cjs.map +1 -0
- package/dist/vision/tasks/base.js +14 -0
- package/dist/vision/tasks/base.js.map +1 -0
- package/dist/vision/tasks/classifier.cjs +2 -0
- package/dist/vision/tasks/classifier.cjs.map +1 -0
- package/dist/vision/tasks/classifier.js +106 -0
- package/dist/vision/tasks/classifier.js.map +1 -0
- package/dist/vision/tasks/detector.cjs +2 -0
- package/dist/vision/tasks/detector.cjs.map +1 -0
- package/dist/vision/tasks/detector.js +147 -0
- package/dist/vision/tasks/detector.js.map +1 -0
- package/dist/vision/tasks/segmenter.cjs +2 -0
- package/dist/vision/tasks/segmenter.cjs.map +1 -0
- package/dist/vision/tasks/segmenter.js +189 -0
- package/dist/vision/tasks/segmenter.js.map +1 -0
- package/dist/vision/types.cjs +2 -0
- package/dist/vision/types.cjs.map +1 -0
- package/dist/vision/types.js +100 -0
- package/dist/vision/types.js.map +1 -0
- package/dist/vision/use-camera-stream.cjs +2 -0
- package/dist/vision/use-camera-stream.cjs.map +1 -0
- package/dist/vision/use-camera-stream.js +89 -0
- package/dist/vision/use-camera-stream.js.map +1 -0
- package/dist/vision/use-live-luminance.cjs +2 -0
- package/dist/vision/use-live-luminance.cjs.map +1 -0
- package/dist/vision/use-live-luminance.js +23 -0
- package/dist/vision/use-live-luminance.js.map +1 -0
- package/dist/vision.cjs +1 -1
- package/dist/vision.cjs.map +1 -1
- package/dist/vision.js +70 -1558
- package/dist/vision.js.map +1 -1
- package/dist/vite/create-vite-config.cjs +2 -0
- package/dist/vite/create-vite-config.cjs.map +1 -0
- package/dist/vite/create-vite-config.js +46 -0
- package/dist/vite/create-vite-config.js.map +1 -0
- package/dist/vite/tempest-pwa-dev-sw.cjs +3 -0
- package/dist/vite/tempest-pwa-dev-sw.cjs.map +1 -0
- package/dist/vite/tempest-pwa-dev-sw.js +50 -0
- package/dist/vite/tempest-pwa-dev-sw.js.map +1 -0
- package/dist/vite/tempest-pwa-icons.cjs +2 -0
- package/dist/vite/tempest-pwa-icons.cjs.map +1 -0
- package/dist/vite/tempest-pwa-icons.js +137 -0
- package/dist/vite/tempest-pwa-icons.js.map +1 -0
- package/dist/vite/tempest-pwa-manifest.cjs +3 -0
- package/dist/vite/tempest-pwa-manifest.cjs.map +1 -0
- package/dist/vite/tempest-pwa-manifest.js +43 -0
- package/dist/vite/tempest-pwa-manifest.js.map +1 -0
- package/dist/vite.cjs +1 -3
- package/dist/vite.cjs.map +1 -1
- package/dist/vite.js +8 -262
- package/dist/vite.js.map +1 -1
- package/dist/ws/create-web-socket.cjs +2 -0
- package/dist/ws/create-web-socket.cjs.map +1 -0
- package/dist/ws/create-web-socket.js +83 -0
- package/dist/ws/create-web-socket.js.map +1 -0
- package/dist/ws/use-web-socket.cjs +2 -0
- package/dist/ws/use-web-socket.cjs.map +1 -0
- package/dist/ws/use-web-socket.js +32 -0
- package/dist/ws/use-web-socket.js.map +1 -0
- package/package.json +6 -2
- package/template-pwa/src/main.tsx +11 -20
- package/template-pwa/src/pwa.tsx +42 -0
- package/dist/AC-Brw7ZrEs.cjs +0 -2
- package/dist/AC-Brw7ZrEs.cjs.map +0 -1
- package/dist/AC-DLl3Z4oj.js +0 -12
- package/dist/AC-DLl3Z4oj.js.map +0 -1
- package/dist/AL-DPGoZjht.cjs +0 -2
- package/dist/AL-DPGoZjht.cjs.map +0 -1
- package/dist/AL-gswGaWlj.js +0 -12
- package/dist/AL-gswGaWlj.js.map +0 -1
- package/dist/AM-QN1eL4Tn.js +0 -12
- package/dist/AM-QN1eL4Tn.js.map +0 -1
- package/dist/AM-VqNWvsI-.cjs +0 -2
- package/dist/AM-VqNWvsI-.cjs.map +0 -1
- package/dist/AP-CPvBa_FK.cjs +0 -2
- package/dist/AP-CPvBa_FK.cjs.map +0 -1
- package/dist/AP-CRAbh1js.js +0 -12
- package/dist/AP-CRAbh1js.js.map +0 -1
- package/dist/BA-CKy_HnnV.js +0 -12
- package/dist/BA-CKy_HnnV.js.map +0 -1
- package/dist/BA-DoMQ6slK.cjs +0 -2
- package/dist/BA-DoMQ6slK.cjs.map +0 -1
- package/dist/CE-Ca-XMDFW.js +0 -12
- package/dist/CE-Ca-XMDFW.js.map +0 -1
- package/dist/CE-as-pGPQa.cjs +0 -2
- package/dist/CE-as-pGPQa.cjs.map +0 -1
- package/dist/DF-8kzFoovF.js +0 -12
- package/dist/DF-8kzFoovF.js.map +0 -1
- package/dist/DF-Wr8WNxSX.cjs +0 -2
- package/dist/DF-Wr8WNxSX.cjs.map +0 -1
- package/dist/ES-B4uWNG6s.js +0 -12
- package/dist/ES-B4uWNG6s.js.map +0 -1
- package/dist/ES-wKVjD_TM.cjs +0 -2
- package/dist/ES-wKVjD_TM.cjs.map +0 -1
- package/dist/GO-D4m4rOqy.cjs +0 -2
- package/dist/GO-D4m4rOqy.cjs.map +0 -1
- package/dist/GO-DuaAgIfo.js +0 -12
- package/dist/GO-DuaAgIfo.js.map +0 -1
- package/dist/MA-BmaUZZKe.cjs +0 -2
- package/dist/MA-BmaUZZKe.cjs.map +0 -1
- package/dist/MA-wOyPxG_M.js +0 -12
- package/dist/MA-wOyPxG_M.js.map +0 -1
- package/dist/MG-BYsqJd-S.js +0 -12
- package/dist/MG-BYsqJd-S.js.map +0 -1
- package/dist/MG-BchdfJXp.cjs +0 -2
- package/dist/MG-BchdfJXp.cjs.map +0 -1
- package/dist/MS-DZkgtN_7.js +0 -12
- package/dist/MS-DZkgtN_7.js.map +0 -1
- package/dist/MS-Dz9lDw37.cjs +0 -2
- package/dist/MS-Dz9lDw37.cjs.map +0 -1
- package/dist/MT-BkVchoah.cjs +0 -2
- package/dist/MT-BkVchoah.cjs.map +0 -1
- package/dist/MT-GmMwFWw2.js +0 -12
- package/dist/MT-GmMwFWw2.js.map +0 -1
- package/dist/PA-C2FpT6Ew.cjs +0 -2
- package/dist/PA-C2FpT6Ew.cjs.map +0 -1
- package/dist/PA-DgyDzDFi.js +0 -12
- package/dist/PA-DgyDzDFi.js.map +0 -1
- package/dist/PB-BGkzbQup.cjs +0 -2
- package/dist/PB-BGkzbQup.cjs.map +0 -1
- package/dist/PB-D-6NE6KM.js +0 -12
- package/dist/PB-D-6NE6KM.js.map +0 -1
- package/dist/PE-D8V7gWY-.cjs +0 -2
- package/dist/PE-D8V7gWY-.cjs.map +0 -1
- package/dist/PE-vqm-t7Nh.js +0 -12
- package/dist/PE-vqm-t7Nh.js.map +0 -1
- package/dist/PI-CILuGJlW.js +0 -12
- package/dist/PI-CILuGJlW.js.map +0 -1
- package/dist/PI-dJYCbXQM.cjs +0 -2
- package/dist/PI-dJYCbXQM.cjs.map +0 -1
- package/dist/PR-DN8AV__r.js +0 -12
- package/dist/PR-DN8AV__r.js.map +0 -1
- package/dist/PR-P17oBdNH.cjs +0 -2
- package/dist/PR-P17oBdNH.cjs.map +0 -1
- package/dist/RJ-Bccz05Em.js +0 -12
- package/dist/RJ-Bccz05Em.js.map +0 -1
- package/dist/RJ-Budqx7QP.cjs +0 -2
- package/dist/RJ-Budqx7QP.cjs.map +0 -1
- package/dist/RN-DLcJBxo3.cjs +0 -2
- package/dist/RN-DLcJBxo3.cjs.map +0 -1
- package/dist/RN-DTqFP-Nm.js +0 -12
- package/dist/RN-DTqFP-Nm.js.map +0 -1
- package/dist/RO-BCC54UTU.js +0 -12
- package/dist/RO-BCC54UTU.js.map +0 -1
- package/dist/RO-B_IDyci4.cjs +0 -2
- package/dist/RO-B_IDyci4.cjs.map +0 -1
- package/dist/RR-CDGUEyla.cjs +0 -2
- package/dist/RR-CDGUEyla.cjs.map +0 -1
- package/dist/RR-OCnI_XpU.js +0 -12
- package/dist/RR-OCnI_XpU.js.map +0 -1
- package/dist/RS-DiBeY_u5.cjs +0 -2
- package/dist/RS-DiBeY_u5.cjs.map +0 -1
- package/dist/RS-Dy7gBbbH.js +0 -12
- package/dist/RS-Dy7gBbbH.js.map +0 -1
- package/dist/SC-CEMoj8g2.cjs +0 -2
- package/dist/SC-CEMoj8g2.cjs.map +0 -1
- package/dist/SC-trCqQDXz.js +0 -12
- package/dist/SC-trCqQDXz.js.map +0 -1
- package/dist/SE-DAfFbZcK.cjs +0 -2
- package/dist/SE-DAfFbZcK.cjs.map +0 -1
- package/dist/SE-DBdfSrGk.js +0 -12
- package/dist/SE-DBdfSrGk.js.map +0 -1
- package/dist/SP-Cse4d68i.cjs +0 -2
- package/dist/SP-Cse4d68i.cjs.map +0 -1
- package/dist/SP-qPZjJDOT.js +0 -12
- package/dist/SP-qPZjJDOT.js.map +0 -1
- package/dist/TO-CZtMDVug.js +0 -12
- package/dist/TO-CZtMDVug.js.map +0 -1
- package/dist/TO-Dwi5zIyF.cjs +0 -2
- package/dist/TO-Dwi5zIyF.cjs.map +0 -1
- package/dist/br-centroids--O7-1KXz.cjs +0 -2
- package/dist/br-centroids--O7-1KXz.cjs.map +0 -1
- package/dist/br-centroids-IHN7PIzD.js +0 -10
- package/dist/br-centroids-IHN7PIzD.js.map +0 -1
- package/dist/br-geo-BYynYOwK.cjs +0 -2
- package/dist/br-geo-BYynYOwK.cjs.map +0 -1
- package/dist/br-geo-DFRuvjuU.js +0 -8
- package/dist/br-geo-DFRuvjuU.js.map +0 -1
- package/dist/cn-C0Sxc9eb.js +0 -19
- package/dist/cn-C0Sxc9eb.js.map +0 -1
- package/dist/cn-CNScIEB4.cjs +0 -2
- package/dist/cn-CNScIEB4.cjs.map +0 -1
- package/dist/leaflet-map-BHBcL_7k.js +0 -51
- package/dist/leaflet-map-BHBcL_7k.js.map +0 -1
- package/dist/leaflet-map-BzYV9czG.cjs +0 -2
- package/dist/leaflet-map-BzYV9czG.cjs.map +0 -1
- package/dist/projection-CILVBdpd.cjs +0 -2
- package/dist/projection-CILVBdpd.cjs.map +0 -1
- package/dist/projection-Wnqr_svy.js +0 -215
- package/dist/projection-Wnqr_svy.js.map +0 -1
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { useState as u, useEffect as g } from "react";
|
|
2
|
+
function f(s = {}) {
|
|
3
|
+
const { watch: n = !1, disabled: e = !1, ...t } = s, [c, a] = u({
|
|
4
|
+
loading: !e,
|
|
5
|
+
error: null,
|
|
6
|
+
coords: null,
|
|
7
|
+
timestamp: null
|
|
8
|
+
});
|
|
9
|
+
return g(() => {
|
|
10
|
+
if (e || typeof navigator > "u" || !navigator.geolocation) {
|
|
11
|
+
a((o) => ({ ...o, loading: !1 }));
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const i = (o) => {
|
|
15
|
+
a({
|
|
16
|
+
loading: !1,
|
|
17
|
+
error: null,
|
|
18
|
+
coords: o.coords,
|
|
19
|
+
timestamp: o.timestamp
|
|
20
|
+
});
|
|
21
|
+
}, r = (o) => {
|
|
22
|
+
a((l) => ({ ...l, loading: !1, error: o }));
|
|
23
|
+
};
|
|
24
|
+
if (n) {
|
|
25
|
+
const o = navigator.geolocation.watchPosition(
|
|
26
|
+
i,
|
|
27
|
+
r,
|
|
28
|
+
t
|
|
29
|
+
);
|
|
30
|
+
return () => navigator.geolocation.clearWatch(o);
|
|
31
|
+
}
|
|
32
|
+
navigator.geolocation.getCurrentPosition(i, r, t);
|
|
33
|
+
}, [
|
|
34
|
+
e,
|
|
35
|
+
n,
|
|
36
|
+
t.enableHighAccuracy,
|
|
37
|
+
t.maximumAge,
|
|
38
|
+
t.timeout
|
|
39
|
+
]), c;
|
|
40
|
+
}
|
|
41
|
+
export {
|
|
42
|
+
f as useGeolocation
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=use-geolocation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-geolocation.js","sources":["../../src/hooks/use-geolocation.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\nexport interface GeolocationState {\n loading: boolean;\n error: GeolocationPositionError | null;\n coords: GeolocationCoordinates | null;\n timestamp: number | null;\n}\n\nexport interface UseGeolocationOptions extends PositionOptions {\n /** Use `watchPosition` instead of one-shot `getCurrentPosition`. Default: false. */\n watch?: boolean;\n /** Disable the hook without unmounting. Default: false. */\n disabled?: boolean;\n}\n\n/**\n * React hook around the Geolocation API.\n *\n * The effect depends on the individual `PositionOptions` fields instead of the\n * rest object, which is a new reference on every render and would restart the\n * watch continuously. `exhaustive-deps` is silenced there because those fields\n * are the whole of what the effect reads from it.\n *\n * @param options - Geolocation options plus `watch` and `disabled` switches.\n * @returns The latest position, error and loading state.\n */\nexport function useGeolocation(options: UseGeolocationOptions = {}): GeolocationState {\n const { watch = false, disabled = false, ...positionOptions } = options;\n const [state, setState] = useState<GeolocationState>({\n loading: !disabled,\n error: null,\n coords: null,\n timestamp: null,\n });\n\n useEffect(() => {\n if (disabled || typeof navigator === \"undefined\" || !navigator.geolocation) {\n setState((prev) => ({ ...prev, loading: false }));\n return;\n }\n\n const onSuccess = (position: GeolocationPosition): void => {\n setState({\n loading: false,\n error: null,\n coords: position.coords,\n timestamp: position.timestamp,\n });\n };\n const onError = (error: GeolocationPositionError): void => {\n setState((prev) => ({ ...prev, loading: false, error }));\n };\n\n if (watch) {\n const watchId = navigator.geolocation.watchPosition(\n onSuccess,\n onError,\n positionOptions,\n );\n return () => navigator.geolocation.clearWatch(watchId);\n }\n\n navigator.geolocation.getCurrentPosition(onSuccess, onError, positionOptions);\n return undefined;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n disabled,\n watch,\n positionOptions.enableHighAccuracy,\n positionOptions.maximumAge,\n positionOptions.timeout,\n ]);\n\n return state;\n}\n"],"names":["useGeolocation","options","watch","disabled","positionOptions","state","setState","useState","useEffect","prev","onSuccess","position","onError","error","watchId"],"mappings":";AA2BO,SAASA,EAAeC,IAAiC,IAAsB;AAClF,QAAM,EAAE,OAAAC,IAAQ,IAAO,UAAAC,IAAW,IAAO,GAAGC,MAAoBH,GAC1D,CAACI,GAAOC,CAAQ,IAAIC,EAA2B;AAAA,IACjD,SAAS,CAACJ;AAAA,IACV,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,WAAW;AAAA,EAAA,CACd;AAED,SAAAK,EAAU,MAAM;AACZ,QAAIL,KAAY,OAAO,YAAc,OAAe,CAAC,UAAU,aAAa;AACxE,MAAAG,EAAS,CAACG,OAAU,EAAE,GAAGA,GAAM,SAAS,KAAQ;AAChD;AAAA,IACJ;AAEA,UAAMC,IAAY,CAACC,MAAwC;AACvD,MAAAL,EAAS;AAAA,QACL,SAAS;AAAA,QACT,OAAO;AAAA,QACP,QAAQK,EAAS;AAAA,QACjB,WAAWA,EAAS;AAAA,MAAA,CACvB;AAAA,IACL,GACMC,IAAU,CAACC,MAA0C;AACvD,MAAAP,EAAS,CAACG,OAAU,EAAE,GAAGA,GAAM,SAAS,IAAO,OAAAI,IAAQ;AAAA,IAC3D;AAEA,QAAIX,GAAO;AACP,YAAMY,IAAU,UAAU,YAAY;AAAA,QAClCJ;AAAA,QACAE;AAAA,QACAR;AAAA,MAAA;AAEJ,aAAO,MAAM,UAAU,YAAY,WAAWU,CAAO;AAAA,IACzD;AAEA,cAAU,YAAY,mBAAmBJ,GAAWE,GAASR,CAAe;AAAA,EAGhF,GAAG;AAAA,IACCD;AAAA,IACAD;AAAA,IACAE,EAAgB;AAAA,IAChBA,EAAgB;AAAA,IAChBA,EAAgB;AAAA,EAAA,CACnB,GAEMC;AACX;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react");function v(t){const[u,r]=s.useState(!1);return s.useEffect(()=>{const e=t.current;if(!e)return;const n=()=>r(!0),o=()=>r(!1);return e.addEventListener("mouseenter",n),e.addEventListener("mouseleave",o),()=>{e.removeEventListener("mouseenter",n),e.removeEventListener("mouseleave",o)}},[t]),u}exports.useHover=v;
|
|
2
|
+
//# sourceMappingURL=use-hover.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-hover.cjs","sources":["../../src/hooks/use-hover.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport type { RefObject } from \"react\";\n\n/**\n * Track whether the pointer is hovering over the referenced element.\n * Returns `false` on touch-only devices (no pointer hover).\n *\n * @example\n * const ref = useRef<HTMLDivElement>(null);\n * const hovered = useHover(ref);\n * return <div ref={ref}>{hovered ? \"✨\" : \"\"}</div>;\n */\nexport function useHover<T extends HTMLElement>(ref: RefObject<T | null>): boolean {\n const [hovered, setHovered] = useState<boolean>(false);\n\n useEffect(() => {\n const node = ref.current;\n if (!node) return;\n const onEnter = (): void => setHovered(true);\n const onLeave = (): void => setHovered(false);\n node.addEventListener(\"mouseenter\", onEnter);\n node.addEventListener(\"mouseleave\", onLeave);\n return () => {\n node.removeEventListener(\"mouseenter\", onEnter);\n node.removeEventListener(\"mouseleave\", onLeave);\n };\n }, [ref]);\n\n return hovered;\n}\n"],"names":["useHover","ref","hovered","setHovered","useState","useEffect","node","onEnter","onLeave"],"mappings":"yGAYO,SAASA,EAAgCC,EAAmC,CAC/E,KAAM,CAACC,EAASC,CAAU,EAAIC,EAAAA,SAAkB,EAAK,EAErDC,OAAAA,EAAAA,UAAU,IAAM,CACZ,MAAMC,EAAOL,EAAI,QACjB,GAAI,CAACK,EAAM,OACX,MAAMC,EAAU,IAAYJ,EAAW,EAAI,EACrCK,EAAU,IAAYL,EAAW,EAAK,EAC5C,OAAAG,EAAK,iBAAiB,aAAcC,CAAO,EAC3CD,EAAK,iBAAiB,aAAcE,CAAO,EACpC,IAAM,CACTF,EAAK,oBAAoB,aAAcC,CAAO,EAC9CD,EAAK,oBAAoB,aAAcE,CAAO,CAClD,CACJ,EAAG,CAACP,CAAG,CAAC,EAEDC,CACX"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { useState as u, useEffect as v } from "react";
|
|
2
|
+
function m(t) {
|
|
3
|
+
const [s, n] = u(!1);
|
|
4
|
+
return v(() => {
|
|
5
|
+
const e = t.current;
|
|
6
|
+
if (!e) return;
|
|
7
|
+
const r = () => n(!0), o = () => n(!1);
|
|
8
|
+
return e.addEventListener("mouseenter", r), e.addEventListener("mouseleave", o), () => {
|
|
9
|
+
e.removeEventListener("mouseenter", r), e.removeEventListener("mouseleave", o);
|
|
10
|
+
};
|
|
11
|
+
}, [t]), s;
|
|
12
|
+
}
|
|
13
|
+
export {
|
|
14
|
+
m as useHover
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=use-hover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-hover.js","sources":["../../src/hooks/use-hover.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport type { RefObject } from \"react\";\n\n/**\n * Track whether the pointer is hovering over the referenced element.\n * Returns `false` on touch-only devices (no pointer hover).\n *\n * @example\n * const ref = useRef<HTMLDivElement>(null);\n * const hovered = useHover(ref);\n * return <div ref={ref}>{hovered ? \"✨\" : \"\"}</div>;\n */\nexport function useHover<T extends HTMLElement>(ref: RefObject<T | null>): boolean {\n const [hovered, setHovered] = useState<boolean>(false);\n\n useEffect(() => {\n const node = ref.current;\n if (!node) return;\n const onEnter = (): void => setHovered(true);\n const onLeave = (): void => setHovered(false);\n node.addEventListener(\"mouseenter\", onEnter);\n node.addEventListener(\"mouseleave\", onLeave);\n return () => {\n node.removeEventListener(\"mouseenter\", onEnter);\n node.removeEventListener(\"mouseleave\", onLeave);\n };\n }, [ref]);\n\n return hovered;\n}\n"],"names":["useHover","ref","hovered","setHovered","useState","useEffect","node","onEnter","onLeave"],"mappings":";AAYO,SAASA,EAAgCC,GAAmC;AAC/E,QAAM,CAACC,GAASC,CAAU,IAAIC,EAAkB,EAAK;AAErD,SAAAC,EAAU,MAAM;AACZ,UAAMC,IAAOL,EAAI;AACjB,QAAI,CAACK,EAAM;AACX,UAAMC,IAAU,MAAYJ,EAAW,EAAI,GACrCK,IAAU,MAAYL,EAAW,EAAK;AAC5C,WAAAG,EAAK,iBAAiB,cAAcC,CAAO,GAC3CD,EAAK,iBAAiB,cAAcE,CAAO,GACpC,MAAM;AACT,MAAAF,EAAK,oBAAoB,cAAcC,CAAO,GAC9CD,EAAK,oBAAoB,cAAcE,CAAO;AAAA,IAClD;AAAA,EACJ,GAAG,CAACP,CAAG,CAAC,GAEDC;AACX;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),u=["mousemove","mousedown","keydown","touchstart","wheel","scroll"];function c(e=6e4){const[i,t]=s.useState(!1);return s.useEffect(()=>{if(typeof window>"u")return;let o=setTimeout(()=>t(!0),e);function r(){t(!1),clearTimeout(o),o=setTimeout(()=>t(!0),e)}for(const n of u)window.addEventListener(n,r,{passive:!0});return()=>{clearTimeout(o);for(const n of u)window.removeEventListener(n,r)}},[e]),i}exports.useIdle=c;
|
|
2
|
+
//# sourceMappingURL=use-idle.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-idle.cjs","sources":["../../src/hooks/use-idle.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\nconst DEFAULT_EVENTS: (keyof WindowEventMap)[] = [\n \"mousemove\",\n \"mousedown\",\n \"keydown\",\n \"touchstart\",\n \"wheel\",\n \"scroll\",\n];\n\n/**\n * Detect when the user has been idle for `timeout` ms (no interaction).\n * Returns `true` once the threshold elapses and back to `false` on activity.\n */\nexport function useIdle(timeout = 60_000): boolean {\n const [idle, setIdle] = useState<boolean>(false);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n let timer = setTimeout(() => setIdle(true), timeout);\n\n function reset(): void {\n setIdle(false);\n clearTimeout(timer);\n timer = setTimeout(() => setIdle(true), timeout);\n }\n\n for (const event of DEFAULT_EVENTS) {\n window.addEventListener(event, reset, { passive: true });\n }\n return () => {\n clearTimeout(timer);\n for (const event of DEFAULT_EVENTS) {\n window.removeEventListener(event, reset);\n }\n };\n }, [timeout]);\n\n return idle;\n}\n"],"names":["DEFAULT_EVENTS","useIdle","timeout","idle","setIdle","useState","useEffect","timer","reset","event"],"mappings":"yGAEMA,EAA2C,CAC7C,YACA,YACA,UACA,aACA,QACA,QACJ,EAMO,SAASC,EAAQC,EAAU,IAAiB,CAC/C,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAAA,SAAkB,EAAK,EAE/CC,OAAAA,EAAAA,UAAU,IAAM,CACZ,GAAI,OAAO,OAAW,IAAa,OACnC,IAAIC,EAAQ,WAAW,IAAMH,EAAQ,EAAI,EAAGF,CAAO,EAEnD,SAASM,GAAc,CACnBJ,EAAQ,EAAK,EACb,aAAaG,CAAK,EAClBA,EAAQ,WAAW,IAAMH,EAAQ,EAAI,EAAGF,CAAO,CACnD,CAEA,UAAWO,KAAST,EAChB,OAAO,iBAAiBS,EAAOD,EAAO,CAAE,QAAS,GAAM,EAE3D,MAAO,IAAM,CACT,aAAaD,CAAK,EAClB,UAAWE,KAAST,EAChB,OAAO,oBAAoBS,EAAOD,CAAK,CAE/C,CACJ,EAAG,CAACN,CAAO,CAAC,EAELC,CACX"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { useState as i, useEffect as f } from "react";
|
|
2
|
+
const s = [
|
|
3
|
+
"mousemove",
|
|
4
|
+
"mousedown",
|
|
5
|
+
"keydown",
|
|
6
|
+
"touchstart",
|
|
7
|
+
"wheel",
|
|
8
|
+
"scroll"
|
|
9
|
+
];
|
|
10
|
+
function c(e = 6e4) {
|
|
11
|
+
const [u, t] = i(!1);
|
|
12
|
+
return f(() => {
|
|
13
|
+
if (typeof window > "u") return;
|
|
14
|
+
let o = setTimeout(() => t(!0), e);
|
|
15
|
+
function r() {
|
|
16
|
+
t(!1), clearTimeout(o), o = setTimeout(() => t(!0), e);
|
|
17
|
+
}
|
|
18
|
+
for (const n of s)
|
|
19
|
+
window.addEventListener(n, r, { passive: !0 });
|
|
20
|
+
return () => {
|
|
21
|
+
clearTimeout(o);
|
|
22
|
+
for (const n of s)
|
|
23
|
+
window.removeEventListener(n, r);
|
|
24
|
+
};
|
|
25
|
+
}, [e]), u;
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
c as useIdle
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=use-idle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-idle.js","sources":["../../src/hooks/use-idle.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\nconst DEFAULT_EVENTS: (keyof WindowEventMap)[] = [\n \"mousemove\",\n \"mousedown\",\n \"keydown\",\n \"touchstart\",\n \"wheel\",\n \"scroll\",\n];\n\n/**\n * Detect when the user has been idle for `timeout` ms (no interaction).\n * Returns `true` once the threshold elapses and back to `false` on activity.\n */\nexport function useIdle(timeout = 60_000): boolean {\n const [idle, setIdle] = useState<boolean>(false);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n let timer = setTimeout(() => setIdle(true), timeout);\n\n function reset(): void {\n setIdle(false);\n clearTimeout(timer);\n timer = setTimeout(() => setIdle(true), timeout);\n }\n\n for (const event of DEFAULT_EVENTS) {\n window.addEventListener(event, reset, { passive: true });\n }\n return () => {\n clearTimeout(timer);\n for (const event of DEFAULT_EVENTS) {\n window.removeEventListener(event, reset);\n }\n };\n }, [timeout]);\n\n return idle;\n}\n"],"names":["DEFAULT_EVENTS","useIdle","timeout","idle","setIdle","useState","useEffect","timer","reset","event"],"mappings":";AAEA,MAAMA,IAA2C;AAAA,EAC7C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;AAMO,SAASC,EAAQC,IAAU,KAAiB;AAC/C,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAkB,EAAK;AAE/C,SAAAC,EAAU,MAAM;AACZ,QAAI,OAAO,SAAW,IAAa;AACnC,QAAIC,IAAQ,WAAW,MAAMH,EAAQ,EAAI,GAAGF,CAAO;AAEnD,aAASM,IAAc;AACnB,MAAAJ,EAAQ,EAAK,GACb,aAAaG,CAAK,GAClBA,IAAQ,WAAW,MAAMH,EAAQ,EAAI,GAAGF,CAAO;AAAA,IACnD;AAEA,eAAWO,KAAST;AAChB,aAAO,iBAAiBS,GAAOD,GAAO,EAAE,SAAS,IAAM;AAE3D,WAAO,MAAM;AACT,mBAAaD,CAAK;AAClB,iBAAWE,KAAST;AAChB,eAAO,oBAAoBS,GAAOD,CAAK;AAAA,IAE/C;AAAA,EACJ,GAAG,CAACN,CAAO,CAAC,GAELC;AACX;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),l=require("./pwa-env.cjs"),D=10080*60*1e3,I=3e3,y="tempest:install-declined-at";let s=null;const c=new Set;typeof window<"u"&&(window.addEventListener("beforeinstallprompt",e=>{e.preventDefault(),s=e,c.forEach(o=>o(s))}),window.addEventListener("appinstalled",()=>{s=null,c.forEach(e=>e(null))}));function O(e,o){if(typeof window>"u")return!1;const u=window.localStorage.getItem(e);if(!u)return!1;const r=Number(u);return Number.isFinite(r)?Date.now()-r<o:!1}function _(e={}){const{declineStorageKey:o=y,declineCooldownMs:u=D,manualFallbackDelayMs:r=I}=e,[n,f]=a.useState(s),[w,L]=a.useState(l.isStandalone()),[m,p]=a.useState(!1);a.useEffect(()=>(c.add(f),()=>{c.delete(f)}),[]),a.useEffect(()=>{if(typeof window>"u")return;const t=window.matchMedia?.("(display-mode: standalone)"),i=()=>L(l.isStandalone());return t?.addEventListener?.("change",i),window.addEventListener("appinstalled",i),()=>{t?.removeEventListener?.("change",i),window.removeEventListener("appinstalled",i)}},[]),a.useEffect(()=>{if(n){p(!1);return}const t=window.setTimeout(()=>{s||p(!0)},r);return()=>window.clearTimeout(t)},[n,r]);const E=l.isIOS(),S=l.isAndroidWithoutPromptApi(),h=O(o,u);let d="none";!w&&!h&&(n?d="native":E?d="ios":(S||m)&&(d="manual"));const v=()=>{typeof window>"u"||window.localStorage.setItem(o,String(Date.now()))},A=async()=>{if(!n)return!1;await n.prompt();const t=await n.userChoice;return t.outcome==="dismissed"&&v(),s=null,c.forEach(i=>i(null)),t.outcome==="accepted"};return{deferredPrompt:n,canInstall:d!=="none",isIOS:E,isStandalone:w,isManualAndroid:S,promptTimedOut:m,method:d,openInChromeIntent:l.buildOpenInChromeIntent(),install:A,recordDecline:v}}exports.useInstallPrompt=_;
|
|
2
|
+
//# sourceMappingURL=use-install-prompt.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-install-prompt.cjs","sources":["../../src/hooks/use-install-prompt.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport {\n buildOpenInChromeIntent,\n isAndroidWithoutPromptApi,\n isIOS,\n isStandalone,\n type BeforeInstallPromptEvent,\n} from \"./pwa-env\";\n\nconst DEFAULT_DECLINE_COOLDOWN_MS = 7 * 24 * 60 * 60 * 1000;\nconst DEFAULT_MANUAL_FALLBACK_DELAY_MS = 3000;\nconst DEFAULT_DECLINE_STORAGE_KEY = \"tempest:install-declined-at\";\n\nlet cachedEvent: BeforeInstallPromptEvent | null = null;\nconst eventSubscribers = new Set<(event: BeforeInstallPromptEvent | null) => void>();\n\nif (typeof window !== \"undefined\") {\n window.addEventListener(\"beforeinstallprompt\", (event: Event) => {\n event.preventDefault();\n cachedEvent = event as BeforeInstallPromptEvent;\n eventSubscribers.forEach((fn) => fn(cachedEvent));\n });\n window.addEventListener(\"appinstalled\", () => {\n cachedEvent = null;\n eventSubscribers.forEach((fn) => fn(null));\n });\n}\n\n/**\n * Strategy the UI should use to install the app:\n *\n * - `\"native\"`: trigger `BeforeInstallPromptEvent.prompt()`.\n * - `\"ios\"`: show iOS Safari Share → Add to Home Screen instructions.\n * - `\"manual\"`: show generic browser-menu instructions (Chromium forks that\n * strip the prompt API, plus the timeout fallback when no event arrives).\n * - `\"none\"`: nothing to offer (already installed or unsupported runtime).\n */\nexport type InstallMethod = \"native\" | \"ios\" | \"manual\" | \"none\";\n\n/** Options for {@link useInstallPrompt}. */\nexport interface UseInstallPromptOptions {\n /**\n * `localStorage` key used to persist the decline timestamp. Defaults to\n * `\"tempest:install-declined-at\"`.\n */\n declineStorageKey?: string;\n /**\n * How long, in ms, the install CTA stays hidden after the user declines.\n * Defaults to 7 days.\n */\n declineCooldownMs?: number;\n /**\n * How long, in ms, to wait for a `beforeinstallprompt` event before\n * resolving to the `\"manual\"` method. Defaults to `3000`.\n */\n manualFallbackDelayMs?: number;\n}\n\n/** State returned by {@link useInstallPrompt}. */\nexport interface UseInstallPromptResult {\n /** The cached `beforeinstallprompt` event, or `null` when unavailable. */\n deferredPrompt: BeforeInstallPromptEvent | null;\n /** True when the app can be installed through any supported method. */\n canInstall: boolean;\n /** True when running on iOS/iPadOS Safari. */\n isIOS: boolean;\n /** True when already running as an installed PWA. */\n isStandalone: boolean;\n /** True when the browser is an Android Chromium fork with no prompt API. */\n isManualAndroid: boolean;\n /** True when no `beforeinstallprompt` arrived within the timeout window. */\n promptTimedOut: boolean;\n /** The resolved install strategy the UI should follow. */\n method: InstallMethod;\n /** An `intent://` URL to re-open the page in Chrome on Android, else `null`. */\n openInChromeIntent: string | null;\n /**\n * Triggers the native prompt.\n *\n * @returns `true` when the user accepted the install, `false` otherwise.\n */\n install: () => Promise<boolean>;\n /** Records that the user declined the CTA, starting the cooldown window. */\n recordDecline: () => void;\n}\n\nfunction readDecline(key: string, cooldownMs: number): boolean {\n if (typeof window === \"undefined\") return false;\n const raw = window.localStorage.getItem(key);\n if (!raw) return false;\n const ts = Number(raw);\n if (!Number.isFinite(ts)) return false;\n return Date.now() - ts < cooldownMs;\n}\n\n/**\n * React hook that resolves how (and whether) to offer PWA installation.\n *\n * It caches the `beforeinstallprompt` event, detects iOS/iPadOS, detects\n * Android Chromium forks that lack the prompt API, detects standalone display\n * mode, and applies a decline cooldown persisted in `localStorage`. The\n * resulting `method` tells the UI which install affordance to render.\n *\n * The decline persistence is pluggable through\n * {@link UseInstallPromptOptions.declineStorageKey} and\n * {@link UseInstallPromptOptions.declineCooldownMs} — no app-specific storage\n * layer is required, and it is SSR-guarded.\n *\n * @param options - Optional storage key, cooldown, and fallback-delay tuning.\n * @returns The install state plus `install()` and `recordDecline()` actions.\n *\n * @example\n * const { method, install } = useInstallPrompt();\n * if (method === \"native\") return <button onClick={install}>Install</button>;\n */\nexport function useInstallPrompt(options: UseInstallPromptOptions = {}): UseInstallPromptResult {\n const {\n declineStorageKey = DEFAULT_DECLINE_STORAGE_KEY,\n declineCooldownMs = DEFAULT_DECLINE_COOLDOWN_MS,\n manualFallbackDelayMs = DEFAULT_MANUAL_FALLBACK_DELAY_MS,\n } = options;\n\n const [event, setEvent] = useState<BeforeInstallPromptEvent | null>(cachedEvent);\n const [standalone, setStandalone] = useState<boolean>(isStandalone());\n const [promptTimedOut, setPromptTimedOut] = useState<boolean>(false);\n\n useEffect(() => {\n eventSubscribers.add(setEvent);\n return () => {\n eventSubscribers.delete(setEvent);\n };\n }, []);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n const mq = window.matchMedia?.(\"(display-mode: standalone)\");\n const handler = (): void => setStandalone(isStandalone());\n mq?.addEventListener?.(\"change\", handler);\n window.addEventListener(\"appinstalled\", handler);\n return () => {\n mq?.removeEventListener?.(\"change\", handler);\n window.removeEventListener(\"appinstalled\", handler);\n };\n }, []);\n\n useEffect(() => {\n if (event) {\n setPromptTimedOut(false);\n return;\n }\n const timer = window.setTimeout(() => {\n if (!cachedEvent) setPromptTimedOut(true);\n }, manualFallbackDelayMs);\n return () => window.clearTimeout(timer);\n }, [event, manualFallbackDelayMs]);\n\n const ios = isIOS();\n const manualAndroid = isAndroidWithoutPromptApi();\n\n const declineActive = readDecline(declineStorageKey, declineCooldownMs);\n\n let method: InstallMethod = \"none\";\n if (!standalone && !declineActive) {\n if (event) method = \"native\";\n else if (ios) method = \"ios\";\n else if (manualAndroid || promptTimedOut) method = \"manual\";\n }\n\n const recordDecline = (): void => {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(declineStorageKey, String(Date.now()));\n };\n\n const install = async (): Promise<boolean> => {\n if (!event) return false;\n await event.prompt();\n const choice = await event.userChoice;\n if (choice.outcome === \"dismissed\") recordDecline();\n cachedEvent = null;\n eventSubscribers.forEach((fn) => fn(null));\n return choice.outcome === \"accepted\";\n };\n\n return {\n deferredPrompt: event,\n canInstall: method !== \"none\",\n isIOS: ios,\n isStandalone: standalone,\n isManualAndroid: manualAndroid,\n promptTimedOut,\n method,\n openInChromeIntent: buildOpenInChromeIntent(),\n install,\n recordDecline,\n };\n}\n"],"names":["DEFAULT_DECLINE_COOLDOWN_MS","DEFAULT_MANUAL_FALLBACK_DELAY_MS","DEFAULT_DECLINE_STORAGE_KEY","cachedEvent","eventSubscribers","event","fn","readDecline","key","cooldownMs","raw","ts","useInstallPrompt","options","declineStorageKey","declineCooldownMs","manualFallbackDelayMs","setEvent","useState","standalone","setStandalone","isStandalone","promptTimedOut","setPromptTimedOut","useEffect","mq","handler","timer","ios","isIOS","manualAndroid","isAndroidWithoutPromptApi","declineActive","method","recordDecline","install","choice","buildOpenInChromeIntent"],"mappings":"oIASMA,EAA8B,MAAc,GAAK,IACjDC,EAAmC,IACnCC,EAA8B,8BAEpC,IAAIC,EAA+C,KACnD,MAAMC,MAAuB,IAEzB,OAAO,OAAW,MAClB,OAAO,iBAAiB,sBAAwBC,GAAiB,CAC7DA,EAAM,eAAA,EACNF,EAAcE,EACdD,EAAiB,QAASE,GAAOA,EAAGH,CAAW,CAAC,CACpD,CAAC,EACD,OAAO,iBAAiB,eAAgB,IAAM,CAC1CA,EAAc,KACdC,EAAiB,QAASE,GAAOA,EAAG,IAAI,CAAC,CAC7C,CAAC,GA6DL,SAASC,EAAYC,EAAaC,EAA6B,CAC3D,GAAI,OAAO,OAAW,IAAa,MAAO,GAC1C,MAAMC,EAAM,OAAO,aAAa,QAAQF,CAAG,EAC3C,GAAI,CAACE,EAAK,MAAO,GACjB,MAAMC,EAAK,OAAOD,CAAG,EACrB,OAAK,OAAO,SAASC,CAAE,EAChB,KAAK,MAAQA,EAAKF,EADQ,EAErC,CAsBO,SAASG,EAAiBC,EAAmC,GAA4B,CAC5F,KAAM,CACF,kBAAAC,EAAoBZ,EACpB,kBAAAa,EAAoBf,EACpB,sBAAAgB,EAAwBf,CAAA,EACxBY,EAEE,CAACR,EAAOY,CAAQ,EAAIC,EAAAA,SAA0Cf,CAAW,EACzE,CAACgB,EAAYC,CAAa,EAAIF,EAAAA,SAAkBG,EAAAA,cAAc,EAC9D,CAACC,EAAgBC,CAAiB,EAAIL,EAAAA,SAAkB,EAAK,EAEnEM,EAAAA,UAAU,KACNpB,EAAiB,IAAIa,CAAQ,EACtB,IAAM,CACTb,EAAiB,OAAOa,CAAQ,CACpC,GACD,CAAA,CAAE,EAELO,EAAAA,UAAU,IAAM,CACZ,GAAI,OAAO,OAAW,IAAa,OACnC,MAAMC,EAAK,OAAO,aAAa,4BAA4B,EACrDC,EAAU,IAAYN,EAAcC,EAAAA,cAAc,EACxD,OAAAI,GAAI,mBAAmB,SAAUC,CAAO,EACxC,OAAO,iBAAiB,eAAgBA,CAAO,EACxC,IAAM,CACTD,GAAI,sBAAsB,SAAUC,CAAO,EAC3C,OAAO,oBAAoB,eAAgBA,CAAO,CACtD,CACJ,EAAG,CAAA,CAAE,EAELF,EAAAA,UAAU,IAAM,CACZ,GAAInB,EAAO,CACPkB,EAAkB,EAAK,EACvB,MACJ,CACA,MAAMI,EAAQ,OAAO,WAAW,IAAM,CAC7BxB,GAAaoB,EAAkB,EAAI,CAC5C,EAAGP,CAAqB,EACxB,MAAO,IAAM,OAAO,aAAaW,CAAK,CAC1C,EAAG,CAACtB,EAAOW,CAAqB,CAAC,EAEjC,MAAMY,EAAMC,EAAAA,MAAA,EACNC,EAAgBC,EAAAA,0BAAA,EAEhBC,EAAgBzB,EAAYO,EAAmBC,CAAiB,EAEtE,IAAIkB,EAAwB,OACxB,CAACd,GAAc,CAACa,IACZ3B,EAAO4B,EAAS,SACXL,EAAKK,EAAS,OACdH,GAAiBR,KAAgBW,EAAS,WAGvD,MAAMC,EAAgB,IAAY,CAC1B,OAAO,OAAW,KACtB,OAAO,aAAa,QAAQpB,EAAmB,OAAO,KAAK,IAAA,CAAK,CAAC,CACrE,EAEMqB,EAAU,SAA8B,CAC1C,GAAI,CAAC9B,EAAO,MAAO,GACnB,MAAMA,EAAM,OAAA,EACZ,MAAM+B,EAAS,MAAM/B,EAAM,WAC3B,OAAI+B,EAAO,UAAY,aAAaF,EAAA,EACpC/B,EAAc,KACdC,EAAiB,QAASE,GAAOA,EAAG,IAAI,CAAC,EAClC8B,EAAO,UAAY,UAC9B,EAEA,MAAO,CACH,eAAgB/B,EAChB,WAAY4B,IAAW,OACvB,MAAOL,EACP,aAAcT,EACd,gBAAiBW,EACjB,eAAAR,EACA,OAAAW,EACA,mBAAoBI,EAAAA,wBAAA,EACpB,QAAAF,EACA,cAAAD,CAAA,CAER"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { useState as c, useEffect as u } from "react";
|
|
2
|
+
import { isStandalone as h, isIOS as I, buildOpenInChromeIntent as _, isAndroidWithoutPromptApi as O } from "./pwa-env.js";
|
|
3
|
+
const y = 10080 * 60 * 1e3, C = 3e3, T = "tempest:install-declined-at";
|
|
4
|
+
let r = null;
|
|
5
|
+
const d = /* @__PURE__ */ new Set();
|
|
6
|
+
typeof window < "u" && (window.addEventListener("beforeinstallprompt", (e) => {
|
|
7
|
+
e.preventDefault(), r = e, d.forEach((o) => o(r));
|
|
8
|
+
}), window.addEventListener("appinstalled", () => {
|
|
9
|
+
r = null, d.forEach((e) => e(null));
|
|
10
|
+
}));
|
|
11
|
+
function b(e, o) {
|
|
12
|
+
if (typeof window > "u") return !1;
|
|
13
|
+
const l = window.localStorage.getItem(e);
|
|
14
|
+
if (!l) return !1;
|
|
15
|
+
const a = Number(l);
|
|
16
|
+
return Number.isFinite(a) ? Date.now() - a < o : !1;
|
|
17
|
+
}
|
|
18
|
+
function F(e = {}) {
|
|
19
|
+
const {
|
|
20
|
+
declineStorageKey: o = T,
|
|
21
|
+
declineCooldownMs: l = y,
|
|
22
|
+
manualFallbackDelayMs: a = C
|
|
23
|
+
} = e, [n, f] = c(r), [m, v] = c(h()), [w, p] = c(!1);
|
|
24
|
+
u(() => (d.add(f), () => {
|
|
25
|
+
d.delete(f);
|
|
26
|
+
}), []), u(() => {
|
|
27
|
+
if (typeof window > "u") return;
|
|
28
|
+
const t = window.matchMedia?.("(display-mode: standalone)"), i = () => v(h());
|
|
29
|
+
return t?.addEventListener?.("change", i), window.addEventListener("appinstalled", i), () => {
|
|
30
|
+
t?.removeEventListener?.("change", i), window.removeEventListener("appinstalled", i);
|
|
31
|
+
};
|
|
32
|
+
}, []), u(() => {
|
|
33
|
+
if (n) {
|
|
34
|
+
p(!1);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const t = window.setTimeout(() => {
|
|
38
|
+
r || p(!0);
|
|
39
|
+
}, a);
|
|
40
|
+
return () => window.clearTimeout(t);
|
|
41
|
+
}, [n, a]);
|
|
42
|
+
const E = I(), L = O(), A = b(o, l);
|
|
43
|
+
let s = "none";
|
|
44
|
+
!m && !A && (n ? s = "native" : E ? s = "ios" : (L || w) && (s = "manual"));
|
|
45
|
+
const S = () => {
|
|
46
|
+
typeof window > "u" || window.localStorage.setItem(o, String(Date.now()));
|
|
47
|
+
}, D = async () => {
|
|
48
|
+
if (!n) return !1;
|
|
49
|
+
await n.prompt();
|
|
50
|
+
const t = await n.userChoice;
|
|
51
|
+
return t.outcome === "dismissed" && S(), r = null, d.forEach((i) => i(null)), t.outcome === "accepted";
|
|
52
|
+
};
|
|
53
|
+
return {
|
|
54
|
+
deferredPrompt: n,
|
|
55
|
+
canInstall: s !== "none",
|
|
56
|
+
isIOS: E,
|
|
57
|
+
isStandalone: m,
|
|
58
|
+
isManualAndroid: L,
|
|
59
|
+
promptTimedOut: w,
|
|
60
|
+
method: s,
|
|
61
|
+
openInChromeIntent: _(),
|
|
62
|
+
install: D,
|
|
63
|
+
recordDecline: S
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
export {
|
|
67
|
+
F as useInstallPrompt
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=use-install-prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-install-prompt.js","sources":["../../src/hooks/use-install-prompt.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport {\n buildOpenInChromeIntent,\n isAndroidWithoutPromptApi,\n isIOS,\n isStandalone,\n type BeforeInstallPromptEvent,\n} from \"./pwa-env\";\n\nconst DEFAULT_DECLINE_COOLDOWN_MS = 7 * 24 * 60 * 60 * 1000;\nconst DEFAULT_MANUAL_FALLBACK_DELAY_MS = 3000;\nconst DEFAULT_DECLINE_STORAGE_KEY = \"tempest:install-declined-at\";\n\nlet cachedEvent: BeforeInstallPromptEvent | null = null;\nconst eventSubscribers = new Set<(event: BeforeInstallPromptEvent | null) => void>();\n\nif (typeof window !== \"undefined\") {\n window.addEventListener(\"beforeinstallprompt\", (event: Event) => {\n event.preventDefault();\n cachedEvent = event as BeforeInstallPromptEvent;\n eventSubscribers.forEach((fn) => fn(cachedEvent));\n });\n window.addEventListener(\"appinstalled\", () => {\n cachedEvent = null;\n eventSubscribers.forEach((fn) => fn(null));\n });\n}\n\n/**\n * Strategy the UI should use to install the app:\n *\n * - `\"native\"`: trigger `BeforeInstallPromptEvent.prompt()`.\n * - `\"ios\"`: show iOS Safari Share → Add to Home Screen instructions.\n * - `\"manual\"`: show generic browser-menu instructions (Chromium forks that\n * strip the prompt API, plus the timeout fallback when no event arrives).\n * - `\"none\"`: nothing to offer (already installed or unsupported runtime).\n */\nexport type InstallMethod = \"native\" | \"ios\" | \"manual\" | \"none\";\n\n/** Options for {@link useInstallPrompt}. */\nexport interface UseInstallPromptOptions {\n /**\n * `localStorage` key used to persist the decline timestamp. Defaults to\n * `\"tempest:install-declined-at\"`.\n */\n declineStorageKey?: string;\n /**\n * How long, in ms, the install CTA stays hidden after the user declines.\n * Defaults to 7 days.\n */\n declineCooldownMs?: number;\n /**\n * How long, in ms, to wait for a `beforeinstallprompt` event before\n * resolving to the `\"manual\"` method. Defaults to `3000`.\n */\n manualFallbackDelayMs?: number;\n}\n\n/** State returned by {@link useInstallPrompt}. */\nexport interface UseInstallPromptResult {\n /** The cached `beforeinstallprompt` event, or `null` when unavailable. */\n deferredPrompt: BeforeInstallPromptEvent | null;\n /** True when the app can be installed through any supported method. */\n canInstall: boolean;\n /** True when running on iOS/iPadOS Safari. */\n isIOS: boolean;\n /** True when already running as an installed PWA. */\n isStandalone: boolean;\n /** True when the browser is an Android Chromium fork with no prompt API. */\n isManualAndroid: boolean;\n /** True when no `beforeinstallprompt` arrived within the timeout window. */\n promptTimedOut: boolean;\n /** The resolved install strategy the UI should follow. */\n method: InstallMethod;\n /** An `intent://` URL to re-open the page in Chrome on Android, else `null`. */\n openInChromeIntent: string | null;\n /**\n * Triggers the native prompt.\n *\n * @returns `true` when the user accepted the install, `false` otherwise.\n */\n install: () => Promise<boolean>;\n /** Records that the user declined the CTA, starting the cooldown window. */\n recordDecline: () => void;\n}\n\nfunction readDecline(key: string, cooldownMs: number): boolean {\n if (typeof window === \"undefined\") return false;\n const raw = window.localStorage.getItem(key);\n if (!raw) return false;\n const ts = Number(raw);\n if (!Number.isFinite(ts)) return false;\n return Date.now() - ts < cooldownMs;\n}\n\n/**\n * React hook that resolves how (and whether) to offer PWA installation.\n *\n * It caches the `beforeinstallprompt` event, detects iOS/iPadOS, detects\n * Android Chromium forks that lack the prompt API, detects standalone display\n * mode, and applies a decline cooldown persisted in `localStorage`. The\n * resulting `method` tells the UI which install affordance to render.\n *\n * The decline persistence is pluggable through\n * {@link UseInstallPromptOptions.declineStorageKey} and\n * {@link UseInstallPromptOptions.declineCooldownMs} — no app-specific storage\n * layer is required, and it is SSR-guarded.\n *\n * @param options - Optional storage key, cooldown, and fallback-delay tuning.\n * @returns The install state plus `install()` and `recordDecline()` actions.\n *\n * @example\n * const { method, install } = useInstallPrompt();\n * if (method === \"native\") return <button onClick={install}>Install</button>;\n */\nexport function useInstallPrompt(options: UseInstallPromptOptions = {}): UseInstallPromptResult {\n const {\n declineStorageKey = DEFAULT_DECLINE_STORAGE_KEY,\n declineCooldownMs = DEFAULT_DECLINE_COOLDOWN_MS,\n manualFallbackDelayMs = DEFAULT_MANUAL_FALLBACK_DELAY_MS,\n } = options;\n\n const [event, setEvent] = useState<BeforeInstallPromptEvent | null>(cachedEvent);\n const [standalone, setStandalone] = useState<boolean>(isStandalone());\n const [promptTimedOut, setPromptTimedOut] = useState<boolean>(false);\n\n useEffect(() => {\n eventSubscribers.add(setEvent);\n return () => {\n eventSubscribers.delete(setEvent);\n };\n }, []);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n const mq = window.matchMedia?.(\"(display-mode: standalone)\");\n const handler = (): void => setStandalone(isStandalone());\n mq?.addEventListener?.(\"change\", handler);\n window.addEventListener(\"appinstalled\", handler);\n return () => {\n mq?.removeEventListener?.(\"change\", handler);\n window.removeEventListener(\"appinstalled\", handler);\n };\n }, []);\n\n useEffect(() => {\n if (event) {\n setPromptTimedOut(false);\n return;\n }\n const timer = window.setTimeout(() => {\n if (!cachedEvent) setPromptTimedOut(true);\n }, manualFallbackDelayMs);\n return () => window.clearTimeout(timer);\n }, [event, manualFallbackDelayMs]);\n\n const ios = isIOS();\n const manualAndroid = isAndroidWithoutPromptApi();\n\n const declineActive = readDecline(declineStorageKey, declineCooldownMs);\n\n let method: InstallMethod = \"none\";\n if (!standalone && !declineActive) {\n if (event) method = \"native\";\n else if (ios) method = \"ios\";\n else if (manualAndroid || promptTimedOut) method = \"manual\";\n }\n\n const recordDecline = (): void => {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(declineStorageKey, String(Date.now()));\n };\n\n const install = async (): Promise<boolean> => {\n if (!event) return false;\n await event.prompt();\n const choice = await event.userChoice;\n if (choice.outcome === \"dismissed\") recordDecline();\n cachedEvent = null;\n eventSubscribers.forEach((fn) => fn(null));\n return choice.outcome === \"accepted\";\n };\n\n return {\n deferredPrompt: event,\n canInstall: method !== \"none\",\n isIOS: ios,\n isStandalone: standalone,\n isManualAndroid: manualAndroid,\n promptTimedOut,\n method,\n openInChromeIntent: buildOpenInChromeIntent(),\n install,\n recordDecline,\n };\n}\n"],"names":["DEFAULT_DECLINE_COOLDOWN_MS","DEFAULT_MANUAL_FALLBACK_DELAY_MS","DEFAULT_DECLINE_STORAGE_KEY","cachedEvent","eventSubscribers","event","fn","readDecline","key","cooldownMs","raw","ts","useInstallPrompt","options","declineStorageKey","declineCooldownMs","manualFallbackDelayMs","setEvent","useState","standalone","setStandalone","isStandalone","promptTimedOut","setPromptTimedOut","useEffect","mq","handler","timer","ios","isIOS","manualAndroid","isAndroidWithoutPromptApi","declineActive","method","recordDecline","install","choice","buildOpenInChromeIntent"],"mappings":";;AASA,MAAMA,IAA8B,QAAc,KAAK,KACjDC,IAAmC,KACnCC,IAA8B;AAEpC,IAAIC,IAA+C;AACnD,MAAMC,wBAAuB,IAAA;AAEzB,OAAO,SAAW,QAClB,OAAO,iBAAiB,uBAAuB,CAACC,MAAiB;AAC7D,EAAAA,EAAM,eAAA,GACNF,IAAcE,GACdD,EAAiB,QAAQ,CAACE,MAAOA,EAAGH,CAAW,CAAC;AACpD,CAAC,GACD,OAAO,iBAAiB,gBAAgB,MAAM;AAC1C,EAAAA,IAAc,MACdC,EAAiB,QAAQ,CAACE,MAAOA,EAAG,IAAI,CAAC;AAC7C,CAAC;AA6DL,SAASC,EAAYC,GAAaC,GAA6B;AAC3D,MAAI,OAAO,SAAW,IAAa,QAAO;AAC1C,QAAMC,IAAM,OAAO,aAAa,QAAQF,CAAG;AAC3C,MAAI,CAACE,EAAK,QAAO;AACjB,QAAMC,IAAK,OAAOD,CAAG;AACrB,SAAK,OAAO,SAASC,CAAE,IAChB,KAAK,QAAQA,IAAKF,IADQ;AAErC;AAsBO,SAASG,EAAiBC,IAAmC,IAA4B;AAC5F,QAAM;AAAA,IACF,mBAAAC,IAAoBZ;AAAA,IACpB,mBAAAa,IAAoBf;AAAA,IACpB,uBAAAgB,IAAwBf;AAAA,EAAA,IACxBY,GAEE,CAACR,GAAOY,CAAQ,IAAIC,EAA0Cf,CAAW,GACzE,CAACgB,GAAYC,CAAa,IAAIF,EAAkBG,GAAc,GAC9D,CAACC,GAAgBC,CAAiB,IAAIL,EAAkB,EAAK;AAEnE,EAAAM,EAAU,OACNpB,EAAiB,IAAIa,CAAQ,GACtB,MAAM;AACT,IAAAb,EAAiB,OAAOa,CAAQ;AAAA,EACpC,IACD,CAAA,CAAE,GAELO,EAAU,MAAM;AACZ,QAAI,OAAO,SAAW,IAAa;AACnC,UAAMC,IAAK,OAAO,aAAa,4BAA4B,GACrDC,IAAU,MAAYN,EAAcC,GAAc;AACxD,WAAAI,GAAI,mBAAmB,UAAUC,CAAO,GACxC,OAAO,iBAAiB,gBAAgBA,CAAO,GACxC,MAAM;AACT,MAAAD,GAAI,sBAAsB,UAAUC,CAAO,GAC3C,OAAO,oBAAoB,gBAAgBA,CAAO;AAAA,IACtD;AAAA,EACJ,GAAG,CAAA,CAAE,GAELF,EAAU,MAAM;AACZ,QAAInB,GAAO;AACP,MAAAkB,EAAkB,EAAK;AACvB;AAAA,IACJ;AACA,UAAMI,IAAQ,OAAO,WAAW,MAAM;AAClC,MAAKxB,KAAaoB,EAAkB,EAAI;AAAA,IAC5C,GAAGP,CAAqB;AACxB,WAAO,MAAM,OAAO,aAAaW,CAAK;AAAA,EAC1C,GAAG,CAACtB,GAAOW,CAAqB,CAAC;AAEjC,QAAMY,IAAMC,EAAA,GACNC,IAAgBC,EAAA,GAEhBC,IAAgBzB,EAAYO,GAAmBC,CAAiB;AAEtE,MAAIkB,IAAwB;AAC5B,EAAI,CAACd,KAAc,CAACa,MACZ3B,IAAO4B,IAAS,WACXL,IAAKK,IAAS,SACdH,KAAiBR,OAAgBW,IAAS;AAGvD,QAAMC,IAAgB,MAAY;AAC9B,IAAI,OAAO,SAAW,OACtB,OAAO,aAAa,QAAQpB,GAAmB,OAAO,KAAK,IAAA,CAAK,CAAC;AAAA,EACrE,GAEMqB,IAAU,YAA8B;AAC1C,QAAI,CAAC9B,EAAO,QAAO;AACnB,UAAMA,EAAM,OAAA;AACZ,UAAM+B,IAAS,MAAM/B,EAAM;AAC3B,WAAI+B,EAAO,YAAY,eAAaF,EAAA,GACpC/B,IAAc,MACdC,EAAiB,QAAQ,CAACE,MAAOA,EAAG,IAAI,CAAC,GAClC8B,EAAO,YAAY;AAAA,EAC9B;AAEA,SAAO;AAAA,IACH,gBAAgB/B;AAAA,IAChB,YAAY4B,MAAW;AAAA,IACvB,OAAOL;AAAA,IACP,cAAcT;AAAA,IACd,iBAAiBW;AAAA,IACjB,gBAAAR;AAAA,IACA,QAAAW;AAAA,IACA,oBAAoBI,EAAA;AAAA,IACpB,SAAAF;AAAA,IACA,eAAAD;AAAA,EAAA;AAER;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react");function a(n,b={}){const[f,v]=u.useState(null),{once:s=!1,root:o,rootMargin:c,threshold:i}=b;return u.useEffect(()=>{const e=n.current;if(!e||typeof IntersectionObserver>"u")return;const r=new IntersectionObserver(([t])=>{t&&(v(t),s&&t.isIntersecting&&r.unobserve(e))},{root:o,rootMargin:c,threshold:i});return r.observe(e),()=>r.disconnect()},[n,s,o,c,i]),f}exports.useIntersectionObserver=a;
|
|
2
|
+
//# sourceMappingURL=use-intersection-observer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-intersection-observer.cjs","sources":["../../src/hooks/use-intersection-observer.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport type { RefObject } from \"react\";\n\nexport interface UseIntersectionObserverOptions extends IntersectionObserverInit {\n /** Stop observing after the first intersection (one-shot). Default: false. */\n once?: boolean;\n}\n\n/**\n * Track whether the referenced element intersects the viewport. Useful for\n * lazy-loading images, \"load more\" sentinels, and animation triggers.\n *\n * @returns `IntersectionObserverEntry | null`. `null` until the first observation.\n */\nexport function useIntersectionObserver(\n ref: RefObject<Element | null>,\n options: UseIntersectionObserverOptions = {},\n): IntersectionObserverEntry | null {\n const [entry, setEntry] = useState<IntersectionObserverEntry | null>(null);\n const { once = false, root, rootMargin, threshold } = options;\n\n useEffect(() => {\n const target = ref.current;\n if (!target || typeof IntersectionObserver === \"undefined\") return;\n\n const observer = new IntersectionObserver(\n ([nextEntry]) => {\n if (!nextEntry) return;\n setEntry(nextEntry);\n if (once && nextEntry.isIntersecting) observer.unobserve(target);\n },\n { root, rootMargin, threshold },\n );\n\n observer.observe(target);\n return () => observer.disconnect();\n }, [ref, once, root, rootMargin, threshold]);\n\n return entry;\n}\n"],"names":["useIntersectionObserver","ref","options","entry","setEntry","useState","once","root","rootMargin","threshold","useEffect","target","observer","nextEntry"],"mappings":"yGAcO,SAASA,EACZC,EACAC,EAA0C,GACV,CAChC,KAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAAA,SAA2C,IAAI,EACnE,CAAE,KAAAC,EAAO,GAAO,KAAAC,EAAM,WAAAC,EAAY,UAAAC,GAAcP,EAEtDQ,OAAAA,EAAAA,UAAU,IAAM,CACZ,MAAMC,EAASV,EAAI,QACnB,GAAI,CAACU,GAAU,OAAO,qBAAyB,IAAa,OAE5D,MAAMC,EAAW,IAAI,qBACjB,CAAC,CAACC,CAAS,IAAM,CACRA,IACLT,EAASS,CAAS,EACdP,GAAQO,EAAU,gBAAgBD,EAAS,UAAUD,CAAM,EACnE,EACA,CAAE,KAAAJ,EAAM,WAAAC,EAAY,UAAAC,CAAA,CAAU,EAGlC,OAAAG,EAAS,QAAQD,CAAM,EAChB,IAAMC,EAAS,WAAA,CAC1B,EAAG,CAACX,EAAKK,EAAMC,EAAMC,EAAYC,CAAS,CAAC,EAEpCN,CACX"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { useState as v, useEffect as a } from "react";
|
|
2
|
+
function l(n, u = {}) {
|
|
3
|
+
const [f, b] = v(null), { once: o = !1, root: s, rootMargin: c, threshold: i } = u;
|
|
4
|
+
return a(() => {
|
|
5
|
+
const e = n.current;
|
|
6
|
+
if (!e || typeof IntersectionObserver > "u") return;
|
|
7
|
+
const r = new IntersectionObserver(
|
|
8
|
+
([t]) => {
|
|
9
|
+
t && (b(t), o && t.isIntersecting && r.unobserve(e));
|
|
10
|
+
},
|
|
11
|
+
{ root: s, rootMargin: c, threshold: i }
|
|
12
|
+
);
|
|
13
|
+
return r.observe(e), () => r.disconnect();
|
|
14
|
+
}, [n, o, s, c, i]), f;
|
|
15
|
+
}
|
|
16
|
+
export {
|
|
17
|
+
l as useIntersectionObserver
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=use-intersection-observer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-intersection-observer.js","sources":["../../src/hooks/use-intersection-observer.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport type { RefObject } from \"react\";\n\nexport interface UseIntersectionObserverOptions extends IntersectionObserverInit {\n /** Stop observing after the first intersection (one-shot). Default: false. */\n once?: boolean;\n}\n\n/**\n * Track whether the referenced element intersects the viewport. Useful for\n * lazy-loading images, \"load more\" sentinels, and animation triggers.\n *\n * @returns `IntersectionObserverEntry | null`. `null` until the first observation.\n */\nexport function useIntersectionObserver(\n ref: RefObject<Element | null>,\n options: UseIntersectionObserverOptions = {},\n): IntersectionObserverEntry | null {\n const [entry, setEntry] = useState<IntersectionObserverEntry | null>(null);\n const { once = false, root, rootMargin, threshold } = options;\n\n useEffect(() => {\n const target = ref.current;\n if (!target || typeof IntersectionObserver === \"undefined\") return;\n\n const observer = new IntersectionObserver(\n ([nextEntry]) => {\n if (!nextEntry) return;\n setEntry(nextEntry);\n if (once && nextEntry.isIntersecting) observer.unobserve(target);\n },\n { root, rootMargin, threshold },\n );\n\n observer.observe(target);\n return () => observer.disconnect();\n }, [ref, once, root, rootMargin, threshold]);\n\n return entry;\n}\n"],"names":["useIntersectionObserver","ref","options","entry","setEntry","useState","once","root","rootMargin","threshold","useEffect","target","observer","nextEntry"],"mappings":";AAcO,SAASA,EACZC,GACAC,IAA0C,IACV;AAChC,QAAM,CAACC,GAAOC,CAAQ,IAAIC,EAA2C,IAAI,GACnE,EAAE,MAAAC,IAAO,IAAO,MAAAC,GAAM,YAAAC,GAAY,WAAAC,MAAcP;AAEtD,SAAAQ,EAAU,MAAM;AACZ,UAAMC,IAASV,EAAI;AACnB,QAAI,CAACU,KAAU,OAAO,uBAAyB,IAAa;AAE5D,UAAMC,IAAW,IAAI;AAAA,MACjB,CAAC,CAACC,CAAS,MAAM;AACb,QAAKA,MACLT,EAASS,CAAS,GACdP,KAAQO,EAAU,kBAAgBD,EAAS,UAAUD,CAAM;AAAA,MACnE;AAAA,MACA,EAAE,MAAAJ,GAAM,YAAAC,GAAY,WAAAC,EAAA;AAAA,IAAU;AAGlC,WAAAG,EAAS,QAAQD,CAAM,GAChB,MAAMC,EAAS,WAAA;AAAA,EAC1B,GAAG,CAACX,GAAKK,GAAMC,GAAMC,GAAYC,CAAS,CAAC,GAEpCN;AACX;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react");function c(t,e){const r=n.useRef(t);r.current=t,n.useEffect(()=>{if(e===null)return;const u=setInterval(()=>r.current(),e);return()=>clearInterval(u)},[e])}exports.useInterval=c;
|
|
2
|
+
//# sourceMappingURL=use-interval.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-interval.cjs","sources":["../../src/hooks/use-interval.ts"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\n/**\n * Reactive `setInterval`. Pass `null` as `delay` to pause. `fn` is stored in\n * a ref so inline callbacks don't reset the interval on every render.\n *\n * @example\n * useInterval(() => poll(), enabled ? 5000 : null);\n */\nexport function useInterval(fn: () => void, delay: number | null): void {\n const fnRef = useRef(fn);\n fnRef.current = fn;\n\n useEffect(() => {\n if (delay === null) return;\n const id = setInterval(() => fnRef.current(), delay);\n return () => clearInterval(id);\n }, [delay]);\n}\n"],"names":["useInterval","fn","delay","fnRef","useRef","useEffect","id"],"mappings":"yGASO,SAASA,EAAYC,EAAgBC,EAA4B,CACpE,MAAMC,EAAQC,EAAAA,OAAOH,CAAE,EACvBE,EAAM,QAAUF,EAEhBI,EAAAA,UAAU,IAAM,CACZ,GAAIH,IAAU,KAAM,OACpB,MAAMI,EAAK,YAAY,IAAMH,EAAM,QAAA,EAAWD,CAAK,EACnD,MAAO,IAAM,cAAcI,CAAE,CACjC,EAAG,CAACJ,CAAK,CAAC,CACd"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { useRef as u, useEffect as c } from "react";
|
|
2
|
+
function o(e, r) {
|
|
3
|
+
const t = u(e);
|
|
4
|
+
t.current = e, c(() => {
|
|
5
|
+
if (r === null) return;
|
|
6
|
+
const n = setInterval(() => t.current(), r);
|
|
7
|
+
return () => clearInterval(n);
|
|
8
|
+
}, [r]);
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
o as useInterval
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=use-interval.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-interval.js","sources":["../../src/hooks/use-interval.ts"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\n/**\n * Reactive `setInterval`. Pass `null` as `delay` to pause. `fn` is stored in\n * a ref so inline callbacks don't reset the interval on every render.\n *\n * @example\n * useInterval(() => poll(), enabled ? 5000 : null);\n */\nexport function useInterval(fn: () => void, delay: number | null): void {\n const fnRef = useRef(fn);\n fnRef.current = fn;\n\n useEffect(() => {\n if (delay === null) return;\n const id = setInterval(() => fnRef.current(), delay);\n return () => clearInterval(id);\n }, [delay]);\n}\n"],"names":["useInterval","fn","delay","fnRef","useRef","useEffect","id"],"mappings":";AASO,SAASA,EAAYC,GAAgBC,GAA4B;AACpE,QAAMC,IAAQC,EAAOH,CAAE;AACvB,EAAAE,EAAM,UAAUF,GAEhBI,EAAU,MAAM;AACZ,QAAIH,MAAU,KAAM;AACpB,UAAMI,IAAK,YAAY,MAAMH,EAAM,QAAA,GAAWD,CAAK;AACnD,WAAO,MAAM,cAAcI,CAAE;AAAA,EACjC,GAAG,CAACJ,CAAK,CAAC;AACd;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-is-first-render.cjs","sources":["../../src/hooks/use-is-first-render.ts"],"sourcesContent":["import { useRef } from \"react\";\n\n/**\n * Return `true` on the first render of the component and `false` thereafter.\n *\n * @returns Whether the current render is the first one.\n */\nexport function useIsFirstRender(): boolean {\n const isFirst = useRef<boolean>(true);\n if (isFirst.current) {\n isFirst.current = false;\n return true;\n }\n return false;\n}\n"],"names":["useIsFirstRender","isFirst","useRef"],"mappings":"yGAOO,SAASA,GAA4B,CACxC,MAAMC,EAAUC,EAAAA,OAAgB,EAAI,EACpC,OAAID,EAAQ,SACRA,EAAQ,QAAU,GACX,IAEJ,EACX"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-is-first-render.js","sources":["../../src/hooks/use-is-first-render.ts"],"sourcesContent":["import { useRef } from \"react\";\n\n/**\n * Return `true` on the first render of the component and `false` thereafter.\n *\n * @returns Whether the current render is the first one.\n */\nexport function useIsFirstRender(): boolean {\n const isFirst = useRef<boolean>(true);\n if (isFirst.current) {\n isFirst.current = false;\n return true;\n }\n return false;\n}\n"],"names":["useIsFirstRender","isFirst","useRef"],"mappings":";AAOO,SAASA,IAA4B;AACxC,QAAMC,IAAUC,EAAgB,EAAI;AACpC,SAAID,EAAQ,WACRA,EAAQ,UAAU,IACX,MAEJ;AACX;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react");function l(e,t){if(e.key.toLowerCase()!==t.key.toLowerCase())return!1;const a=!!t.ctrl,r=!!t.meta,n=!!t.shift,i=!!t.alt;if(t.mod){if(!e.ctrlKey&&!e.metaKey)return!1}else if(e.ctrlKey!==a||e.metaKey!==r)return!1;return!(e.shiftKey!==n||e.altKey!==i)}function o(e){if(!(e instanceof HTMLElement))return!1;const t=e.tagName.toLowerCase();return t==="input"||t==="textarea"||t==="select"?!0:e.isContentEditable}function u(e,t,a={}){const{disabled:r=!1,ignoreInput:n=!0}=a;s.useEffect(()=>{if(r||typeof window>"u")return;const i=f=>{n&&o(f.target)||l(f,e)&&t(f)};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[r,n,e.key,e.ctrl,e.meta,e.shift,e.alt,e.mod,t])}exports.useKeyboardShortcut=u;
|
|
2
|
+
//# sourceMappingURL=use-keyboard-shortcut.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-keyboard-shortcut.cjs","sources":["../../src/hooks/use-keyboard-shortcut.ts"],"sourcesContent":["import { useEffect } from \"react\";\n\nexport interface KeyboardShortcut {\n /** Key name (`\"k\"`, `\"Enter\"`, `\"Escape\"`, `\"ArrowDown\"`, etc.). Case-insensitive. */\n key: string;\n ctrl?: boolean;\n meta?: boolean;\n shift?: boolean;\n alt?: boolean;\n /** Match either Ctrl or Cmd. Useful for cross-OS shortcuts. */\n mod?: boolean;\n}\n\nexport interface UseKeyboardShortcutOptions {\n /** Disable the shortcut without unmounting. Default: false. */\n disabled?: boolean;\n /** Listen to the entire window. Pass `false` to scope to a specific element via the handler. Default: true. */\n global?: boolean;\n /** Suppress the event from firing inside `<input>`/`<textarea>`/`[contenteditable]`. Default: true. */\n ignoreInput?: boolean;\n}\n\nfunction matches(event: KeyboardEvent, shortcut: KeyboardShortcut): boolean {\n if (event.key.toLowerCase() !== shortcut.key.toLowerCase()) return false;\n const ctrl = !!shortcut.ctrl;\n const meta = !!shortcut.meta;\n const shift = !!shortcut.shift;\n const alt = !!shortcut.alt;\n if (shortcut.mod) {\n if (!event.ctrlKey && !event.metaKey) return false;\n } else {\n if (event.ctrlKey !== ctrl) return false;\n if (event.metaKey !== meta) return false;\n }\n if (event.shiftKey !== shift) return false;\n if (event.altKey !== alt) return false;\n return true;\n}\n\nfunction isEditable(target: EventTarget | null): boolean {\n if (!(target instanceof HTMLElement)) return false;\n const tag = target.tagName.toLowerCase();\n if (tag === \"input\" || tag === \"textarea\" || tag === \"select\") return true;\n return target.isContentEditable;\n}\n\n/**\n * Bind a global keyboard shortcut. Supports modifier combinations and a\n * cross-OS `mod` key (Ctrl on Windows/Linux, Cmd on macOS).\n *\n * The effect depends on the individual `shortcut` fields rather than on the\n * object itself: callers pass an inline literal (`{ key: \"k\", mod: true }`),\n * which is a fresh reference on every render and would otherwise tear down and\n * re-add the listener each time. `exhaustive-deps` is silenced for that line\n * because the destructured fields are the complete dependency set.\n *\n * @example\n * useKeyboardShortcut({ key: \"k\", mod: true }, () => openSearch());\n */\nexport function useKeyboardShortcut(\n shortcut: KeyboardShortcut,\n handler: (event: KeyboardEvent) => void,\n options: UseKeyboardShortcutOptions = {},\n): void {\n const { disabled = false, ignoreInput = true } = options;\n\n useEffect(() => {\n if (disabled || typeof window === \"undefined\") return;\n const listener = (event: KeyboardEvent): void => {\n if (ignoreInput && isEditable(event.target)) return;\n if (matches(event, shortcut)) handler(event);\n };\n window.addEventListener(\"keydown\", listener);\n return () => window.removeEventListener(\"keydown\", listener);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n disabled,\n ignoreInput,\n shortcut.key,\n shortcut.ctrl,\n shortcut.meta,\n shortcut.shift,\n shortcut.alt,\n shortcut.mod,\n handler,\n ]);\n}\n"],"names":["matches","event","shortcut","ctrl","meta","shift","alt","isEditable","target","tag","useKeyboardShortcut","handler","options","disabled","ignoreInput","useEffect","listener"],"mappings":"yGAsBA,SAASA,EAAQC,EAAsBC,EAAqC,CACxE,GAAID,EAAM,IAAI,YAAA,IAAkBC,EAAS,IAAI,YAAA,EAAe,MAAO,GACnE,MAAMC,EAAO,CAAC,CAACD,EAAS,KAClBE,EAAO,CAAC,CAACF,EAAS,KAClBG,EAAQ,CAAC,CAACH,EAAS,MACnBI,EAAM,CAAC,CAACJ,EAAS,IACvB,GAAIA,EAAS,KACT,GAAI,CAACD,EAAM,SAAW,CAACA,EAAM,QAAS,MAAO,WAEzCA,EAAM,UAAYE,GAClBF,EAAM,UAAYG,EAAM,MAAO,GAGvC,MADI,EAAAH,EAAM,WAAaI,GACnBJ,EAAM,SAAWK,EAEzB,CAEA,SAASC,EAAWC,EAAqC,CACrD,GAAI,EAAEA,aAAkB,aAAc,MAAO,GAC7C,MAAMC,EAAMD,EAAO,QAAQ,YAAA,EAC3B,OAAIC,IAAQ,SAAWA,IAAQ,YAAcA,IAAQ,SAAiB,GAC/DD,EAAO,iBAClB,CAeO,SAASE,EACZR,EACAS,EACAC,EAAsC,CAAA,EAClC,CACJ,KAAM,CAAE,SAAAC,EAAW,GAAO,YAAAC,EAAc,IAASF,EAEjDG,EAAAA,UAAU,IAAM,CACZ,GAAIF,GAAY,OAAO,OAAW,IAAa,OAC/C,MAAMG,EAAYf,GAA+B,CACzCa,GAAeP,EAAWN,EAAM,MAAM,GACtCD,EAAQC,EAAOC,CAAQ,KAAWD,CAAK,CAC/C,EACA,cAAO,iBAAiB,UAAWe,CAAQ,EACpC,IAAM,OAAO,oBAAoB,UAAWA,CAAQ,CAE/D,EAAG,CACCH,EACAC,EACAZ,EAAS,IACTA,EAAS,KACTA,EAAS,KACTA,EAAS,MACTA,EAAS,IACTA,EAAS,IACTS,CAAA,CACH,CACL"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { useEffect as l } from "react";
|
|
2
|
+
function s(e, t) {
|
|
3
|
+
if (e.key.toLowerCase() !== t.key.toLowerCase()) return !1;
|
|
4
|
+
const f = !!t.ctrl, n = !!t.meta, i = !!t.shift, r = !!t.alt;
|
|
5
|
+
if (t.mod) {
|
|
6
|
+
if (!e.ctrlKey && !e.metaKey) return !1;
|
|
7
|
+
} else if (e.ctrlKey !== f || e.metaKey !== n) return !1;
|
|
8
|
+
return !(e.shiftKey !== i || e.altKey !== r);
|
|
9
|
+
}
|
|
10
|
+
function o(e) {
|
|
11
|
+
if (!(e instanceof HTMLElement)) return !1;
|
|
12
|
+
const t = e.tagName.toLowerCase();
|
|
13
|
+
return t === "input" || t === "textarea" || t === "select" ? !0 : e.isContentEditable;
|
|
14
|
+
}
|
|
15
|
+
function u(e, t, f = {}) {
|
|
16
|
+
const { disabled: n = !1, ignoreInput: i = !0 } = f;
|
|
17
|
+
l(() => {
|
|
18
|
+
if (n || typeof window > "u") return;
|
|
19
|
+
const r = (a) => {
|
|
20
|
+
i && o(a.target) || s(a, e) && t(a);
|
|
21
|
+
};
|
|
22
|
+
return window.addEventListener("keydown", r), () => window.removeEventListener("keydown", r);
|
|
23
|
+
}, [
|
|
24
|
+
n,
|
|
25
|
+
i,
|
|
26
|
+
e.key,
|
|
27
|
+
e.ctrl,
|
|
28
|
+
e.meta,
|
|
29
|
+
e.shift,
|
|
30
|
+
e.alt,
|
|
31
|
+
e.mod,
|
|
32
|
+
t
|
|
33
|
+
]);
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
u as useKeyboardShortcut
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=use-keyboard-shortcut.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-keyboard-shortcut.js","sources":["../../src/hooks/use-keyboard-shortcut.ts"],"sourcesContent":["import { useEffect } from \"react\";\n\nexport interface KeyboardShortcut {\n /** Key name (`\"k\"`, `\"Enter\"`, `\"Escape\"`, `\"ArrowDown\"`, etc.). Case-insensitive. */\n key: string;\n ctrl?: boolean;\n meta?: boolean;\n shift?: boolean;\n alt?: boolean;\n /** Match either Ctrl or Cmd. Useful for cross-OS shortcuts. */\n mod?: boolean;\n}\n\nexport interface UseKeyboardShortcutOptions {\n /** Disable the shortcut without unmounting. Default: false. */\n disabled?: boolean;\n /** Listen to the entire window. Pass `false` to scope to a specific element via the handler. Default: true. */\n global?: boolean;\n /** Suppress the event from firing inside `<input>`/`<textarea>`/`[contenteditable]`. Default: true. */\n ignoreInput?: boolean;\n}\n\nfunction matches(event: KeyboardEvent, shortcut: KeyboardShortcut): boolean {\n if (event.key.toLowerCase() !== shortcut.key.toLowerCase()) return false;\n const ctrl = !!shortcut.ctrl;\n const meta = !!shortcut.meta;\n const shift = !!shortcut.shift;\n const alt = !!shortcut.alt;\n if (shortcut.mod) {\n if (!event.ctrlKey && !event.metaKey) return false;\n } else {\n if (event.ctrlKey !== ctrl) return false;\n if (event.metaKey !== meta) return false;\n }\n if (event.shiftKey !== shift) return false;\n if (event.altKey !== alt) return false;\n return true;\n}\n\nfunction isEditable(target: EventTarget | null): boolean {\n if (!(target instanceof HTMLElement)) return false;\n const tag = target.tagName.toLowerCase();\n if (tag === \"input\" || tag === \"textarea\" || tag === \"select\") return true;\n return target.isContentEditable;\n}\n\n/**\n * Bind a global keyboard shortcut. Supports modifier combinations and a\n * cross-OS `mod` key (Ctrl on Windows/Linux, Cmd on macOS).\n *\n * The effect depends on the individual `shortcut` fields rather than on the\n * object itself: callers pass an inline literal (`{ key: \"k\", mod: true }`),\n * which is a fresh reference on every render and would otherwise tear down and\n * re-add the listener each time. `exhaustive-deps` is silenced for that line\n * because the destructured fields are the complete dependency set.\n *\n * @example\n * useKeyboardShortcut({ key: \"k\", mod: true }, () => openSearch());\n */\nexport function useKeyboardShortcut(\n shortcut: KeyboardShortcut,\n handler: (event: KeyboardEvent) => void,\n options: UseKeyboardShortcutOptions = {},\n): void {\n const { disabled = false, ignoreInput = true } = options;\n\n useEffect(() => {\n if (disabled || typeof window === \"undefined\") return;\n const listener = (event: KeyboardEvent): void => {\n if (ignoreInput && isEditable(event.target)) return;\n if (matches(event, shortcut)) handler(event);\n };\n window.addEventListener(\"keydown\", listener);\n return () => window.removeEventListener(\"keydown\", listener);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n disabled,\n ignoreInput,\n shortcut.key,\n shortcut.ctrl,\n shortcut.meta,\n shortcut.shift,\n shortcut.alt,\n shortcut.mod,\n handler,\n ]);\n}\n"],"names":["matches","event","shortcut","ctrl","meta","shift","alt","isEditable","target","tag","useKeyboardShortcut","handler","options","disabled","ignoreInput","useEffect","listener"],"mappings":";AAsBA,SAASA,EAAQC,GAAsBC,GAAqC;AACxE,MAAID,EAAM,IAAI,YAAA,MAAkBC,EAAS,IAAI,YAAA,EAAe,QAAO;AACnE,QAAMC,IAAO,CAAC,CAACD,EAAS,MAClBE,IAAO,CAAC,CAACF,EAAS,MAClBG,IAAQ,CAAC,CAACH,EAAS,OACnBI,IAAM,CAAC,CAACJ,EAAS;AACvB,MAAIA,EAAS;AACT,QAAI,CAACD,EAAM,WAAW,CAACA,EAAM,QAAS,QAAO;AAAA,aAEzCA,EAAM,YAAYE,KAClBF,EAAM,YAAYG,EAAM,QAAO;AAGvC,SADI,EAAAH,EAAM,aAAaI,KACnBJ,EAAM,WAAWK;AAEzB;AAEA,SAASC,EAAWC,GAAqC;AACrD,MAAI,EAAEA,aAAkB,aAAc,QAAO;AAC7C,QAAMC,IAAMD,EAAO,QAAQ,YAAA;AAC3B,SAAIC,MAAQ,WAAWA,MAAQ,cAAcA,MAAQ,WAAiB,KAC/DD,EAAO;AAClB;AAeO,SAASE,EACZR,GACAS,GACAC,IAAsC,CAAA,GAClC;AACJ,QAAM,EAAE,UAAAC,IAAW,IAAO,aAAAC,IAAc,OAASF;AAEjD,EAAAG,EAAU,MAAM;AACZ,QAAIF,KAAY,OAAO,SAAW,IAAa;AAC/C,UAAMG,IAAW,CAACf,MAA+B;AAC7C,MAAIa,KAAeP,EAAWN,EAAM,MAAM,KACtCD,EAAQC,GAAOC,CAAQ,OAAWD,CAAK;AAAA,IAC/C;AACA,kBAAO,iBAAiB,WAAWe,CAAQ,GACpC,MAAM,OAAO,oBAAoB,WAAWA,CAAQ;AAAA,EAE/D,GAAG;AAAA,IACCH;AAAA,IACAC;AAAA,IACAZ,EAAS;AAAA,IACTA,EAAS;AAAA,IACTA,EAAS;AAAA,IACTA,EAAS;AAAA,IACTA,EAAS;AAAA,IACTA,EAAS;AAAA,IACTS;AAAA,EAAA,CACH;AACL;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react");function v(m=[]){const[S,a]=t.useState(m),o=t.useCallback((...e)=>{a(s=>[...s,...e])},[]),r=t.useCallback((...e)=>{a(s=>[...e,...s])},[]),u=t.useCallback((e,...s)=>{a(c=>[...c.slice(0,e),...s,...c.slice(e)])},[]),i=t.useCallback((...e)=>{const s=new Set(e);a(c=>c.filter((l,n)=>!s.has(n)))},[]),p=t.useCallback(({from:e,to:s})=>{a(c=>{const l=[...c],[n]=l.splice(e,1);return l.splice(s,0,n),l})},[]),b=t.useCallback((e,s)=>{a(c=>c.map((l,n)=>n===e?s:l))},[]),k=t.useCallback(e=>a(e),[]),C=t.useCallback(e=>{a(s=>s.map(e))},[]),d=t.useCallback(()=>a([]),[]),f=t.useMemo(()=>({append:o,prepend:r,insert:u,remove:i,reorder:p,setItem:b,setState:k,apply:C,clear:d}),[o,r,u,i,p,b,k,C,d]);return[S,f]}exports.useListState=v;
|
|
2
|
+
//# sourceMappingURL=use-list-state.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-list-state.cjs","sources":["../../src/hooks/use-list-state.ts"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\n\nexport interface ReorderPayload {\n from: number;\n to: number;\n}\n\nexport interface ListStateHandlers<T> {\n append: (...items: T[]) => void;\n prepend: (...items: T[]) => void;\n insert: (index: number, ...items: T[]) => void;\n remove: (...indices: number[]) => void;\n reorder: (payload: ReorderPayload) => void;\n setItem: (index: number, item: T) => void;\n setState: (items: T[]) => void;\n apply: (fn: (item: T, index: number) => T) => void;\n clear: () => void;\n}\n\n/**\n * Manage an array as state with a rich set of immutable handlers.\n *\n * @typeParam T - element type.\n * @param initial - initial list (default `[]`).\n * @returns Tuple `[list, handlers]`.\n */\nexport function useListState<T>(initial: T[] = []): [T[], ListStateHandlers<T>] {\n const [list, setList] = useState<T[]>(initial);\n\n const append = useCallback((...items: T[]): void => {\n setList((current) => [...current, ...items]);\n }, []);\n\n const prepend = useCallback((...items: T[]): void => {\n setList((current) => [...items, ...current]);\n }, []);\n\n const insert = useCallback((index: number, ...items: T[]): void => {\n setList((current) => [...current.slice(0, index), ...items, ...current.slice(index)]);\n }, []);\n\n const remove = useCallback((...indices: number[]): void => {\n const drop = new Set(indices);\n setList((current) => current.filter((_, index) => !drop.has(index)));\n }, []);\n\n const reorder = useCallback(({ from, to }: ReorderPayload): void => {\n setList((current) => {\n const next = [...current];\n const [moved] = next.splice(from, 1);\n next.splice(to, 0, moved);\n return next;\n });\n }, []);\n\n const setItem = useCallback((index: number, item: T): void => {\n setList((current) => current.map((value, i) => (i === index ? item : value)));\n }, []);\n\n const setState = useCallback((items: T[]): void => setList(items), []);\n\n const apply = useCallback((fn: (item: T, index: number) => T): void => {\n setList((current) => current.map(fn));\n }, []);\n\n const clear = useCallback((): void => setList([]), []);\n\n const handlers = useMemo<ListStateHandlers<T>>(\n () => ({\n append,\n prepend,\n insert,\n remove,\n reorder,\n setItem,\n setState,\n apply,\n clear,\n }),\n [append, prepend, insert, remove, reorder, setItem, setState, apply, clear],\n );\n\n return [list, handlers];\n}\n"],"names":["useListState","initial","list","setList","useState","append","useCallback","items","current","prepend","insert","index","remove","indices","drop","_","reorder","from","to","next","moved","setItem","item","value","i","setState","apply","fn","clear","handlers","useMemo"],"mappings":"yGA0BO,SAASA,EAAgBC,EAAe,GAAiC,CAC5E,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAAA,SAAcH,CAAO,EAEvCI,EAASC,EAAAA,YAAY,IAAIC,IAAqB,CAChDJ,EAASK,GAAY,CAAC,GAAGA,EAAS,GAAGD,CAAK,CAAC,CAC/C,EAAG,CAAA,CAAE,EAECE,EAAUH,EAAAA,YAAY,IAAIC,IAAqB,CACjDJ,EAASK,GAAY,CAAC,GAAGD,EAAO,GAAGC,CAAO,CAAC,CAC/C,EAAG,CAAA,CAAE,EAECE,EAASJ,EAAAA,YAAY,CAACK,KAAkBJ,IAAqB,CAC/DJ,EAASK,GAAY,CAAC,GAAGA,EAAQ,MAAM,EAAGG,CAAK,EAAG,GAAGJ,EAAO,GAAGC,EAAQ,MAAMG,CAAK,CAAC,CAAC,CACxF,EAAG,CAAA,CAAE,EAECC,EAASN,EAAAA,YAAY,IAAIO,IAA4B,CACvD,MAAMC,EAAO,IAAI,IAAID,CAAO,EAC5BV,EAASK,GAAYA,EAAQ,OAAO,CAACO,EAAGJ,IAAU,CAACG,EAAK,IAAIH,CAAK,CAAC,CAAC,CACvE,EAAG,CAAA,CAAE,EAECK,EAAUV,EAAAA,YAAY,CAAC,CAAE,KAAAW,EAAM,GAAAC,KAA+B,CAChEf,EAASK,GAAY,CACjB,MAAMW,EAAO,CAAC,GAAGX,CAAO,EAClB,CAACY,CAAK,EAAID,EAAK,OAAOF,EAAM,CAAC,EACnC,OAAAE,EAAK,OAAOD,EAAI,EAAGE,CAAK,EACjBD,CACX,CAAC,CACL,EAAG,CAAA,CAAE,EAECE,EAAUf,EAAAA,YAAY,CAACK,EAAeW,IAAkB,CAC1DnB,EAASK,GAAYA,EAAQ,IAAI,CAACe,EAAOC,IAAOA,IAAMb,EAAQW,EAAOC,CAAM,CAAC,CAChF,EAAG,CAAA,CAAE,EAECE,EAAWnB,EAAAA,YAAaC,GAAqBJ,EAAQI,CAAK,EAAG,EAAE,EAE/DmB,EAAQpB,cAAaqB,GAA4C,CACnExB,EAASK,GAAYA,EAAQ,IAAImB,CAAE,CAAC,CACxC,EAAG,CAAA,CAAE,EAECC,EAAQtB,EAAAA,YAAY,IAAYH,EAAQ,CAAA,CAAE,EAAG,CAAA,CAAE,EAE/C0B,EAAWC,EAAAA,QACb,KAAO,CACH,OAAAzB,EACA,QAAAI,EACA,OAAAC,EACA,OAAAE,EACA,QAAAI,EACA,QAAAK,EACA,SAAAI,EACA,MAAAC,EACA,MAAAE,CAAA,GAEJ,CAACvB,EAAQI,EAASC,EAAQE,EAAQI,EAASK,EAASI,EAAUC,EAAOE,CAAK,CAAA,EAG9E,MAAO,CAAC1B,EAAM2B,CAAQ,CAC1B"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { useState as b, useCallback as o, useMemo as k } from "react";
|
|
2
|
+
function x(h = []) {
|
|
3
|
+
const [v, s] = b(h), p = o((...t) => {
|
|
4
|
+
s((e) => [...e, ...t]);
|
|
5
|
+
}, []), a = o((...t) => {
|
|
6
|
+
s((e) => [...t, ...e]);
|
|
7
|
+
}, []), l = o((t, ...e) => {
|
|
8
|
+
s((n) => [...n.slice(0, t), ...e, ...n.slice(t)]);
|
|
9
|
+
}, []), i = o((...t) => {
|
|
10
|
+
const e = new Set(t);
|
|
11
|
+
s((n) => n.filter((c, r) => !e.has(r)));
|
|
12
|
+
}, []), m = o(({ from: t, to: e }) => {
|
|
13
|
+
s((n) => {
|
|
14
|
+
const c = [...n], [r] = c.splice(t, 1);
|
|
15
|
+
return c.splice(e, 0, r), c;
|
|
16
|
+
});
|
|
17
|
+
}, []), u = o((t, e) => {
|
|
18
|
+
s((n) => n.map((c, r) => r === t ? e : c));
|
|
19
|
+
}, []), d = o((t) => s(t), []), S = o((t) => {
|
|
20
|
+
s((e) => e.map(t));
|
|
21
|
+
}, []), f = o(() => s([]), []), L = k(
|
|
22
|
+
() => ({
|
|
23
|
+
append: p,
|
|
24
|
+
prepend: a,
|
|
25
|
+
insert: l,
|
|
26
|
+
remove: i,
|
|
27
|
+
reorder: m,
|
|
28
|
+
setItem: u,
|
|
29
|
+
setState: d,
|
|
30
|
+
apply: S,
|
|
31
|
+
clear: f
|
|
32
|
+
}),
|
|
33
|
+
[p, a, l, i, m, u, d, S, f]
|
|
34
|
+
);
|
|
35
|
+
return [v, L];
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
x as useListState
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=use-list-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-list-state.js","sources":["../../src/hooks/use-list-state.ts"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\n\nexport interface ReorderPayload {\n from: number;\n to: number;\n}\n\nexport interface ListStateHandlers<T> {\n append: (...items: T[]) => void;\n prepend: (...items: T[]) => void;\n insert: (index: number, ...items: T[]) => void;\n remove: (...indices: number[]) => void;\n reorder: (payload: ReorderPayload) => void;\n setItem: (index: number, item: T) => void;\n setState: (items: T[]) => void;\n apply: (fn: (item: T, index: number) => T) => void;\n clear: () => void;\n}\n\n/**\n * Manage an array as state with a rich set of immutable handlers.\n *\n * @typeParam T - element type.\n * @param initial - initial list (default `[]`).\n * @returns Tuple `[list, handlers]`.\n */\nexport function useListState<T>(initial: T[] = []): [T[], ListStateHandlers<T>] {\n const [list, setList] = useState<T[]>(initial);\n\n const append = useCallback((...items: T[]): void => {\n setList((current) => [...current, ...items]);\n }, []);\n\n const prepend = useCallback((...items: T[]): void => {\n setList((current) => [...items, ...current]);\n }, []);\n\n const insert = useCallback((index: number, ...items: T[]): void => {\n setList((current) => [...current.slice(0, index), ...items, ...current.slice(index)]);\n }, []);\n\n const remove = useCallback((...indices: number[]): void => {\n const drop = new Set(indices);\n setList((current) => current.filter((_, index) => !drop.has(index)));\n }, []);\n\n const reorder = useCallback(({ from, to }: ReorderPayload): void => {\n setList((current) => {\n const next = [...current];\n const [moved] = next.splice(from, 1);\n next.splice(to, 0, moved);\n return next;\n });\n }, []);\n\n const setItem = useCallback((index: number, item: T): void => {\n setList((current) => current.map((value, i) => (i === index ? item : value)));\n }, []);\n\n const setState = useCallback((items: T[]): void => setList(items), []);\n\n const apply = useCallback((fn: (item: T, index: number) => T): void => {\n setList((current) => current.map(fn));\n }, []);\n\n const clear = useCallback((): void => setList([]), []);\n\n const handlers = useMemo<ListStateHandlers<T>>(\n () => ({\n append,\n prepend,\n insert,\n remove,\n reorder,\n setItem,\n setState,\n apply,\n clear,\n }),\n [append, prepend, insert, remove, reorder, setItem, setState, apply, clear],\n );\n\n return [list, handlers];\n}\n"],"names":["useListState","initial","list","setList","useState","append","useCallback","items","current","prepend","insert","index","remove","indices","drop","_","reorder","from","to","next","moved","setItem","item","value","i","setState","apply","fn","clear","handlers","useMemo"],"mappings":";AA0BO,SAASA,EAAgBC,IAAe,IAAiC;AAC5E,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAcH,CAAO,GAEvCI,IAASC,EAAY,IAAIC,MAAqB;AAChD,IAAAJ,EAAQ,CAACK,MAAY,CAAC,GAAGA,GAAS,GAAGD,CAAK,CAAC;AAAA,EAC/C,GAAG,CAAA,CAAE,GAECE,IAAUH,EAAY,IAAIC,MAAqB;AACjD,IAAAJ,EAAQ,CAACK,MAAY,CAAC,GAAGD,GAAO,GAAGC,CAAO,CAAC;AAAA,EAC/C,GAAG,CAAA,CAAE,GAECE,IAASJ,EAAY,CAACK,MAAkBJ,MAAqB;AAC/D,IAAAJ,EAAQ,CAACK,MAAY,CAAC,GAAGA,EAAQ,MAAM,GAAGG,CAAK,GAAG,GAAGJ,GAAO,GAAGC,EAAQ,MAAMG,CAAK,CAAC,CAAC;AAAA,EACxF,GAAG,CAAA,CAAE,GAECC,IAASN,EAAY,IAAIO,MAA4B;AACvD,UAAMC,IAAO,IAAI,IAAID,CAAO;AAC5B,IAAAV,EAAQ,CAACK,MAAYA,EAAQ,OAAO,CAACO,GAAGJ,MAAU,CAACG,EAAK,IAAIH,CAAK,CAAC,CAAC;AAAA,EACvE,GAAG,CAAA,CAAE,GAECK,IAAUV,EAAY,CAAC,EAAE,MAAAW,GAAM,IAAAC,QAA+B;AAChE,IAAAf,EAAQ,CAACK,MAAY;AACjB,YAAMW,IAAO,CAAC,GAAGX,CAAO,GAClB,CAACY,CAAK,IAAID,EAAK,OAAOF,GAAM,CAAC;AACnC,aAAAE,EAAK,OAAOD,GAAI,GAAGE,CAAK,GACjBD;AAAA,IACX,CAAC;AAAA,EACL,GAAG,CAAA,CAAE,GAECE,IAAUf,EAAY,CAACK,GAAeW,MAAkB;AAC1D,IAAAnB,EAAQ,CAACK,MAAYA,EAAQ,IAAI,CAACe,GAAOC,MAAOA,MAAMb,IAAQW,IAAOC,CAAM,CAAC;AAAA,EAChF,GAAG,CAAA,CAAE,GAECE,IAAWnB,EAAY,CAACC,MAAqBJ,EAAQI,CAAK,GAAG,EAAE,GAE/DmB,IAAQpB,EAAY,CAACqB,MAA4C;AACnE,IAAAxB,EAAQ,CAACK,MAAYA,EAAQ,IAAImB,CAAE,CAAC;AAAA,EACxC,GAAG,CAAA,CAAE,GAECC,IAAQtB,EAAY,MAAYH,EAAQ,CAAA,CAAE,GAAG,CAAA,CAAE,GAE/C0B,IAAWC;AAAA,IACb,OAAO;AAAA,MACH,QAAAzB;AAAA,MACA,SAAAI;AAAA,MACA,QAAAC;AAAA,MACA,QAAAE;AAAA,MACA,SAAAI;AAAA,MACA,SAAAK;AAAA,MACA,UAAAI;AAAA,MACA,OAAAC;AAAA,MACA,OAAAE;AAAA,IAAA;AAAA,IAEJ,CAACvB,GAAQI,GAASC,GAAQE,GAAQI,GAASK,GAASI,GAAUC,GAAOE,CAAK;AAAA,EAAA;AAG9E,SAAO,CAAC1B,GAAM2B,CAAQ;AAC1B;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),S=JSON.stringify,g=e=>JSON.parse(e);function m(e,r,a={}){const u=a.serialize??S,s=a.deserialize??g,c=n.useCallback(()=>{if(typeof window>"u")return r;try{const t=window.localStorage.getItem(e);return t===null?r:s(t)}catch{return r}},[e,r,s]),[w,o]=n.useState(c);n.useEffect(()=>{o(c())},[c]);const l=n.useCallback(t=>{o(i=>{const d=typeof t=="function"?t(i):t;try{typeof window<"u"&&window.localStorage.setItem(e,u(d))}catch{}return d})},[e,u]),f=n.useCallback(()=>{try{typeof window<"u"&&window.localStorage.removeItem(e)}catch{}o(r)},[e,r]);return n.useEffect(()=>{if(typeof window>"u")return;const t=i=>{if(i.key===e){if(i.newValue===null){o(r);return}try{o(s(i.newValue))}catch{}}};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)},[e,r,s]),[w,l,f]}exports.useLocalStorage=m;
|
|
2
|
+
//# sourceMappingURL=use-local-storage.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-local-storage.cjs","sources":["../../src/hooks/use-local-storage.ts"],"sourcesContent":["import { useCallback, useEffect, useState } from \"react\";\n\nexport type LocalStorageOptions<T> = {\n serialize?: (value: T) => string;\n deserialize?: (raw: string) => T;\n};\n\nconst defaultSerialize = JSON.stringify;\nconst defaultDeserialize = <T>(raw: string): T => JSON.parse(raw) as T;\n\n/**\n * State synced with `localStorage`. SSR-safe — initial render returns the\n * provided default; the stored value is hydrated after mount. Updates to the\n * same key in other tabs are picked up via the `storage` event.\n *\n * @param key - localStorage key.\n * @param defaultValue - value used when nothing is stored or in SSR.\n * @param options - custom `serialize` / `deserialize` (default JSON).\n * @returns Tuple `[value, setValue, remove]`.\n */\nexport function useLocalStorage<T>(\n key: string,\n defaultValue: T,\n options: LocalStorageOptions<T> = {},\n): [T, (value: T | ((prev: T) => T)) => void, () => void] {\n const serialize = options.serialize ?? defaultSerialize;\n const deserialize = options.deserialize ?? defaultDeserialize;\n\n const read = useCallback((): T => {\n if (typeof window === \"undefined\") return defaultValue;\n try {\n const raw = window.localStorage.getItem(key);\n if (raw === null) return defaultValue;\n return deserialize(raw);\n } catch {\n return defaultValue;\n }\n }, [key, defaultValue, deserialize]);\n\n const [value, setStored] = useState<T>(read);\n\n useEffect(() => {\n setStored(read());\n }, [read]);\n\n const setValue = useCallback(\n (next: T | ((prev: T) => T)): void => {\n setStored((current) => {\n const resolved =\n typeof next === \"function\" ? (next as (prev: T) => T)(current) : next;\n try {\n if (typeof window !== \"undefined\") {\n window.localStorage.setItem(key, serialize(resolved));\n }\n } catch {\n /* swallow quota/exceptions */\n }\n return resolved;\n });\n },\n [key, serialize],\n );\n\n const remove = useCallback((): void => {\n try {\n if (typeof window !== \"undefined\") {\n window.localStorage.removeItem(key);\n }\n } catch {\n /* ignore */\n }\n setStored(defaultValue);\n }, [key, defaultValue]);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n const onStorage = (event: StorageEvent): void => {\n if (event.key !== key) return;\n if (event.newValue === null) {\n setStored(defaultValue);\n return;\n }\n try {\n setStored(deserialize(event.newValue));\n } catch {\n /* ignore malformed remote value */\n }\n };\n window.addEventListener(\"storage\", onStorage);\n return () => window.removeEventListener(\"storage\", onStorage);\n }, [key, defaultValue, deserialize]);\n\n return [value, setValue, remove];\n}\n"],"names":["defaultSerialize","defaultDeserialize","raw","useLocalStorage","key","defaultValue","options","serialize","deserialize","read","useCallback","value","setStored","useState","useEffect","setValue","next","current","resolved","remove","onStorage","event"],"mappings":"yGAOMA,EAAmB,KAAK,UACxBC,EAAyBC,GAAmB,KAAK,MAAMA,CAAG,EAYzD,SAASC,EACZC,EACAC,EACAC,EAAkC,CAAA,EACoB,CACtD,MAAMC,EAAYD,EAAQ,WAAaN,EACjCQ,EAAcF,EAAQ,aAAeL,EAErCQ,EAAOC,EAAAA,YAAY,IAAS,CAC9B,GAAI,OAAO,OAAW,IAAa,OAAOL,EAC1C,GAAI,CACA,MAAMH,EAAM,OAAO,aAAa,QAAQE,CAAG,EAC3C,OAAIF,IAAQ,KAAaG,EAClBG,EAAYN,CAAG,CAC1B,MAAQ,CACJ,OAAOG,CACX,CACJ,EAAG,CAACD,EAAKC,EAAcG,CAAW,CAAC,EAE7B,CAACG,EAAOC,CAAS,EAAIC,EAAAA,SAAYJ,CAAI,EAE3CK,EAAAA,UAAU,IAAM,CACZF,EAAUH,GAAM,CACpB,EAAG,CAACA,CAAI,CAAC,EAET,MAAMM,EAAWL,EAAAA,YACZM,GAAqC,CAClCJ,EAAWK,GAAY,CACnB,MAAMC,EACF,OAAOF,GAAS,WAAcA,EAAwBC,CAAO,EAAID,EACrE,GAAI,CACI,OAAO,OAAW,KAClB,OAAO,aAAa,QAAQZ,EAAKG,EAAUW,CAAQ,CAAC,CAE5D,MAAQ,CAER,CACA,OAAOA,CACX,CAAC,CACL,EACA,CAACd,EAAKG,CAAS,CAAA,EAGbY,EAAST,EAAAA,YAAY,IAAY,CACnC,GAAI,CACI,OAAO,OAAW,KAClB,OAAO,aAAa,WAAWN,CAAG,CAE1C,MAAQ,CAER,CACAQ,EAAUP,CAAY,CAC1B,EAAG,CAACD,EAAKC,CAAY,CAAC,EAEtBS,OAAAA,EAAAA,UAAU,IAAM,CACZ,GAAI,OAAO,OAAW,IAAa,OACnC,MAAMM,EAAaC,GAA8B,CAC7C,GAAIA,EAAM,MAAQjB,EAClB,IAAIiB,EAAM,WAAa,KAAM,CACzBT,EAAUP,CAAY,EACtB,MACJ,CACA,GAAI,CACAO,EAAUJ,EAAYa,EAAM,QAAQ,CAAC,CACzC,MAAQ,CAER,EACJ,EACA,cAAO,iBAAiB,UAAWD,CAAS,EACrC,IAAM,OAAO,oBAAoB,UAAWA,CAAS,CAChE,EAAG,CAAChB,EAAKC,EAAcG,CAAW,CAAC,EAE5B,CAACG,EAAOI,EAAUI,CAAM,CACnC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { useCallback as c, useState as g, useEffect as f } from "react";
|
|
2
|
+
const m = JSON.stringify, p = (e) => JSON.parse(e);
|
|
3
|
+
function v(e, t, w = {}) {
|
|
4
|
+
const a = w.serialize ?? m, i = w.deserialize ?? p, s = c(() => {
|
|
5
|
+
if (typeof window > "u") return t;
|
|
6
|
+
try {
|
|
7
|
+
const r = window.localStorage.getItem(e);
|
|
8
|
+
return r === null ? t : i(r);
|
|
9
|
+
} catch {
|
|
10
|
+
return t;
|
|
11
|
+
}
|
|
12
|
+
}, [e, t, i]), [u, n] = g(s);
|
|
13
|
+
f(() => {
|
|
14
|
+
n(s());
|
|
15
|
+
}, [s]);
|
|
16
|
+
const l = c(
|
|
17
|
+
(r) => {
|
|
18
|
+
n((o) => {
|
|
19
|
+
const d = typeof r == "function" ? r(o) : r;
|
|
20
|
+
try {
|
|
21
|
+
typeof window < "u" && window.localStorage.setItem(e, a(d));
|
|
22
|
+
} catch {
|
|
23
|
+
}
|
|
24
|
+
return d;
|
|
25
|
+
});
|
|
26
|
+
},
|
|
27
|
+
[e, a]
|
|
28
|
+
), S = c(() => {
|
|
29
|
+
try {
|
|
30
|
+
typeof window < "u" && window.localStorage.removeItem(e);
|
|
31
|
+
} catch {
|
|
32
|
+
}
|
|
33
|
+
n(t);
|
|
34
|
+
}, [e, t]);
|
|
35
|
+
return f(() => {
|
|
36
|
+
if (typeof window > "u") return;
|
|
37
|
+
const r = (o) => {
|
|
38
|
+
if (o.key === e) {
|
|
39
|
+
if (o.newValue === null) {
|
|
40
|
+
n(t);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
try {
|
|
44
|
+
n(i(o.newValue));
|
|
45
|
+
} catch {
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
return window.addEventListener("storage", r), () => window.removeEventListener("storage", r);
|
|
50
|
+
}, [e, t, i]), [u, l, S];
|
|
51
|
+
}
|
|
52
|
+
export {
|
|
53
|
+
v as useLocalStorage
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=use-local-storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-local-storage.js","sources":["../../src/hooks/use-local-storage.ts"],"sourcesContent":["import { useCallback, useEffect, useState } from \"react\";\n\nexport type LocalStorageOptions<T> = {\n serialize?: (value: T) => string;\n deserialize?: (raw: string) => T;\n};\n\nconst defaultSerialize = JSON.stringify;\nconst defaultDeserialize = <T>(raw: string): T => JSON.parse(raw) as T;\n\n/**\n * State synced with `localStorage`. SSR-safe — initial render returns the\n * provided default; the stored value is hydrated after mount. Updates to the\n * same key in other tabs are picked up via the `storage` event.\n *\n * @param key - localStorage key.\n * @param defaultValue - value used when nothing is stored or in SSR.\n * @param options - custom `serialize` / `deserialize` (default JSON).\n * @returns Tuple `[value, setValue, remove]`.\n */\nexport function useLocalStorage<T>(\n key: string,\n defaultValue: T,\n options: LocalStorageOptions<T> = {},\n): [T, (value: T | ((prev: T) => T)) => void, () => void] {\n const serialize = options.serialize ?? defaultSerialize;\n const deserialize = options.deserialize ?? defaultDeserialize;\n\n const read = useCallback((): T => {\n if (typeof window === \"undefined\") return defaultValue;\n try {\n const raw = window.localStorage.getItem(key);\n if (raw === null) return defaultValue;\n return deserialize(raw);\n } catch {\n return defaultValue;\n }\n }, [key, defaultValue, deserialize]);\n\n const [value, setStored] = useState<T>(read);\n\n useEffect(() => {\n setStored(read());\n }, [read]);\n\n const setValue = useCallback(\n (next: T | ((prev: T) => T)): void => {\n setStored((current) => {\n const resolved =\n typeof next === \"function\" ? (next as (prev: T) => T)(current) : next;\n try {\n if (typeof window !== \"undefined\") {\n window.localStorage.setItem(key, serialize(resolved));\n }\n } catch {\n /* swallow quota/exceptions */\n }\n return resolved;\n });\n },\n [key, serialize],\n );\n\n const remove = useCallback((): void => {\n try {\n if (typeof window !== \"undefined\") {\n window.localStorage.removeItem(key);\n }\n } catch {\n /* ignore */\n }\n setStored(defaultValue);\n }, [key, defaultValue]);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n const onStorage = (event: StorageEvent): void => {\n if (event.key !== key) return;\n if (event.newValue === null) {\n setStored(defaultValue);\n return;\n }\n try {\n setStored(deserialize(event.newValue));\n } catch {\n /* ignore malformed remote value */\n }\n };\n window.addEventListener(\"storage\", onStorage);\n return () => window.removeEventListener(\"storage\", onStorage);\n }, [key, defaultValue, deserialize]);\n\n return [value, setValue, remove];\n}\n"],"names":["defaultSerialize","defaultDeserialize","raw","useLocalStorage","key","defaultValue","options","serialize","deserialize","read","useCallback","value","setStored","useState","useEffect","setValue","next","current","resolved","remove","onStorage","event"],"mappings":";AAOA,MAAMA,IAAmB,KAAK,WACxBC,IAAqB,CAAIC,MAAmB,KAAK,MAAMA,CAAG;AAYzD,SAASC,EACZC,GACAC,GACAC,IAAkC,CAAA,GACoB;AACtD,QAAMC,IAAYD,EAAQ,aAAaN,GACjCQ,IAAcF,EAAQ,eAAeL,GAErCQ,IAAOC,EAAY,MAAS;AAC9B,QAAI,OAAO,SAAW,IAAa,QAAOL;AAC1C,QAAI;AACA,YAAMH,IAAM,OAAO,aAAa,QAAQE,CAAG;AAC3C,aAAIF,MAAQ,OAAaG,IAClBG,EAAYN,CAAG;AAAA,IAC1B,QAAQ;AACJ,aAAOG;AAAA,IACX;AAAA,EACJ,GAAG,CAACD,GAAKC,GAAcG,CAAW,CAAC,GAE7B,CAACG,GAAOC,CAAS,IAAIC,EAAYJ,CAAI;AAE3C,EAAAK,EAAU,MAAM;AACZ,IAAAF,EAAUH,GAAM;AAAA,EACpB,GAAG,CAACA,CAAI,CAAC;AAET,QAAMM,IAAWL;AAAA,IACb,CAACM,MAAqC;AAClC,MAAAJ,EAAU,CAACK,MAAY;AACnB,cAAMC,IACF,OAAOF,KAAS,aAAcA,EAAwBC,CAAO,IAAID;AACrE,YAAI;AACA,UAAI,OAAO,SAAW,OAClB,OAAO,aAAa,QAAQZ,GAAKG,EAAUW,CAAQ,CAAC;AAAA,QAE5D,QAAQ;AAAA,QAER;AACA,eAAOA;AAAA,MACX,CAAC;AAAA,IACL;AAAA,IACA,CAACd,GAAKG,CAAS;AAAA,EAAA,GAGbY,IAAST,EAAY,MAAY;AACnC,QAAI;AACA,MAAI,OAAO,SAAW,OAClB,OAAO,aAAa,WAAWN,CAAG;AAAA,IAE1C,QAAQ;AAAA,IAER;AACA,IAAAQ,EAAUP,CAAY;AAAA,EAC1B,GAAG,CAACD,GAAKC,CAAY,CAAC;AAEtB,SAAAS,EAAU,MAAM;AACZ,QAAI,OAAO,SAAW,IAAa;AACnC,UAAMM,IAAY,CAACC,MAA8B;AAC7C,UAAIA,EAAM,QAAQjB,GAClB;AAAA,YAAIiB,EAAM,aAAa,MAAM;AACzB,UAAAT,EAAUP,CAAY;AACtB;AAAA,QACJ;AACA,YAAI;AACA,UAAAO,EAAUJ,EAAYa,EAAM,QAAQ,CAAC;AAAA,QACzC,QAAQ;AAAA,QAER;AAAA;AAAA,IACJ;AACA,kBAAO,iBAAiB,WAAWD,CAAS,GACrC,MAAM,OAAO,oBAAoB,WAAWA,CAAS;AAAA,EAChE,GAAG,CAAChB,GAAKC,GAAcG,CAAW,CAAC,GAE5B,CAACG,GAAOI,GAAUI,CAAM;AACnC;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react");function d(o,a={}){const{delayMs:c=500,disabled:n=!1}=a,t=r.useRef(null),u=r.useRef(!1),s=r.useRef(o);s.current=o;const e=r.useCallback(()=>{t.current!==null&&(window.clearTimeout(t.current),t.current=null)},[]),l=r.useCallback(()=>{n||(u.current=!1,e(),t.current=window.setTimeout(()=>{u.current=!0,s.current()},c))},[n,e,c]),f=r.useCallback(i=>{n||(i.preventDefault(),u.current=!0,s.current())},[n]);return{onMouseDown:l,onMouseUp:e,onMouseLeave:e,onTouchStart:l,onTouchEnd:e,onTouchMove:e,onContextMenu:f,wasLongPress:()=>u.current}}exports.useLongPressHandlers=d;
|
|
2
|
+
//# sourceMappingURL=use-long-press-handlers.cjs.map
|