diff options
Diffstat (limited to 'src/state/models')
-rw-r--r-- | src/state/models/media/gallery.ts | 9 | ||||
-rw-r--r-- | src/state/models/media/image.ts | 9 | ||||
-rw-r--r-- | src/state/models/ui/shell.ts | 52 |
3 files changed, 7 insertions, 63 deletions
diff --git a/src/state/models/media/gallery.ts b/src/state/models/media/gallery.ts index f9c3efcad..04023bf82 100644 --- a/src/state/models/media/gallery.ts +++ b/src/state/models/media/gallery.ts @@ -1,5 +1,4 @@ import {makeAutoObservable, runInAction} from 'mobx' -import {RootStoreModel} from 'state/index' import {ImageModel} from './image' import {Image as RNImage} from 'react-native-image-crop-picker' import {openPicker} from 'lib/media/picker' @@ -8,10 +7,8 @@ import {getImageDim} from 'lib/media/manip' export class GalleryModel { images: ImageModel[] = [] - constructor(public rootStore: RootStoreModel) { - makeAutoObservable(this, { - rootStore: false, - }) + constructor() { + makeAutoObservable(this) } get isEmpty() { @@ -33,7 +30,7 @@ export class GalleryModel { // Temporarily enforce uniqueness but can eventually also use index if (!this.images.some(i => i.path === image_.path)) { - const image = new ImageModel(this.rootStore, image_) + const image = new ImageModel(image_) // Initial resize image.manipulate({}) diff --git a/src/state/models/media/image.ts b/src/state/models/media/image.ts index b3796060c..6a226484e 100644 --- a/src/state/models/media/image.ts +++ b/src/state/models/media/image.ts @@ -1,5 +1,4 @@ import {Image as RNImage} from 'react-native-image-crop-picker' -import {RootStoreModel} from 'state/index' import {makeAutoObservable, runInAction} from 'mobx' import {POST_IMG_MAX} from 'lib/constants' import * as ImageManipulator from 'expo-image-manipulator' @@ -42,10 +41,8 @@ export class ImageModel implements Omit<RNImage, 'size'> { } prevAttributes: ImageManipulationAttributes = {} - constructor(public rootStore: RootStoreModel, image: Omit<RNImage, 'size'>) { - makeAutoObservable(this, { - rootStore: false, - }) + constructor(image: Omit<RNImage, 'size'>) { + makeAutoObservable(this) this.path = image.path this.width = image.width @@ -178,7 +175,7 @@ export class ImageModel implements Omit<RNImage, 'size'> { height: this.height, }) - const cropped = await openCropper(this.rootStore, { + const cropped = await openCropper({ mediaType: 'photo', path: this.path, freeStyleCropEnabled: true, diff --git a/src/state/models/ui/shell.ts b/src/state/models/ui/shell.ts index 9ce9b6635..310d4f0f9 100644 --- a/src/state/models/ui/shell.ts +++ b/src/state/models/ui/shell.ts @@ -1,4 +1,4 @@ -import {AppBskyEmbedRecord, AppBskyActorDefs} from '@atproto/api' +import {AppBskyActorDefs} from '@atproto/api' import {RootStoreModel} from '../root-store' import {makeAutoObservable, runInAction} from 'mobx' import { @@ -37,41 +37,9 @@ export class ImagesLightbox implements LightboxModel { } } -export interface ComposerOptsPostRef { - uri: string - cid: string - text: string - author: { - handle: string - displayName?: string - avatar?: string - } -} -export interface ComposerOptsQuote { - uri: string - cid: string - text: string - indexedAt: string - author: { - did: string - handle: string - displayName?: string - avatar?: string - } - embeds?: AppBskyEmbedRecord.ViewRecord['embeds'] -} -export interface ComposerOpts { - replyTo?: ComposerOptsPostRef - onPost?: () => void - quote?: ComposerOptsQuote - mention?: string // handle of user to mention -} - export class ShellUiModel { isLightboxActive = false activeLightbox: ProfileImageLightbox | ImagesLightbox | null = null - isComposerActive = false - composerOpts: ComposerOpts | undefined tickEveryMinute = Date.now() constructor(public rootStore: RootStoreModel) { @@ -92,10 +60,6 @@ export class ShellUiModel { this.closeLightbox() return true } - if (this.isComposerActive) { - this.closeComposer() - return true - } return false } @@ -106,9 +70,6 @@ export class ShellUiModel { if (this.isLightboxActive) { this.closeLightbox() } - if (this.isComposerActive) { - this.closeComposer() - } } openLightbox(lightbox: ProfileImageLightbox | ImagesLightbox) { @@ -122,17 +83,6 @@ export class ShellUiModel { this.activeLightbox = null } - openComposer(opts: ComposerOpts) { - this.rootStore.emitNavigation() - this.isComposerActive = true - this.composerOpts = opts - } - - closeComposer() { - this.isComposerActive = false - this.composerOpts = undefined - } - setupClock() { setInterval(() => { runInAction(() => { |