From e23f0ca0bb9a5f2fb7ed07e15cdc9c3c647cabf0 Mon Sep 17 00:00:00 2001 From: Anton Tarasov Date: Tue, 11 Feb 2025 19:45:30 +0300 Subject: [PATCH 1/2] Make ForEach.keyGenerator optional, respect MediaCachedImage Signed-off-by: Anton Tarasov --- arkoala-arkts/arkui/config/etsconfig-base.json | 8 +++++++- arkoala-arkts/arkui/src/ForEach.ts | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/arkoala-arkts/arkui/config/etsconfig-base.json b/arkoala-arkts/arkui/config/etsconfig-base.json index 0e2437d24..a1bc1c4e3 100644 --- a/arkoala-arkts/arkui/config/etsconfig-base.json +++ b/arkoala-arkts/arkui/config/etsconfig-base.json @@ -224,7 +224,8 @@ "SaveButton", "UIExtensionComponent", "RichEditor", - "CachedImage" + "CachedImage", + "MediaCachedImage" ], "extend": { "decorator": [ @@ -796,6 +797,11 @@ "name": "CachedImage", "type": "CachedImageAttribute", "instance": "CachedImageInstance" + }, + { + "name": "MediaCachedImage", + "type": "MediaCachedImageAttribute", + "instance": "MediaCachedImageInstance" } ] }, diff --git a/arkoala-arkts/arkui/src/ForEach.ts b/arkoala-arkts/arkui/src/ForEach.ts index 7fea31af1..9755ee0dd 100644 --- a/arkoala-arkts/arkui/src/ForEach.ts +++ b/arkoala-arkts/arkui/src/ForEach.ts @@ -22,7 +22,7 @@ import { RepeatByArray } from "@koalaui/runtime" export function ForEach(data: Array, /** @memo */ itemGenerator: (item: T, index: number) => void, - keyGenerator: (item: T, index: number) => string, + keyGenerator?: (item: T, index: number) => string, ) { RepeatByArray(data, (element: T, index: int32) => keyGenerator ? hashCodeFromString(keyGenerator!(element, (index as number))) : index, -- Gitee From d086b0e7b72c68a780375952ec959c45fb51d004 Mon Sep 17 00:00:00 2001 From: Anton Tarasov Date: Tue, 11 Feb 2025 19:54:13 +0300 Subject: [PATCH 2/2] followup Signed-off-by: Anton Tarasov --- arkoala-arkts/arkui/src/ForEach.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/arkoala-arkts/arkui/src/ForEach.ts b/arkoala-arkts/arkui/src/ForEach.ts index 9755ee0dd..b9a6fe2ce 100644 --- a/arkoala-arkts/arkui/src/ForEach.ts +++ b/arkoala-arkts/arkui/src/ForEach.ts @@ -16,8 +16,6 @@ import { int32, hashCodeFromString } from "@koalaui/common" import { RepeatByArray } from "@koalaui/runtime" -// TODO: due to compiler bug with optional lambdas we have to put -// index: number instead of index?: number here /** @memo */ export function ForEach(data: Array, /** @memo */ -- Gitee