@oxy.so/services 12.10.0 → 12.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/OxyAuthChooser.js +8 -1
- package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/commonjs/ui/components/accountSettings/AccountCategoriesSection.js +142 -0
- package/lib/commonjs/ui/components/accountSettings/AccountCategoriesSection.js.map +1 -0
- package/lib/commonjs/ui/components/accountSettings/AccountSettings.js +361 -0
- package/lib/commonjs/ui/components/accountSettings/AccountSettings.js.map +1 -0
- package/lib/commonjs/ui/context/OxyContext.js +15 -2
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAvatarPicker.js +54 -48
- package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +16 -237
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js +23 -4
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ManageAccountScreen.js +11 -3
- package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/index.js +7 -0
- package/lib/commonjs/ui/screens/index.js.map +1 -1
- package/lib/module/ui/components/OxyAuthChooser.js +8 -1
- package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/module/ui/components/accountSettings/AccountCategoriesSection.js +134 -0
- package/lib/module/ui/components/accountSettings/AccountCategoriesSection.js.map +1 -0
- package/lib/module/ui/components/accountSettings/AccountSettings.js +355 -0
- package/lib/module/ui/components/accountSettings/AccountSettings.js.map +1 -0
- package/lib/module/ui/context/OxyContext.js +15 -2
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/hooks/useAvatarPicker.js +53 -48
- package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
- package/lib/module/ui/screens/AccountSettingsScreen.js +16 -235
- package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/ChangeAvatarScreen.js +23 -4
- package/lib/module/ui/screens/ChangeAvatarScreen.js.map +1 -1
- package/lib/module/ui/screens/ManageAccountScreen.js +11 -3
- package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/index.js +4 -0
- package/lib/module/ui/screens/index.js.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/accountSettings/AccountCategoriesSection.d.ts +26 -0
- package/lib/typescript/commonjs/ui/components/accountSettings/AccountCategoriesSection.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/accountSettings/AccountSettings.d.ts +80 -0
- package/lib/typescript/commonjs/ui/components/accountSettings/AccountSettings.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts +22 -1
- package/lib/typescript/commonjs/ui/hooks/useAvatarPicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts +4 -5
- package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ChangeAvatarScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/index.d.ts +1 -0
- package/lib/typescript/commonjs/ui/screens/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/accountSettings/AccountCategoriesSection.d.ts +26 -0
- package/lib/typescript/module/ui/components/accountSettings/AccountCategoriesSection.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/accountSettings/AccountSettings.d.ts +80 -0
- package/lib/typescript/module/ui/components/accountSettings/AccountSettings.d.ts.map +1 -0
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts +22 -1
- package/lib/typescript/module/ui/hooks/useAvatarPicker.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts +4 -5
- package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ChangeAvatarScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/index.d.ts +1 -0
- package/lib/typescript/module/ui/screens/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/ui/components/OxyAuthChooser.tsx +9 -1
- package/src/ui/components/accountSettings/AccountCategoriesSection.tsx +180 -0
- package/src/ui/components/accountSettings/AccountSettings.tsx +421 -0
- package/src/ui/components/accountSettings/__tests__/AccountSettings.test.tsx +101 -0
- package/src/ui/context/OxyContext.tsx +11 -2
- package/src/ui/hooks/useAvatarPicker.ts +65 -69
- package/src/ui/screens/AccountSettingsScreen.tsx +13 -277
- package/src/ui/screens/ChangeAvatarScreen.tsx +25 -6
- package/src/ui/screens/ManageAccountScreen.tsx +26 -17
- package/src/ui/screens/index.ts +8 -0
|
@@ -240,7 +240,14 @@ const OxyAuthChooser = ({
|
|
|
240
240
|
*/
|
|
241
241
|
const handleSignOut = (0, _react.useCallback)(async () => {
|
|
242
242
|
if (!controller) return;
|
|
243
|
-
|
|
243
|
+
let outcome;
|
|
244
|
+
try {
|
|
245
|
+
outcome = await controller.runDeviceMutation(() => logout());
|
|
246
|
+
} catch {
|
|
247
|
+
// `runDeviceMutation` rethrows; the caller is `void handleSignOut()`.
|
|
248
|
+
_toast.toast.error(t('common.errors.signOutFailed'));
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
244
251
|
if (!outcome.ran) return;
|
|
245
252
|
if (outcome.value.status === 'failed') {
|
|
246
253
|
_toast.toast.error(t('common.errors.signOutFailed'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_toast","_surfaces","_theme","_core","_reactQuery","_oxyRuntimeContext","_useDeviceSwitcher","_useI18n","_accountDialogManager","_commonsStoreLinks","_useServicesQueries","_AccountsMenuView","_interopRequireDefault","_SignInRequestView","_signInFailureMessage","_types","_accountDialogSnapshot","_OxySignInPanel","_OxySignUpPanel","_jsxRuntime","e","__esModule","default","ACCOUNTS_APP_URL","toastedFailureAttempt","WeakMap","OxyAuthChooser","onComplete","accountDialogController","controller","showBottomSheet","oxyServices","logout","openAvatarPicker","user","useOxy","theme","useTheme","t","useI18n","queryClient","useQueryClient","principals","useDeviceSwitcher","subscribe","useCallback","listener","undefined","maybeToastSignInError","signIn","getSnapshot","phase","inline","get","attempt","set","message","signInFailureMessage","failure","toast","error","EMPTY_ACCOUNT_DIALOG_SNAPSHOT","snapshot","useSyncExternalStore","view","consumerHooks","subscribeToAccountDialogConsumerHooks","getAccountDialogConsumerHooks","handleActivate","contextId","outcome","chooseContext","catch","invalidateQueries","handleRemoveContext","isDeviceMutationInFlight","group","find","principal","contexts","some","context","row","confirmed","surfaces","confirm","title","description","person","displayName","account","confirmLabel","cancelLabel","destructive","removed","signOutContext","success","handleRemovePrincipal","principalId","name","signOutPrincipal","handleSignOut","runDeviceMutation","ran","value","status","openExternal","url","Promise","resolve","then","Linking","openURL","handleManage","handleAdd","onAddAccount","add","handlers","useMemo","onActivate","onRemoveContext","onRemovePrincipal","onAdd","onManage","onEditAvatar","hero","buildHero","colors","primary","alternatives","onShowQr","showQr","onGetCommons","getCommonsAcquisitionUrl","Platform","OS","onCreateAccount","startSignup","showsAccountMenu","storageQuery","useAccountStorageUsage","enabled","storage","data","usedBytes","totalUsedBytes","limitBytes","totalLimitBytes","categories","plan","accountMenu","openUrl","openSheet","config","onOpenPlan","onOpenSettings","onOpenData","screen","props","section","onManageStorage","onUpgradeStorage","onHelp","onPrivacy","initialStep","onTerms","onSignOut","sections","menuItems","length","key","items","menuSections","filter","map","item","onPress","disabled","keepOpen","jsx","menu","onRetry","retrySignIn","OxySignUpPanel","host","onSignedIn","onSignIn","setView","OxySignInPanel","fallbackAccent","handle","getNormalizedUserHandle","trim","addressLine","email","toLowerCase","endsWith","avatarUrl","avatar","assets","publicUrl","accentHex","resolveAccentHex","color","_default","exports"],"sourceRoot":"../../../../src","sources":["ui/components/OxyAuthChooser.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_toast","_surfaces","_theme","_core","_reactQuery","_oxyRuntimeContext","_useDeviceSwitcher","_useI18n","_accountDialogManager","_commonsStoreLinks","_useServicesQueries","_AccountsMenuView","_interopRequireDefault","_SignInRequestView","_signInFailureMessage","_types","_accountDialogSnapshot","_OxySignInPanel","_OxySignUpPanel","_jsxRuntime","e","__esModule","default","ACCOUNTS_APP_URL","toastedFailureAttempt","WeakMap","OxyAuthChooser","onComplete","accountDialogController","controller","showBottomSheet","oxyServices","logout","openAvatarPicker","user","useOxy","theme","useTheme","t","useI18n","queryClient","useQueryClient","principals","useDeviceSwitcher","subscribe","useCallback","listener","undefined","maybeToastSignInError","signIn","getSnapshot","phase","inline","get","attempt","set","message","signInFailureMessage","failure","toast","error","EMPTY_ACCOUNT_DIALOG_SNAPSHOT","snapshot","useSyncExternalStore","view","consumerHooks","subscribeToAccountDialogConsumerHooks","getAccountDialogConsumerHooks","handleActivate","contextId","outcome","chooseContext","catch","invalidateQueries","handleRemoveContext","isDeviceMutationInFlight","group","find","principal","contexts","some","context","row","confirmed","surfaces","confirm","title","description","person","displayName","account","confirmLabel","cancelLabel","destructive","removed","signOutContext","success","handleRemovePrincipal","principalId","name","signOutPrincipal","handleSignOut","runDeviceMutation","ran","value","status","openExternal","url","Promise","resolve","then","Linking","openURL","handleManage","handleAdd","onAddAccount","add","handlers","useMemo","onActivate","onRemoveContext","onRemovePrincipal","onAdd","onManage","onEditAvatar","hero","buildHero","colors","primary","alternatives","onShowQr","showQr","onGetCommons","getCommonsAcquisitionUrl","Platform","OS","onCreateAccount","startSignup","showsAccountMenu","storageQuery","useAccountStorageUsage","enabled","storage","data","usedBytes","totalUsedBytes","limitBytes","totalLimitBytes","categories","plan","accountMenu","openUrl","openSheet","config","onOpenPlan","onOpenSettings","onOpenData","screen","props","section","onManageStorage","onUpgradeStorage","onHelp","onPrivacy","initialStep","onTerms","onSignOut","sections","menuItems","length","key","items","menuSections","filter","map","item","onPress","disabled","keepOpen","jsx","menu","onRetry","retrySignIn","OxySignUpPanel","host","onSignedIn","onSignIn","setView","OxySignInPanel","fallbackAccent","handle","getNormalizedUserHandle","trim","addressLine","email","toLowerCase","endsWith","avatarUrl","avatar","assets","publicUrl","accentHex","resolveAccentHex","color","_default","exports"],"sourceRoot":"../../../../src","sources":["ui/components/OxyAuthChooser.tsx"],"mappings":";;;;;;AAoCA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AAEA,IAAAO,kBAAA,GAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,qBAAA,GAAAV,OAAA;AAIA,IAAAW,kBAAA,GAAAX,OAAA;AACA,IAAAY,mBAAA,GAAAZ,OAAA;AACA,IAAAa,iBAAA,GAAAC,sBAAA,CAAAd,OAAA;AACA,IAAAe,kBAAA,GAAAD,sBAAA,CAAAd,OAAA;AACA,IAAAgB,qBAAA,GAAAhB,OAAA;AACA,IAAAiB,MAAA,GAAAjB,OAAA;AAQA,IAAAkB,sBAAA,GAAAlB,OAAA;AACA,IAAAmB,eAAA,GAAAnB,OAAA;AACA,IAAAoB,eAAA,GAAApB,OAAA;AAAyD,IAAAqB,WAAA,GAAArB,OAAA;AAAA,SAAAc,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAlEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAmCA,0DACA,MAAMG,gBAAgB,GAAG,yBAAyB;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,qBAAqB,GAAG,IAAIC,OAAO,CAAiB,CAAC;AAO3D;AACA;AACA;AACA;AACA;AACA,MAAMC,cAA6C,GAAGA,CAAC;EAAEC;AAAW,CAAC,KAAK;EACxE,MAAM;IACJC,uBAAuB,EAAEC,UAAU;IACnCC,eAAe;IACfC,WAAW;IACXC,MAAM;IACNC,gBAAgB;IAChBC;EACF,CAAC,GAAG,IAAAC,yBAAM,EAAC,CAAC;EACZ,MAAMC,KAAK,GAAG,IAAAC,eAAQ,EAAC,CAAC;EACxB,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,gBAAO,EAAC,CAAC;EACvB,MAAMC,WAAW,GAAG,IAAAC,0BAAc,EAAC,CAAC;EACpC;EACA;EACA;EACA,MAAM;IAAEC;EAAW,CAAC,GAAG,IAAAC,oCAAiB,EAAC,CAAC;;EAE1C;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAG,IAAAC,kBAAW,EAC1BC,QAAoB,IAAK;IACxB,IAAI,CAACjB,UAAU,EAAE,OAAO,MAAMkB,SAAS;IACvC,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;MAClC,MAAM;QAAEC;MAAO,CAAC,GAAGpB,UAAU,CAACqB,WAAW,CAAC,CAAC;MAC3C;MACA,IAAID,MAAM,CAACE,KAAK,KAAK,OAAO,IAAIF,MAAM,CAACG,MAAM,EAAE;MAC/C,IAAI5B,qBAAqB,CAAC6B,GAAG,CAACxB,UAAU,CAAC,KAAKoB,MAAM,CAACK,OAAO,EAAE;MAC9D9B,qBAAqB,CAAC+B,GAAG,CAAC1B,UAAU,EAAEoB,MAAM,CAACK,OAAO,CAAC;MACrD,MAAME,OAAO,GAAG,IAAAC,0CAAoB,EAACR,MAAM,CAACS,OAAO,EAAEpB,CAAC,CAAC;MACvD,IAAIkB,OAAO,EAAEG,YAAK,CAACC,KAAK,CAACJ,OAAO,CAAC;IACnC,CAAC;IACDR,qBAAqB,CAAC,CAAC;IACvB,OAAOnB,UAAU,CAACe,SAAS,CAAC,MAAM;MAChCI,qBAAqB,CAAC,CAAC;MACvBF,QAAQ,CAAC,CAAC;IACZ,CAAC,CAAC;EACJ,CAAC,EACD,CAACjB,UAAU,EAAES,CAAC,CAChB,CAAC;EACD,MAAMY,WAAW,GAAG,IAAAL,kBAAW,EAC7B,MAAOhB,UAAU,GAAGA,UAAU,CAACqB,WAAW,CAAC,CAAC,GAAGW,oDAA8B,EAC7E,CAAChC,UAAU,CACb,CAAC;EACD,MAAMiC,QAAQ,GAAG,IAAAC,2BAAoB,EAACnB,SAAS,EAAEM,WAAW,EAAEA,WAAW,CAAC;EAC1E,MAAM;IAAEc;EAAK,CAAC,GAAGF,QAAQ;EACzB,MAAMG,aAAa,GAAG,IAAAF,2BAAoB,EACxCG,2DAAqC,EACrCC,mDAA6B,EAC7B,MAAM,IACR,CAAC;EAED,MAAMC,cAAc,GAAG,IAAAvB,kBAAW,EAChC,MAAOwB,SAAiB,IAAK;IAC3B,IAAI,CAACxC,UAAU,EAAE;IACjB;IACA;IACA;IACA;IACA;IACA;IACA,MAAMyC,OAAO,GAAG,MAAMzC,UAAU,CAAC0C,aAAa,CAACF,SAAS,CAAC,CAACG,KAAK,CAAC,MAAM,QAAiB,CAAC;IACxF,QAAQF,OAAO;MACb;MACA;MACA,KAAK,MAAM;QACT;MACF;MACA;MACA,KAAK,YAAY;QACf;MACF;MACA;MACA,KAAK,SAAS;QACZ3C,UAAU,GAAG,CAAC;QACd;MACF;MACA;MACA,KAAK,QAAQ;QACXgC,YAAK,CAACC,KAAK,CAACtB,CAAC,CAAC,uCAAuC,CAAC,CAAC;QACvD;MACF,KAAK,UAAU;QACb;QACA;QACA;QACAE,WAAW,CAACiC,iBAAiB,CAAC,CAAC;QAC/B9C,UAAU,GAAG,CAAC;QACd;IACJ;EACF,CAAC,EACD,CAACE,UAAU,EAAEF,UAAU,EAAEa,WAAW,EAAEF,CAAC,CACzC,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAMoC,mBAAmB,GAAG,IAAA7B,kBAAW,EACrC,MAAOwB,SAAiB,IAAK;IAC3B,IAAI,CAACxC,UAAU,IAAIA,UAAU,CAAC8C,wBAAwB,CAAC,CAAC,EAAE;IAC1D,MAAMC,KAAK,GAAGlC,UAAU,CAACmC,IAAI,CAAEC,SAAS,IACtCA,SAAS,CAACC,QAAQ,CAACC,IAAI,CAAEC,OAAO,IAAKA,OAAO,CAACZ,SAAS,KAAKA,SAAS,CACtE,CAAC;IACD,MAAMY,OAAO,GAAGL,KAAK,EAAEG,QAAQ,CAACF,IAAI,CAAEK,GAAG,IAAKA,GAAG,CAACb,SAAS,KAAKA,SAAS,CAAC;IAC1E,IAAI,CAACO,KAAK,IAAI,CAACK,OAAO,EAAE;IACxB,MAAME,SAAS,GAAG,MAAMC,kBAAQ,CAACC,OAAO,CAAC;MACvCC,KAAK,EAAEhD,CAAC,CAAC,6CAA6C,CAAC;MACvDiD,WAAW,EAAEjD,CAAC,CAAC,wCAAwC,EAAE;QACvDkD,MAAM,EAAEZ,KAAK,CAACa,WAAW;QACzBC,OAAO,EAAET,OAAO,CAACQ;MACnB,CAAC,CAAC;MACFE,YAAY,EAAErD,CAAC,CAAC,eAAe,CAAC;MAChCsD,WAAW,EAAEtD,CAAC,CAAC,eAAe,CAAC;MAC/BuD,WAAW,EAAE;IACf,CAAC,CAAC;IACF,IAAI,CAACV,SAAS,EAAE;IAChB,MAAMW,OAAO,GAAG,MAAMjE,UAAU,CAACkE,cAAc,CAAC1B,SAAS,CAAC;IAC1D,IAAI,CAACyB,OAAO,EAAE;MACZnC,YAAK,CAACC,KAAK,CAACtB,CAAC,CAAC,4CAA4C,CAAC,CAAC;MAC5D;IACF;IACAqB,YAAK,CAACqC,OAAO,CAAC1D,CAAC,CAAC,uCAAuC,EAAE;MAAEoD,OAAO,EAAET,OAAO,CAACQ;IAAY,CAAC,CAAC,CAAC;EAC7F,CAAC,EACD,CAAC5D,UAAU,EAAEa,UAAU,EAAEJ,CAAC,CAC5B,CAAC;;EAED;EACA,MAAM2D,qBAAqB,GAAG,IAAApD,kBAAW,EACvC,MAAOqD,WAAmB,IAAK;IAC7B,IAAI,CAACrE,UAAU,IAAIA,UAAU,CAAC8C,wBAAwB,CAAC,CAAC,EAAE;IAC1D,MAAMC,KAAK,GAAGlC,UAAU,CAACmC,IAAI,CAAEC,SAAS,IAAKA,SAAS,CAACoB,WAAW,KAAKA,WAAW,CAAC;IACnF,IAAI,CAACtB,KAAK,EAAE;IACZ,MAAMO,SAAS,GAAG,MAAMC,kBAAQ,CAACC,OAAO,CAAC;MACvCC,KAAK,EAAEhD,CAAC,CAAC,+CAA+C,CAAC;MACzDiD,WAAW,EAAEjD,CAAC,CAAC,0CAA0C,EAAE;QAAE6D,IAAI,EAAEvB,KAAK,CAACa;MAAY,CAAC,CAAC;MACvFE,YAAY,EAAErD,CAAC,CAAC,wBAAwB,CAAC;MACzCsD,WAAW,EAAEtD,CAAC,CAAC,eAAe,CAAC;MAC/BuD,WAAW,EAAE;IACf,CAAC,CAAC;IACF,IAAI,CAACV,SAAS,EAAE;IAChB,MAAMW,OAAO,GAAG,MAAMjE,UAAU,CAACuE,gBAAgB,CAACF,WAAW,CAAC;IAC9D,IAAI,CAACJ,OAAO,EAAE;MACZnC,YAAK,CAACC,KAAK,CAACtB,CAAC,CAAC,8CAA8C,CAAC,CAAC;MAC9D;IACF;IACAqB,YAAK,CAACqC,OAAO,CAAC1D,CAAC,CAAC,yCAAyC,EAAE;MAAE6D,IAAI,EAAEvB,KAAK,CAACa;IAAY,CAAC,CAAC,CAAC;EAC1F,CAAC,EACD,CAAC5D,UAAU,EAAEa,UAAU,EAAEJ,CAAC,CAC5B,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAM+D,aAAa,GAAG,IAAAxD,kBAAW,EAAC,YAAY;IAC5C,IAAI,CAAChB,UAAU,EAAE;IACjB,IAAIyC,OAA4D;IAChE,IAAI;MACFA,OAAO,GAAG,MAAMzC,UAAU,CAACyE,iBAAiB,CAAC,MAAMtE,MAAM,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,MAAM;MACN;MACA2B,YAAK,CAACC,KAAK,CAACtB,CAAC,CAAC,6BAA6B,CAAC,CAAC;MAC7C;IACF;IACA,IAAI,CAACgC,OAAO,CAACiC,GAAG,EAAE;IAClB,IAAIjC,OAAO,CAACkC,KAAK,CAACC,MAAM,KAAK,QAAQ,EAAE;MACrC9C,YAAK,CAACC,KAAK,CAACtB,CAAC,CAAC,6BAA6B,CAAC,CAAC;MAC7C;IACF;IACAX,UAAU,GAAG,CAAC;EAChB,CAAC,EAAE,CAACE,UAAU,EAAEG,MAAM,EAAEL,UAAU,EAAEW,CAAC,CAAC,CAAC;;EAEvC;AACF;AACA;AACA;AACA;EACE,MAAMoE,YAAY,GAAG,IAAA7D,kBAAW,EAC7B8D,GAAW,IAAK;IACf;IACAC,OAAO,CAACC,OAAO,CAAC,CAAC,CACdC,IAAI,CAAC,MAAMC,oBAAO,CAACC,OAAO,CAACL,GAAG,CAAC,CAAC,CAChCnC,KAAK,CAAC,MAAM;MACXb,YAAK,CAACC,KAAK,CAACtB,CAAC,CAAC,gCAAgC,CAAC,CAAC;IAClD,CAAC,CAAC;EACN,CAAC,EACD,CAACA,CAAC,CACJ,CAAC;EAED,MAAM2E,YAAY,GAAG,IAAApE,kBAAW,EAAC,MAAM;IACrCf,eAAe,GAAG,eAAe,CAAC;EACpC,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,MAAMoF,SAAS,GAAG,IAAArE,kBAAW,EAAC,MAAM;IAClC,IAAIoB,aAAa,EAAEkD,YAAY,EAAE;MAC/BxF,UAAU,GAAG,CAAC;MACdsC,aAAa,CAACkD,YAAY,CAAC,CAAC;MAC5B;IACF;IACA;IACAtF,UAAU,EAAEuF,GAAG,CAAC,CAAC;EACnB,CAAC,EAAE,CAACnD,aAAa,EAAEpC,UAAU,EAAEF,UAAU,CAAC,CAAC;EAE3C,MAAM0F,QAAQ,GAAG,IAAAC,cAAO,EACtB,OAAO;IACLC,UAAU,EAAGlD,SAAS,IAAK;MACzB,KAAKD,cAAc,CAACC,SAAS,CAAC;IAChC,CAAC;IACDmD,eAAe,EAAGnD,SAAS,IAAK;MAC9B,KAAKK,mBAAmB,CAACL,SAAS,CAAC;IACrC,CAAC;IACDoD,iBAAiB,EAAGvB,WAAW,IAAK;MAClC,KAAKD,qBAAqB,CAACC,WAAW,CAAC;IACzC,CAAC;IACDwB,KAAK,EAAER,SAAS;IAChBS,QAAQ,EAAEV,YAAY;IACtB;IACA;IACAW,YAAY,EAAEA,CAAA,KAAM3F,gBAAgB,CAAC;EACvC,CAAC,CAAC,EACF,CACEmC,cAAc,EACdM,mBAAmB,EACnBuB,qBAAqB,EACrBiB,SAAS,EACTD,YAAY,EACZhF,gBAAgB,CAEpB,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAM4F,IAAI,GAAG,IAAAP,cAAO,EAClB,MAAOpF,IAAI,GAAG4F,SAAS,CAAC5F,IAAI,EAAEE,KAAK,CAAC2F,MAAM,CAACC,OAAO,EAAEjG,WAAW,CAAC,GAAG,IAAK,EACxE,CAACG,IAAI,EAAEE,KAAK,CAAC2F,MAAM,CAACC,OAAO,EAAEjG,WAAW,CAC1C,CAAC;;EAED;EACA;EACA;EACA,MAAMkG,YAAY,GAAG,IAAAX,cAAO,EAC1B,OAAO;IACLY,QAAQ,EAAEA,CAAA,KAAM,KAAKrG,UAAU,EAAEsG,MAAM,CAAC,CAAC;IACzCC,YAAY,EAAEA,CAAA,KAAM1B,YAAY,CAAC,IAAA2B,2CAAwB,EAACC,qBAAQ,CAACC,EAAE,CAAC,CAAC;IACvE;IACAC,eAAe,EAAEA,CAAA,KAAM3G,UAAU,EAAE4G,WAAW,CAAC;EACjD,CAAC,CAAC,EACF,CAAC5G,UAAU,EAAE6E,YAAY,CAC3B,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMgC,gBAAgB,GAAG1E,IAAI,KAAK,UAAU,IAAI9B,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAKa,SAAS;EACnF,MAAM4F,YAAY,GAAG,IAAAC,0CAAsB,EAAC;IAAEC,OAAO,EAAEH;EAAiB,CAAC,CAAC;EAC1E,MAAMI,OAAO,GAAG,IAAAxB,cAAO,EACrB,MACEqB,YAAY,CAACI,IAAI,GACb;IACEC,SAAS,EAAEL,YAAY,CAACI,IAAI,CAACE,cAAc;IAC3CC,UAAU,EAAEP,YAAY,CAACI,IAAI,CAACI,eAAe;IAC7CC,UAAU,EAAET,YAAY,CAACI,IAAI,CAACK,UAAU;IACxCC,IAAI,EAAEV,YAAY,CAACI,IAAI,CAACM;EAC1B,CAAC,GACD,IAAI,EACV,CAACV,YAAY,CAACI,IAAI,CACpB,CAAC;;EAED;EACA,MAAMO,WAAW,GAAG,IAAAhC,cAAO,EAAsB,MAAM;IACrD,MAAMiC,OAAO,GAAG7C,YAAY;IAC5B,MAAM8C,SAAS,GAAIC,MAA0D,IAAK;MAChF3H,eAAe,GAAG2H,MAAM,CAAC;IAC3B,CAAC;IACD,OAAO;MACLC,UAAU,EAAEA,CAAA,KAAMF,SAAS,CAAC,QAAQ,CAAC;MACrCG,cAAc,EAAEA,CAAA,KAAMH,SAAS,CAAC,aAAa,CAAC;MAC9CI,UAAU,EAAEA,CAAA,KAAMJ,SAAS,CAAC;QAAEK,MAAM,EAAE,eAAe;QAAEC,KAAK,EAAE;UAAEC,OAAO,EAAE;QAAO;MAAE,CAAC,CAAC;MACpFC,eAAe,EAAEA,CAAA,KAAMT,OAAO,CAAC,GAAGhI,gBAAgB,UAAU,CAAC;MAC7D0I,gBAAgB,EAAEA,CAAA,KAAMT,SAAS,CAAC,QAAQ,CAAC;MAC3CU,MAAM,EAAEA,CAAA,KAAMV,SAAS,CAAC,aAAa,CAAC;MACtCW,SAAS,EAAEA,CAAA,KAAMX,SAAS,CAAC;QAAEK,MAAM,EAAE,gBAAgB;QAAEC,KAAK,EAAE;UAAEM,WAAW,EAAE;QAAE;MAAE,CAAC,CAAC;MACnFC,OAAO,EAAEA,CAAA,KAAMb,SAAS,CAAC;QAAEK,MAAM,EAAE,gBAAgB;QAAEC,KAAK,EAAE;UAAEM,WAAW,EAAE;QAAE;MAAE,CAAC,CAAC;MACjFE,SAAS,EAAEA,CAAA,KAAM;QACf,KAAKjE,aAAa,CAAC,CAAC;MACtB,CAAC;MACDkE,QAAQ,EAAE,CACR,IAAItG,aAAa,EAAEuG,SAAS,EAAEC,MAAM,GAChC,CAAC;QAAEC,GAAG,EAAE,WAAW;QAAEC,KAAK,EAAE1G,aAAa,CAACuG;MAAU,CAAC,CAAC,GACtD,EAAE,CAAC,EACP,IAAIvG,aAAa,EAAE2G,YAAY,IAAI,EAAE,CAAC,CACvC,CACEC,MAAM,CAAEd,OAAO,IAAKA,OAAO,CAACY,KAAK,CAACF,MAAM,GAAG,CAAC,CAAC,CAC7CK,GAAG,CAAEf,OAAO,KAAM;QACjB,GAAGA,OAAO;QACVY,KAAK,EAAEZ,OAAO,CAACY,KAAK,CAACG,GAAG,CAAEC,IAAI,KAAM;UAClC,GAAGA,IAAI;UACPC,OAAO,EAAEA,CAAA,KAAM;YACb,IAAID,IAAI,CAACE,QAAQ,EAAE;YACnB,IAAI,CAACF,IAAI,CAACG,QAAQ,EAAEvJ,UAAU,GAAG,CAAC;YAClCoJ,IAAI,CAACC,OAAO,CAAC,CAAC;UAChB;QACF,CAAC,CAAC;MACJ,CAAC,CAAC;IACN,CAAC;EACH,CAAC,EAAE,CAAC/G,aAAa,EAAEtC,UAAU,EAAEG,eAAe,EAAEuE,aAAa,EAAEK,YAAY,CAAC,CAAC;EAE7E,IAAI,CAAC7E,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,IAAI6G,gBAAgB,EAAE;IACpB,oBACE,IAAAvH,WAAA,CAAAgK,GAAA,EAACxK,iBAAA,CAAAW,OAAgB;MACfwC,QAAQ,EAAEA,QAAS;MACnBpB,UAAU,EAAEA,UAAW;MACvBmF,IAAI,EAAEA,IAAK;MACXzF,KAAK,EAAEA,KAAM;MACbE,CAAC,EAAEA,CAAE;MACL+E,QAAQ,EAAEA,QAAS;MACnByB,OAAO,EAAEA,OAAQ;MACjBsC,IAAI,EAAE9B;IAAY,CACnB,CAAC;EAEN;EAEA,IAAItF,IAAI,KAAK,IAAI,EAAE;IACjB,oBACE,IAAA7C,WAAA,CAAAgK,GAAA,EAACtK,kBAAA,CAAAS,OAAiB;MAChBwC,QAAQ,EAAEA,QAAS;MACnBxB,CAAC,EAAEA,CAAE;MACL+I,OAAO,EAAEA,CAAA,KAAM,KAAKxJ,UAAU,CAACyJ,WAAW,CAAC,CAAE;MAC7CrD,YAAY,EAAEA;IAAa,CAC5B,CAAC;EAEN;EAEA,IAAIjE,IAAI,KAAK,QAAQ,EAAE;IACrB,oBACE,IAAA7C,WAAA,CAAAgK,GAAA,EAACjK,eAAA,CAAAqK,cAAc;MACbC,IAAI,EAAC,QAAQ;MACbC,UAAU,EAAEA,CAAA,KAAM9J,UAAU,GAAG,CAAE;MACjC+J,QAAQ,EAAEA,CAAA,KAAM7J,UAAU,CAAC8J,OAAO,CAAC,QAAQ;IAAE,CAC9C,CAAC;EAEN;EAEA,oBACE,IAAAxK,WAAA,CAAAgK,GAAA,EAAClK,eAAA,CAAA2K,cAAc;IACbJ,IAAI,EAAC,QAAQ;IACbC,UAAU,EAAEA,CAAA,KAAM9J,UAAU,GAAG,CAAE;IACjC6G,eAAe,EAAEP,YAAY,CAACO;EAAgB,CAC/C,CAAC;AAEN,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASV,SAASA,CAChB5F,IAAU,EACV2J,cAAsB,EACtB9J,WAAqD,EACnC;EAClB,MAAM+J,MAAM,GAAG,IAAAC,6BAAuB,EAAC7J,IAAI,CAAC;EAC5C,MAAMuD,WAAW,GAAGvD,IAAI,CAACiE,IAAI,EAAEV,WAAW,EAAEuG,IAAI,CAAC,CAAC,IAAIF,MAAM,IAAI,EAAE;EAClE,MAAMG,WAAW,GAAG/J,IAAI,CAACgK,KAAK,EAAEC,WAAW,CAAC,CAAC,CAACC,QAAQ,CAAC,SAAS,CAAC,GAC7DlK,IAAI,CAACgK,KAAK,GACVJ,MAAM,GACJ,IAAIA,MAAM,EAAE,GACZ,IAAI;EACV,OAAO;IACLrG,WAAW;IACXwG,WAAW;IACXI,SAAS,EAAEnK,IAAI,CAACoK,MAAM,GAAGvK,WAAW,CAACwK,MAAM,CAACC,SAAS,CAACtK,IAAI,CAACoK,MAAM,EAAE,OAAO,CAAC,GAAGvJ,SAAS;IACvF0J,SAAS,EAAE,IAAAC,uBAAgB,EAACxK,IAAI,CAACyK,KAAK,IAAI,IAAI,EAAEd,cAAc;EAChE,CAAC;AACH;AAAC,IAAAe,QAAA,GAAAC,OAAA,CAAAvL,OAAA,GAEcI,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AccountCategoriesSection = void 0;
|
|
7
|
+
exports.accountCategoriesEqual = accountCategoriesEqual;
|
|
8
|
+
exports.promoteAccountCategory = promoteAccountCategory;
|
|
9
|
+
exports.toggleAccountCategory = toggleAccountCategory;
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var _reactNative = require("react-native");
|
|
12
|
+
var _button = require("@oxy.so/bloom/button");
|
|
13
|
+
var _groupedSection = require("@oxy.so/bloom/grouped-section");
|
|
14
|
+
var _theme = require("@oxy.so/bloom/theme");
|
|
15
|
+
var _core = require("@oxy.so/core");
|
|
16
|
+
var _MaterialCommunityIcons = _interopRequireDefault(require("../../icons/MaterialCommunityIcons.js"));
|
|
17
|
+
var _SettingsIcon = require("../SettingsIcon.js");
|
|
18
|
+
var _useI18n = require("../../hooks/useI18n.js");
|
|
19
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
|
+
/**
|
|
22
|
+
* An account's categories are an ORDERED list whose element 0 is the primary —
|
|
23
|
+
* nothing else records which one is. So nothing here sorts: a choice joins at
|
|
24
|
+
* the end (choosing a second category must not demote the first), "Make
|
|
25
|
+
* primary" moves one to the front, and two lists are equal only in the same
|
|
26
|
+
* order (a promotion changes nothing BUT the order).
|
|
27
|
+
*/
|
|
28
|
+
function toggleAccountCategory(current, id) {
|
|
29
|
+
if (current.includes(id)) return current.filter(entry => entry !== id);
|
|
30
|
+
if (current.length >= _core.MAX_ACCOUNT_CATEGORIES) return [...current];
|
|
31
|
+
return [...current, id];
|
|
32
|
+
}
|
|
33
|
+
function promoteAccountCategory(current, id) {
|
|
34
|
+
if (!current.includes(id)) return [...current];
|
|
35
|
+
return [id, ...current.filter(entry => entry !== id)];
|
|
36
|
+
}
|
|
37
|
+
function accountCategoriesEqual(a, b) {
|
|
38
|
+
return a.length === b.length && a.every((entry, index) => entry === b[index]);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* A stored id can be one this build has never heard of — the vocabulary grows
|
|
43
|
+
* at Oxy, and an older client meets the newer id. It keeps its row (it counts
|
|
44
|
+
* against the cap and survives a save) but is never printed raw.
|
|
45
|
+
*/
|
|
46
|
+
const KNOWN_IDS = new Set(_core.ACCOUNT_CATEGORY_IDS);
|
|
47
|
+
/**
|
|
48
|
+
* The categories editor of `AccountSettings`: the chosen categories in their
|
|
49
|
+
* stored order (primary first), and a collapsible list of the vocabulary to add
|
|
50
|
+
* from. Only SELECTABLE ids are offered — a withdrawn one stays on an account
|
|
51
|
+
* that carries it, but Oxy refuses newly adding it.
|
|
52
|
+
*/
|
|
53
|
+
const AccountCategoriesSection = ({
|
|
54
|
+
value,
|
|
55
|
+
onChange,
|
|
56
|
+
disabled = false
|
|
57
|
+
}) => {
|
|
58
|
+
const {
|
|
59
|
+
colors
|
|
60
|
+
} = (0, _theme.useTheme)();
|
|
61
|
+
const {
|
|
62
|
+
t,
|
|
63
|
+
locale
|
|
64
|
+
} = (0, _useI18n.useI18n)();
|
|
65
|
+
const [pickerOpen, setPickerOpen] = (0, _react.useState)(false);
|
|
66
|
+
const atCap = value.length >= _core.MAX_ACCOUNT_CATEGORIES;
|
|
67
|
+
const labelOf = (0, _react.useCallback)(id => KNOWN_IDS.has(id) ? (0, _core.accountCategoryLabel)(locale, id) : t('accounts.settings.categories.unavailable'), [locale, t]);
|
|
68
|
+
const toggle = (0, _react.useCallback)(id => onChange(toggleAccountCategory(value, id)), [onChange, value]);
|
|
69
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
70
|
+
className: "gap-space-8",
|
|
71
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_groupedSection.GroupedSection, {
|
|
72
|
+
title: t('accounts.settings.categories.title'),
|
|
73
|
+
footer: t('accounts.settings.categories.footer', {
|
|
74
|
+
max: _core.MAX_ACCOUNT_CATEGORIES
|
|
75
|
+
}),
|
|
76
|
+
children: [value.map((id, index) => {
|
|
77
|
+
const label = labelOf(id);
|
|
78
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSectionItem, {
|
|
79
|
+
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
|
|
80
|
+
name: index === 0 ? 'star' : 'tag-outline',
|
|
81
|
+
color: index === 0 ? colors.primary : colors.textSecondary
|
|
82
|
+
}),
|
|
83
|
+
title: label,
|
|
84
|
+
description: index === 0 ? t('accounts.settings.categories.primary') : undefined,
|
|
85
|
+
showChevron: false,
|
|
86
|
+
disabled: disabled,
|
|
87
|
+
rightElement: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
88
|
+
className: "flex-row items-center gap-space-8",
|
|
89
|
+
children: [index > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
|
|
90
|
+
appearance: "subtle",
|
|
91
|
+
size: "xs",
|
|
92
|
+
disabled: disabled,
|
|
93
|
+
onPress: () => onChange(promoteAccountCategory(value, id)),
|
|
94
|
+
children: t('accounts.settings.categories.makePrimary')
|
|
95
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.CloseButton, {
|
|
96
|
+
size: "xs",
|
|
97
|
+
disabled: disabled,
|
|
98
|
+
onPress: () => toggle(id),
|
|
99
|
+
accessibilityLabel: t('accounts.settings.categories.remove', {
|
|
100
|
+
category: label
|
|
101
|
+
})
|
|
102
|
+
})]
|
|
103
|
+
})
|
|
104
|
+
}, id);
|
|
105
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSectionItem, {
|
|
106
|
+
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
|
|
107
|
+
name: "plus",
|
|
108
|
+
color: colors.textSecondary
|
|
109
|
+
}),
|
|
110
|
+
title: t('accounts.settings.categories.add'),
|
|
111
|
+
description: atCap ? t('accounts.settings.categories.atCap', {
|
|
112
|
+
max: _core.MAX_ACCOUNT_CATEGORIES
|
|
113
|
+
}) : undefined,
|
|
114
|
+
disabled: disabled || atCap,
|
|
115
|
+
showChevron: false,
|
|
116
|
+
rightElement: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MaterialCommunityIcons.default, {
|
|
117
|
+
name: pickerOpen ? 'chevron-up' : 'chevron-down',
|
|
118
|
+
size: 20,
|
|
119
|
+
color: colors.textSecondary
|
|
120
|
+
}),
|
|
121
|
+
onPress: () => setPickerOpen(open => !open)
|
|
122
|
+
})]
|
|
123
|
+
}), pickerOpen && !atCap ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSection, {
|
|
124
|
+
children: _core.SELECTABLE_ACCOUNT_CATEGORY_IDS.map(id => {
|
|
125
|
+
const selected = value.includes(id);
|
|
126
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSectionItem, {
|
|
127
|
+
title: (0, _core.accountCategoryLabel)(locale, id),
|
|
128
|
+
showChevron: false,
|
|
129
|
+
disabled: disabled,
|
|
130
|
+
rightElement: selected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_MaterialCommunityIcons.default, {
|
|
131
|
+
name: "check-circle",
|
|
132
|
+
size: 20,
|
|
133
|
+
color: colors.primary
|
|
134
|
+
}) : undefined,
|
|
135
|
+
onPress: () => toggle(id)
|
|
136
|
+
}, id);
|
|
137
|
+
})
|
|
138
|
+
}) : null]
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
exports.AccountCategoriesSection = AccountCategoriesSection;
|
|
142
|
+
//# sourceMappingURL=AccountCategoriesSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_button","_groupedSection","_theme","_core","_MaterialCommunityIcons","_interopRequireDefault","_SettingsIcon","_useI18n","_jsxRuntime","e","__esModule","default","toggleAccountCategory","current","id","includes","filter","entry","length","MAX_ACCOUNT_CATEGORIES","promoteAccountCategory","accountCategoriesEqual","a","b","every","index","KNOWN_IDS","Set","ACCOUNT_CATEGORY_IDS","AccountCategoriesSection","value","onChange","disabled","colors","useTheme","t","locale","useI18n","pickerOpen","setPickerOpen","useState","atCap","labelOf","useCallback","has","accountCategoryLabel","toggle","jsxs","View","className","children","GroupedSection","title","footer","max","map","label","jsx","GroupedSectionItem","icon","SettingsIcon","name","color","primary","textSecondary","description","undefined","showChevron","rightElement","Button","appearance","size","onPress","CloseButton","accessibilityLabel","category","open","SELECTABLE_ACCOUNT_CATEGORY_IDS","selected","exports"],"sourceRoot":"../../../../../src","sources":["ui/components/accountSettings/AccountCategoriesSection.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.AccountSettings = void 0;
|
|
7
|
+
exports.useAccountSettingsNode = useAccountSettingsNode;
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _reactNative = require("react-native");
|
|
10
|
+
var _reactQuery = require("@tanstack/react-query");
|
|
11
|
+
var _avatar = require("@oxy.so/bloom/avatar");
|
|
12
|
+
var _button = require("@oxy.so/bloom/button");
|
|
13
|
+
var _groupedSection = require("@oxy.so/bloom/grouped-section");
|
|
14
|
+
var _surfaces = require("@oxy.so/bloom/surfaces");
|
|
15
|
+
var _textField = require("@oxy.so/bloom/text-field");
|
|
16
|
+
var _theme = require("@oxy.so/bloom/theme");
|
|
17
|
+
var _toast = require("@oxy.so/bloom/toast");
|
|
18
|
+
var _typography = require("@oxy.so/bloom/typography");
|
|
19
|
+
var _core = require("@oxy.so/core");
|
|
20
|
+
var _oxyRuntimeContext = require("../../context/oxyRuntimeContext.js");
|
|
21
|
+
var _useI18n = require("../../hooks/useI18n.js");
|
|
22
|
+
var _useAvatarPicker = require("../../hooks/useAvatarPicker.js");
|
|
23
|
+
var _userCache = require("../../hooks/queries/userCache.js");
|
|
24
|
+
var _OrganizationSettings = require("../organizations/OrganizationSettings.js");
|
|
25
|
+
var _SettingsIcon = require("../SettingsIcon.js");
|
|
26
|
+
var _AccountCategoriesSection = require("./AccountCategoriesSection.js");
|
|
27
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
|
+
const BIO_MAX = 160;
|
|
29
|
+
const AVATAR_SIZE = 64;
|
|
30
|
+
const errorMessage = (error, fallback) => error instanceof Error && error.message ? error.message : fallback;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* How archiving the account behaves, for an app whose ending of an account
|
|
34
|
+
* means more than Oxy's archive.
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* The account-graph node {@link AccountSettings} edits — seeded from the
|
|
39
|
+
* session's account list, then read fresh. `node` is `null` until it resolves.
|
|
40
|
+
*/
|
|
41
|
+
function useAccountSettingsNode(accountId) {
|
|
42
|
+
const {
|
|
43
|
+
oxyServices,
|
|
44
|
+
canUsePrivateApi,
|
|
45
|
+
user,
|
|
46
|
+
accounts
|
|
47
|
+
} = (0, _oxyRuntimeContext.useOxy)();
|
|
48
|
+
const query = (0, _reactQuery.useQuery)({
|
|
49
|
+
queryKey: ['accounts', 'detail', accountId, user?.id, canUsePrivateApi],
|
|
50
|
+
initialData: canUsePrivateApi ? accounts?.find(account => account.accountId === accountId) : undefined,
|
|
51
|
+
initialDataUpdatedAt: 0,
|
|
52
|
+
queryFn: () => oxyServices.accounts.get(accountId),
|
|
53
|
+
enabled: canUsePrivateApi && accountId.length > 0
|
|
54
|
+
});
|
|
55
|
+
return {
|
|
56
|
+
query,
|
|
57
|
+
node: canUsePrivateApi && query.isSuccess ? query.data : null
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* A non-personal account's settings: its picture, name, bio and categories,
|
|
63
|
+
* its members, and archiving it. The one editor for every member-operated
|
|
64
|
+
* account — the `AccountSettings` surface renders it, and an app embeds it in
|
|
65
|
+
* its own page (`@oxy.so/services/screens`) with its own sections and archive
|
|
66
|
+
* steps around it. Oxy decides what the caller may do from the membership it
|
|
67
|
+
* resolved, so every section is shown only to a member who holds its right.
|
|
68
|
+
*/
|
|
69
|
+
const AccountSettings = ({
|
|
70
|
+
accountId,
|
|
71
|
+
extraSections,
|
|
72
|
+
onUpdated,
|
|
73
|
+
archive,
|
|
74
|
+
navigate,
|
|
75
|
+
onClose
|
|
76
|
+
}) => {
|
|
77
|
+
const {
|
|
78
|
+
colors
|
|
79
|
+
} = (0, _theme.useTheme)();
|
|
80
|
+
const {
|
|
81
|
+
t
|
|
82
|
+
} = (0, _useI18n.useI18n)();
|
|
83
|
+
const {
|
|
84
|
+
oxyServices,
|
|
85
|
+
user,
|
|
86
|
+
accounts,
|
|
87
|
+
switchToAccount,
|
|
88
|
+
showBottomSheet
|
|
89
|
+
} = (0, _oxyRuntimeContext.useOxy)();
|
|
90
|
+
const queryClient = (0, _reactQuery.useQueryClient)();
|
|
91
|
+
const id = accountId;
|
|
92
|
+
const {
|
|
93
|
+
query: accountQuery,
|
|
94
|
+
node
|
|
95
|
+
} = useAccountSettingsNode(id);
|
|
96
|
+
const account = node?.account;
|
|
97
|
+
const permissions = node?.callerMembership?.permissions ?? [];
|
|
98
|
+
const isImplicitOwner = node ? node.relationship !== 'member' : false;
|
|
99
|
+
const can = (0, _react.useCallback)(permission => isImplicitOwner || permissions.includes(permission), [isImplicitOwner, permissions]);
|
|
100
|
+
const canUpdate = can('account:update');
|
|
101
|
+
const canViewMembers = can('members:read');
|
|
102
|
+
const canArchive = can('account:delete');
|
|
103
|
+
const hasCategories = (0, _core.kindAcceptsAccountCategories)(node?.kind);
|
|
104
|
+
|
|
105
|
+
// Editable fields, seeded once from the loaded account and NOT re-synced: while
|
|
106
|
+
// the form is open it is the only writer, so a sync could only overwrite what
|
|
107
|
+
// is being typed. The stored values are read on every render for the dirty
|
|
108
|
+
// check, so a save settles the button without anything mirroring state.
|
|
109
|
+
const [seeded, setSeeded] = (0, _react.useState)(false);
|
|
110
|
+
const [displayName, setDisplayName] = (0, _react.useState)('');
|
|
111
|
+
const [displayNameError, setDisplayNameError] = (0, _react.useState)('');
|
|
112
|
+
const [bio, setBio] = (0, _react.useState)('');
|
|
113
|
+
// Verbatim, including an id this build cannot name: dropping it on load would
|
|
114
|
+
// delete it on the next save.
|
|
115
|
+
const [categories, setCategories] = (0, _react.useState)([]);
|
|
116
|
+
const storedName = account?.name?.displayName ?? (0, _core.getNormalizedUserHandle)(account) ?? '';
|
|
117
|
+
const storedCategories = account?.accountCategories ?? [];
|
|
118
|
+
if (node && !seeded) {
|
|
119
|
+
setDisplayName(storedName);
|
|
120
|
+
setBio(account?.bio ?? '');
|
|
121
|
+
setCategories([...storedCategories]);
|
|
122
|
+
setSeeded(true);
|
|
123
|
+
}
|
|
124
|
+
const updateMutation = (0, _reactQuery.useMutation)({
|
|
125
|
+
mutationKey: ['accounts', 'update', id],
|
|
126
|
+
mutationFn: input => oxyServices.accounts.update(id, input),
|
|
127
|
+
onSuccess: (updatedNode, input) => {
|
|
128
|
+
const cleared = (0, _userCache.clearedFieldsFromAccountUpdate)(input);
|
|
129
|
+
(0, _userCache.upsertCachedUser)(queryClient, updatedNode.account, user?.id, {
|
|
130
|
+
cleared: cleared.length > 0 ? cleared : undefined
|
|
131
|
+
});
|
|
132
|
+
onUpdated?.(updatedNode.account, {
|
|
133
|
+
cleared
|
|
134
|
+
});
|
|
135
|
+
queryClient.invalidateQueries({
|
|
136
|
+
queryKey: ['accounts', 'detail', id]
|
|
137
|
+
});
|
|
138
|
+
queryClient.invalidateQueries({
|
|
139
|
+
queryKey: ['accounts']
|
|
140
|
+
});
|
|
141
|
+
_toast.toast.success(t('accounts.settings.toasts.saved'));
|
|
142
|
+
},
|
|
143
|
+
onError: error => {
|
|
144
|
+
_toast.toast.error(errorMessage(error, t('accounts.settings.toasts.saveFailed')));
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
const archiveMutation = (0, _reactQuery.useMutation)({
|
|
148
|
+
mutationKey: ['accounts', 'archive', id],
|
|
149
|
+
mutationFn: async target => {
|
|
150
|
+
await archive?.beforeArchive?.(target);
|
|
151
|
+
await oxyServices.accounts.archive(id);
|
|
152
|
+
return target;
|
|
153
|
+
},
|
|
154
|
+
onSuccess: async target => {
|
|
155
|
+
// If we archived the account we're currently signed in AS, switch back to
|
|
156
|
+
// the personal account so the app isn't left as an archived identity.
|
|
157
|
+
if (user?.id === id) {
|
|
158
|
+
const personal = accounts.find(entry => entry.relationship === 'self');
|
|
159
|
+
if (personal) {
|
|
160
|
+
await switchToAccount(personal.accountId).catch(() => undefined);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
queryClient.invalidateQueries({
|
|
164
|
+
queryKey: ['accounts']
|
|
165
|
+
});
|
|
166
|
+
_toast.toast.success(archive?.successMessage ?? t('accounts.settings.toasts.archived'));
|
|
167
|
+
if (archive?.onArchived) archive.onArchived(target);else onClose?.();
|
|
168
|
+
},
|
|
169
|
+
onError: error => {
|
|
170
|
+
_toast.toast.error(errorMessage(error, t('accounts.settings.toasts.archiveFailed')));
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
const handleArchive = (0, _react.useCallback)(async () => {
|
|
174
|
+
if (!node) return;
|
|
175
|
+
let confirmed;
|
|
176
|
+
try {
|
|
177
|
+
confirmed = archive?.confirm ? await archive.confirm(node) : await _surfaces.surfaces.confirm({
|
|
178
|
+
title: t('accounts.settings.archive.confirmTitle'),
|
|
179
|
+
description: t('accounts.settings.archive.confirmDescription'),
|
|
180
|
+
confirmLabel: t('accounts.settings.archive.title'),
|
|
181
|
+
cancelLabel: t('common.cancel'),
|
|
182
|
+
destructive: true
|
|
183
|
+
});
|
|
184
|
+
} catch (error) {
|
|
185
|
+
_toast.toast.error(errorMessage(error, t('accounts.settings.toasts.archiveFailed')));
|
|
186
|
+
return;
|
|
187
|
+
}
|
|
188
|
+
if (confirmed) archiveMutation.mutate(node);
|
|
189
|
+
}, [archive, archiveMutation, node, t]);
|
|
190
|
+
const handleDisplayNameChange = (0, _react.useCallback)(value => {
|
|
191
|
+
setDisplayName(value);
|
|
192
|
+
const trimmed = value.trim();
|
|
193
|
+
if (!trimmed) {
|
|
194
|
+
setDisplayNameError('');
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const kind = node?.account.kind;
|
|
198
|
+
setDisplayNameError((0, _core.isValidAccountName)(trimmed, kind) ? '' : t(`accounts.settings.displayName.${(0, _core.accountNameInvalidKey)(kind)}`) || (0, _core.accountNameInvalidMessage)(kind));
|
|
199
|
+
}, [node?.account.kind, t]);
|
|
200
|
+
const trimmedName = displayName.trim();
|
|
201
|
+
const trimmedBio = bio.trim();
|
|
202
|
+
const categoriesChanged = hasCategories && !(0, _AccountCategoriesSection.accountCategoriesEqual)(categories, storedCategories);
|
|
203
|
+
const profileChanged = trimmedName !== storedName.trim() || trimmedBio !== (account?.bio ?? '').trim() || categoriesChanged;
|
|
204
|
+
// An empty display name is refused rather than sent: at Oxy an empty
|
|
205
|
+
// `displayName` clears the explicit name, which a managed account (a title,
|
|
206
|
+
// not a given-and-family name) has nothing to fall back from.
|
|
207
|
+
const canSave = profileChanged && trimmedName.length > 0 && !displayNameError;
|
|
208
|
+
const handleSave = (0, _react.useCallback)(() => {
|
|
209
|
+
if (!canSave) return;
|
|
210
|
+
updateMutation.mutate({
|
|
211
|
+
name: {
|
|
212
|
+
displayName: trimmedName
|
|
213
|
+
},
|
|
214
|
+
// `null` is Oxy's clear; an empty string would store one.
|
|
215
|
+
bio: trimmedBio ? trimmedBio : null,
|
|
216
|
+
// Whole and IN ORDER — element 0 is the primary, and `[]` is the clear.
|
|
217
|
+
...(categoriesChanged ? {
|
|
218
|
+
accountCategories: categories
|
|
219
|
+
} : null)
|
|
220
|
+
});
|
|
221
|
+
}, [canSave, categories, categoriesChanged, trimmedBio, trimmedName, updateMutation]);
|
|
222
|
+
|
|
223
|
+
// The picture is written on its own, as the personal profile's is: the shared
|
|
224
|
+
// picker uploads the crop, and the account takes it (or `null`, its clear).
|
|
225
|
+
const handleChangePicture = (0, _react.useCallback)(async () => {
|
|
226
|
+
try {
|
|
227
|
+
const avatar = await (0, _useAvatarPicker.pickAvatarFile)(oxyServices, {
|
|
228
|
+
avatar: account?.avatar,
|
|
229
|
+
displayName: storedName
|
|
230
|
+
});
|
|
231
|
+
if (avatar !== undefined) updateMutation.mutate({
|
|
232
|
+
avatar
|
|
233
|
+
});
|
|
234
|
+
} catch (error) {
|
|
235
|
+
_toast.toast.error(errorMessage(error, t('accounts.settings.toasts.saveFailed')));
|
|
236
|
+
}
|
|
237
|
+
}, [account?.avatar, oxyServices, storedName, t, updateMutation]);
|
|
238
|
+
const avatarUri = (0, _react.useMemo)(() => account?.avatar ? oxyServices.assets.publicUrl(account.avatar, 'thumb') : undefined, [account?.avatar, oxyServices]);
|
|
239
|
+
const openMembers = (0, _react.useCallback)(() => {
|
|
240
|
+
if (navigate) navigate('AccountMembers', {
|
|
241
|
+
accountId: id
|
|
242
|
+
});else showBottomSheet?.({
|
|
243
|
+
screen: 'AccountMembers',
|
|
244
|
+
props: {
|
|
245
|
+
accountId: id
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
}, [id, navigate, showBottomSheet]);
|
|
249
|
+
if (!id) {
|
|
250
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
251
|
+
className: "items-center justify-center px-screen-margin py-space-40",
|
|
252
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
|
|
253
|
+
className: "text-body font-body text-text-secondary text-center",
|
|
254
|
+
children: t('accounts.settings.errors.missingAccount')
|
|
255
|
+
})
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
if (accountQuery.isLoading || !node) {
|
|
259
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
260
|
+
className: "items-center py-space-32"
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
const busy = updateMutation.isPending;
|
|
264
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
265
|
+
className: "px-screen-margin pt-space-24 pb-space-32 gap-space-24",
|
|
266
|
+
children: [canUpdate ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
267
|
+
className: "gap-space-16 p-space-16 rounded-radius-20 bg-fill",
|
|
268
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
269
|
+
className: "flex-row items-center gap-space-16",
|
|
270
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.Avatar, {
|
|
271
|
+
source: avatarUri,
|
|
272
|
+
name: storedName,
|
|
273
|
+
size: AVATAR_SIZE
|
|
274
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
|
|
275
|
+
appearance: "subtle",
|
|
276
|
+
size: "sm",
|
|
277
|
+
onPress: () => void handleChangePicture(),
|
|
278
|
+
disabled: busy,
|
|
279
|
+
children: t('accounts.settings.picture.change')
|
|
280
|
+
})]
|
|
281
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
282
|
+
className: "gap-space-4",
|
|
283
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_textField.TextField, {
|
|
284
|
+
isInvalid: Boolean(displayNameError),
|
|
285
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_textField.TextFieldInput, {
|
|
286
|
+
floatingLabel: true,
|
|
287
|
+
label: t('accounts.settings.displayName.label'),
|
|
288
|
+
value: displayName,
|
|
289
|
+
onChangeText: handleDisplayNameChange,
|
|
290
|
+
isInvalid: Boolean(displayNameError),
|
|
291
|
+
maxLength: (0, _core.accountNameMaxLength)(node.account.kind)
|
|
292
|
+
})
|
|
293
|
+
}), displayNameError ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_typography.Text, {
|
|
294
|
+
className: "text-caption font-caption text-negative px-space-4",
|
|
295
|
+
children: displayNameError
|
|
296
|
+
}) : null]
|
|
297
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
298
|
+
className: "gap-space-4",
|
|
299
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_textField.TextField, {
|
|
300
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_textField.TextFieldInput, {
|
|
301
|
+
floatingLabel: true,
|
|
302
|
+
label: t('accounts.settings.bio.label'),
|
|
303
|
+
value: bio,
|
|
304
|
+
onChangeText: setBio,
|
|
305
|
+
maxLength: BIO_MAX,
|
|
306
|
+
multiline: true,
|
|
307
|
+
numberOfLines: 3,
|
|
308
|
+
textAlignVertical: "top"
|
|
309
|
+
})
|
|
310
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_typography.Text, {
|
|
311
|
+
className: "text-caption font-caption text-text-tertiary px-space-4 text-right",
|
|
312
|
+
children: [bio.length, "/", BIO_MAX]
|
|
313
|
+
})]
|
|
314
|
+
}), hasCategories ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_AccountCategoriesSection.AccountCategoriesSection, {
|
|
315
|
+
value: categories,
|
|
316
|
+
onChange: setCategories,
|
|
317
|
+
disabled: busy
|
|
318
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.Button, {
|
|
319
|
+
appearance: "solid",
|
|
320
|
+
tone: "accent",
|
|
321
|
+
onPress: handleSave,
|
|
322
|
+
disabled: busy || !canSave,
|
|
323
|
+
loading: busy,
|
|
324
|
+
accessibilityLabel: t('accounts.settings.save'),
|
|
325
|
+
className: "w-full",
|
|
326
|
+
children: t('accounts.settings.save')
|
|
327
|
+
})]
|
|
328
|
+
}) : null, node.account.kind === 'organization' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_OrganizationSettings.OrganizationSettings, {
|
|
329
|
+
accountId: id,
|
|
330
|
+
canUpdate: canUpdate
|
|
331
|
+
}, id) : null, canViewMembers ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSection, {
|
|
332
|
+
title: t('accounts.settings.sections.access'),
|
|
333
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSectionItem, {
|
|
334
|
+
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
|
|
335
|
+
name: "account-multiple",
|
|
336
|
+
color: colors.info
|
|
337
|
+
}),
|
|
338
|
+
title: t('accounts.members.title'),
|
|
339
|
+
description: t('accounts.settings.members.subtitle'),
|
|
340
|
+
onPress: openMembers
|
|
341
|
+
})
|
|
342
|
+
}) : null, extraSections, canArchive ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSection, {
|
|
343
|
+
title: t('accounts.settings.sections.dangerZone'),
|
|
344
|
+
footer: archive?.footer,
|
|
345
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupedSection.GroupedSectionItem, {
|
|
346
|
+
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsIcon.SettingsIcon, {
|
|
347
|
+
name: "archive-arrow-down",
|
|
348
|
+
color: colors.error
|
|
349
|
+
}),
|
|
350
|
+
title: archive?.title ?? t('accounts.settings.archive.title'),
|
|
351
|
+
description: archive?.title ? archive.description : t('accounts.settings.archive.subtitle'),
|
|
352
|
+
destructive: true,
|
|
353
|
+
disabled: archiveMutation.isPending,
|
|
354
|
+
onPress: () => void handleArchive()
|
|
355
|
+
})
|
|
356
|
+
}) : null]
|
|
357
|
+
});
|
|
358
|
+
};
|
|
359
|
+
exports.AccountSettings = AccountSettings;
|
|
360
|
+
var _default = exports.default = AccountSettings;
|
|
361
|
+
//# sourceMappingURL=AccountSettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_reactQuery","_avatar","_button","_groupedSection","_surfaces","_textField","_theme","_toast","_typography","_core","_oxyRuntimeContext","_useI18n","_useAvatarPicker","_userCache","_OrganizationSettings","_SettingsIcon","_AccountCategoriesSection","_jsxRuntime","BIO_MAX","AVATAR_SIZE","errorMessage","error","fallback","Error","message","useAccountSettingsNode","accountId","oxyServices","canUsePrivateApi","user","accounts","useOxy","query","useQuery","queryKey","id","initialData","find","account","undefined","initialDataUpdatedAt","queryFn","get","enabled","length","node","isSuccess","data","AccountSettings","extraSections","onUpdated","archive","navigate","onClose","colors","useTheme","t","useI18n","switchToAccount","showBottomSheet","queryClient","useQueryClient","accountQuery","permissions","callerMembership","isImplicitOwner","relationship","can","useCallback","permission","includes","canUpdate","canViewMembers","canArchive","hasCategories","kindAcceptsAccountCategories","kind","seeded","setSeeded","useState","displayName","setDisplayName","displayNameError","setDisplayNameError","bio","setBio","categories","setCategories","storedName","name","getNormalizedUserHandle","storedCategories","accountCategories","updateMutation","useMutation","mutationKey","mutationFn","input","update","onSuccess","updatedNode","cleared","clearedFieldsFromAccountUpdate","upsertCachedUser","invalidateQueries","toast","success","onError","archiveMutation","target","beforeArchive","personal","entry","catch","successMessage","onArchived","handleArchive","confirmed","confirm","surfaces","title","description","confirmLabel","cancelLabel","destructive","mutate","handleDisplayNameChange","value","trimmed","trim","isValidAccountName","accountNameInvalidKey","accountNameInvalidMessage","trimmedName","trimmedBio","categoriesChanged","accountCategoriesEqual","profileChanged","canSave","handleSave","handleChangePicture","avatar","pickAvatarFile","avatarUri","useMemo","assets","publicUrl","openMembers","screen","props","jsx","View","className","children","Text","isLoading","busy","isPending","jsxs","Avatar","source","size","Button","appearance","onPress","disabled","TextField","isInvalid","Boolean","TextFieldInput","floatingLabel","label","onChangeText","maxLength","accountNameMaxLength","multiline","numberOfLines","textAlignVertical","AccountCategoriesSection","onChange","tone","loading","accessibilityLabel","OrganizationSettings","GroupedSection","GroupedSectionItem","icon","SettingsIcon","color","info","footer","exports","_default","default"],"sourceRoot":"../../../../../src","sources":["ui/components/accountSettings/AccountSettings.tsx"],"mappings":"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","ignoreList":[]}
|