Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flow type definitions are not being found #784

Closed
JameelMukadam opened this issue Apr 16, 2021 · 2 comments
Closed

Flow type definitions are not being found #784

JameelMukadam opened this issue Apr 16, 2021 · 2 comments
Labels

Comments

@JameelMukadam
Copy link

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch react-native-fast-image@8.3.4 for the project I'm working on.

Seems like the Flow type definitions are not being found because the file which is being imported is called index.cjs.js and the definition file is called index.js.flow. If I copy the index.js.flow and rename it to index.cjs.js.flow then it works.

Here is the diff that solved my problem:

diff --git a/node_modules/react-native-fast-image/dist/index.cjs.js.flow b/node_modules/react-native-fast-image/dist/index.cjs.js.flow
new file mode 100644
index 0000000..71fac3a
--- /dev/null
+++ b/node_modules/react-native-fast-image/dist/index.cjs.js.flow
@@ -0,0 +1,71 @@
+// @flow
+
+import type { ViewProps } from 'react-native/Libraries/Components/View/ViewPropTypes'
+import type { SyntheticEvent } from 'react-native/Libraries/Types/CoreEventTypes'
+
+export type OnLoadEvent = SyntheticEvent<
+    $ReadOnly<{
+        width: number,
+        height: number,
+    }>,
+>
+
+export type OnProgressEvent = SyntheticEvent<
+    $ReadOnly<{|
+        loaded: number,
+        total: number,
+    |}>,
+>
+
+export type ResizeMode = $ReadOnly<{|
+    contain: 'contain',
+    cover: 'cover',
+    stretch: 'stretch',
+    center: 'center',
+|}>
+
+export type Priority = $ReadOnly<{|
+    low: 'low',
+    normal: 'normal',
+    high: 'high',
+|}>
+
+export type CacheControl = $ReadOnly<{|
+    immutable: 'immutable',
+    web: 'web',
+    cacheOnly: 'cacheOnly',
+|}>
+
+export type ResizeModes = $Values<ResizeMode>
+export type Priorities = $Values<Priority>
+export type CacheControls = $Values<CacheControl>
+
+export type PreloadFn = (sources: Array<FastImageSource>) => void
+export type FastImageSource = {
+    uri?: string,
+    headers?: Object,
+    priority?: Priorities,
+    cache?: CacheControls,
+}
+
+export type FastImageProps = $ReadOnly<{|
+    ...ViewProps,
+    onError?: ?() => void,
+    onLoad?: ?(event: OnLoadEvent) => void,
+    onLoadEnd?: ?() => void,
+    onLoadStart?: ?() => void,
+    onProgress?: ?(event: OnProgressEvent) => void,
+
+    source: FastImageSource | number,
+
+    resizeMode?: ?ResizeModes,
+    fallback?: ?boolean,
+    testID?: ?string,
+|}>
+
+declare export default class FastImage extends React$Component<FastImageProps> {
+    static resizeMode: ResizeMode;
+    static priority: Priority;
+    static cacheControl: CacheControl;
+    static preload: PreloadFn;
+}

This issue body was partially generated by patch-package.

@DylanVann
Copy link
Owner

I did a kind of hacky solution. I will look into just shipping ESM in a future release, which would resolve this.

github-actions bot pushed a commit that referenced this issue Sep 16, 2021
## [8.5.6](v8.5.5...v8.5.6) (2021-09-16)

### Bug Fixes

