@oxyhq/services 22.8.7 → 22.9.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.
Files changed (116) hide show
  1. package/lib/commonjs/ui/components/OxyAccountDialog.js +30 -39
  2. package/lib/commonjs/ui/components/OxyAccountDialog.js.map +1 -1
  3. package/lib/commonjs/ui/components/OxyProvider.js +9 -29
  4. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  5. package/lib/commonjs/ui/components/SurfaceScreen.js +146 -0
  6. package/lib/commonjs/ui/components/SurfaceScreen.js.map +1 -0
  7. package/lib/commonjs/ui/context/OxyContext.js +32 -1
  8. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  9. package/lib/commonjs/ui/navigation/bottomSheetManager.js +38 -56
  10. package/lib/commonjs/ui/navigation/bottomSheetManager.js.map +1 -1
  11. package/lib/commonjs/ui/navigation/routes.js +7 -57
  12. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  13. package/lib/commonjs/ui/navigation/surfaceNavStack.js +98 -0
  14. package/lib/commonjs/ui/navigation/surfaceNavStack.js.map +1 -0
  15. package/lib/commonjs/ui/navigation/surfaceRegistry.js +108 -0
  16. package/lib/commonjs/ui/navigation/surfaceRegistry.js.map +1 -0
  17. package/lib/commonjs/ui/navigation/surfaces.js +219 -0
  18. package/lib/commonjs/ui/navigation/surfaces.js.map +1 -0
  19. package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js +9 -7
  20. package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
  21. package/lib/commonjs/ui/types/surfaceScreen.js +6 -0
  22. package/lib/commonjs/ui/types/surfaceScreen.js.map +1 -0
  23. package/lib/module/ui/components/OxyAccountDialog.js +31 -40
  24. package/lib/module/ui/components/OxyAccountDialog.js.map +1 -1
  25. package/lib/module/ui/components/OxyProvider.js +10 -30
  26. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  27. package/lib/module/ui/components/SurfaceScreen.js +141 -0
  28. package/lib/module/ui/components/SurfaceScreen.js.map +1 -0
  29. package/lib/module/ui/context/OxyContext.js +32 -1
  30. package/lib/module/ui/context/OxyContext.js.map +1 -1
  31. package/lib/module/ui/navigation/bottomSheetManager.js +37 -53
  32. package/lib/module/ui/navigation/bottomSheetManager.js.map +1 -1
  33. package/lib/module/ui/navigation/routes.js +6 -56
  34. package/lib/module/ui/navigation/routes.js.map +1 -1
  35. package/lib/module/ui/navigation/surfaceNavStack.js +95 -0
  36. package/lib/module/ui/navigation/surfaceNavStack.js.map +1 -0
  37. package/lib/module/ui/navigation/surfaceRegistry.js +102 -0
  38. package/lib/module/ui/navigation/surfaceRegistry.js.map +1 -0
  39. package/lib/module/ui/navigation/surfaces.js +207 -0
  40. package/lib/module/ui/navigation/surfaces.js.map +1 -0
  41. package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js +8 -7
  42. package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
  43. package/lib/module/ui/types/surfaceScreen.js +4 -0
  44. package/lib/module/ui/types/surfaceScreen.js.map +1 -0
  45. package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts +29 -27
  46. package/lib/typescript/commonjs/ui/components/OxyAccountDialog.d.ts.map +1 -1
  47. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts +3 -2
  48. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
  49. package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts +24 -0
  50. package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts.map +1 -0
  51. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  52. package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts +24 -16
  53. package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  54. package/lib/typescript/commonjs/ui/navigation/routes.d.ts +2 -60
  55. package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
  56. package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts +51 -0
  57. package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts.map +1 -0
  58. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts +117 -0
  59. package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts.map +1 -0
  60. package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts +79 -0
  61. package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts.map +1 -0
  62. package/lib/typescript/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.d.ts.map +1 -1
  63. package/lib/typescript/commonjs/ui/types/surfaceScreen.d.ts +38 -0
  64. package/lib/typescript/commonjs/ui/types/surfaceScreen.d.ts.map +1 -0
  65. package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts +29 -27
  66. package/lib/typescript/module/ui/components/OxyAccountDialog.d.ts.map +1 -1
  67. package/lib/typescript/module/ui/components/OxyProvider.d.ts +3 -2
  68. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  69. package/lib/typescript/module/ui/components/SurfaceScreen.d.ts +24 -0
  70. package/lib/typescript/module/ui/components/SurfaceScreen.d.ts.map +1 -0
  71. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  72. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts +24 -16
  73. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  74. package/lib/typescript/module/ui/navigation/routes.d.ts +2 -60
  75. package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
  76. package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts +51 -0
  77. package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts.map +1 -0
  78. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts +117 -0
  79. package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts.map +1 -0
  80. package/lib/typescript/module/ui/navigation/surfaces.d.ts +79 -0
  81. package/lib/typescript/module/ui/navigation/surfaces.d.ts.map +1 -0
  82. package/lib/typescript/module/ui/screens/fileManagement/hooks/useFileUploadState.d.ts.map +1 -1
  83. package/lib/typescript/module/ui/types/surfaceScreen.d.ts +38 -0
  84. package/lib/typescript/module/ui/types/surfaceScreen.d.ts.map +1 -0
  85. package/package.json +2 -2
  86. package/src/ui/components/OxyAccountDialog.tsx +32 -38
  87. package/src/ui/components/OxyProvider.tsx +12 -34
  88. package/src/ui/components/SurfaceScreen.tsx +166 -0
  89. package/src/ui/context/OxyContext.tsx +27 -1
  90. package/src/ui/navigation/__tests__/getSurfaceConfig.test.ts +39 -0
  91. package/src/ui/navigation/bottomSheetManager.ts +46 -73
  92. package/src/ui/navigation/routes.ts +7 -106
  93. package/src/ui/navigation/surfaceNavStack.ts +110 -0
  94. package/src/ui/navigation/surfaceRegistry.ts +174 -0
  95. package/src/ui/navigation/surfaces.ts +244 -0
  96. package/src/ui/screens/fileManagement/hooks/useFileUploadState.ts +9 -7
  97. package/src/ui/types/surfaceScreen.ts +38 -0
  98. package/lib/commonjs/ui/components/BottomSheet.js +0 -49
  99. package/lib/commonjs/ui/components/BottomSheet.js.map +0 -1
  100. package/lib/commonjs/ui/components/BottomSheetRouter.js +0 -298
  101. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +0 -1
  102. package/lib/module/ui/components/BottomSheet.js +0 -45
  103. package/lib/module/ui/components/BottomSheet.js.map +0 -1
  104. package/lib/module/ui/components/BottomSheetRouter.js +0 -292
  105. package/lib/module/ui/components/BottomSheetRouter.js.map +0 -1
  106. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts +0 -29
  107. package/lib/typescript/commonjs/ui/components/BottomSheet.d.ts.map +0 -1
  108. package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts +0 -9
  109. package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts.map +0 -1
  110. package/lib/typescript/module/ui/components/BottomSheet.d.ts +0 -29
  111. package/lib/typescript/module/ui/components/BottomSheet.d.ts.map +0 -1
  112. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts +0 -9
  113. package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts.map +0 -1
  114. package/src/ui/components/BottomSheet.tsx +0 -48
  115. package/src/ui/components/BottomSheetRouter.tsx +0 -310
  116. package/src/ui/navigation/__tests__/getSheetConfig.test.ts +0 -36
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useRef","useState","toast","useFileStore","convertDocumentPickerAssetToFile","formatFileSize","createPendingUploadFile","candidateName","candidateSize","candidateType","candidateUri","getErrorMessage","loadDocumentPicker","useFileUploadState","targetUserId","uploadFileMutation","defaultVisibility","selectMode","multiSelect","afterSelect","onSelect","goBack","onClose","selectedIds","setSelectedIds","loadFiles","t","isPickingDocument","setIsPickingDocument","pendingFiles","setPendingFiles","showUploadPreview","setShowUploadPreview","uploadStartRef","MIN_BANNER_MS","storeSetUploading","s","setUploading","storeSetUploadProgress","setUploadProgress","endUpload","started","current","elapsed","Date","now","remaining","setTimeout","getState","processFileUploads","selectedFiles","length","uploadedFiles","total","maxSize","oversizedFiles","filter","file","fileList","map","f","join","error","files","successCount","failureCount","errors","i","raw","fileName","fileSize","fileType","optimisticId","Math","random","toString","substr","errorMsg","__DEV__","console","push","previewUri","optimisticMetadata","uploading","localPreviewUri","optimisticFile","id","filename","contentType","chunkSize","uploadDate","toISOString","metadata","variants","addFile","prepend","result","mutateAsync","visibility","merged","originalName","sha256","mime","size","createdAt","removeFile","warn","errorMessage","fullError","stack","Error","undefined","success","count","errorDetails","slice","handleFileSelection","MAX_FILE_SIZE","processedFiles","name","Number","isNaN","preview","startsWith","fileUri","File","Blob","URL","createObjectURL","handleConfirmUpload","filesToUpload","pf","forEach","revokeObjectURL","fileToSelect","has","prev","Set","add","handleCancelUpload","removePendingFile","find","updated","handleFileUpload","picker","getDocumentAsync","type","multiple","copyToCacheDirectory","canceled","assets","conversionPromises","doc","index","then","catch","convertedFiles","Promise","all","includes"],"sourceRoot":"../../../../../../src","sources":["ui/screens/fileManagement/hooks/useFileUploadState.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useRef","useState","toast","useFileStore","convertDocumentPickerAssetToFile","formatFileSize","createPendingUploadFile","candidateName","candidateSize","candidateType","candidateUri","getErrorMessage","loadDocumentPicker","revokePreviewUrl","preview","startsWith","URL","revokeObjectURL","useFileUploadState","targetUserId","uploadFileMutation","defaultVisibility","selectMode","multiSelect","afterSelect","onSelect","goBack","onClose","selectedIds","setSelectedIds","loadFiles","t","isPickingDocument","setIsPickingDocument","pendingFiles","setPendingFiles","showUploadPreview","setShowUploadPreview","uploadStartRef","MIN_BANNER_MS","storeSetUploading","s","setUploading","storeSetUploadProgress","setUploadProgress","endUpload","started","current","elapsed","Date","now","remaining","setTimeout","getState","processFileUploads","selectedFiles","length","uploadedFiles","total","maxSize","oversizedFiles","filter","file","fileList","map","f","join","error","files","successCount","failureCount","errors","i","raw","fileName","fileSize","fileType","optimisticId","Math","random","toString","substr","errorMsg","__DEV__","console","push","previewUri","optimisticMetadata","uploading","localPreviewUri","optimisticFile","id","filename","contentType","chunkSize","uploadDate","toISOString","metadata","variants","addFile","prepend","result","mutateAsync","visibility","merged","originalName","sha256","mime","size","createdAt","removeFile","warn","errorMessage","fullError","stack","Error","undefined","success","count","errorDetails","slice","handleFileSelection","MAX_FILE_SIZE","processedFiles","name","Number","isNaN","fileUri","File","Blob","createObjectURL","handleConfirmUpload","filesToUpload","pf","forEach","fileToSelect","has","prev","Set","add","handleCancelUpload","removePendingFile","find","updated","handleFileUpload","picker","getDocumentAsync","type","multiple","copyToCacheDirectory","canceled","assets","conversionPromises","doc","index","then","catch","convertedFiles","Promise","all","includes"],"sourceRoot":"../../../../../../src","sources":["ui/screens/fileManagement/hooks/useFileUploadState.ts"],"mappings":";;AACA,SAASA,WAAW,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACrD,SAASC,KAAK,QAAQ,cAAc;AAEpC,SAASC,YAAY,QAAQ,8BAA2B;AAExD,SAASC,gCAAgC,EAAEC,cAAc,QAAQ,kCAA+B;AAChG,SACIC,uBAAuB,EAGvBC,aAAa,EACbC,aAAa,EACbC,aAAa,EACbC,YAAY,EACZC,eAAe,EACfC,kBAAkB,QACf,cAAW;AAElB,SAASC,gBAAgBA,CAACC,OAA2B,EAAQ;EACzD,IAAIA,OAAO,EAAEC,UAAU,CAAC,OAAO,CAAC,EAAE;IAC9BC,GAAG,CAACC,eAAe,CAACH,OAAO,CAAC;EAChC;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAMA;;AAiBA;;AAWA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMI,kBAAkB,GAAGA,CAAC;EAC/BC,YAAY;EACZC,kBAAkB;EAClBC,iBAAiB;EACjBC,UAAU;EACVC,WAAW;EACXC,WAAW;EACXC,QAAQ;EACRC,MAAM;EACNC,OAAO;EACPC,WAAW;EACXC,cAAc;EACdC,SAAS;EACTC;AACsB,CAAC,KAA+B;EACtD,MAAM,CAACC,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGhC,QAAQ,CAAC,KAAK,CAAC;EACjE,MAAM,CAACiC,YAAY,EAAEC,eAAe,CAAC,GAAGlC,QAAQ,CAAsB,EAAE,CAAC;EACzE,MAAM,CAACmC,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGpC,QAAQ,CAAC,KAAK,CAAC;EAEjE,MAAMqC,cAAc,GAAGtC,MAAM,CAAgB,IAAI,CAAC;EAClD,MAAMuC,aAAa,GAAG,GAAG;EAEzB,MAAMC,iBAAiB,GAAGrC,YAAY,CAACsC,CAAC,IAAIA,CAAC,CAACC,YAAY,CAAC;EAC3D,MAAMC,sBAAsB,GAAGxC,YAAY,CAACsC,CAAC,IAAIA,CAAC,CAACG,iBAAiB,CAAC;EAErE,MAAMC,SAAS,GAAG9C,WAAW,CAAC,MAAM;IAChC,MAAM+C,OAAO,GAAGR,cAAc,CAACS,OAAO;IACtC,MAAMC,OAAO,GAAGF,OAAO,GAAGG,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGJ,OAAO,GAAGP,aAAa;IAC9D,MAAMY,SAAS,GAAGH,OAAO,GAAGT,aAAa,GAAGA,aAAa,GAAGS,OAAO,GAAG,CAAC;IACvEI,UAAU,CAAC,MAAM;MACbjD,YAAY,CAACkD,QAAQ,CAAC,CAAC,CAACX,YAAY,CAAC,KAAK,CAAC;MAC3CJ,cAAc,CAACS,OAAO,GAAG,IAAI;IACjC,CAAC,EAAEI,SAAS,CAAC;EACjB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,kBAAkB,GAAG,MAAOC,aAAgC,IAA8B;IAC5F,IAAIA,aAAa,CAACC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;IACzC,IAAI,CAACrC,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9B,MAAMsC,aAA6B,GAAG,EAAE;IACxC,IAAI;MACAd,sBAAsB,CAAC;QAAEI,OAAO,EAAE,CAAC;QAAEW,KAAK,EAAEH,aAAa,CAACC;MAAO,CAAC,CAAC;MACnE,MAAMG,OAAO,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;MAClC,MAAMC,cAAc,GAAGL,aAAa,CAACM,MAAM,CAACC,IAAI,IAAItD,aAAa,CAACsD,IAAI,CAAC,GAAGH,OAAO,CAAC;MAClF,IAAIC,cAAc,CAACJ,MAAM,GAAG,CAAC,EAAE;QAC3B,MAAMO,QAAQ,GAAGH,cAAc,CAACI,GAAG,CAACC,CAAC,IAAI1D,aAAa,CAAC0D,CAAC,EAAE,MAAM,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;QAC7EhE,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,qCAAqC,EAAE;UAAEqC,KAAK,EAAEL;QAAS,CAAC,CAAC,CAAC;QAC1E,OAAO,EAAE;MACb;MACA,IAAIM,YAAY,GAAG,CAAC;MACpB,IAAIC,YAAY,GAAG,CAAC;MACpB,MAAMC,MAAgB,GAAG,EAAE;MAC3B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGjB,aAAa,CAACC,MAAM,EAAEgB,CAAC,EAAE,EAAE;QAC3C7B,sBAAsB,CAAC;UAAEI,OAAO,EAAEyB,CAAC,GAAG,CAAC;UAAEd,KAAK,EAAEH,aAAa,CAACC;QAAO,CAAC,CAAC;QACvE,MAAMiB,GAAG,GAAGlB,aAAa,CAACiB,CAAC,CAAC;QAC5B,MAAME,QAAQ,GAAGnE,aAAa,CAACkE,GAAG,EAAE,QAAQD,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,MAAMG,QAAQ,GAAGnE,aAAa,CAACiE,GAAG,CAAC;QACnC,MAAMG,QAAQ,GAAGnE,aAAa,CAACgE,GAAG,CAAC;QACnC,MAAMI,YAAY,GAAG,QAAQ5B,IAAI,CAACC,GAAG,CAAC,CAAC,IAAIsB,CAAC,IAAIM,IAAI,CAACC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;;QAE3F,IAAI;UACA;UACA,IAAI,CAACR,GAAG,IAAI,CAACC,QAAQ,IAAIC,QAAQ,IAAI,CAAC,EAAE;YACpC,MAAMO,QAAQ,GAAG,iBAAiBR,QAAQ,EAAE;YAC5C,IAAIS,OAAO,EAAE;cACTC,OAAO,CAACjB,KAAK,CAAC,2BAA2B,EAAE;gBAAEL,IAAI,EAAEW,GAAG;gBAAEN,KAAK,EAAEe;cAAS,CAAC,CAAC;YAC9E;YACAZ,YAAY,EAAE;YACdC,MAAM,CAACc,IAAI,CAAC,GAAGX,QAAQ,uCAAuC,CAAC;YAC/D;UACJ;;UAEA;UACA;UACA;UACA;UACA,MAAMY,UAAU,GAAG5E,YAAY,CAAC+D,GAAG,CAAC;UACpC,MAAMc,kBAA0C,GAAG;YAC/CC,SAAS,EAAE,IAAI;YACf,IAAIF,UAAU,GAAG;cAAEG,eAAe,EAAEH;YAAW,CAAC,GAAG,CAAC,CAAC;UACzD,CAAC;UACD,MAAMI,cAA4B,GAAG;YACjCC,EAAE,EAAEd,YAAY;YAChBe,QAAQ,EAAElB,QAAQ;YAClBmB,WAAW,EAAEjB,QAAQ;YACrBpB,MAAM,EAAEmB,QAAQ;YAChBmB,SAAS,EAAE,CAAC;YACZC,UAAU,EAAE,IAAI9C,IAAI,CAAC,CAAC,CAAC+C,WAAW,CAAC,CAAC;YACpCC,QAAQ,EAAEV,kBAAkB;YAC5BW,QAAQ,EAAE;UACd,CAAC;UACD/F,YAAY,CAACkD,QAAQ,CAAC,CAAC,CAAC8C,OAAO,CAACT,cAAc,EAAE;YAAEU,OAAO,EAAE;UAAK,CAAC,CAAC;;UAElE;UACA,MAAMC,MAAM,GAAG,MAAMjF,kBAAkB,CAACkF,WAAW,CAAC;YAChDxC,IAAI,EAAEW,GAAuB;YAC7B8B,UAAU,EAAElF;UAChB,CAAC,CAAC;;UAEF;UACA,MAAM4C,CAAC,GAAGoC,MAAM,EAAEvC,IAAI,IAAIuC,MAAM,EAAEjC,KAAK,GAAG,CAAC,CAAC;UAC5C,IAAIH,CAAC,EAAE;YACH,MAAMuC,MAAoB,GAAG;cACzBb,EAAE,EAAE1B,CAAC,CAAC0B,EAAE;cACRC,QAAQ,EAAE3B,CAAC,CAACwC,YAAY,IAAIxC,CAAC,CAACyC,MAAM,IAAIhC,QAAQ;cAChDmB,WAAW,EAAE5B,CAAC,CAAC0C,IAAI,IAAI/B,QAAQ;cAC/BpB,MAAM,EAAES,CAAC,CAAC2C,IAAI,IAAIjC,QAAQ;cAC1BmB,SAAS,EAAE,CAAC;cACZC,UAAU,EAAE9B,CAAC,CAAC4C,SAAS,IAAI,IAAI5D,IAAI,CAAC,CAAC,CAAC+C,WAAW,CAAC,CAAC;cACnDC,QAAQ,EAAEhC,CAAC,CAACgC,QAAQ,IAAI,CAAC,CAAC;cAC1BC,QAAQ,EAAEjC,CAAC,CAACiC,QAAQ,IAAI;YAC5B,CAAC;YACD;YACA/F,YAAY,CAACkD,QAAQ,CAAC,CAAC,CAACyD,UAAU,CAACjC,YAAY,CAAC;YAChD1E,YAAY,CAACkD,QAAQ,CAAC,CAAC,CAAC8C,OAAO,CAACK,MAAM,EAAE;cAAEJ,OAAO,EAAE;YAAK,CAAC,CAAC;YAC1D3C,aAAa,CAAC4B,IAAI,CAACmB,MAAM,CAAC;YAC1BnC,YAAY,EAAE;UAClB,CAAC,MAAM;YACH;YACA;YACA;YACA;YACA;YACAlE,YAAY,CAACkD,QAAQ,CAAC,CAAC,CAACyD,UAAU,CAACjC,YAAY,CAAC;YAChD,IAAIM,OAAO,EAAE;cACTC,OAAO,CAAC2B,IAAI,CAAC,6CAA6C,EAAE;gBAAErC,QAAQ;gBAAE2B;cAAO,CAAC,CAAC;YACrF;YACA;YACAhC,YAAY,EAAE;UAClB;QACJ,CAAC,CAAC,OAAOF,KAAc,EAAE;UACrBG,YAAY,EAAE;UACd,MAAM0C,YAAY,GAAGrG,eAAe,CAACwD,KAAK,CAAC,IAAI,eAAe;UAC9D,MAAM8C,SAAS,GAAG,GAAGvC,QAAQ,KAAKsC,YAAY,EAAE;UAChDzC,MAAM,CAACc,IAAI,CAAC4B,SAAS,CAAC;UACtB,IAAI9B,OAAO,EAAE;YACTC,OAAO,CAACjB,KAAK,CAAC,qBAAqB,EAAE;cACjCO,QAAQ;cACRC,QAAQ;cACRC,QAAQ;cACRT,KAAK,EAAE6C,YAAY;cACnBE,KAAK,EAAG/C,KAAK,YAAYgD,KAAK,GAAIhD,KAAK,CAAC+C,KAAK,GAAGE;YACpD,CAAC,CAAC;UACN;;UAEA;UACAjH,YAAY,CAACkD,QAAQ,CAAC,CAAC,CAACyD,UAAU,CAACjC,YAAY,CAAC;QACpD;MACJ;;MAEA;MACA,IAAIR,YAAY,GAAG,CAAC,EAAE;QAClBnE,KAAK,CAACmH,OAAO,CAACtF,CAAC,CAAC,qCAAqC,EAAE;UAAEuF,KAAK,EAAEjD;QAAa,CAAC,CAAC,CAAC;MACpF;MACA,IAAIC,YAAY,GAAG,CAAC,EAAE;QAClB;QACA,MAAMiD,YAAY,GAAGhD,MAAM,CAACf,MAAM,GAAG,CAAC,GAChC,KAAKe,MAAM,CAACiD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACtD,IAAI,CAAC,IAAI,CAAC,GAAGK,MAAM,CAACf,MAAM,GAAG,CAAC,GAAG,YAAYe,MAAM,CAACf,MAAM,GAAG,CAAC,OAAO,GAAG,EAAE,EAAE,GACpG,EAAE;QACRtD,KAAK,CAACiE,KAAK,CAAC,GAAGpC,CAAC,CAAC,oCAAoC,EAAE;UAAEuF,KAAK,EAAEhD;QAAa,CAAC,CAAC,GAAGiD,YAAY,EAAE,CAAC;MACrG;MACA;MACAnE,UAAU,CAAC,MAAM;QAAEtB,SAAS,CAAC,QAAQ,CAAC;MAAE,CAAC,EAAE,IAAI,CAAC;IACpD,CAAC,CAAC,OAAOqC,KAAc,EAAE;MACrBjE,KAAK,CAACiE,KAAK,CAACxD,eAAe,CAACwD,KAAK,CAAC,IAAIpC,CAAC,CAAC,mCAAmC,CAAC,CAAC;IACjF,CAAC,SAAS;MACNY,sBAAsB,CAAC,IAAI,CAAC;IAChC;IACA,OAAOc,aAAa;EACxB,CAAC;EAED,MAAMgE,mBAAmB,GAAG1H,WAAW,CAAC,MAAOwD,aAAgC,IAAK;IAChF,MAAMmE,aAAa,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;IACzC,MAAMC,cAAmC,GAAG,EAAE;IAE9C,KAAK,MAAM7D,IAAI,IAAIP,aAAa,EAAE;MAC9B;MACA,IAAI,CAACO,IAAI,EAAE;QACP,IAAIqB,OAAO,EAAE;UACTC,OAAO,CAACjB,KAAK,CAAC,yCAAyC,CAAC;QAC5D;QACAjE,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,0CAA0C,CAAC,CAAC;QAC1D;MACJ;MAEA,MAAM6F,IAAI,GAAGrH,aAAa,CAACuD,IAAI,EAAE,EAAE,CAAC;MACpC,IAAI,CAAC8D,IAAI,EAAE;QACP,IAAIzC,OAAO,EAAE;UACTC,OAAO,CAACjB,KAAK,CAAC,gDAAgD,EAAEL,IAAI,CAAC;QACzE;QACA5D,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,uCAAuC,CAAC,CAAC;QACvD;MACJ;MAEA,MAAM6E,IAAI,GAAI9C,IAAI,CAAuB8C,IAAI;MAC7C,IAAIA,IAAI,KAAKQ,SAAS,IAAIR,IAAI,KAAK,IAAI,IAAIiB,MAAM,CAACC,KAAK,CAAClB,IAAI,CAAC,EAAE;QAC3D,IAAIzB,OAAO,EAAE;UACTC,OAAO,CAACjB,KAAK,CAAC,gDAAgD,EAAEL,IAAI,CAAC;QACzE;QACA5D,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,uCAAuC,EAAE;UAAE6F;QAAK,CAAC,CAAC,CAAC;QACjE;MACJ;MAEA,IAAIhB,IAAI,IAAI,CAAC,EAAE;QACX,IAAIzB,OAAO,EAAE;UACTC,OAAO,CAACjB,KAAK,CAAC,6CAA6C,EAAEL,IAAI,CAAC;QACtE;QACA5D,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,iCAAiC,EAAE;UAAE6F;QAAK,CAAC,CAAC,CAAC;QAC3D;MACJ;;MAEA;MACA,IAAIhB,IAAI,GAAGc,aAAa,EAAE;QACtBxH,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,oCAAoC,EAAE;UAAE6F,IAAI;UAAEjE,OAAO,EAAEtD,cAAc,CAACqH,aAAa;QAAE,CAAC,CAAC,CAAC;QACtG;MACJ;MAEA,MAAM9C,QAAQ,GAAGnE,aAAa,CAACqD,IAAI,CAAC;;MAEpC;MACA,IAAIhD,OAA2B;MAC/B,IAAI8D,QAAQ,CAAC7D,UAAU,CAAC,QAAQ,CAAC,EAAE;QAC/B;QACA,MAAMgH,OAAO,GAAGrH,YAAY,CAACoD,IAAI,CAAC;QAClC,IAAIiE,OAAO,KACNA,OAAO,CAAChH,UAAU,CAAC,SAAS,CAAC,IAAIgH,OAAO,CAAChH,UAAU,CAAC,YAAY,CAAC,IAC9DgH,OAAO,CAAChH,UAAU,CAAC,SAAS,CAAC,IAAIgH,OAAO,CAAChH,UAAU,CAAC,UAAU,CAAC,IAC/DgH,OAAO,CAAChH,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE;UAClCD,OAAO,GAAGiH,OAAO;QACrB,CAAC,MAAM;UACH;UACA,IAAI;YACA,IAAK,OAAOC,IAAI,KAAK,WAAW,IAAIlE,IAAI,YAAYkE,IAAI,IACnD,OAAOC,IAAI,KAAK,WAAW,IAAInE,IAAI,YAAYmE,IAAK,EAAE;cACvDnH,OAAO,GAAGE,GAAG,CAACkH,eAAe,CAACpE,IAAY,CAAC;YAC/C;UACJ,CAAC,CAAC,OAAOK,KAAc,EAAE;YACrB,IAAIgB,OAAO,EAAE;cACTC,OAAO,CAAC2B,IAAI,CAAC,+BAA+B,EAAE5C,KAAK,CAAC;YACxD;YACA;UACJ;QACJ;MACJ;MAEAwD,cAAc,CAACtC,IAAI,CAAC/E,uBAAuB,CAACwD,IAAI,EAAEhD,OAAO,EAAE8F,IAAI,EAAEgB,IAAI,EAAEhD,QAAQ,CAAC,CAAC;IACrF;IAEA,IAAI+C,cAAc,CAACnE,MAAM,KAAK,CAAC,EAAE;MAC7BtD,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,oCAAoC,CAAC,CAAC;MACpD;IACJ;;IAEA;IACAI,eAAe,CAACwF,cAAc,CAAC;IAC/BtF,oBAAoB,CAAC,IAAI,CAAC;EAC9B,CAAC,EAAE,CAACN,CAAC,CAAC,CAAC;EAEP,MAAMoG,mBAAmB,GAAG,MAAAA,CAAA,KAAY;IACpC,IAAIjG,YAAY,CAACsB,MAAM,KAAK,CAAC,EAAE;IAE/BnB,oBAAoB,CAAC,KAAK,CAAC;IAC3BC,cAAc,CAACS,OAAO,GAAGE,IAAI,CAACC,GAAG,CAAC,CAAC;IACnCV,iBAAiB,CAAC,IAAI,CAAC;IACvBG,sBAAsB,CAAC,IAAI,CAAC;IAE5B,IAAI;MACA,MAAMyF,aAAa,GAAGlG,YAAY,CAAC8B,GAAG,CAACqE,EAAE,IAAIA,EAAE,CAACvE,IAAI,CAAC;MACrDnB,sBAAsB,CAAC;QAAEI,OAAO,EAAE,CAAC;QAAEW,KAAK,EAAE0E,aAAa,CAAC5E;MAAO,CAAC,CAAC;MACnE,MAAMC,aAAa,GAAG,MAAMH,kBAAkB,CAAC8E,aAAa,CAAC;;MAE7D;MACAlG,YAAY,CAACoG,OAAO,CAACD,EAAE,IAAI;QACvBxH,gBAAgB,CAACwH,EAAE,CAACvH,OAAO,CAAC;MAChC,CAAC,CAAC;MACFqB,eAAe,CAAC,EAAE,CAAC;;MAEnB;MACA,IAAIb,UAAU,IAAImC,aAAa,CAACD,MAAM,GAAG,CAAC,EAAE;QACxC;QACAJ,UAAU,CAAC,MAAM;UACb,MAAMmF,YAAY,GAAG9E,aAAa,CAAC,CAAC,CAAC;UACrC,IAAI,CAAClC,WAAW,IAAIgH,YAAY,EAAE;YAC9B;YACA9G,QAAQ,GAAG8G,YAAY,CAAC;YACxB,IAAI/G,WAAW,KAAK,MAAM,EAAE;cACxBE,MAAM,GAAG,CAAC;YACd,CAAC,MAAM,IAAIF,WAAW,KAAK,OAAO,EAAE;cAChCG,OAAO,GAAG,CAAC;YACf;UACJ,CAAC,MAAM,IAAIJ,WAAW,EAAE;YACpB;YACAkC,aAAa,CAAC6E,OAAO,CAACxE,IAAI,IAAI;cAC1B,IAAI,CAAClC,WAAW,CAAC4G,GAAG,CAAC1E,IAAI,CAAC6B,EAAE,CAAC,EAAE;gBAC3B9D,cAAc,CAAC4G,IAAI,IAAI,IAAIC,GAAG,CAACD,IAAI,CAAC,CAACE,GAAG,CAAC7E,IAAI,CAAC6B,EAAE,CAAC,CAAC;cACtD;YACJ,CAAC,CAAC;UACN;QACJ,CAAC,EAAE,GAAG,CAAC;MACX;MAEA9C,SAAS,CAAC,CAAC;IACf,CAAC,CAAC,OAAOsB,KAAc,EAAE;MACrBjE,KAAK,CAACiE,KAAK,CAACxD,eAAe,CAACwD,KAAK,CAAC,IAAIpC,CAAC,CAAC,mCAAmC,CAAC,CAAC;MAC7Ec,SAAS,CAAC,CAAC;IACf;EACJ,CAAC;EAED,MAAM+F,kBAAkB,GAAGA,CAAA,KAAM;IAC7B;IACA1G,YAAY,CAACoG,OAAO,CAACD,EAAE,IAAI;MACvBxH,gBAAgB,CAACwH,EAAE,CAACvH,OAAO,CAAC;IAChC,CAAC,CAAC;IACFqB,eAAe,CAAC,EAAE,CAAC;IACnBE,oBAAoB,CAAC,KAAK,CAAC;EAC/B,CAAC;EAED,MAAMwG,iBAAiB,GAAIlD,EAAU,IAAK;IACtC,MAAM7B,IAAI,GAAG5B,YAAY,CAAC4G,IAAI,CAAET,EAAE,IAAKA,EAAE,CAAC1C,EAAE,KAAKA,EAAE,CAAC;IACpD,IAAI,CAAC7B,IAAI,EAAE;IACX,IAAIA,IAAI,CAAChD,OAAO,EAAE;MACdD,gBAAgB,CAACiD,IAAI,CAAChD,OAAO,CAAC;IAClC;IACA,MAAMiI,OAAO,GAAG7G,YAAY,CAAC2B,MAAM,CAAEwE,EAAE,IAAKA,EAAE,CAAC1C,EAAE,KAAKA,EAAE,CAAC;IACzDxD,eAAe,CAAC4G,OAAO,CAAC;IACxB,IAAIA,OAAO,CAACvF,MAAM,KAAK,CAAC,EAAE;MACtBnB,oBAAoB,CAAC,KAAK,CAAC;IAC/B;EACJ,CAAC;;EAED;AACJ;AACA;AACA;EACI,MAAM2G,gBAAgB,GAAG,MAAAA,CAAA,KAAY;IACjC;IACA,IAAIhH,iBAAiB,EAAE;MACnB9B,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,wCAAwC,CAAC,CAAC;MACxD;IACJ;IAEA,IAAI;MACAE,oBAAoB,CAAC,IAAI,CAAC;;MAE1B;MACA,MAAMgH,MAAM,GAAG,MAAMrI,kBAAkB,CAAC,CAAC;;MAEzC;MACA;MACA,MAAMyF,MAAM,GAAG,MAAM4C,MAAM,CAACC,gBAAgB,CAAC;QACzCC,IAAI,EAAE,KAAK;QACXC,QAAQ,EAAE,IAAI;QACdC,oBAAoB,EAAE;MAC1B,CAAC,CAAC;MAEF,IAAIhD,MAAM,CAACiD,QAAQ,EAAE;QACjBrH,oBAAoB,CAAC,KAAK,CAAC;QAC3B;MACJ;MAEA,IAAI,CAACoE,MAAM,CAACkD,MAAM,IAAIlD,MAAM,CAACkD,MAAM,CAAC/F,MAAM,KAAK,CAAC,EAAE;QAC9CvB,oBAAoB,CAAC,KAAK,CAAC;QAC3B/B,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,uCAAuC,CAAC,CAAC;QACvD;MACJ;;MAEA;MACA;MACA;MACA;MACA;MACA;MACA;MACA,MAAMqC,KAAwB,GAAG,EAAE;MACnC,MAAMG,MAAgB,GAAG,EAAE;;MAE3B;MACA;MACA,MAAMiF,kBAAkB,GAAGnD,MAAM,CAACkD,MAAM,CAACvF,GAAG,CAAC,CAACyF,GAAG,EAAEC,KAAK,KACpDtJ,gCAAgC,CAACqJ,GAAG,EAAEC,KAAK,CAAC,CACvCC,IAAI,CAAE7F,IAAI,IAA6B;QACpC,IAAIA,IAAI,EAAE;UACN;UACA,IAAI,CAACA,IAAI,CAAC8D,IAAI,IAAK9D,IAAI,CAAuB8C,IAAI,KAAKQ,SAAS,EAAE;YAC9D7C,MAAM,CAACc,IAAI,CAAC,SAASoE,GAAG,CAAC7B,IAAI,IAAI,MAAM,2CAA2C,CAAC;YACnF,OAAO,IAAI;UACf;UACA,OAAO9D,IAAI;QACf;QACA,OAAO,IAAI;MACf,CAAC,CAAC,CACD8F,KAAK,CAAEzF,KAAc,IAAK;QACvBI,MAAM,CAACc,IAAI,CAAC,SAASoE,GAAG,CAAC7B,IAAI,IAAI,MAAM,MAAMjH,eAAe,CAACwD,KAAK,CAAC,IAAI,mBAAmB,EAAE,CAAC;QAC7F,OAAO,IAAI;MACf,CAAC,CACT,CAAC;MAED,MAAM0F,cAAc,GAAG,MAAMC,OAAO,CAACC,GAAG,CAACP,kBAAkB,CAAC;;MAE5D;MACA,KAAK,MAAM1F,IAAI,IAAI+F,cAAc,EAAE;QAC/B,IAAI/F,IAAI,EAAE;UACNM,KAAK,CAACiB,IAAI,CAACvB,IAAI,CAAC;QACpB;MACJ;;MAEA;MACA,IAAIS,MAAM,CAACf,MAAM,GAAG,CAAC,EAAE;QACnB,MAAMwD,YAAY,GAAGzC,MAAM,CAACiD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACtD,IAAI,CAAC,IAAI,CAAC,IAAIK,MAAM,CAACf,MAAM,GAAG,CAAC,GAAG,YAAYe,MAAM,CAACf,MAAM,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;QACpHtD,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,sCAAsC,EAAE;UAAEwC,MAAM,EAAEyC;QAAa,CAAC,CAAC,CAAC;MACpF;;MAEA;MACA,IAAI5C,KAAK,CAACZ,MAAM,GAAG,CAAC,EAAE;QAClB,MAAMiE,mBAAmB,CAACrD,KAAK,CAAC;MACpC,CAAC,MAAM;QACH;QACAlE,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,wCAAwC,CAAC,CAAC;MAC5D;IACJ,CAAC,CAAC,OAAOoC,KAAc,EAAE;MACrB,IAAIgB,OAAO,EAAE;QACTC,OAAO,CAACjB,KAAK,CAAC,oBAAoB,EAAEA,KAAK,CAAC;MAC9C;MACA,IAAIxD,eAAe,CAACwD,KAAK,CAAC,EAAE6F,QAAQ,CAAC,sBAAsB,CAAC,IAAIrJ,eAAe,CAACwD,KAAK,CAAC,EAAE6F,QAAQ,CAAC,wCAAwC,CAAC,EAAE;QACxI,IAAIrJ,eAAe,CAACwD,KAAK,CAAC,EAAE6F,QAAQ,CAAC,wCAAwC,CAAC,EAAE;UAC5E9J,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC,MAAM;UACH7B,KAAK,CAACiE,KAAK,CAACpC,CAAC,CAAC,8CAA8C,CAAC,CAAC;QAClE;MACJ,CAAC,MAAM;QACH7B,KAAK,CAACiE,KAAK,CAACxD,eAAe,CAACwD,KAAK,CAAC,IAAIpC,CAAC,CAAC,yCAAyC,CAAC,CAAC;MACvF;IACJ,CAAC,SAAS;MACN;MACAE,oBAAoB,CAAC,KAAK,CAAC;IAC/B;EACJ,CAAC;EAED,OAAO;IACHD,iBAAiB;IACjBE,YAAY;IACZE,iBAAiB;IACjB4G,gBAAgB;IAChBb,mBAAmB;IACnBS,kBAAkB;IAClBC;EACJ,CAAC;AACL,CAAC;AAED,eAAe3H,kBAAkB","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=surfaceScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["ui/types/surfaceScreen.ts"],"mappings":"","ignoreList":[]}
@@ -1,36 +1,38 @@
1
1
  /**
2
- * OxyAccountDialog — the ONE unified account dialog for `@oxyhq/services`.
2
+ * OxyAccountDialog — the ONE unified account dialog BODY for `@oxyhq/services`.
3
3
  *
4
- * Bloom `<Dialog>` chrome (header, back button, placement, scroll body) around
5
- * the headless chooser logic, which lives in `OxyAuthChooser` — the account
6
- * switcher, sign-in, sign-up, and QR views are ALL there, extracted so the
7
- * same chooser can be mounted bare by a future host with no Dialog chrome
8
- * (e.g. an auth.oxy.so hub page driving the cross-origin passkey popup, b2).
9
- * This file owns ONLY the chrome: the title/subtitle per view, the back
10
- * button, and the Bloom `<Dialog>` surface itself.
4
+ * The header (title/subtitle per view + back button) around the headless chooser
5
+ * logic, which lives in `OxyAuthChooser` — the account switcher, sign-in,
6
+ * sign-up, and QR views are ALL there, extracted so the same chooser can be
7
+ * mounted bare by a future host with no Dialog chrome (e.g. an auth.oxy.so hub
8
+ * page driving the cross-origin passkey popup, b2). This file owns ONLY the
9
+ * header + the scroll body.
11
10
  *
12
- * The surface is Bloom's `<Dialog>` (`@oxyhq/bloom/dialog`) with a responsive
13
- * `placement`a bottom sheet on narrow viewports, a centered card on wide ones.
14
- * It REPLACES the hand-rolled RN `<Modal>` + `<GestureHandlerRootView>` + manual
15
- * backdrop/card wrapper this component used before. That RN `<Modal>` is invisible
16
- * under React StrictMode on web: react-native-web's `ModalPortal` appends its host
17
- * node during render but removes it in an effect cleanup and never re-attaches, so
18
- * the dialog never paints in a dev Vite build. Bloom's `<Dialog>` renders through
19
- * its own Portal and has no such lifecycle hazard.
20
- *
21
- * Open/close is CONTROLLED by `isAccountDialogOpen` (the `open` prop); the Dialog
22
- * stays mounted whenever the controller exists so it can animate its own close.
23
- * Backdrop / swipe-to-dismiss is disabled (`dismissOnBackdrop={false}`) on purpose:
24
- * Bloom's controlled `bottom` placement does not fire `onClose` on a gesture or
25
- * backdrop dismissal, so allowing it would desync `isAccountDialogOpen` from the
26
- * sheet and block reopening. The header close button (and `OxyAuthChooser`'s
27
- * `onComplete`) drive `closeAccountDialog`, which flips `open` and runs the exit
28
- * animation.
11
+ * It is presented as the `AccountDialog` route on the shared Bloom SURFACE STACK
12
+ * (`@oxyhq/bloom/surfaces`)`OxyContext.openAccountDialog` calls
13
+ * `presentDetached('AccountDialog', …, { placement: { base: 'bottom', md:
14
+ * 'center' }, dismissOnBackdrop: false, maxWidth: 420 })`, so the STACK owns the
15
+ * responsive `<Dialog>` chrome and this component renders only its content. That
16
+ * replaces the previous standalone controlled `<Dialog open={isAccountDialogOpen}>`
17
+ * mount: dismissal now flows through the stack (backdrop/swipe disabled), and the
18
+ * header close button (and `OxyAuthChooser`'s `onComplete`) drive
19
+ * `useOxy().closeAccountDialog`, which dismisses the surface and runs its exit
20
+ * animation. The view-enum (`accounts|signin|qr|add|signup`) stays internal here,
21
+ * driven by the shared `AccountDialogController` in `@oxyhq/core`.
29
22
  */
