diff --git a/arkoala-arkts/shopping/user/src/ets/pages/homePage/utils.ets b/arkoala-arkts/shopping/user/src/ets/pages/homePage/utils.ets index c1020b98e399d0d8db00fe8459682be98539fa38..c48aabeb64d9c41ae5e94b5790ad6945f71d7a14 100644 --- a/arkoala-arkts/shopping/user/src/ets/pages/homePage/utils.ets +++ b/arkoala-arkts/shopping/user/src/ets/pages/homePage/utils.ets @@ -16,7 +16,7 @@ function simpleHash(str: string) { let hash = 0; for (let i = 0; i < str.length; i++) { - const char_ = str.charCodeAt(i); + const char_ = str.charCodeAt(i).toInt(); hash = (hash << 5) - hash + char_; } return BigInt(hash >>> 0).toString(36).padStart(7, '0'); diff --git a/incremental/common/src/koalaKey.ts b/incremental/common/src/koalaKey.ts index 729bf43cb86f25ed54b0537c8ffcf7cbef2c06dd..289b65824f620097fbd36abf8d1ff62e3e7bd2bf 100644 --- a/incremental/common/src/koalaKey.ts +++ b/incremental/common/src/koalaKey.ts @@ -13,6 +13,7 @@ * limitations under the License. */ +import { float64ToInt } from "@koalaui/compat" import { int32 } from "@koalaui/compat" export type KoalaCallsiteKey = int32 @@ -37,7 +38,7 @@ export class KoalaCallsiteKeys { export function toKoalaCallsiteKey(str: string): KoalaCallsiteKey { let key = KoalaCallsiteKeys.empty for (let i = 0; i < str.length; i++) { - key = (key << 3) | (key >> 29) ^ str.charCodeAt(i) + key = (key << 3) | (key >> 29) ^ float64ToInt(str.charCodeAt(i)) } // DEBUG: console.log(`KEY: ${KoalaCallsiteKeys.asString(key)} from "${str}"`) return key diff --git a/incremental/common/src/sha1.ts b/incremental/common/src/sha1.ts index 1cf2cffeabdc8ecaf90001e6be2ad3ebe8672def..14e052ef52c49c3576fa6f7ff950cf6c2a4bb074 100644 --- a/incremental/common/src/sha1.ts +++ b/incremental/common/src/sha1.ts @@ -158,7 +158,7 @@ export class SHA1Hash { let index = start while (offset < length && index < inputBytes) { - let code = text.charCodeAt(offset++) | 0 + let code = float64ToInt(text.charCodeAt(offset++)) | 0 if (code < 0x80) { // ASCII characters _byte[index++] = code diff --git a/incremental/common/src/stringUtils.ts b/incremental/common/src/stringUtils.ts index ce01753ae35a55952e5f5526a7654942d8f75367..4ce02d1069bb8fc7f448e3900df5d15f92f6316d 100644 --- a/incremental/common/src/stringUtils.ts +++ b/incremental/common/src/stringUtils.ts @@ -13,6 +13,7 @@ * limitations under the License. */ +import { float64ToInt } from "@koalaui/compat" import { int32 } from "@koalaui/compat" @@ -22,7 +23,7 @@ import { int32 } from "@koalaui/compat" export function hashCodeFromString(value: string): int32 { let hash = 5381 for(let i = 0; i < value.length; i++) { - hash = (hash * 33) ^ value.charCodeAt(i) + hash = (hash * 33) ^ float64ToInt(value.charCodeAt(i)) hash |= 0 } return hash diff --git a/incremental/compat/src/arkts/observable.ts b/incremental/compat/src/arkts/observable.ts index 681891ad99f19ad220ec1f8042c6accc54472b85..61138d7cec3d68894dc28a6fa9b292195aa1b5b0 100644 --- a/incremental/compat/src/arkts/observable.ts +++ b/incremental/compat/src/arkts/observable.ts @@ -280,6 +280,11 @@ class CustomProxyHandler extends proxy.DefaultProxyHandler } } +function proxyChildrenOnlyOne(value: T, parent: ObservableHandler, observed?: boolean) { + if (observed === undefined) observed = ObservableHandler.contains(parent) + value = observableProxy(value, parent, observed) +} + function proxyChildrenOnly(array: T[], parent: ObservableHandler, observed?: boolean) { for (let i = 0; i < array.length; i++) { if (observed === undefined) observed = ObservableHandler.contains(parent) @@ -306,12 +311,12 @@ class ObservableArray extends Array { return ObservableHandler.find(this) } - override get length(): number { + override get length(): int { this.handler?.onAccess() return super.length } - override set length(length: number) { + override set length(length: int) { this.handler?.onModify() super.length = length } @@ -360,13 +365,22 @@ class ObservableArray extends Array { return result } - override push(...items: T[]): number { + override pushArray(...items: T[]): number { const handler = this.handler if (handler) { handler.onModify() proxyChildrenOnly(items, handler) } - return super.push(...items) + return super.pushArray(...items) + } + + override pushOne(item: T): number { + const handler = this.handler + if (handler) { + handler.onModify() + proxyChildrenOnlyOne(item, handler) + } + return super.pushOne(item) } override pushECMA(...items: T[]): number { @@ -595,7 +609,7 @@ class ObservableMap extends Map { return ObservableHandler.find(this) } - override get size(): number { + override get size(): int { this.handler?.onAccess() return super.size } @@ -699,7 +713,7 @@ class ObservableSet extends Set { return new Set(this.elements.keys()).toString() } - override get size(): number { + override get size(): int { this.handler?.onAccess() return this.elements.size } @@ -857,7 +871,7 @@ class ObservableDate extends Date { return super.toUTCString() } - override getDate(): number { + override getDate(): int { this.handler?.onAccess() return super.getDate() } @@ -867,12 +881,12 @@ class ObservableDate extends Date { super.setDate(value) } - override setDate(value: number): number { + override setDate(value: int): long { this.handler?.onModify() return super.setDate(value) } - override getUTCDate(): number { + override getUTCDate(): int { this.handler?.onAccess() return super.getUTCDate() } @@ -882,12 +896,12 @@ class ObservableDate extends Date { super.setUTCDate(value) } - override setUTCDate(value: number): number { + override setUTCDate(value: int): long { this.handler?.onModify() return super.setUTCDate(value) } - override getDay(): number { + override getDay(): int { this.handler?.onAccess() return super.getDay() } @@ -897,7 +911,7 @@ class ObservableDate extends Date { super.setDay(value) } - override getUTCDay(): number { + override getUTCDay(): int { this.handler?.onAccess() return super.getUTCDay() } @@ -907,12 +921,12 @@ class ObservableDate extends Date { super.setUTCDay(value) } - override setUTCDay(value: number): number { + override setUTCDay(value: int): long { this.handler?.onModify() return super.setUTCDay(value) } - override getMonth(): number { + override getMonth(): int { this.handler?.onAccess() return super.getMonth() } @@ -922,12 +936,12 @@ class ObservableDate extends Date { super.setMonth(value) } - override setMonth(value: number, date?: number): number { + override setMonth(value: int, date?: int): long { this.handler?.onModify() return super.setMonth(value, date) } - override getUTCMonth(): number { + override getUTCMonth(): int { this.handler?.onAccess() return super.getUTCMonth() } @@ -937,7 +951,7 @@ class ObservableDate extends Date { super.setUTCMonth(value) } - override setUTCMonth(value: number, date?: number): number { + override setUTCMonth(value: int, date?: int): long { this.handler?.onModify() return super.setUTCMonth(value, date) } @@ -952,17 +966,12 @@ class ObservableDate extends Date { super.setYear(value) } - override setYear(value: number) { - this.handler?.onModify() - super.setYear(value) - } - - override getFullYear(): number { + override getFullYear(): int { this.handler?.onAccess() return super.getFullYear() } - override setFullYear(value: number, month?: number, date?: number): number { + override setFullYear(value: int, month?: int, date?: int): long { this.handler?.onModify() return super.setFullYear(value, month, date) } @@ -972,12 +981,12 @@ class ObservableDate extends Date { super.setFullYear(value) } - override getUTCFullYear(): number { + override getUTCFullYear(): int { this.handler?.onAccess() return super.getUTCFullYear() } - override setUTCFullYear(value: number, month?: number, date?: number): number { + override setUTCFullYear(value: int, month?: int, date?: int): long { this.handler?.onModify() return super.setUTCFullYear(value, month, date) } @@ -987,27 +996,22 @@ class ObservableDate extends Date { super.setUTCFullYear(value) } - override getTime(): number { + override getTime(): long { this.handler?.onAccess() return super.getTime() } - override setTime(value: long) { - this.handler?.onModify() - super.setTime(value) - } - - override setTime(value: number): number { + override setTime(value: long): long { this.handler?.onModify() return super.setTime(value) } - override getHours(): number { + override getHours(): int { this.handler?.onAccess() return super.getHours() } - override setHours(value: number, min?: number, sec?: number, ms?: number): number { + override setHours(value: int, min?: int, sec?: int, ms?: int): long { this.handler?.onModify() return super.setHours(value, min, sec, ms) } @@ -1017,12 +1021,12 @@ class ObservableDate extends Date { super.setHours(value) } - override getUTCHours(): number { + override getUTCHours(): int { this.handler?.onAccess() return super.getUTCHours() } - override setUTCHours(value: number, min?: number, sec?: number, ms?: number): number { + override setUTCHours(value: int, min?: int, sec?: int, ms?: int): long { this.handler?.onModify() return super.setUTCHours(value, min, sec, ms) } @@ -1032,7 +1036,7 @@ class ObservableDate extends Date { super.setUTCHours(value) } - override getMilliseconds(): number { + override getMilliseconds(): long { this.handler?.onAccess() return super.getMilliseconds() } @@ -1042,12 +1046,12 @@ class ObservableDate extends Date { super.setMilliseconds(value) } - override setMilliseconds(value: number): number { + override setMilliseconds(value: int): long { this.handler?.onModify() return super.setMilliseconds(value) } - override getUTCMilliseconds(): number { + override getUTCMilliseconds(): int { this.handler?.onAccess() return super.getUTCMilliseconds() } @@ -1057,12 +1061,12 @@ class ObservableDate extends Date { super.setUTCMilliseconds(value) } - override setUTCMilliseconds(value: number): number { + override setUTCMilliseconds(value: int): long { this.handler?.onModify() return super.setUTCMilliseconds(value) } - override getSeconds(): number { + override getSeconds(): int { this.handler?.onAccess() return super.getSeconds() } @@ -1072,12 +1076,12 @@ class ObservableDate extends Date { super.setSeconds(value) } - override setSeconds(value: number, ms?: number): number { + override setSeconds(value: int, ms?: int): long { this.handler?.onModify() return super.setSeconds(value, ms) } - override getUTCSeconds(): number { + override getUTCSeconds(): int { this.handler?.onAccess() return super.getUTCSeconds() } @@ -1087,12 +1091,12 @@ class ObservableDate extends Date { super.setUTCSeconds(value) } - override setUTCSeconds(value: number, ms?: number): number { + override setUTCSeconds(value: int, ms?: int): long { this.handler?.onModify() return super.setUTCSeconds(value, ms) } - override getMinutes(): number { + override getMinutes(): int { this.handler?.onAccess() return super.getMinutes() } @@ -1102,12 +1106,12 @@ class ObservableDate extends Date { super.setMinutes(value) } - override setMinutes(value: number, sec?: Number, ms?: number): number { + override setMinutes(value: int, sec?: int, ms?: int): long { this.handler?.onModify() return super.setMinutes(value, sec, ms) } - override getUTCMinutes(): number { + override getUTCMinutes(): int { this.handler?.onAccess() return super.getUTCMinutes() } @@ -1117,7 +1121,7 @@ class ObservableDate extends Date { super.setUTCMinutes(value) } - override setUTCMinutes(value: number, sec?: Number, ms?: number): number { + override setUTCMinutes(value: int, sec?: int, ms?: int): long { this.handler?.onModify() return super.setUTCMinutes(value, sec, ms) } diff --git a/incremental/runtime/src/states/State.ts b/incremental/runtime/src/states/State.ts index a4925d89f780dda901e31040b36b8b1b669bca04..3459a7746acbea42d1805ec6c64568c8dd492407 100644 --- a/incremental/runtime/src/states/State.ts +++ b/incremental/runtime/src/states/State.ts @@ -405,7 +405,7 @@ class ArrayStateImpl extends StateImpl> implements ArrayState< } set length(value: number) { - this.mutable.length = value + this.mutable.length = value.toInt() } at(index: number): Item { @@ -451,7 +451,7 @@ class ArrayStateImpl extends StateImpl> implements ArrayState< splice(start: number, deleteCount: number | undefined, ...items: Item[]): Array { const array = this.mutable - return array.splice(start, deleteCount ?? array.length, ...items) + return array.splice(start, deleteCount ?? array.length.toDouble(), ...items) } unshift(...items: Item[]): number { @@ -1272,4 +1272,4 @@ class TrackedScopes { clear() { this.trackedScopes.clear() } -} \ No newline at end of file +} diff --git a/interop/src/cpp/ani/ani.h b/interop/src/cpp/ani/ani.h index 0525a1b3525283d8e113a5069efa9fdbe96b6367..1626cc5683d4a21a01243bba4a0d79750304854e 100644 --- a/interop/src/cpp/ani/ani.h +++ b/interop/src/cpp/ani/ani.h @@ -620,20 +620,6 @@ struct __ani_interaction_api { ani_status (*Class_BindNativeMethods)(ani_env *env, ani_class cls, const ani_native_function *methods, ani_size nr_methods); - /** - * @brief Binds static native methods to a class. - * - * This function binds an array of static native methods to the specified class. - * - * @param[in] env A pointer to the environment structure. - * @param[in] cls The class to which the native methods will be bound. - * @param[in] methods A pointer to an array of static native methods to bind. - * @param[in] nr_methods The number of static native methods in the array. - * @return Returns a status code of type `ani_status` indicating success or failure. - */ - ani_status (*Class_BindStaticNativeMethods)(ani_env *env, ani_class cls, const ani_native_function *methods, - ani_size nr_methods); - /** * @brief Deletes a local reference. * @@ -6109,6 +6095,20 @@ struct __ani_interaction_api { * The `resolver` is freed upon successful completion. */ ani_status (*PromiseResolver_Reject)(ani_env *env, ani_resolver resolver, ani_error rejection); + + /** + * @brief Binds static native methods to a class. + * + * This function binds an array of static native methods to the specified class. + * + * @param[in] env A pointer to the environment structure. + * @param[in] cls The class to which the native methods will be bound. + * @param[in] methods A pointer to an array of static native methods to bind. + * @param[in] nr_methods The number of static native methods in the array. + * @return Returns a status code of type `ani_status` indicating success or failure. + */ + ani_status (*Class_BindStaticNativeMethods)(ani_env *env, ani_class cls, const ani_native_function *methods, + ani_size nr_methods); }; // C++ API @@ -6249,10 +6249,6 @@ struct __ani_env { { return c_api->Class_BindNativeMethods(this, cls, methods, nr_methods); } - ani_status Class_BindStaticNativeMethods(ani_class cls, const ani_native_function *methods, ani_size nr_methods) - { - return c_api->Class_BindStaticNativeMethods(this, cls, methods, nr_methods); - } ani_status Reference_Delete(ani_ref ref) { return c_api->Reference_Delete(this, ref); @@ -8119,6 +8115,10 @@ struct __ani_env { { return c_api->PromiseResolver_Reject(this, resolver, rejection); } + ani_status Class_BindStaticNativeMethods(ani_class cls, const ani_native_function *methods, ani_size nr_methods) + { + return c_api->Class_BindStaticNativeMethods(this, cls, methods, nr_methods); + } #endif // __cplusplus }; diff --git a/interop/src/cpp/common-interop.cc b/interop/src/cpp/common-interop.cc index 47cf2f4d87b37dceaa4e7ddd1a9d271436aa0a3e..24cdd5d659d7be3383b0ef2edd5725d4d1a914b9 100644 --- a/interop/src/cpp/common-interop.cc +++ b/interop/src/cpp/common-interop.cc @@ -486,7 +486,10 @@ void resolveDeferred(KVMDeferred* deferred, uint8_t* argsData, int32_t argsLengt status = vm->AttachCurrentThread(nullptr, ANI_VERSION_1, &env); CHECK_ANI_FATAL(status); } - status = env->PromiseResolver_Resolve((ani_resolver)deferred->handler, nullptr); + ani_ref undef = nullptr; + status = env->GetUndefined(&undef); + CHECK_ANI_FATAL(status); + status = env->PromiseResolver_Resolve((ani_resolver)deferred->handler, undef); CHECK_ANI_FATAL(status); #endif } diff --git a/ui2abc/libarkts/native/src/bridges.cc b/ui2abc/libarkts/native/src/bridges.cc index 1dad35c6e3b8fa6132b3f9feeaff63572889bcb2..cb3767e56563b9e045d98279c739368dc2c35d7a 100644 --- a/ui2abc/libarkts/native/src/bridges.cc +++ b/ui2abc/libarkts/native/src/bridges.cc @@ -509,7 +509,7 @@ KNativePointer impl_CreateDiagnosticKind(KNativePointer context, KStringPtr& mes } KOALA_INTEROP_3(CreateDiagnosticKind, KNativePointer, KNativePointer, KStringPtr, KInt) -KNativePointer impl_CreateDiagnosticInfo(KNativePointer context, KNativePointer kind, KStringArray argsPtr, KInt argc) +KNativePointer impl_CreateDiagnosticInfo(KNativePointer context, KNativePointer kind, KStringArray argsPtr, KInt argc, KNativePointer pos) { const auto _context = reinterpret_cast(context); const auto _kind = reinterpret_cast(kind); @@ -523,12 +523,13 @@ KNativePointer impl_CreateDiagnosticInfo(KNativePointer context, KNativePointer _args[i] = strdup(std::string(reinterpret_cast(argsPtr + position), strLen).c_str()); position += strLen; } - return GetImpl()->CreateDiagnosticInfo(_context, _kind, _args, argc); + auto&& _pos = reinterpret_cast(pos); + return GetImpl()->CreateDiagnosticInfo(_context, _kind, _args, argc, _pos); } -KOALA_INTEROP_4(CreateDiagnosticInfo, KNativePointer, KNativePointer, KNativePointer, KStringArray, KInt) +KOALA_INTEROP_5(CreateDiagnosticInfo, KNativePointer, KNativePointer, KNativePointer, KStringArray, KInt, KNativePointer) KNativePointer impl_CreateSuggestionInfo(KNativePointer context, KNativePointer kind, KStringArray argsPtr, - KInt argc, KStringPtr& substitutionCode) + KInt argc, KStringPtr& substitutionCode, KNativePointer range) { const auto _context = reinterpret_cast(context); const auto _kind = reinterpret_cast(kind); @@ -543,9 +544,10 @@ KNativePointer impl_CreateSuggestionInfo(KNativePointer context, KNativePointer position += strLen; } const auto _substitutionCode = getStringCopy(substitutionCode); - return GetImpl()->CreateSuggestionInfo(_context, _kind, _args, argc, _substitutionCode); + const auto _range = reinterpret_cast(range); + return GetImpl()->CreateSuggestionInfo(_context, _kind, _args, argc, _substitutionCode, _range); } -KOALA_INTEROP_5(CreateSuggestionInfo, KNativePointer, KNativePointer, KNativePointer, KStringArray, KInt, KStringPtr) +KOALA_INTEROP_6(CreateSuggestionInfo, KNativePointer, KNativePointer, KNativePointer, KStringArray, KInt, KStringPtr, KNativePointer) void impl_LogDiagnostic(KNativePointer context, KNativePointer kind, KStringArray argvPtr, KInt argc, KNativePointer pos) @@ -568,15 +570,14 @@ void impl_LogDiagnostic(KNativePointer context, KNativePointer kind, KStringArra KOALA_INTEROP_V5(LogDiagnostic, KNativePointer, KNativePointer, KStringArray, KInt, KNativePointer) void impl_LogDiagnosticWithSuggestion(KNativePointer context, KNativePointer diagnosticInfo, - KNativePointer suggestionInfo, KNativePointer range) + KNativePointer suggestionInfo) { const auto _context = reinterpret_cast(context); const auto _diagnosticInfo = reinterpret_cast(diagnosticInfo); const auto _suggestionInfo = reinterpret_cast(suggestionInfo); - const auto _range = reinterpret_cast(range); - GetImpl()->LogDiagnosticWithSuggestion(_context, _diagnosticInfo, _suggestionInfo, _range); + GetImpl()->LogDiagnosticWithSuggestion(_context, _diagnosticInfo, _suggestionInfo); } -KOALA_INTEROP_V4(LogDiagnosticWithSuggestion, KNativePointer, KNativePointer, KNativePointer, KNativePointer) +KOALA_INTEROP_V3(LogDiagnosticWithSuggestion, KNativePointer, KNativePointer, KNativePointer) KInt impl_GenerateStaticDeclarationsFromContext(KNativePointer contextPtr, KStringPtr &outputPath) { @@ -596,12 +597,12 @@ KNativePointer impl_AnnotationUsageIrPropertiesPtrConst(KNativePointer context, KOALA_INTEROP_2(AnnotationUsageIrPropertiesPtrConst, KNativePointer, KNativePointer, KNativePointer); KInt impl_GenerateTsDeclarationsFromContext(KNativePointer contextPtr, KStringPtr &outputDeclEts, KStringPtr &outputEts, - KBoolean exportAll, KBoolean isolated) + KBoolean exportAll, KBoolean isolated, KStringPtr &recordFile) { auto context = reinterpret_cast(contextPtr); - return GetImpl()->GenerateTsDeclarationsFromContext(context, outputDeclEts.data(), outputEts.data(), exportAll, isolated ); + return GetImpl()->GenerateTsDeclarationsFromContext(context, outputDeclEts.data(), outputEts.data(), exportAll, isolated, recordFile.data()); } -KOALA_INTEROP_5(GenerateTsDeclarationsFromContext, KInt, KNativePointer, KStringPtr, KStringPtr, KBoolean, KBoolean) +KOALA_INTEROP_6(GenerateTsDeclarationsFromContext, KInt, KNativePointer, KStringPtr, KStringPtr, KBoolean, KBoolean, KStringPtr) // TODO: simplify KNativePointer impl_CreateContextGenerateAbcForExternalSourceFiles( diff --git a/ui2abc/libarkts/src/Es2pandaNativeModule.ts b/ui2abc/libarkts/src/Es2pandaNativeModule.ts index da797b0a98d85e97df9b3e0d56c03b77c1982621..57ad82b4c077d38643159f00699f756d8557691e 100644 --- a/ui2abc/libarkts/src/Es2pandaNativeModule.ts +++ b/ui2abc/libarkts/src/Es2pandaNativeModule.ts @@ -188,18 +188,18 @@ export class Es2pandaNativeModule { _CreateDiagnosticKind(context: KNativePointer, message: string, type: Es2pandaPluginDiagnosticType): KNativePointer { throw new Error("Not implemented") } - _CreateDiagnosticInfo(context: KNativePointer, kind: KNativePointer, args: string[], argc: number): KNativePointer { + _CreateDiagnosticInfo(context: KNativePointer, kind: KNativePointer, args: string[], argc: number, pos: KNativePointer): KNativePointer { throw new Error("Not implemented") } _CreateSuggestionInfo(context: KNativePointer, kind: KNativePointer, args: string[], - argc: number, substitutionCode: string): KNativePointer { + argc: number, substitutionCode: string, range?: KNativePointer): KNativePointer { throw new Error("Not implemented") } _LogDiagnostic(context: KNativePointer, kind: KNativePointer, argv: string[], argc: number, pos: KNativePointer): void { throw new Error("Not implemented") } _LogDiagnosticWithSuggestion(context: KNativePointer, diagnosticInfo: KNativePointer, - suggestionInfo?: KNativePointer, range?: KNativePointer): void { + suggestionInfo?: KNativePointer): void { throw new Error("Not implemented") } _SetUpSoPath(soPath: string): void { @@ -214,7 +214,7 @@ export class Es2pandaNativeModule { _ProgramCanSkipPhases(context: KNativePointer, program: KNativePointer): boolean { throw new Error("Not implemented") } - _GenerateTsDeclarationsFromContext(config: KPtr, outputDeclEts: String, outputEts: String, exportAll: KBoolean, isolated: KBoolean): KPtr { + _GenerateTsDeclarationsFromContext(config: KPtr, outputDeclEts: String, outputEts: String, exportAll: KBoolean, isolated: KBoolean, recordFile: String): KPtr { throw new Error("Not implemented") } _GenerateStaticDeclarationsFromContext(config: KPtr, outputPath: String): KPtr { @@ -258,4 +258,4 @@ export function initGeneratedEs2panda(): GeneratedEs2pandaNativeModule { // registerNativeModule("InteropNativeModule", NativeModule) loadNativeModuleLibrary("NativeModule", instance) return instance -} \ No newline at end of file +} diff --git a/ui2abc/libarkts/src/arkts-api/utilities/public.ts b/ui2abc/libarkts/src/arkts-api/utilities/public.ts index 2149fab953318b34595f1586f9cdb24147367170..2ebd090c6296a69b0c1318297249892466558862 100644 --- a/ui2abc/libarkts/src/arkts-api/utilities/public.ts +++ b/ui2abc/libarkts/src/arkts-api/utilities/public.ts @@ -40,7 +40,7 @@ import { listPrograms } from "../plugins" /** * TODO: Replace or remove with better naming - * + * * @deprecated */ export function createETSModuleFromContext(): ETSModule { @@ -59,7 +59,7 @@ export function createETSModuleFromContext(): ETSModule { /** * Now used only in tests * TODO: Remove or replace with better method - * + * * @deprecated */ export function createETSModuleFromSource( @@ -255,17 +255,19 @@ export function generateTsDeclarationsFromContext( outputDeclEts: string, outputEts: string, exportAll: boolean, - isolated: boolean + isolated: boolean, + recordFile: string ): KInt { return global.es2panda._GenerateTsDeclarationsFromContext( global.context, passString(outputDeclEts), passString(outputEts), exportAll, - isolated + isolated, + passString(recordFile) ); } export function setAllParents(ast: AstNode): void { global.es2panda._AstNodeUpdateAll(global.context, ast.peer); -} \ No newline at end of file +} diff --git a/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/Diagnostic.ts b/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/Diagnostic.ts index 9b2165ee797e717ab6f49b716f833171ec200e1c..318edb419062dfbcb3f3814c84ef57de36dfb926 100644 --- a/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/Diagnostic.ts +++ b/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/Diagnostic.ts @@ -31,9 +31,9 @@ export class Diagnostic extends ArktsObject { global.es2panda._LogDiagnostic(global.context, kind.peer, passStringArray(args), args.length, pos.peer); } - static logDiagnosticWithSuggestion(diagnosticInfo: DiagnosticInfo, suggestionInfo: SuggestionInfo, - range: SourceRange): void { - global.es2panda._LogDiagnosticWithSuggestion(global.context, diagnosticInfo.peer, suggestionInfo.peer, range.peer); + static logDiagnosticWithSuggestion(diagnosticInfo: DiagnosticInfo, suggestionInfo: SuggestionInfo): void { + console.warn(`Range parameter is not used anymore`) + global.es2panda._LogDiagnosticWithSuggestion(global.context, diagnosticInfo.peer, suggestionInfo.peer); } -} \ No newline at end of file +} diff --git a/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/DiagnosticInfo.ts b/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/DiagnosticInfo.ts index f708cdebd9f8c092796a660df2a1c9f001e2a0ca..a85fa599124335a60c6d10f8b7d7cc6eccc29ebc 100644 --- a/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/DiagnosticInfo.ts +++ b/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/DiagnosticInfo.ts @@ -18,16 +18,17 @@ import { global } from '../static/global'; import { KNativePointer } from '@koalaui/interop'; import { DiagnosticKind } from './DiagnosticKind'; import { passStringArray } from '../utilities/private'; +import { SourcePosition } from '../../../arkts-api/peers/SourcePosition'; export class DiagnosticInfo extends ArktsObject { constructor(peer: KNativePointer) { super(peer); } - static create(kind: DiagnosticKind, ...args: string[]): DiagnosticInfo { + static create(kind: DiagnosticKind, pos: SourcePosition, ...args: string[]): DiagnosticInfo { return new DiagnosticInfo( - global.es2panda._CreateDiagnosticInfo(global.context, kind.peer, passStringArray(args), args.length) + global.es2panda._CreateDiagnosticInfo(global.context, kind.peer, passStringArray(args), args.length, pos.peer) ); } -} \ No newline at end of file +} diff --git a/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/SuggestionInfo.ts b/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/SuggestionInfo.ts index 3c063111042da9d994499b2bf7851880f30338e6..f4b92b37430f07212bd6ccba5c89cd2b6ff5f500 100644 --- a/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/SuggestionInfo.ts +++ b/ui2abc/libarkts/src/wrapper-compat/arkts-api/peers/SuggestionInfo.ts @@ -18,16 +18,17 @@ import { global } from '../static/global'; import { KNativePointer } from '@koalaui/interop'; import { DiagnosticKind } from './DiagnosticKind'; import { passStringArray } from '../utilities/private'; +import { SourceRange } from './SourceRange'; export class SuggestionInfo extends ArktsObject { constructor(peer: KNativePointer) { super(peer); } - static create(kind: DiagnosticKind, substitutionCode: string, ...args: string[]): SuggestionInfo { + static create(kind: DiagnosticKind, substitutionCode: string, range: SourceRange, ...args: string[]): SuggestionInfo { return new SuggestionInfo( - global.es2panda._CreateSuggestionInfo(global.context, kind.peer, passStringArray(args), args.length, substitutionCode) + global.es2panda._CreateSuggestionInfo(global.context, kind.peer, passStringArray(args), args.length, substitutionCode, range.peer) ); } -} \ No newline at end of file +} diff --git a/ui2abc/libarkts/src/wrapper-compat/arkts-api/utilities/public.ts b/ui2abc/libarkts/src/wrapper-compat/arkts-api/utilities/public.ts index 919054abe135d0c0fef95c05213478c3bc9428c6..dcf947ea74639d393ef96506a28e526288c15189 100644 --- a/ui2abc/libarkts/src/wrapper-compat/arkts-api/utilities/public.ts +++ b/ui2abc/libarkts/src/wrapper-compat/arkts-api/utilities/public.ts @@ -256,14 +256,16 @@ export function generateTsDeclarationsFromContext( outputDeclEts: string, outputEts: string, exportAll: boolean, - isolated: boolean + isolated: boolean, + recordFile: string ): KInt { return global.es2panda._GenerateTsDeclarationsFromContext( global.context, passString(outputDeclEts), passString(outputEts), exportAll, - isolated + isolated, + passString(recordFile) ); }