@oxyhq/services 22.10.0 → 22.11.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/lib/commonjs/ui/components/AvatarCameraBadge.js +42 -0
- package/lib/commonjs/ui/components/AvatarCameraBadge.js.map +1 -0
- package/lib/commonjs/ui/components/OxyAccountDialogScreen.js +41 -19
- package/lib/commonjs/ui/components/OxyAccountDialogScreen.js.map +1 -1
- package/lib/commonjs/ui/components/OxyAuthChooser.js +640 -168
- package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/commonjs/ui/components/ProfileButton.js +14 -0
- package/lib/commonjs/ui/components/ProfileButton.js.map +1 -1
- package/lib/commonjs/ui/components/ProfileSummaryCard.js +3 -23
- package/lib/commonjs/ui/components/ProfileSummaryCard.js.map +1 -1
- package/lib/commonjs/ui/components/SurfaceScreen.js +41 -5
- package/lib/commonjs/ui/components/SurfaceScreen.js.map +1 -1
- package/lib/commonjs/ui/components/oxyAuthChooserStyles.js +78 -26
- package/lib/commonjs/ui/components/oxyAuthChooserStyles.js.map +1 -1
- package/lib/commonjs/ui/components/photogrid/JustifiedPhotoGrid.js +83 -23
- package/lib/commonjs/ui/components/photogrid/JustifiedPhotoGrid.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +73 -37
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/queryKeys.js +18 -1
- package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useFileQueries.js +129 -0
- package/lib/commonjs/ui/hooks/queries/useFileQueries.js.map +1 -0
- package/lib/commonjs/ui/hooks/useAvatarPicker.js +36 -48
- package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
- package/lib/commonjs/ui/hooks/useReduceMotion.js +57 -0
- package/lib/commonjs/ui/hooks/useReduceMotion.js.map +1 -0
- package/lib/commonjs/ui/hooks/useSurfaceHeader.js +1 -1
- package/lib/commonjs/ui/hooks/useSurfaceHeader.js.map +1 -1
- package/lib/commonjs/ui/navigation/accountDialogManager.js +22 -0
- package/lib/commonjs/ui/navigation/accountDialogManager.js.map +1 -1
- package/lib/commonjs/ui/navigation/bottomSheetManager.js +5 -6
- package/lib/commonjs/ui/navigation/bottomSheetManager.js.map +1 -1
- package/lib/commonjs/ui/navigation/routes.js +1 -0
- package/lib/commonjs/ui/navigation/routes.js.map +1 -1
- package/lib/commonjs/ui/navigation/surfaceNavStack.js +62 -15
- package/lib/commonjs/ui/navigation/surfaceNavStack.js.map +1 -1
- package/lib/commonjs/ui/navigation/surfaceRegistry.js +38 -17
- package/lib/commonjs/ui/navigation/surfaceRegistry.js.map +1 -1
- package/lib/commonjs/ui/navigation/surfaces.js +98 -21
- package/lib/commonjs/ui/navigation/surfaces.js.map +1 -1
- package/lib/commonjs/ui/screens/AvatarCropScreen.js +281 -279
- package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js +301 -0
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/FileManagementScreen.js +194 -431
- package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +16 -48
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/FileLibraryError.js +63 -0
- package/lib/commonjs/ui/screens/fileManagement/FileLibraryError.js.map +1 -0
- package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js +54 -41
- package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js +44 -81
- package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
- package/lib/commonjs/ui/stores/resetSessionScopedStores.js +8 -3
- package/lib/commonjs/ui/stores/resetSessionScopedStores.js.map +1 -1
- package/lib/commonjs/ui/utils/avatarUtils.js +11 -2
- package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
- package/lib/commonjs/ui/utils/fileManagement.js +0 -79
- package/lib/commonjs/ui/utils/fileManagement.js.map +1 -1
- package/lib/module/ui/components/AvatarCameraBadge.js +40 -0
- package/lib/module/ui/components/AvatarCameraBadge.js.map +1 -0
- package/lib/module/ui/components/OxyAccountDialogScreen.js +41 -19
- package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -1
- package/lib/module/ui/components/OxyAuthChooser.js +642 -171
- package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/module/ui/components/ProfileButton.js +15 -1
- package/lib/module/ui/components/ProfileButton.js.map +1 -1
- package/lib/module/ui/components/ProfileSummaryCard.js +2 -23
- package/lib/module/ui/components/ProfileSummaryCard.js.map +1 -1
- package/lib/module/ui/components/SurfaceScreen.js +43 -7
- package/lib/module/ui/components/SurfaceScreen.js.map +1 -1
- package/lib/module/ui/components/oxyAuthChooserStyles.js +78 -26
- package/lib/module/ui/components/oxyAuthChooserStyles.js.map +1 -1
- package/lib/module/ui/components/photogrid/JustifiedPhotoGrid.js +83 -25
- package/lib/module/ui/components/photogrid/JustifiedPhotoGrid.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +74 -38
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/hooks/queries/queryKeys.js +16 -0
- package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
- package/lib/module/ui/hooks/queries/useFileQueries.js +120 -0
- package/lib/module/ui/hooks/queries/useFileQueries.js.map +1 -0
- package/lib/module/ui/hooks/useAvatarPicker.js +37 -49
- package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
- package/lib/module/ui/hooks/useReduceMotion.js +53 -0
- package/lib/module/ui/hooks/useReduceMotion.js.map +1 -0
- package/lib/module/ui/hooks/useSurfaceHeader.js +1 -1
- package/lib/module/ui/hooks/useSurfaceHeader.js.map +1 -1
- package/lib/module/ui/navigation/accountDialogManager.js +20 -0
- package/lib/module/ui/navigation/accountDialogManager.js.map +1 -1
- package/lib/module/ui/navigation/bottomSheetManager.js +6 -7
- package/lib/module/ui/navigation/bottomSheetManager.js.map +1 -1
- package/lib/module/ui/navigation/routes.js +1 -0
- package/lib/module/ui/navigation/routes.js.map +1 -1
- package/lib/module/ui/navigation/surfaceNavStack.js +62 -15
- package/lib/module/ui/navigation/surfaceNavStack.js.map +1 -1
- package/lib/module/ui/navigation/surfaceRegistry.js +38 -17
- package/lib/module/ui/navigation/surfaceRegistry.js.map +1 -1
- package/lib/module/ui/navigation/surfaces.js +97 -22
- package/lib/module/ui/navigation/surfaces.js.map +1 -1
- package/lib/module/ui/screens/AvatarCropScreen.js +283 -281
- package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/module/ui/screens/ChangeAvatarScreen.js +298 -0
- package/lib/module/ui/screens/ChangeAvatarScreen.js.map +1 -0
- package/lib/module/ui/screens/FileManagementScreen.js +196 -433
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/module/ui/screens/WelcomeNewUserScreen.js +17 -49
- package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/FileLibraryError.js +59 -0
- package/lib/module/ui/screens/fileManagement/FileLibraryError.js.map +1 -0
- package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js +54 -42
- package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js +45 -81
- package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
- package/lib/module/ui/stores/resetSessionScopedStores.js +8 -3
- package/lib/module/ui/stores/resetSessionScopedStores.js.map +1 -1
- package/lib/module/ui/utils/avatarUtils.js +11 -2
- package/lib/module/ui/utils/avatarUtils.js.map +1 -1
- package/lib/module/ui/utils/fileManagement.js +0 -78
- package/lib/module/ui/utils/fileManagement.js.map +1 -1
- package/lib/typescript/commonjs/ui/components/AvatarCameraBadge.d.ts +4 -0
- package/lib/typescript/commonjs/ui/components/AvatarCameraBadge.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts +2 -1
- package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/ProfileSummaryCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts +1 -4
- package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts +71 -19
- package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/photogrid/JustifiedPhotoGrid.d.ts +10 -8
- package/lib/typescript/commonjs/ui/components/photogrid/JustifiedPhotoGrid.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts +9 -0
- package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useFileQueries.d.ts +50 -0
- package/lib/typescript/commonjs/ui/hooks/queries/useFileQueries.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts +15 -10
- package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useReduceMotion.d.ts +14 -0
- package/lib/typescript/commonjs/ui/hooks/useReduceMotion.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts +13 -0
- package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts +4 -5
- package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/routes.d.ts +1 -1
- package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts +21 -0
- package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts +73 -13
- package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts +42 -11
- package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts +18 -5
- package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ChangeAvatarScreen.d.ts +34 -0
- package/lib/typescript/commonjs/ui/screens/ChangeAvatarScreen.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/FileLibraryError.d.ts +23 -0
- package/lib/typescript/commonjs/ui/screens/fileManagement/FileLibraryError.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/fileManagement/PhotoPickerSection.d.ts +4 -0
- package/lib/typescript/commonjs/ui/screens/fileManagement/PhotoPickerSection.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.d.ts +10 -2
- package/lib/typescript/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/resetSessionScopedStores.d.ts +8 -1
- package/lib/typescript/commonjs/ui/stores/resetSessionScopedStores.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/types/navigation.d.ts +2 -0
- package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +0 -48
- package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/AvatarCameraBadge.d.ts +4 -0
- package/lib/typescript/module/ui/components/AvatarCameraBadge.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts +2 -1
- package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/ProfileButton.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/ProfileSummaryCard.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/SurfaceScreen.d.ts +1 -4
- package/lib/typescript/module/ui/components/SurfaceScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts +71 -19
- package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/photogrid/JustifiedPhotoGrid.d.ts +10 -8
- package/lib/typescript/module/ui/components/photogrid/JustifiedPhotoGrid.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts +9 -0
- package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useFileQueries.d.ts +50 -0
- package/lib/typescript/module/ui/hooks/queries/useFileQueries.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +15 -10
- package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useReduceMotion.d.ts +14 -0
- package/lib/typescript/module/ui/hooks/useReduceMotion.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts +13 -0
- package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts +4 -5
- package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/routes.d.ts +1 -1
- package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts +21 -0
- package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts +73 -13
- package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/surfaces.d.ts +42 -11
- package/lib/typescript/module/ui/navigation/surfaces.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts +18 -5
- package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ChangeAvatarScreen.d.ts +34 -0
- package/lib/typescript/module/ui/screens/ChangeAvatarScreen.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/FileLibraryError.d.ts +23 -0
- package/lib/typescript/module/ui/screens/fileManagement/FileLibraryError.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/fileManagement/PhotoPickerSection.d.ts +4 -0
- package/lib/typescript/module/ui/screens/fileManagement/PhotoPickerSection.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/hooks/useFileUploadState.d.ts +10 -2
- package/lib/typescript/module/ui/screens/fileManagement/hooks/useFileUploadState.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/resetSessionScopedStores.d.ts +8 -1
- package/lib/typescript/module/ui/stores/resetSessionScopedStores.d.ts.map +1 -1
- package/lib/typescript/module/ui/types/navigation.d.ts +2 -0
- package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/fileManagement.d.ts +0 -48
- package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
- package/package.json +8 -4
- package/src/ui/components/AvatarCameraBadge.tsx +35 -0
- package/src/ui/components/OxyAccountDialogScreen.tsx +38 -15
- package/src/ui/components/OxyAuthChooser.tsx +722 -185
- package/src/ui/components/ProfileButton.tsx +16 -1
- package/src/ui/components/ProfileSummaryCard.tsx +2 -25
- package/src/ui/components/SurfaceScreen.tsx +48 -14
- package/src/ui/components/oxyAuthChooserStyles.ts +75 -23
- package/src/ui/components/photogrid/JustifiedPhotoGrid.tsx +158 -84
- package/src/ui/components/photogrid/__tests__/chunkPhotos.test.ts +51 -0
- package/src/ui/context/OxyContext.tsx +74 -34
- package/src/ui/hooks/queries/queryKeys.ts +15 -0
- package/src/ui/hooks/queries/useFileQueries.ts +162 -0
- package/src/ui/hooks/useAvatarPicker.ts +38 -53
- package/src/ui/hooks/useReduceMotion.ts +58 -0
- package/src/ui/hooks/useSurfaceHeader.ts +2 -1
- package/src/ui/navigation/__tests__/getSurfaceConfig.test.ts +55 -7
- package/src/ui/navigation/__tests__/surfaceNavStack.test.ts +81 -0
- package/src/ui/navigation/accountDialogManager.ts +28 -0
- package/src/ui/navigation/bottomSheetManager.ts +6 -7
- package/src/ui/navigation/routes.ts +3 -1
- package/src/ui/navigation/surfaceNavStack.ts +72 -9
- package/src/ui/navigation/surfaceRegistry.ts +91 -17
- package/src/ui/navigation/surfaces.ts +108 -29
- package/src/ui/screens/AvatarCropScreen.tsx +336 -298
- package/src/ui/screens/ChangeAvatarScreen.tsx +359 -0
- package/src/ui/screens/FileManagementScreen.tsx +189 -432
- package/src/ui/screens/WelcomeNewUserScreen.tsx +18 -48
- package/src/ui/screens/fileManagement/FileLibraryError.tsx +56 -0
- package/src/ui/screens/fileManagement/PhotoPickerSection.tsx +56 -46
- package/src/ui/screens/fileManagement/hooks/useFileUploadState.ts +55 -71
- package/src/ui/stores/resetSessionScopedStores.ts +8 -3
- package/src/ui/types/navigation.ts +2 -0
- package/src/ui/utils/avatarUtils.ts +11 -2
- package/src/ui/utils/fileManagement.ts +1 -101
- package/lib/commonjs/ui/stores/fileStore.js +0 -153
- package/lib/commonjs/ui/stores/fileStore.js.map +0 -1
- package/lib/module/ui/stores/fileStore.js +0 -145
- package/lib/module/ui/stores/fileStore.js.map +0 -1
- package/lib/typescript/commonjs/ui/stores/fileStore.d.ts +0 -31
- package/lib/typescript/commonjs/ui/stores/fileStore.d.ts.map +0 -1
- package/lib/typescript/module/ui/stores/fileStore.d.ts +0 -31
- package/lib/typescript/module/ui/stores/fileStore.d.ts.map +0 -1
- package/src/ui/stores/fileStore.ts +0 -118
|
@@ -8,10 +8,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
var _expoImage = require("expo-image");
|
|
10
10
|
var _vectorIcons = require("@expo/vector-icons");
|
|
11
|
-
var _styles = require("@oxyhq/bloom/styles");
|
|
12
11
|
var Skeleton = _interopRequireWildcard(require("@oxyhq/bloom/skeleton"));
|
|
13
12
|
var _photoGridLayout = require("./photoGridLayout.js");
|
|
13
|
+
var _FileLibraryError = _interopRequireDefault(require("./FileLibraryError.js"));
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
16
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } /**
|
|
16
17
|
* Haptic feedback wrapper. `expo-haptics` is an optional dependency — when not
|
|
17
18
|
* installed (or on web), all calls degrade silently. We resolve the module
|
|
@@ -148,38 +149,35 @@ const PhotoPickerCell = /*#__PURE__*/_react.default.memo(function PhotoPickerCel
|
|
|
148
149
|
} = props;
|
|
149
150
|
const delay = Math.min(enterIndex * STAGGER_PER_CELL_MS, MAX_TOTAL_STAGGER_MS);
|
|
150
151
|
|
|
151
|
-
// Entrance fade, staggered by the cell's grid index.
|
|
152
|
+
// Entrance fade, staggered by the cell's grid index. Started from the wrapper's
|
|
153
|
+
// ref callback (fires on mount) rather than an effect. Reduce-motion pins
|
|
152
154
|
// opacity at 1 and never animates.
|
|
153
155
|
const opacity = (0, _react.useRef)(new _reactNative.Animated.Value(reduceMotion ? 1 : 0)).current;
|
|
154
|
-
(0, _react.
|
|
156
|
+
const startEntrance = (0, _react.useCallback)(node => {
|
|
157
|
+
if (!node) return; // unmount
|
|
155
158
|
if (reduceMotion) {
|
|
156
159
|
opacity.setValue(1);
|
|
157
160
|
return;
|
|
158
161
|
}
|
|
159
|
-
|
|
162
|
+
opacity.setValue(0);
|
|
163
|
+
_reactNative.Animated.timing(opacity, {
|
|
160
164
|
toValue: 1,
|
|
161
165
|
duration: ENTRANCE_DURATION_MS,
|
|
162
166
|
delay,
|
|
163
167
|
useNativeDriver: _reactNative.Platform.OS !== 'web'
|
|
164
|
-
});
|
|
165
|
-
entrance.start();
|
|
166
|
-
return () => entrance.stop();
|
|
168
|
+
}).start();
|
|
167
169
|
}, [opacity, delay, reduceMotion]);
|
|
168
170
|
|
|
169
|
-
// Selection-ring pulse: a quick scale bump
|
|
170
|
-
//
|
|
171
|
-
//
|
|
172
|
-
//
|
|
171
|
+
// Selection-ring pulse: a quick scale bump that springs back to rest. The ring
|
|
172
|
+
// renders ONLY while selected, so its own mount IS the "became selected"
|
|
173
|
+
// signal — driven from the ring's ref callback, not an effect. Reduce-motion
|
|
174
|
+
// holds the ring at rest scale.
|
|
173
175
|
const ringScale = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
|
|
174
|
-
const
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
ringScale.setValue(1);
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
182
|
-
const pulse = _reactNative.Animated.sequence([_reactNative.Animated.timing(ringScale, {
|
|
176
|
+
const startRingPulse = (0, _react.useCallback)(node => {
|
|
177
|
+
if (!node) return; // ring unmounting (deselected)
|
|
178
|
+
ringScale.setValue(1);
|
|
179
|
+
if (reduceMotion) return;
|
|
180
|
+
_reactNative.Animated.sequence([_reactNative.Animated.timing(ringScale, {
|
|
183
181
|
toValue: RING_PULSE_PEAK,
|
|
184
182
|
duration: RING_PULSE_UP_MS,
|
|
185
183
|
useNativeDriver: _reactNative.Platform.OS !== 'web'
|
|
@@ -188,10 +186,8 @@ const PhotoPickerCell = /*#__PURE__*/_react.default.memo(function PhotoPickerCel
|
|
|
188
186
|
friction: RING_SPRING_FRICTION,
|
|
189
187
|
tension: RING_SPRING_TENSION,
|
|
190
188
|
useNativeDriver: _reactNative.Platform.OS !== 'web'
|
|
191
|
-
})]);
|
|
192
|
-
|
|
193
|
-
return () => pulse.stop();
|
|
194
|
-
}, [isSelected, ringScale, reduceMotion]);
|
|
189
|
+
})]).start();
|
|
190
|
+
}, [ringScale, reduceMotion]);
|
|
195
191
|
return (
|
|
196
192
|
/*#__PURE__*/
|
|
197
193
|
// The animated wrapper carries the entrance opacity + the layout box as
|
|
@@ -199,6 +195,7 @@ const PhotoPickerCell = /*#__PURE__*/_react.default.memo(function PhotoPickerCel
|
|
|
199
195
|
// size/margins are runtime pixels className cannot express. `className`
|
|
200
196
|
// drives the static chrome below (`flex-1` fills this fixed-size box).
|
|
201
197
|
(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
|
|
198
|
+
ref: startEntrance,
|
|
202
199
|
style: {
|
|
203
200
|
width: size,
|
|
204
201
|
height: size,
|
|
@@ -233,6 +230,7 @@ const PhotoPickerCell = /*#__PURE__*/_react.default.memo(function PhotoPickerCel
|
|
|
233
230
|
accessibilityLabel: photo.filename
|
|
234
231
|
})
|
|
235
232
|
}), isSelected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
|
|
233
|
+
ref: startRingPulse,
|
|
236
234
|
pointerEvents: "none",
|
|
237
235
|
style: {
|
|
238
236
|
position: 'absolute',
|
|
@@ -275,6 +273,8 @@ const PhotoPickerView = ({
|
|
|
275
273
|
hasMore,
|
|
276
274
|
loadingMore,
|
|
277
275
|
loading,
|
|
276
|
+
loadError,
|
|
277
|
+
onRetry,
|
|
278
278
|
reduceMotion,
|
|
279
279
|
getThumbUrl,
|
|
280
280
|
primaryColor,
|
|
@@ -308,21 +308,17 @@ const PhotoPickerView = ({
|
|
|
308
308
|
setGridWidth(prev => prev === w ? prev : w);
|
|
309
309
|
}, []);
|
|
310
310
|
|
|
311
|
-
// The
|
|
312
|
-
//
|
|
313
|
-
//
|
|
314
|
-
//
|
|
315
|
-
//
|
|
316
|
-
//
|
|
317
|
-
//
|
|
318
|
-
|
|
319
|
-
// better below full height); the bottom sheet may run taller. Keep this
|
|
320
|
-
// breakpoint in sync with `SHEET_PLACEMENT` in surfaces.ts.
|
|
321
|
-
const isCenteredPanel = windowWidth >= _styles.BREAKPOINTS.md;
|
|
322
|
-
const maxPanelHeight = (0, _react.useMemo)(() => isCenteredPanel ? Math.min(Math.round(windowHeight * 0.85), 720) : Math.round(windowHeight * 0.9), [isCenteredPanel, windowHeight]);
|
|
311
|
+
// The picker FILLS its panel: the surface morphs the container UP to an
|
|
312
|
+
// explicit large target (`frameSize.heightRatio: 0.9` in `surfaceRegistry`),
|
|
313
|
+
// and this root takes that SAME 0.9-of-viewport height so the grid uses the
|
|
314
|
+
// whole grown card (a `flex: 1` root can't fill — no definite bound propagates
|
|
315
|
+
// through the sheet's flex chain, and the panel is pinned, not measured). The
|
|
316
|
+
// FlatList then scrolls within this fixed height. Keep the 0.9 ratio in sync
|
|
317
|
+
// with the picker's `frameSize` in `surfaceRegistry.ts`.
|
|
318
|
+
const panelHeight = (0, _react.useMemo)(() => Math.round(windowHeight * 0.9), [windowHeight]);
|
|
323
319
|
const rootStyle = (0, _react.useMemo)(() => ({
|
|
324
|
-
|
|
325
|
-
}), [
|
|
320
|
+
height: panelHeight
|
|
321
|
+
}), [panelHeight]);
|
|
326
322
|
const effectiveWidth = gridWidth > 0 ? gridWidth : windowWidth;
|
|
327
323
|
const {
|
|
328
324
|
columns,
|
|
@@ -337,10 +333,10 @@ const PhotoPickerView = ({
|
|
|
337
333
|
const skeletonTileCount = (0, _react.useMemo)(() => {
|
|
338
334
|
const rowHeight = cellSize + gutter;
|
|
339
335
|
if (rowHeight <= 0) return columns * SKELETON_MIN_ROWS;
|
|
340
|
-
const available = Math.max(0,
|
|
336
|
+
const available = Math.max(0, panelHeight - GRID_CONTENT_PADDING_TOP);
|
|
341
337
|
const rows = Math.max(SKELETON_MIN_ROWS, Math.floor(available / rowHeight));
|
|
342
338
|
return rows * columns;
|
|
343
|
-
}, [cellSize, gutter, columns,
|
|
339
|
+
}, [cellSize, gutter, columns, panelHeight]);
|
|
344
340
|
|
|
345
341
|
// Map selectedIds → 1-based selection order for the badge. We freeze a
|
|
346
342
|
// stable order at the time of selection: the order is the insertion
|
|
@@ -445,7 +441,24 @@ const PhotoPickerView = ({
|
|
|
445
441
|
onLayout: onRootLayout,
|
|
446
442
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
447
443
|
className: "flex-1 min-h-0 bg-black",
|
|
448
|
-
children: [isEmpty &&
|
|
444
|
+
children: [isEmpty && loadError ?
|
|
445
|
+
/*#__PURE__*/
|
|
446
|
+
/* Terminal load failure — a DISTINCT error surface (not the
|
|
447
|
+
empty state), pushed below the translucent header so Cancel
|
|
448
|
+
stays reachable. Retry re-runs the list query. */
|
|
449
|
+
(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
450
|
+
className: "flex-1 items-center justify-center pt-[60px]",
|
|
451
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FileLibraryError.default, {
|
|
452
|
+
title: t('fileManagement.loadError.title'),
|
|
453
|
+
description: t('fileManagement.loadError.description'),
|
|
454
|
+
retryLabel: t('fileManagement.retry'),
|
|
455
|
+
onRetry: onRetry,
|
|
456
|
+
iconColor: "#FF6B6B",
|
|
457
|
+
titleColor: "#FFFFFF",
|
|
458
|
+
descriptionColor: "rgba(255,255,255,0.7)",
|
|
459
|
+
buttonColor: primaryColor
|
|
460
|
+
})
|
|
461
|
+
}) : isEmpty && loading ?
|
|
449
462
|
/*#__PURE__*/
|
|
450
463
|
/* Loading skeleton — the picker's OWN shape: shimmer tiles laid
|
|
451
464
|
out with the SAME placement-aware geometry the real grid uses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_expoImage","_vectorIcons","_styles","Skeleton","_photoGridLayout","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","hapticsModulePromise","getHaptics","Platform","OS","Promise","resolve","mod","then","impactAsync","hapticImpact","style","h","styleEnum","ImpactFeedbackStyle","Heavy","Medium","Light","hapticSelection","selectionAsync","hapticNotification","type","typeEnum","NotificationFeedbackType","Error","Warning","Success","notificationAsync","APP_BAR_HEIGHT","HEADER_HEIGHT","GRID_CONTENT_PADDING_TOP","STAGGER_PER_CELL_MS","MAX_TOTAL_STAGGER_MS","ENTRANCE_DURATION_MS","RING_PULSE_PEAK","RING_PULSE_UP_MS","RING_SPRING_FRICTION","RING_SPRING_TENSION","CELL_CORNER_RADIUS","SELECTION_RING_WIDTH","SKELETON_TILE_COLOR","SKELETON_MIN_ROWS","PhotoPickerCell","React","memo","props","photo","size","marginRight","marginBottom","isSelected","selectionIndex","dim","primaryColor","thumbUrl","enterIndex","reduceMotion","onPress","onLongPress","a11yLabel","delay","Math","min","opacity","useRef","Animated","Value","current","useEffect","setValue","entrance","timing","toValue","duration","useNativeDriver","start","stop","ringScale","prevSelected","pulse","sequence","spring","friction","tension","jsx","View","width","height","position","children","jsxs","TouchableOpacity","activeOpacity","className","accessibilityRole","accessibilityLabel","accessibilityState","selected","Image","source","uri","contentFit","transition","cachePolicy","filename","pointerEvents","top","right","bottom","left","borderRadius","borderWidth","borderColor","transform","scale","backgroundColor","Text","String","PhotoPickerView","photos","selectedIds","multiSelect","maxSelection","allowUpload","refreshing","uploading","isPickingDocument","uploadProgress","hasMore","loadingMore","loading","getThumbUrl","isOwner","onTogglePhoto","onPreviewPhoto","onUpload","onRefresh","onLoadMore","onCancel","onConfirm","windowWidth","windowHeight","useWindowDimensions","gridWidth","setGridWidth","useState","onRootLayout","useCallback","w","round","nativeEvent","layout","prev","isCenteredPanel","BREAKPOINTS","md","maxPanelHeight","useMemo","rootStyle","maxHeight","effectiveWidth","columns","cellSize","gutter","computePhotoGridLayout","skeletonTileCount","rowHeight","available","max","rows","floor","selectionOrder","map","Map","id","hasAnySelection","showUploadLabel","isEmpty","length","atSelectionLimit","handleCellPress","handleCellLongPress","handleConfirm","renderItem","item","index","selIndex","isLastInRow","name","keyExtractor","listFooter","ActivityIndicator","color","handleEndReached","confirmDisabled","confirmLabel","count","progressFraction","total","onLayout","flexDirection","flexWrap","accessibilityElementsHidden","importantForAccessibility","Array","from","_","Box","MaterialCommunityIcons","disabled","busy","Fragment","Ionicons","FlatList","data","numColumns","contentContainerClassName","showsVerticalScrollIndicator","refreshControl","RefreshControl","tintColor","colors","progressViewOffset","onEndReached","onEndReachedThreshold","ListFooterComponent","removeClippedSubviews","initialNumToRender","windowSize","hitSlop","letterSpacing","numberOfLines","_default","exports"],"sourceRoot":"../../../../../src","sources":["ui/screens/fileManagement/PhotoPickerSection.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_expoImage","_vectorIcons","Skeleton","_photoGridLayout","_FileLibraryError","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","hapticsModulePromise","getHaptics","Platform","OS","Promise","resolve","mod","then","impactAsync","hapticImpact","style","h","styleEnum","ImpactFeedbackStyle","Heavy","Medium","Light","hapticSelection","selectionAsync","hapticNotification","type","typeEnum","NotificationFeedbackType","Error","Warning","Success","notificationAsync","APP_BAR_HEIGHT","HEADER_HEIGHT","GRID_CONTENT_PADDING_TOP","STAGGER_PER_CELL_MS","MAX_TOTAL_STAGGER_MS","ENTRANCE_DURATION_MS","RING_PULSE_PEAK","RING_PULSE_UP_MS","RING_SPRING_FRICTION","RING_SPRING_TENSION","CELL_CORNER_RADIUS","SELECTION_RING_WIDTH","SKELETON_TILE_COLOR","SKELETON_MIN_ROWS","PhotoPickerCell","React","memo","props","photo","size","marginRight","marginBottom","isSelected","selectionIndex","dim","primaryColor","thumbUrl","enterIndex","reduceMotion","onPress","onLongPress","a11yLabel","delay","Math","min","opacity","useRef","Animated","Value","current","startEntrance","useCallback","node","setValue","timing","toValue","duration","useNativeDriver","start","ringScale","startRingPulse","sequence","spring","friction","tension","jsx","View","ref","width","height","position","children","jsxs","TouchableOpacity","activeOpacity","className","accessibilityRole","accessibilityLabel","accessibilityState","selected","Image","source","uri","contentFit","transition","cachePolicy","filename","pointerEvents","top","right","bottom","left","borderRadius","borderWidth","borderColor","transform","scale","backgroundColor","Text","String","PhotoPickerView","photos","selectedIds","multiSelect","maxSelection","allowUpload","refreshing","uploading","isPickingDocument","uploadProgress","hasMore","loadingMore","loading","loadError","onRetry","getThumbUrl","isOwner","onTogglePhoto","onPreviewPhoto","onUpload","onRefresh","onLoadMore","onCancel","onConfirm","windowWidth","windowHeight","useWindowDimensions","gridWidth","setGridWidth","useState","onRootLayout","w","round","nativeEvent","layout","prev","panelHeight","useMemo","rootStyle","effectiveWidth","columns","cellSize","gutter","computePhotoGridLayout","skeletonTileCount","rowHeight","available","max","rows","floor","selectionOrder","map","Map","id","hasAnySelection","showUploadLabel","isEmpty","length","atSelectionLimit","handleCellPress","handleCellLongPress","handleConfirm","renderItem","item","index","selIndex","isLastInRow","name","keyExtractor","listFooter","ActivityIndicator","color","handleEndReached","confirmDisabled","confirmLabel","count","progressFraction","total","onLayout","title","description","retryLabel","iconColor","titleColor","descriptionColor","buttonColor","flexDirection","flexWrap","accessibilityElementsHidden","importantForAccessibility","Array","from","_","Box","MaterialCommunityIcons","disabled","busy","Fragment","Ionicons","FlatList","data","numColumns","contentContainerClassName","showsVerticalScrollIndicator","refreshControl","RefreshControl","tintColor","colors","progressViewOffset","onEndReached","onEndReachedThreshold","ListFooterComponent","removeClippedSubviews","initialNumToRender","windowSize","hitSlop","letterSpacing","numberOfLines","_default","exports"],"sourceRoot":"../../../../../src","sources":["ui/screens/fileManagement/PhotoPickerSection.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,10 +5,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.useFileUploadState = exports.default = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
|
+
var _reactQuery = require("@tanstack/react-query");
|
|
8
9
|
var _bloom = require("@oxyhq/bloom");
|
|
9
|
-
var
|
|
10
|
+
var _queryKeys = require("../../../hooks/queries/queryKeys.js");
|
|
11
|
+
var _useFileQueries = require("../../../hooks/queries/useFileQueries.js");
|
|
10
12
|
var _fileManagement = require("../../../utils/fileManagement.js");
|
|
11
13
|
var _shared = require("../shared.js");
|
|
14
|
+
/** Aggregate progress across a multi-file upload. */
|
|
15
|
+
|
|
16
|
+
/** Minimum time the "Uploading…" indicator stays visible (anti-flash). */
|
|
17
|
+
const MIN_BANNER_MS = 600;
|
|
12
18
|
function revokePreviewUrl(preview) {
|
|
13
19
|
if (preview?.startsWith('blob:')) {
|
|
14
20
|
URL.revokeObjectURL(preview);
|
|
@@ -44,22 +50,21 @@ const useFileUploadState = ({
|
|
|
44
50
|
onClose,
|
|
45
51
|
selectedIds,
|
|
46
52
|
setSelectedIds,
|
|
47
|
-
loadFiles,
|
|
48
53
|
t
|
|
49
54
|
}) => {
|
|
50
55
|
const [isPickingDocument, setIsPickingDocument] = (0, _react.useState)(false);
|
|
51
56
|
const [pendingFiles, setPendingFiles] = (0, _react.useState)([]);
|
|
52
57
|
const [showUploadPreview, setShowUploadPreview] = (0, _react.useState)(false);
|
|
58
|
+
const [uploading, setUploading] = (0, _react.useState)(false);
|
|
59
|
+
const [uploadProgress, setUploadProgress] = (0, _react.useState)(null);
|
|
60
|
+
const queryClient = (0, _reactQuery.useQueryClient)();
|
|
53
61
|
const uploadStartRef = (0, _react.useRef)(null);
|
|
54
|
-
const MIN_BANNER_MS = 600;
|
|
55
|
-
const storeSetUploading = (0, _fileStore.useFileStore)(s => s.setUploading);
|
|
56
|
-
const storeSetUploadProgress = (0, _fileStore.useFileStore)(s => s.setUploadProgress);
|
|
57
62
|
const endUpload = (0, _react.useCallback)(() => {
|
|
58
63
|
const started = uploadStartRef.current;
|
|
59
64
|
const elapsed = started ? Date.now() - started : MIN_BANNER_MS;
|
|
60
65
|
const remaining = elapsed < MIN_BANNER_MS ? MIN_BANNER_MS - elapsed : 0;
|
|
61
66
|
setTimeout(() => {
|
|
62
|
-
|
|
67
|
+
setUploading(false);
|
|
63
68
|
uploadStartRef.current = null;
|
|
64
69
|
}, remaining);
|
|
65
70
|
}, []);
|
|
@@ -68,7 +73,7 @@ const useFileUploadState = ({
|
|
|
68
73
|
if (!targetUserId) return []; // Guard clause to ensure userId is defined
|
|
69
74
|
const uploadedFiles = [];
|
|
70
75
|
try {
|
|
71
|
-
|
|
76
|
+
setUploadProgress({
|
|
72
77
|
current: 0,
|
|
73
78
|
total: selectedFiles.length
|
|
74
79
|
});
|
|
@@ -85,7 +90,7 @@ const useFileUploadState = ({
|
|
|
85
90
|
let failureCount = 0;
|
|
86
91
|
const errors = [];
|
|
87
92
|
for (let i = 0; i < selectedFiles.length; i++) {
|
|
88
|
-
|
|
93
|
+
setUploadProgress({
|
|
89
94
|
current: i + 1,
|
|
90
95
|
total: selectedFiles.length
|
|
91
96
|
});
|
|
@@ -93,18 +98,11 @@ const useFileUploadState = ({
|
|
|
93
98
|
const fileName = (0, _shared.candidateName)(raw, `file-${i + 1}`);
|
|
94
99
|
const fileSize = (0, _shared.candidateSize)(raw);
|
|
95
100
|
const fileType = (0, _shared.candidateType)(raw);
|
|
96
|
-
const optimisticId = `temp-${Date.now()}-${i}-${Math.random().toString(36).
|
|
101
|
+
const optimisticId = `temp-${Date.now()}-${i}-${Math.random().toString(36).slice(2, 11)}`; // Unique ID per file
|
|
97
102
|
|
|
98
103
|
try {
|
|
99
104
|
// Validate file before upload
|
|
100
105
|
if (!raw || !fileName || fileSize <= 0) {
|
|
101
|
-
const errorMsg = `Invalid file: ${fileName}`;
|
|
102
|
-
if (__DEV__) {
|
|
103
|
-
console.error('Upload validation failed:', {
|
|
104
|
-
file: raw,
|
|
105
|
-
error: errorMsg
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
106
|
failureCount++;
|
|
109
107
|
errors.push(`${fileName}: Invalid file (missing name or size)`);
|
|
110
108
|
continue;
|
|
@@ -131,9 +129,7 @@ const useFileUploadState = ({
|
|
|
131
129
|
metadata: optimisticMetadata,
|
|
132
130
|
variants: []
|
|
133
131
|
};
|
|
134
|
-
|
|
135
|
-
prepend: true
|
|
136
|
-
});
|
|
132
|
+
(0, _useFileQueries.prependFileToCache)(queryClient, targetUserId, optimisticFile);
|
|
137
133
|
|
|
138
134
|
// Use the mutation hook with authentication handling
|
|
139
135
|
const result = await uploadFileMutation.mutateAsync({
|
|
@@ -154,46 +150,26 @@ const useFileUploadState = ({
|
|
|
154
150
|
metadata: f.metadata || {},
|
|
155
151
|
variants: f.variants || []
|
|
156
152
|
};
|
|
157
|
-
//
|
|
158
|
-
|
|
159
|
-
_fileStore.useFileStore.getState().addFile(merged, {
|
|
160
|
-
prepend: true
|
|
161
|
-
});
|
|
153
|
+
// Swap the optimistic temp entry for the persisted record.
|
|
154
|
+
(0, _useFileQueries.replaceFileInCache)(queryClient, targetUserId, optimisticId, merged);
|
|
162
155
|
uploadedFiles.push(merged);
|
|
163
156
|
successCount++;
|
|
164
157
|
} else {
|
|
165
158
|
// Upload succeeded but the API returned no file payload,
|
|
166
159
|
// so we cannot build a real entry. Drop the optimistic
|
|
167
160
|
// placeholder instead of stranding a `temp-…` id (which
|
|
168
|
-
// would leak into asset URLs); the
|
|
169
|
-
//
|
|
170
|
-
|
|
171
|
-
if (__DEV__) {
|
|
172
|
-
console.warn('Upload completed but no file data returned:', {
|
|
173
|
-
fileName,
|
|
174
|
-
result
|
|
175
|
-
});
|
|
176
|
-
}
|
|
161
|
+
// would leak into asset URLs); the reconcile invalidation
|
|
162
|
+
// below re-fetches the persisted record.
|
|
163
|
+
(0, _useFileQueries.removeFileFromCache)(queryClient, targetUserId, optimisticId);
|
|
177
164
|
// Still count as success if upload didn't throw
|
|
178
165
|
successCount++;
|
|
179
166
|
}
|
|
180
167
|
} catch (error) {
|
|
181
168
|
failureCount++;
|
|
182
169
|
const errorMessage = (0, _shared.getErrorMessage)(error) || 'Upload failed';
|
|
183
|
-
|
|
184
|
-
errors.push(fullError);
|
|
185
|
-
if (__DEV__) {
|
|
186
|
-
console.error('File upload failed:', {
|
|
187
|
-
fileName,
|
|
188
|
-
fileSize,
|
|
189
|
-
fileType,
|
|
190
|
-
error: errorMessage,
|
|
191
|
-
stack: error instanceof Error ? error.stack : undefined
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
|
|
170
|
+
errors.push(`${fileName}: ${errorMessage}`);
|
|
195
171
|
// Remove optimistic file on error (use the same optimisticId from above)
|
|
196
|
-
|
|
172
|
+
(0, _useFileQueries.removeFileFromCache)(queryClient, targetUserId, optimisticId);
|
|
197
173
|
}
|
|
198
174
|
}
|
|
199
175
|
|
|
@@ -210,14 +186,17 @@ const useFileUploadState = ({
|
|
|
210
186
|
count: failureCount
|
|
211
187
|
})}${errorDetails}`);
|
|
212
188
|
}
|
|
213
|
-
//
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
189
|
+
// Reconcile against the server (picks up generated variants / metadata)
|
|
190
|
+
// — replaces the old silent-reload timer.
|
|
191
|
+
if (successCount > 0) {
|
|
192
|
+
queryClient.invalidateQueries({
|
|
193
|
+
queryKey: _queryKeys.queryKeys.files.list(targetUserId)
|
|
194
|
+
});
|
|
195
|
+
}
|
|
217
196
|
} catch (error) {
|
|
218
197
|
_bloom.toast.error((0, _shared.getErrorMessage)(error) || t('fileManagement.toasts.uploadError'));
|
|
219
198
|
} finally {
|
|
220
|
-
|
|
199
|
+
setUploadProgress(null);
|
|
221
200
|
}
|
|
222
201
|
return uploadedFiles;
|
|
223
202
|
};
|
|
@@ -227,34 +206,22 @@ const useFileUploadState = ({
|
|
|
227
206
|
for (const file of selectedFiles) {
|
|
228
207
|
// Validate file has required properties
|
|
229
208
|
if (!file) {
|
|
230
|
-
if (__DEV__) {
|
|
231
|
-
console.error('Invalid file: file is null or undefined');
|
|
232
|
-
}
|
|
233
209
|
_bloom.toast.error(t('fileManagement.toasts.invalidFileMissing'));
|
|
234
210
|
continue;
|
|
235
211
|
}
|
|
236
212
|
const name = (0, _shared.candidateName)(file, '');
|
|
237
213
|
if (!name) {
|
|
238
|
-
if (__DEV__) {
|
|
239
|
-
console.error('Invalid file: missing or invalid name property', file);
|
|
240
|
-
}
|
|
241
214
|
_bloom.toast.error(t('fileManagement.toasts.invalidFileName'));
|
|
242
215
|
continue;
|
|
243
216
|
}
|
|
244
217
|
const size = file.size;
|
|
245
218
|
if (size === undefined || size === null || Number.isNaN(size)) {
|
|
246
|
-
if (__DEV__) {
|
|
247
|
-
console.error('Invalid file: missing or invalid size property', file);
|
|
248
|
-
}
|
|
249
219
|
_bloom.toast.error(t('fileManagement.toasts.invalidFileSize', {
|
|
250
220
|
name
|
|
251
221
|
}));
|
|
252
222
|
continue;
|
|
253
223
|
}
|
|
254
224
|
if (size <= 0) {
|
|
255
|
-
if (__DEV__) {
|
|
256
|
-
console.error('Invalid file: file size is zero or negative', file);
|
|
257
|
-
}
|
|
258
225
|
_bloom.toast.error(t('fileManagement.toasts.fileEmpty', {
|
|
259
226
|
name
|
|
260
227
|
}));
|
|
@@ -284,11 +251,8 @@ const useFileUploadState = ({
|
|
|
284
251
|
if (typeof File !== 'undefined' && file instanceof File || typeof Blob !== 'undefined' && file instanceof Blob) {
|
|
285
252
|
preview = URL.createObjectURL(file);
|
|
286
253
|
}
|
|
287
|
-
} catch
|
|
288
|
-
|
|
289
|
-
console.warn('Failed to create preview URL:', error);
|
|
290
|
-
}
|
|
291
|
-
// Preview is optional, continue without it
|
|
254
|
+
} catch {
|
|
255
|
+
// Preview is optional — continue without it.
|
|
292
256
|
}
|
|
293
257
|
}
|
|
294
258
|
}
|
|
@@ -307,25 +271,25 @@ const useFileUploadState = ({
|
|
|
307
271
|
if (pendingFiles.length === 0) return;
|
|
308
272
|
setShowUploadPreview(false);
|
|
309
273
|
uploadStartRef.current = Date.now();
|
|
310
|
-
|
|
311
|
-
|
|
274
|
+
setUploading(true);
|
|
275
|
+
setUploadProgress(null);
|
|
312
276
|
try {
|
|
313
277
|
const filesToUpload = pendingFiles.map(pf => pf.file);
|
|
314
|
-
|
|
278
|
+
setUploadProgress({
|
|
315
279
|
current: 0,
|
|
316
280
|
total: filesToUpload.length
|
|
317
281
|
});
|
|
318
282
|
const uploadedFiles = await processFileUploads(filesToUpload);
|
|
319
283
|
|
|
320
284
|
// Cleanup preview URLs
|
|
321
|
-
|
|
285
|
+
for (const pf of pendingFiles) {
|
|
322
286
|
revokePreviewUrl(pf.preview);
|
|
323
|
-
}
|
|
287
|
+
}
|
|
324
288
|
setPendingFiles([]);
|
|
325
289
|
|
|
326
290
|
// If in selectMode, automatically select the uploaded file(s)
|
|
327
291
|
if (selectMode && uploadedFiles.length > 0) {
|
|
328
|
-
//
|
|
292
|
+
// Defer one tick so the query cache has settled before selecting.
|
|
329
293
|
setTimeout(() => {
|
|
330
294
|
const fileToSelect = uploadedFiles[0];
|
|
331
295
|
if (!multiSelect && fileToSelect) {
|
|
@@ -338,11 +302,11 @@ const useFileUploadState = ({
|
|
|
338
302
|
}
|
|
339
303
|
} else if (multiSelect) {
|
|
340
304
|
// Multi-select mode - add all uploaded files to selection
|
|
341
|
-
|
|
305
|
+
for (const file of uploadedFiles) {
|
|
342
306
|
if (!selectedIds.has(file.id)) {
|
|
343
307
|
setSelectedIds(prev => new Set(prev).add(file.id));
|
|
344
308
|
}
|
|
345
|
-
}
|
|
309
|
+
}
|
|
346
310
|
}
|
|
347
311
|
}, 500);
|
|
348
312
|
}
|
|
@@ -354,9 +318,9 @@ const useFileUploadState = ({
|
|
|
354
318
|
};
|
|
355
319
|
const handleCancelUpload = () => {
|
|
356
320
|
// Cleanup preview URLs
|
|
357
|
-
|
|
321
|
+
for (const pf of pendingFiles) {
|
|
358
322
|
revokePreviewUrl(pf.preview);
|
|
359
|
-
}
|
|
323
|
+
}
|
|
360
324
|
setPendingFiles([]);
|
|
361
325
|
setShowUploadPreview(false);
|
|
362
326
|
};
|
|
@@ -457,9 +421,6 @@ const useFileUploadState = ({
|
|
|
457
421
|
_bloom.toast.error(t('fileManagement.toasts.noFilesProcessed'));
|
|
458
422
|
}
|
|
459
423
|
} catch (error) {
|
|
460
|
-
if (__DEV__) {
|
|
461
|
-
console.error('File upload error:', error);
|
|
462
|
-
}
|
|
463
424
|
if ((0, _shared.getErrorMessage)(error)?.includes('expo-document-picker') || (0, _shared.getErrorMessage)(error)?.includes('Different document picking in progress')) {
|
|
464
425
|
if ((0, _shared.getErrorMessage)(error)?.includes('Different document picking in progress')) {
|
|
465
426
|
_bloom.toast.error(t('fileManagement.toasts.waitForSelection'));
|
|
@@ -478,6 +439,8 @@ const useFileUploadState = ({
|
|
|
478
439
|
isPickingDocument,
|
|
479
440
|
pendingFiles,
|
|
480
441
|
showUploadPreview,
|
|
442
|
+
uploading,
|
|
443
|
+
uploadProgress,
|
|
481
444
|
handleFileUpload,
|
|
482
445
|
handleConfirmUpload,
|
|
483
446
|
handleCancelUpload,
|