* make corresponding flow file for .cjs file ([77326e8](77326e8)), closes [#784](#784)
@github-actions
Copy link

🎉 This issue has been resolved in version 8.5.6 🎉

The release is available on:

Your semantic-release bot 📦🚀

alicayan008 pushed a commit to alicayan008/ReactNative-fast-image that referenced this issue Jul 4, 2023
## [8.5.6](DylanVann/react-native-fast-image@v8.5.5...v8.5.6) (2021-09-16)

### Bug Fixes

* make corresponding flow file for .cjs file ([77326e8](DylanVann/react-native-fast-image@77326e8)), closes [#784](DylanVann/react-native-fast-image#784)
tungxuan1656 pushed a commit to tungxuan1656/react-native-fast-image that referenced this issue Dec 26, 2023
tungxuan1656 pushed a commit to tungxuan1656/react-native-fast-image that referenced this issue Dec 26, 2023
## [8.5.6](DylanVann/react-native-fast-image@v8.5.5...v8.5.6) (2021-09-16)

### Bug Fixes

* make corresponding flow file for .cjs file ([77326e8](DylanVann@77326e8)), closes [DylanVann#784](DylanVann#784)
github-actions bot pushed a commit to johto-breakroom/react-native-fast-image that referenced this issue Nov 15, 2024
# 1.0.0 (2024-11-15)

### Bug Fixes

* accessibilityIgnoresInvertColors prop not recognised when using TypeScript ([DylanVann#666](https://github.com/johto-breakroom/react-native-fast-image/issues/666)) ([22f89e4](22f89e4)), closes [/github.com/DylanVann/react-native-fast-image/blob/master/src/index.tsx#L150-L160](https://github.com//github.com/DylanVann/react-native-fast-image/blob/master/src/index.tsx/issues/L150-L160)
* Add git tag to CocoaPods source property ([DylanVann#601](https://github.com/johto-breakroom/react-native-fast-image/issues/601)) ([2d706ad](2d706ad))
* add react@17 as peer dependency ([DylanVann#790](https://github.com/johto-breakroom/react-native-fast-image/issues/790)) ([27bd586](27bd586))
* Add tintColor to Flow FastImageProps type ([DylanVann#871](https://github.com/johto-breakroom/react-native-fast-image/issues/871)) ([37abecd](37abecd))
* Add tintColor type definition. ([4adf42f](4adf42f))
* Bump Glide version number to v4.11.0. ([DylanVann#649](https://github.com/johto-breakroom/react-native-fast-image/issues/649)) ([c4e4306](c4e4306)), closes [DylanVann#536](https://github.com/johto-breakroom/react-native-fast-image/issues/536)
* do not crash when source is invalid ([DylanVann#782](https://github.com/johto-breakroom/react-native-fast-image/issues/782)) ([5c5fefa](5c5fefa))
* export FastImageStaticProperties ([DylanVann#822](https://github.com/johto-breakroom/react-native-fast-image/issues/822)) ([d69f692](d69f692))
* FastImage extends ViewProps ([DylanVann#829](https://github.com/johto-breakroom/react-native-fast-image/issues/829)) ([68db871](68db871)), closes [DylanVann#819](https://github.com/johto-breakroom/react-native-fast-image/issues/819)
* Fix dependency versions not specified in podfile. ([89f3379](89f3379)), closes [DylanVann#456](https://github.com/johto-breakroom/react-native-fast-image/issues/456)
* Fix fallback prop not working. ([DylanVann#420](https://github.com/johto-breakroom/react-native-fast-image/issues/420)) ([487d410](487d410))
* Fix IllegalArgumentException crash (Android). ([DylanVann#511](https://github.com/johto-breakroom/react-native-fast-image/issues/511)) ([b6c4677](b6c4677))
* Fix incorrect syntax. ([11f6047](11f6047))
* Fix local resource cache issue on Android. ([DylanVann#472](https://github.com/johto-breakroom/react-native-fast-image/issues/472)) ([5f65383](5f65383)), closes [DylanVann#402](https://github.com/johto-breakroom/react-native-fast-image/issues/402)
* Fix memory leak on iOS. ([DylanVann#433](https://github.com/johto-breakroom/react-native-fast-image/issues/433)) ([70be744](70be744))
* Fix peer dependency and remove prop-types. ([44a4c8b](44a4c8b))
* Fix setting props order issue for iOS. ([DylanVann#303](https://github.com/johto-breakroom/react-native-fast-image/issues/303)) ([5597ed0](5597ed0)), closes [DylanVann#304](https://github.com/johto-breakroom/react-native-fast-image/issues/304)
* Fix wildcard peer dependencies. ([7149420](7149420)), closes [DylanVann#440](https://github.com/johto-breakroom/react-native-fast-image/issues/440)
* Fixes cacheControl types. ([DylanVann#382](https://github.com/johto-breakroom/react-native-fast-image/issues/382)) ([e13db7d](e13db7d)), closes [DylanVann#325](https://github.com/johto-breakroom/react-native-fast-image/issues/325)
* Fixes podspec syntax. ([b627646](b627646))
* Fixes WebP rendering on iOS 12. ([DylanVann#412](https://github.com/johto-breakroom/react-native-fast-image/issues/412)) ([97630c8](97630c8)), closes [DylanVann#298](https://github.com/johto-breakroom/react-native-fast-image/issues/298) [DylanVann#385](https://github.com/johto-breakroom/react-native-fast-image/issues/385)
* Flow syntax error ([DylanVann#924](https://github.com/johto-breakroom/react-native-fast-image/issues/924)) ([a10ab3f](a10ab3f))
* improve/update build.gradle ([1f04c55](1f04c55))
* lint ([780d41f](780d41f))
* Loading images by reverting "bug: Use device scale when loading images.". ([0326c3e](0326c3e)), closes [DylanVann#509](https://github.com/johto-breakroom/react-native-fast-image/issues/509)
* make corresponding flow file for .cjs file ([77326e8](77326e8)), closes [DylanVann#784](https://github.com/johto-breakroom/react-native-fast-image/issues/784)
* null exception in FastImageViewManager.java ([DylanVann#423](https://github.com/johto-breakroom/react-native-fast-image/issues/423)) ([a7a8643](a7a8643))
* peer dependency warning ([DylanVann#653](https://github.com/johto-breakroom/react-native-fast-image/issues/653)) ([cd81b1b](cd81b1b))
* Replace 'Component' with 'ComponentType' ([DylanVann#647](https://github.com/johto-breakroom/react-native-fast-image/issues/647)) ([6abb273](6abb273))
* tintColor in fallback Image ([DylanVann#882](https://github.com/johto-breakroom/react-native-fast-image/issues/882)) ([fbb6b68](fbb6b68))
* use ColorValue type ([DylanVann#939](https://github.com/johto-breakroom/react-native-fast-image/issues/939)) ([54376d8](54376d8))
* **android:** make center ResizeMode work correctly ([d648ef8](d648ef8))
* **android:** remove explicit use of UI thread ([DylanVann#698](https://github.com/johto-breakroom/react-native-fast-image/issues/698)) ([5d2894e](5d2894e))
* **android:** replace jcenter with mavenCentral ([69c9422](69c9422))
* **android:** update Glide ([86edd7f](86edd7f))
* **ios:** update SDWebImage ([DylanVann#740](https://github.com/johto-breakroom/react-native-fast-image/issues/740)) ([a1eeb75](a1eeb75))
* remove cache property if using fallback ([ba0f238](ba0f238))
* update dv-scripts ([61fab12](61fab12))
* update dv-scripts ([3c6d0f4](3c6d0f4))
* update SDWebImage and SDWebImageWebPCoder ([DylanVann#689](https://github.com/johto-breakroom/react-native-fast-image/issues/689)) ([9646456](9646456))
* Updates SDWebImageWebPCoder. ([DylanVann#628](https://github.com/johto-breakroom/react-native-fast-image/issues/628)) ([325d77f](325d77f))
* Upgrade vendored SDWebImage to v5.0.5. ([5016172](5016172)), closes [DylanVann#489](https://github.com/johto-breakroom/react-native-fast-image/issues/489)
* wrong cache type ([DylanVann#688](https://github.com/johto-breakroom/react-native-fast-image/issues/688)) [skip ci] ([94e2256](94e2256))
* xcode 12 compatibility ([DylanVann#732](https://github.com/johto-breakroom/react-native-fast-image/issues/732)) ([23c3955](23c3955))

### chore

* Update React peerDependency to "^17 || ^18" ([6255fc4](6255fc4))

### Features

* add a dependency with glide-pluin to support APNG ([c0eae3c](c0eae3c))
* add clear image cache from memory and disk ([DylanVann#425](https://github.com/johto-breakroom/react-native-fast-image/issues/425)) ([818ed0c](818ed0c))
* Add cookie support for iOS. ([DylanVann#284](https://github.com/johto-breakroom/react-native-fast-image/issues/284)) ([ae47bff](ae47bff))
* Add tint color support. ([03c50f0](03c50f0)), closes [DylanVann#124](https://github.com/johto-breakroom/react-native-fast-image/issues/124)
* Add tvOS target. ([DylanVann#486](https://github.com/johto-breakroom/react-native-fast-image/issues/486)) ([6805972](6805972))
* apply patch to react native fast image ([fe3bb5f](fe3bb5f))
* converts to TypeScript ([DylanVann#642](https://github.com/johto-breakroom/react-native-fast-image/issues/642)) ([ac11706](ac11706))
* export ResizeMode and Priority types ([DylanVann#678](https://github.com/johto-breakroom/react-native-fast-image/issues/678)) ([e33664f](e33664f))
* support defaultSource on iOS and Android ([DylanVann#921](https://github.com/johto-breakroom/react-native-fast-image/issues/921)) ([ec7c453](ec7c453))
* **ios:** allow for for per-image-request-headers ([DylanVann#691](https://github.com/johto-breakroom/react-native-fast-image/issues/691)) ([4a7cd64](4a7cd64))
* **ios:** cancel image load when unmounted ([DylanVann#787](https://github.com/johto-breakroom/react-native-fast-image/issues/787)) ([f1588be](f1588be))
* Upgrade example apps. ([DylanVann#453](https://github.com/johto-breakroom/react-native-fast-image/issues/453)) ([25f8f0d](25f8f0d))
* Upgrade to React Native 0.60.0 / CocoaPods / Android X. ([DylanVann#513](https://github.com/johto-breakroom/react-native-fast-image/issues/513)) ([5489f9e](5489f9e))
* Upgrade to SDWebImage 5.0. ([DylanVann#454](https://github.com/johto-breakroom/react-native-fast-image/issues/454)) ([8a216e2](8a216e2)), closes [DylanVann#447](https://github.com/johto-breakroom/react-native-fast-image/issues/447)
* Use forwardRef to allow access to ref.measure and others. ([DylanVann#419](https://github.com/johto-breakroom/react-native-fast-image/issues/419)) ([2b4fba3](2b4fba3)), closes [DylanVann#69](https://github.com/johto-breakroom/react-native-fast-image/issues/69)

### Performance Improvements

* Use React.memo for FastImage. ([DylanVann#449](https://github.com/johto-breakroom/react-native-fast-image/issues/449)) ([5c2b4af](5c2b4af))

### Reverts

* Remove functionality for notifying other images on load. ([DylanVann#452](https://github.com/johto-breakroom/react-native-fast-image/issues/452)) ([292223d](292223d))
* Revert "deleted exampleCode" ([26042d4](26042d4))

### BREAKING CHANGES

* This package will no longer support React 16.
* This changes how network requests are handled on iOS. Make sure they still work for you.
* You should upgrade React Native. See https://facebook.github.io/react-native/blog/2019/07/03/version-60
* Upgrade SDWebImage, may affect some projects and CocoaPods users.

Fix the bug of `cacheOnly` behavior
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants