@oxyhq/services 5.21.6 → 5.21.7
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/crypto/keyManager.js +67 -22
- package/lib/commonjs/crypto/keyManager.js.map +1 -1
- package/lib/commonjs/index.js +66 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ui/components/fileManagement/AnimatedButton.js +57 -0
- package/lib/commonjs/ui/components/fileManagement/AnimatedButton.js.map +1 -0
- package/lib/commonjs/ui/components/profile/EditBioModal.js +24 -156
- package/lib/commonjs/ui/components/profile/EditBioModal.js.map +1 -1
- package/lib/commonjs/ui/components/profile/EditDisplayNameModal.js +28 -178
- package/lib/commonjs/ui/components/profile/EditDisplayNameModal.js.map +1 -1
- package/lib/commonjs/ui/components/profile/EditEmailModal.js +32 -159
- package/lib/commonjs/ui/components/profile/EditEmailModal.js.map +1 -1
- package/lib/commonjs/ui/components/profile/EditLocationModal.js +45 -227
- package/lib/commonjs/ui/components/profile/EditLocationModal.js.map +1 -1
- package/lib/commonjs/ui/components/profile/EditUsernameModal.js +30 -155
- package/lib/commonjs/ui/components/profile/EditUsernameModal.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/mutationFactory.js +177 -0
- package/lib/commonjs/ui/hooks/mutations/mutationFactory.js.map +1 -0
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +10 -123
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +2 -32
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +2 -31
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/useFileFiltering.js +76 -0
- package/lib/commonjs/ui/hooks/useFileFiltering.js.map +1 -0
- package/lib/commonjs/ui/screens/FileManagementScreen.js +2 -2
- package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/commonjs/ui/utils/authHelpers.js +164 -0
- package/lib/commonjs/ui/utils/authHelpers.js.map +1 -0
- package/lib/commonjs/ui/utils/avatarUtils.js +18 -61
- package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
- package/lib/module/crypto/keyManager.js +67 -22
- package/lib/module/crypto/keyManager.js.map +1 -1
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/components/fileManagement/AnimatedButton.js +50 -0
- package/lib/module/ui/components/fileManagement/AnimatedButton.js.map +1 -0
- package/lib/module/ui/components/profile/EditBioModal.js +24 -156
- package/lib/module/ui/components/profile/EditBioModal.js.map +1 -1
- package/lib/module/ui/components/profile/EditDisplayNameModal.js +28 -178
- package/lib/module/ui/components/profile/EditDisplayNameModal.js.map +1 -1
- package/lib/module/ui/components/profile/EditEmailModal.js +32 -159
- package/lib/module/ui/components/profile/EditEmailModal.js.map +1 -1
- package/lib/module/ui/components/profile/EditLocationModal.js +45 -227
- package/lib/module/ui/components/profile/EditLocationModal.js.map +1 -1
- package/lib/module/ui/components/profile/EditUsernameModal.js +30 -155
- package/lib/module/ui/components/profile/EditUsernameModal.js.map +1 -1
- package/lib/module/ui/hooks/mutations/mutationFactory.js +173 -0
- package/lib/module/ui/hooks/mutations/mutationFactory.js.map +1 -0
- package/lib/module/ui/hooks/mutations/useAccountMutations.js +10 -122
- package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js +2 -32
- package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useServicesQueries.js +2 -31
- package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/module/ui/hooks/useFileFiltering.js +72 -0
- package/lib/module/ui/hooks/useFileFiltering.js.map +1 -0
- package/lib/module/ui/screens/FileManagementScreen.js +2 -2
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/module/ui/utils/authHelpers.js +154 -0
- package/lib/module/ui/utils/authHelpers.js.map +1 -0
- package/lib/module/ui/utils/avatarUtils.js +18 -61
- package/lib/module/ui/utils/avatarUtils.js.map +1 -1
- package/lib/typescript/commonjs/crypto/keyManager.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +6 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/AnimatedButton.d.ts +16 -0
- package/lib/typescript/commonjs/ui/components/fileManagement/AnimatedButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/profile/EditBioModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/profile/EditDisplayNameModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/profile/EditEmailModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/profile/EditLocationModal.d.ts +1 -0
- package/lib/typescript/commonjs/ui/components/profile/EditLocationModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/profile/EditUsernameModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts +76 -0
- package/lib/typescript/commonjs/ui/hooks/mutations/mutationFactory.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +29 -4
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFileFiltering.d.ts +29 -0
- package/lib/typescript/commonjs/ui/hooks/useFileFiltering.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/authHelpers.d.ts +99 -0
- package/lib/typescript/commonjs/ui/utils/authHelpers.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/avatarUtils.d.ts.map +1 -1
- package/lib/typescript/module/crypto/keyManager.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +6 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/fileManagement/AnimatedButton.d.ts +16 -0
- package/lib/typescript/module/ui/components/fileManagement/AnimatedButton.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/profile/EditBioModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/profile/EditDisplayNameModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/profile/EditEmailModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/profile/EditLocationModal.d.ts +1 -0
- package/lib/typescript/module/ui/components/profile/EditLocationModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/profile/EditUsernameModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts +76 -0
- package/lib/typescript/module/ui/hooks/mutations/mutationFactory.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +29 -4
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useFileFiltering.d.ts +29 -0
- package/lib/typescript/module/ui/hooks/useFileFiltering.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/authHelpers.d.ts +99 -0
- package/lib/typescript/module/ui/utils/authHelpers.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/avatarUtils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/crypto/keyManager.ts +23 -22
- package/src/index.ts +25 -0
- package/src/ui/components/fileManagement/AnimatedButton.tsx +56 -0
- package/src/ui/components/profile/EditBioModal.tsx +38 -176
- package/src/ui/components/profile/EditDisplayNameModal.tsx +48 -195
- package/src/ui/components/profile/EditEmailModal.tsx +49 -180
- package/src/ui/components/profile/EditLocationModal.tsx +76 -263
- package/src/ui/components/profile/EditUsernameModal.tsx +47 -175
- package/src/ui/hooks/mutations/mutationFactory.ts +215 -0
- package/src/ui/hooks/mutations/useAccountMutations.ts +48 -136
- package/src/ui/hooks/queries/useAccountQueries.ts +6 -33
- package/src/ui/hooks/queries/useServicesQueries.ts +6 -32
- package/src/ui/hooks/useFileFiltering.ts +115 -0
- package/src/ui/screens/FileManagementScreen.tsx +2 -2
- package/src/ui/utils/authHelpers.ts +183 -0
- package/src/ui/utils/avatarUtils.ts +25 -65
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React
|
|
4
|
-
import {
|
|
5
|
-
import { Ionicons } from '@expo/vector-icons';
|
|
6
|
-
import { useThemeStyles } from "../../hooks/useThemeStyles.js";
|
|
7
|
-
import { useColorScheme } from "../../hooks/use-color-scheme.js";
|
|
8
|
-
import { useI18n } from "../../hooks/useI18n.js";
|
|
9
|
-
import { fontFamilies } from "../../styles/fonts.js";
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { EditFieldModal } from "./EditFieldModal.js";
|
|
10
5
|
import { useProfileEditing } from "../../hooks/useProfileEditing.js";
|
|
11
|
-
import {
|
|
6
|
+
import { useI18n } from "../../hooks/useI18n.js";
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
8
|
export const EditUsernameModal = ({
|
|
13
9
|
visible,
|
|
14
10
|
onClose,
|
|
@@ -19,156 +15,35 @@ export const EditUsernameModal = ({
|
|
|
19
15
|
const {
|
|
20
16
|
t
|
|
21
17
|
} = useI18n();
|
|
22
|
-
const colorScheme = useColorScheme();
|
|
23
|
-
const themeStyles = useThemeStyles(theme || 'light', colorScheme);
|
|
24
|
-
const colors = themeStyles.colors;
|
|
25
18
|
const {
|
|
26
|
-
updateField
|
|
27
|
-
isSaving
|
|
19
|
+
updateField
|
|
28
20
|
} = useProfileEditing();
|
|
29
|
-
|
|
30
|
-
useEffect(() => {
|
|
31
|
-
if (visible) {
|
|
32
|
-
setUsername(initialValue);
|
|
33
|
-
}
|
|
34
|
-
}, [visible, initialValue]);
|
|
35
|
-
const handleSave = async () => {
|
|
36
|
-
const success = await updateField('username', username);
|
|
37
|
-
if (success) {
|
|
38
|
-
onSave?.();
|
|
39
|
-
onClose();
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
return /*#__PURE__*/_jsx(Modal, {
|
|
21
|
+
return /*#__PURE__*/_jsx(EditFieldModal, {
|
|
43
22
|
visible: visible,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
69
|
-
onPress: handleSave,
|
|
70
|
-
disabled: isSaving || !username.trim(),
|
|
71
|
-
style: [styles.saveButton, {
|
|
72
|
-
opacity: isSaving || !username.trim() ? 0.5 : 1
|
|
73
|
-
}],
|
|
74
|
-
children: /*#__PURE__*/_jsx(Text, {
|
|
75
|
-
style: [styles.saveButtonText, {
|
|
76
|
-
color: colors.tint
|
|
77
|
-
}],
|
|
78
|
-
children: isSaving ? 'Saving...' : 'Save'
|
|
79
|
-
})
|
|
80
|
-
})]
|
|
81
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
82
|
-
style: styles.modalBody,
|
|
83
|
-
children: /*#__PURE__*/_jsxs(View, {
|
|
84
|
-
style: styles.inputGroup,
|
|
85
|
-
children: [/*#__PURE__*/_jsx(Text, {
|
|
86
|
-
style: [styles.label, {
|
|
87
|
-
color: colors.text
|
|
88
|
-
}],
|
|
89
|
-
children: t('editProfile.items.username.label') || 'Username'
|
|
90
|
-
}), /*#__PURE__*/_jsx(TextInput, {
|
|
91
|
-
style: [styles.input, {
|
|
92
|
-
backgroundColor: colors.card,
|
|
93
|
-
color: colors.text,
|
|
94
|
-
borderColor: colors.border
|
|
95
|
-
}],
|
|
96
|
-
value: username,
|
|
97
|
-
onChangeText: setUsername,
|
|
98
|
-
placeholder: t('editProfile.items.username.placeholder') || 'Choose a username',
|
|
99
|
-
placeholderTextColor: colors.secondaryText,
|
|
100
|
-
autoFocus: true,
|
|
101
|
-
autoCapitalize: "none",
|
|
102
|
-
autoCorrect: false,
|
|
103
|
-
selectionColor: colors.tint
|
|
104
|
-
})]
|
|
105
|
-
})
|
|
106
|
-
})]
|
|
107
|
-
})
|
|
108
|
-
})
|
|
23
|
+
onClose: onClose,
|
|
24
|
+
title: t('editProfile.items.username.title') || 'Username',
|
|
25
|
+
theme: theme,
|
|
26
|
+
onSave: onSave,
|
|
27
|
+
variant: "single",
|
|
28
|
+
fields: [{
|
|
29
|
+
key: 'username',
|
|
30
|
+
label: t('editProfile.items.username.label') || 'Username',
|
|
31
|
+
initialValue,
|
|
32
|
+
placeholder: t('editProfile.items.username.placeholder') || 'Choose a username',
|
|
33
|
+
validation: value => {
|
|
34
|
+
if (!value.trim()) {
|
|
35
|
+
return t('editProfile.items.username.required') || 'Username is required';
|
|
36
|
+
}
|
|
37
|
+
return undefined;
|
|
38
|
+
},
|
|
39
|
+
inputProps: {
|
|
40
|
+
autoCapitalize: 'none',
|
|
41
|
+
autoCorrect: false
|
|
42
|
+
}
|
|
43
|
+
}],
|
|
44
|
+
onSubmit: async data => {
|
|
45
|
+
return await updateField('username', data.username);
|
|
46
|
+
}
|
|
109
47
|
});
|
|
110
48
|
};
|
|
111
|
-
const styles = StyleSheet.create({
|
|
112
|
-
modalOverlay: {
|
|
113
|
-
flex: 1,
|
|
114
|
-
backgroundColor: 'rgba(0, 0, 0, 0.5)',
|
|
115
|
-
justifyContent: 'flex-end'
|
|
116
|
-
},
|
|
117
|
-
modalContent: {
|
|
118
|
-
borderTopLeftRadius: 20,
|
|
119
|
-
borderTopRightRadius: 20,
|
|
120
|
-
paddingTop: Platform.OS === 'ios' ? 20 : 16,
|
|
121
|
-
maxHeight: '80%'
|
|
122
|
-
},
|
|
123
|
-
modalHeader: {
|
|
124
|
-
flexDirection: 'row',
|
|
125
|
-
alignItems: 'center',
|
|
126
|
-
justifyContent: 'space-between',
|
|
127
|
-
paddingHorizontal: 16,
|
|
128
|
-
paddingBottom: 16,
|
|
129
|
-
borderBottomWidth: StyleSheet.hairlineWidth,
|
|
130
|
-
borderBottomColor: '#E5E5EA'
|
|
131
|
-
},
|
|
132
|
-
closeButton: {
|
|
133
|
-
width: 40,
|
|
134
|
-
height: 40,
|
|
135
|
-
alignItems: 'center',
|
|
136
|
-
justifyContent: 'center'
|
|
137
|
-
},
|
|
138
|
-
modalTitle: {
|
|
139
|
-
fontSize: 18,
|
|
140
|
-
fontWeight: '600',
|
|
141
|
-
fontFamily: fontFamilies.phuduSemiBold,
|
|
142
|
-
flex: 1,
|
|
143
|
-
textAlign: 'center'
|
|
144
|
-
},
|
|
145
|
-
saveButton: {
|
|
146
|
-
paddingHorizontal: 16,
|
|
147
|
-
paddingVertical: 8
|
|
148
|
-
},
|
|
149
|
-
saveButtonText: {
|
|
150
|
-
fontSize: 16,
|
|
151
|
-
fontWeight: '600',
|
|
152
|
-
fontFamily: fontFamilies.phuduSemiBold
|
|
153
|
-
},
|
|
154
|
-
modalBody: {
|
|
155
|
-
padding: 16,
|
|
156
|
-
gap: 16
|
|
157
|
-
},
|
|
158
|
-
inputGroup: {
|
|
159
|
-
gap: 8
|
|
160
|
-
},
|
|
161
|
-
label: {
|
|
162
|
-
fontSize: 14,
|
|
163
|
-
fontWeight: '600',
|
|
164
|
-
fontFamily: fontFamilies.phuduSemiBold
|
|
165
|
-
},
|
|
166
|
-
input: {
|
|
167
|
-
borderWidth: StyleSheet.hairlineWidth,
|
|
168
|
-
borderRadius: 12,
|
|
169
|
-
padding: 16,
|
|
170
|
-
fontSize: 16,
|
|
171
|
-
minHeight: 52
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
49
|
//# sourceMappingURL=EditUsernameModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","EditFieldModal","useProfileEditing","useI18n","jsx","_jsx","EditUsernameModal","visible","onClose","initialValue","theme","onSave","t","updateField","title","variant","fields","key","label","placeholder","validation","value","trim","undefined","inputProps","autoCapitalize","autoCorrect","onSubmit","data","username"],"sourceRoot":"../../../../../src","sources":["ui/components/profile/EditUsernameModal.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,iBAAiB,QAAQ,kCAA+B;AACjE,SAASC,OAAO,QAAQ,wBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAU9C,OAAO,MAAMC,iBAAmD,GAAGA,CAAC;EAClEC,OAAO;EACPC,OAAO;EACPC,YAAY,GAAG,EAAE;EACjBC,KAAK,GAAG,OAAO;EACfC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAE,CAAC,GAAGT,OAAO,CAAC,CAAC;EACvB,MAAM;IAAEU;EAAY,CAAC,GAAGX,iBAAiB,CAAC,CAAC;EAE3C,oBACEG,IAAA,CAACJ,cAAc;IACbM,OAAO,EAAEA,OAAQ;IACjBC,OAAO,EAAEA,OAAQ;IACjBM,KAAK,EAAEF,CAAC,CAAC,kCAAkC,CAAC,IAAI,UAAW;IAC3DF,KAAK,EAAEA,KAAM;IACbC,MAAM,EAAEA,MAAO;IACfI,OAAO,EAAC,QAAQ;IAChBC,MAAM,EAAE,CACN;MACEC,GAAG,EAAE,UAAU;MACfC,KAAK,EAAEN,CAAC,CAAC,kCAAkC,CAAC,IAAI,UAAU;MAC1DH,YAAY;MACZU,WAAW,EAAEP,CAAC,CAAC,wCAAwC,CAAC,IAAI,mBAAmB;MAC/EQ,UAAU,EAAGC,KAAK,IAAK;QACrB,IAAI,CAACA,KAAK,CAACC,IAAI,CAAC,CAAC,EAAE;UACjB,OAAOV,CAAC,CAAC,qCAAqC,CAAC,IAAI,sBAAsB;QAC3E;QACA,OAAOW,SAAS;MAClB,CAAC;MACDC,UAAU,EAAE;QACVC,cAAc,EAAE,MAAM;QACtBC,WAAW,EAAE;MACf;IACF,CAAC,CACD;IACFC,QAAQ,EAAE,MAAOC,IAAI,IAAK;MACxB,OAAO,MAAMf,WAAW,CAAC,UAAU,EAAEe,IAAI,CAACC,QAAkB,CAAC;IAC/D;EAAE,CACH,CAAC;AAEN,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Mutation Factory - Creates standardized mutations with optimistic updates
|
|
5
|
+
*
|
|
6
|
+
* This factory reduces boilerplate code for mutations that follow the common pattern:
|
|
7
|
+
* 1. Cancel outgoing queries
|
|
8
|
+
* 2. Snapshot previous data
|
|
9
|
+
* 3. Apply optimistic update
|
|
10
|
+
* 4. On error: rollback and show toast
|
|
11
|
+
* 5. On success: update cache, stores, and invalidate queries
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
import { queryKeys, invalidateAccountQueries, invalidateUserQueries } from "../queries/queryKeys.js";
|
|
15
|
+
import { toast } from "../../../lib/sonner.js";
|
|
16
|
+
import { useAuthStore } from "../../stores/authStore.js";
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Configuration for creating a standard profile mutation
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Creates a standard profile mutation with optimistic updates
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* const updateProfile = createProfileMutation({
|
|
28
|
+
* mutationFn: (updates) => oxyServices.updateProfile(updates),
|
|
29
|
+
* optimisticUpdate: (user, updates) => updates,
|
|
30
|
+
* errorMessage: 'Failed to update profile',
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export function createProfileMutation(config, queryClient, activeSessionId) {
|
|
35
|
+
const {
|
|
36
|
+
mutationFn,
|
|
37
|
+
cancelQueryKeys = [],
|
|
38
|
+
optimisticUpdate,
|
|
39
|
+
errorMessage = 'Operation failed',
|
|
40
|
+
successMessage,
|
|
41
|
+
updateAuthStore = true,
|
|
42
|
+
invalidateUserQueries: shouldInvalidateUserQueries = true,
|
|
43
|
+
invalidateAccountQueries: shouldInvalidateAccountQueries = true,
|
|
44
|
+
onSuccess: customOnSuccess
|
|
45
|
+
} = config;
|
|
46
|
+
return {
|
|
47
|
+
mutationFn,
|
|
48
|
+
onMutate: async variables => {
|
|
49
|
+
// Cancel queries that might conflict
|
|
50
|
+
await queryClient.cancelQueries({
|
|
51
|
+
queryKey: queryKeys.accounts.current()
|
|
52
|
+
});
|
|
53
|
+
for (const key of cancelQueryKeys) {
|
|
54
|
+
await queryClient.cancelQueries({
|
|
55
|
+
queryKey: key
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Snapshot previous user data
|
|
60
|
+
const previousUser = queryClient.getQueryData(queryKeys.accounts.current());
|
|
61
|
+
|
|
62
|
+
// Apply optimistic update if provided
|
|
63
|
+
if (previousUser && optimisticUpdate) {
|
|
64
|
+
const updates = optimisticUpdate(previousUser, variables);
|
|
65
|
+
const optimisticUser = {
|
|
66
|
+
...previousUser,
|
|
67
|
+
...updates
|
|
68
|
+
};
|
|
69
|
+
queryClient.setQueryData(queryKeys.accounts.current(), optimisticUser);
|
|
70
|
+
if (activeSessionId) {
|
|
71
|
+
queryClient.setQueryData(queryKeys.users.profile(activeSessionId), optimisticUser);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
previousUser
|
|
76
|
+
};
|
|
77
|
+
},
|
|
78
|
+
onError: (error, _variables, context) => {
|
|
79
|
+
// Rollback optimistic update
|
|
80
|
+
if (context?.previousUser) {
|
|
81
|
+
queryClient.setQueryData(queryKeys.accounts.current(), context.previousUser);
|
|
82
|
+
if (activeSessionId) {
|
|
83
|
+
queryClient.setQueryData(queryKeys.users.profile(activeSessionId), context.previousUser);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// Show error toast
|
|
88
|
+
const message = typeof errorMessage === 'function' ? errorMessage(error) : error instanceof Error ? error.message : errorMessage;
|
|
89
|
+
toast.error(message);
|
|
90
|
+
},
|
|
91
|
+
onSuccess: (data, variables) => {
|
|
92
|
+
// Update cache with server response
|
|
93
|
+
queryClient.setQueryData(queryKeys.accounts.current(), data);
|
|
94
|
+
if (activeSessionId) {
|
|
95
|
+
queryClient.setQueryData(queryKeys.users.profile(activeSessionId), data);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Update authStore for immediate UI updates
|
|
99
|
+
if (updateAuthStore) {
|
|
100
|
+
useAuthStore.getState().setUser(data);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
// Invalidate related queries
|
|
104
|
+
if (shouldInvalidateUserQueries) {
|
|
105
|
+
invalidateUserQueries(queryClient);
|
|
106
|
+
}
|
|
107
|
+
if (shouldInvalidateAccountQueries) {
|
|
108
|
+
invalidateAccountQueries(queryClient);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
// Show success toast if configured
|
|
112
|
+
if (successMessage) {
|
|
113
|
+
toast.success(successMessage);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// Call custom onSuccess handler
|
|
117
|
+
if (customOnSuccess) {
|
|
118
|
+
customOnSuccess(data, variables, queryClient);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Configuration for creating a generic mutation (non-profile)
|
|
126
|
+
*/
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Creates a generic mutation with optimistic updates
|
|
130
|
+
*/
|
|
131
|
+
export function createGenericMutation(config, queryClient) {
|
|
132
|
+
const {
|
|
133
|
+
mutationFn,
|
|
134
|
+
queryKey,
|
|
135
|
+
optimisticData,
|
|
136
|
+
errorMessage = 'Operation failed',
|
|
137
|
+
successMessage,
|
|
138
|
+
invalidateQueries = []
|
|
139
|
+
} = config;
|
|
140
|
+
return {
|
|
141
|
+
mutationFn,
|
|
142
|
+
onMutate: async variables => {
|
|
143
|
+
await queryClient.cancelQueries({
|
|
144
|
+
queryKey
|
|
145
|
+
});
|
|
146
|
+
const previous = queryClient.getQueryData(queryKey);
|
|
147
|
+
if (optimisticData) {
|
|
148
|
+
queryClient.setQueryData(queryKey, optimisticData(previous, variables));
|
|
149
|
+
}
|
|
150
|
+
return {
|
|
151
|
+
previous
|
|
152
|
+
};
|
|
153
|
+
},
|
|
154
|
+
onError: (error, _variables, context) => {
|
|
155
|
+
if (context?.previous !== undefined) {
|
|
156
|
+
queryClient.setQueryData(queryKey, context.previous);
|
|
157
|
+
}
|
|
158
|
+
toast.error(error instanceof Error ? error.message : errorMessage);
|
|
159
|
+
},
|
|
160
|
+
onSuccess: data => {
|
|
161
|
+
queryClient.setQueryData(queryKey, data);
|
|
162
|
+
for (const key of invalidateQueries) {
|
|
163
|
+
queryClient.invalidateQueries({
|
|
164
|
+
queryKey: key
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
if (successMessage) {
|
|
168
|
+
toast.success(successMessage);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=mutationFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["queryKeys","invalidateAccountQueries","invalidateUserQueries","toast","useAuthStore","createProfileMutation","config","queryClient","activeSessionId","mutationFn","cancelQueryKeys","optimisticUpdate","errorMessage","successMessage","updateAuthStore","shouldInvalidateUserQueries","shouldInvalidateAccountQueries","onSuccess","customOnSuccess","onMutate","variables","cancelQueries","queryKey","accounts","current","key","previousUser","getQueryData","updates","optimisticUser","setQueryData","users","profile","onError","error","_variables","context","message","Error","data","getState","setUser","success","createGenericMutation","optimisticData","invalidateQueries","previous","undefined"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/mutationFactory.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,SAASA,SAAS,EAAEC,wBAAwB,EAAEC,qBAAqB,QAAQ,yBAAsB;AACjG,SAASC,KAAK,QAAQ,wBAAqB;AAC3C,SAASC,YAAY,QAAQ,2BAAwB;;AAErD;AACA;AACA;;AAsBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CACnCC,MAA+C,EAC/CC,WAAwB,EACxBC,eAA8B,EACwC;EACtE,MAAM;IACJC,UAAU;IACVC,eAAe,GAAG,EAAE;IACpBC,gBAAgB;IAChBC,YAAY,GAAG,kBAAkB;IACjCC,cAAc;IACdC,eAAe,GAAG,IAAI;IACtBZ,qBAAqB,EAAEa,2BAA2B,GAAG,IAAI;IACzDd,wBAAwB,EAAEe,8BAA8B,GAAG,IAAI;IAC/DC,SAAS,EAAEC;EACb,CAAC,GAAGZ,MAAM;EAEV,OAAO;IACLG,UAAU;IAEVU,QAAQ,EAAE,MAAOC,SAAS,IAAK;MAC7B;MACA,MAAMb,WAAW,CAACc,aAAa,CAAC;QAAEC,QAAQ,EAAEtB,SAAS,CAACuB,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;MAC3E,KAAK,MAAMC,GAAG,IAAIf,eAAe,EAAE;QACjC,MAAMH,WAAW,CAACc,aAAa,CAAC;UAAEC,QAAQ,EAAEG;QAAI,CAAC,CAAC;MACpD;;MAEA;MACA,MAAMC,YAAY,GAAGnB,WAAW,CAACoB,YAAY,CAAO3B,SAAS,CAACuB,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIE,YAAY,IAAIf,gBAAgB,EAAE;QACpC,MAAMiB,OAAO,GAAGjB,gBAAgB,CAACe,YAAY,EAAEN,SAAS,CAAC;QACzD,MAAMS,cAAc,GAAG;UAAE,GAAGH,YAAY;UAAE,GAAGE;QAAQ,CAAC;QAEtDrB,WAAW,CAACuB,YAAY,CAAO9B,SAAS,CAACuB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEK,cAAc,CAAC;QAE5E,IAAIrB,eAAe,EAAE;UACnBD,WAAW,CAACuB,YAAY,CAAO9B,SAAS,CAAC+B,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAEqB,cAAc,CAAC;QAC1F;MACF;MAEA,OAAO;QAAEH;MAAa,CAAC;IACzB,CAAC;IAEDO,OAAO,EAAEA,CAACC,KAAK,EAAEC,UAAU,EAAEC,OAAO,KAAK;MACvC;MACA,IAAIA,OAAO,EAAEV,YAAY,EAAE;QACzBnB,WAAW,CAACuB,YAAY,CAAC9B,SAAS,CAACuB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEY,OAAO,CAACV,YAAY,CAAC;QAC5E,IAAIlB,eAAe,EAAE;UACnBD,WAAW,CAACuB,YAAY,CAAC9B,SAAS,CAAC+B,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE4B,OAAO,CAACV,YAAY,CAAC;QAC1F;MACF;;MAEA;MACA,MAAMW,OAAO,GAAG,OAAOzB,YAAY,KAAK,UAAU,GAC9CA,YAAY,CAACsB,KAAK,CAAC,GAClBA,KAAK,YAAYI,KAAK,GAAGJ,KAAK,CAACG,OAAO,GAAGzB,YAAa;MAC3DT,KAAK,CAAC+B,KAAK,CAACG,OAAO,CAAC;IACtB,CAAC;IAEDpB,SAAS,EAAEA,CAACsB,IAAI,EAAEnB,SAAS,KAAK;MAC9B;MACAb,WAAW,CAACuB,YAAY,CAAC9B,SAAS,CAACuB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEe,IAAI,CAAC;MAC5D,IAAI/B,eAAe,EAAE;QACnBD,WAAW,CAACuB,YAAY,CAAC9B,SAAS,CAAC+B,KAAK,CAACC,OAAO,CAACxB,eAAe,CAAC,EAAE+B,IAAI,CAAC;MAC1E;;MAEA;MACA,IAAIzB,eAAe,EAAE;QACnBV,YAAY,CAACoC,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;MACvC;;MAEA;MACA,IAAIxB,2BAA2B,EAAE;QAC/Bb,qBAAqB,CAACK,WAAW,CAAC;MACpC;MACA,IAAIS,8BAA8B,EAAE;QAClCf,wBAAwB,CAACM,WAAW,CAAC;MACvC;;MAEA;MACA,IAAIM,cAAc,EAAE;QAClBV,KAAK,CAACuC,OAAO,CAAC7B,cAAc,CAAC;MAC/B;;MAEA;MACA,IAAIK,eAAe,EAAE;QACnBA,eAAe,CAACqB,IAAI,EAAEnB,SAAS,EAAEb,WAAW,CAAC;MAC/C;IACF;EACF,CAAC;AACH;;AAEA;AACA;AACA;;AAgBA;AACA;AACA;AACA,OAAO,SAASoC,qBAAqBA,CACnCrC,MAAsE,EACtEC,WAAwB,EAC4C;EACpE,MAAM;IACJE,UAAU;IACVa,QAAQ;IACRsB,cAAc;IACdhC,YAAY,GAAG,kBAAkB;IACjCC,cAAc;IACdgC,iBAAiB,GAAG;EACtB,CAAC,GAAGvC,MAAM;EAEV,OAAO;IACLG,UAAU;IAEVU,QAAQ,EAAE,MAAOC,SAAS,IAAK;MAC7B,MAAMb,WAAW,CAACc,aAAa,CAAC;QAAEC;MAAS,CAAC,CAAC;MAC7C,MAAMwB,QAAQ,GAAGvC,WAAW,CAACoB,YAAY,CAAQL,QAAQ,CAAC;MAE1D,IAAIsB,cAAc,EAAE;QAClBrC,WAAW,CAACuB,YAAY,CAAQR,QAAQ,EAAEsB,cAAc,CAACE,QAAQ,EAAE1B,SAAS,CAAC,CAAC;MAChF;MAEA,OAAO;QAAE0B;MAAS,CAAC;IACrB,CAAC;IAEDb,OAAO,EAAEA,CAACC,KAAK,EAAEC,UAAU,EAAEC,OAAO,KAAK;MACvC,IAAIA,OAAO,EAAEU,QAAQ,KAAKC,SAAS,EAAE;QACnCxC,WAAW,CAACuB,YAAY,CAACR,QAAQ,EAAEc,OAAO,CAACU,QAAQ,CAAC;MACtD;MACA3C,KAAK,CAAC+B,KAAK,CAACA,KAAK,YAAYI,KAAK,GAAGJ,KAAK,CAACG,OAAO,GAAGzB,YAAY,CAAC;IACpE,CAAC;IAEDK,SAAS,EAAGsB,IAAI,IAAK;MACnBhC,WAAW,CAACuB,YAAY,CAACR,QAAQ,EAAEiB,IAAI,CAAC;MAExC,KAAK,MAAMd,GAAG,IAAIoB,iBAAiB,EAAE;QACnCtC,WAAW,CAACsC,iBAAiB,CAAC;UAAEvB,QAAQ,EAAEG;QAAI,CAAC,CAAC;MAClD;MAEA,IAAIZ,cAAc,EAAE;QAClBV,KAAK,CAACuC,OAAO,CAAC7B,cAAc,CAAC;MAC/B;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ import { useOxy } from "../../context/OxyContext.js";
|
|
|
6
6
|
import { toast } from "../../../lib/sonner.js";
|
|
7
7
|
import { refreshAvatarInStore } from "../../utils/avatarUtils.js";
|
|
8
8
|
import { useAuthStore } from "../../stores/authStore.js";
|
|
9
|
+
import { authenticatedApiCall } from "../../utils/authHelpers.js";
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* Update user profile with optimistic updates and offline queue support
|
|
@@ -19,37 +20,7 @@ export const useUpdateProfile = () => {
|
|
|
19
20
|
const queryClient = useQueryClient();
|
|
20
21
|
return useMutation({
|
|
21
22
|
mutationFn: async updates => {
|
|
22
|
-
|
|
23
|
-
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
24
|
-
try {
|
|
25
|
-
// Try to get token for the session
|
|
26
|
-
await oxyServices.getTokenBySession(activeSessionId);
|
|
27
|
-
} catch (tokenError) {
|
|
28
|
-
// If getting token fails, might be an offline session - try syncing
|
|
29
|
-
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
30
|
-
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
31
|
-
// Session sync should be handled by the app layer
|
|
32
|
-
throw new Error('Session needs to be synced. Please try again.');
|
|
33
|
-
} else {
|
|
34
|
-
throw tokenError;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
try {
|
|
39
|
-
return await oxyServices.updateProfile(updates);
|
|
40
|
-
} catch (error) {
|
|
41
|
-
const errorMessage = error?.message || '';
|
|
42
|
-
const status = error?.status || error?.response?.status;
|
|
43
|
-
|
|
44
|
-
// Handle authentication errors
|
|
45
|
-
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
46
|
-
// Session sync should be handled by the app layer
|
|
47
|
-
throw new Error('Authentication failed. Please sign in again.');
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// TanStack Query will automatically retry on network errors
|
|
51
|
-
throw error;
|
|
52
|
-
}
|
|
23
|
+
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.updateProfile(updates));
|
|
53
24
|
},
|
|
54
25
|
// Optimistic update
|
|
55
26
|
onMutate: async updates => {
|
|
@@ -124,21 +95,7 @@ export const useUploadAvatar = () => {
|
|
|
124
95
|
const queryClient = useQueryClient();
|
|
125
96
|
return useMutation({
|
|
126
97
|
mutationFn: async file => {
|
|
127
|
-
|
|
128
|
-
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
129
|
-
try {
|
|
130
|
-
await oxyServices.getTokenBySession(activeSessionId);
|
|
131
|
-
} catch (tokenError) {
|
|
132
|
-
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
133
|
-
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
134
|
-
// Session sync should be handled by the app layer
|
|
135
|
-
throw new Error('Session needs to be synced. Please try again.');
|
|
136
|
-
} else {
|
|
137
|
-
throw tokenError;
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
try {
|
|
98
|
+
return authenticatedApiCall(oxyServices, activeSessionId, async () => {
|
|
142
99
|
// Upload file first
|
|
143
100
|
const uploadResult = await oxyServices.assetUpload(file, 'public');
|
|
144
101
|
const fileId = uploadResult?.file?.id || uploadResult?.id || uploadResult;
|
|
@@ -150,19 +107,7 @@ export const useUploadAvatar = () => {
|
|
|
150
107
|
return await oxyServices.updateProfile({
|
|
151
108
|
avatar: fileId
|
|
152
109
|
});
|
|
153
|
-
}
|
|
154
|
-
const errorMessage = error?.message || '';
|
|
155
|
-
const status = error?.status || error?.response?.status;
|
|
156
|
-
|
|
157
|
-
// Handle authentication errors
|
|
158
|
-
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
159
|
-
// Session sync should be handled by the app layer
|
|
160
|
-
throw new Error('Authentication failed. Please sign in again.');
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
// TanStack Query will automatically retry on network errors
|
|
164
|
-
throw error;
|
|
165
|
-
}
|
|
110
|
+
});
|
|
166
111
|
},
|
|
167
112
|
onMutate: async file => {
|
|
168
113
|
await queryClient.cancelQueries({
|
|
@@ -290,38 +235,7 @@ export const useUpdatePrivacySettings = () => {
|
|
|
290
235
|
if (!targetUserId) {
|
|
291
236
|
throw new Error('User ID is required');
|
|
292
237
|
}
|
|
293
|
-
|
|
294
|
-
// Ensure we have a valid token before making the request
|
|
295
|
-
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
296
|
-
try {
|
|
297
|
-
// Try to get token for the session
|
|
298
|
-
await oxyServices.getTokenBySession(activeSessionId);
|
|
299
|
-
} catch (tokenError) {
|
|
300
|
-
// If getting token fails, might be an offline session - try syncing
|
|
301
|
-
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
302
|
-
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
303
|
-
// Session sync should be handled by the app layer
|
|
304
|
-
throw new Error('Session needs to be synced. Please try again.');
|
|
305
|
-
} else {
|
|
306
|
-
throw tokenError;
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
try {
|
|
311
|
-
return await oxyServices.updatePrivacySettings(settings, targetUserId);
|
|
312
|
-
} catch (error) {
|
|
313
|
-
const errorMessage = error?.message || '';
|
|
314
|
-
const status = error?.status || error?.response?.status;
|
|
315
|
-
|
|
316
|
-
// Handle authentication errors
|
|
317
|
-
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
318
|
-
// Session sync should be handled by the app layer
|
|
319
|
-
throw new Error('Authentication failed. Please sign in again.');
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
// TanStack Query will automatically retry on network errors
|
|
323
|
-
throw error;
|
|
324
|
-
}
|
|
238
|
+
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.updatePrivacySettings(settings, targetUserId));
|
|
325
239
|
},
|
|
326
240
|
// Optimistic update
|
|
327
241
|
onMutate: async ({
|
|
@@ -418,6 +332,10 @@ export const useUpdatePrivacySettings = () => {
|
|
|
418
332
|
});
|
|
419
333
|
};
|
|
420
334
|
|
|
335
|
+
/** Uploaded file data structure from API */
|
|
336
|
+
|
|
337
|
+
/** Upload result type that supports both single file and batch responses */
|
|
338
|
+
|
|
421
339
|
/**
|
|
422
340
|
* Upload file with authentication handling and progress tracking
|
|
423
341
|
*/
|
|
@@ -433,37 +351,7 @@ export const useUploadFile = () => {
|
|
|
433
351
|
metadata,
|
|
434
352
|
onProgress
|
|
435
353
|
}) => {
|
|
436
|
-
|
|
437
|
-
if (!oxyServices.hasValidToken() && activeSessionId) {
|
|
438
|
-
try {
|
|
439
|
-
// Try to get token for the session
|
|
440
|
-
await oxyServices.getTokenBySession(activeSessionId);
|
|
441
|
-
} catch (tokenError) {
|
|
442
|
-
// If getting token fails, might be an offline session - try syncing
|
|
443
|
-
const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
|
|
444
|
-
if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
|
|
445
|
-
// Session sync should be handled by the app layer
|
|
446
|
-
throw new Error('Session needs to be synced. Please try again.');
|
|
447
|
-
} else {
|
|
448
|
-
throw tokenError;
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
}
|
|
452
|
-
try {
|
|
453
|
-
return await oxyServices.assetUpload(file, visibility, metadata, onProgress);
|
|
454
|
-
} catch (error) {
|
|
455
|
-
const errorMessage = error?.message || '';
|
|
456
|
-
const status = error?.status || error?.response?.status;
|
|
457
|
-
|
|
458
|
-
// Handle authentication errors
|
|
459
|
-
if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
|
|
460
|
-
// Session sync should be handled by the app layer
|
|
461
|
-
throw new Error('Authentication failed. Please sign in again.');
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
// TanStack Query will automatically retry on network errors
|
|
465
|
-
throw error;
|
|
466
|
-
}
|
|
354
|
+
return authenticatedApiCall(oxyServices, activeSessionId, () => oxyServices.assetUpload(file, visibility, metadata, onProgress));
|
|
467
355
|
}
|
|
468
356
|
});
|
|
469
357
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMutation","useQueryClient","queryKeys","invalidateAccountQueries","invalidateUserQueries","useOxy","toast","refreshAvatarInStore","useAuthStore","useUpdateProfile","oxyServices","activeSessionId","user","queryClient","mutationFn","updates","hasValidToken","getTokenBySession","tokenError","errorMessage","Error","message","String","includes","updateProfile","error","status","response","onMutate","cancelQueries","queryKey","accounts","current","previousUser","getQueryData","setQueryData","users","profile","onError","context","onSuccess","data","getState","setUser","avatar","useUploadAvatar","file","uploadResult","assetUpload","fileId","id","optimisticUser","uri","success","useUpdateAccountSettings","settings","privacySettings","onSettled","invalidateQueries","useUpdatePrivacySettings","userId","targetUserId","updatePrivacySettings","privacy","previousPrivacySettings","currentUser","updatedUser","useUploadFile","visibility","metadata","onProgress"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/useAccountMutations.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useMutation","useQueryClient","queryKeys","invalidateAccountQueries","invalidateUserQueries","useOxy","toast","refreshAvatarInStore","useAuthStore","authenticatedApiCall","useUpdateProfile","oxyServices","activeSessionId","user","queryClient","mutationFn","updates","updateProfile","onMutate","cancelQueries","queryKey","accounts","current","previousUser","getQueryData","setQueryData","users","profile","onError","error","context","Error","message","onSuccess","data","getState","setUser","avatar","useUploadAvatar","file","uploadResult","assetUpload","fileId","id","optimisticUser","uri","success","useUpdateAccountSettings","settings","privacySettings","onSettled","invalidateQueries","useUpdatePrivacySettings","userId","targetUserId","updatePrivacySettings","privacy","previousPrivacySettings","currentUser","updatedUser","useUploadFile","visibility","metadata","onProgress"],"sourceRoot":"../../../../../src","sources":["ui/hooks/mutations/useAccountMutations.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,cAAc,QAAQ,uBAAuB;AAEnE,SAASC,SAAS,EAAEC,wBAAwB,EAAEC,qBAAqB,QAAQ,yBAAsB;AACjG,SAASC,MAAM,QAAQ,6BAA0B;AACjD,SAASC,KAAK,QAAQ,wBAAqB;AAC3C,SAASC,oBAAoB,QAAQ,4BAAyB;AAC9D,SAASC,YAAY,QAAQ,2BAAwB;AACrD,SAASC,oBAAoB,QAAQ,4BAAyB;;AAE9D;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAM;IAAEC,WAAW;IAAEC,eAAe;IAAEC;EAAK,CAAC,GAAGR,MAAM,CAAC,CAAC;EACvD,MAAMS,WAAW,GAAGb,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBe,UAAU,EAAE,MAAOC,OAAsB,IAAK;MAC5C,OAAOP,oBAAoB,CACzBE,WAAW,EACXC,eAAe,EACf,MAAMD,WAAW,CAACM,aAAa,CAACD,OAAO,CACzC,CAAC;IACH,CAAC;IACD;IACAE,QAAQ,EAAE,MAAOF,OAAO,IAAK;MAC3B;MACA,MAAMF,WAAW,CAACK,aAAa,CAAC;QAAEC,QAAQ,EAAElB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;;MAE3E;MACA,MAAMC,YAAY,GAAGT,WAAW,CAACU,YAAY,CAAOtB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIC,YAAY,EAAE;QAChBT,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf,GAAGP;QACL,CAAC,CAAC;;QAEF;QACA,IAAIJ,eAAe,EAAE;UACnBE,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACwB,KAAK,CAACC,OAAO,CAACf,eAAe,CAAC,EAAE;YACvE,GAAGW,YAAY;YACf,GAAGP;UACL,CAAC,CAAC;QACJ;MACF;MAEA,OAAO;QAAEO;MAAa,CAAC;IACzB,CAAC;IACD;IACAK,OAAO,EAAEA,CAACC,KAAK,EAAEb,OAAO,EAAEc,OAAO,KAAK;MACpC,IAAIA,OAAO,EAAEP,YAAY,EAAE;QACzBT,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEQ,OAAO,CAACP,YAAY,CAAC;QAC5E,IAAIX,eAAe,EAAE;UACnBE,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACwB,KAAK,CAACC,OAAO,CAACf,eAAe,CAAC,EAAEkB,OAAO,CAACP,YAAY,CAAC;QAC1F;MACF;MACAjB,KAAK,CAACuB,KAAK,CAACA,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAACG,OAAO,GAAG,0BAA0B,CAAC;IAClF,CAAC;IACD;IACAC,SAAS,EAAEA,CAACC,IAAI,EAAElB,OAAO,KAAK;MAC5B;MACAF,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEY,IAAI,CAAC;MAC5D,IAAItB,eAAe,EAAE;QACnBE,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACwB,KAAK,CAACC,OAAO,CAACf,eAAe,CAAC,EAAEsB,IAAI,CAAC;MAC1E;;MAEA;MACA1B,YAAY,CAAC2B,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;;MAErC;MACA,IAAIlB,OAAO,CAACqB,MAAM,IAAIzB,eAAe,IAAID,WAAW,EAAE;QACpDJ,oBAAoB,CAACK,eAAe,EAAEI,OAAO,CAACqB,MAAM,EAAE1B,WAAW,CAAC;MACpE;;MAEA;MACAP,qBAAqB,CAACU,WAAW,CAAC;MAClCX,wBAAwB,CAACW,WAAW,CAAC;IACvC;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMwB,eAAe,GAAGA,CAAA,KAAM;EACnC,MAAM;IAAE3B,WAAW;IAAEC;EAAgB,CAAC,GAAGP,MAAM,CAAC,CAAC;EACjD,MAAMS,WAAW,GAAGb,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBe,UAAU,EAAE,MAAOwB,IAAkE,IAAK;MACxF,OAAO9B,oBAAoB,CAAOE,WAAW,EAAEC,eAAe,EAAE,YAAY;QAC1E;QACA,MAAM4B,YAAY,GAAG,MAAM7B,WAAW,CAAC8B,WAAW,CAACF,IAAI,EAAS,QAAQ,CAAC;QACzE,MAAMG,MAAM,GAAGF,YAAY,EAAED,IAAI,EAAEI,EAAE,IAAIH,YAAY,EAAEG,EAAE,IAAIH,YAAY;QAEzE,IAAI,CAACE,MAAM,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;UACzC,MAAM,IAAIX,KAAK,CAAC,0CAA0C,CAAC;QAC7D;;QAEA;QACA,OAAO,MAAMpB,WAAW,CAACM,aAAa,CAAC;UAAEoB,MAAM,EAAEK;QAAO,CAAC,CAAC;MAC5D,CAAC,CAAC;IACJ,CAAC;IACDxB,QAAQ,EAAE,MAAOqB,IAAI,IAAK;MACxB,MAAMzB,WAAW,CAACK,aAAa,CAAC;QAAEC,QAAQ,EAAElB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;MAC3E,MAAMC,YAAY,GAAGT,WAAW,CAACU,YAAY,CAAOtB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAIC,YAAY,EAAE;QAChB,MAAMqB,cAAc,GAAG;UACrB,GAAGrB,YAAY;UACfc,MAAM,EAAEE,IAAI,CAACM,GAAG,CAAE;QACpB,CAAC;QACD/B,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEsB,cAAc,CAAC;QAC5E,IAAIhC,eAAe,EAAE;UACnBE,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACwB,KAAK,CAACC,OAAO,CAACf,eAAe,CAAC,EAAEgC,cAAc,CAAC;QAC1F;MACF;MAEA,OAAO;QAAErB;MAAa,CAAC;IACzB,CAAC;IACDK,OAAO,EAAEA,CAACC,KAAK,EAAEU,IAAI,EAAET,OAAO,KAAK;MACjC,IAAIA,OAAO,EAAEP,YAAY,EAAE;QACzBT,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEQ,OAAO,CAACP,YAAY,CAAC;QAC5E,IAAIX,eAAe,EAAE;UACnBE,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACwB,KAAK,CAACC,OAAO,CAACf,eAAe,CAAC,EAAEkB,OAAO,CAACP,YAAY,CAAC;QAC1F;MACF;MACAjB,KAAK,CAACuB,KAAK,CAACA,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAACG,OAAO,GAAG,yBAAyB,CAAC;IACjF,CAAC;IACDC,SAAS,EAAGC,IAAI,IAAK;MACnBpB,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEY,IAAI,CAAC;MAC5D,IAAItB,eAAe,EAAE;QACnBE,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACwB,KAAK,CAACC,OAAO,CAACf,eAAe,CAAC,EAAEsB,IAAI,CAAC;MAC1E;;MAEA;MACA1B,YAAY,CAAC2B,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;;MAErC;MACA,IAAIA,IAAI,EAAEG,MAAM,IAAIzB,eAAe,IAAID,WAAW,EAAE;QAClDJ,oBAAoB,CAACK,eAAe,EAAEsB,IAAI,CAACG,MAAM,EAAE1B,WAAW,CAAC;MACjE;;MAEA;MACAP,qBAAqB,CAACU,WAAW,CAAC;MAClCX,wBAAwB,CAACW,WAAW,CAAC;MACrCR,KAAK,CAACwC,OAAO,CAAC,6BAA6B,CAAC;IAC9C;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAGA,CAAA,KAAM;EAC5C,MAAM;IAAEpC,WAAW;IAAEC;EAAgB,CAAC,GAAGP,MAAM,CAAC,CAAC;EACjD,MAAMS,WAAW,GAAGb,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBe,UAAU,EAAE,MAAOiC,QAA6B,IAAK;MACnD,OAAO,MAAMrC,WAAW,CAACM,aAAa,CAAC;QAAEgC,eAAe,EAAED;MAAS,CAAC,CAAC;IACvE,CAAC;IACD9B,QAAQ,EAAE,MAAO8B,QAAQ,IAAK;MAC5B,MAAMlC,WAAW,CAACK,aAAa,CAAC;QAAEC,QAAQ,EAAElB,SAAS,CAACmB,QAAQ,CAAC2B,QAAQ,CAAC;MAAE,CAAC,CAAC;MAC5E,MAAMzB,YAAY,GAAGT,WAAW,CAACU,YAAY,CAAOtB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;MAEjF,IAAIC,YAAY,EAAE;QAChBT,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf0B,eAAe,EAAE;YACf,GAAG1B,YAAY,CAAC0B,eAAe;YAC/B,GAAGD;UACL;QACF,CAAC,CAAC;MACJ;MAEA,OAAO;QAAEzB;MAAa,CAAC;IACzB,CAAC;IACDK,OAAO,EAAEA,CAACC,KAAK,EAAEmB,QAAQ,EAAElB,OAAO,KAAK;MACrC,IAAIA,OAAO,EAAEP,YAAY,EAAE;QACzBT,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEQ,OAAO,CAACP,YAAY,CAAC;MAC9E;MACAjB,KAAK,CAACuB,KAAK,CAACA,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAACG,OAAO,GAAG,2BAA2B,CAAC;IACnF,CAAC;IACDC,SAAS,EAAGC,IAAI,IAAK;MACnBpB,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEY,IAAI,CAAC;;MAE5D;MACA1B,YAAY,CAAC2B,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACF,IAAI,CAAC;MAErC/B,wBAAwB,CAACW,WAAW,CAAC;MACrCR,KAAK,CAACwC,OAAO,CAAC,+BAA+B,CAAC;IAChD,CAAC;IACDI,SAAS,EAAEA,CAAA,KAAM;MACfpC,WAAW,CAACqC,iBAAiB,CAAC;QAAE/B,QAAQ,EAAElB,SAAS,CAACmB,QAAQ,CAAC2B,QAAQ,CAAC;MAAE,CAAC,CAAC;IAC5E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMI,wBAAwB,GAAGA,CAAA,KAAM;EAC5C,MAAM;IAAEzC,WAAW;IAAEC,eAAe;IAAEC;EAAK,CAAC,GAAGR,MAAM,CAAC,CAAC;EACvD,MAAMS,WAAW,GAAGb,cAAc,CAAC,CAAC;EAEpC,OAAOD,WAAW,CAAC;IACjBe,UAAU,EAAE,MAAAA,CAAO;MAAEiC,QAAQ;MAAEK;IAA2D,CAAC,KAAK;MAC9F,MAAMC,YAAY,GAAGD,MAAM,IAAIxC,IAAI,EAAE8B,EAAE;MACvC,IAAI,CAACW,YAAY,EAAE;QACjB,MAAM,IAAIvB,KAAK,CAAC,qBAAqB,CAAC;MACxC;MAEA,OAAOtB,oBAAoB,CACzBE,WAAW,EACXC,eAAe,EACf,MAAMD,WAAW,CAAC4C,qBAAqB,CAACP,QAAQ,EAAEM,YAAY,CAChE,CAAC;IACH,CAAC;IACD;IACApC,QAAQ,EAAE,MAAAA,CAAO;MAAE8B,QAAQ;MAAEK;IAAO,CAAC,KAAK;MACxC,MAAMC,YAAY,GAAGD,MAAM,IAAIxC,IAAI,EAAE8B,EAAE;MACvC,IAAI,CAACW,YAAY,EAAE;;MAEnB;MACA,MAAMxC,WAAW,CAACK,aAAa,CAAC;QAAEC,QAAQ,EAAElB,SAAS,CAACsD,OAAO,CAACR,QAAQ,CAACM,YAAY;MAAE,CAAC,CAAC;MACvF,MAAMxC,WAAW,CAACK,aAAa,CAAC;QAAEC,QAAQ,EAAElB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;;MAE3E;MACA,MAAMmC,uBAAuB,GAAG3C,WAAW,CAACU,YAAY,CAACtB,SAAS,CAACsD,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,CAAC;MAClG,MAAM/B,YAAY,GAAGT,WAAW,CAACU,YAAY,CAAOtB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;;MAEjF;MACA,IAAImC,uBAAuB,EAAE;QAC3B3C,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACsD,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,EAAE;UACjE,GAAGG,uBAAuB;UAC1B,GAAGT;QACL,CAAC,CAAC;MACJ;;MAEA;MACA,IAAIzB,YAAY,EAAE;QAChBT,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAE;UAC3D,GAAGC,YAAY;UACf0B,eAAe,EAAE;YACf,GAAG1B,YAAY,CAAC0B,eAAe;YAC/B,GAAGD;UACL;QACF,CAAC,CAAC;MACJ;MAEA,OAAO;QAAES,uBAAuB;QAAElC;MAAa,CAAC;IAClD,CAAC;IACD;IACAK,OAAO,EAAEA,CAACC,KAAK,EAAE;MAAEwB;IAAO,CAAC,EAAEvB,OAAO,KAAK;MACvC,MAAMwB,YAAY,GAAGD,MAAM,IAAIxC,IAAI,EAAE8B,EAAE;MACvC,IAAIb,OAAO,EAAE2B,uBAAuB,IAAIH,YAAY,EAAE;QACpDxC,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACsD,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,EAAExB,OAAO,CAAC2B,uBAAuB,CAAC;MACrG;MACA,IAAI3B,OAAO,EAAEP,YAAY,EAAE;QACzBT,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEQ,OAAO,CAACP,YAAY,CAAC;MAC9E;MACAjB,KAAK,CAACuB,KAAK,CAACA,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAACG,OAAO,GAAG,mCAAmC,CAAC;IAC3F,CAAC;IACD;IACAC,SAAS,EAAEA,CAACC,IAAI,EAAE;MAAEmB;IAAO,CAAC,KAAK;MAC/B,MAAMC,YAAY,GAAGD,MAAM,IAAIxC,IAAI,EAAE8B,EAAE;MACvC,IAAIW,YAAY,EAAE;QAChBxC,WAAW,CAACW,YAAY,CAACvB,SAAS,CAACsD,OAAO,CAACR,QAAQ,CAACM,YAAY,CAAC,EAAEpB,IAAI,CAAC;MAC1E;MACA;MACA,MAAMwB,WAAW,GAAG5C,WAAW,CAACU,YAAY,CAAOtB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC;MAChF,IAAIoC,WAAW,EAAE;QACf,MAAMC,WAAiB,GAAG;UACxB,GAAGD,WAAW;UACdT,eAAe,EAAEf;QACnB,CAAC;QACDpB,WAAW,CAACW,YAAY,CAAOvB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC,CAAC,EAAEqC,WAAW,CAAC;;QAEzE;QACAnD,YAAY,CAAC2B,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACuB,WAAW,CAAC;MAC9C;MACAxD,wBAAwB,CAACW,WAAW,CAAC;IACvC,CAAC;IACD;IACAoC,SAAS,EAAEA,CAAChB,IAAI,EAAEL,KAAK,EAAE;MAAEwB;IAAO,CAAC,KAAK;MACtC,MAAMC,YAAY,GAAGD,MAAM,IAAIxC,IAAI,EAAE8B,EAAE;MACvC,IAAIW,YAAY,EAAE;QAChBxC,WAAW,CAACqC,iBAAiB,CAAC;UAAE/B,QAAQ,EAAElB,SAAS,CAACsD,OAAO,CAACR,QAAQ,CAACM,YAAY;QAAE,CAAC,CAAC;MACvF;MACAxC,WAAW,CAACqC,iBAAiB,CAAC;QAAE/B,QAAQ,EAAElB,SAAS,CAACmB,QAAQ,CAACC,OAAO,CAAC;MAAE,CAAC,CAAC;IAC3E;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;;AAYA;;AAOA;AACA;AACA;AACA,OAAO,MAAMsC,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAM;IAAEjD,WAAW;IAAEC;EAAgB,CAAC,GAAGP,MAAM,CAAC,CAAC;EAEjD,OAAOL,WAAW,CAAC;IACjBe,UAAU,EAAE,MAAAA,CAAO;MACjBwB,IAAI;MACJsB,UAAU;MACVC,QAAQ;MACRC;IAMF,CAAC,KAAK;MACJ,OAAOtD,oBAAoB,CACzBE,WAAW,EACXC,eAAe,EACf,MAAMD,WAAW,CAAC8B,WAAW,CAACF,IAAI,EAASsB,UAAU,EAAEC,QAAQ,EAAEC,UAAU,CAC7E,CAAC;IACH;EACF,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
|