├── .editorconfig ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE │ ├── 1-bug-report.yaml │ ├── 2-feature-request.yaml │ ├── 3-question.yaml │ └── config.yaml ├── PULL_REQUEST_TEMPLATE │ └── pull_request_template.md ├── actions │ └── setup │ │ └── action.yml └── workflows │ ├── ci.yaml │ ├── docs.yaml │ └── stale.yaml ├── .gitignore ├── .nvmrc ├── .release-it.json ├── .watchmanconfig ├── .yarn ├── plugins │ └── @yarnpkg │ │ ├── plugin-interactive-tools.cjs │ │ └── plugin-workspace-tools.cjs └── releases │ └── yarn-3.6.1.cjs ├── .yarnrc.yml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── babel.config.js ├── docs ├── docs │ ├── .vitepress │ │ └── config.mts │ ├── assets │ │ ├── cropzoom.mp4 │ │ ├── gallery.mp4 │ │ ├── guideexpo.mp4 │ │ ├── resumablezoom.mp4 │ │ └── snapbackzoom.mp4 │ ├── components │ │ ├── cropzoom.md │ │ ├── gallery.md │ │ ├── resumablezoom.md │ │ └── snapbackzoom.md │ ├── guides │ │ ├── cropzoomexpo.md │ │ ├── downscale.md │ │ └── skia.md │ ├── index.md │ ├── installation.md │ ├── public │ │ └── extendgestures.jpg │ └── utilities │ │ ├── fitContainer.md │ │ ├── useimageresolution.md │ │ └── usetransformationstate.md └── package.json ├── example ├── README.md ├── app.json ├── app │ ├── _layout.tsx │ ├── cropbasic.tsx │ ├── cropskia.tsx │ ├── gallery.tsx │ ├── index.tsx │ ├── resumableskia.tsx │ └── snapback.tsx ├── assets │ ├── adaptive-icon.png │ ├── avatar.png │ ├── favicon.png │ ├── icon.png │ ├── pattern.png │ ├── splash.png │ └── video.mp4 ├── babel.config.js ├── index.js ├── metro.config.js ├── package.json ├── src │ ├── constants.ts │ ├── cropzoom │ │ ├── common-example │ │ │ ├── BasicCropZoom.tsx │ │ │ └── Controls.tsx │ │ ├── commons │ │ │ ├── CropModal.tsx │ │ │ ├── SVGOverlay.tsx │ │ │ └── contants.ts │ │ ├── index.ts │ │ └── skia-example │ │ │ ├── Controls.tsx │ │ │ ├── EffectPreview.tsx │ │ │ └── SkiaCropZoom.tsx │ ├── gallery │ │ ├── GalleryExample.tsx │ │ ├── GalleryImage.tsx │ │ ├── GalleryVideo.tsx │ │ ├── controls │ │ │ ├── ReText.tsx │ │ │ ├── TimeSlider.tsx │ │ │ └── VideoControls.tsx │ │ ├── index.ts │ │ └── utils │ │ │ ├── emitter.ts │ │ │ └── time.ts │ ├── navigation │ │ └── Drawer.tsx │ ├── resumable │ │ ├── Appbar.tsx │ │ ├── ResumableZoomExample.tsx │ │ ├── ResumableZoomSkia.tsx │ │ └── index.ts │ └── snapback │ │ ├── context.tsx │ │ ├── index.tsx │ │ ├── list │ │ ├── MessageList.tsx │ │ ├── components │ │ │ ├── Appbar.tsx │ │ │ └── TextArea.tsx │ │ └── messages │ │ │ ├── CellRenderer.tsx │ │ │ ├── ImageMessage.tsx │ │ │ └── VideoMessage.tsx │ │ └── reflection │ │ └── Reflection.tsx ├── tsconfig.json └── webpack.config.js ├── jest-setup.js ├── lefthook.yml ├── package.json ├── src ├── __tests__ │ ├── commons │ │ └── pinchTransform.test.tsx │ ├── gestures │ │ ├── CropZoomGestures.test.tsx │ │ ├── GalleryGestures.test.tsx │ │ ├── ResumableZoomGetures.test.tsx │ │ └── SnapbackZoomGestures.test.tsx │ └── validation │ │ ├── CropZoomValidation.test.tsx │ │ ├── ResumableZoomValidation.test.tsx │ │ └── SnapbackZoomValidtion.test.tsx ├── commons │ ├── hoc │ │ ├── withCropValidation.tsx │ │ ├── withResumableValidation.tsx │ │ └── withSnapbackValidation.tsx │ ├── hooks │ │ ├── useDoubleTapCommons.ts │ │ ├── usePanCommons.ts │ │ ├── usePinchCommons.ts │ │ ├── useSizeVector.ts │ │ └── useVector.ts │ ├── misc │ │ └── stacktransition.ts │ ├── types.ts │ └── utils │ │ ├── clamp.ts │ │ ├── crop.ts │ │ ├── friction.ts │ │ ├── getCropRotatedSize.ts │ │ ├── getMaxScale.ts │ │ ├── getScrollPosition.ts │ │ ├── getSwipeDirection.ts │ │ ├── getVisibleRect.ts │ │ ├── pinchTransform.ts │ │ ├── resizeToAspectRatio.ts │ │ └── snapPoint.ts ├── components │ ├── crop │ │ ├── CropZoom.tsx │ │ └── types.ts │ ├── gallery │ │ ├── Gallery.tsx │ │ ├── GalleryGestureHandler.tsx │ │ ├── GalleryItem.tsx │ │ ├── GalleryProvider.tsx │ │ ├── context.ts │ │ └── types.ts │ ├── resumable │ │ ├── ResumableZoom.tsx │ │ └── types.ts │ └── snapback │ │ ├── SnapbackZoom.tsx │ │ └── types.ts ├── hooks │ ├── useImageResolution.ts │ └── useTransformationState.ts ├── index.ts └── utils │ └── fitContainer.ts ├── tsconfig.build.json ├── tsconfig.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/1-bug-report.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/ISSUE_TEMPLATE/1-bug-report.yaml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/2-feature-request.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/ISSUE_TEMPLATE/2-feature-request.yaml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/3-question.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/ISSUE_TEMPLATE/3-question.yaml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yaml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: true 2 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md -------------------------------------------------------------------------------- /.github/actions/setup/action.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/actions/setup/action.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/workflows/ci.yaml -------------------------------------------------------------------------------- /.github/workflows/docs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/workflows/docs.yaml -------------------------------------------------------------------------------- /.github/workflows/stale.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.github/workflows/stale.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.gitignore -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | v18 2 | -------------------------------------------------------------------------------- /.release-it.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.release-it.json -------------------------------------------------------------------------------- /.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs -------------------------------------------------------------------------------- /.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs -------------------------------------------------------------------------------- /.yarn/releases/yarn-3.6.1.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.yarn/releases/yarn-3.6.1.cjs -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/.yarnrc.yml -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/README.md -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/babel.config.js -------------------------------------------------------------------------------- /docs/docs/.vitepress/config.mts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/.vitepress/config.mts -------------------------------------------------------------------------------- /docs/docs/assets/cropzoom.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/assets/cropzoom.mp4 -------------------------------------------------------------------------------- /docs/docs/assets/gallery.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/assets/gallery.mp4 -------------------------------------------------------------------------------- /docs/docs/assets/guideexpo.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/assets/guideexpo.mp4 -------------------------------------------------------------------------------- /docs/docs/assets/resumablezoom.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/assets/resumablezoom.mp4 -------------------------------------------------------------------------------- /docs/docs/assets/snapbackzoom.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/assets/snapbackzoom.mp4 -------------------------------------------------------------------------------- /docs/docs/components/cropzoom.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/components/cropzoom.md -------------------------------------------------------------------------------- /docs/docs/components/gallery.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/components/gallery.md -------------------------------------------------------------------------------- /docs/docs/components/resumablezoom.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/components/resumablezoom.md -------------------------------------------------------------------------------- /docs/docs/components/snapbackzoom.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/components/snapbackzoom.md -------------------------------------------------------------------------------- /docs/docs/guides/cropzoomexpo.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/guides/cropzoomexpo.md -------------------------------------------------------------------------------- /docs/docs/guides/downscale.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/guides/downscale.md -------------------------------------------------------------------------------- /docs/docs/guides/skia.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/guides/skia.md -------------------------------------------------------------------------------- /docs/docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/index.md -------------------------------------------------------------------------------- /docs/docs/installation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/installation.md -------------------------------------------------------------------------------- /docs/docs/public/extendgestures.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/public/extendgestures.jpg -------------------------------------------------------------------------------- /docs/docs/utilities/fitContainer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/utilities/fitContainer.md -------------------------------------------------------------------------------- /docs/docs/utilities/useimageresolution.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/utilities/useimageresolution.md -------------------------------------------------------------------------------- /docs/docs/utilities/usetransformationstate.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/docs/utilities/usetransformationstate.md -------------------------------------------------------------------------------- /docs/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/docs/package.json -------------------------------------------------------------------------------- /example/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/README.md -------------------------------------------------------------------------------- /example/app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app.json -------------------------------------------------------------------------------- /example/app/_layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/_layout.tsx -------------------------------------------------------------------------------- /example/app/cropbasic.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/cropbasic.tsx -------------------------------------------------------------------------------- /example/app/cropskia.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/cropskia.tsx -------------------------------------------------------------------------------- /example/app/gallery.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/gallery.tsx -------------------------------------------------------------------------------- /example/app/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/index.tsx -------------------------------------------------------------------------------- /example/app/resumableskia.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/resumableskia.tsx -------------------------------------------------------------------------------- /example/app/snapback.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/app/snapback.tsx -------------------------------------------------------------------------------- /example/assets/adaptive-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/adaptive-icon.png -------------------------------------------------------------------------------- /example/assets/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/avatar.png -------------------------------------------------------------------------------- /example/assets/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/favicon.png -------------------------------------------------------------------------------- /example/assets/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/icon.png -------------------------------------------------------------------------------- /example/assets/pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/pattern.png -------------------------------------------------------------------------------- /example/assets/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/splash.png -------------------------------------------------------------------------------- /example/assets/video.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/assets/video.mp4 -------------------------------------------------------------------------------- /example/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/babel.config.js -------------------------------------------------------------------------------- /example/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/index.js -------------------------------------------------------------------------------- /example/metro.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/metro.config.js -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/package.json -------------------------------------------------------------------------------- /example/src/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/constants.ts -------------------------------------------------------------------------------- /example/src/cropzoom/common-example/BasicCropZoom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/common-example/BasicCropZoom.tsx -------------------------------------------------------------------------------- /example/src/cropzoom/common-example/Controls.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/common-example/Controls.tsx -------------------------------------------------------------------------------- /example/src/cropzoom/commons/CropModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/commons/CropModal.tsx -------------------------------------------------------------------------------- /example/src/cropzoom/commons/SVGOverlay.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/commons/SVGOverlay.tsx -------------------------------------------------------------------------------- /example/src/cropzoom/commons/contants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/commons/contants.ts -------------------------------------------------------------------------------- /example/src/cropzoom/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/index.ts -------------------------------------------------------------------------------- /example/src/cropzoom/skia-example/Controls.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/skia-example/Controls.tsx -------------------------------------------------------------------------------- /example/src/cropzoom/skia-example/EffectPreview.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/skia-example/EffectPreview.tsx -------------------------------------------------------------------------------- /example/src/cropzoom/skia-example/SkiaCropZoom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/cropzoom/skia-example/SkiaCropZoom.tsx -------------------------------------------------------------------------------- /example/src/gallery/GalleryExample.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/GalleryExample.tsx -------------------------------------------------------------------------------- /example/src/gallery/GalleryImage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/GalleryImage.tsx -------------------------------------------------------------------------------- /example/src/gallery/GalleryVideo.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/GalleryVideo.tsx -------------------------------------------------------------------------------- /example/src/gallery/controls/ReText.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/controls/ReText.tsx -------------------------------------------------------------------------------- /example/src/gallery/controls/TimeSlider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/controls/TimeSlider.tsx -------------------------------------------------------------------------------- /example/src/gallery/controls/VideoControls.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/controls/VideoControls.tsx -------------------------------------------------------------------------------- /example/src/gallery/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/index.ts -------------------------------------------------------------------------------- /example/src/gallery/utils/emitter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/utils/emitter.ts -------------------------------------------------------------------------------- /example/src/gallery/utils/time.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/gallery/utils/time.ts -------------------------------------------------------------------------------- /example/src/navigation/Drawer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/navigation/Drawer.tsx -------------------------------------------------------------------------------- /example/src/resumable/Appbar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/resumable/Appbar.tsx -------------------------------------------------------------------------------- /example/src/resumable/ResumableZoomExample.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/resumable/ResumableZoomExample.tsx -------------------------------------------------------------------------------- /example/src/resumable/ResumableZoomSkia.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/resumable/ResumableZoomSkia.tsx -------------------------------------------------------------------------------- /example/src/resumable/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/resumable/index.ts -------------------------------------------------------------------------------- /example/src/snapback/context.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/context.tsx -------------------------------------------------------------------------------- /example/src/snapback/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/index.tsx -------------------------------------------------------------------------------- /example/src/snapback/list/MessageList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/list/MessageList.tsx -------------------------------------------------------------------------------- /example/src/snapback/list/components/Appbar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/list/components/Appbar.tsx -------------------------------------------------------------------------------- /example/src/snapback/list/components/TextArea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/list/components/TextArea.tsx -------------------------------------------------------------------------------- /example/src/snapback/list/messages/CellRenderer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/list/messages/CellRenderer.tsx -------------------------------------------------------------------------------- /example/src/snapback/list/messages/ImageMessage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/list/messages/ImageMessage.tsx -------------------------------------------------------------------------------- /example/src/snapback/list/messages/VideoMessage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/list/messages/VideoMessage.tsx -------------------------------------------------------------------------------- /example/src/snapback/reflection/Reflection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/src/snapback/reflection/Reflection.tsx -------------------------------------------------------------------------------- /example/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/tsconfig.json -------------------------------------------------------------------------------- /example/webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/example/webpack.config.js -------------------------------------------------------------------------------- /jest-setup.js: -------------------------------------------------------------------------------- 1 | require('react-native-reanimated').setUpTests(); 2 | -------------------------------------------------------------------------------- /lefthook.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/lefthook.yml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/package.json -------------------------------------------------------------------------------- /src/__tests__/commons/pinchTransform.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/commons/pinchTransform.test.tsx -------------------------------------------------------------------------------- /src/__tests__/gestures/CropZoomGestures.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/gestures/CropZoomGestures.test.tsx -------------------------------------------------------------------------------- /src/__tests__/gestures/GalleryGestures.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/gestures/GalleryGestures.test.tsx -------------------------------------------------------------------------------- /src/__tests__/gestures/ResumableZoomGetures.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/gestures/ResumableZoomGetures.test.tsx -------------------------------------------------------------------------------- /src/__tests__/gestures/SnapbackZoomGestures.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/gestures/SnapbackZoomGestures.test.tsx -------------------------------------------------------------------------------- /src/__tests__/validation/CropZoomValidation.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/validation/CropZoomValidation.test.tsx -------------------------------------------------------------------------------- /src/__tests__/validation/ResumableZoomValidation.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/validation/ResumableZoomValidation.test.tsx -------------------------------------------------------------------------------- /src/__tests__/validation/SnapbackZoomValidtion.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/__tests__/validation/SnapbackZoomValidtion.test.tsx -------------------------------------------------------------------------------- /src/commons/hoc/withCropValidation.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hoc/withCropValidation.tsx -------------------------------------------------------------------------------- /src/commons/hoc/withResumableValidation.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hoc/withResumableValidation.tsx -------------------------------------------------------------------------------- /src/commons/hoc/withSnapbackValidation.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hoc/withSnapbackValidation.tsx -------------------------------------------------------------------------------- /src/commons/hooks/useDoubleTapCommons.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hooks/useDoubleTapCommons.ts -------------------------------------------------------------------------------- /src/commons/hooks/usePanCommons.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hooks/usePanCommons.ts -------------------------------------------------------------------------------- /src/commons/hooks/usePinchCommons.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hooks/usePinchCommons.ts -------------------------------------------------------------------------------- /src/commons/hooks/useSizeVector.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hooks/useSizeVector.ts -------------------------------------------------------------------------------- /src/commons/hooks/useVector.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/hooks/useVector.ts -------------------------------------------------------------------------------- /src/commons/misc/stacktransition.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/misc/stacktransition.ts -------------------------------------------------------------------------------- /src/commons/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/types.ts -------------------------------------------------------------------------------- /src/commons/utils/clamp.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/clamp.ts -------------------------------------------------------------------------------- /src/commons/utils/crop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/crop.ts -------------------------------------------------------------------------------- /src/commons/utils/friction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/friction.ts -------------------------------------------------------------------------------- /src/commons/utils/getCropRotatedSize.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/getCropRotatedSize.ts -------------------------------------------------------------------------------- /src/commons/utils/getMaxScale.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/getMaxScale.ts -------------------------------------------------------------------------------- /src/commons/utils/getScrollPosition.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/getScrollPosition.ts -------------------------------------------------------------------------------- /src/commons/utils/getSwipeDirection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/getSwipeDirection.ts -------------------------------------------------------------------------------- /src/commons/utils/getVisibleRect.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/getVisibleRect.ts -------------------------------------------------------------------------------- /src/commons/utils/pinchTransform.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/pinchTransform.ts -------------------------------------------------------------------------------- /src/commons/utils/resizeToAspectRatio.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/resizeToAspectRatio.ts -------------------------------------------------------------------------------- /src/commons/utils/snapPoint.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/commons/utils/snapPoint.ts -------------------------------------------------------------------------------- /src/components/crop/CropZoom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/crop/CropZoom.tsx -------------------------------------------------------------------------------- /src/components/crop/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/crop/types.ts -------------------------------------------------------------------------------- /src/components/gallery/Gallery.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/gallery/Gallery.tsx -------------------------------------------------------------------------------- /src/components/gallery/GalleryGestureHandler.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/gallery/GalleryGestureHandler.tsx -------------------------------------------------------------------------------- /src/components/gallery/GalleryItem.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/gallery/GalleryItem.tsx -------------------------------------------------------------------------------- /src/components/gallery/GalleryProvider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/gallery/GalleryProvider.tsx -------------------------------------------------------------------------------- /src/components/gallery/context.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/gallery/context.ts -------------------------------------------------------------------------------- /src/components/gallery/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/gallery/types.ts -------------------------------------------------------------------------------- /src/components/resumable/ResumableZoom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/resumable/ResumableZoom.tsx -------------------------------------------------------------------------------- /src/components/resumable/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/resumable/types.ts -------------------------------------------------------------------------------- /src/components/snapback/SnapbackZoom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/snapback/SnapbackZoom.tsx -------------------------------------------------------------------------------- /src/components/snapback/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/components/snapback/types.ts -------------------------------------------------------------------------------- /src/hooks/useImageResolution.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/hooks/useImageResolution.ts -------------------------------------------------------------------------------- /src/hooks/useTransformationState.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/hooks/useTransformationState.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/utils/fitContainer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/src/utils/fitContainer.ts -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/tsconfig.build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glazzes/react-native-zoom-toolkit/HEAD/yarn.lock --------------------------------------------------------------------------------