Skip to content

Commit 69d0e36

Browse files
committed
chore: apply review suggestions
1 parent 551c744 commit 69d0e36

3 files changed

Lines changed: 372 additions & 1266 deletions

File tree

packages/pluggableWidgets/image-web/src/utils/__tests__/getImageProps.spec.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,15 @@ describe("getImageProps", () => {
8181
expect(getImageProps(input)).toEqual({ type: "image", image: "https://example.com/image.jpg" });
8282
});
8383

84-
it("returns undefined image when imageUrl is loading", () => {
84+
it("returns stale URL when imageUrl is loading with a cached value", () => {
85+
const input: GetImagePropsInput = {
86+
datasource: "imageUrl",
87+
imageUrl: dynamic.loading("https://example.com/image.jpg")
88+
};
89+
expect(getImageProps(input)).toEqual({ type: "image", image: "https://example.com/image.jpg" });
90+
});
91+
92+
it("returns undefined image when imageUrl is loading with no cached value", () => {
8593
const input: GetImagePropsInput = {
8694
datasource: "imageUrl",
8795
imageUrl: dynamic.loading<string>()

packages/pluggableWidgets/image-web/src/utils/getImageProps.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,29 +18,29 @@ export function getImageProps({
1818
}: GetImagePropsInput): ImageType {
1919
switch (datasource) {
2020
case "image": {
21-
// if main image is available or loading
2221
if (imageObject?.status === ValueStatus.Available || imageObject?.status === ValueStatus.Loading) {
2322
return {
2423
type: "image",
2524
image: imageObject?.value?.uri
2625
};
2726
}
2827

29-
// if main image is not available, but fallback is available or loading
3028
if (defaultImage?.status === ValueStatus.Available || defaultImage?.status === ValueStatus.Loading) {
3129
return {
3230
type: "image",
3331
image: defaultImage?.value?.uri
3432
};
3533
}
3634

37-
// if main image and fallback are not available
3835
return { type: "image", image: undefined };
3936
}
4037
case "imageUrl":
4138
return {
4239
type: "image",
43-
image: imageUrl?.status === ValueStatus.Available ? imageUrl.value : undefined
40+
image:
41+
imageUrl?.status === ValueStatus.Available || imageUrl?.status === ValueStatus.Loading
42+
? imageUrl.value
43+
: undefined
4444
};
4545
case "icon": {
4646
if (imageIcon?.status === ValueStatus.Available && imageIcon.value) {

0 commit comments

Comments
 (0)