@burdenoff/fe-libs 2026.819.5 → 2026.823.2
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 +66 -0
- package/dist/button/Button.d.ts +1 -1
- package/dist/chrome/AppShellLayout.d.ts +14 -0
- package/dist/chrome/AppShellLayout.d.ts.map +1 -1
- package/dist/chrome/AppShellLayout.js +13 -10
- package/dist/chrome/DynamicFooter.d.ts +6 -1
- package/dist/chrome/DynamicFooter.d.ts.map +1 -1
- package/dist/chrome/DynamicFooter.js +21 -20
- package/dist/chrome/Footer.d.ts +6 -0
- package/dist/chrome/Footer.d.ts.map +1 -1
- package/dist/chrome/Footer.js +46 -45
- package/dist/chrome/FooterBar.d.ts +6 -1
- package/dist/chrome/FooterBar.d.ts.map +1 -1
- package/dist/chrome/FooterBar.js +28 -26
- package/dist/chrome/HeaderBar.d.ts.map +1 -1
- package/dist/chrome/HeaderBar.js +3 -0
- package/dist/chrome/MobileTabBar.d.ts +26 -0
- package/dist/chrome/MobileTabBar.d.ts.map +1 -0
- package/dist/chrome/MobileTabBar.js +194 -0
- package/dist/chrome/NativePageTransition.d.ts +10 -0
- package/dist/chrome/NativePageTransition.d.ts.map +1 -0
- package/dist/chrome/NativePageTransition.js +19 -0
- package/dist/chrome/NativeTopBar.d.ts +21 -0
- package/dist/chrome/NativeTopBar.d.ts.map +1 -0
- package/dist/chrome/NativeTopBar.js +72 -0
- package/dist/chrome/NotificationCenter.d.ts.map +1 -1
- package/dist/chrome/NotificationCenter.js +70 -65
- package/dist/chrome/ProductSideNav.d.ts.map +1 -1
- package/dist/chrome/ProductSideNav.js +44 -74
- package/dist/chrome/SwipeNavigation.d.ts +36 -0
- package/dist/chrome/SwipeNavigation.d.ts.map +1 -0
- package/dist/chrome/SwipeNavigation.js +111 -0
- package/dist/chrome/index.d.ts +14 -7
- package/dist/chrome/index.d.ts.map +1 -1
- package/dist/chrome/mobileTabBar/selectTabs.d.ts +45 -0
- package/dist/chrome/mobileTabBar/selectTabs.d.ts.map +1 -0
- package/dist/chrome/mobileTabBar/selectTabs.js +28 -0
- package/dist/chrome/mobileTabBar/useMobileTabBarVisible.d.ts +18 -0
- package/dist/chrome/mobileTabBar/useMobileTabBarVisible.d.ts.map +1 -0
- package/dist/chrome/mobileTabBar/useMobileTabBarVisible.js +16 -0
- package/dist/chrome/mobileTabBar/useVisibleNavItems.d.ts +18 -0
- package/dist/chrome/mobileTabBar/useVisibleNavItems.d.ts.map +1 -0
- package/dist/chrome/mobileTabBar/useVisibleNavItems.js +41 -0
- package/dist/chrome/nativeTopBarTitle.d.ts +15 -0
- package/dist/chrome/nativeTopBarTitle.d.ts.map +1 -0
- package/dist/chrome/nativeTopBarTitle.js +22 -0
- package/dist/chrome/swipe/swipeMath.d.ts +25 -0
- package/dist/chrome/swipe/swipeMath.d.ts.map +1 -0
- package/dist/chrome/swipe/swipeMath.js +14 -0
- package/dist/chrome/swipe/swipeState.d.ts +10 -0
- package/dist/chrome/swipe/swipeState.d.ts.map +1 -0
- package/dist/chrome/swipe/swipeState.js +11 -0
- package/dist/chrome.js +8 -1
- package/dist/shared/components/DesktopUpdateToast.d.ts +9 -0
- package/dist/shared/components/DesktopUpdateToast.d.ts.map +1 -0
- package/dist/shared/components/DesktopUpdateToast.js +39 -0
- package/dist/shared/components/PWAInstallBanner.js +1 -1
- package/dist/shared/components/SSORedirectGuard.d.ts.map +1 -1
- package/dist/shared/components/SSORedirectGuard.js +41 -45
- package/dist/shared/components/index.d.ts +2 -0
- package/dist/shared/components/index.d.ts.map +1 -1
- package/dist/shared/config/authBridgeUrls.d.ts +10 -0
- package/dist/shared/config/authBridgeUrls.d.ts.map +1 -1
- package/dist/shared/config/authBridgeUrls.js +16 -12
- package/dist/shared/config/gatewayUrls.d.ts.map +1 -1
- package/dist/shared/config/gatewayUrls.js +22 -19
- package/dist/shared/config/index.d.ts +1 -1
- package/dist/shared/config/index.d.ts.map +1 -1
- package/dist/shared/hooks/shell/useNavRegistry.d.ts +7 -0
- package/dist/shared/hooks/shell/useNavRegistry.d.ts.map +1 -1
- package/dist/shared/hooks/usePWA.d.ts.map +1 -1
- package/dist/shared/hooks/usePWA.js +34 -30
- package/dist/shared/native/consumers.d.ts +15 -1
- package/dist/shared/native/consumers.d.ts.map +1 -1
- package/dist/shared/native/consumers.js +26 -7
- package/dist/shared/native/desktop.d.ts +123 -0
- package/dist/shared/native/desktop.d.ts.map +1 -0
- package/dist/shared/native/desktop.js +280 -0
- package/dist/shared/native/entry.d.ts +39 -0
- package/dist/shared/native/entry.d.ts.map +1 -0
- package/dist/shared/native/entry.js +13 -0
- package/dist/shared/native/hooks/index.d.ts +10 -0
- package/dist/shared/native/hooks/index.d.ts.map +1 -1
- package/dist/shared/native/hooks/index.js +6 -0
- package/dist/shared/native/hooks/useActionSheet.d.ts +63 -0
- package/dist/shared/native/hooks/useActionSheet.d.ts.map +1 -0
- package/dist/shared/native/hooks/useActionSheet.js +45 -0
- package/dist/shared/native/hooks/useDesktop.d.ts +15 -0
- package/dist/shared/native/hooks/useDesktop.d.ts.map +1 -0
- package/dist/shared/native/hooks/useDesktop.js +18 -0
- package/dist/shared/native/hooks/useDesktopUpdateState.d.ts +7 -0
- package/dist/shared/native/hooks/useDesktopUpdateState.d.ts.map +1 -0
- package/dist/shared/native/hooks/useDesktopUpdateState.js +20 -0
- package/dist/shared/native/hooks/useDesktopWindowState.d.ts +7 -0
- package/dist/shared/native/hooks/useDesktopWindowState.d.ts.map +1 -0
- package/dist/shared/native/hooks/useDesktopWindowState.js +9 -0
- package/dist/shared/native/hooks/useHaptics.d.ts +1 -0
- package/dist/shared/native/hooks/useHaptics.d.ts.map +1 -1
- package/dist/shared/native/hooks/useHaptics.js +6 -6
- package/dist/shared/native/hooks/useNetworkStatus.d.ts +23 -0
- package/dist/shared/native/hooks/useNetworkStatus.d.ts.map +1 -0
- package/dist/shared/native/hooks/useNetworkStatus.js +29 -0
- package/dist/shared/native/hooks/usePullToRefresh.d.ts +62 -0
- package/dist/shared/native/hooks/usePullToRefresh.d.ts.map +1 -0
- package/dist/shared/native/hooks/usePullToRefresh.js +84 -0
- package/dist/shared/native/index.d.ts +6 -1
- package/dist/shared/native/index.d.ts.map +1 -1
- package/dist/shared/native/platform.d.ts.map +1 -1
- package/dist/shared/native/platform.js +2 -1
- package/dist/shared/native/purchases.d.ts +7 -1
- package/dist/shared/native/purchases.d.ts.map +1 -1
- package/dist/shared/native/purchases.js +3 -3
- package/dist/shared/native/types.d.ts +136 -0
- package/dist/shared/native/types.d.ts.map +1 -1
- package/dist/shared/providers/AppShellProvider.d.ts.map +1 -1
- package/dist/shared/providers/AppShellProvider.js +117 -115
- package/dist/shared/providers/shell/ThemeProvider.d.ts.map +1 -1
- package/dist/shared/providers/shell/ThemeProvider.js +64 -51
- package/dist/shared/providers/shell/authProvider/useSsoDepositBootGuard.d.ts.map +1 -1
- package/dist/shared/providers/shell/authProvider/useSsoDepositBootGuard.js +25 -29
- package/dist/shared/utils/gatewayFetchRewrite.d.ts.map +1 -1
- package/dist/shared/utils/gatewayFetchRewrite.js +87 -84
- package/dist/shared-components.js +2 -1
- package/dist/shared-config.js +10 -10
- package/dist/shared-native.js +21 -13
- package/dist/shared.js +120 -111
- package/dist/shell-native/actionSheet.d.ts +7 -0
- package/dist/shell-native/actionSheet.d.ts.map +1 -0
- package/dist/shell-native/actionSheet.js +26 -0
- package/dist/shell-native/app-lifecycle.d.ts +4 -0
- package/dist/shell-native/app-lifecycle.d.ts.map +1 -0
- package/dist/shell-native/app-lifecycle.js +12 -0
- package/dist/shell-native/auth-navigation.d.ts +4 -0
- package/dist/shell-native/auth-navigation.d.ts.map +1 -0
- package/dist/shell-native/auth-navigation.js +95 -0
- package/dist/shell-native/back-button.d.ts +8 -0
- package/dist/shell-native/back-button.d.ts.map +1 -0
- package/dist/shell-native/back-button.js +49 -0
- package/dist/shell-native/boot.d.ts +10 -0
- package/dist/shell-native/boot.d.ts.map +1 -0
- package/dist/shell-native/boot.js +65 -0
- package/dist/shell-native/bridge.d.ts +7 -0
- package/dist/shell-native/bridge.d.ts.map +1 -0
- package/dist/shell-native/bridge.js +30 -0
- package/dist/shell-native/browser.d.ts +12 -0
- package/dist/shell-native/browser.d.ts.map +1 -0
- package/dist/shell-native/browser.js +45 -0
- package/dist/shell-native/capacitor-config.d.ts +21 -0
- package/dist/shell-native/capacitor-config.d.ts.map +1 -0
- package/dist/shell-native/capacitor-config.js +102 -0
- package/dist/shell-native/clipboard.d.ts +3 -0
- package/dist/shell-native/clipboard.d.ts.map +1 -0
- package/dist/shell-native/clipboard.js +26 -0
- package/dist/shell-native/deep-link.d.ts +19 -0
- package/dist/shell-native/deep-link.d.ts.map +1 -0
- package/dist/shell-native/deep-link.js +53 -0
- package/dist/shell-native/desktop-bridge.d.ts +14 -0
- package/dist/shell-native/desktop-bridge.d.ts.map +1 -0
- package/dist/shell-native/desktop-bridge.js +17 -0
- package/dist/shell-native/device.d.ts +4 -0
- package/dist/shell-native/device.d.ts.map +1 -0
- package/dist/shell-native/device.js +27 -0
- package/dist/shell-native/dialog.d.ts +4 -0
- package/dist/shell-native/dialog.d.ts.map +1 -0
- package/dist/shell-native/dialog.js +13 -0
- package/dist/shell-native/feedback.d.ts +6 -0
- package/dist/shell-native/feedback.d.ts.map +1 -0
- package/dist/shell-native/feedback.js +29 -0
- package/dist/shell-native/index.d.ts +54 -0
- package/dist/shell-native/index.d.ts.map +1 -0
- package/dist/shell-native/keyboard.d.ts +15 -0
- package/dist/shell-native/keyboard.d.ts.map +1 -0
- package/dist/shell-native/keyboard.js +42 -0
- package/dist/shell-native/network.d.ts +9 -0
- package/dist/shell-native/network.d.ts.map +1 -0
- package/dist/shell-native/network.js +40 -0
- package/dist/shell-native/ota.d.ts +3 -0
- package/dist/shell-native/ota.d.ts.map +1 -0
- package/dist/shell-native/ota.js +21 -0
- package/dist/shell-native/platform.d.ts +21 -0
- package/dist/shell-native/platform.d.ts.map +1 -0
- package/dist/shell-native/platform.js +51 -0
- package/dist/shell-native/preview.d.ts +18 -0
- package/dist/shell-native/preview.d.ts.map +1 -0
- package/dist/shell-native/preview.js +124 -0
- package/dist/shell-native/push.d.ts +14 -0
- package/dist/shell-native/push.d.ts.map +1 -0
- package/dist/shell-native/push.js +62 -0
- package/dist/shell-native/pwa.d.ts +14 -0
- package/dist/shell-native/pwa.d.ts.map +1 -0
- package/dist/shell-native/pwa.js +49 -0
- package/dist/shell-native/service-worker.d.ts +5 -0
- package/dist/shell-native/service-worker.d.ts.map +1 -0
- package/dist/shell-native/service-worker.js +144 -0
- package/dist/shell-native/share.d.ts +4 -0
- package/dist/shell-native/share.d.ts.map +1 -0
- package/dist/shell-native/share.js +19 -0
- package/dist/shell-native/splash.d.ts +16 -0
- package/dist/shell-native/splash.d.ts.map +1 -0
- package/dist/shell-native/splash.js +25 -0
- package/dist/shell-native/system-bars.d.ts +24 -0
- package/dist/shell-native/system-bars.d.ts.map +1 -0
- package/dist/shell-native/system-bars.js +49 -0
- package/dist/shell-native/toast.d.ts +4 -0
- package/dist/shell-native/toast.d.ts.map +1 -0
- package/dist/shell-native/toast.js +16 -0
- package/dist/shell-native/types.d.ts +292 -0
- package/dist/shell-native/types.d.ts.map +1 -0
- package/dist/shell-native/web-manifest.d.ts +36 -0
- package/dist/shell-native/web-manifest.d.ts.map +1 -0
- package/dist/shell-native/web-manifest.js +55 -0
- package/dist/shell-native.d.ts +2 -0
- package/dist/shell-native.js +29 -0
- package/dist/ui/action-sheet.d.ts +29 -0
- package/dist/ui/action-sheet.d.ts.map +1 -0
- package/dist/ui/action-sheet.js +53 -0
- package/dist/ui/badge.d.ts +1 -1
- package/dist/ui/button.d.ts +1 -1
- package/dist/ui/index.d.ts +6 -0
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/native-welcome.d.ts +61 -0
- package/dist/ui/native-welcome.d.ts.map +1 -0
- package/dist/ui/native-welcome.js +152 -0
- package/dist/ui/offline-banner.d.ts +22 -0
- package/dist/ui/offline-banner.d.ts.map +1 -0
- package/dist/ui/offline-banner.js +34 -0
- package/dist/ui/pull-to-refresh.d.ts +29 -0
- package/dist/ui/pull-to-refresh.d.ts.map +1 -0
- package/dist/ui/pull-to-refresh.js +44 -0
- package/dist/ui/pwa-update-toast.d.ts +34 -0
- package/dist/ui/pwa-update-toast.d.ts.map +1 -0
- package/dist/ui/pwa-update-toast.js +43 -0
- package/dist/ui/select.d.ts +38 -0
- package/dist/ui/select.d.ts.map +1 -1
- package/dist/ui/select.js +162 -61
- package/dist/ui.js +40 -35
- package/package.json +93 -4
- package/src/shared/styles/app-shell.css +3 -0
- package/src/shared/styles/native.css +577 -0
- package/dist/node_modules/@capacitor/core/dist/index.js +0 -268
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeaderBar.d.ts","sourceRoot":"","sources":["../../src/chrome/HeaderBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,oBAAoB;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAEhB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qGAAqG;IACrG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,kGAAkG;IAClG,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAElC,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,yBAAyB;IACzB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE7B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,wBAAwB;IACxB,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAE7B,iDAAiD;IACjD,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,yDAAyD;IACzD,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAE7B,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAE9B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,uCAAuC;IACvC,wBAAwB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEtC,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"HeaderBar.d.ts","sourceRoot":"","sources":["../../src/chrome/HeaderBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,oBAAoB;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAEhB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qGAAqG;IACrG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,kGAAkG;IAClG,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAElC,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,yBAAyB;IACzB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE7B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,wBAAwB;IACxB,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAE7B,iDAAiD;IACjD,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,yDAAyD;IACzD,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAE7B,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAE9B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,uCAAuC;IACvC,wBAAwB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEtC,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAqNxC,CAAC"}
|
package/dist/chrome/HeaderBar.js
CHANGED
|
@@ -4,8 +4,10 @@ import { HeaderThemeSwitcher as t } from "./HeaderThemeSwitcher.js";
|
|
|
4
4
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
5
5
|
//#region src/chrome/HeaderBar.tsx
|
|
6
6
|
var i = ({ logo: i, appName: a, onLogoClick: o, onMenuToggle: s, onSearchClick: c, searchPlaceholder: l = "Search...", searchShortcut: u = "⌘K", unreadNotifications: d = 0, onNotificationsClick: f, notificationCenter: p, colorMode: m = "light", onThemeToggle: h, user: g, onUserMenuClick: _, actions: v, contextSwitcher: y, productSwitcher: b, languageSwitcher: x, geographySwitcher: S, profileSwitcher: C, onKeyboardShortcutsClick: w, mobileOptimized: T = !0 }) => /* @__PURE__ */ r("header", {
|
|
7
|
+
"data-desktop-drag-region": "",
|
|
7
8
|
className: "relative z-[100] h-14 bg-[var(--color-surface-glass)] backdrop-blur-[var(--blur-glass)] border-b border-[var(--color-border-glass)] flex items-center px-3 md:px-card-padding justify-between",
|
|
8
9
|
children: [/* @__PURE__ */ r("div", {
|
|
10
|
+
"data-no-drag": "",
|
|
9
11
|
className: "flex items-center gap-2 md:gap-control-gap",
|
|
10
12
|
children: [s && /* @__PURE__ */ n("button", {
|
|
11
13
|
type: "button",
|
|
@@ -39,6 +41,7 @@ var i = ({ logo: i, appName: a, onLogoClick: o, onMenuToggle: s, onSearchClick:
|
|
|
39
41
|
}) : i
|
|
40
42
|
})]
|
|
41
43
|
}), /* @__PURE__ */ r("div", {
|
|
44
|
+
"data-no-drag": "",
|
|
42
45
|
className: "flex items-center gap-1 md:gap-control-gap",
|
|
43
46
|
children: [
|
|
44
47
|
y,
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { MobileActionItem } from './HeaderBar';
|
|
2
|
+
export interface MobileTabBarProps {
|
|
3
|
+
/** Product name — used for the tab bar's accessible label. */
|
|
4
|
+
appName: string;
|
|
5
|
+
/** Nav group ordering for the More sheet (same as ProductSideNav). */
|
|
6
|
+
groupOrder?: string[];
|
|
7
|
+
/** Nav group display labels for the More sheet (same as ProductSideNav). */
|
|
8
|
+
groupLabels?: Record<string, string>;
|
|
9
|
+
/** Number of tabs shown before the "More" tab. Default 4. */
|
|
10
|
+
maxTabs?: number;
|
|
11
|
+
/** Label for the "More" tab (defaults to the localized `nav.more`). */
|
|
12
|
+
moreLabel?: string;
|
|
13
|
+
/** Mobile quick actions, listed at the end of the More sheet. */
|
|
14
|
+
mobileActions?: MobileActionItem[];
|
|
15
|
+
/**
|
|
16
|
+
* Hide the bar while the on-screen keyboard is up (`body.keyboard-open`).
|
|
17
|
+
* Default true. The CSS rule does the hiding; passing false opts this
|
|
18
|
+
* instance out via `data-keyboard-keep`.
|
|
19
|
+
*/
|
|
20
|
+
hideWhenKeyboardOpen?: boolean;
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare function MobileTabBar({ appName, groupOrder, groupLabels, maxTabs, moreLabel, mobileActions, hideWhenKeyboardOpen, className, }: MobileTabBarProps): import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
export { useMobileTabBarVisible } from './mobileTabBar/useMobileTabBarVisible';
|
|
25
|
+
export { selectMobileTabs } from './mobileTabBar/selectTabs';
|
|
26
|
+
//# sourceMappingURL=MobileTabBar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MobileTabBar.d.ts","sourceRoot":"","sources":["../../src/chrome/MobileTabBar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAaH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAsBpD,MAAM,WAAW,iBAAiB;IAChC,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA4CD,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,UAAe,EACf,WAAgB,EAChB,OAAW,EACX,SAAS,EACT,aAAa,EACb,oBAA2B,EAC3B,SAAS,GACV,EAAE,iBAAiB,2CA+NnB;AA0CD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import { cn as e } from "../lib/utils.js";
|
|
2
|
+
import { BottomSheet as t, BottomSheetContent as n, BottomSheetHeader as r, BottomSheetTitle as i } from "../ui/bottom-sheet.js";
|
|
3
|
+
import { getNativeBridge as a } from "../shared/native/bridge.js";
|
|
4
|
+
import { appendContextToPath as o, useCurrentContextSearchParams as s } from "../shared/hooks/useCurrentContextSearchParams.js";
|
|
5
|
+
import { useShellLabel as c } from "../shared/providers/shell/useShellLabel.js";
|
|
6
|
+
import { isItemOrChildActive as l } from "./sideNavigation/helpers.js";
|
|
7
|
+
import "./sideNavigation/navVisibility.js";
|
|
8
|
+
import { useVisibleNavItems as u } from "./mobileTabBar/useVisibleNavItems.js";
|
|
9
|
+
import { resolveTabPath as d, selectMobileTabs as f } from "./mobileTabBar/selectTabs.js";
|
|
10
|
+
import "./mobileTabBar/useMobileTabBarVisible.js";
|
|
11
|
+
import { useCallback as p, useEffect as m, useLayoutEffect as h, useMemo as g, useRef as _, useState as v } from "react";
|
|
12
|
+
import { MoreHorizontal as y } from "lucide-react";
|
|
13
|
+
import { Fragment as b, jsx as x, jsxs as S } from "react/jsx-runtime";
|
|
14
|
+
import { useLocation as C, useNavigate as w } from "react-router";
|
|
15
|
+
//#region src/chrome/MobileTabBar.tsx
|
|
16
|
+
var T = "--mobile-tabbar-height";
|
|
17
|
+
function E() {
|
|
18
|
+
a()?.selection?.();
|
|
19
|
+
}
|
|
20
|
+
function D(e, t, n) {
|
|
21
|
+
let r = /* @__PURE__ */ new Map();
|
|
22
|
+
for (let t of e) {
|
|
23
|
+
if (t.id.startsWith("__nav_more__:") && t.children) {
|
|
24
|
+
for (let e of t.children) {
|
|
25
|
+
let n = e.group ?? t.group ?? "";
|
|
26
|
+
r.set(n, [...r.get(n) ?? [], e]);
|
|
27
|
+
}
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
let e = t.group ?? "";
|
|
31
|
+
r.set(e, [...r.get(e) ?? [], t]);
|
|
32
|
+
}
|
|
33
|
+
let i = [];
|
|
34
|
+
for (let e of t) r.has(e) && i.push(e);
|
|
35
|
+
for (let e of r.keys()) i.includes(e) || i.push(e);
|
|
36
|
+
return i.map((e) => ({
|
|
37
|
+
key: e,
|
|
38
|
+
label: e ? n[e] ?? e : null,
|
|
39
|
+
items: r.get(e) ?? []
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4, moreLabel: M, mobileActions: N, hideWhenKeyboardOpen: P = !0, className: F }) {
|
|
43
|
+
let I = c(), L = M ?? I("nav.more", "More"), R = w(), z = C(), B = s(), { items: V } = u(), [H, U] = v(!1), W = _(null), { tabs: G, more: K, hasMore: q } = g(() => f(V, j), [V, j]), J = g(() => D(K, O, A), [
|
|
44
|
+
K,
|
|
45
|
+
O,
|
|
46
|
+
A
|
|
47
|
+
]), Y = !!N && N.length > 0, X = q || Y;
|
|
48
|
+
h(() => {
|
|
49
|
+
let e = W.current;
|
|
50
|
+
if (!e || typeof window > "u") return;
|
|
51
|
+
let t = document.documentElement, n = () => t.style.setProperty(T, `${e.offsetHeight}px`);
|
|
52
|
+
n();
|
|
53
|
+
let r = typeof ResizeObserver < "u" ? new ResizeObserver(n) : null;
|
|
54
|
+
return r?.observe(e), () => {
|
|
55
|
+
r?.disconnect(), t.style.removeProperty(T);
|
|
56
|
+
};
|
|
57
|
+
}, []), m(() => {
|
|
58
|
+
U(!1);
|
|
59
|
+
}, [z.pathname]);
|
|
60
|
+
let Z = p((e) => {
|
|
61
|
+
E(), R(o(e, B));
|
|
62
|
+
}, [R, B]), Q = g(() => !!q && K.some((e) => l(e, z.pathname)), [
|
|
63
|
+
q,
|
|
64
|
+
K,
|
|
65
|
+
z.pathname
|
|
66
|
+
]);
|
|
67
|
+
return /* @__PURE__ */ S(b, { children: [/* @__PURE__ */ S("nav", {
|
|
68
|
+
ref: W,
|
|
69
|
+
role: "tablist",
|
|
70
|
+
"aria-label": I("nav.primaryNavigation", `${a} navigation`),
|
|
71
|
+
"data-mobile-tabbar": "",
|
|
72
|
+
"data-shell-chrome": "",
|
|
73
|
+
"data-keyboard-keep": P ? void 0 : "",
|
|
74
|
+
className: e("fixed inset-x-0 bottom-0 z-[60] flex items-stretch", "bg-bg-surface text-text-primary", F),
|
|
75
|
+
children: [G.map((t) => {
|
|
76
|
+
let n = l(t, z.pathname);
|
|
77
|
+
return /* @__PURE__ */ S("button", {
|
|
78
|
+
type: "button",
|
|
79
|
+
role: "tab",
|
|
80
|
+
"aria-selected": n,
|
|
81
|
+
"aria-label": t.label,
|
|
82
|
+
"data-active": n ? "" : void 0,
|
|
83
|
+
"data-mobile-tab": t.id,
|
|
84
|
+
className: e("mobile-tab relative flex min-w-0 flex-1 flex-col items-center justify-center gap-0.5", "text-text-muted transition-colors duration-150", n && "text-text-link"),
|
|
85
|
+
onClick: () => {
|
|
86
|
+
n && !t.children?.length || Z(d(t));
|
|
87
|
+
},
|
|
88
|
+
children: [/* @__PURE__ */ S("span", {
|
|
89
|
+
className: "mobile-tab__icon relative inline-flex items-center justify-center",
|
|
90
|
+
"aria-hidden": "true",
|
|
91
|
+
children: [t.icon, t.badge ? /* @__PURE__ */ x("span", {
|
|
92
|
+
className: "absolute -top-1 -right-2 min-w-4 rounded-full bg-status-error-bg px-1 text-[10px] font-semibold leading-4 text-status-error-text",
|
|
93
|
+
children: t.badge > 99 ? "99+" : t.badge
|
|
94
|
+
}) : null]
|
|
95
|
+
}), /* @__PURE__ */ x("span", {
|
|
96
|
+
className: "mobile-tab__label max-w-full truncate",
|
|
97
|
+
children: t.label
|
|
98
|
+
})]
|
|
99
|
+
}, t.id);
|
|
100
|
+
}), X ? /* @__PURE__ */ S("button", {
|
|
101
|
+
type: "button",
|
|
102
|
+
role: "tab",
|
|
103
|
+
"aria-selected": Q,
|
|
104
|
+
"aria-haspopup": "dialog",
|
|
105
|
+
"aria-expanded": H,
|
|
106
|
+
"aria-label": L,
|
|
107
|
+
"data-active": Q ? "" : void 0,
|
|
108
|
+
"data-mobile-tab": "__more",
|
|
109
|
+
className: e("mobile-tab relative flex min-w-0 flex-1 flex-col items-center justify-center gap-0.5", "text-text-muted transition-colors duration-150", Q && "text-text-link"),
|
|
110
|
+
onClick: () => {
|
|
111
|
+
E(), U(!0);
|
|
112
|
+
},
|
|
113
|
+
children: [/* @__PURE__ */ x("span", {
|
|
114
|
+
className: "mobile-tab__icon inline-flex items-center justify-center",
|
|
115
|
+
"aria-hidden": "true",
|
|
116
|
+
children: /* @__PURE__ */ x(y, {})
|
|
117
|
+
}), /* @__PURE__ */ x("span", {
|
|
118
|
+
className: "mobile-tab__label max-w-full truncate",
|
|
119
|
+
children: L
|
|
120
|
+
})]
|
|
121
|
+
}) : null]
|
|
122
|
+
}), X ? /* @__PURE__ */ x(t, {
|
|
123
|
+
open: H,
|
|
124
|
+
onOpenChange: U,
|
|
125
|
+
children: /* @__PURE__ */ S(n, {
|
|
126
|
+
"aria-label": L,
|
|
127
|
+
"data-swipe-ignore": "",
|
|
128
|
+
children: [/* @__PURE__ */ x(r, { children: /* @__PURE__ */ x(i, { children: L }) }), /* @__PURE__ */ S("div", {
|
|
129
|
+
className: "flex flex-col gap-4 pb-2",
|
|
130
|
+
"data-mobile-tabbar-more": "",
|
|
131
|
+
children: [J.map((e) => /* @__PURE__ */ S("section", {
|
|
132
|
+
"aria-label": e.label ?? void 0,
|
|
133
|
+
children: [e.label ? /* @__PURE__ */ x("p", {
|
|
134
|
+
className: "mb-1 px-1 text-[11px] font-medium uppercase tracking-wider text-text-muted",
|
|
135
|
+
children: e.label
|
|
136
|
+
}) : null, /* @__PURE__ */ x("ul", {
|
|
137
|
+
className: "flex flex-col",
|
|
138
|
+
children: e.items.map((e) => {
|
|
139
|
+
let t = l(e, z.pathname);
|
|
140
|
+
return /* @__PURE__ */ x("li", { children: /* @__PURE__ */ x(k, {
|
|
141
|
+
icon: e.icon,
|
|
142
|
+
label: e.label,
|
|
143
|
+
badge: e.badge,
|
|
144
|
+
active: t,
|
|
145
|
+
onSelect: () => Z(d(e))
|
|
146
|
+
}) }, e.id);
|
|
147
|
+
})
|
|
148
|
+
})]
|
|
149
|
+
}, e.key || "__ungrouped")), Y ? /* @__PURE__ */ S("section", {
|
|
150
|
+
"aria-label": I("appShell.quickActions", "Quick Actions"),
|
|
151
|
+
children: [/* @__PURE__ */ x("p", {
|
|
152
|
+
className: "mb-1 px-1 text-[11px] font-medium uppercase tracking-wider text-text-muted",
|
|
153
|
+
children: I("appShell.quickActions", "Quick Actions")
|
|
154
|
+
}), /* @__PURE__ */ x("ul", {
|
|
155
|
+
className: "flex flex-col",
|
|
156
|
+
children: N?.map((e) => /* @__PURE__ */ x("li", { children: /* @__PURE__ */ x(k, {
|
|
157
|
+
icon: e.icon,
|
|
158
|
+
label: e.label,
|
|
159
|
+
active: !!e.isToggle && !!e.isActive,
|
|
160
|
+
onSelect: () => {
|
|
161
|
+
E(), e.onClick(), U(!1);
|
|
162
|
+
}
|
|
163
|
+
}) }, e.id))
|
|
164
|
+
})]
|
|
165
|
+
}) : null]
|
|
166
|
+
})]
|
|
167
|
+
})
|
|
168
|
+
}) : null] });
|
|
169
|
+
}
|
|
170
|
+
function k({ icon: t, label: n, badge: r, active: i, onSelect: a }) {
|
|
171
|
+
return /* @__PURE__ */ S("button", {
|
|
172
|
+
type: "button",
|
|
173
|
+
onClick: a,
|
|
174
|
+
"aria-current": i ? "page" : void 0,
|
|
175
|
+
className: e("flex w-full min-h-11 items-center gap-3 rounded-button px-3 py-2 text-left text-body-sm", "transition-colors duration-150", i ? "bg-[var(--color-accent-soft)] text-text-primary font-medium" : "text-text-secondary hover:bg-bg-sunken hover:text-text-primary"),
|
|
176
|
+
children: [
|
|
177
|
+
t ? /* @__PURE__ */ x("span", {
|
|
178
|
+
className: "inline-flex size-5 shrink-0 items-center justify-center",
|
|
179
|
+
"aria-hidden": "true",
|
|
180
|
+
children: t
|
|
181
|
+
}) : null,
|
|
182
|
+
/* @__PURE__ */ x("span", {
|
|
183
|
+
className: "min-w-0 flex-1 truncate",
|
|
184
|
+
children: n
|
|
185
|
+
}),
|
|
186
|
+
r ? /* @__PURE__ */ x("span", {
|
|
187
|
+
className: "rounded-full bg-status-error-bg px-1.5 text-[10px] font-semibold leading-4 text-status-error-text",
|
|
188
|
+
children: r > 99 ? "99+" : r
|
|
189
|
+
}) : null
|
|
190
|
+
]
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
//#endregion
|
|
194
|
+
export { O as MobileTabBar };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface NativePageTransitionProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
/** Enable transitions. Default: `isNative()`. */
|
|
5
|
+
enabled?: boolean;
|
|
6
|
+
/** Override the animation duration (ms). Default: CSS (280 iOS / 210 Android). */
|
|
7
|
+
durationMs?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare function NativePageTransition({ children, enabled, durationMs, }: NativePageTransitionProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=NativePageTransition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativePageTransition.d.ts","sourceRoot":"","sources":["../../src/chrome/NativePageTransition.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAKnE,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,SAAS,CAAC;IACpB,iDAAiD;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,OAAO,EACP,UAAU,GACX,EAAE,yBAAyB,2CA4C3B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { isNative as e } from "../shared/native/platform.js";
|
|
2
|
+
import { consumeSwipeCommitted as t } from "./swipe/swipeState.js";
|
|
3
|
+
import { useRef as n } from "react";
|
|
4
|
+
import { Fragment as r, jsx as i } from "react/jsx-runtime";
|
|
5
|
+
import { useLocation as a, useNavigationType as o } from "react-router";
|
|
6
|
+
//#region src/chrome/NativePageTransition.tsx
|
|
7
|
+
function s({ children: s, enabled: c, durationMs: l }) {
|
|
8
|
+
let u = a(), d = o(), f = c ?? e(), p = n(null), m = n("none");
|
|
9
|
+
p.current !== u.key && (p.current = u.key, f ? t() ? m.current = "none" : d === "PUSH" ? m.current = "enter-forward" : d === "POP" ? m.current = "enter-back" : m.current = "none" : m.current = "none");
|
|
10
|
+
let h = m.current;
|
|
11
|
+
return f ? /* @__PURE__ */ i("div", {
|
|
12
|
+
"data-page-transition": h,
|
|
13
|
+
className: "relative min-h-full",
|
|
14
|
+
style: l === void 0 ? void 0 : { "--page-transition-duration": `${l}ms` },
|
|
15
|
+
children: s
|
|
16
|
+
}, u.key) : /* @__PURE__ */ i(r, { children: s });
|
|
17
|
+
}
|
|
18
|
+
//#endregion
|
|
19
|
+
export { s as NativePageTransition };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface NativeTopBarProps {
|
|
3
|
+
/** Centered (iOS) / left-aligned (Android) title. */
|
|
4
|
+
title?: ReactNode;
|
|
5
|
+
/** Text next to the back chevron (iOS style). Defaults to localized "Back". */
|
|
6
|
+
backLabel?: string;
|
|
7
|
+
/** Back handler. Default: `navigate(-1)`. */
|
|
8
|
+
onBack?: () => void;
|
|
9
|
+
/** Trailing action area (icon buttons). */
|
|
10
|
+
rightActions?: ReactNode;
|
|
11
|
+
/** Leading slot rendered INSTEAD of the back button when back is hidden. */
|
|
12
|
+
leftSlot?: ReactNode;
|
|
13
|
+
/**
|
|
14
|
+
* Show the back button. Default: auto — shown when the router history has
|
|
15
|
+
* somewhere to go back to (`window.history.state?.idx > 0`).
|
|
16
|
+
*/
|
|
17
|
+
showBack?: boolean;
|
|
18
|
+
className?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function NativeTopBar({ title, backLabel, onBack, rightActions, leftSlot, showBack, className, }: NativeTopBarProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=NativeTopBar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeTopBar.d.ts","sourceRoot":"","sources":["../../src/chrome/NativeTopBar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAqC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAO1E,MAAM,WAAW,iBAAiB;IAChC,qDAAqD;IACrD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAeD,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,SAAS,EACT,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,SAAS,GACV,EAAE,iBAAiB,2CA8EnB"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { cn as e } from "../lib/utils.js";
|
|
2
|
+
import { nativeImpact as t } from "../shared/native/consumers.js";
|
|
3
|
+
import { useShellLabel as n } from "../shared/providers/shell/useShellLabel.js";
|
|
4
|
+
import { useLayoutEffect as r, useRef as i, useState as a } from "react";
|
|
5
|
+
import { ChevronLeft as o } from "lucide-react";
|
|
6
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
7
|
+
import { useNavigate as l } from "react-router";
|
|
8
|
+
//#region src/chrome/NativeTopBar.tsx
|
|
9
|
+
var u = "--native-topbar-height";
|
|
10
|
+
function d() {
|
|
11
|
+
if (typeof window > "u") return !1;
|
|
12
|
+
let e = window.history.state;
|
|
13
|
+
if (e && typeof e == "object" && "idx" in e) {
|
|
14
|
+
let t = e.idx;
|
|
15
|
+
return typeof t == "number" && t > 0;
|
|
16
|
+
}
|
|
17
|
+
return !1;
|
|
18
|
+
}
|
|
19
|
+
function f({ title: f, backLabel: p, onBack: m, rightActions: h, leftSlot: g, showBack: _, className: v }) {
|
|
20
|
+
let y = n(), b = l(), x = i(null), [S] = a(d), C = _ ?? S, w = p ?? y("nav.back", "Back");
|
|
21
|
+
return r(() => {
|
|
22
|
+
let e = x.current;
|
|
23
|
+
if (!e || typeof window > "u") return;
|
|
24
|
+
let t = document.documentElement, n = () => t.style.setProperty(u, `${e.offsetHeight}px`);
|
|
25
|
+
n();
|
|
26
|
+
let r = typeof ResizeObserver < "u" ? new ResizeObserver(n) : null;
|
|
27
|
+
return r?.observe(e), () => {
|
|
28
|
+
r?.disconnect(), t.style.removeProperty(u);
|
|
29
|
+
};
|
|
30
|
+
}, []), /* @__PURE__ */ s("header", {
|
|
31
|
+
ref: x,
|
|
32
|
+
"data-native-topbar": "",
|
|
33
|
+
"data-shell-chrome": "",
|
|
34
|
+
className: e("relative z-[55] w-full bg-bg-surface text-text-primary", v),
|
|
35
|
+
children: /* @__PURE__ */ c("div", {
|
|
36
|
+
className: "native-topbar__row relative flex w-full items-center",
|
|
37
|
+
children: [
|
|
38
|
+
/* @__PURE__ */ s("div", {
|
|
39
|
+
className: "native-topbar__lead flex min-w-0 flex-1 items-center justify-start",
|
|
40
|
+
children: C ? /* @__PURE__ */ c("button", {
|
|
41
|
+
type: "button",
|
|
42
|
+
onClick: () => {
|
|
43
|
+
t("light"), m ? m() : b(-1);
|
|
44
|
+
},
|
|
45
|
+
"aria-label": w,
|
|
46
|
+
className: "native-topbar__back flex min-h-11 items-center gap-0.5 pr-2 text-text-link",
|
|
47
|
+
children: [/* @__PURE__ */ s(o, {
|
|
48
|
+
className: "size-6 shrink-0",
|
|
49
|
+
"aria-hidden": "true"
|
|
50
|
+
}), /* @__PURE__ */ s("span", {
|
|
51
|
+
className: "native-topbar__backlabel truncate text-body-md",
|
|
52
|
+
children: w
|
|
53
|
+
})]
|
|
54
|
+
}) : g
|
|
55
|
+
}),
|
|
56
|
+
/* @__PURE__ */ s("div", {
|
|
57
|
+
className: "native-topbar__title pointer-events-none absolute inset-x-0 mx-auto flex max-w-[60%] items-center justify-center",
|
|
58
|
+
children: /* @__PURE__ */ s("span", {
|
|
59
|
+
className: "truncate text-body-md font-semibold text-text-primary",
|
|
60
|
+
children: f
|
|
61
|
+
})
|
|
62
|
+
}),
|
|
63
|
+
/* @__PURE__ */ s("div", {
|
|
64
|
+
className: "native-topbar__actions flex min-w-0 flex-1 items-center justify-end gap-1",
|
|
65
|
+
children: h
|
|
66
|
+
})
|
|
67
|
+
]
|
|
68
|
+
})
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
//#endregion
|
|
72
|
+
export { f as NativeTopBar };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationCenter.d.ts","sourceRoot":"","sources":["../../src/chrome/NotificationCenter.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"NotificationCenter.d.ts","sourceRoot":"","sources":["../../src/chrome/NotificationCenter.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAiBnD,MAAM,WAAW,uBAAuB;IACtC,2CAA2C;IAC3C,MAAM,EAAE,YAAY,CAAC;IACrB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,uBAAuB,CAsG1D,CAAC"}
|
|
@@ -1,75 +1,80 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
1
|
+
import { desktopSetBadgeCount as e } from "../shared/native/desktop.js";
|
|
2
|
+
import { BellButton as t } from "./notificationCenter/BellButton.js";
|
|
3
|
+
import { sortNotifications as n } from "./notificationCenter/constants.js";
|
|
4
|
+
import { NotificationFilters as r } from "./notificationCenter/NotificationFilters.js";
|
|
5
|
+
import { NotificationFooter as i } from "./notificationCenter/NotificationFooter.js";
|
|
6
|
+
import { NotificationHeader as a } from "./notificationCenter/NotificationHeader.js";
|
|
7
|
+
import { NotificationList as o } from "./notificationCenter/NotificationList.js";
|
|
8
|
+
import { NotificationPanel as s } from "./notificationCenter/NotificationPanel.js";
|
|
9
|
+
import { useNotificationCenter as c } from "./notificationCenter/useNotificationCenter.js";
|
|
10
|
+
import { useEscapeClose as l, useOutsideClickClose as u, usePanelChrome as d } from "./notificationCenter/usePanelChrome.js";
|
|
11
|
+
import { useCallback as f, useEffect as p, useRef as m, useState as h } from "react";
|
|
12
|
+
import { jsx as g, jsxs as _ } from "react/jsx-runtime";
|
|
12
13
|
//#region src/chrome/NotificationCenter.tsx
|
|
13
|
-
var
|
|
14
|
-
let
|
|
15
|
-
|
|
16
|
-
let { notifications:
|
|
17
|
-
client:
|
|
18
|
-
isOpen:
|
|
19
|
-
lazy:
|
|
20
|
-
filterTab:
|
|
21
|
-
typeFilter:
|
|
22
|
-
appFilter:
|
|
23
|
-
})
|
|
14
|
+
var v = ({ client: v, onViewAll: y, compact: b = !1, pollInterval: x = 3e4, lazy: S = !1 }) => {
|
|
15
|
+
let C = m(null), [w, T] = h(!1), [E, D] = h("all"), [O, k] = h("ALL"), [A, j] = h("ALL"), [M, N] = h("newest"), P = f(() => T(!1), []), F = f(() => T((e) => !e), []), { isMobile: I } = d();
|
|
16
|
+
u(w, I, C, P), l(w, P);
|
|
17
|
+
let { notifications: L, unreadCount: R, countsByApp: z, totalCount: B, loading: V, error: H, fetchNotifications: U, handleMarkAsRead: W, handleMarkAllAsRead: G, handleDelete: K } = c({
|
|
18
|
+
client: v,
|
|
19
|
+
isOpen: w,
|
|
20
|
+
lazy: S,
|
|
21
|
+
filterTab: E,
|
|
22
|
+
typeFilter: O,
|
|
23
|
+
appFilter: A
|
|
24
|
+
});
|
|
25
|
+
p(() => {
|
|
26
|
+
e(R);
|
|
27
|
+
}, [R]);
|
|
28
|
+
let q = f((e) => {
|
|
24
29
|
window.open(e, "_blank", "noopener,noreferrer");
|
|
25
|
-
}, []),
|
|
26
|
-
|
|
27
|
-
}, [
|
|
28
|
-
return /* @__PURE__ */
|
|
29
|
-
ref:
|
|
30
|
+
}, []), J = f(() => {
|
|
31
|
+
T(!1), y?.();
|
|
32
|
+
}, [y]), Y = n(L, M), X = Object.entries(z).filter(([e]) => e && e !== "null").sort((e, t) => t[1] - e[1]);
|
|
33
|
+
return /* @__PURE__ */ _("div", {
|
|
34
|
+
ref: C,
|
|
30
35
|
className: "relative",
|
|
31
|
-
children: [/* @__PURE__ */
|
|
32
|
-
unreadCount:
|
|
33
|
-
isOpen:
|
|
34
|
-
onToggle:
|
|
35
|
-
}),
|
|
36
|
-
isMobile:
|
|
37
|
-
onClose:
|
|
38
|
-
children: /* @__PURE__ */
|
|
36
|
+
children: [/* @__PURE__ */ g(t, {
|
|
37
|
+
unreadCount: R,
|
|
38
|
+
isOpen: w,
|
|
39
|
+
onToggle: F
|
|
40
|
+
}), w && /* @__PURE__ */ g(s, {
|
|
41
|
+
isMobile: I,
|
|
42
|
+
onClose: P,
|
|
43
|
+
children: /* @__PURE__ */ _("div", {
|
|
39
44
|
className: "flex flex-col h-full",
|
|
40
45
|
children: [
|
|
41
|
-
/* @__PURE__ */
|
|
42
|
-
isMobile:
|
|
43
|
-
unreadCount:
|
|
44
|
-
onClose:
|
|
45
|
-
onMarkAllAsRead:
|
|
46
|
+
/* @__PURE__ */ g(a, {
|
|
47
|
+
isMobile: I,
|
|
48
|
+
unreadCount: R,
|
|
49
|
+
onClose: P,
|
|
50
|
+
onMarkAllAsRead: G
|
|
46
51
|
}),
|
|
47
|
-
/* @__PURE__ */
|
|
48
|
-
filterTab:
|
|
49
|
-
typeFilter:
|
|
50
|
-
appFilter:
|
|
51
|
-
sortBy:
|
|
52
|
-
appNames:
|
|
53
|
-
onFilterTabChange:
|
|
54
|
-
onTypeFilterChange:
|
|
55
|
-
onAppFilterChange:
|
|
56
|
-
onSortByChange:
|
|
52
|
+
/* @__PURE__ */ g(r, {
|
|
53
|
+
filterTab: E,
|
|
54
|
+
typeFilter: O,
|
|
55
|
+
appFilter: A,
|
|
56
|
+
sortBy: M,
|
|
57
|
+
appNames: X,
|
|
58
|
+
onFilterTabChange: D,
|
|
59
|
+
onTypeFilterChange: k,
|
|
60
|
+
onAppFilterChange: j,
|
|
61
|
+
onSortByChange: N
|
|
57
62
|
}),
|
|
58
|
-
/* @__PURE__ */
|
|
59
|
-
loading:
|
|
60
|
-
error:
|
|
61
|
-
notifications:
|
|
62
|
-
filterTab:
|
|
63
|
-
typeFilter:
|
|
64
|
-
appFilter:
|
|
65
|
-
onRetry:
|
|
66
|
-
onMarkAsRead:
|
|
67
|
-
onDelete:
|
|
68
|
-
onRedirect:
|
|
63
|
+
/* @__PURE__ */ g(o, {
|
|
64
|
+
loading: V,
|
|
65
|
+
error: H,
|
|
66
|
+
notifications: Y,
|
|
67
|
+
filterTab: E,
|
|
68
|
+
typeFilter: O,
|
|
69
|
+
appFilter: A,
|
|
70
|
+
onRetry: U,
|
|
71
|
+
onMarkAsRead: W,
|
|
72
|
+
onDelete: K,
|
|
73
|
+
onRedirect: q
|
|
69
74
|
}),
|
|
70
|
-
|
|
71
|
-
totalCount:
|
|
72
|
-
onViewAll:
|
|
75
|
+
Y.length > 0 && /* @__PURE__ */ g(i, {
|
|
76
|
+
totalCount: B,
|
|
77
|
+
onViewAll: y ? J : void 0
|
|
73
78
|
})
|
|
74
79
|
]
|
|
75
80
|
})
|
|
@@ -77,4 +82,4 @@ var g = ({ client: g, onViewAll: _, compact: v = !1, pollInterval: y = 3e4, lazy
|
|
|
77
82
|
});
|
|
78
83
|
};
|
|
79
84
|
//#endregion
|
|
80
|
-
export {
|
|
85
|
+
export { v as NotificationCenter };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductSideNav.d.ts","sourceRoot":"","sources":["../../src/chrome/ProductSideNav.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"ProductSideNav.d.ts","sourceRoot":"","sources":["../../src/chrome/ProductSideNav.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAapD,MAAM,WAAW,mBAAmB;IAClC,mFAAmF;IACnF,IAAI,EAAE,SAAS,CAAC;IAChB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,+BAA+B;IAC/B,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,0DAA0D;IAC1D,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,EAC7B,IAAI,EACJ,OAAO,EACP,UAAU,EACV,WAAW,EACX,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,GACd,EAAE,mBAAmB,2CA+FrB"}
|