30
23
  import type React from 'react';
31
24
  /**
32
- * The unified account dialog. Mounted once by `OxyProvider`; opened imperatively
33
- * via `useOxy().openAccountDialog(view?)` or imperative `openAccountDialog('signin')`.
25
+ * The unified account dialog BODY the header + `OxyAuthChooser` chooser.
26
+ *
27
+ * Presented as the `AccountDialog` surface (route) on the shared Bloom surface
28
+ * stack; the surface owns the `<Dialog>` chrome (responsive `{ base: 'bottom',
29
+ * md: 'center' }` placement, `dismissOnBackdrop={false}`, `maxWidth={420}` — set
30
+ * by `OxyContext` when it presents this surface), so this component renders ONLY
31
+ * the content. Open it via `useOxy().openAccountDialog(view?)` or the imperative
32
+ * `openAccountDialog('signin')`; the view-enum (`accounts|signin|qr|add|signup`)
33
+ * stays internal here, driven by the shared `AccountDialogController` in
34
+ * `@oxyhq/core`. Closing routes through `useOxy().closeAccountDialog`, which
35
+ * dismisses the surface and runs its exit animation.
34
36
  */
35
37
  declare const OxyAccountDialog: React.FC;
36
38
  export default OxyAccountDialog;
@@ -1 +1 @@
1
- {"version":3,"file":"OxyAccountDialog.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyAccountDialog.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B;;;GAGG;AACH,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAgD7B,CAAC;AAgJF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"OxyAccountDialog.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyAccountDialog.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAe/B;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAyC7B,CAAC;AAgJF,eAAe,gBAAgB,CAAC"}
@@ -5,8 +5,9 @@ import type { OxyProviderProps } from '../types/navigation';
5
5
  *
6
6
  * Provides authentication, session management, query client, and UI overlays.
7
7
  * Wraps its own overlay stack in SafeAreaProvider and GestureHandlerRootView so
8
- * BottomSheetRouter and OxyAccountDialog can safely render even when a consuming
9
- * app has not mounted those providers yet.
8
+ * the shared Bloom SURFACE STACK (`<SurfaceProvider>` / `<SurfaceHost>`) which
9
+ * hosts every SDK surface (the ~35 bottom-sheet routes + the AccountDialog) — can
10
+ * safely render even when a consuming app has not mounted those providers yet.
10
11
  *
11
12
  * Usage:
12
13
  * ```tsx
@@ -1 +1 @@
1
- {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmE,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAIjH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAqE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA2OrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"OxyProvider.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/OxyProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAI7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAgD5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAyOrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import type { SurfaceControls } from '@oxyhq/bloom/surfaces';
3
+ import type { SurfaceNavStack } from '../navigation/surfaceNavStack';
4
+ import type { SurfacePresentation } from '../navigation/surfaceRegistry';
5
+ export interface SurfaceScreenProps {
6
+ /** This surface's route history (the NAV-WITHIN axis). */
7
+ navStack: SurfaceNavStack;
8
+ /** Bloom's per-surface controls (dismiss / present a child) — the DEPTH axis. */
9
+ surface: SurfaceControls;
10
+ /** This surface's presentation, so `navigate` knows when to drill in vs. stack. */
11
+ presentation: SurfacePresentation;
12
+ }
13
+ /**
14
+ * Binds one SDK surface to its content: resolves the lazy screen for the current
15
+ * nav-stack frame and renders it inside the error boundary with the per-surface
16
+ * navigation props. Mounted by `surfaces.present` as the Bloom surface's content.
17
+ *
18
+ * Dismissal is driven through the nav stack's `closing` flag (watched in an
19
+ * effect) rather than a captured-controls call, so a dismiss requested before
20
+ * this surface mounted still resolves the Bloom surface exactly once.
21
+ */
22
+ declare function SurfaceScreen({ navStack, surface, presentation }: SurfaceScreenProps): React.JSX.Element | null;
23
+ export default SurfaceScreen;
24
+ //# sourceMappingURL=SurfaceScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SurfaceScreen.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/SurfaceScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AAI/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AA2DzE,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,QAAQ,EAAE,eAAe,CAAC;IAC1B,iFAAiF;IACjF,OAAO,EAAE,eAAe,CAAC;IACzB,mFAAmF;IACnF,YAAY,EAAE,mBAAmB,CAAC;CACnC;AAED;;;;;;;;GAQG;AACH,iBAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,kBAAkB,4BA8E7E;AAED,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA2D/B,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAY3B,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA29BzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,mCAAc,CAAC;AAmE9C,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC"}
1
+ {"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4D/B,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAY3B,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAo/BzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,mCAAc,CAAC;AAmE9C,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC"}
@@ -1,27 +1,35 @@
1
1
  import type { RouteName } from './routes';
2
2
  /**
3
- * Bottom Sheet State Manager
3
+ * Bottom-sheet manager the INTERNAL adapter that keeps the historical
4
+ * `showBottomSheet` / `closeBottomSheet` API working on top of the new Bloom
5
+ * surface stack (`navigation/surfaces.ts`). The public signatures are unchanged;
6
+ * this file just re-expresses them as thin calls into the typed surface layer.
7
+ *
8
+ * The old single-surface store is gone: `showBottomSheet` now open-or-navigates
9
+ * the "base" (top-most) route surface, and cross-presentation targets (the
10
+ * full-bleed image picker) stack a NEW surface on top — Bloom coordinates the
11
+ * z-order / backdrop / dismiss so nothing clashes.
12
+ */
13
+ /**
14
+ * Open a bottom-sheet route. If the top-most active surface hosts the SAME
15
+ * presentation (the common all-sheets case) the route is drilled into it; a route
16
+ * with a different presentation (the image picker's full-bleed surface) is
17
+ * presented as a NEW surface on top. Opening with no active surface presents the
18
+ * first one.
19
+ *
20
+ * `fullScreen` is accepted for signature compatibility and ignored — a route's
21
+ * surface is now derived from its registry config, not a per-call flag.
4
22
  */
5
- export interface BottomSheetState {
6
- currentScreen: RouteName | null;
7
- screenProps: Record<string, unknown>;
8
- currentStep?: number;
9
- history: Array<{
10
- screen: RouteName;
11
- props: Record<string, unknown>;
12
- step?: number;
13
- }>;
14
- isOpen: boolean;
15
- fullScreen: boolean;
16
- }
17
- export declare const bottomSheetStore: import("zustand").StoreApi<BottomSheetState>;
18
- export declare const getState: () => BottomSheetState;
19
23
  export declare const showBottomSheet: (screenOrConfig: RouteName | {
20
24
  screen: RouteName;
21
25
  props?: Record<string, unknown>;
22
26
  fullScreen?: boolean;
23
27
  }) => void;
28
+ /** Dismiss the whole bottom-sheet session (every active route surface). */
24
29
  export declare const closeBottomSheet: () => void;
30
+ /**
31
+ * Step back within the top-most surface's route history. Returns `true` when a
32
+ * frame was popped, `false` when the surface is already at its root frame.
33
+ */
25
34
  export declare const goBack: () => boolean;
26
- export declare const updateState: (updates: Partial<BottomSheetState>) => void;
27
35
  //# sourceMappingURL=bottomSheetManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bottomSheetManager.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/bottomSheetManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAC7B,aAAa,EAAE,SAAS,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrF,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;CACvB;AAWD,eAAO,MAAM,gBAAgB,8CAAoD,CAAC;AAElF,eAAO,MAAM,QAAQ,wBAAoC,CAAC;AAE1D,eAAO,MAAM,eAAe,GACxB,gBAAgB,SAAS,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,KACzG,IA8BF,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,IAEnC,CAAC;AAEF,eAAO,MAAM,MAAM,QAAO,OAezB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,SAAS,OAAO,CAAC,gBAAgB,CAAC,SAE7D,CAAC"}
1
+ {"version":3,"file":"bottomSheetManager.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/bottomSheetManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAK1C;;;;;;;;;;GAUG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAC1B,gBACI,SAAS,GACT;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,KAC/E,IAeF,CAAC;AAEF,2EAA2E;AAC3E,eAAO,MAAM,gBAAgB,QAAO,IAEnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,QAAO,OAGzB,CAAC"}
@@ -1,64 +1,6 @@
1
- import type { ComponentType, ReactNode } from 'react';
1
+ import type { ComponentType } from 'react';
2
2
  import type { BaseScreenProps } from '../types/navigation';
3
- export type RouteName = 'ManageAccount' | 'AccountVerification' | 'PaymentGateway' | 'Profile' | 'LanguageSelector' | 'PrivacySettings' | 'SearchSettings' | 'FileManagement' | 'HelpSupport' | 'FAQ' | 'Feedback' | 'LegalDocuments' | 'AppInfo' | 'PremiumSubscription' | 'WelcomeNewUser' | 'UserLinks' | 'HistoryView' | 'SavesCollections' | 'EditProfile' | 'EditProfileField' | 'LearnMoreUsernames' | 'TrustCenter' | 'TrustLeaderboard' | 'TrustRewards' | 'TrustRules' | 'AboutTrust' | 'TrustFAQ' | 'FollowersList' | 'FollowingList' | 'CreateAccount' | 'AccountMembers' | 'AccountSettings' | 'AvatarCrop' | 'Notifications' | 'ConnectedApps' | 'Preferences';
3
+ export type RouteName = 'ManageAccount' | 'AccountVerification' | 'PaymentGateway' | 'Profile' | 'LanguageSelector' | 'PrivacySettings' | 'SearchSettings' | 'FileManagement' | 'HelpSupport' | 'FAQ' | 'Feedback' | 'LegalDocuments' | 'AppInfo' | 'PremiumSubscription' | 'WelcomeNewUser' | 'UserLinks' | 'HistoryView' | 'SavesCollections' | 'EditProfile' | 'EditProfileField' | 'LearnMoreUsernames' | 'TrustCenter' | 'TrustLeaderboard' | 'TrustRewards' | 'TrustRules' | 'AboutTrust' | 'TrustFAQ' | 'FollowersList' | 'FollowingList' | 'CreateAccount' | 'AccountMembers' | 'AccountSettings' | 'AvatarCrop' | 'Notifications' | 'ConnectedApps' | 'Preferences' | 'AccountDialog';
4
4
  export declare const getScreenComponent: (routeName: RouteName) => ComponentType<BaseScreenProps> | undefined;
5
5
  export declare const isValidRoute: (routeName: string) => routeName is RouteName;
6
- /**
7
- * Configuration that BottomSheetRouter applies to the underlying BottomSheet
8
- * for a given route. Adding new options here is additive — never rename or
9
- * remove fields without bumping the consumer surface as a breaking change.
10
- */
11
- export interface SheetRouteConfig {
12
- /**
13
- * Which surface hosts the route. `'sheet'` (default) renders the screen in
14
- * the in-tree `BottomSheet`. `'dialog'` renders it in a responsive Bloom
15
- * `<Dialog>` (bottom-sheet on narrow, centered card on `md+`) — used for the
16
- * flagship image picker, which reads better as a centered panel on wide
17
- * viewports than a full-width sheet. `BottomSheetRouter` keeps BOTH surfaces
18
- * mounted and routes the active screen into exactly one based on this value.
19
- */
20
- presentation: 'sheet' | 'dialog';
21
- /**
22
- * When `false`, BottomSheet skips its internal ScrollView and lets the
23
- * screen own scrolling. Required for screens that render a FlatList,
24
- * SectionList, or any other VirtualizedList — nesting one inside a
25
- * plain ScrollView breaks windowing and triggers a RN warning.
26
- *
27
- * Ignored for `presentation: 'dialog'` routes — those don't render in the
28
- * in-tree `BottomSheet` at all.
29
- */
30
- scrollable: boolean;
31
- /**
32
- * Controls the body-pan activation strategy on the underlying bloom
33
- * `BottomSheet`. `true` uses RNGH's `manualActivation` with scroll-handoff
34
- * (recommended for scrollable content — the only RNGH 2.x pattern that
35
- * doesn't steal vertical events from the inner scroller on Android).
36
- * `false` uses an always-active body pan that gates on scroll offset.
37
- *
38
- * Defaults to `true` for all routes — matches the historical in-tree
39
- * BottomSheet behavior. Per-route opt-out is possible if a screen needs
40
- * the always-active pan instead.
41
- */
42
- manualActivation: boolean;
43
- /**
44
- * When `true`, the backdrop dims proportionally with drag distance (iOS
45
- * Photos style). Defaults to `true` for all routes — matches the
46
- * historical in-tree BottomSheet behavior.
47
- */
48
- dynamicBackdrop: boolean;
49
- /**
50
- * Optional custom handle slot. When provided, replaces the default
51
- * 36×5 pill drag handle. The handle remains unconditionally draggable
52
- * via the dedicated handle gesture (when `manualActivation` is `true`).
53
- * Use sparingly — screens should default to the standard handle for
54
- * platform consistency.
55
- */
56
- handleComponent?: () => ReactNode;
57
- }
58
- /**
59
- * Returns the bottom-sheet configuration for a route. Defaults match the
60
- * pre-refactor in-tree `BottomSheet` (scrollable, manualActivation,
61
- * dynamicBackdrop). Routes opt out per-field as needed.
62
- */
63
- export declare const getSheetConfig: (routeName: RouteName | null, screenProps: Record<string, unknown>) => SheetRouteConfig;
64
6
  //# sourceMappingURL=routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,MAAM,MAAM,SAAS,GACf,eAAe,GACf,qBAAqB,GACrB,gBAAgB,GAChB,SAAS,GACT,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,aAAa,GACb,KAAK,GACL,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,gBAAgB,GAChB,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,aAAa,GACb,kBAAkB,GAClB,oBAAoB,GACpB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,CAAC;AAkDpB,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,KAAG,aAAa,CAAC,eAAe,CAAC,GAAG,SAsB1F,CAAC;AAIF,eAAO,MAAM,YAAY,GAAI,WAAW,MAAM,KAAG,SAAS,IAAI,SAE7D,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;;;;OAOG;IACH,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC;;;;;;;;OAQG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;OAUG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,SAAS,CAAC;CACrC;AAgCD;;;;GAIG;AACH,eAAO,MAAM,cAAc,GACvB,WAAW,SAAS,GAAG,IAAI,EAC3B,aAAa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACrC,gBAWF,CAAC"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,MAAM,MAAM,SAAS,GACf,eAAe,GACf,qBAAqB,GACrB,gBAAgB,GAChB,SAAS,GACT,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,aAAa,GACb,KAAK,GACL,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,gBAAgB,GAChB,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,aAAa,GACb,kBAAkB,GAClB,oBAAoB,GACpB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,GACb,eAAe,CAAC;AAsDtB,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,KAAG,aAAa,CAAC,eAAe,CAAC,GAAG,SAsB1F,CAAC;AAIF,eAAO,MAAM,YAAY,GAAI,WAAW,MAAM,KAAG,SAAS,IAAI,SAE7D,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { type StoreApi } from 'zustand/vanilla';
2
+ import type { RouteName } from './routes';
3
+ /**
4
+ * Per-surface route history — the NAV-WITHIN axis.
5
+ *
6
+ * Bloom's surface stack owns DEPTH (a surface presented on top of another). This
7
+ * store owns the ORTHOGONAL axis: the route history INSIDE one SDK surface. Each
8
+ * SDK surface holds its own {@link SurfaceNavStack}; `navigate`/`replace`/`goBack`
9
+ * mutate it and the SAME Bloom surface re-renders its content from the new top
10
+ * frame. It is the per-surface reincarnation of the old global
11
+ * `bottomSheetStore`'s `history` + `currentStep`.
12
+ *
13
+ * `closing`/`closeResult` model a pending dismissal: the surface's `SurfaceScreen`
14
+ * watches them and calls the Bloom surface's `dismiss(result)` from an effect —
15
+ * so a dismiss requested BEFORE the surface has mounted still resolves once it
16
+ * does, with no controls-capture race and no render-phase side effect.
17
+ */
18
+ /** One frame in a surface's route history. */
19
+ export interface NavFrame {
20
+ route: RouteName;
21
+ props: Record<string, unknown>;
22
+ /** Current wizard step for step-based screens (seeded from `props.initialStep`). */
23
+ step: number;
24
+ }
25
+ export interface NavStackState {
26
+ /** Bottom → top; the last frame is the visible screen. */
27
+ frames: NavFrame[];
28
+ /** Flipped once a dismiss is requested; the host resolves the Bloom surface. */
29
+ closing: boolean;
30
+ /** The value the surface's `present()` promise resolves with on dismissal. */
31
+ closeResult: unknown;
32
+ }
33
+ export interface SurfaceNavStack {
34
+ store: StoreApi<NavStackState>;
35
+ /** Drill in: push a new frame. */
36
+ navigate(route: RouteName, props?: Record<string, unknown>): void;
37
+ /** Swap the top frame in place (no history entry). */
38
+ replace(route: RouteName, props?: Record<string, unknown>): void;
39
+ /** Pop one frame. Returns `false` when already at the root frame. */
40
+ goBack(): boolean;
41
+ /** Whether a back is possible (a deeper frame OR a prior wizard step). */
42
+ canGoBack(): boolean;
43
+ /** Set the current frame's wizard step. */
44
+ setStep(step: number): void;
45
+ /** Request dismissal of the whole surface, resolving its promise with `result`. */
46
+ requestDismiss(result?: unknown): void;
47
+ /** The current (top) frame. */
48
+ getTop(): NavFrame;
49
+ }
50
+ export declare function createSurfaceNavStack(route: RouteName, props?: Record<string, unknown>): SurfaceNavStack;
51
+ //# sourceMappingURL=surfaceNavStack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surfaceNavStack.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/surfaceNavStack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AAEH,8CAA8C;AAC9C,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,gFAAgF;IAChF,OAAO,EAAE,OAAO,CAAC;IACjB,8EAA8E;IAC9E,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC/B,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAClE,sDAAsD;IACtD,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACjE,qEAAqE;IACrE,MAAM,IAAI,OAAO,CAAC;IAClB,0EAA0E;IAC1E,SAAS,IAAI,OAAO,CAAC;IACrB,2CAA2C;IAC3C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mFAAmF;IACnF,cAAc,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACvC,+BAA+B;IAC/B,MAAM,IAAI,QAAQ,CAAC;CACpB;AAQD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,SAAS,EAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,eAAe,CA8CjB"}
@@ -0,0 +1,117 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { AccountDialogView } from '@oxyhq/core';
3
+ import type { RouteName } from './routes';
4
+ /**
5
+ * The SDK's typed surface registry — the contract layer the SDK stacks on top of
6
+ * Bloom's content-agnostic surface stack (`@oxyhq/bloom/surfaces`). One entry per
7
+ * route describing its `props` (what the presenter must pass) and its `result`
8
+ * (what awaiting `present()` resolves with). Hand-maintained, contract-first:
9
+ * adding a route here is the single edit that types it end to end.
10
+ *
11
+ * For P1 most routes keep permissive `Record<string, unknown>` props + a `void`
12
+ * result — the historical grab-bag `showBottomSheet`/`navigate` props are
13
+ * unchanged. Later phases tighten individual routes without changing this shape.
14
+ */
15
+ /** One registry entry: the props a route is presented with + its dismissal result. */
16
+ type SurfaceRoute<Props = Record<string, unknown>, Result = void> = {
17
+ props: Props;
18
+ result: Result;
19
+ };
20
+ export interface SurfaceRegistry {
21
+ ManageAccount: SurfaceRoute;
22
+ AccountVerification: SurfaceRoute;
23
+ PaymentGateway: SurfaceRoute;
24
+ Profile: SurfaceRoute;
25
+ LanguageSelector: SurfaceRoute;
26
+ PrivacySettings: SurfaceRoute;
27
+ SearchSettings: SurfaceRoute;
28
+ FileManagement: SurfaceRoute;
29
+ HelpSupport: SurfaceRoute;
30
+ FAQ: SurfaceRoute;
31
+ Feedback: SurfaceRoute;
32
+ LegalDocuments: SurfaceRoute;
33
+ AppInfo: SurfaceRoute;
34
+ PremiumSubscription: SurfaceRoute;
35
+ WelcomeNewUser: SurfaceRoute;
36
+ UserLinks: SurfaceRoute;
37
+ HistoryView: SurfaceRoute;
38
+ SavesCollections: SurfaceRoute;
39
+ EditProfile: SurfaceRoute;
40
+ EditProfileField: SurfaceRoute;
41
+ LearnMoreUsernames: SurfaceRoute;
42
+ TrustCenter: SurfaceRoute;
43
+ TrustLeaderboard: SurfaceRoute;
44
+ TrustRewards: SurfaceRoute;
45
+ TrustRules: SurfaceRoute;
46
+ AboutTrust: SurfaceRoute;
47
+ TrustFAQ: SurfaceRoute;
48
+ FollowersList: SurfaceRoute;
49
+ FollowingList: SurfaceRoute;
50
+ CreateAccount: SurfaceRoute;
51
+ AccountMembers: SurfaceRoute;
52
+ AccountSettings: SurfaceRoute;
53
+ AvatarCrop: SurfaceRoute;
54
+ Notifications: SurfaceRoute;
55
+ ConnectedApps: SurfaceRoute;
56
+ Preferences: SurfaceRoute;
57
+ /** Unified account switcher + sign-in surface (folded `OxyAccountDialog` body). */
58
+ AccountDialog: SurfaceRoute<{
59
+ initialView?: AccountDialogView;
60
+ }>;
61
+ }
62
+ /** Typed props a route is presented with. */
63
+ export type SurfaceProps<K extends RouteName> = SurfaceRegistry[K]['props'];
64
+ /** What awaiting a route's `present()` resolves with when it is dismissed. */
65
+ export type SurfaceResult<K extends RouteName> = SurfaceRegistry[K]['result'];
66
+ /**
67
+ * How a surface renders — the SDK's presentation taxonomy. Each value maps to a
68
+ * concrete Bloom `Dialog` placement/chrome in `surfaces.ts`:
69
+ *
70
+ * - `'sheet'` → responsive `{ base: 'bottom', md: 'center' }` (the default:
71
+ * a bottom sheet on narrow viewports, a centered card on wide).
72
+ * - `'center'` → a plain centered modal at every width.
73
+ * - `'drawer'` → responsive `{ base: 'bottom', md: 'left' }` side drawer.
74
+ * - `'fullScreen'` → approximated with the shared `Dialog`: a full-height sheet /
75
+ * large centered card, flush (`contentPadding: 0`) content, a
76
+ * black canvas and programmatic-only dismiss (the flagship
77
+ * image picker). A real Bloom `'fullScreen'` placement is a
78
+ * follow-up if the approximation reads wrong on device.
79
+ */
80
+ export type SurfacePresentation = 'sheet' | 'center' | 'drawer' | 'fullScreen';
81
+ /**
82
+ * Per-route surface configuration. Merges the historical `SheetRouteConfig`
83
+ * knobs with the new {@link SurfacePresentation}.
84
+ *
85
+ * NOTE: `scrollable` / `manualActivation` / `dynamicBackdrop` / `handleComponent`
86
+ * describe the in-tree bottom-sheet's pan + scroll behaviour. On Bloom's `Dialog`
87
+ * surface those concerns are now owned by the shared `DialogBottomSheet` (it opts
88
+ * pure custom children OUT of its internal ScrollView and manages the pan itself),
89
+ * so for P1 these fields are informational — reserved for a future Bloom
90
+ * bottom-placement passthrough. `presentation` (+ `scrollable` for the picker's
91
+ * flush layout) is what actually drives the surface today.
92
+ */
93
+ export interface SurfaceRouteConfig {
94
+ /** Which surface hosts the route. */
95
+ presentation: SurfacePresentation;
96
+ /**
97
+ * When `false`, the route owns its own scroll container (a FlatList /
98
+ * SectionList / VirtualizedList) and the host must not wrap it in a ScrollView.
99
+ */
100
+ scrollable: boolean;
101
+ /** Body-pan activation strategy — reserved (owned by Bloom's Dialog surface). */
102
+ manualActivation: boolean;
103
+ /** Drag-proportional backdrop dim — reserved (owned by Bloom's Dialog surface). */
104
+ dynamicBackdrop: boolean;
105
+ /** Optional custom drag-handle slot — reserved (owned by Bloom's Dialog surface). */
106
+ handleComponent?: () => ReactNode;
107
+ }
108
+ /**
109
+ * Resolve the surface configuration for a route + props. Defaults to the
110
+ * responsive sheet; the image-only FileManagement picker upgrades to a full-bleed
111
+ * `'fullScreen'` surface that owns its own scrolling.
112
+ */
113
+ export declare const getSurfaceConfig: (route: RouteName, props: Record<string, unknown>) => SurfaceRouteConfig;
114
+ /** Convenience: just the presentation taxonomy for a route + props. */
115
+ export declare const getSurfacePresentation: (route: RouteName, props: Record<string, unknown>) => SurfacePresentation;
116
+ export {};
117
+ //# sourceMappingURL=surfaceRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surfaceRegistry.d.ts","sourceRoot":"","sources":["../../../../../src/ui/navigation/surfaceRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import { type PresentOptions } from '@oxyhq/bloom/surfaces';
2
+ import type { RouteName } from './routes';
3
+ import { type SurfacePresentation, type SurfaceProps, type SurfaceResult } from './surfaceRegistry';
4
+ import { type SurfaceNavStack } from './surfaceNavStack';
5
+ /**
6
+ * A live handle to a presented SDK surface. Exposes DEPTH controls (`dismiss`,
7
+ * `result`) and NAV-WITHIN controls (`navigate`/`replace`/`goBack`/`setStep`) that
8
+ * drive this surface's own nav stack. Held by the `showBottomSheet` adapter (base
9
+ * surface) and by `OxyContext` (the AccountDialog surface).
10
+ */
11
+ export interface SurfaceInstance<K extends RouteName = RouteName> {
12
+ readonly route: RouteName;
13
+ readonly presentation: SurfacePresentation;
14
+ navigate: (route: RouteName, props?: Record<string, unknown>) => void;
15
+ replace: (route: RouteName, props?: Record<string, unknown>) => void;
16
+ goBack: () => boolean;
17
+ canGoBack: () => boolean;
18
+ setStep: (step: number) => void;
19
+ dismiss: (result?: SurfaceResult<K>) => void;
20
+ readonly result: Promise<SurfaceResult<K> | undefined>;
21
+ }
22
+ /**
23
+ * The type-erased handle the `showBottomSheet` adapter needs from a tracked
24
+ * surface: what it hosts, and how to drive/dismiss it. Kept result-type-free so
25
+ * the (generic) `SurfaceInstance<K>` never has to be widened into a shared array.
26
+ */
27
+ interface TrackedSurface {
28
+ readonly route: RouteName;
29
+ readonly presentation: SurfacePresentation;
30
+ navigate: (route: RouteName, props?: Record<string, unknown>) => void;
31
+ goBack: () => boolean;
32
+ dismiss: () => void;
33
+ }
34
+ /**
35
+ * Present a NEW route surface on top of the stack (the DEPTH axis). Resolves with
36
+ * the value the surface is dismissed with. Registered in the route-surface stack.
37
+ */
38
+ export declare function present<K extends RouteName>(route: K, props?: SurfaceProps<K>, opts?: PresentOptions): SurfaceInstance<K>;
39
+ /**
40
+ * Present a surface that is NOT part of the `showBottomSheet` base-navigation
41
+ * lineage (the AccountDialog modal). Otherwise identical to {@link present}.
42
+ */
43
+ export declare function presentDetached<K extends RouteName>(route: K, props?: SurfaceProps<K>, opts?: PresentOptions): SurfaceInstance<K>;
44
+ /**
45
+ * Untyped present for the adapter, the nav helpers, and the `SurfaceScreen`
46
+ * binding (where the route is a runtime value and its props are already erased).
47
+ */
48
+ export declare function presentRoute(route: RouteName, props?: Record<string, unknown>): SurfaceInstance;
49
+ /** The top-most active route surface, or `undefined` when none are open. */
50
+ export declare function topRouteSurface(): TrackedSurface | undefined;
51
+ /**
52
+ * Dismiss every active route surface (the whole `showBottomSheet` session). The
53
+ * AccountDialog is untracked, so it is untouched. Iterates a snapshot because
54
+ * `dismiss` mutates `activeRouteSurfaces` asynchronously as surfaces settle.
55
+ */
56
+ export declare function closeAllRouteSurfaces(): void;
57
+ /**
58
+ * Drill in from a screen: navigate WITHIN the current surface when the target's
59
+ * presentation matches, else present the target as a NEW surface on top (so a
60
+ * sheet screen opening the full-bleed picker gets the right chrome).
61
+ */
62
+ export declare function navigateWithinOrPresent(currentPresentation: SurfacePresentation, navStack: SurfaceNavStack, route: RouteName, props?: Record<string, unknown>): void;
63
+ /** Replace variant of {@link navigateWithinOrPresent}. */
64
+ export declare function replaceWithinOrPresent(currentPresentation: SurfacePresentation, navStack: SurfaceNavStack, route: RouteName, props?: Record<string, unknown>): void;
65
+ /**
66
+ * The SDK's imperative surface API (a module singleton). `present` is the typed
67
+ * route presenter; `dismissAll` unwinds the whole session. Not yet exported from
68
+ * the package root — the public `surfaces`/`useSurfaces` API lands in a later
69
+ * phase; for P1 the internal adapters (`showBottomSheet`, `openAccountDialog`)
70
+ * are the only public entry points.
71
+ */
72
+ export declare const surfaces: {
73
+ readonly present: <K extends RouteName>(route: K, props?: SurfaceProps<K>, opts?: PresentOptions) => Promise<SurfaceResult<K> | undefined>;
74
+ readonly dismissAll: typeof closeAllRouteSurfaces;
75
+ };
76
+ /** Hook form of {@link surfaces} (stable singleton). */
77
+ export declare function useSurfaces(): typeof surfaces;
78
+ export {};
79
+ //# sourceMappingURL=surfaces.d.ts.map