From a6efcc2d6ea779b98b9daef18c3610501b3e7a2b Mon Sep 17 00:00:00 2001 From: tianlongdevcode <2405362560@qq.com> Date: Mon, 27 Oct 2025 19:24:06 +0800 Subject: [PATCH] Fixed synchronize openharmony sample include ThemeSkinning and TextComponen Issue: https://gitee.com/harmonyos_samples/guide-snippets/issues/ID3PRC Description: isues ID3IN3 is synchronize openharmony sample Signed-off-by: huzhipeng --- ArkUIKit/ShapeDrawing/AppScope/app.json5 | 25 + .../resources/base/element/string.json | 8 + .../resources/base/media/background.png | Bin 0 -> 91942 bytes .../resources/base/media/foreground.png | Bin 0 -> 15325 bytes .../resources/base/media/layered_image.json | 7 + ArkUIKit/ShapeDrawing/README_zh.md | 96 + ArkUIKit/ShapeDrawing/build-profile.json5 | 57 + ArkUIKit/ShapeDrawing/code-linter.json5 | 47 + .../ShapeDrawing/entry/build-profile.json5 | 48 + .../entry/build/config/buildConfig.json | 1 + .../esmodule/.ts_checker_cache | 1948 +++++++++++++++++ .../esmodule/.tsbuildinfo | 1 + .../esmodule/.tsbuildinfo.linter | 1 + .../esmodule/compileInfo.json | 1 + .../esmodule/debug/compileContextInfo.json | 1 + ...s-10a8c10904ff45411138364719ce7a0f.msgpack | Bin 0 -> 11940 bytes ...s-133fe6d60f02d59e3ef0890a76aceab0.msgpack | Bin 0 -> 11860 bytes ...s-f6598f93c1eebc0308326d60265fecbf.msgpack | Bin 0 -> 14676 bytes ...s-8fb6d10e24d06ab44004f738efc10e2e.msgpack | Bin 0 -> 9875 bytes ...s-3e7efc70f386e5213c2c87b8944d77d3.msgpack | Bin 0 -> 8968 bytes ...s-f7115e7e2e9adf05ea6e4d43448265d3.msgpack | Bin 0 -> 13342 bytes ...s-863e48205f15d701e4ea8e96f865fdae.msgpack | 537 +++++ ...s-506fa8efe2fe1208ea26e67ba594fd26.msgpack | Bin 0 -> 9366 bytes ...s-27586c1acde59206714c1028dda31e0b.msgpack | Bin 0 -> 9846 bytes ...s-6b69b596c5563c58a73534324f02f78b.msgpack | Bin 0 -> 9018 bytes ...s-1c218be27e767cd26b11f40a3873438b.msgpack | Bin 0 -> 9721 bytes ...s-4bea9256d0e9097b233b76ae5b69a364.msgpack | Bin 0 -> 11233 bytes ...s-e9b92236a57c4af295dea8588ab7d5f6.msgpack | Bin 0 -> 9470 bytes ...s-599285e8e4f696e6cb0a3ff4793813e5.msgpack | Bin 0 -> 17163 bytes ...s-a5d1879b27e2bc9a7c2a6a12dccb2bed.msgpack | Bin 0 -> 10956 bytes ...s-f44d577512d255eece6fffe09d7d8bf2.msgpack | Bin 0 -> 10994 bytes .../other/pkgName2SourceRoots.msgpack | 1 + .../compiler.cache/plugins/plugins.msgpack | Bin 0 -> 13782 bytes .../esmodule/debug/dep_info.json | 1 + .../ets/entryability/EntryAbility.protoBin | Bin 0 -> 12529 bytes .../src/main/ets/entryability/EntryAbility.ts | 44 + .../EntryBackupAbility.protoBin | Bin 0 -> 6840 bytes .../entrybackupability/EntryBackupAbility.ts | 14 + .../src/main/ets/pages/AntiAlias.protoBin | Bin 0 -> 20102 bytes .../entry/src/main/ets/pages/AntiAlias.ts | 94 + .../src/main/ets/pages/CircleExample.protoBin | Bin 0 -> 18920 bytes .../entry/src/main/ets/pages/CircleExample.ts | 78 + .../entry/src/main/ets/pages/Fill.protoBin | Bin 0 -> 14643 bytes .../debug/entry/src/main/ets/pages/Fill.ts | 52 + .../entry/src/main/ets/pages/Index.protoBin | Bin 0 -> 24108 bytes .../debug/entry/src/main/ets/pages/Index.ts | 133 ++ .../entry/src/main/ets/pages/Mesh.protoBin | Bin 0 -> 68572 bytes .../debug/entry/src/main/ets/pages/Mesh.ts | 289 +++ .../entry/src/main/ets/pages/Shape.protoBin | Bin 0 -> 17828 bytes .../debug/entry/src/main/ets/pages/Shape.ts | 58 + .../src/main/ets/pages/ShapeExample.protoBin | Bin 0 -> 18440 bytes .../entry/src/main/ets/pages/ShapeExample.ts | 56 + .../entry/src/main/ets/pages/Stroke.protoBin | Bin 0 -> 14859 bytes .../debug/entry/src/main/ets/pages/Stroke.ts | 52 + .../main/ets/pages/StrokeLineJoin.protoBin | Bin 0 -> 16472 bytes .../src/main/ets/pages/StrokeLineJoin.ts | 56 + .../main/ets/pages/StrokeMiterLimit.protoBin | Bin 0 -> 19934 bytes .../src/main/ets/pages/StrokeMiterLimit.ts | 69 + .../src/main/ets/pages/StrokeOpacity.protoBin | Bin 0 -> 15762 bytes .../entry/src/main/ets/pages/StrokeOpacity.ts | 56 + .../src/main/ets/pages/ViewPort1.protoBin | Bin 0 -> 35181 bytes .../entry/src/main/ets/pages/ViewPort1.ts | 155 ++ .../src/main/ets/pages/ViewPort2.protoBin | Bin 0 -> 19924 bytes .../entry/src/main/ets/pages/ViewPort2.ts | 83 + .../src/main/ets/pages/ViewPort3.protoBin | Bin 0 -> 20024 bytes .../entry/src/main/ets/pages/ViewPort3.ts | 83 + .../esmodule/debug/filesInfo.txt | 16 + .../esmodule/debug/modules.cache | 17 + .../esmodule/debug/npmEntries.protoBin | Bin 0 -> 716 bytes .../esmodule/debug/npmEntries.txt | 7 + .../esmodule/debug/sourceMaps.json | 16 + .../profile/default/BuildProfile.ets | 25 + .../generated/r/default/ResourceTable.h | 35 + .../hap_metadata/default/output_metadata.json | 1 + .../intermediates/loader/default/loader.json | 25 + .../loader/default/pkgContextInfo.json | 1 + .../loader_out/default/ets/modules.abc | Bin 0 -> 90744 bytes .../loader_out/default/ets/sourceMaps.map | 178 ++ .../merge_profile/default/module.json | 70 + .../intermediates/package/default/module.json | 68 + .../patch/default/base_native_libs.json | 1 + .../process_profile/default/module.json | 73 + .../default/.caches/base/media/background.png | Bin 0 -> 70283 bytes .../default/.caches/base/media/foreground.png | Bin 0 -> 13086 bytes .../res/default/ResourceTable.txt | 12 + .../intermediates/res/default/ark_module.json | 1 + .../res/default/ids_map/id_defined.json | 51 + .../intermediates/res/default/module.json | 68 + .../res/default/opt-compression.json | 1 + .../intermediates/res/default/resConfig.json | 1 + .../intermediates/res/default/resources.index | Bin 0 -> 1168 bytes .../resources/base/media/background.png | Bin 0 -> 70283 bytes .../resources/base/media/foreground.png | Bin 0 -> 13086 bytes .../resources/base/media/layered_image.json | 6 + .../resources/base/media/startIcon.png | Bin 0 -> 20093 bytes .../resources/base/profile/backup_config.json | 3 + .../resources/base/profile/main_pages.json | 18 + .../router_map/default/loader-router-map.json | 1 + .../router_map/default/temp-router-map.json | 1 + .../default/temp-share-config.json | 1 + .../source_map/default/sourceMaps.map | 178 ++ .../default/entry-default-unsigned.hap | Bin 0 -> 222535 bytes .../outputs/default/mapping/sourceMaps.map | 178 ++ .../build/default/outputs/default/pack.info | 1 + ArkUIKit/ShapeDrawing/entry/hvigorfile.ts | 21 + .../ShapeDrawing/entry/obfuscation-rules.txt | 23 + ArkUIKit/ShapeDrawing/entry/oh-package.json5 | 25 + .../entry/src/main/common/image/startIcon.png | Bin 0 -> 20093 bytes .../main/ets/entryability/EntryAbility.ets | 63 + .../entrybackupability/EntryBackupAbility.ets | 31 + .../entry/src/main/ets/pages/AntiAlias.ets | 44 + .../src/main/ets/pages/CircleExample.ets | 46 + .../entry/src/main/ets/pages/Fill.ets | 31 + .../entry/src/main/ets/pages/Index.ets | 88 + .../entry/src/main/ets/pages/Mesh.ets | 166 ++ .../entry/src/main/ets/pages/Shape.ets | 32 + .../entry/src/main/ets/pages/ShapeExample.ets | 34 + .../entry/src/main/ets/pages/Stroke.ets | 31 + .../src/main/ets/pages/StrokeLineJoin.ets | 34 + .../src/main/ets/pages/StrokeMiterLimit.ets | 45 + .../src/main/ets/pages/StrokeOpacity.ets | 33 + .../entry/src/main/ets/pages/ViewPort1.ets | 77 + .../entry/src/main/ets/pages/ViewPort2.ets | 42 + .../entry/src/main/ets/pages/ViewPort3.ets | 42 + .../ShapeDrawing/entry/src/main/module.json5 | 65 + .../main/resources/base/element/color.json | 8 + .../main/resources/base/element/float.json | 8 + .../main/resources/base/element/string.json | 16 + .../main/resources/base/media/background.png | Bin 0 -> 91942 bytes .../main/resources/base/media/foreground.png | Bin 0 -> 8805 bytes .../resources/base/media/layered_image.json | 7 + .../main/resources/base/media/startIcon.png | Bin 0 -> 20093 bytes .../resources/base/profile/backup_config.json | 3 + .../resources/base/profile/main_pages.json | 18 + .../main/resources/dark/element/color.json | 8 + .../entry/src/mock/mock-config.json5 | 17 + .../src/ohosTest/ets/test/Ability.test.ets | 50 + .../src/ohosTest/ets/test/Index.test.ets | 240 ++ .../entry/src/ohosTest/ets/test/List.test.ets | 22 + .../entry/src/ohosTest/module.json5 | 26 + .../ShapeDrawing/entry/src/test/List.test.ets | 20 + .../entry/src/test/LocalUnit.test.ets | 48 + .../ShapeDrawing/hvigor/hvigor-config.json5 | 38 + ArkUIKit/ShapeDrawing/hvigorfile.ts | 21 + ArkUIKit/ShapeDrawing/local.properties | 8 + ArkUIKit/ShapeDrawing/oh-package.json5 | 25 + .../oh_modules/@ohos/hamock/CHANGELOG.md | 4 + .../oh_modules/@ohos/hamock/LICENSE | 177 ++ .../oh_modules/@ohos/hamock/README.md | 82 + .../@ohos/hamock/build-profile.json5 | 25 + .../oh_modules/@ohos/hamock/hvigorfile.js | 17 + .../oh_modules/@ohos/hamock/hvigorfile.ts | 17 + .../oh_modules/@ohos/hamock/index.d.ts | 58 + .../oh_modules/@ohos/hamock/index.ets | 17 + .../oh_modules/@ohos/hamock/index.js | 16 + .../oh_modules/@ohos/hamock/index.ts | 17 + .../oh_modules/@ohos/hamock/oh-package.json5 | 28 + .../hamock/src/main/mock/ArgumentMatchers.js | 97 + .../hamock/src/main/mock/ArgumentMatchers.ts | 118 + .../hamock/src/main/mock/ExtendInterface.js | 48 + .../hamock/src/main/mock/ExtendInterface.ts | 63 + .../@ohos/hamock/src/main/mock/MockKit.js | 253 +++ .../@ohos/hamock/src/main/mock/MockKit.ts | 294 +++ .../hamock/src/main/mock/VerificationMode.js | 45 + .../hamock/src/main/mock/VerificationMode.ts | 56 + .../@ohos/hamock/src/main/module.json | 22 + .../res/schemas/mock-config-json5-schema.json | 25 + .../oh_modules/@ohos/hypium/BuildProfile.ets | 17 + .../oh_modules/@ohos/hypium/CHANGELOG.md | 33 + .../oh_modules/@ohos/hypium/LICENSE | 177 ++ .../oh_modules/@ohos/hypium/README.md | 229 ++ .../@ohos/hypium/build-profile.json5 | 31 + .../@ohos/hypium/consumer-rules.txt | 0 .../oh_modules/@ohos/hypium/hvigorfile.ts | 6 + .../oh_modules/@ohos/hypium/index.d.ts | 150 ++ .../oh_modules/@ohos/hypium/index.ets | 137 ++ .../oh_modules/@ohos/hypium/index.js | 261 +++ .../oh_modules/@ohos/hypium/index.ts | 32 + .../@ohos/hypium/obfuscation-rules.txt | 23 + .../oh_modules/@ohos/hypium/oh-package.json5 | 1 + .../@ohos/hypium/src/main/Constant.js | 99 + .../oh_modules/@ohos/hypium/src/main/core.js | 159 ++ .../oh_modules/@ohos/hypium/src/main/event.js | 100 + .../@ohos/hypium/src/main/interface.js | 68 + .../@ohos/hypium/src/main/module.json | 30 + .../src/main/module/assert/ExpectExtend.js | 85 + .../src/main/module/assert/assertClose.js | 40 + .../src/main/module/assert/assertContain.js | 35 + .../src/main/module/assert/assertFail.js | 23 + .../src/main/module/assert/assertFalse.js | 23 + .../main/module/assert/assertInstanceOf.js | 29 + .../src/main/module/assert/assertLarger.js | 23 + .../main/module/assert/assertLargerOrEqual.js | 23 + .../src/main/module/assert/assertLess.js | 23 + .../main/module/assert/assertLessOrEqual.js | 23 + .../src/main/module/assert/assertNaN.js | 23 + .../main/module/assert/assertNegUnlimited.js | 23 + .../src/main/module/assert/assertNull.js | 23 + .../main/module/assert/assertPosUnlimited.js | 23 + .../module/assert/assertPromiseIsPending.js | 42 + .../module/assert/assertPromiseIsRejected.js | 38 + .../assert/assertPromiseIsRejectedWith.js | 55 + .../assertPromiseIsRejectedWithError.js | 77 + .../module/assert/assertPromiseIsResolved.js | 40 + .../assert/assertPromiseIsResolvedWith.js | 55 + .../main/module/assert/assertThrowError.js | 48 + .../src/main/module/assert/assertUndefined.js | 23 + .../module/assert/deepEquals/DeepTypeUtils.js | 139 ++ .../assert/deepEquals/assertDeepEquals.js | 433 ++++ .../src/main/module/assert/isPromiseLike.js | 32 + .../src/main/module/config/DataDriver.js | 135 ++ .../hypium/src/main/module/config/Filter.js | 143 ++ .../src/main/module/config/configService.js | 299 +++ .../main/module/coverage/coverageCollect.js | 76 + .../hypium/src/main/module/kit/SysTestKit.js | 102 + .../src/main/module/mock/ArgumentMatchers.js | 122 ++ .../src/main/module/mock/ExtendInterface.js | 57 + .../hypium/src/main/module/mock/MockKit.js | 353 +++ .../src/main/module/mock/VerificationMode.js | 49 + .../src/main/module/report/LogExpectError.js | 65 + .../hypium/src/main/module/report/OhReport.js | 217 ++ .../src/main/module/report/ReportExtend.js | 149 ++ .../@ohos/hypium/src/main/service.js | 1265 +++++++++++ .../main/testrunner/OpenHarmonyTestRunner.ts | 83 + .../ShapeDrawing/oh_modules/.ohpm/lock.json5 | 55 + ArkUIKit/ShapeDrawing/ohosTest.md | 7 + .../screenshots/device/image1.png | Bin 0 -> 12994 bytes .../screenshots/device/image10.png | Bin 0 -> 3437 bytes .../screenshots/device/image11.png | Bin 0 -> 22022 bytes .../screenshots/device/image12.png | Bin 0 -> 9146 bytes .../screenshots/device/image13.png | Bin 0 -> 9649 bytes .../screenshots/device/image2.png | Bin 0 -> 17672 bytes .../screenshots/device/image3.png | Bin 0 -> 2702 bytes .../screenshots/device/image4.png | Bin 0 -> 10114 bytes .../screenshots/device/image5.png | Bin 0 -> 5411 bytes .../screenshots/device/image6.png | Bin 0 -> 2626 bytes .../screenshots/device/image7.png | Bin 0 -> 3356 bytes .../screenshots/device/image8.png | Bin 0 -> 4060 bytes .../screenshots/device/image9.png | Bin 0 -> 1548 bytes 239 files changed, 14372 insertions(+) create mode 100644 ArkUIKit/ShapeDrawing/AppScope/app.json5 create mode 100644 ArkUIKit/ShapeDrawing/AppScope/resources/base/element/string.json create mode 100644 ArkUIKit/ShapeDrawing/AppScope/resources/base/media/background.png create mode 100644 ArkUIKit/ShapeDrawing/AppScope/resources/base/media/foreground.png create mode 100644 ArkUIKit/ShapeDrawing/AppScope/resources/base/media/layered_image.json create mode 100644 ArkUIKit/ShapeDrawing/README_zh.md create mode 100644 ArkUIKit/ShapeDrawing/build-profile.json5 create mode 100644 ArkUIKit/ShapeDrawing/code-linter.json5 create mode 100644 ArkUIKit/ShapeDrawing/entry/build-profile.json5 create mode 100644 ArkUIKit/ShapeDrawing/entry/build/config/buildConfig.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.ts_checker_cache create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo.linter create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/compileInfo.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compileContextInfo.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/AntiAlias.ets-10a8c10904ff45411138364719ce7a0f.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/CircleExample.ets-133fe6d60f02d59e3ef0890a76aceab0.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/EntryAbility.ets-f6598f93c1eebc0308326d60265fecbf.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/EntryBackupAbility.ets-8fb6d10e24d06ab44004f738efc10e2e.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Fill.ets-3e7efc70f386e5213c2c87b8944d77d3.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Index.ets-f7115e7e2e9adf05ea6e4d43448265d3.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Mesh.ets-863e48205f15d701e4ea8e96f865fdae.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Shape.ets-506fa8efe2fe1208ea26e67ba594fd26.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ShapeExample.ets-27586c1acde59206714c1028dda31e0b.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Stroke.ets-6b69b596c5563c58a73534324f02f78b.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeLineJoin.ets-1c218be27e767cd26b11f40a3873438b.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeMiterLimit.ets-4bea9256d0e9097b233b76ae5b69a364.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeOpacity.ets-e9b92236a57c4af295dea8588ab7d5f6.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ViewPort1.ets-599285e8e4f696e6cb0a3ff4793813e5.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ViewPort2.ets-a5d1879b27e2bc9a7c2a6a12dccb2bed.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ViewPort3.ets-f44d577512d255eece6fffe09d7d8bf2.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/dep_info.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/filesInfo.txt create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/modules.cache create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.protoBin create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.txt create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/sourceMaps.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/generated/profile/default/BuildProfile.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/generated/r/default/ResourceTable.h create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/hap_metadata/default/output_metadata.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/loader.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/pkgContextInfo.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader_out/default/ets/modules.abc create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader_out/default/ets/sourceMaps.map create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/merge_profile/default/module.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/package/default/module.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/patch/default/base_native_libs.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/process_profile/default/module.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/.caches/base/media/background.png create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/.caches/base/media/foreground.png create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ResourceTable.txt create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ark_module.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ids_map/id_defined.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/module.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/opt-compression.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resConfig.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources.index create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/background.png create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/foreground.png create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/layered_image.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/startIcon.png create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/backup_config.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/main_pages.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/loader-router-map.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/temp-router-map.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/share_config/default/temp-share-config.json create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/intermediates/source_map/default/sourceMaps.map create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/entry-default-unsigned.hap create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/mapping/sourceMaps.map create mode 100644 ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/pack.info create mode 100644 ArkUIKit/ShapeDrawing/entry/hvigorfile.ts create mode 100644 ArkUIKit/ShapeDrawing/entry/obfuscation-rules.txt create mode 100644 ArkUIKit/ShapeDrawing/entry/oh-package.json5 create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/common/image/startIcon.png create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/entryability/EntryAbility.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/AntiAlias.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/CircleExample.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Fill.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Index.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Mesh.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Shape.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ShapeExample.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Stroke.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeLineJoin.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeMiterLimit.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeOpacity.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort1.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort2.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort3.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/module.json5 create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/color.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/float.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/string.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/media/background.png create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/media/foreground.png create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/media/layered_image.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/media/startIcon.png create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/backup_config.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/main_pages.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/main/resources/dark/element/color.json create mode 100644 ArkUIKit/ShapeDrawing/entry/src/mock/mock-config.json5 create mode 100644 ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Ability.test.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Index.test.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/List.test.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/ohosTest/module.json5 create mode 100644 ArkUIKit/ShapeDrawing/entry/src/test/List.test.ets create mode 100644 ArkUIKit/ShapeDrawing/entry/src/test/LocalUnit.test.ets create mode 100644 ArkUIKit/ShapeDrawing/hvigor/hvigor-config.json5 create mode 100644 ArkUIKit/ShapeDrawing/hvigorfile.ts create mode 100644 ArkUIKit/ShapeDrawing/local.properties create mode 100644 ArkUIKit/ShapeDrawing/oh-package.json5 create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/CHANGELOG.md create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/LICENSE create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/README.md create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/build-profile.json5 create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.d.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ets create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/oh-package.json5 create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/module.json create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/res/schemas/mock-config-json5-schema.json create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/BuildProfile.ets create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/CHANGELOG.md create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/LICENSE create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/README.md create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/build-profile.json5 create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/consumer-rules.txt create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/hvigorfile.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.d.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ets create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/obfuscation-rules.txt create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/oh-package.json5 create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/Constant.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/core.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/event.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/interface.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module.json create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/Filter.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/configService.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/LogExpectError.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/service.js create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/testrunner/OpenHarmonyTestRunner.ts create mode 100644 ArkUIKit/ShapeDrawing/oh_modules/.ohpm/lock.json5 create mode 100644 ArkUIKit/ShapeDrawing/ohosTest.md create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image1.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image10.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image11.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image12.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image13.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image2.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image3.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image4.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image5.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image6.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image7.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image8.png create mode 100644 ArkUIKit/ShapeDrawing/screenshots/device/image9.png diff --git a/ArkUIKit/ShapeDrawing/AppScope/app.json5 b/ArkUIKit/ShapeDrawing/AppScope/app.json5 new file mode 100644 index 00000000000..89f4218b50b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/AppScope/app.json5 @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "app": { + "bundleName": "com.samples.shapedrawing", + "vendor": "samples", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:layered_image", + "label": "$string:app_name" + } +} diff --git a/ArkUIKit/ShapeDrawing/AppScope/resources/base/element/string.json b/ArkUIKit/ShapeDrawing/AppScope/resources/base/element/string.json new file mode 100644 index 00000000000..2b20528536f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/AppScope/resources/base/element/string.json @@ -0,0 +1,8 @@ +{ + "string": [ + { + "name": "app_name", + "value": "ShapeDrawing" + } + ] +} diff --git a/ArkUIKit/ShapeDrawing/AppScope/resources/base/media/background.png b/ArkUIKit/ShapeDrawing/AppScope/resources/base/media/background.png new file mode 100644 index 0000000000000000000000000000000000000000..923f2b3f27e915d6871871deea0420eb45ce102f GIT binary patch literal 91942 zcma%jXIK;3mNp0q9;J9tQ6L}(1shFzC_yJ4lDn zMF~o;fk0?MN&s@*G$N*V-pj#% zc8%$pJKu3H6B9PCPuxW2f19*Z$HpUUF(3}g7#RA-OX&8^G6)=p#i`)Dwb3Nq8~qFn z<^fU=`t_De-dZt2UTFpm04@e4TEsxg1E>YY7Az(HB;|?ti3gVq33;UuoLwdZwaGAv z)BE$Ei{3EL!}7;J7f*)>%m4pcxFd_P_m2-Ym9Z%ej=O?&A8%5Q1~0Zm`)oxAEhEn* zq2oE4oF)6o2I|Fpq^)*F&F&`ru81qZLuc*j^>C5>P>|jIS|}3X4#)eG^57s9%6*|3|F;x+jqe=h|lyO425fl z6@cI6z>Hyv5uXtYX#y5k0aI_<_dNiVmwZCL?}ObbXPW8*%1=@B)oy#Y%c~4;8%x`a z%D9RB*Iq(EEN}n0)L0~$o82*;j0iF5PRBnE(CyzU=FS%kpKs`5BPyC~KTl;`htI!t zg56!(Boib)BOTAg0FZU*rL05 zkM$puN+9YiW1b0?zq55yMGvG?k+9e^uNu~T%kN{~pwPex$^-7uU|Z?^6m0nUP~^cL z%T(GXMmC)6oU}w0XN34`VHWH#pzq#0-s~`${^BQ zGsp)>*KTj;c9}KpOro`uZYH__;b_ah6KQy43luufrM8tsB=2Fb6I(~)N47qQoe5AH zN_#q|RJ@sun6ZN!7{dB=f0HyYic^KI7cK~{HM)rNVY8{r#uumMPyA{ZLnoNqe5X^Q z9<_t4n>rJ!2Zm{Zm7rROaRCQUoEqGGU*Nt;_0LKIjaL^VAOL>XBhmT9DoG(?;~8Ax zV-w6KHM^z;H6BT~^5oo+VsD-jS@TU9~{}5`3m{qUsnvy!h7yNmLCh9<-ZPVhE4O&CHSSRtrbIp!3fxTddggiU;0|Q zSRv=4Mu{Q?)=Y=)peNckC&Bw6i5&6R+Z;z{0N4~ImXWTmk ziTDk*hHBCW&#>pH4RA7V)<0G}$KR5M=9!SUJq(%a2~v@VnGMq$5Pgv+A`Qg2I}sUn zl&;Sxou_%;KZA1*k8fBBTB44p8nn`hW|4))1%(?z#;LdRItfmRMDm8ft5#DXZ|nMZ zEJ0NW`+XMf(n$HoyvzPh8QR5l4}c?n9pQ2#Rc+mEQT|PCEuO^BM{%ofCqj|8WxjqD zhLu5r<`NXQi*V%0lU*&9H2vF;3V{aqDDNJB5FV&R#T;Ko11nzD(hV97(fO~fNtMJ# zVSD!fdNW%bzuH-cIx~g1E%`W3`okpJf`Jvt{mm?FIo=IlpkZLLzcI7uERy1%xA3W7 zN5oayee1(qp_re~+GqO7DGji8R?Ou+B8xatq_TYlmV)nSHeB=KD?H+N{aVsk{smEh*qZeJ z))M#Y+iCG1+v9Vjh;NK|)^I-h&1<8ss#LY=%HHUfe$n)L1gzbr5@RYy77qV_-p*sO z(vx79H1@rk7pm)+s==EHddT)b(|76W)l^u^fLJY`7N-3f9h41;xg+w1JeMO@z^WHJ zu^~jzE|&DU7y|(`@A8PQG-c>q_Y6WHqf6+4C1QJ73VDy6w?TOj(%mDP!bgVkNG8Hh zzcmwnNnka8bZQ(Z<=i!Y@=C?_6J*tLe|0r>2Gdp!#iqDIUw^UmKuqLG97QbF&7q8+Bwr%v!=i@ly^ZOX}PD;Vr^ zTyljDx$VWI>o$@??c(-fVG-EobYv05?LZZ{-_o1Q`sWomwcFgB=hYZ@I^Oi~c`gLU zO&Z+3oaJeW9*)&5*z%`KU;|G^-t;OGn}wL#dOGZ|0TC@n@K<5U{`5iE)n~KDe0h*| zK#S6KaG+2>7}_$C`$b>X6+jx2*>4y$U^6BNmBT~V|8L}t1_V{Yu?Ck)-JZ+#FLk}R_D9mrH3mc7e zJt9SLjH+y|)bjsO8Qso&6#Vd9oiNO;$*cmdCvhQ~aJWKTeuUPt)LPO2d`B5Y&c6mW z)YQF5&Z(?mqJKE|%9uCY9PQdVM@$_oZgY3^RY^h>id7ajQyIa4sZ52c5F;%d|LN3G zj5=`HF-(yIR#Uf$wa1`3rCD6r*r(XAicvER!fw=i5Fy_DCahzZ6xa(D8RfC zL_q7dL745qWAMP2WJOVjIu)#1!~+&up&b&qT%G9?fRUk&1_&;#Z_?WkNG8P)FSsVO zX2vfG=~PfqoPvKh$GSQl__x~3tsOSY3-CxqCwHYW6BtMty;xMBg>qTY((4 zF=`QHuipO^T8;&N>=}6z#kQ+r_$N#M&r0aJfXQPOA73%&9|rL zVt)$!hzNR*fUVEE&7gr&LFp0cXhmnhjU;)VSeFYkuUyvV(8Fp*Q8}potdcr<8N|m0 z8IU_QP=)xubFRdu_xdZ5+Qd=VxQ{}?Nj88NySLo<^s9@@&q^5S17=l?++g8RSr8qPeEo30h18NnD!tjDU3 z6z%#I4VVmFQ5!l&N(9i#_nK)4K=$SL7g|j1lK;iEjKrMPwO%T*QL% z-j!aTy~MG>A0Aqn|7@{@*S zDMoRwd1C4>d!H_%>9`Qfk0FS$E~#rGg{T&9TVkroUTgXOzDN*&X!jzj4|asP^S?57 zo)-!G(FB7ZMeU>B24bHjF7JpxU+%GfzWnGf*6+OIewh)aZjmd#iKj|8JvZo&&_+(V zGmmN(r7(kaZ|>c>aov$yYB$2!j%Am`^?j^sco5`v*mG(=o%bvdyeUbC?lb5&d z%UKCu41wwotE+1(=s+>CI*gvHYC}kb2I3r2&k}3+*;M$!3Xn? z(Vb~d{}=K>j|{o&pEmQMf@gH)xk%?vA!FR!j|0m>KAckaYc*SdODE;HEmG5%~q#J_}ITGT`BJ`miBS>ui?SUI8Y6P*Q>$otnZf z2lCtF)rcg6=$K`D3>!h&tmk_cQ1|jFpf^X&w&q+m#Kzb$GU6RVJz?+?6B5y(9KM$Y zYn$>1?CaH(MxNIWKRPy}*4fTI+7C`5sorgyJtkLf5>+;TG)}YONvo5@tdS6LsisW_ z(wl=vAJ=?ORTlFB0yeH*djK?Mu&Bcq+7y0?)=c)l19}sjYTh1eIQCPfpyu{*64@KqB0mlsKZ#}K@7KT>d|xcDCirH zh4i+!#*!Bxexqo(J3zFrv4|g34GXi}Bxp~(d+B@^(0M}cA84 z^Tg;xRq+Bc!VEmLd~!wmVyaq5bw<9$!7)yM&NR72C7C}#MtH}5ELy(!j*SVu+nPa$o^~PShiG7YXY#RjJa5UuXCTe~?}v3y zYmj0&lH7JIjrCuJy*%(O!PiZ6m;y((bKo;A+eU>uh9;99%nSbF(qg!c`!S z7k}q?l)Qio5r$sksn|x^6S#moHlo?hu@dbixHKJ3cdG^VL*sG`IAQnPaK7Ff@<9X}CZa_9S>A zN`y+8yps+AIKO73R6~!*0bi9iLs_VhJl0NF7_d8HUKyLo3M;F-2N;FqYM`CXT}FQy z9cEc}Tp9UC` zpOjW2>)Zen$89)goE_)V6?VS@h>5m<<-zf3KurXOw-LCcv9B^(rG!5J`s0H;!&R40 zw6roRCGUy2)@Y+E98jx@Vw`6?M%J;WTfxiv;49Gh7L7yG7Omx) z0CUU1|7jKBDzU`&ySgh4FAfHw6 zu*I=#3|)-i>#`UW(a>Rw@Jei{l~=+!;|qU2WxPLimNeZ@gI7T25(T)=D(IlGY&sOl z3P&*j(a9X`jBDdyTm;D8AGcfh^YZsA(}F&Gp71}>oi(z4AKiy!ox&(%RR~Sft_D~$ zFv4!Fjn-5b`WAq$uX9L#T4J(HcGtjM$c+)7M5?sSR%vU0cm4XGZAXymv;1rtL#VQXc#|O0_IKjNfF~ z>BOK`M^)P)163{TvWPQ7HmPuvBo91LyKf6p6Z&Il#Pj@#;Qp{N{pN#FgCORiFD&rd zDXoEsoV#y@w>=?_|2*c1RwEi_S;BVHyH}8c4_sJkk706wCIxCgiifVQI zj_m7z$W@$TJHAP*W~wo*%z~W4pRr2=E-QREYIio;$Pn{yvt@n>$9)njFP>g;w{9pE zJN)58;c^Y#G8GQ#*N_R~w<$bsq6visNxj8QN$$dnAoZ}Ua=26)X-R2jDNx^aKg2BJcY^TIx~VDEpsO^cjbYqg(4z)IUmIU6Mugp0STm!@44vB# z;Y45lr5@?P`d(~5`^qnda=Xv{#ZEW`2Cr}xth8Oa|EyF^vg2;2ab`{!fr zXoIGlD%Qx2$O;o*x}v1<@a=FgLQ45JIm71#-5B(|Jclm%MmM+J--8({tgQO4phX-F?s)v0u(sWY5`vKT=23) z(_6yB#kebuQvniNLXnqzUq6{|-4O&JUnNy@naFoLiDlZK_MH_s7TT*debiS4 zZ^_oGY)Ke13NIdy4N2Uj1bv&F&PLRX8Pg1?K!X9#D=beo+)oT|B8%8P<9@ff;d%jG^C;*bv?_2 zCcE~Q?vWE*5PT0UKc}3}Nm=7olHga@7GX=jS<@4b%tOjL@7X6 zBg~9ESb(TefW3-+Ti{LLUD}9->#&{*KHUNc9=`f@w+4xiy28zoFtdF-#nkpI>N z2x-?;y^sAQ^+CU^My%Oox6!%;uqc0K?CK~6D|&(ZxD#_;QW+gYQrzJ22&4=0%`WZ& z$Kpo^JgxP@!ZYqoeKn18d`sY7s~5Lj`xBpUI21pfJ`)`Tm+|KZ0~IT)l!YAFW~z#> z?L_;)md2vm&CW~hp=tF%RU1_VMf5ZeygZ=SO>RAS`zDj-QT(^|_&^CVnZ#hJDRCcc6zM%BK z5_ss}nn3?8fp77r{NU*5uoamhQclBQsueYgH7%%J;?)&cRhQ0FX7TyIO zAqV*0i&U_ZtEzC_U&-C*4D*^HWA-!f;pe%Gmv{^^tmuCcB>^XC(psXV7pn|KK&2~p zw^s??(QO;YlBPkjGM-ajKP^G?0op_jWnnR%mjwx&&OhvUq8^#0oO@67&6>{e87(4Y zEW5WGqIHpBGn;|x35X}(r&*00)rD7IRzjYj%o)?J-S~^Sx6X!pA9A`16MEY0+*X7E z?Swc-omN{k?v`*BVY2PA=Sz{{_XdIQdam=tmR~iX)zeAAy-YYuXqP{_R#E}%%TUp*C zR37u6*8~)Q2p*CIMDBt{wy_VCW6Hu_eUI+y8x6IWW+@UgbDT|Ins%zhl!(odvT^dX z6nlKfU!&G0kZo;Z?r$S2ul4=Ou&JKjEDfd!chE({i2+!>&Pzy^|yMY15aU@^!q}(E@mrxXO+Y^ zl|CeVk@kFJ??PB8&$BE?94#-94F1N}%QK~SnpQq)#9wd`If2VqIlc%m95rZF^s*AZ z@Z(C|i+!+BR~`gspb@ZRfIi77;6zZ~Ii4%P|NK08QrY!8UuLg1nz%Id^;>lpnd7+1 zrE_-ur6zD+>1}6~F#~!j-(=|y0g?l$89rSEnPZEwhAO@FYdxSx+IR6=!F4Iq84AIb zVx+q=&xg1*1W8S1W@tCDZ4r6K_E4{omTKW(Kjv0TDZ;JVtrGbTrG;K@KA2YYGvO@q z$zWtgRAStrWxC%*+S*UJHJUD}4!{uZKi&^a#1DpC4Jt631Z!Y0N2mvYBe z`^bqc-+GWIZ()gY#3ei%%Dox=f!x0?~DT1sqS$hqPC-^fyvcHGZUkX zQ*TB(UZyShhegM1T;_cUFA*zv`tr7JP^V`^tF`d-9~$Q|r=r#M+)T zgqfkgx?NW)>?~Q4_bd}Le|C?*DO=ZkE;G#jq*fPkK?<;tX$R0UGIBqYFC7CzVlELJ z&js}Trx!r^;kgT_5JPK#Bcj1knKX26`M~ssqY+vzz+fVNAh!@tzijIji6~oeqZOu< znO4S3?!hAwH_E8ZQpmN*042Nv%!|(K{=TY_R_Lb~D#xiY#^A@=8!bPoy#@L<_z~C> ze*s@Gbj5T({u=fEmAgV1RRJvT)$J1;7c1mLUIM<*v*SWf+F#b(*_?TmPvCaz&;xHt z`zr|w>pkQ*qdzbi4C7-na4DyYGg4=k3yt~iwkd|sIiD3p1mGBoW{>K(8nigyO-lC zV!iui?#zVc7cLOV7A9Y5@{b$BG`t9T2LZj-K%3?jDi`JVPgM$3!}6H|{D}7Yl5z4W zUIC}%3=Kiq`!5d8V$Q9-rTTYFE>_9uBL~Z63V*Gj!f_{LPB#@o)*9#jeCFNNC!tsU z4BFfSX}ZPUg1IpW0jSCigCa-L$%g1_ZG_)S5wO*$=3Wh(>e=p^LR%sR z!mHyE7<`Y2$=qX=6S2%}6=QOg%2cf})ibASbwm$g)+6x~V}Ucp2y!C?sf+7B@w`K0jS&Gg-%%6j;2ufl$N8rdw~qDD%IMxSfg|La?+pPnkBNP}=QjS8upul@ zkz?YtFU@zml@qOhJA@4&QOsR=>6bkIZ;V2DmTi8lx4njiOktl))rr#BPp&~_Oxc_u z5eIHxVT0SG#B-><-VO;K-}qXc^KMb3?qjw4E23j+T(qMm!K?2^^_B4+uHut?Y&^aj zd2oAv)KPwqy~@^90_bApwj3Z49tefzo`UI1)v73oL?-9f}>NjDB zmTn!i1!D;##^c}>Z)gv~^5rx8tszqw20t{9cFrcO^}I2EKlM~=ZV*6%Chb*&d$U3T z+PxwW-E;7F;y!WZA5D`&wV2r36PC^_q5E|hu7I^xR?L{p`K{MAh%iNF?{Z-7$UCVL z^8mbhB3svg>qOslREMR$S`Zc^DygmRaJh@wImcLy-YYDEv=pEYdwuRFecpwtx z16Pn?;vauAp@cxrbQF$kk#mnR(1e*DbH0p6{z>7-;P^4K_3H+}Rt-4qTySu3VKE12n0D988#amAK_mHr>)4 ztT5NGs=d-fGvPe2sGNwu2R1R2#>M49*0b)JX6v`OkAP639WdYheY#uZEe!CrK#~5f zIhnX32&t`8(RShCeE^kbAphmg3C$Z{id=Yw>8An1Cmw9CRY~<-h=?q#vX;Cg;||Jb zyNLygTYk%HZ-xfiRvUJiVm1n}_<-AQSWHS<#Fki=7!|@T5}+>tN7f({q-kz}UaM_^7|+{+8n7O~Kl;7{a~P8mkN&2_;wUv(*Z zZlPF#dpF6}`QO_rMub^j-Yp`0Lk-)@Y!_w~=nx4jL+I#XJSgbSIs_mwdt*lRc@Ct~Z9sUmrHGA>M<@f|gb0E=!Ep!S9NagI+)siMTFf8M!)(MZ9y#N>RK$Y`;U=xSQgTi zeE%Pc#95)ZiN{+kgU}X#@aWsw2}|ACv6Ip_$aCXcWUOzK`^a*038i4OZqz8E@6{AL z&uhiOh!UUGNeVak$la5TDLY0DuBO_seCq1p0xq9-9e*}EzJY_}K{W1TMHa;YNa?A$ zJbf3XIvox7>y~>fL=jR|fnrtMW}840T)^^4_3$4%rvYHwjz!Sc!Zr!Sv33iiF#Zoa z!+$K{$bSI}%iqW_T>R;e@s;-E_(52*#wE4XS2}aRMzTZ>2Z7+VN#(;V`v`w+z_kJf zu$y%@bEbVT9dH_W$OB@%wyf7p=V%)#!aI41WvQ-ly1MP78@0eYS5}+}kC|{t^;-z>F>XKk(wBbaubnJy46(5*duwsOF z&LHd~I8Z4ntQpFY$-oeW0X3z*pDWq=AtvA-!w6?W#pZ%4_Yvv_MtNgbwrAL8Jis&s zdziD!0;j*ESwxu&fc7Zg?Nc3q`5QOba`^j5&!>RVdZiO*+3uQEFy z?MT9%xduJ}@lN%?BQp^3QkPbAXm^gxMBU9u&5HP>Jjg10r7UOX>{Sod=f6KSz?dNh z!evY?ko=^VLhG7fWw#B+ljQs_Jgcds)%H>`jZtsW1Etl}K{)SU!O;kq8OVlIS%hD5 zTMws^Mr6FTzI*0hDlaBmwF+A6V1#9~yZlPTEG4{;ZNS0kLBq|u&AQb`XcI0tu$UTB z^*rk(5v7a%*=ZCf`R~0sSMphp+1YO0n0Pg(a+phnN?u_H)c4*SR!8&atx^GXXX49o zt%q}tUKRN9FdOcTZxt(m`A`>99B->`qB<`MQakd8&< zlbH*sVBvj{6SZl@lpQtlmo6`XG?d#Wqq(f1VDPP2a|Gh9)k^frxvt%2#|}l0>$=ic zQx#_VDZlrML{%_tJU#kcJ{#!-<*F+)g<^ez->zt>`U!}#w*pkr&#lYEaQILCra=a> zklx?zvb?&j=OE&|VwwECnA%gHk`q7 z#2;U78GYBqb(b)RU1jQ(VPghG{o3eEkT+C12Qi;fDBiUasLp&a6Q3*l^}x@z$?i*rg9?F;Yr+QA*&RqysvmG#5DJeNSxXn+TP2!8B2PE4vgAbG(dhdIu{t< zLoMl~)I$JTj6ALZeXd~BoFK(#I??xkP1D^+SoXV~RHPR!lx8O>sIU|WE??GqBwD5v zZalV7TsSrA?Z{e+YX7aqQuPhphn1?{cJJAgMY1zvE{zX>IhH)*Y-Zw+@TKL{LT9Q* z+0>jn;kED1SG7?te)Y38hJW!u)moHLSUm!w_G8`x)5{UuBkffnmY+=RKNfM;qGedz zlNsRt(gJpz-^6&@ht5Au+cnHC<#T-iv?0XK-skQ*HbT?$3TjjOvq_t|L%qoM67Mw8 zo=D*41DYRzL$s$5$Q_}-%V74VFSa%q2`EpZbRyM%hRP*IMl(&wAd|;St z*r2Qv-*mRvUGR0w3gpIXFJF;!iDx*L+XLdZ(*#J2M`S3V@Guf1p2ld-jCKB2SMYDk zK_y3)PCob{vgPc0`m@2GPOh9b4|k@d>9r`I%}UbGIc0N5<;FHI4%H-l;DoQzo%%Sa zI>`8jNe@)760aNG^9$>)VvIta;=No68cdfiSihpG*E14mN7@Ib)wRDvz|5!lnyaj4 zbMViMvTNnd@tczl%H%WwVkV)7>a=y(V3KSn=R75Tmttlk6adWe@t3ccxg%3lp+yX6 z@XBh(cqVu!kLqNo!-rN>w6(f{UxrSkw%xK}SOdPt1vVCR@3@4z9fg@7dkZJ8|0A>3 z79j+ckQY9^QV~G! zuKP-&@1Y1{C~WF#9fkv%C+~6tsvKK*%uBc{a>=gusDYGm9$*m(*1z{owy(BS?BOLX z3|6cQ8;y9D@m)WYpdG0{(SES~80{>Cp*DPrQmPh9zITa9;G2eT3=xhuKfY%RIS%h7?BJZ zT_bnUJsoDR0;ms6QSKK34HVTiGZ7yk!^|fKg7FDJtvpx_8}WPP^K6biAP$kJNNS2p z_I_p?ilgmc1`wT(tk7vtM4}|;v+YfSvd+0=GiX^UZ1iON8VjhR(9HS%jV~i<7UR<% zC1TF0KywgNw^(PEZk-R#Ea3oocd38b-zIW;X-u)5nrL^rz1=vR26TwDSw8~0DL!w! zi-cDl*H+ggp_(o>cGt4;)jt5Ps21$?J~umMz4FBTU*_3Ys!@X**v44Efz z_--rQCvn&D^**D2Ux@?!35YxCtD3C76e3BfDp z834Tl@Mv#p#6FEqqI~GBuC%P^pHx3c&vscPTDNqCHOpp5n)9a6N8hHYN4yrA`6}Xf z=yglf8iLu(j%%db0Kc`Mks8cdgs}nL{_nG=`La}Wthkr0Mdq(rL%(v27mPaVSSK@; z4NbszRsA@TokBWub|pp5S8)XO0cvG<$NP5<=#90tMoSuh`xeq>w(iis+#=ryf@E8z zh1sO9{d~3;H8r-)FQG%a#I%P|?b?r-heNrxsc&u3BLTelWR&Lp4~leXbCslV!>0&u ziul@YTcWs{rc%E=N(^HH{ZM(TL zvDTpF6|)PH>6!V2{}XA|AZVXyfvPnZN$&b_CF$r9*v3Q&qnZxE2=5~0Qz@&Q#AR7~ec%T+tO@JV!v^3fZPns~ zbCPYJ#)v4uhBkL6Tk0v;7?t#Y$JLjU@sw#g8P0L;mOG#7bavc zlA&twBXooTY@L+xo`Yfz@EH_&*!5tZe(65d9nB#yx9yUi#~Ql_yUL|>v^d(I#Tp>td{g%GRJ)?|62lEbIR?3M z>~DU8$-&@Zh`r-D$zO|Y$5Z*&nycTaoV^E@RTF}&ol@Z|`Xh6c4k8KsFp^RyvWMHF z!&EZZ-u&*P5QA=Y8;L)qp);pcWXVB`5Ld!HutdMSSUec-av@jk_7EH+TvO)+-F+7` z!b>{|NXh-H{CSh23Onf{z;QOgr4V=`QU38Iy9dC8lVOu(aNYh(cK(uOu%+{{&14Gp z`kJ;WLA=jz4dHTu4Uo;4A9TQcv;Rh6I#DhR(cW9QVAFTBpUpl(PpYp@a^vQ{)iEph zvjyvHlFH{_A1zPj1ID%m>>g%M3;osnpyP|0umy*Au|8?|+<+(VYj_F7ZRhoz3u$_e zsI2_$?5cKUdvCMKinKI!8uq#ZUq@*>dDXVW8bDNVEj(G??h1IW|Lv#LF{D7O&JTd? zF@5xumVrp=@}Q}Y#&1shrvF=(1WHQ2GId{qzTuV|@BO15<+2#3Js^H*E-ga3;ke$$ zh3RcW2=nf6Bo30(EC`Rggf2i!4?P^t?($ z=}mRUyvpk`2r7RyP1uU@O#CX3#}g76yLNE1*SNXz2+Mf}d>uGmWiGvc&Tw)4LS)eF z5^h$F;mH%>tj;X;T1t^CgIEVzTo)z6$gRo*uy&8DZ=&GE?P)w=d+5j~3t{iy2hIET zd>%(4Xp;_#Z_b!3?SjVQ4dUBrF01}qYo9l$3@)I7!RuY%WA8Z3Idzkdal}hEe+^2< z?-*veYNxi(eO>TW;d)pZ({+4fd8Ljy0fO&*lt8K$R=q-a|EONvv5iJlSX+K>Ve>rQXT!tbM%@i%qpo6#Pt|D1@WRl8fKVVHWY3CAA7?6@pz4KJvy9|yBN2oylE*perBVT5k zEoT#7YV93|DAKR~;Hvih{$-}mjc(5D;dC`7nh>gM_sIP z?FP+Efn9^4kCXXph}*a0dBRi%*!d>RGf{CKFd%%ai;M&!q&&wwKhr}&H0O-QAv=eH z&F5rr?%*CjagKRKGU-KPLSXC?J`MZE&JecFH1u=9zW(_L6UF9=fHBKQ#~C$IPt6p? zfK2L`y;H)(7&bA6di$&0{8g1Y7lzO@u-kdvLYfN!Jsb3%qlK~9QtyXEV4|v4OK&4r z8)HuHBj! zS*Y_YH+AOgHM#hy0^xy3&5`E1_~Q{8s1ZA2Lw_8O(v2$d5Yl65GGR{AZKoZXEEr#k z=7ueO^QQ%tK)i5oMGKOg&YE03B@-mHc8S`47k%C?il`VTan`NaJmqBCU@XRYeC07% zkF9RIa2{x|u&5tkF}C~|jB-B`h+vybZYRNW^nLVcm-~wmyqSje6^|(+i`j_7ws1;! zJYs`C#Ps_zEw>Wlz|kGM|2Y&blfuZzsO-#hSal7Vu=O1lf-XWIcf^4NJmruso%zo>8LIG`8Ccw8*eEVzaxTueVSXtoi=k%9lpF49}l=@OW!n}}2iN9DF+M_lVz8k~ktPRCU41ghTq7tF&LazTGFW4W7RO>;qfNDQ*r~%#rCa zjB^ge!LHnlf06#E>i7}((sb|{&KE;5`kMd zmZ=8RUzu(R-VSDUR{g}~VTmK6J}iqM1lJ}3div>Fzm(?wn+UIrQTnL)!bBbJ8_`l$ zSsgQdT0=?Mjrh)Wf0)wb33slb1gp+HgIYjm%w(AMh2tzzT!#jO3S}R17@M(Y^=hp- z9Www?Nhk{#(n1w-9QjbdS1d;j7?zJ;)=U<-nV@~+LVZ4+Tze`7U(pio>O1Y;o>J!_q4Z`pVpg`9PKYAunj>~4~=t05P z%`2ORuo>UA(p*KqEXSb!Nl+O;Hv$^mH?62sy&th&XtAu&jY2CK@5z!l(U7Lx-Wy)mloNFvU7o)H-I5F;7 zefNZn|FMbc*34J$Q*5i7xEcoiWTZF6JVfe+&%e^`e+#4d!XbutOX#Ojqah8Y#8*%D^tc1Gs+A3Z-dXOSMVvi5eB<3(|nk7O>~cz;0BlM?b03f{~7`g(HfdsIn_m2xea%+ctiaT}C^ci@563>ww_c z4|xJ6h;gxC-zdO_xWoM_77l9*B66Ur6G2c|ADJ+O;~bDx!$&!RvMN*d#JLDf2y&3g zM1WjK8)AE^G5zHfS}KOh4Uiq5v(wL&p*S~c?8`PP4kf;kFdy8O8YeTm$Y4FPw*z3_ zaJx|saHCJ%LTbyE`3ilNVk4Qr>5yU0Em&S$9d7mz8%s2jK>wk#iSjz2!lEL;b_oa2O0bEAn-=rs}n6VP=sz4 z6fw;z54#$+&yKAOJ^C{XK8il}&xM%FZFaJTaQG@2QdZ4u;mDGf!BgAT!5!Q;#%~cX zHIvq~*P3VLQNhPKUv#5$6<{6+rM&AnALC$7o9sf!gL>?D2e}tiRVt2AY z8dabtusS(zhYZgx74u!OTQL+qe(i9GWq}_p;`;nVdNtyh^Y%uEa&1Jjc`PS79+ax) zStK@7suJ|r5Uu9QG=su-3cWE&Lj#UZ_pR{H^l{@G1nnC+`;HwG!lj13?q^@`<;{|Y zJZnLx`)&}-F#QzQ;qGP)#$SjhaL|)VV8IV}Vm>O;+39AxE_jCnu8AI1P)MOzf0lQj zbN)u|2t~YtS8Y1ztE-}GR|a<`SLYgZ(65SUD-6%5z77CzBrS~^4GRd0fw~N=8HN+H zB7tA3?>f3eRQ+htjO)tQCO)v|QL>}28eGOiRwo$`$q&$|*OcLqLf=7CeBj|I<$(kG z*GdXc_-3qeQfu1wx#`anz)k#_MIjle+l}aJvPtX@9&C%Ic#GdS@>PQh(|GkJst60@ zfl3e8^Vl_~RHmIB#=`_3uDLp>qZjXAIPOl}Y~5_bRc4g)>wm=WGHq{X)>5@rfRb&X zdW}t)GS49?M0gILyMS(5Mgc-uPF78zn~j@O?Yj;qK>{iiUYPsgN`qBgzTXGZy(3nn5 zvG@VF`g&k%XOsEFgAorop^>Tp#72WGHwHA}x#RNHW4jsJ;@!~9TFD_yn1s)?jIe7m zCzzFrFQ(v`v~M8+l^aCkxy`w%EwDC8g!`Z(5pTVhe>N8Uy1M$CyXL^lX}RNkP~u+D zQa(D~=qLur^XH!Cr!B@RFc3j&qO3OV`q`9DFy}80 zq7U11Gobfv8|L4>TD_|}%A9>j+3To`@OpA~uQ0Kirt_nb=}3r((z0V+j$TC@w8T7M*^Uuj0LG87R8OX$}RtjZHD#B17MOrM8VJu@QL$*R$vNj>hkY((c@WUSe;@9S6-L$WVp9~tWm z#y%Kke(%qH&i6ju=k9wxzrQ<9=e*Cnw(EIaj|)il11r?+Sq`LV)w5wM)r{T;QP3)6 zfmBgcx-5Hx%;ALdzbys90yF)sU;EO?rdjX4R}1` zeAxryI5da7-5N`R-Ze!c1zuUR_mt%ekC}Oej^pvEeOyHjOHl9-tMuZ^XEbj~EAmoHS7DodYzZ$*8 zRIWpdgop2eigg9z8iF!}U$8s12iRgLF~$~5>4VyHGD?Z=qP7Zb4!p{O)2`v-b}|xh z9b<^^A!h+w^%BeP{ib7Rd2_yXi!W=se%Z|bsn^XZF*Ju`#>0u{PWFfEH2!n{&S%63 zuI!-Z2hWhYg!dG-r^|e|REu$R=Sv3Cy`-37Ea@Z4w}wmwYz2ovaLJQq+kbjclr`jU&vCB8|(4%D0F>{VN2g)hV~#$IP2Pktxcmk4AORZ;Fc$RE}H29 zaD$anl5NJtKq78KunQTttz5Pbi(}ewnvk~c&3^~4wjSB=v9<%}Od5D9m1N>E3AM_z z{XO@=D;3oc8#VR!n9H9FSp5x4XBTMdgq5|R=@vukzL}wdbze(B>0GkrJ;rd3&(V4p z>$kh`?^SNAP_LJuhC8w$G-^j7^BxDN6Q|kPrcRdz`BNSi+!-ic-dc6!jhPr6k~%j4 zV4+}+TkDolM_75|HBTeldK`^HK8NFR@!26h}e!*m#JiJCh>V4q{0! znCR5zOBUX%XI`HM?F8~WP=CQ7VctG!hA@HCd$DkZ90-kgZUXXsOXMhgWJoRqPkJ3c zy0G6we9fx2$I`1&f*oKm#kNRazzqRrGidKLJrr7n~%;4Yq*yC2`h|?TDSJzj~ zS`ay$&Ye_t(ml|cFAeR?RQkS$Yw*m@mdXp37lEiGCi_Ay&sK9uPp41guE6v>d3M9i z=U|E?A!w{WsfqO_AOs@8$by5D5X)ldX;79?WVlSg8yCJtvfP>z>4okqFTj&QKPsVl zfFua0{x>DrrQKp)cnr-H5c~SDmDhj4l{+cX^>T`L)B-1;mXEzMmw=3@q|iaA@57+?FbVNe-Iv;%osUWwCs+1!)#cbrx37KILZ#>$gO(2_OkP|w=hH9E zg$ErN-jrB2slHwMXfhjqCt;lnmu(DeeDUOsgPOo*k11$CwDoh{R~u0)Qn=EG8BOcr zo=x`x+NezU33ZEWXdpM+FDI+W(MZd}GJ(A0=!dlPP81P&D+8P8Pv#tj@WPygOHZUvTaNIzsW15_z|W zv1w@!nN4_R75M?R6-Ll@iYN+b=*az7H__gcp zn_IQA`hgGm8abCVDeMP7pK@wp%P6*jgNcy!hC)b$+HFnQ!L+q{jMaQ(GK$;7mUCBS zas1Kmy6lLuQ8uFHA`5BcA7al5Gyipra&Q@Jpz$>MCn;if^d~1e@ajL$M+4~I0vtuT z7*fTe^kQ4-?hI_nG?`*wL%Z0!VK8#%L=&|}Cs>iNHu*!%$2DX}6pAgf9kQ8Xv~(@~ z-J&(%--`2Nd|Arwxza%U+Uvi$i>_u62Bqtc8_&st(n|s_;oA!cS-6) zCHZ@sX)#q_LhFvM+DjjsGH&$bZHTd=O)tfK0oWcPSuRH|0vPaLL)&|?>XJpjzay`? zK~AfElse(|si&ADW~J(j@ExMbX}wnC>f2hW+>4B@^G(w@{|T32XghK$Q}|^inVR2v z^C4`h3Eg-L<&sT6UaOQ9o7-oERNXnu6-c}cdgqth%bPmF%Grxl=Mt#d=J;*;$xK|< zGfx=yVc6z~YlLep8j;sV3eiJGG3HI2@YZmAK3oc=uTt%}!!>Pa0$Qe#YcvGN-pNs* zkJ=ja^U|+ihkpvt&!(Q^hgJFIV2&O_VQiO2clrPevab3&R39L2zV6LBvpzJxxtC=R zKe6_N2-rOi-{N9GwCsqI*n`G4nP-d`4P$^|L#}g5eR@+3;3PoP3D?-Iyc?|)K)vIc z-bsd_Qr3W+S^G!ESXEC*nD%@w>XWeSFrsSzDY^|m^5Ks8lfRZ70HB6g8za>R~JIVD0JG0xX$i9YqkyucotOw^p(%D16U zN$L)#(*PsB+uvW~!S0`+FE5%a8~Vt>L|xP*ivv}p;U8E7`nkF~t6&U-sV;Xnt$S$g zF7^)0NxsTQH&6|0ioW5!l%Upwq3C`?f4`dV=Qf$!P1y-btkr_a!GP-|o8%Az*cB3P zfp-K%jVFE|Q1~XR7a^AXr?CC?SKqh}Y#iB)E)jiQX8WaFh-_ zAM>^C@c>$&|LSV(8KNL*Z>MOa>3R-*2w4o<3G|vvPM5WV1T|2lhp(asM=&~q9bU>j z>oWs8f;wiiDS-C$P-3J_bh16X z2Qq?f$&jC{MDG*}u<^9Og*ie1B^x%GdP7#)SAgfJEyiIyalD=m%YW`~WjvWhSh?cB z5dT#jBws0x4+(hN;2kg-^X=xo@&1>OhtuXzxxZgfY1Y5A*?5``yF=@9FJH@VWs_Hg zR=KlVplsHr_6m+kd7gNhCRTagOwvHXmLh-|Vh7c~(Q+&+6O*uisw#l}NY7c8*`7dGTw zQo2`RJL#wl<70Bs^yBERxqdmb8yFIKrnDPkpnz2O?%vQXcB^q|buw3m-S77vQNk$= zxlvKo6ey{%|MG=+lgGP<{&Y^MmrQ-q*6n8Jm6( z5e%t9KE_^xDx3MY2yd2u>rgo<3 zWzU0eaHXojeY~Fw+R|V^idxQO=_uzSuinQ+;kXoRuy(IAH**Jrth;qcTa(A3|!H4)dQE6m~6mhWx@$0U`U-$L4=*)^J!Bj8{q^v z`X>GNRxN5n-VC?U&^6(ML%c|u2OTAH@i>JZ?Qx4|%=Kf-OsJH7^ zVczJDh1b*loJ(>W4DcR10fEWt(tMV!`~h_8cY9~v-sJ=S2{CAW7%H5{dps>fd_+bL*pS6XG~)FCw*xEzd*?(YDl|=! zuEi(E!IM7oO0KMYT}Maz?(c&PxqO;@qvQ$Z?<=8@_XugaFesn%a>1GQi_~Wz@mwoF z!zl-lk<|qot3vM5CO#nDC)~FG8I(=KILvH@y5`T@M|Kq>J(6)TBrwTBl4 zRb(l&?X!MStMt$M@fQQ>@}|oDAD1 zN5-Se!rY$UCbmLy>=LJS?|(Sg)z1jMIC1-&tftMBu~Jp#M(O((C1+IDKR=W}m(` z+@1T_FVJ8djRU;i(9cY$f!aId;2@Wh>L7WPr%t0?BE3?asM#B_Am3v!3nFS#R*UHT zp8t-V12teHFOHHL>R+JZY4WQQo^=x*SxrKa@c<~`%pKzX8d3Xl;u_5xiCHAMyOr*RNH4|jP0heEJD63tPKeD zo*T9WHFf#L`WGlc5|SRiZR8BV?py3?90+bTHr2fX!&zQj>*^@%f$+jNVgdIPldU?{CJ;dwFHPgt&BbevSC(%jCa7#n_AY?ii zwSRjJaL}z%0V+YMtq5X-;`jt6*ZJ@O!Z)EC@32B^Ut-9JSrecEZlvNbXQne*M(dvB&EehUb1gD^LqE#d!jpA^zj-#H)1VZo`1 zH!0I*J@06Bqdnqh*)YUAhB+xoAa=-Q>@1tZr8t=fNCgMIen!uQc`aq0?Z~NE=J}?0 zRBmjr5Lhd9$Jq0P)!>z6BV*WTs<1-iQ@Z40Cc!(<^$-NYS96itw{3#0V9KbT($pT3 zPHXDvxvdod#C zUE5A)!tZ~m+g9b9-kGYQH$*p9^Zzx4IVTfhe9e4a=7f0F8;8)R^%@oxL2EgomoRD^ z@`a4gt{t~K)%)&pj#yl#iwu*J!LpfAWaTqZI_pvq5ZYr$>unlBMv_RH(P}<`P@eQs z?;*?cI@ykJh9eJa`=uiaMDM1YDXh**3oFt&a#q~|V1@7(#!O_km@mNHKk^=@Aop3- z)~q%P4o0GPPPd}DCN9S*FV%h~I8G2u<%Xmz=sq8h{O8B*Eh~w)t6mP>ArF37*b@O^ z$ckd_DV{IAb}R8hOj}2WhyEaD{fbGBIF7Z?na7ysk`^OgQ#{NOn3i&rJZBGeSTtiYzPPPQdOWhe z!p=~L=~GXsg8T}8I(5lkpuzC(AMy{qPSc+uzcQcgPVMBBn`;hYqr)0v| zV>DGHxvlbg*5fakd`{V#Ka{J+Rrol<1|GDG+CfH?d9IVH==!hf=-H^GaR+cN5Zr5$ z^`JyTWP9Dn$DqTdi>j^Eqn$b!))PMh$ni{^UX8TeU=uL2Lx-h=c7R}(UE)?u{OH;~vu&|ptz{rh8r1cVB5c|iUSf6pQ)%y(fh*-u zA>hdDadc>Lf?VLcjH`%6r!~9Kg<~oWEd=_|!eKrR_z%oRTo;O$Mg^N)I75m~HTp_q zFMugSezc7-6CqgCF7|nLi^zJ){jRCGBSwe=dWQOrFNmkvJ886S+57r)(YV6!cg&5& zJU{=5C2OpD7xcaStHRVQq-Q0~Ql2#`78$4tDjQT8-<=J`H34tbjJP_Ajhvw$je*Bbwo;5r}< zJSk6aU8hZR76nJUDcs{P_5ckAy8C>T29Z3nE58hg0_uhLg@Uz%NC?M;&tFjXTTMMu zR>0G+F|9yZoa7@*&qsCJkD|RAmyR)r?%(4sX^$L%zq42wd8@%sj!?JF;Tp}LZum{^ z2CY;v>awK-2ZEeLs+h_y>LdkB8P+dvK>3@E_b>1G6c7xCIHg7PZpi`JJQeVjBe_6) z+NA$v%>Q@+=!efU{kI07(}pv(ucy*cN9E=g=K}x!`Y>_F;xApT!VU?$@Q`P;K&xxdzBYu`RUG!xxUM?4L zxYqIVCGEjFhsc-+Buw^Ea4u-~u$+8yH!b9xjW(4(xF-+rBX73a!9yDd&mzqePaqn- zw*r#^Lg>tv(jA)=;$HMZLk)AQF65t?e6neeyTUhu*$B?gxVqDLr75Ck!vyA+tvk@z zlI2$fPawYml#OBBs8zq){+Y+81>}ASJ9>PBm!;|LvWDb!Wn3H?`cMq4csy!Osp9Zf z{PhM{rNk#(G-MYwG3H?mN}o=L29Ro9$HsTR2+C5wpCyYO! z{=#L<=w7v`T36tx=5VdR|rp)GiH_TH3SkCTuB zr!qtZb@Y42A~B)!dGLwNi|VMJN%h`vr44c9s!i!sK*J8eIjqT791Blh4b4YKF~>qH z{Uz1_mLO~zy#1j_c~ix(h(b`}O>^0d{J`ux%c(pFcNggOZIBIURZ<${YCkPM3xj+W z#ndvZ^X;Xh=6DKk`Q*MBjv(u9p8eQcmJc79O=)0z%;{s;3htgUNkslGEe)QmLT0A- zC0-z@QF5p1lGi@!_o7q15-o!UO6hyPgKJrxh9Gp%VfCZp9L`;hibdhp zNaXB2J%xkD^P%MSnXSdZJ4;8>dhW(BA3R(5|03p>vuc_{hi#Zv&#d#hdn8>yj`>MDLKdLWTjYc&|jjYJl}n9?fO8Asycj~Uho3%vcRw2SqI_x`qKnw@_H`U;g~H6FZWMPzyfrk|qM! ziU3n1^ho|wDsoPl#0aL>sAFkxf-t1#`xZ%A1M)OBGJWMlLkIiF5Y@B3=t-&WnMH0$ zSfMueQLMEl!~~0HcdYq0LQc6AwQdX% zPd3L5O&xfLqqzO&?qaiU%6iON$8cZ|;zu6j< z{n7Noxd2WFv8F~(wQSB;$AO3mcM4LwefCu$N=wJ^-PK7%O=`F*zxT2x&wd_zHQfQA zOzzwiBFWt^@!yZ6)T9evIc#ep zZgdYU-ih&dd(9G|^fXV5kN@S%2atDUi08GO-MW{<&QGnceab=~un%6!?pS_<>Q?^w z&>ijCm0vfc$3}YT#D~l@g7b2KYh|DEAg3N-Y4Qd>v}?BJ!*IKFY#?IXcN8z$A3jpr6_;JpxFv9xSUgNm`1DIUV{_`kZoj5n2J7&G_1o<&6lLvip z#Pj>|!?&VNrbbKFB+qB;7bPJx&&(Z6MOk5IKsogB`bKaTjY|GdLkoh7wrS#(;8u4c zMLU7q<44pvh(1JZtU2W!p1*iUHjdRCRtFHzFgPaMDgc~Z-6i!#BH4!jF2((s?YOKz z*|9jaUG#BLHc(MVXtTZk;f47htUOH`Wz55ZpNhOw4?l31F=y?fypH7QMvX&Rw-X48 zqjfju%R~EtQIcxoZo7!$rc*JbEMBI{Yy_i=Ep`F~3x3XB13i(x6H{tPFy&aItO zAkvP6TRh4**lY4R!vMAv)ptbsf?7!?TN#^T^V)FFK~E%xLsf+qcn3w>H_}krZ4Zo! z`S(UIf#4K;CfwJASG(pNV5_;A`{V(3i)9iFiU|4NwM68aTf-i@zNN2DAaE-NJ>Gd;}zmj;5e zlQYx<(N~*nvjug_1WQcCxp=?WzW%S#-mBIL(3cFz)_d}mcc0tGOJ}V-qsCB<+LSq{ zP~BUbMT!;Xs8>b9cNF8)LtOf~zW>}^wQ_CNt$#iy`cjX5)&@9zoq&v&V3c>@#5Mi%5vNPQ3cs{mJ~AziLr z^vb=X2eX6XUKd!Nzh0oPlmg_y9QpS0uQ11g@j_PH3@k9uJ1ai97EIB^sA7laHuvza z7$_p7?Tu94f7x8w_Jm@!W(*_+N{jaZe82fNisFwzKm*X)s>UqFapfxqr)VPv3=^;# z_%JRu&hjY3C85mqJ$D_os4f{?Cxqt2Zlf6S{Jx6osCSUv#qR%9LeMfH@lBnW-u>98 z^V(YY21qVu+sm5bM+#3}`Po)y#JxZx@35gvO#y z>3jhXl!_mOwUo-v-JGj4wxhIvLCMv%Ql%(31?uJTJF1Rt2q5sC9hQ@#8bx{qiVp;-E!d?b}(2jr`Q;OUw&M0jtAFj zP;HEGDqk$Kno1|jZ|9Vu)=_V`&nVH6sen_3{{#@UGa+*9VskBU;DHgY!+mt!BJesU zcg|C|KsL@?+rHJt4A$-sQ;EEW+vgGWPLW8(!39^+Yk&JFS=HL*mSg^x{vL$;P_%ZKOic-Z-fQdZ8?O>CO^dhz}T{LR%nT3!Pnj5W9%97@T%q6 zz6Zk#PC4+YBi4wjU7iRHKAc6=%^JlV`_;Q0@^#AKbV)(QQN_@PtsVctT2y7P|MqC} zzL3v4T5XNE0SQ7da~5=!VD}2%A|)ULfp-Cb=Ik7Z8R_ho1_rMwK?bCQwhq-ny#dpt z!$=Aq4qC2Twlb6kNeq8;F8KyHgSHp-+b?Jg4goQ^{{>I+et^MCU2Ds&!Kd_G7-MAC zgP+Ph*fzH2JlGut!(j1aTcwEF|sdk;T1JplXkQ16?{|1&Xl4 z;lMuRxn;}Tj62b44(Y$^GY4iR`!~idJX(BT`A*)m{)*ahduGwx(cL`0rh;8iim_Rh zi^FMPA5)xbM=LseHF!^hz$N0I$ip^56X+7;K38O{hu_E1`=&KcK_H^IWzC}swizez zy0%o#QvSsb=pYxfN-W#E@i|cBLh0J&B!a8jI?3zWy-6KxqlL9np8w=pyZoSAoa2U> z0i^{`*ISjWpG^iV+l$lN!D!TZ^9>`I-|+$O>;E0m=qT<&g)d#Lll^$zO2LF0o|o{| z(ctkAHCIO&Kci}zH#~i7bI0Iqp3lvkEh5$CfR@1Hc&}EZ5A@REj22dL+}(LbzhSq9 zR^jg{kk$Lr1GsqHgnab&j%5ZeHB!S@Df*&gy8V&UmC?&_m0?F>GXg+sOTklZh1h_{ zpBzgCm(c!)W=wD(<;^svzx2ANb7~o%M!0fMs0E^Cd#%;~VCUc!YR86~^#BB!B{YfO z*Qq}|k+ZAw`H5`?rMRWdZ;y|M3H+QJx#C}4%X!8<%?&Ta7MM9NdypjYh*M%DU`%BU z084HauLPlqaR*RD4*CGmw5Vo`t4j{h1-lYotk(j(G{Z-J*vr5hT_j;#zHh`$vZ_zr zS?tp^0HO}Iv0@Gq$~CU-tkc^1`($!GQr!if)Uwli2BP{Q{7jhU<(a-;?*;`CvjMrz z`=gvKmV?GGMWom-Cc8F84Ki2|@?=-jPymE}6bk^9N&uG$^KGw1AD%~m`9Pf&43jJI z)@@q8{pk)tQ7li;@Y&k&85OL{+Y((zg`o|9Eyek&`l&I*U+l~59Ee=qRs*}2iz8OP)lw}j?K`wjFap#Cd&TZ(3 zR0DkYonsKfg(xQvle7KrpXD|7lJ=Z_8FwI3ppm0)}tT4wZV%=^Drs!CCvv+v;Kj`bY#JKU3iN-AjYJ)}2VaLf$37-I`hR(pRO{bj9t zu>sC7B@?ycv`T#?YPqI$pgi66{G!TA=JUB%v5duTt|=RRCzA;?3oF^qRNXwVBQq9w zJC*oqDRVmJYf*$jpAqh zl?NZY60dt5p9SyNa9)&Koj}7ew+bI7E7Di5GOLAbC7zB(d9GBddrSuEkjLeRHzf1! zQ1AsjV`h3BLT;D6eB7T+(KWGk!Co!~ES@XJr*#u^>Pe|YOM1A?+H$EIQA>UZ2(J~J zd>&bl28lZGmZQ2Qw{)*54O>KdLdT}_7KZRHL$>qK3r+>oHJ*{ruy?wYv_Z-o@xMq7v$FG_Hlfh8#uz1vR*5j zhl*09pf^=-3~bzRWF)V?lf@`;avX%w;MQ`% zXF7cj?W>vUz$N*XL71W>o#*#f{d8u<)%&~OFZ@3wzyDA3=U%&~t!DX`OjMC+LsD32 z_N7S4shg2QMmdk%ueE+;D@k|ZLfC2-~8GDLY;YV~RFBZI>XmM99k#MA?WZv+Mg4V^S^UUmFdJpk;56Hk#(b#`@t{NZv>eH#x~Mne=-#|6DE`tXLBa2tQboD- z@52;JtvTwY52HMkWOrI@p6Ju}y*~<~=3|$W`1i~ozz!-jxfcWT;Lq!n`3EQwHTvNn z5jf#y$N+CW!+?jg71qaKFp;k^Z}Df=?h=*L{Kj?^oeMB8NWbeg*zC|fBkT}a7Ua~2IsF2()K|USi+`o4_^9`wp(?JUOd?sfdMr^?a4smp%f5cH z(@s+vS14P_TtnRTLsXb9gxN4b23YxssuaOF!PwP49F+?w5?U`J<-u>Mj6@tR+YVyT z=641|QH-4HqMkZVj&#r&x2_#w_Tyx|=Z>+|fi2f0$HB#9B9=1+dKowakCe_UZXiHZ z@}sm3dq@fZErd_9Rq-o=OHn(e%bd4;8A1>ay3xWn$$BOezy3;^Y&1MAm+chLa75jC zN@9p}eJu_7Rc^k(E>$h&qn#K$MTr~;zf`Q4GYKQgq#`t6KCyVzqCMz@aRsyW^HarB{M5#uu-k8cGv$i8_A zI7bf}EW?fN_iZqDy%?T23d%GZph)4{Z($dybmMX|&!??6DcRibQ=|_DA*Dm&g}F9C z1;SYztCk4be0o^)#a|;K8pekx}CE^m>Nef2UL62~3j+66OxHo37BB&8O&>-Kw zfbIX%zAyNUGWgLn-A3j+Nq(|^>!&M5fC^I%55 zScy?@b{ex-F1T0JgZ$#fM0{rqa$~c&m)Up`fRGWlON}X!fgc zy~5={guK7^cTMcmdKr;=WAR?H5tde$EIb=4Pyy;;M@9j5S_=A1wKULp{Qp0sG;JA- zFZIR}*D{AHoh-RfA@h^hl%8qD@MenN>+x%})GjIRDpbvgNV*>l>IAuF? z3tf~-to{t*zOWXkFd_wqV&ylG&|Ko%p>{cvG<*nNS!s=$hFr3%<<9l?QV*p zYpc-Yen3iPHq#Cq$<6m|rcJ)a=$*eg1}K8y){29^F9WU84Kf4^B9OnfIJuWM{;O!1 zyUTv99s3bs9TTGeNib!387lU{J9$+Wxz7ZG;T-^F!U`PF_`5o9KEJ;?O!8VQw*2Cf z4{HwOyRx1jl!+uX#+@J36iCHxm}B{*|6fY)9}$i}lkNBw!P6?a5}RwWC-+1-MsHPu zd4qR)K3}Fe6k&4=gqOCOR_2NVczmC^9cJAnPkaYjC23x-8lXTmcW1#qQ(i)(%`|b=j%?fa>ON4V^QSJ#qKe; zE2;jLh7M}n(%`mq5i`TfY!=VfiD7SK_c&Na*TjQqny{}3L8X|jlgyELPKH@F&zt|y z2CH}V%269Znkh4W$F=txp+3#bA~PkXb0+m|IhU)w6zj9HYhop_}|7Gi}Q&V7;$Q~G3KJ}?6 zX(=vC?xtw_{MOSSH0Ac1KYY zd{s#V)r9IV{P_Vhyd2v7-a*Z$UQ9_~S1L98Nb1_>T(oUccK5|xC%oP1fRPvP?KrIy zfxwdV3>Xqol(YOB>PnwPx#a<#WxNz|XQm=RU>DFl$6^Lr-E%I2%{WX(q(-C2CJc*kIBV=i7f>-G8JtLTnj;Gjv|qx351{&@SY> z_DA1UyvtnqYjo(T*uxJ-Ju%ux!&v_TZzCdmm$eEWx@@woOB-rLdAbC&)P@$Tun2D> zqud%3kG}hGgQWWAdq*`EOqGwd4mB5_kirEP>;yH8QUZybYkrZUfy=@G zmO122%vT(}r5mxR+U`_f zs^@Zc3mEJ9`g_wVUEc$@C2pG1zpQ|0L$9N7l#t(XC*mkh5(ShSfAs{it_po9!pusM zQv8L#uJI689b6mV!#>$>h;xJY<0@jGN$>gMCAQlP+{4dZ(+j!MG0g0=PMp37MQs4L9IQnl|YJ1YMNlu72ncWw`0zXHvJ;sQnMf#LQH8o@G!@wbG6r(?>`tq)c#bev_z;ahyA2R`gJdAqF%1z%p}J1AT` zS4RVj&E!CydId-nD&D@X&T#|hOb12;**#dfb%Esel~v}-qgAsNAQOE2??=lYKfd*3 z`pJk~msS3fOOx}VuhYCQKAjueu1fY@?CCNn2!DTy{pq0!KSE)EYgU|gMKIVce;W~j zp1qFbCv{ACVXrYKykwi$l;?ooeX{yY2o1@$xEsuen83sMW|{T#T!wfn@Sm&r&D$9D z&6h?i*AR(~9Xb=NwI`7U5WO%BJ^jZ+QUPDq zoTIR9yCww>xFtWtECxb$CI4&Lu6OVJa7yJKF=LxZho%NBg!`?{#h3=(JLF&}bH7EC zym{7KLCwL%;feD*>3j+oNwiftg_!V^HUxB%on!WVhPGdC2J$^E8}umD?*!U*5tbl8J#q02e1UIE3mQ6utS&} zZTmGNwZn-RTtE;)(Ul-&40{}}Y40ot;^^(1O3XVe6K*p{XM!+qrz+T z0HTuj6rq<|Q}yMqp3QnO#ytsnr4_tUnAXMHL{`(FW$qnCy*fF55U*uhS$ut3oDc6%*~TN6uEr`L^HR2RTw;OwpKCQ@ge zy0&Lsse*$;>)p`0!SvIn71??tS|g=Rmq|X5_PJ&Y@{?e#-uy^ceOsJwe`%_q-bm?~ zpkYd&Yx$(c@^A0uQHz=$=kro*ahKm=gG-xRhMvx3!u7SP#t=^dM~2&P8oFyUc`Bsu zIIa@)qAyKY0DeDID3f_>P5;6rzwE0Zt^8!vJzV!%IqJx0?Y5nnp%bVRbdYnCEIE50 zFaF}Jhw;Zap2{0x<8}SVbti;8 z7ixObWbP`dI=%SX?n^UaqX<;Jy7qpYq#$2liJfk+kg@+vd-zcK$A;OI2m6Yf*k99G zeS=c_lQVl6y@)f5^&Dd%*{Il`C}~iB;q2s7I54E=4X=8qy8Q9`DIF$EeDo^^2Vx&YDmrMbbm%X~N6|O<;wKQEG zJsppn?gO41Bp-dEixpPVPx_=!{Bb?8KJIcA`RdMSVU^s;u9cbgFI@#dwt|tww9ISo zQ9wY}`(ciz!vw)gH4^@jJU3*JNH$7E^i}Is|EidpY>+Z+3z69*+aq`d-#fqa7P}B2 zM6MBB=EZLO{Q>=l(IwNH!Lwm<>B`$_F&P^T{rjuZi+rlXI#$lp>RV3*=m++42GC08 zbyh`QBfaN~I4f*U5WNs}jlDtPw*_^edM&;IU?1#(SV}z%VF?o>zX!KvbfojMm%Fllo9;Y@zHNbPPO$`_7}6<<=2a_!h}5^g*JNrH z&}-s>8Irbu?@W$o$^Nd3M*n>~3^0@r|1=l2pJ+vX1gxS}mslgy#w(UR<|>2$acG!r1QLb(@{J^cjPZSt}Fx zV0WE*sq6E=9T-qFHIFvD=+SM?hNA=c7!bXsb6i(dx#DxZB~Z{B|>o9#Zv|7K4#MDWVXL~1_2mv(#9*Rf3Yk+GF%c}Pp z%>e~r#}|xt{eb|>w73Ad;xV9TN2%aU=!c7*JFWcKkubMNR4l=(2_=tg;+KvJE)Xur zb=5GHZ(zi8ZAn1Bvs9Z(PE#h@U)`JfZ)H;ESbA*96XFfEg>Kbc&g=b#yYB+Q7cz%; z83osQBNn1!XrilLMv>^Jji->c9Pim%tJo}Dujcw_z^9-8#k%Q zB%@Gj6e^HR41|0~0;xtASbRGK_nuj~0dqRVZQO~7u6cwv45sZKI+1)9uHrx2Chr_V z{jcnToOA|OQO|fQR-7nr#sUhEbqZ4r8);GBQ;;j~&LG6D1Ep=KU8F^?&6v!%~ zRe?GCa#0xVW76v!y4M~wN+KIj46`~0k)q{|>e#9X*W*WNR=**avhGCI20jv+)(KGo z6_c!VoC>jU5UFv>X#>1q0ogs&La%NK-u z(C}a3(37bPvB-k0fN~TWHu~Adk~*Eyoyj)leoi#2T~eg*^NVN@NmI%JgCnu_)KdOu&!=i|8+ap{CWz>~9A zwYQ8%+GE8Q6AjfuwCoPhSQ9ZZ_^8CBiaSK@rYe;GXVnN2=^e%R>ve>(^j6*t5w?Zr z`6c3)>e3kd4yi^>;lO@ksSb>MJmMC?oUU(U7}K&M%TBdYGQr9 zIfQrvF{%a+I7Kr%NPhK3DD+zOe_o>3ViaOy>=2~7qz~k(*`jyqtUPYnfz3TkMlDzH zlx(1Dj!=vph2hSAepi8KI|5Vc_5C4;tVCaZ9dqQUdj{4+R{izeH1aVm^X`_z9{q7I zdg>v$6;U>zdig(aq8M49ag1U-=DipCasr!1YueWIgXOwGGKZ!uL`ih>>g$NjR~X2k zvDt9Zaj4Hjd6*8xbwh8ob*|M;OmCQ1Eo<6>I}^JO_){!tLGad`@R1STzV$G6L70fY zMJjP_iVqajXGsTIgwz|mB4CsF*=#aUXch7eg);|9Qrje%bitw`hY-BCRYp(ecTF)Y456Gpzbo(7}(xUYxc<>smQE1#LaPjm=}m2UTN|B z^eWOGhoegFN7_t&)@rNq^4|LdvI8#5{`;OY@S4q(v!mBgG)Xog{8>&`<)P2A}n`n%VIpC zb=ak{m}s(xx%6BpPw;b9(4UTpQSj%-xx+j4zPa&viK7i}&LHwiLe(aYk{T1G`Q7X3 zW9C296}`v`3?w73w9mI8+~)Kk?=r8~hbB#g0EnowR(nth3vSO&qAgFiIZmfQ@}TZ5O-H~07h%+O1rv)GlU68n)j_&N{e z<>G{+$Hrbksgm-s@$!*Iv5I$mjjgj`t?-kaFVHq74_Z6#Us+zBn`> zftl2+B>?Dg{&_ngR`L2fCb93*m%#nsbg6WpX2jeD73dKhV@l}YJ1IZH0Af92NQ4~# zH^RI2bB7R>ZC_L;TLDWLl@BQpiKUP>=Mf;K2_~he5A%v1kk}6fZdS2-J#%+4*Tj1k zCQusHJ|KoqY6IJ$CgLBd{RdTmg(x=Mp}&4}Fj$&*XwcVh&jtVY7n|Nos{3T1Rmk~- z$6xG%M?z{D=N(YQ^6}b=L52%D6_?U=D@3YT(t@*(roe1fl^fW`1M7x@b23NZW`D)?v0CTb&A$P7mh3;6>GlT!?dUy zcfN$l-2-=ddEF}<#sj7S8Kdiz3wgD6tmPOQgGc|M`UtOHUZ@vQ-~MQnNN&JXzWC?! zRyoZF*2PI<1k7r9+tkCM5%72GYN{WuV#Wa!#HcY$r$`u@EZ>R0>8w5rknR=b7XgQU zo&2^Ljo4nk;SwHVU1i7$0|!C&ISnd$=0mDtPlx;FI&?#}X>qV+EB?{*y*HzYdO`m1 zdc_>upj)`tnH%N}p202hl}(~D4kA;+9fzL%=d&3!AGWx&H*ipXP4!}vCA`(tg?%xw zCO&@9qrh?6Y3{14`s_0+;s;cwlBm}|u?_C_`Yr=~O0Sad=XsKKh;Gh}XOxAFZ4FD; z;=PwDIuM$^LBh18zolTdx+B<%egzv4ACZlm|cX-_a{-@ST>gdHBJTdJzGMOt|m zv8tm)5>U}lo-W0~^~~qM@ov>>)ScV&0~v=@#J|jvAzNa)X%%R|^`5b)58%;0d8*LJ ztlJpdCLa(9q-3uX2ydT0Uro^4 zs;>LY;(XZPWP-btj{@@e9A7Ob2Q}~Xr$7(fDc(e<;`~$DW>L4R;jQql52k5%aCb3v zcGW4}Rh$>M@)RHkB_K1GLXWF{z4^-h(;=YAZJg6P@N8ef7b`#MZG46zu-O|7C+?Rc z>wVYVL>?=WE9y)IzXEsgLE~caWsLn57TQj+r+zeU&;UHgf+Zru-Pk4oWP!8_JfRcu zBJAfULXdCn*0jyi+JyQTrdlpQL!!M_3scOc21;K#w$T3EXr;gq4(rCOWrQr}Pn)OE zRwt*K^m-)UiNlHAszXq#qvdXnhxX5w2kdo-zEq4r&%MrQmpuFKj$pTnuWF;m45kB4 z9HPYh{Wtqp5)a*x{$T>$+%KT;&v9e9|~p*}C`6&=(n z`S653bM+i?Piz|W)OecRHDZ_T_UDWQ3GaMgtl+Y8+75&UWZXvEExqD5I!T9@X2 z=mA(f#b*y*T;XI}Ww^%4d-b^p2@(_4#UatJT zFsy?K{LRwQQ=RqlbZx?hD+57Ye)fg-Y>kk6N8l&nUejxMLD-~>KQg6(%>}=@>`yoY zpErrc*;co9v|X2S4cY_fGrUI^G(>$MtW=zP6U&!yT|ThqR%3q3Uq!Fr%=sTrBGnCA zCV#O47z-Lu^18BGUIy;s=YVu;4fZ!?5yycAw5kD!BNIjZh5lvj-M{Y#>^y6Ge6LAV zXQzs)3SRi7#dEl=Hh=tWm4{2?&F6Pp-mcVeaOTQiO6_A5F3;8!<-%r$Kt z>`Xuk`4oTa)==?I`x_HMdk?Ja@Y#ilD8XvA5pbe@sU!^uJ~^V)zYu5ZYV9!f2Cw6e zJoS#9BVShKY2DGo4XoR(x{&CZc`r>egiXvz0PAWs!Ta&9Cjf3p>MFo>N}KfM;`IUY?h5*YK=o z4&9H{@KL6ADmM>TU9an2DJPP~fSr&LVnd==%JKpV zy*KK?fLwIUk~#TAD&%yC4eE!~uk$>>m8sX@Y0ISUOZJl0x`Fk{1v_r~djR5e3A7n> zT>{gvzXd3wU=kkWT;wy#TPnPJ_{21@JXbd!%^&u&{Nk4WXzS&+8ogfbyK=g0=pu)r zriay+w_sPwnmglI@#ugLk8Fm0&1mqG_=!uE(O!@U430r69=zp$A%R__5^Ja?o2 z@0}b8#M$%BO@LKRnFSs0(PF2JjH&U!-bUHe@)WX<6Wsln`)um)22UzVaqul{c|{w% z2>Vbc1_)SFB*F3$an)y>Qzp*;`MCftcx4Ah_7D3aZ`<+SeYuqUQDbH}{U)^8Xr_W( z?J3b;`6N%)i2Q6r_2-r`EEnttTdY?w7s=tD2_Xpkrj0$8glvFUce>%2e3ZjVOA5W* z8Rkh=Q}#>#f($wMWZZgpwU-7AEuto_xP2^Sb*iY};tcn*7p|knOzfL8WAjFbLdcNz zY5b80h;dbpl9J*u)Egjt&Hk$0){EE3bPK_ntBgS5!2kz%!}d*wdKIiKB6^>1tPnY? z)f=%E3eu>~-}cQ7ndCw2a&y-x%D7!YHHCosR_P44_w7K}hr{xA=DeSK_#b?8*>rQaa!^x=1HwrDuSz0)e((zT2sI`1$F`c0O|Rfd z>T9JV+rZGLFO*^S^1Sg=GoxI=2(xLgnxW!OY&xVWe^i>luLUyaSUa#~=Iii!{d|cM zh4|o^e#`q*(;X3gynz(Zk#NfZ65M%-xTLk~NH>mA6M1Vk{(YEq8L=sg@q&%NQ`A;1-X z8G<034L12t`JfJ_W7n=a{io?FmbZitdbOCXCbU5tgAc?uiMlXN8#0$W?_Jk^F~#41(RN+mLQm-RRQgFC zoIAi^2?>U?UDNb$DAc(pa!}Qa?>2+-Eih%K`a&)jiXK#tucV=u>m%bT0_hf zM>J(}Y%oaUR)$ie%0avQ??_G2>C8Z}`aGi{#OfgQ-rH|hH(r=sC|#u?r?ig(y|#*` z%4K&16@14<6aGZ`!k+PXHRiAEZa217czj$?wT&%+7`LP3k!cBkQqvIRtCqW1%W55w z&_DY2SgV!Q6s-DbDG$nG8{hC;h|EZ$w@?ayjpmtRv)ABY1nVid} zhlIFVz&u0L0py`VbLKbU)YDIXU&^aMUtR+YR4sqVZ+)_`=a+684njXU1t%h>eRd#5 zTKT6n`{NAS<~EYyB>xrm!XaU+U$w}_;T2yUJqS8>2j{1~H03!BN9@ZT&COCUr2J94 zbeDP`(?G*-t<}I9V;||&C`f~AbtZH$H^ZuH;+i-9j~8GwT8!p+&$FM`>>kaL29!&Q zDjL|J_4JIj)HPTWQoqADA`7JYSf`s(AGYl6b_ z>DLtgJRGJ&xUFIxYiXEOmdl!`+P=88LlA8Q*FK%E*1`{+dlsejNnmEbxXnxHE zUxD*JRS|tw5ZgTHk$N2)+Y@qkV)#(n_HCf8@7)~^kvvQlEX{f?3_x{{oVPJhc$1OE z`eu~=s_Lrg)@}X(`RSs}L*2&%R3*q`hCCT1h4J7gVu|K~iHAarw4zJYK<1GKstbK) zAHbb$$b+OWfEe~`0ery*v?D}hoJ}Z(NDnAHDq5lz1R*!UNSB^$=b%#O!k>&&?)b_d znULU=k#4Eqh468(gqr!iW!x~-FDhLmjpsQZfM=;=D7v2s`0$mhJ0w8iOUUd3&nR^5 z&G&Ii1?Tf>yH#O|uxgWhFRZ>?1_M?3>wEogNrnVE5Y=~cVy;wOxvWiv^+pvn9s(K7w8TsqNxQ>Rk@zI&9-5uCq_S}1zCCA>;kI>rb>oW(x;0~g z01Qo~sY+PDt%zydRvU7#%?enw{gPWa0e=9@&Zucn zar~a2K^ADIf7^YNbpFdVXA_*<sFHo*W`Q&zSNyT&Wwo2#Ko2UuU~5?Z$jw-R3zaj`+lV_nF~o4>bDqV5AI1h( zGx9%f8byp=-v!!{SSkCg9Hh7vd%jyihwaQKqw?W7oNq(bFxl@#Drw9}i{c_sjiar! z-%&&wV){?F@3puU7m0^Jml1!G07HaH6G06aUb_-;Oo*-(dr9Gc-|!?AQpMKT-y#Jf zEQ6){&(<1CK0uMjU0FIb+10n&Cywn{r}7Eh@%btqK$8^hzyF280vLpVc?vdrl{;)e zMc}RF?kg?NqVoag>>P1I+1sBzi#X-GPR1RNlb;k}U7F2CZat0E_;mgPh{$WFNN!X) z_Y*SZ3;qId`zv907c_Rx^!Y9)++eP#0vguuuArD(Zc7XNBY?ET_|3P7LI4pwp-eTx z^6^y+^Dy)L?|O}7X9UQK@#eDSQj~5kSc0NgvrR;7bxj*hl&&j+5+c&HK|>!oDAboR z&XCc4uNiC1L}p0opHgNZ>rE*Amx~uVFUZFNFw$wMSx2YBRD;;r7@NeCxy0$H7yN>hiLAL9Q$-r;n$kAxf)p;sx0?FJ+_%8Q)=3@HU@PB}u>9xHz-xyn;8G%FcD@ zGraxKb*naC=nvS~91{j-PS7Ml1OSP+1_Oc$s4!F<67X^VAW&wfdN=U`Qi z=9XUwyNOV-+c%bUQ`WV^RA&DD-By&C=DMQO@0U{%B(yos-*`spd#+m#Sa>GNWR0A0)As<(wn7tyAhBk>m5=J6bCwC1vD-+meo6l4iZm zn47W)+&YQ@X7>Z&oC~y@#{8?8!l(O=!3GCWyL0Fd-stQi@fDzJSC~MP~ zkZ{vTezQ~?hy3r?oacm2)@Sdh=_~a^yCEh;&dbk(q9nJ|Y;4f3($5`ZGIwo%x)E@` zBL3$(y3D9Jsv3#bcMjMuDBk~$sxA?C9ilk{W~N95Ky{W8MyuwO^yE^SGaDP~U#czM zca2l)cNT3h0oq|?5xX(>s}w4=cwB{6LP0F=y*|K%I90R%s;_>T-->ayH&+KIzdGv7 zQ%>5YN=}Wi9_vX{+c600I}_jHWRib+mnO!qu*`?Y+fH~%&j&~SCF#AWN1iu=+%m5Z zrc%y1T3o9G^XzNuJ=Sgc6YXzVRf_H{w(9P(D>zXjgIJF-(7uO z`DU~!c2U56-|+){>-5ZxXeL}S>F=VA!p1XWkBIs9k=Xh;}K|zIk zJ9UC{KR(;kOC=ZokuKT0kFibpQ_9J^bgcG;-O8p@JYen^i%&5<5??X#&v}=5gk;OI zm+PM|Sfb@qKoB$BEZwzqiPDs3oRPe>OqY>Ekii)SArKp}LB$Ss( z{U1r6_h0$+e|rv%6#Bx{xUSa#c1eec?c&ysylu;)Gu@f*Ij6L~2cDChau;esYTG85 zDmS{N;lZk-ajMfd)pyRYGsc41TYA|7mRlm$J1i8|v)+zt3jZ1>0p2OZnBLmQrfH?n zxZf+aZR-w0h-`6}k&!snuO~N{8v8L5c)hJ1np#q@r)qutia`{W$n7D5f#cCgyqRY? zaeF63HJ#@=@a-hpY=tm^%5QHLCAJ^YciYPhp@Z3+<(@rN0B*|r@kfp_R2{xJJuVlz%*Uz5bMd3j9!t zOiH6A5;ZP6m$$n-W>|1ZM zjoKNI=YzU;cHvP-f6pIU zWI${PHQ(={ZRen1Z?~_yS(>-bzI}1K8A~idf8h$J9nt)-R=Yjop=dMF96km-VT9D$ zz2TT;P|4GVWNv>K9OPBsLg^{f@*B~ONw^w!kjX;3y4>hGp*@#N1hMsqknhj~Rqj!Y zTS}_%;4Z~T@bSn7jC*-XPT4DYu6}z()mDsXopAa}TtwfA;X~Y9^skF85M4X%9BI}U zGZhe5<18jAx~2~7eJKwFcpgQUU4`Azs)x)cWWw?9ry?p0hmG2s?DVYvuv4b>Aqq6{ zz8|*L>N(<}f5u)s@>G#pc*xC@_r?wtOSv1%M7cUI{68-8wh=Msz6d6L)cnL zINu_$81OD${NUj1QVncA*h}7PJj&xyl}JSXqr`)Myw$-RZP~T*)m?JRcYn_8#-+;M zH=aG>-Z+d8HUOM~6icJt>b}JqD-oBxF4z z)}W9RqpML?6na5&HY`uRTs6}il&#~UoVs@#6fs1klE6r@MI*euS6(oULTOhy$*Kk|Kmar#7WSGt2g1crr=wu{5L;`V= z_G=sl%ROadi6-M0XjyQ1cqy@MpkDNeW%Y9pgjB14sRMADuJ+&Tv9eF91fAhl z>yICNdUOAo)%(piZsO9DU~jj**%vmeF}}$4ebY2FdyUwpIw+`aWhQN@MwHm3O59>@ zqzfqbHnYV*O5K@`u<5Xjw%Sq_hUZ&>v*|mq<&aYEZgOzD+t4FieV=T7pa(+fJ$%t$ zuNDo5-ownFip^kPb+4x37){k#k{YYS7Wj%__rnx*^yc|009@}#?^&nVW}bH5czgt? z9G+0`SZe={`0s(kITX5v`BTIex>Plr_%+5UB99xo*XFo~XBM34#RU)w5stbXwAxjAhqWzy>!9Zln0;m3Wf?*^&_r zcsNu9fN3-{BvTnY6xZ9FfxIuS>IwfQz7rTQHAa&LCH@ma_!U+@-bTVZj$NtQRJIEo z+yyq2KnxSUP`lb&*%Ygx;rm@Z&p}2aNL>;rJnW}7C`Z+jyD%#ocgr6kb|Et{;x8;i z^@*)-WroWbtK5N8f$pVc=0y;57@>kx`S)r#evIDXEY86iL*1z!QddG&V_jFZB{`1d|R}YkRy3 zr8;#L;^v%ir~OCQQ(iqRIHyO}Q7pOM?g%0euRJQOK9*M8H7QY8YsqGb zgD0`^a~WH0V*Ojz7%dL#aZdm=7ixvka_RWW;?Fx}#_?RS#6xbMr?~9?+pVU4XjLbc zXkMrK`JKuL0;uyzyb}nS=k^vHCZ68eB_7_$g;$4OOO*kYJBjy`)jqfjG4O0DpC=Z?1f-ueEx=nmpN*YE-QYxe4rE&DW%Q z5crc%(ZcaRA9A8u|3BVz_G5vO7X7rF-$!yjKNUn#^pvUR5V@RoKVZ5h-Id_L?uwzu#^RXrFU3?62)MK9sD(tOHGLu%PK^!*ShBu zf7mDC7`1zSoZnXbjbcpe$o`G7^pww$3#nNPCR@b#DbpX04(Q2R}ImhZ? zB3T9i%<|G-BDc=SwEz8^Lr1a}6J%TNZfJ4LUObXK)GdSfVsSoLWQ$9smSp{5FlATj z`+e6hsiN{e+-anDg+tG3^}!~v*Xeg3$!Cc>Ze$^u6{9{N${oD1xUc!NMy_~5%L}r8 z6kowPL`z_EUdEyj*+q^Ng`K$wgLqi!;?q@ntkE$?3Q-P?Hb8ESG&xe8T8EES9*E1P zF5I*UP3%M%gcK*(iaq|PiqGNc($?jk`XYzUtJil|%wJutv9LBTT(E)op}-l!|Ja1i z`gFNa!|#VK;*3DOa;*_*RC9AoZjYII;G899Ywxzp)CbY@_C?WHG%`vd^%JXaag0)} zju2gXH_CPPWhO!f(w;EK>)DrO$Vo zW^;9Sh09Yd^(bD^yrDBodpU<}MMkK6P4B7EoUZu)A(oK0Tl7f@X=kXxoVl z9rXX)Pwx^puJh88i!^58s zK4i%_C1VTY85>%%zdwo|vC3N~S9}@r4H<=gJft{KCaF2aa$CA9f;9U;R*<$k%t$ip zx2SU|O*619;P$q9R`B3O4W4pj%C# zp40l*#02Xz^2{&_bsmwEm5GN`4L4T{&e2v50j$)aPGvRKE%$YiI*Hctfr?(5O}LKI6(CEA7sA;;6MEMfdu`L+7lV9#~oLaBE{SVFzNSaGQ%{ zD&L-s;_XQu*x3)XPhfo$k5+_g{{1riuTcm{Rq)E{f7c*ofPWj-3035vsyLMe_o=T! z?xHSUp4X+Y`(tf?jR$mK6*fi+v{Fp%Rlde)p?8OsN&34((5o8VzPUH9VUujQ5GoO| z)G9uc7d_ItCWuk6G`EG_^-LBJx(iM?8De)GEkpdydCKjWxiEBh^=&$Pg)&4mwPo0B z(k(4Av5B_&@+PQ8qz{%x50~8Xea5ATnJ-%EfQ}|*FHC!hko{K_{WaQo=z)|C50fef zPzRfh#_ToQnHRT8Bp_D?0KdYf$+HmT-b>_8SkY?KFs=tEBd0&0iC8wpRVkq&(DfkuYKm zYa^?neV+JwHuPSq8j0z`w*N0%r|DE7^9~OEj@;8Xjbq>2kWbHgq?lj1u0s`mTGy86 z+38JseDYig<7Nr?*Ldy^6jU06NPHLsg#MFZLqe1RZ~;}i!%%jYEDrer%R)J*eC8Sq zq)APGDjgZ(HPqqq=GTL4%=D+=>bGTcAl#3$BwReH>V8A=K1+Mgj8^i0a1V+n8eX~n zZAA%XVS>3MSk<@aAIL?ycG4LmW~h_L3oPh*F7=g6B^XrLb6gzx+PSly?Wt%}lkAUuz* zRN)XVZ2{nNUD^dWDwm(($D+$R{qr3vTARh)GeFc8S2;`b^#FmDQ0f^tYeh0;hP z9Wz|o-}Z?>l4?fS{_d{%*Rx5N;M3XA{CEV($q_M^c0s94C~xm{!Kg3hcZ+~(VE${os|nEP!LWQNFLMgiln5sO}kg%;@jJC zzRPvb5e4RM4Z`I@naZ1ctf6{QF-+Rm$t|^vgoO8McQ74AC%7?0cgi?M_NUn6dNn-@ zO%-F-lu`id7Elxv50|~${zCY^WFl^H7e#34$75EQnFdD{2|lM}CX4Cxa%msg&kZbOQ0VGbVvn!qq9>}c}eoQeNG|(&QQIME2 ze5E1HPK`oMQ#Wa$5QN!Bk9Yn6r3=IE-E{*FxByq!(hXn^#nLM+O86>Q49Mx^V}&>Y zxt=wl)4QXP3{)YR4ur|o=nK2f8YN<|*Gh;9M2*%qtk_c|z+YbuO`4+Tk6IqjC$l_9 z%aXSnoA$Be4;(%qE85&M3%`yAnClHogy0uxjvy5C7Va6-E#sTN$80YanY!)?*z3>c zpoEG3drZv&r?LCK0%jWhOJ<`s^Op+W31qMtn zXg(S6?p+k)7!YaoU`-yET#w>Mz^Ra`QiNLe>mJb0&_|G zwAcz)oXmBgaS}9`FB8vP$Y!V2jj)&gQo4w8NnH>FI!~=Uk>T>NP1T3cB{G8F1;0J9 zbsQ8>k4D=Kh=rNXa-6rjvC6qOU+NfhzxG9ioe?pi>uKKAm6z)sRX*EN?CCE$i7GAybrEq}ByHC_q6 z_}c}a7JgeHRmFEQufeD^UDiOk-R2U}34)F=*lM(8Qax|zRtL}5Z-0|9nzII41Yy?d zpK+!xg?9w?5Bokl@iTy9J3w$aaL;2LqZs#;@*}21?!)sah*_GFqUxjb28b9*WLMTt z>v#`Vk?(SlmlNcW23F%wvg@Y|vA55ck|suxWO_fph%DH3(Z)_u#78bXABj+I|4Qs5 zz$V?XB~Cz}z>Rn+#RRf_>th=Rl8?Hc=tg8OjZsZsJ-K2N?f##-g_)q{Mzf4)@%J+- ziN7s0)+EhEHk9Mpm3EeYYgl3);g*P1ML)~^HM4cwN>g;ktE33pqRk^2`jAo6+KL$+ zfF%<4R{6Od<~t~Wy>NJT-uIfboK!13z0auuFvU&o&%AU3q4uA<=FsV{4vcdA^i%s? zPc5}F24nKTuKZ)Odk%_^)It&X;7VLS$xmcc0@R{fi(o$-W9k__SCk;jRME55n;!ZD z&Mba_&w_uBz0LQcPJVPh*w*|{*a6sb>r{xD{Pt^V#8Z(BksN1{YcT&tCI6G7aT4qc zD?HH}Sq$#CLsbNDX$Y|$frVOqT=D*3Zda#}&}zpht~Olaf*5C{0@g9g%<9oGw_Bii z_KX=Ct*nGNE2J`7CK@VSP>Uxq4odueXuNo$*{oN*%0@$T^?C2N#nI=M#9RsKQ)WDR zF8G_OpCNY&$?}%y%Uf#K<#m~|Do0_t))}Y2j(`j3ScrF(A71H-7$5uZZs1e(!tQc2)zR8f>1cB5I7yno3oHBV3)b65-9{W&QPbZvudn& zeEeqnBV4NK68gKxe2yK;1z?_h&(G&wLf`M@gNe*~&ahP`c7u8~i?J*gWhF8zuFtcwSaGl8xM(J8Ws8*P!Tm-3wcq>i}{x zdrYy$1Rk4Y?KRubK)J~|Y7UQt$Q9c?Cmp+M&W99?ea;3hta6<4P-&_SnZ(65j*LBB5Weh{cbZ!ET!u*;-F6MJEY z5gWO|!}=IRwNq2zn(a1jZKkSQXuzE5yA#yj^i3hlU(8In|C_us*ulrma5S`ZC^d;y>3#n zy#t3$qSuvFF5X<1Q=`dsn>2xg~|I~2PZz;FK2K8(XM`Y#Y3Lm1R~EAkNw|; zGqpRhzix=!b6s8_KfRjuiGk29JY=6jn<(QvZnUG3bV#K75V`H+gYr9J z^UB!u7gI?eH3rs;7L%%QplaI`wI!u1C8L!3?F%4#v6%%25YbPT;^cx->-%zZaxT=8<+3LX*hJ>4g6hO(O-F^rX306bT`7`a)X7*mhju4 zA(+ZR-`81PFt$99UP9E(@(kp%@$~v5J)zlMX85WRb<%smh_E`V3$axYkKy^}ARU3u zE~x~y1voesJNSuNJ-z$a3FzNOCc=*0^ugOaPP`ZP!VLhw(Sc0Ia(&$mNl?&Q>+n}j z-cO6Q+xXAfmTE7-#(iSZQ{$2B0u62V)nBXrwzHBnU1=ec$A)A*tJleKNH34>y%r;$ z{pL)y%`8H;Lx{1DOHa`Mt^Gq3N&c%X6tV!Y%TQr#8mrNno0(5QsjaJ9eO+ph%xR{LrWbv4&z4p@*n95pb8yq%>Z`G z51TzpU@sFsWuuV9HAMAj^;;Lq)gbxPAD0cQ27Km1t2inv>@g!y-&l>1D!VW~+*1)H zq)jH`aW#4={eRY|2mf`S`L`Z44?3XM`nx%!j(!)uufK5sB|14Frd&9H4v}o;a>vuI zq+zT_J#G*wCF6N` zh$8v-gf6yS(swUP{Pf-+|L?B%Zmt}|c8ES$!!{ct^gSOo6ZMVQd`@MpvLI1YlK|7E zx1CRvqu$fo^1!raPVt*+11=OcDvWc^V{JC8ZkUkoJ;-<@i#^BoTIUS|B!ba`kvplW$slr ze0u(~CdW1G`NEugkf*!sxf{&vG;8@QpA&X6MJZKL<~bB!zL_pC_{C{+AUa zO0`dRXgwNeNcAMR-4#&h@g6^^BAp4qhw?p!h83Q0c!LvF#WD_V+id1^fdh63B4I#1 z(WMFFE_6HE@+kMy`C(ItC}0bf*WDS&X2WrwOAP!dCR}d|d%a=|6DcW#litztcZF22 z&>#6zD2E@I56ILXUWNbxond4HB8Kf9bO*xWo>_tP)y6W`=R9}44F?WOQ#cHizxDL{Xg9Rq(Ky`>J40k9AVt8EH5sD-V;hE=K^?VCmm z!X_GQ4@~G&4x|(V;2TDgl(c&FFt~MX0n)y*Hf0$LU79OUsJR)6TYpq38lLbVFt_=~ zhwxfh7cGw>mVLFc^aLdafR+UlXs`Yk4^v)|$zTIcN-1^g{7eSVP){%}H*D1o^itH2tTN|5H8 zCdI;@w#;xlQXp;q*zrZgeedBif-crF<&inCfPmKDA+Wya%+w;2*!Z&!SB7$INR(Ag zN^iJ;oX?6FI7&wt;$Ya}$wc31cdz23g$$Jt2ooTZHn_9s#0kzhw%U{-O+AR>;`l5Z z!0?)+sx>M8^iLWkV8I~C;5L$NHMzamK`7TL*^0FXm=c9Tg?WdHo2F=n4jWv!PY$7NDkY&xfiYf(5yAP@hUa?n0!%7UV*A8Z2&n$dGI@r2@rPxgb#kz8nYH#Z``Efo0|tV zJ)t~QhCG&v|LTCR$uK8#{?G4r;9tKR8gPIdi8A}JEA`G^#eg4ZHuH14={5L^e>R|) z6iE%@^_E><|FE{{g*U$eUA247Gm=gmq)1!E!9YVYN>Qi-(2*}T8gXe!y#Hj6;xpvK$YN4ya0*I3lyBp>{ z%mcDRWuoEe>i<+1fkVME;BH7ZZX&mScq~4T0YhjomeFw^WBZZ#+TzUXwh@9-W?D!d<(oN~T7r5}KeCER+f>FTa5v ze+J44aKC8hsJ8FyyIilQN11k6QnE5{J*l{uB;F6(6eGW*oS7yPs3Gy}8cja$e1qRq zdDCI4b)N2qzCb^AG=KYDjMK)~!=QQ$0)7k!If_nb0tlmUi(e+?X625*$IW$oBs)6O zwYM7gavxY=%!2}#fdq5!JbFuQgxAk|qb9Czq)VRL{?t|_G%|Kb8L15pFv<*$eF-Mf zW%``1{{74B*?Hg=$Mg|nxy*|w&JFXE`dYarAL>k?z$zMFF;74{THGz4O=1#Ro5w*B zZ%p^o4ewgKE=f=rl<!trRl3PXm4)a|i!aD* zV6-_wt7ue6^mV^`Ny2@}O`Oa;4q`x{A2588)r{xj2rGE_dg$EOHA7a6u?T3 zijW0}n!*ow@DKA|v_IN?(^r$d|6M+NG7lcC-f z0@aS}|Lu>ou^lGtctR(@dl*BoANiaoo;laHsV3zP&~XdgTwnB2&K;co6Wx^sJY^9b z6puP|c$NolVB}~lVzCSQlrS$qUwyB1P+;qxp0zoAd$|f}Up`N4eu(gI%WN>TKR&)U z@dLSq`1S4t5FxHYXXmnTg|Hgqxb#u*{*cQJ&& zK3da3X1!5EswnU+!J~I=iZ;`}KI?Re{B9%o%_Hqj=Sp$#qfNR)WLs$HF|nePc|b_g z;~$(%4D4E}ZCXaKNz5mK2v{*`={GhA5nXT4$izZCuJf;a4EgTCoD-0Ny<1YsIR))v zpIQaB!J)>e)Ef6j!1A5b(0+1JC?0tRL|L@?`ZQP#Np6qE0X)TdznGR*nMO&7cM2SC#I*w4@fJ(~CF;x%`fO>+gS=5ixam7Pg0T6yVQ?vQYtk2# z`P4hD6dCL(;`LR0)#3TyoeclJjv2*t7#>hBkL>dVv8jHDuj3K-xeZs3e|!SomewDu zz5m^0@i$md`q8jl3e+XloHoch3S!vq)`?a38N9t7$BH@V&L9qttVchJtm~jBDttBl z)NZ2Chx*}8!d_#XWvnu@;EMvPU;T|}^B;9JL8*{*9zc-kVjMr3w_^DZr5IVs9;`bI zed1)3&xZC$n>2zL_ljQ**Nbwtz$`1P4TJFtfk)RnsF|s*pq-21^6qA5zZW@NldlRM zi-s4A|9TzjrMgXVd(KIh?my+bS*zRz2xuiXSDB>2@AV8KX>5eo23?s_4%u`gv8DQrvN1 zeHLNhtB|}hyMs}a)Kxi{00KlDCdV3|{runN-jBY`Cg2^%65XfmS;NCl5t3`jq;5HV zq5O_qqOpU>pp8b_KoR#{(z@h0o>c%@33KxKQe=#C(+5 zW6uQh30xUa3Ay@$L1fE%;Ns}dIF0Xt`^*09SgG}Ys@mZc(e@7EyuM%YqiC&zES9C6 z`;!ZirAZ631ez$M(#M6}<;))|1TE)8D8Dip_ZShf5WiuahJtQYmlYMVKnY)nWr$fs zBnpkEj87tObZ9XZ9w%_bO%(5G2?`y2K3VEFO|V~#J9#|J7L)9r<{|aZ$muT-z<$pA zOI^Z;uN7`~zAAw)bV0Uq%Zu!vicO5X$kWc}7i74|M+TR;Z?2u#9DK*RR+%!Cbxpvp zv|g*=ui;;9e=X|y?Qcs4{uouR^fGBdX$T}5_4XDBNO;D6uQ7zT32qmkT$ENSZLW_D@f!k~=dT$G56CRQY=2&~PL>nXRv^%i;KRJ_;c6ZqU~b{G9Z~uNvf9W_nc8zg28Jp}j*5 z^EL@IrR$;U0{MNkkvrsH1q#)<&)rNd&R+uwUsa?Y_lonIIo%m8L} z5cL}QEDN)95C$2nufCS@qJgMBC}Id25dOita~)!Gpx|55NjWifbkG;83hG*{7Z3)0 zas#!zQQ8oRfxG(745>d?RT+B6*>f<2y-MOs>Ss0<_;vz7SSmrq^nIy>RX?L*C=jDn zCvWI=7O~<6u4mGM2pu*!K}wlcjYeKNdqj~vJzYbnedgit{T+8t_b8s%9ny+Q@q1hB zPdDE-adNrsH*yoh7SqXF+Jex5cWGsp9NC=z8I=Yx2BbA{#@35}oYp&*vn{9BqF%vC zgIQ8U@yyGCnKxe~9=D|cdY(SL?qHO@sXFp)Z$4lzaB8F8^hZorqvCG9`0yI6bIT^U z<32y;@O$>~QOavM-3kU86}Rb;-Y=7TkZ=i~E$=z>Xzj&AftOB|de&~Gy-S50j zvZjAd&jfPznEK^IXR4)F<0R6jd27E>Ve`|1C}Bhl7Vwn_y11Yyc)s#cVJmuz@$x8) zyB_i-^yd~372QB1NOwewHN4y>)I7(h^8*>d$=)q-tkQdzrClbqF6-f1JIJ=wRQ60H zczEjI6AEW@BL;;VSnORxxdEr)k38emoqdh8s%Qjd; zXzn_a#6}#d_^BQ;8W23Sj8;FY4_H!V&ctg)c}}hYZG6b)912i0ad?+G588mLpC_ng z^k67Ebk=F`>@da`zk2*z-BfDRkMsIiKae5Dx7!wD)l!edNAdlYq=}O4 zPDDCofLrw*eh(1eHX~2c+S38EPL(>Tc<*tFjQ|xglK>Sw@^J%^iN7;l{~s+twSQem z0t$X7lEYqH&DtiKX^q=sxI#e*^+i7!YWy-T(;2 zs6y*q)SJDCYhpYXkz~eo07MepwdPd+k?em&MLuZ|rqs9?YePCbbb%d^r#oo&p7tP1 zx&V*{vE@U3mWE&0o!*&w2J-X7O9cTfOaTS~vcdCo*+K3!#&bwmpvR!cCQTOywYlo- z@q*ptJ!kJ{)DnG&X0(G(fEOCi6{7?_S3SOpt`QgB(XFrxyw9fpV{(QqZUMDL@QO~KQ?-K;PmvfD?gk>%6hMuxqHVGFeS0T7WowK{ir=%H z+jWO%q>kCYAFp0s2D&bXQK z`~p$DrwDTAylJd@2J}Z=gQ0fPH~?l|nOCnQ5~lX3t5z{(Ibrdp-8|pS7H&y0GN#KJ z8x}2I`VnG^9q64BWf91;r+objq7Y6Y0iH0((YjdA`u91PqhanvxZ6Sj~(kRlWW_-+|}gNqs}Yt z@X)9dS4jITQxJZ z1WD5kN^A3LMOa$e$NjWFZ_eGrwz{l{rOPbqT+m4b`#b`wg}2uj)nJ66E3b74qMySW zlzfp6Qy3@%)8<;{x1aZy>(rlY< zCTNj((TF*^7)uT-eW-v)QEh3j`ih3G3(BsKP{9YIU;IBdqsrUamg-FxY0 zTK{>$6Bvqup3cF-hoUrZPh9CqG^s;76(b%q+yQu;T6br&P~ukp6yqGP{+*o#1&IN$ zK5t1)CQ)IijCWCdVWja&(W0DcEJ~(*?p!AZ6}wO;QKd`xENVNX!aG`)Vvy7~c;2r? zrX#Tmi0utXN8vnGoIO?PPAv04OzY4*GEcOK1OM6x7hmDx@6KDhoqaYy^mMO$&->ys zxnRiek691Bf-$HNPv;7uLc1jDzGHX&^=%+;#sYIre=g_L_P0S#fi?RS4Z*A$C%t3t zj%#bh`LOfXTwCSkceA_R#Nady!Zy*6Hwu zUUA(C{l1v3h^0ed6T{j5``hU%tGE>gb;>ss6so|vn@qSp>~$S4Upp<7GG`1->aZ>h z+Mg~9>g#B|X~w8Qv=upnoP?1=GnPOOV8fOO7||y49_eym##Jk@^?*X`5V71m1!9=6 zY+V4cF80hRRwI6BHTk}jqc;mr1t7n<8fGi*u$veFF;`ow!i=t@-?SD_*=7XcERq$9 zRP!=h*>b1n21(?x?F~xeb|Vyxb4fj%J7VgA39xQ20+f14uvouMA$tbHkLKTF&a_HB5ojYDqCN4nRMjfYD_yovDQG-nUrLcP)hl0dG zBfBB4tb)GYq~y`zU~9){(>;(5!O)W?cf6K$|v@p{xKuMZ;#42riF%E8}9GVfp1%NCw# z4ye<+d{NphfMdF+I2StTR0dm{3SNg*GMrohfT=yoBL>kXFaP6N7F1^Hg13UwD7O|h zMD>sp@NLd(zzdd_!($Yey!Tqf4HUtcw}I|NE40wE;&|@BMI1r5{)ke-*z?pCh>_Cp z&Iz|Jagk?F*X#L4+FncXXEatDW-R9T0&d{6vfGJks)6X4ZOqkvwVcJA8t$n*>j|zV zfi0=s2kr7Gcotcq@}G@8{+{w7x{^WCRU5S{_R*8!Zyoj&hFRb`%7K^#(aFEr)+JWZk-zpXX5;vvf9WG4HN6UwV$hK)T|H2l_04_r(RH zyj_bE6jdYJdzz&HcaQH>S}s4*_<`W1qI{emGXTQ9;lFpFc5U?`gLqmj1akZF0gUko z_#PyB{G!jK)v$=Wm}B3~gQJ7;L(ToZSx%H9BK0C z4Qj?EM_#_i{Y6xn+tX|6qZ@AFw3vy}dh+)@VT)u($hXkaIDeEpG;|leP;CRg#I8nc z>)n~F|Jb`(|G-!z?JI!z*~@$a-@+m6U%cpl&3?O=a}*CN!7XofSZ7r&ou>rF<&R*6 zr?19$JWneujk9o$y^z9(+zh;_f}N??wFA8ME87%`sI|ZmnPuXeJ@5li_JzHr{(Jmh za$Z5Aq)s#%y>)*0J#9^QEMB<0fHrn z&KO&+@_@zf&j3A-_G$qN(d2*qTh%QxSA+g>1T7z$19Ta#)LW|$dMLXnr{Z1jUIvM` zw)&ulW2T}8w!3?!np&z}E8r@iMnHs$C}gy|Cy++2=(1;j4zba?#Q9NS8Wc2Iwj1Vo zZu5Lt+T`N*R@SP?t2Y8C#L3orqiTz$pe=;&Mi>^E#=bB*BICj)v=2nM6XT~nnV~ak zX{v={K`MvKmwrE>0Wi`tf3&#k?x9n9A#E}oF;~Ms?6xEC_Rq_6$MOE69qz~RH|5HT z(wg&9#xhc@__9~Pk)DQquV7C55Fj8;!!FGnEM6fbnotrhs=otCr@pIsBK-Sr!OVyKVhzK92!>tIrQo*+NXlwwkexve&aQO^3+uaLAJ z^FCNTLv+dx97nB0DW87q$3CW8>$Wo2q^&*n!oB5dYb+|atBj`}D8{{TJ-=+r06TSr zL^CEsvKIm$9lS!-!i>`Pk}n?w zVo9KaRWC59liF#l2z2Rj>izNW*G_u3qSD;>$Sd6MaHto&{f>?zCWU)6O{5cUs zvUlW>_F>R9T_h>fhmz5dUXr}{@a{2?=?T83pfE~}VewrRv;J_0@FihoOQ*eEc*D&4 zzHR$-6GL%Z9E^X;wf%^7eUhWU(;=LdJ~y-(kh|k*M^jY!NNVhUW)uf)@^6Yj$xLDs zHo!Q%Duh!md#^CNxRNxiw#5i*1W&*cv1N{_Rh#q}f)ekN+V$hNxu49rF9@4kw_iGG zGI92@pWSJ4QZ?HB+txJMRal$Sd>d2(P(6$D)TablQ2w2#1oi)niE4i<;trTh_?rXk zy_-^)a~_0z%n*>>?MdD-y)pVy>Ik0i!hch$sz$fP9}%OTHO{%hFX3#dUH(L4d99jr zV5hG_#q`JKbXG$dDlub>P}~PNN;ch;PEwA6z)sZ$=GfZFox^mC8}w5kX&Eit?{~hL zNP8HPOPcyfIxdo2KsK{%k6-d}+czm4`PKM^6k9~pg{U=;HhBa%aI#i#HUfEUbQ@sf zIX%>wd7a37iyZmXF75%9W7;u_4p^M;i)#GnB&L3Aft}F9*C+=~YW6w`j&m3(vq=`) zO)M0RusWIQYMx8L-tdn3M5?u~a_?~0a`3w|c>#A_@-(;%`(#nv1apQHU^rMTaSdoP4F*kfjLqi4eLWg$KdO(w+*7ll7L>oM- zzq`{Y6J0k~bXaV>8D^+g$(`xqFj?9(IiKN39?VDa1l>r}`Aj*ox;@m{ZA>o>dW?-= zRU=Oi$r%0VmI{1L4R{_dZ%b_dsO>D@V+Njb^Oc{ZV6~#o;5*mQGd#HA2wR^lV!)4* zZJV(Eol_vL82pjC6y9b>9OOdYei-za7}&Wu8PFCizXKck`pyP)W2lr-I2`!4wMx+y zSqNQC%~|ZIom2+wY^}ZkA1*E13>lk$h|b+8e+U0TIiDYJq{}s??TgA=_#}qTzizna z>}+KVIJ=m<9ugvqQ(eVc&`$ zQ-6K!gi{nwVT*A0}}4f=WKGC#G)Z4--Dtwmj(`YO>3%5 z7m)#eQq0wlT#dg%KGqjOH~HmEYlyLx0?en`B!H^K?WmJjxjT>6Jn}?A+7Nez(@${4 z$B08R(WR&tfEJ8*p{26=B zG_P71FSa?g;SJjaO%!rA3rb_PX{hnkjTUw51u8BYMMH8kxlP=}AE#{?xErS9(Ow9AJ8C<$m+&IZ!Lr z_NT3T%~pUkfXKNf&k!A%K?xjv@E;Sy_|)B=>V+I1H5f7vI?A#T;9LG06}J_QDC}cE z-4w*v4l!T)fd(5Sh3WC`hMBfxQSHVI(XV=xn;5#oSDLrDw7n~{7qU3*oQCAF5CHB? z)DD_w*6;j(BuxiQzdk@CCzjaahKCh-rnxV_zK|{wL%qu%60B`7ONAK3ztU9#!_ev7 zpbrb0PJNSgcil>*o$h9LupsipBxWK}vGv;7yI$3tDkvB1%Xr<~Tg!(_@}aov*{soU z*PK^e?_Wvu+{g|CBjz@vgM)jH>z{}h_HuEaF6Mr~ArNoq;*|cFG99A|+PYs5Ba?j| z`a9spdE&|BW+J<6!4>ndaqv#PA9pCCXe?`sDssQJb25gBsl}Z4fzQoA7s+z%RA#|8?F@*9{YPhBEG)I1EJh ze(P+@K#n`lq)s>TWGqJtr4aU~fmEbM!L^UHP1o%_=zFBtr_D~%NtV>s+xJ$Ci;nI~ z80`Uq=_P58B*;P_rT-oKZDpPnKLnvs82DL?IG7H;3;45Yk?!^5>G3O~pxNkC^|t37 zpXFe7{q?Xfx6fow!3KG&A`}>22V*^i3CJiuT8|nHUy-TH1nPlW$`P5O+b2n*V~yF9 zND@0=k~4YRrj>k=7b_xt)!YVKR|V`h7xNmIdGjxYe0`cN^!XD5(y;u&nN5OoG$CSs>GW}dU*LW zlxD0gUw~9Xkb(bE-59dsx-af!@M1UNxl}GiWXz|o#H|YX>7&xnJAbLUf*8>Z`oRfB z(UD6KM=NiRaeBOJjH`Vtuldu&($I$~Y;?*nz|DfIJMN@qY%v-F-sv z3{Sv|HStVIX`wdK5X9KD-`*;z_web^?GxrQWIFUhqyWGHc^WZiO=vj5$K)UXq9dFDWH7Q zKT4m7lNbYsSUnAu$-C2eGeNP2>?nf}HOxr4n9~g2GV+q>n0)V+Ma&Ov@(}LlM#;pd z`kVwpe1qo+^%tkw4*<%n@}=Y_pFn_q8VT!pVJwvvoOl#gL_067r|RlM~G%a=>qn;=;{d$NGpIipxrj4I8VLOqi2*g&scBfxNV z%X_nOH~@DvA1yPoW=PU8$rm9`8F%=s!7k9$G^+1kao_LsQ+JQfE<$WZgZN@h6L5-F zETu-57k>oU43#*HtqX?moY$winap^Uk(PD9C~LPqAVxO}(Ff0RX@IqE42mF<0)P^i zjod%qtOWD1rg4}YENg;*V{h3wPO*D0roVidjausidrVDRX2ZGh{VfUlC7$fRt}jg8 zu-599o|@^Vkz4d0PR94LK=pjvXkNnVVaLtQ4D3cwk`T?BKP7so0u?!Rl%CwQMlDZR zpipbC4~$)FOhh3o*jW-T0Ipt%^oU*?@4h>`J|pR)XYcQL9bMgk@w%id9i&_#8E^W0 z6jp%5TgsHiWM-bEh+A}vyyV;cH29<5CeS9?xclBwe|Z&qxG)$pd-}L9bj^s9FWt5H zLDS^=lVkJQ$B%;&cKwcSY1e{@E{0Q|p^r`NYTu#Y?kh!*TEd%KtRr`DTf1D!T@WGP zW;>P2auocJ>798>&lc-JFRpG|9Q!eVtO&#eseK9c2wWP^18dm~kq%_NRu2{{RB1N@ zx2*P4xt4VL6wk1hEKP1uRz=A=6pe6IR)`I?U2&bJNlg9gH#!^rj=c89$a^{$i>I&y zjT`r{0Gs@a%;Oh(2kUx|ZgK2)4T;X!he;F9w}TO{2Cvy9Lhj^Od?=Oca#^X~`80kF z1EU`zQ_2^`PVytNwsO)eX>TB*7YrtID`#6@1}1i=u;%9~^p~lbqzFYwbcW$XmpYvS zDtY~d%1{om$@iJm9_iQ5%OYigL}-{Lm17&_>9QOi#&J`sCYW<*2na>Bd(L(dwRUk4 z@-oGl7ID(yOV8uq_s$FWxj8i$V!UO*#qjg$BQg~zgzw6M)UN3xiJpq(gr_jEJueXB zUZ^yjJv|8m>i}{{@AKD2pe!;s51%zKP4Kd=&6%5HQ+s$0pDw9;Gm##fBPC|?h$D_3 zdBoAz$DF1LMJumQin#zyp&S6K|JcBFq!Sc39!Ub>ict?yb-b(h(D>i?6Qv`vnLrHy}USe_pvy z>A)YyF_eMJaNtq47aruEo;;(f6A+~6yyZDfsdleeHPiM-wvWD{BLURHGN#W&wS-t* zIiHX6KC*?jDGZje*U5ZNFV1(Ffr6ae#!_DyHmNPMDYQ;L8r<3Cif_iL>~tqNej=cCpGnFv^Ge!an3 z>n~?>SX`V}{Jx6DUm!GW+3%r3^|9v%LjimnMRO(4rc`Q`7Odawv0pp7E!f}jAEM~L zA0n;9QPN{#rC+~v1$US`IgfqGMigiO>43AhrkZM9tXvn0ybO9FY@xruyr88K4W)XvrE0l;m3Tf@O zZBSU=CJp%!l|p!!Qkgew2DUVQ?3STl(C%tabdgV5X<2jh8Ga#AS6>cD+!Y@OWN$3a&=&SE=k>K$lAVz_F@Uh_!pm4-yZEYD{pxbF zH#9#;hYtK$VLHS8 ze}DbgG+!&h?44~CEW7Q+`#)NM^bs$M&8^!8-?#YAcPTD+NnCO@&#Q@q-eYI~&CMgW zo}4s#vs9zsDh_pnZi2bo>-N6XLNl9__bzy8CJ)NJ1^W?bDR|=WJxbsA%KRr!&J`+R zF3?^!!&qP6v=x7ar^pC$+ZR3oU*x@V9AsYdmM3XW2@J*qjqQ&^$AkM7l*}qGO`6r^pyw-<2jKpbBK?oQ;Ky2Y;eNWH!GiM#)mhNYS{-2xPltT7W*f=)U%kN7K&Y? z!#~ZRhj7QCR#VwStSHehCZlFM7N?6*AJTxTUqM*!}%SL*sy^=Bf%`+Yd zJ$HVXQ$HZ5h-H4R9+E?mdrlSsap`tn2srloV4b(7lz)=R?~-^d%04ymk&QUycFLLg zxBm{0h^OBl>i$q9JCk~==|`LNz}DhDr%!T+dG?k=!Y82X%3NN=A#dBeO^O}O%pd(H zReAo1XA|Iy6q_fk^MUd7$)6JzUh^``m%JSM?`eA{unelWZ#r@NMcC#2i zg)71d!wZ$H6kx~YsVx$zp~7Q7?7|nmr}!9QeUJAn8(Int0A+X2fRy}C6Hv%)fs^f9 z+{GiNAVAqyf@|)c6p#)b=bR1%3YYCEq->5Fg17$9KUz&}UrY;rtZ$=IO>8sxs@jQTIuCZ~7UMw1K48)9U1CqMl zbrt`wMCH+8m5wKqDkP*b%Mx4Pm>Fi^9}m7?kvhzHvB$D(dZi%~*QkTGLN?Gf!px(M zZQd#SGAZ*{{iU(BrSK3p@~mSRgp<~_{W{hZRHo(K*lN4MM|8`i$UXxl zD=TfhB2HLQpcBqB#`N1D##&3S-*y8k4l=h0**)sY-5ayIiOGff!mOrT9vELXUX=iq zv~Hb9>)+U>c93_XPzRp^`I)dm!EFJcrBA+l=NJzZ0?wG6&D|@^4j)eVNaSL(k7m_p_G8M~$>+`# z9%|-a`%tg0V+@$9AAmb@9B6Wx>-h!H=g#Q@iZnceb{MfJyu>CGr+`Qr8g%Dbw8H8O zaGo6%=w&Nfj4!qvL-8$nk6%j#BYZ`c`Er@jIx^_)(T5Bd{LEOTzTDbVA)p9C))*^L z%usxw*H?VFO1-TY__A(T_6dkpqSpG7xU$lBs_IBtLcNlNa65X;c+%EgfM%fWP&NTE zy6}L|g@F}#zFMn+pGzO~$msd3ej>e$)R28rJX#xKB-ATXq!Joz{J{|e*Ng`DrI*II zNbbpkQ8gq!{0l?n5$S1GFImuJsuK3a1+1llMlm_(cxji+Fwe|> zKMtJ29N2f4?YU-oAYb~V4xnO?shB;q9f-&FDidzHEyUR2g%)J0cMjGX$m1kiFs2C^ z-MR!-CbP+qKh6JiLRbF$ln`X%oYS3;%9MOA+v+>cHGNB?!wY_4v{icyITp!{*VUei z^q#V!s8>!JVRI4$3`xnS?(s_wZWK&uk4btI6A_a_-mwF5zB!`teT0wYg?Vi32IuN^v~7vn2inNVzOOldIib3-@Y68KLg`#d@3X#Ao z{jDFlLZ0Az`ZtO6>jpE!^*^yQ!p%q;tIre6*T9mQ>#qi%jx(2+PZ)GQ(xtO)ZfFPf zwlzMYh$f4>hzY&e4m)>5pR7yaC-WT^t9DoWKWE`w5{KW(RBmGaTm&s=+S&Cm+1)hL zj;c$ZK6=4`g>2xuKH%q%0l}Vu-3@#BkW>uOkZUVcT`p09fdjJ({@ukQHh?-mRtHA^2CUMZ`>&608 zASUo9Qy}MT3gxlSq=92Nb+!33N)T4{bUVZOAs`n3l8we3MxaW86iVDx^&lx_g^kS+ zR$<{elH~(cmetuif7eR z2MyggykXt27FLY{lXS8bUgoF>$CQ&b1XRE?G=U|ZrHu^3w|>!zl2v<%Y07!dkqq`l z1FUm1Q&w)a*AIsh;@TiBzDFzH3}HD!*_mZGP)(Dsf3v}4%Z<+zJFxMUGF zZpCyXu!xxDFA}u94WTHWAmyXQ( zRZZK?W-GjxP%NSq!wNJpRF|7rVr`1hHZc)OGK90#U{P6UdF6H%T4{znW%YulNnh|DKz7#0=*ek_MmooJe<20|Lc|Kii zdj0Am##S&8N!0}Ec=*}wh@X!E{CB$=vjKjlyCf@Ydbz{oTS_wSAp50B_k_X4)?;H* ziu+$8#}3N*Q|#xg?}A$Njf5<=57s!Dmd5-#zEco+eM^PVt$<^-v0N9Ly9_b;&`p>o zz78cHB!TX<**xScaoB$%JoLJv?h;bTpQ&>?3=jyrX70pvs@l;URD4S`=ghGCjUG#h zT1$i1b9<(viNnh-hcY01O?1^i&rYw*SYo$0U2Y&^HXlozl#!!H4yMGP8g{yDHZhCb zxA~1tSYB_E3xEH&E33q|w6b0Hbcr7O3Mao-{UNcFp|X$sAgJ%+p?#AT=~o*yh7CC( zOME=DUo{f#>$*|Cx3v?S=e&VM=~0W;dA}UCKb-S7($?z}BiVpD+{vBP+RAphpf`gR>Emlw z+B&yD*==-d?FpD=C>KI7Ycs*s1he5!TIy8bt=3S^|9t6=! zU##K+?gjL?UO0o`(7m`>Z95+}bCWN7vsL!;G9Pifx|PD=?#D!W#JU?}TSa$ivWXfy z;95H|x?#IBQCpnn^0!m*zp(bd6*tHHVmbkW_OKlHm) z_}k82q6CaMj~OhJ<(1GhPwG_|koC@3;K^Gg=~yvt>T_gtnx7Gh_vVinh2g@l`I zcGO0VMN4W(iAO(gctD8SkZ)U^J1J95Zwk^LnPXe1@9tqIspa3|Yh=E8neE=Z>mP|) zI;|a~hJ%G9fCo07fm+WPf`(+${23B-6dnbCgJk{NRQ12!RlD}DSkvChnH+Nq?<$VR zBxGCisvR)5EGEz%MY3LT9j$Ec_x3RODjqX&BE%KxomH+0Ra?mD>Nwtj^l7;rW z?j9MF!$+6wZ;Nxi2olFbU`EaK9Yw{wnbb74@gjW{G}a_#%6miI2mNf9J6$FoKWfU$ zih+yJGnEAQh|f}d{p(?mu*FC@l*!QOdW~nwnG>Obe~>J2{TAkJl4mA4@T|Z(70LH*J5`dCYr08W&M^Kt#NK$C@#|rv$Q-%EvI9 ze^^Er`{m!v(GM27?!nV!0VreCj8={nppIll2frVk+h+KH`gT2D68VY@ zxk$Cr!d}m_*+iwdHzr>qxn74%3gJVzjZ+-%3tqJyhOlJ|qq2NM z8&fCPXBWI9GHIa+JvG6l)EMYd`AhQsf05|FQa!13W-Vi>#fR=;BY!k6zAO5GhzPIx zO^b2FWVRflqBD1_j(-R8^!!VF4K?kgltYWdjkJF5X_r!Ex(ifEtx^>XFi;X1Fi*}|JUE)XFrhHD z`I08*sA@i#2uq1WzUW66+E{~@CdNLv`_-U)rc}~@+w@u7V!?n7;jZ!RJ(rdUq`lR^ zl5g?|b4-bkvXHfa!v{2mi{$zR-F`%bDMPhkL2rDhEk)N>6(*5S$3~2Dc(2p zL!_@5^yIWl!!c3%arL9A4aKpV`K4I6`j! zCiVy%53@UR%aMmM^LqL;PGu2APSQ@75Gvr-5R{VYLHT5HrBK#PNw@HlV!hJnozr|- zCSIlq$b9^V;)W#%vSK|a5rXrPHMcjD zF5K=g{9G2~9)%xZ)=4xr)vlJOR9_EUOtf&Ob3kTgwb)LLp8RKJ(y#2gSQF<&O5A*g zC5s&~IP=zo!xJ&j)7AsszB|nWKl%c$7qI4YYI=MrVMiD+fQE7SSSOmlRfrr8ZDU4~ za4~kvKf&__->?8cV~G>Xb*A!BBm)NaCuLAb57|0XP*?iy16lxf_PR1bce~kb`x$6} zFzuW<2$KO)`GORWga_W~Z{MNx&5o1_WY=PF;2Ti zw*i&FOoi~rpMok3v!hKbm%f0M-ZE62Ji?^>MT90~Q!SK#SlAdLr~;0j?Wghs{_&z{ zCxhWKwGOP zl8q1g=^|hYFZ{ba@4r5Ef75R)*%|Zft~$paeb;W6c{&X=KLtnR3$%%x5;Fb9g}>oh zJq3$RK`lwB$JT!^G3h)$IKnN4(GLdr7y)~@8Q#OVFNyF8UKk>UW2wyk(bB?q#xY`R z?@nWYh{}{=T^E0~J}-t6aVj@i@CRTP{c!Qiht5jj+PMCGE^;E&23Lup*NJC|o3e;G zyt@6{Y(5G|ocuE@Hv|mxnTsu6@NT$?i z2JWc4-k84%YX&TvX-w6ZH-!MPJOtseM2BOYPF zgl;dle@2h~t`b#y<-Ym;DL>nl)(%YlOiZ|4^P4ET{bt>}GM5?MPaizsDxk&oGz_nVW7j&h^fKhagyaLfFE%Eud`&jy+CjE&& zecU?cBVm>jM6Sa@Z=~gLkyWV26YE#!65aFymB1Iv`2Xl#ZO1kx zFQl24K9+TSZU%@3X}Htm{K1I7;6V$_^Jbvxd>>6-W#yWy%1>YT zvl(DaP=k*>ocqYNSBtdC%f_bI52HGer}a};Y)iwr9q`u_)pyj&Q6K8{owAPttY+`= zYYpG<&p9_k6EW5PQVk{nHP(Qx3doeyP82AUN=`#X~+ybUsJ%Plipd-xLdyK zOP*E`1q)0`%40QpX}8&O@|xu$#AxtGzS9>XZZ*Bhv>?XAykm7sD(mHtQ$t(oH89ZD zKr3dukTR0yzyBvux<9F2B612^8hCS1cUk&VakWA&>t1qFBMYc=&l&d+wzc zV14f!^nt#9{ZYvP3mpGzEn-N7c4Q>PLfawK*x3$D#`_bl_{Mm8;bHjQsxl@BQqYyS#~S05KUMUzMH>C z20@Q~n-tHS{)|kf-Ik;Cf|$y8R_Fs28ht2%M|=0M{WbYeHEI&Q0T7#wT}w7>=w?2> zTW)>GdJsqTc+s7Mf}^sx7+2F6^CTb@$VJkp`97A!#Y~YLen|h_c7%nS4wQ?CLRMV4cwrMlgFq+k!WGDC;vD+H6ss=l@p%CeYbV3(O1ef!@wj@ zVhd~h8lOsfq<$B6GKUZxP%7_q75Eq+hkdOfqpe^}Pc8P5bx9bUkX08i1I>7cDg{-l z<^qb9(das|zEekcollA|ppIFcn>IB!wHSUkNV9PeK8bRT$UQfH@J zt5|x6K&~3t0ALSN^26aE3vEg6ni>r`(^y^X6@ib{f>}?hfi)cHfPJ(5+?hNfX=A)R zCaA8l3a2AhWy~hXHI3muU`J2?Ytt86<xxUqEr4_ZPV}u*qHnBav~>w?lPNxN(Ijo&xk63UTyHr zs26u0TSG=w1kip@#~GJQlXn2)*0hw%5FR^5DOlzeuw8^y^TIZ(F!T&j_NL>xiR7+`I6)LNgW0p9umu9rw*0Giy*HZj$&i9j)PZ8AeP{iGDOY(}SnmKDA*F3yq& zRF%S`_A#$hrcKIE zYGUkIE*Y6?bDAow3H2tEr{^vb6Z^=W7h#o7KqE_D;}19VO|{R&nfkv=Zhqy8L>@7v zU8w>~wsMOz`CvW>y*H_Q8;kys?f~!X?c(2ma%;ctXiMnFh5Cg@JN1n=GDT9`fBrN* zUpyr>8=)DtDh2cN?+?BC%rw8up;a*$uPz(n`4)I|t{JZGwGi7kzJ zgoS)8w04ftGt2H86&BCWl%o_vQ;+vSZZE4`V=9COl+W(#CPTz_R7Yge1J%JnlYNU8 z+JHciu!~OR`nYw-yJV5h;IX{BcQM(jW;J=)B~z3@-=|L-w=kS{=YRVc3xRCB{ft69 zBVeDCy+csjgv6U^&}mk9)C9Z)uP6-IV;97J`fbthqcUynLS_-MeNS*B9eqj8JI=(|bz_ph@>s&AlOkM%WT+Q!63R zi#l!1cnYNwEdKfF{yIx-bH2LDjK1j?+l3Cc5laI7;ONk~B(6rOR^Nez8a`()SK>YL zx+LCOqyGoYKXCq486_WOzcrCM92fF{yKl)QrHFNZ!h+h4#ywp@SE3XwN^+~gmI z=Fq$9x7$;J$jC|-R`N1e@6Da2V8<8t}Lq}V#Gc>22#4B!&{iBEl^70^~ zq}$dbT?hEjim6dbzD|>kpcC4go3_$~T4Olz|1|dAK}~Mm`?rV!DuRki4X7MN6h%~u zp+pn`sY+1kpb-%1C4?Rk6;TKvy`xg4NiU%a5{eWl2`#kH1BBkv-hJjfzxO%M%sF$O z`~fq-FyZFD_g;Ig>-t=;=zQ}WvVqFG(wV{W|4$2`aTVz?&&%`&zkEhZZ6&h@D_BLE z?z~n$zzej6p6nWMT&Bh!RuFP!9<*7`iH2ULE;Xmx2Im_am9N(v$2c#3gr2598}nz6 z16Jcwm+QbAD$IrT^X&=Oln?aYgZ{Vy?eXrsU@0~MQ2+qxospuES2AQt6ND+`_bfNT zK53Lo|=*gOX!d^yUA$q&6JT!vz80AxQPfg?U*dVkbk>Al6DVVj>!k6eQEd5r$w)YUH z%*PGnV)`W}=1_LdKFYa2=6>@fa8@IkRBA=!T)+fRMZ~7kooM;Y&WU(|JF1ZEzGqTh zJK`xBnc&to3HHbp)!v8CD2do42I=t4{la-weW22aS!8$9Pc#wFNbSF`P$@LvnV!d+AN6BJRp+dsrp;GsgLn zW>78B^Fv3Cuh0lXq_1!{3@aW0_#ZkU)%=D8w(aI8Pt^9leD7cJVlEZvz`i^6`mSFv zXI4E`JTv!xOi*mBt|vqBh`N`a+3EcMrBe^jzPxbsyhcla&S-W@%1}Yr6~59#?20R_ z@NV9nC*2zR8^cjBUH0Zoxp7@1Y9afdxnIPzofqzhLZjJ+Cy5!4Q=VrsS}Gzcetf}9Dd%oW?FAH; z^r)*HJ27hdeJ(b)Jrk$e?J!S#}ucRzx7)AKKGHMfXxS+=ZSr*ARBaD==26E2wYvBXjIY%=55G?5Idx>q~A(4biTq4S(zatJW__)aN3VUGduG# zFgC?GDCpLbVsEV(56A#k_r-Q$S7E#SvwI`QW?gr^$t-oDaaPw?UAWuo6+a_t?R|(_ z-Zh=bUqkh)Y9VCyJ3Y>n={lK-yIdP@C2!ljpKdPXTK!faK6Mn@y!!X8yq#t}NBSj> zSZGZK(aGqZylLWIe_W%ixD&nhx$fKr_cWWkY=_fb;NvDn8KV+pgG>we9B(Z>#@J_3 zqiZsjF)d2_;Elg(+=H5r&6cPfTS91D&dA=tmLau<>Oo$KRK_VDVv#OtUEJ7NoA_(# z3Y6<=iy# z>~djyX<$=;O)sc7EOtMvP{$3KR;j(nPi2n$JP$E!lr!6ENGu z#NdjpbQdq;DqFH`QJPNMKKDEx8|}N0hW%0(Q`CoR?y6n2uPpl?+RHTdp~aLHPu<|s zKwn+@ZlR>7=LIZi1w+fPWKG;K+;&N9Oj=y1xN!oBe6#92WMH(wjUABqEnU3Hjy{Q( zt!5lz#{_SpmNdum*-uovCe%vK4flt;JEQkDz2LiLwD^dR?6%{|&DWhG^gccc#>#aA zN|a}9M8VZ1)g?=^*DfmkY9WOO`U&QPqHz~Uovbl6qHMkg@-1eX_Mj`Ni&jNJ$twvl z%P@gMcJm8-idics1U{^D0cNr!xuR&}4JjqXMhv>2Set-4mgn0Drd6x#HvxH}Zs}%H zGG@xO%l75mN8PS*Zrp4^EoSNvE)F@?)g*c3DP(nz^76)S!5KC{W2vSb8I~FAlB%>5 zb)yk}j}uucMsVaZOhRKHb-+}0a?|l|%hbQRzQ%sHy*kaYrba)BcD$|Iqf3D^v=rofy!#gKzm!W+d)9&lTnmM#^hn5cQdZZi|xy!-Us zzi4k)X)kT~z4AwS+``arpuQX}sB_X50T$<#MnSb$(0JPY$;Mn#lMNi>swoQsqRcn0 zkk$YV#&{AtEr@;J`^rjY9&~H__*m$x(fJ_E2JJq85HKPpB}~Pr4{a5yp8VMDg5pWc z8&G^o6%LR}7*y+6@}8Yu`81s5GHN%<;tyryDr(LFAgALKfdA=sXOeY+=6p;LJcN1K zgE{Ced+DDIZ|Ma~ z58#lA4G4uQHGU&0J>4lgsCOGdEQCXzzIoV2^mco5vO3lUdZMU2CU$@2EhtfcG;u&B z+m-IS7#-gpSb-%vTm_M*pR692yCIwCVGf{vN#4(({^7 z&BIfve#gi_wU^P2cVmX01Df>|4-MS;sVSCM8)qP-)XlIPka_6qSdSJmRg$bO#rndv z@{LfUAP&g9PR$n2cPHse$E=83a=|i0IeUCE7{t?drwJX&JyPtoN$uMD16L2et=!<& zF~(Wf>e(-cNO29AWR*juOYT|2M; za$+`TagP_xnDmb`kgXS%;}0mi9KiW(rW0wrkt%`P;TDcfx9zFmy32!`kkU|O>5-y5 z8;f|NGjod8s;>jk_CUJ<%^?tmS~yg^lXL_&rF_uYZ;p>7 zZHfyjK?+6595#&sw^J!9B|o8s2MQ8ZiHFpouVE)O^nq^LlF!D$f(ZE&bN>h?D*NRM|NK_VcuwRic#2iecikQfLmtkt*Vb8uh^u!?kzUy2o-eF^0 zXl;{YY=gDeSi9eSDDwEN`wbaqsS@ZR5#+5bzT*o%&rnGI)sX>nP!&ZqqF{nrxe-$g4z17&9O4pw@G zIm>p7G?HMSMIofA2CqQOb72wBa_Un&X-x8W0~DX%RSnts<*f3aRUYVemp<@er8<#m zs{!o6w6)Ch-+J6$qUAgffws+wd##V3c%M^)mN^PxkJNhlz6KkJnk6qhc8Hb6YF$5s zH%IFr6Ql4sB&VRPW3wAGa^220@_o(}mUjrBicqkxV$k0ZMzY^k^xv<)!jyn?N>Y9e zBoMD%;dtJu^=oOR139{jwxmV<-M6aSC6^{zf^4_$i9d~#>o3fnSmG-QHHEu!&2`2vji>PGwg*6uoa@AIN2POkh)O0>-1-*!a@ z$M;*+zpFL)wXZDURliDn6t~{s(Y8P0)8gR66FPAB2ctx<{jo{=AFdrk9@h8fMe)~X zkt}HjogBsK*z6ohrB)0wx7P?vsonM8ITJDPRJo<<bu>ETslRK zYrb^}pD@UU(@`?dA+~v0d3h5ZoK?_sfi@x85agov`R2hG^;{&)=w0B=S>?mm$a0_K ztdzv%H+Ugfsc`9;s+-$zik=Z-}FlbS&)dq zaxklSgYT=zO8nV6-DklG<`!)5u-+esob?Q4G^T6I`k*~u8|LHpTTy+fr4SpH24o`?JkoI&@*9EcJe+RoTY1_74ue zy)wWf3Ddf=+Mi$-FI##FJ@$L^`n}o~`MpPe24$MVI__&j_78>tC&rbwSeaekjvZLH zjbL|N^Lo#*V4!MAnJl7WQDPGAXIExJ+}Db9BO>AzUg*DbeDDRB_)<_)lS#uulh;`J zNDpux16d^?Lq@b(BsGUL)BKxoT)_jR9Pp>IyQOVI(;7pecYp@ z{rmbOli%9>WQAb)J+y(wvOxR=ePc@di!Edw0{x+r(I=%b9U>sRecUxuO7VIycrf1w zO%G#`CcB0h*XX-bY(H7NN;AsM`s zv}arQ3&6xyCARrV7Yq|Fr=7^`{Q0Vnq6mUDUJRarOk8hX>#$2YOrXM{Co;EUS!|iydq=)cy_h_3ZDluKr~FN@ZF*mNLP*-L8m?SV`wN141I-R?Y3q^P;|0qp08oM=gq zcW#S#=pW|ZhrQ++G!y*UOOuU+i@b&4<2fiv%;2_Xsbb5N>EcTdnEGIu*EPg=21by3 z?W020W*`0-`cl9K3ZgdJ50p6K_8flG9J`I#eOzP?(!{PB6tC24$}hLE%S$&a2!Wy9 z3ciH`QyCla%b2OTTr9HwT*W(8Ff{LZs{`9*tP7Bazb@9Y-@FK&w}$Hb)F(`$?uj!R);)5gzGRH450?X z6X!<_xOox(gA#O4mvFUb;}U%fvSX59rh3@*MGhTA8}dq6@NhpLlRq4B$p3q?!&ud( zFr-z!iXYwYJjqh$WqrnKXc+?i;-p~K8vq+_ZIJHAhtpc0ZUkXEpyO$xwiT;qQWgeG z+=@o0TtE6(LGg%1g?fTLz&R?(ch5ke%RY>=-Fx93r7?bm$4mUF%~QezUzqBf(jZ^5 zYqfW9tNcgT;b8wzk-(u}ZU8myl-6y+-ONW<7!7U**m7U}6F&$dgT z@vj5=7Kyiss(&)HBV?=zqET7#kwcXZ6kwB1B1t0TiuQ(T8Sb`MrIe6O33R#dZ8a|k{=7P=j+5KW+5BNNTjhqlE{h{M zw&(-d)k|+7FGn7e9;*tAW6v{ z@er|Jh>bR9C6J9N-2yqsHFMwT*C>bz9`1i+NZMx~D zw*yh~jk58>#f1H?w*7k8#AOXd6Tz?M2UNupC{I?mwNu@1T^0!7a*>HH!5IW*g_1g_ zUk9X`Cw_U2I{Xs*9W%w9emmd@JIZBTSrt+syf~l&{bXKV7iv#gu|+W=K)r51sJ0Tw zz^-3U@bc*nA6@^R$9ng|Tn=X3^yu-`*vYG0Km+4AVh-}PDqM{UM59GoS#Nou4x5(G zDPzo)Vt|(f(d$IH4l^%oS)x zBfV?k{dP$RI};G|v#iULALkarIQL8m`QJtghelq8UalQCcQ=Qu1 zEJ|(>TRYsDuk}ZlmGsy~{f3b7gFM)lbW1&o^ws27H6`X6rnRBQH}!&K)Rjj(*bQ*` ziu>W2?i(8-Q5;pB-mcY!i36W3HRdM*jsUI7ntS4F%|K^G**(zelsv4ccK$WM2VB=b zcD-mrvCr9!k+NW5FI_F`Qu}Nmx`#)sjC~-#^D!e(cpn$?%@OM&MjqB+yAyinfeBm( zIg;*TK770HemqLihwr;1M6O@TQI+Q$2pHFk%coug1G`wgOPB``yQUUp(y=;_N1d(TcK{!qx1% z=H<1bJ2U#zR+-jk2zQ2hO)^DhY5ka5YPSGmF*WrlCV z8YEq$lV3$4CrxoZdORuOi=tk~c+mjGM7Yj}6avv!Nv}rho`Uq+p|m*Pe){SAU1Q3x zlu|Na(w_NugfpPv(9KnRm4g8lrrBJIEm-+70b+s1^(F%*xsfzKpy1$Ecf=WkR5?m| z!3q(-IwFfVog#HX&1A{2iVe-@qgq*WnwD8F(sw?eNM98drfjbFARi1}#@R1$IA{4h zF%!H1{lRA$#)rs6tp`;b=iB$9(nvjhV>nA~Vjfzv_cO-n1Kj3k_bD;p{jYtbn1S#m zg6>~Q^G&2yAn@yN?n+{~5vdqU9)}pL43gHk7f8@p7YHT(=R*G%CL}}UbQ`86NHa27 zJ$v}GwInNa8(a4CXu>p4Swz4|4<)1aR~4rq=wJ1@do^-PvSJvTshR|#k$+AZ$I!uO zP{t4VIWVdYu|hA9_oqj}6Z=Z7{nhVEJOmczes^+4N$CBA{(y(ve5AD2&7Q_??&4c4 zAo?zJb$C0z>ap%pIcUAziFaLMIik=!CU>|9LjKN*4H;1RbAjeK+mDqeoRNXiueI9d!jzL+gg4+2RL(kc?DD*J;sS?i z`I6?bPB#fEQ7co3Qo5=sTk{4m&6yP#EXiEk@DP zPmh3!XUgTBT#?_-Zd7ytrqIWrC!Fo`d>FexZ0u{1l{1u4mb+qS3kYT}_btD_5Q86n{zOd+a#$g9Mq4~J_OZ%z8k^<#&~#2&YgJf2^W{RU zj<{U5XxMZ={&-g*ag!U`e3qH&SZ?pa{1f_D(F6_%+xg9aa%mL`#!u5DGTShW>k>hP zHIK)c=7J5v(53tTeK&6{&^7CsvV7qss8;J&^wDCt+1kXOxAC2v`P_8H4lDaxi%;h7 zFruL7t$t!odhRoT>%Fdm7B@dI{0YVsnEj}`@B}T=kRrE|ztsNPbO`J+t{l~_5hr|2 zzusD6s-pV}lMUr?3$a-BGz68-c}<}1iD+;Nst6;0skEXqYeAE$E`OggKG3-c^5K6q z$n&MH5VA2g_u?WKZ3;qHtKTBOj(qsq>6XU&05??`hM7Jl7-M7S4a8{PBPzI=9H9%0 zk?JLRx9X!0Ih6@7YtHWm6IREZujG%vlwXZ%q>8KK`q=g-lI1EKuhzPM*z<$18&60n z^-I+~1`6LE?BPjwy6BJ4)eRaeg$p<$liDptvk-H`CQm|CPot|NiU#M+)Q>d^0h4cJSRo zOazK&%lQjp>9n_l2q4I~7>J%EHSq+!^kwisAAem}T9eim9%xWf8t2yK0aKu*=VJ%G zb45)^9yIpSQ7qI-WWArY^7p(rB;ijb?2Ss<$RyUCV)`+zb|>8kO4CWTJRYVQ*G}+%DntfC#7U9s;^W8$uf~UpYWlMxxI} z`PSuo36Wd2Q>@+I_>RQqGxJGJDY}S6vO#EQf%Q-m@JSSO3RJU_9igK)RG+Ej3Rc-})dG2tK1=DX&x?M}l><&q_j=rV}3YxWcLHyUK(S$YLAxN9FJSRUgx(8aI&=qJV_uu#rf!zo>Ku!DoEZ7OI_|;d z)8dGllF5y@k}qYM?o#sx=3oR}sY0?%C7q3ZygMoMtM~eI1GXD(Z?loIO(pn_y>@^@ z`hD z4kJP6NA^%sfh(kag2y8`0b2CVvPEa=v8FMI7Es06n(O7`3v-?_ZvHMrCDGj9lH3QH zp~*IU#`6Y?Zn1%w1<{{0LoLjHNBHFgo&c3X(7#7h*q#fgdw4yW^i{!q6^*@pS z=919@A0C27Tjr)ZA$YQWHE`|Laf!GhtvpJXSPQG45W99*g6+Z~!0~w1bH};2L{J-2 z=<_h%Xo(;gRqSnHuLJynJ}0-2*)noi=Q+R$@_7Dm zqpjs6aYlO66T&Q$0i;hMgbBQ{Y<|t$O)F%YPgfD`hNKP0do3B4uTJt2VuS8hWRu2; zkcgfSnU>dfh3Y)M&yOA>1v@Y|Wn)SyR@3#@f0@!r$G&IajfrpO=hf3U-P^aS0)DnNu_#Cg9>f-QqO_^xBSKeqD?6z-Vb=Z=xZk#7G z%N?0^bL`=uY+uUGC76!J$%h6Yvp`CQzuOl=>buyn1J23beiu8lF`6`3w-)zu^FZ@` z>{##W3Vug$mIZ>?y<{Z2-p590JQP3*z47^^g^4V=YydZ*z?Sd z@@=hd@LPW&UB970TyAvt&mukPKiNEsEKaae>RpW^jrBX1W#FBypk@^9O}>&0##Wvf z2;Jf~caCGnpgI4O6aJ5DV`X0xTDk7JU5pGi+I`S~y)cnI%GH4JZZNnxbQtf9&X-DI>4Ewo=%ymF zy;W6HYi*G#YEqs_sh8_t73(WVyKWac|DN%y7$0_qG#haMp z7`w8oo&_~?%iU(7YG# z_Yt#+@czna0!pB-RLtikvE1@3(sH|o)LzPH!`%cKq!!_%P!H&88N+*n7do>LkYc9U z+a*GPd!pAqt{dWUl@6#wgMOj@|5-u(Vf)_y-^*v;ScJ;;OAimkiE8#0#3l;{rk<2G0HqqVkbC#4qZX z-gYBy##hl6p7|)5%s0HC+a4dUmrR~mZA`_bqwRs+k1U zp2EipLx`cSzQP-Mt2_xj^PmrtA~bQs;8jX*c=GT9Ihu>94*dE#qaWbA-q7XRXKu62 z&@K3i%|zQC(-b5lvX`g82Oc*LCzCzi{pV8tbvpT1;~-pgkMnEH{>j|Y>1%8r*FV9K zt8uS9*+YZ_4s9%DHw2jJUU7WveJ6V<`-J^h)3j}gn~L?rJsP@m@0;^O<}=ApFv8V2 zsLOA2hs%=tY{xP%Q{++aV_4{q>UEtS&S$e#js#X=3(7?xsg`E5pX09E8unPhQVehZ z$@Fl(19Y#)*pqPudllM$j^bmkmCAsR@I<%8I&1%$v_IFbO)`UWL2=XhQ#!UF8CbE z@79~Owz%G1rgAFn$dAltmzexhCwwDZ2K%LE0W|#KZnMGg{2@qoi8klW)?$BJ;v+S6 zVtQ=0P3qApho?rng&3A!Tm`eLGBF6qtx#DznQruFK(l;aRUu=wqKOBN6!gc2wTHBK z49v=0WIbJ~40_X(`U&YokVo^(2G%oE+8a*${avQ}(>fbO7xZlAP3S{Uzu~~}98d*} z&<$96aV0Yx!>kg<$qg!JD++)fP^HgGvxpA)lEibjQ4?mdH|%$5qR1wF;)qzscpXvZ z>iS&>_Wbp_NqO!pM?3Pud&=^7xtPLN#FD>Q4VvlvjT8ri;cB?X>Y9hn3y@ZYBZH0I zC4z2LG&|GS-A4M2F5|qxiO7c;pP}bXUP{3)-TZ3XRVD89jWm@c625ty8n;>Sff-ZF zlLCv`N|-ZnH9FV*?}wmb(IZEXY=aWc;s>PUUdu1dkoJ+u$EAm!O%j;j_KprsihYw# ztghB4^ZA%P-yb)xu9UNOcdlLdcHi-4YqZlCtA^iF9A?{&jDvkftN}&&{MgnSE7kSm z#N^1Q*_Y!n#_jYU@HV319-=t!0>jB%%(yMcGD4JKW@q< zdAT6liN=lmwQVp70skT&k}?CW2B13apI(D7`_LkaZ#h~v*|Xc#T<&p)UonUhRJuu( zF^5QP^!M@w$hi^gMVsNEbMQi>S5ya%GcB*hY`XWMwz*!f%OM4S{wK@xubqwY1i0)4 zPe^34ZoLo%S*oA2Rf#!KFZV8Vi5daQiOf; z5y7tX?z+*nxiim`?gzPPzPVR~QKTC-GMcD|#sREE%}I^c>~B(K*$7oE%bOq`c!hvG zbpR^P{F?D8J=LN3sxGy;WRcTHa+B{7DV#q$CZBgKDTx~ ze1mVJ2J^6dqWJ!Y8^4cVSh*ckd$VQ6%v3v2bLrj@b;+6J;=p3~k(NKW{)c*L9yaIy ztwY5W?YFiW*2Uib{rAphwQF#dW67fu#rN4IydJXIoFZOllm*vrPxD@mTn80WOv}6o zvlhc6xq7cRh&|j*>%5B>4lT?0ChB3WjME=-nk@DPa|P7x>Tek20g8#z&6uTH51*@< z9wIlkm#8EI+yL*4>yoSyoPCzft1@Bq=MomKj%y#AV}WhQUG-%*(}Om{9@SxYO{f{! zzC@JICUPWtqRIQ`CLiwFc(KWh-a84l8bAyACH-X~*5>^lAAZktdRq%J5i-Lq?!c6Bd|Cu6=+Aq#wzkSE+8d5EghVyAc5-4b`Js1$OR7!RVy zDvliip7&P zN>0ZSoB8+cxHHE4{Mxu<+tjmrrOrpqMK|zAZ3Xl_Tu9JUi{1!>Dkcs@E0bqZn<@y$ zY>NGiRx3eTQ|-pRqLLV84@{<4&nZS3rVV79 zncZwsX4FHo5kV|mn2!ZzRzC3}XIfyLneP0+n3~R^q=6d?x;M{-!0ubxk>xI#A24ON zVN_%&m4x~@=JpQt@{wP4-&jT{GA^Dk#pWyNzx&W`@k2?+?al1F1m(|?^BjZ@dAF&1 z`SAi{f|Q|{{50^RMHvnoY9G0j;`>jZlvtAO374rJl?99?E?IxuyncI4S*1~6cz9Rm z$M)4^a zQgO>|MDZ?AyJiC*C;hUVm#-miPawskc5H%s>`HdUr0nbsPt-nps!34oER~^4-Z}aA z+qjSGrOWBB>h2iRgT^&v^>r@DC@1q~0L4swj6FCvYKOGlR~}2WWSwuoiH`?DKgpz` z7QDZaE~4fhsL9DX@uF-(+Vue?oY3)yxefodo11RG%HsXvXF;r-UbhucJWAS!3Cn4+ z1a5L?|GbZrN4{Of&R5}VUn=qnQBGkl=VvEEnQt%^8F###-nj*vk`W_1WIwuNuhfQb zKMtKYij*5ApM~@`J_Os!_2)LUXVoYDPtU>>nETx9a|1&{nLJRPAsHl^ltsvTs`RL? zl#&M6+j53X;oicz7+h#0JaM30R`t@@2tJ%*`vUHs;6sv zD6Me4^Jl*i6F(oW7`E-Yi<))8o^K{BpWl}z+MWNfhz`V%^@<-E8$(YNvu_R%R&!{P zN$Wm}`Pwn`GmwaaTwxJNKY1&t21`4Y4LX8{wPmS;rMY>H$(SvXQcftwH6_w+r_ApKvRA{y!20_nIZ#m(@MiHm(ru|%nW7q>D=hJ8O32(Wv@3o zJe`(xr8}6v{3nUqQ^us$84>DnTkY!D0E_`rgtx+cs#6HgZhs0X6=;$2!WhvcG|Uw8 z8I0zXlGLR;^gdRG^mwsD^@6@$aj0SLS=<;Bd(bRRGKD$kzO`&BPfTM-~?3o!;f5`K#X z2>{IetSQg$TXI3dnlty@PGHXm;&q>!K8X;;1PD16-(mZ!xbi3771D+8%Z!bjXdk|s zf|uJ6@+Wu@-OY*$(8MqDGAro9zEP&t-(R1<&Iqxl$QdN*P~F-izk2AI#rsKezOC(# zBUEqe3i-U=<_SZ2l!XR{6~JuXsxrMeHYy>@?AljC(8OQ`i)yCZUMW&&iIM91M9uDN zB~4lFgZE~pqm~(2O1O!Io8~g2XM;n{sYA#pt~5ChEt@y4bZq*ly4t0bxUq&4xQel> zTST&f))_CqUI$Q;kJp^;Zh>yO4TWyAL3)?b#BFcl&b^6VE!!<=M-C~w{N&1oTy+hO;O~gjp&)nR_N5q6kHyNbgKRsKA0N< z)1C9knm~lTOSm%ct)DaPDD3m0H>KeZ3{CghzYD}yMPS<85(Hi0Sfw*MTd%f0=znSV zCPAi+GQWqu2+b#dSJkntDcGv6J@i74%wxFl>b0o*gFu=-&IBl?84w_nzhw{J@(WYO z>-7tFpg+8?zHqR(oHTFHRGp;DVg`R2iGYx*l-2ejg?Lb}f*I%fBZ+G3c_iPaxaKM!<$2Evkk>33@x}wmAp9JhvM}kRg?u`ywzM+Y&0?Te_}Tju#4-e{-l^ zO(xkxM4gBdHRDMl1^yTtH@RlmHr;{xL!cLQ_#7&P_IVZHMBJKI#Tb2XNWrYt`-()k zb3V*+j8+xB3}vIJ4FuP55n#Z2lmcOrZvkgBrCbzEb9@49-@0lNB7v0BT`{*bY?~?$ z7^&aaRm)o#3d~hyhdP_VNw|Cr*}eLDL%e{OUUox1#wYYCJ=CTSd(jUJV46PT!mV~| z$E4b_YpVbcqP8UC3udG^x#5<*qoR-fS&E;L<7gU!*QeuDuoOSDq$GtlhWp!#2xK6x zZw1aqw(T6Wao7KH!STp_^?;3WhXuPmEgZ1hxJLI+SNt4lefZ_kjVK{_xonUL_ni9h zQqPbf&g`&Dk=g@411%OiGT+dUYDCB=_Z(mE+-XIw#KJxC zFae~oE2ZV)tRNZykC_nNSr0`Xki0by8oK7wvp(D8z4FyGF70t;4CVHVg^KmvCvfi? zcj(rS?&|E48OOwA^ElePTVU5&cFC43Hd@j#x4bT!csuMLCXjO-_WJKA1~{Vxg;M5I z2)o58eFHh2%kDEvRiL-*=|ojy$Wm$dbpGLpW4JF`OIYKEPIe=Kn_l9gwVrbFTxEvN z!@Ts^wIepFUr*AOO_*T;Z_a;<_Osr4Kej~<1OsEKFo$d)5BgM0}kSf@=)< zG-mP)GIsWKLM^mL&lX>p@JTq2wIg=e@+iQSLc&e(hThqnr+ zy!hR6_dG&JHF1ho_ab2UCwc2AfrNlI&nKE9aYT(T+%ob5Yb3 z%Uf)Ml89TGBeKtr>x8k`GL^Xb zQ%gs^m}<0M++JpSzqSlexnr-_`?X!je_h`mE5Y+h(7-Y4K^5L~IPW|2yW&BZf;z)Fh3MBjJ`dxE-ohx!DS=*cdhCsHXJmqzA z39$8_me%0*3&dz2H80qnlPfGuyPgRCL_6U~Vd3FI713XTy)ee}HEEom6Q82MR!^25Bu=)(-`$JP{lqTp^DW$5m#%YJ!BbSbeAGmt0aPCqgl z8pdE@EQZT;10Jw{b|RP8Z3=?sKI*x4r2b6YySaPS{9l<@Lkrd#EwC#oahMp_05gfg zRT?0S_*YQ|Ex4g%j|u?I?vp%Gl!u@%zozd|Q6LF6gnCl!HuMvFwUucZ>d4BVJl}Vf z;S+veVb!c}s;eK>5x_yuhfU!Nn3z7r`UHu~lP;v$FIhw=8du>kRA)^OMLv&(Bq1KH?psNLyKrZ)5g&HV2-uK&73t#3Nq zr-!V^^3T(~EPJI-dtZU2{+=iI%PQw#)hQ>=P>j&>Yeyp3Kau({BX&8y0hkAi$k{+q z?&pAY_z{LeGq996_SKyopd@`bh6qOQi=Dj0kW@5=$Ch_z@63ZeQNG_ zOml2?{<~DyT(n~@ZmfoN90L8&qWBLde0Ybj7UA>Ac`c%@KR%S;w$!&CFU--}BZZ_6 zNoJgx{PoOh5*h#0=b~Y0MwAPeemN!0>vvY7p=``$_Dkhoe`rvPobDy2Id^G<_YOTv zts}?6c|ZF+9Eo)^aY-emMnX+zH=lln^ni4Mhfp^m$1kF3sgmH`K2@lYxgZl->h;i< zm`1+~Im^C&t>6YX>Kmelft03oUF_chcETs`LMdF@5OE~4#5_px_P%{=hWAyJ^~;O~ zqTNOYgQLT;5X-)@qiEIaW-&-F2l=gjsMMw3at3G{7Be@AK(&g+Gsb5IS`TiOJoJ(? zytYhDujF)id9&$)F|EQerB%tSY_GAXqf3J>g&m$SVH^I8;r@9%-1^^_VIYOeVLuh@ zpc|Lkf{ok5->t1@9ZVj!CGpZLDZErhcAxp+dige5o@=!DcB$pXPIWcDVkS?`HVywq+y`;fvHFdhJ+ z$mWdE{nrW;i!mF^VObs0%?|2NMvaVtfP)cYHvehNmPnODzO2MqJiaj5xb`%a>OU>? z(eIWP^MC?oJ!V_NZB}hNC9sWg+!!(pP7@7Z1=dDtR_#P|<2X^!(q05K=!STsn!+hH z6$a`b$T8c0ba;y&zh@snOHFLSYqDf+SV(x6h==!SPme{d9}zTT8yR5DO6<$QTP?9! zw#bN&lbsXi)Ggn$oqo^mHg(boU_2~t)#P-Xu`Az5>T`$oI=fW&hAp}1IR&3Z%7w@l zj^FlMgU>gRuX2GUl!GwrxITt#LR5+0-TG0h=-r&=^9)}&TF|etkDxl@q!&nLf!Jtw z;7X+fPTSIG6Nr~2vW z$&I7X&in+1+a6R0-{<8ss)m7gEeZ89?lBzyy~QnSxli&BNt=!ywsg$*KMX#2E}vg2 z<*cD~=*dU;CN8osE9qv{47&V!`cf2vO{dF%84~yO~^OaM}euABIiv7v?24vqn`I~^*QUi+pg5U zDZ>;VbQ9|1K%~&6twu1I)usTy9j^DwHO^~XkvDz1c$5mGX4`it&}F<_GB*S80>R)@x4ZrBBWcwC++f zk%^HJAP3y?4BXvAp*d`3_)4jqMi)0ih-~od#s+;ayC6YMHCbp->ndVgyjeKXonKv{ zS^KDC<~j-@mVT-W$r(h z@Q#-czOdF|kh^X63YkOjsxljeT@F0PU07)vq!u5Ju~AAVZ%ZUD@M*5Co2YVbR}lp*76zl+sD}Uk2BFrkFMn&+_Z?j6>wf=|Jm~ynh!`jHttnS;jWNI+OWbi zU!8VOp%@Ds@^UlfP8#Y_2f_fpw?-rH`^M{T)keEpO<0o?FigRjyiQt=-77tAOj@J4 z9lUx~8*WJ~E!0*-T?*ZFXgAJ%7A!Vg(6{{2d?Rm76X+53_kmYE8<3X$ z1;L?+o}ffgBMC#S8X5<1XaEZVDp52*fGG3yu0#7>-+%DF*K=LX4+%Lrd+)W^UT5ul z-S_5~E#B@k|Fhsf2!hPSHm%==AUg1;4x%>|K9WsV9;dz?`5xP$2d@OZy+0$!Vgy_N z-HzD2PDT75V*?58WA$k#^p>ulwf_6B)<0e{`|zf3@c(9JzFy&SNuPb-6L(EobC=3= zAnfQszW>p>AMX{)Z@jAGuD~5PxEsGqa4r0KUG$Z24qsV2hS13TD9Q-}t8YRb?8Od~_*F@^?>+B`DC1j}&takToDX}x#U4&o46wu|6DHVJW9 zA*&}69QaO2m@j9vfJj&>V@Qq8eR)sQeS{$K*U4M?$}gyJbJR1G!6-ZEn>?t!68hXi zRQYI{(Qa=|rnPk5F8*Q+zevctT$jsU5P7GRW>}_2RH1Zr!`B5KQCo?uz3gXhXOzd# zd0cDPxAUit7R*2d>7=RwR4YY zYU!<+$Knn|R||qj)sL7uTiJwiyrR;Zm*&*?@$!U8`3VN!f}3P3mtaX& ze82yuyyzK5le3j^EN%(AT2Mx+zMuooRVD#y`_P|!=tE-EvQ}lXyC6)Ry1@pKaJJwK zbm%tfc0n$5*3SJzpviek2Nu_WQ!Q{HRbpNfLsr2HEOF2s>~GFdmheXVjM|PXtOe_* zB7?Sd5ucMi2~%}AP5;ki4~?g(L5?3Dt=fAzmk}3B*oXsCVrnr>Xw|Tmt`w2%AXV)cK z6YF%+afPf3)9@gamX_PeN(N6NJHd!=@IFH<|4#+YyrwqGdi;{p51;CiN8RZBh!Nd} zRrAoeKaJW>Dwe!_5plWH2=8m_t#%XG<%=qO(!I3C%UZa200Rww$={D z-h#WGQl1kzrEC}}?7O)q!g)ErU|73hx^R=m24`ofXMNm@FgtKLhd%T|t%*RiD9)^5^NPPKZfZ0$N+_j>rqSB@FSYOHg(H+hVT7UIL!ud8C zUT30ZGRk^ZN0NN{PzGAB3a4F*x`|fZuKdpU7%B3jTrUz&$$2_p78i&IRXFMN=h9Nb z`d4D!9hu0r=v}^cKbw$b06i|0;6aQnA3NY{r+4iKgt-!z*P?N2Il5N&bc-Wq>)xPz z{Sj@C79!h6WaQCEj!q{-8wm&*>$*8nDb`*rs~X67?WDPmx;2^5JiD)>S;eG{XdSc4 z2x(Y>vop}D1_dp0e$|6YFXI$aks?# zFN$`T?1l)Mng7}ZiJa9`{Omdz@Ob5ql79PTvg4E~F!2L;Ukb|URwMR$oZuD<-$gmf zyK23Z<2{#1M=^|XjF#dx@J2yHoLXb(H%Oa13lQYKEQ1)_H*c;Ckw{50?J<9&B*rl; z@zMT)6ttS-j&w@2NmZU&uOVzIV*8dQ)<*On{$W>4)^Pn^rgX6{qAm3%H1P{WvXLZp z%^dEDwOeQ9i7NM%iXw;(Xm5OMWW)l=hAeXJ=z0z!v4~yIS)119b3h@aZZ$D<+w=4{ zu-zVK*P|h94$^t7w9YQfcECI84cHzO*-bi@IcdeDgY91)f$ic0WUepnz7KqC{_q9S z#Q*!pjBR+mm*x_zL(rE?ePOvzI8Ve6QudXF;6a6O$8l)>SsR+iGp{wqWT}yqpcrpL z%yyTATOopjqkF#=tl!>rpLAR9|JLC3ZskC0+G);h$=-s7GLx zOQbg*1Rm8t3*EkBTuq_p{v}nEIU&rfybDST#q7xI(3t4{q>nVLORqePv){x<%`k7g zDAI1-0x_e9vw5hnOAWsYgIYv|A{KEzsSC-eHQ}p%R_ob+4ZeP&0AKe%Bq9{^DYHAj z3|6kVp9kX|t_SNA1-}RQ;c3;pADH^#CIR68YdvLKnNvL~*hP#oHpH6i11}C@4C$$h zRAu+VZ~FB?E#-xfQmoS7@Kq|sY{7OICbc$0%f|oR3o#Ch<63r*pzD`;{)R}*db%bg zp4qXVo##*8|L()>doUrb2$L!M?_AII!>gsdJxq(DXkCdnOh>0EMi=S4TBs=J5yo;8 znjp&?*5Tr}$V-y+_KaH3(UrJ5{*XA5{q6*1dQ2%ye7QEFFy6x4=pjn1=0NMx+#T`^ z@iHc31`_@G>1?a3bcL(WvDCML%VmebRKux=NO9c>x%7|-FJL^BaGPB3!y^-($)N76 zTo|p3thT@Jgv9)YthK8)%z3pmJQxpJ4$qhgGV@lW3F5Q|xs=PulyI}7Mlv@?U4&Jf zT2EPNg+RJ>*S6X9v@76gvaaM|)I`H(7%d3!<)w$)!dv7bZRA2=#ov7km%+CM=I{Gg zy|2=4WzJvwmb%xZ*#vpXTrTW>3QOg63m(zQ;U;EkQQa=2E@nqnpXW~erG+5I#@gQm z$R;tep%wKZ(V0PgSkbhp4^Ij8j{N)6zutf__%}8r)YI_qTQC)S=!=_3goWbN_7rpm%m z*p-Scshz_J`Ply!HiW4jWr+n@-8RUFFXv%rmCEitk?b!mT9KDr-~OFy8zguMq*kgVQ@c$ZV>{gbYK$u(CCqPtG_W!Ky61EA?e!utu&TH z%!`JH=~sitT|Zog(7J0aea4HOGqb_Wau=Zgad*Nl8UXkSH&a&m)xY6?SkGOE*W<1G zgQUarXybPQf+J9F7l41M>Y`U_)a{|+!^Cu3{pzU_B*eeM5MlCQ4ScGNOuO|{E2wIX zYdwC17>MB@fvE$xBIdNf3YdRp1j1dopS?E_Pxw%88V-bz`>o+34Brw_Hk zY$Mu&u<>8PnhUg)o43ce-E4v2d0<@Ckv^gS`w^o2fs=W2@sN0CuROIwSzz%sCmSio%pnf`(oTF?9o-QU$viq|>a{pB=K+(XTa-(NSjY>9a ziebcievG*LZsX@6=5N|aV~-F89ctuv)tsw#9QV-6A@rd!wI1{6Jo=D!Rr7D2;KxF1 zY3ZF|^W|&LwNtg|LGD(Htav60NV(y1gxgDiVLmXqI-@o>)S*PIo%1@bW8q`{3@Ru% zMEO0afM44X&ZRKPTqu7B-e4A;Q2s{k@fD`6TP=+Z^Y!`7lB%6Gqi9uWlHFIHRPnu# z6_}^&#VTJav^@WsjxDO9DsXG*bl&Jj!UM)$KI%mjiQAq7SyH!Zf`G*#W%A71RexQQ+INPx zEl*MOJm_ox<1N(9?@>3NQikats-fL)S$Jo-ZQ`tAiD23c#C#jBaN@V*^ebmK+$f>P zeKC3zA-B6u7Cik?&;E{hO2aOQiF?*kzIYvTyAiUpm=taI?bdm)8yGIO>uLGQiINWe z^ZvNYw=y5P!!2mwXem=opJ;wE;gQEWLmqvH2HoT#fbcZ zd3S}=?n{r94&SIUfast&pjezON2{`xG-x1=-$O96DE{d;yUBR^R^|efL`HuhTE$b& zhl~_cEiwBRvC1HiZYGN0L0i~yki{)xyGIU@sxxR7rnw5;Y!oe~XsrA7=1i^_|XSr<`GB|rBb8hdT3FDNTNyAQ7r$0as-w* z1}Lk~EUr&RQUpbEmya^uROynsi z7O_V6aP*wE5hru)ZBhGF^-AsdL>Dk2XA&S6Nbtb=E z=9ArCnwMzH8{it#eawa;u<^az!+VZQ4>i$7P+*xDLmVs|!m9K90E410=W!cQ*O)oR`VoR2!WG0y>#gS@yCu-JP7BN{FdY6J2*2Efw@2jJfbEhf2e1~ z9VX^wSdU+ZW{;uS!(mQQva>7;btt6RWs6OkVBY8}5D664p_!!PGFe6G@D<7S+#@N^ z2JWHBu<2pD9i@ZOM-0pfAiclG6)R=O+x)bdymBjk?aA?4^(@-}Twz7g@F9el;c!K$ zw@EXA?LM!3&*J*^Uz2F&BTQXV<>;S*fLY#0^q+q$N0ZMgPwuAwz#vtbm>SrFj?7muiJsw`$Ux#@80TYCtGtgoq5`|K#60!^OecN-+mLb z9lv;1*@=eG9hS+gD>eu=bz>SS8nGz~2IGdtIVwX;H>b-$R z$W*d-LoDv+-1waJxB``h5qbH_yTz3@tqdKazfX5U%qzE%HS)?6xxKYFagZDO zci|Uvl)hN_X{8di^NLECp?#`&{N=;}!eC#Y!^;7B+<;NrZ#CZx&coR^i^B(GSa`Pb zL~;1wOkQA>^-SA`=Xim4lM?J@Co$I?C8Rms1>%$l5L&!IZ18u9b2gK)?+kyGoW^cl zPznYoe6la!8Q$M+$r$>yxoont4|M2ipsi;k$ zb5_a6DhcKEj%qjhkSF28wYE4II$2Rt)x`hqi)ojkMshIR2U8!w7^4i9xd3c$-*qWHC4QXz1-d>_rJGa+u@XS6LqJTNrw;bC6*C^ zYh-^x!0j~OKrdS@^D7m-58mZgc}n@&U(r`d<))91ClG>YPNKw#BWG{G4OJ$R* zdCh<9p+Q0^C^}mR1GAwK6p+KXwKOe&pR)@OvXu2{GH&afb*Yq^Q@qkBOTTtyPDK zg=P-nW63Ul$1XxT%wi0sp|D}+aN@tSoVfmQ32>o|vh74EuW1Qi*ry%e_708kj7lQv zLDzWO^hj%m{1^Yk)g8f$T#rqOZ{Lo&-bqS`<@SC8`6?5hWZ0)x%M?VOI4Sn5X@5&Q zQU2rDU@&M#=40y9 za>I>Go4_2<-FAbb)c9ep?GD`JwDQa|=Ubra1xl++hsV!Nml~ONfeZyHZw^HRH`&P& zi6$r6*`w)z_zx22=yC8yMXP#`_73?yUemXH%e^kQg;NLh#~ozxymAnID%D0imue${ znWV^@fb=nr)f}v$Q3A&9Jf&r#G};?yD?qD!lcOU+kcB@}X91#q^bP)~8=AFQqfU#*>bdD_Mzj#*s$ zB&-nVOhtC`$q{tEZu){mnjbFo z(yYT45z61;_wEF1*=J((lTllk!n!k`bfn9=Kmmo#<_3rX5CH(Q8%?wue@7&D>mmk{ z4-jdPT!6>~wUvS8cd%%UVPi29Hg#EtR<|P~?Z>fZXK8E*h%yU7Mk7flbf_0K0B!Kk z(Kx~l(D`kr6UY7VBD1n}1P^wnxxwC=YiPumeI=2tu&ox6N#?R;kY)}r!y$EcT1$_J z*4bO(?7rgh9=Dad`*aBdH14?Nv=iDagt>qc4BY8Mzo2PrDD~?QHV#N2%i8r%lSe{7 z+|D~H#y9wjZjYq}_IDswHiOay5aDZ5Rf8?!DdQ=$(N~Y*a(`N`g1Pd_qgWjfGA+w!hF)p4=c0?e9yQ zFocQR9QabaF{PHB_WW1!R<1G}3kO6IdapKQjaFU@039Hduk85$71Z=zF_sj^J&bXF zpF!atHS9R*xy;#>XO!Iu4_6ig807YuPWZ@FjpMYKH#R)y7kUCANM*@>M8KLNXm0NV9C0L@44B&tgy48(1>Fg4W6o^6hpdKbimo;$_Gk(T1$f%!cnn7!II}ES8z@pE_+m{}aq+8{RJEg)vK= zqY`uN5uClh{N2>h%tLgCLt{1QPG^|KRajj)Ka62pgap?8f-S17+!~llinbC?=zOTg z&K=(Nk8)-kcYqjSyF-o|*~h**XiNTxI@kb{5BIb^he!uKZw>T!nFPeM2WmUN);*MX z1_GUpXcx z+`0%A#B6~dG#Ba8d(ZD;<~FV2H$Hj#3CmQ0{H7e^ELqqWy)9E=AJ8R-VgZ*+HNvoFYN(42>zGmu&_!^qWMav%$W@FvhQaAsefp zYHXdA&@!Cub%XT&W%j&=aG^>+MX?`YZdX`lS_l;3XXUGMY zUXMk!Kv5eM*#acRW&muzFkVRRFT}!M{mnv{4d&8mcg3GJX}Sp z2BC0W1w_WHihoFun`CCD-}99B_TS2ug9ie@x-(FN5%Ey%bY6)sj%YOZ_KpJWUSi=` zM&4?M5gvljR2E+z_Vv!}Wu>C9Qu`ZDK*0d!eL)c%5RXPU`vuw#)IewI5m3y)=^J~| z`8&;o85_WVnEH&8J1L-T^aVLB`~t)?#Q^Qc*Ra%%kW9bolsLt~#12sBGt(K>k~6?olcbp|PK18@GLz)?cs-7}3G zIr!F0>N6?TdBlA+Bhm`wH+{;ysIxFRis~&ts`LB+NM{1-R<$W8V{7dq3bd%^cHpTC zfxudVs)rz*XTUvYN2-AahS$Hs2tYe{{ZHzIJrhDsgxfg<+oakpxMsz%#mByTNPf5e z>nRRX4RRzWHFJz?M8}uMBWtxoOeHb# zWIU2L6S8)Zh?2gZz8zRU0NJ(1?LL956}ta_7xz*ZlVnePzd}CVKjU_cR`YmUO(jnO zS=Sy8L1-b0MV*VNgAE}qvcWlsRZ+D_SMqii$aZU?<j2G72M$7X zQ1@dYE!)CF5PQQG_!_bfxzzYdJ*nFDyEM5Vmr_f!ZlWONHNrp(%s+L;U#IMbeUG}h ziR#(IaYP4U+7{i(ODp?!KFq_N;Hm*99N6nmYjuKV{S9OI`z0x%bXtlp&bF7CC_tWj zY0^;|v3zdtM(q@v)+W}WX-Md?b=1u-U)Pk6v=s>?ftehGlu|lqZQ)>Or;mFIc(^2UlGxyaM7wc38?15ibYGOm^W7VUj$6^YdjpEa@vNE z@7~9Uxt$+toKKA=G#iS3sQ3y&hN}dQs@C+=KJ9c!dTr5I@d-W zWbRr3sDZPEG~`)ygl|aGYZEoh&_jKF1$du<2(0T$q@v<@U5Ukm(90zg@z)}xhIdl; zi6F!}bwDyaau8N0$m+>kUp$LmRslEaJDtW`Pf%?SLZK@F_vkz3$luzgH}afcxo9zU zO~@4`6Rg?b00656%6DL|)5mvxZ*5PKj(N(u$*)@m;5?8PsB`boYB509l(zFWKi2e= zYcuuJ+B{j`L1Q>?#Z#_?RgRJP)rI^S8lGXNg*=NqgkS7jM045z055SlU-uRg$~VL+ zn_R9u8s3v4jP6G4-QC;FS$m*|Z8*>oC!vR$hbQqhZyrtLfBJxO*jb3Zt{ohY6oHQV z73g#G%;Jh+7XGp3Joo41(QjlKRFl`Q>>ur13@8-Gfp-cV&`&At8S0yFD_+P;;8V9h z*mKS9ft3OHXrK(O7P%vNsVvO3(d7rj9dZuOxU-oS`IFi+YTW?nlv>Ebo1_Ksb1?ak zR-2B}^s~o%XRTt21A}pcn5-1VVmRmLYBFbTgTCEf_Ws-VlM?IhVdWdAH%zrNE4vl1 z(>WI`0giz&v>q%8`OC1wCcOxX6e93Vg?6iZEGoN)_r(s(YFMR(G`{0ut}QNFt!aY^ zz9DmpI9`Mpd^|b}c<3!)jh7Zxg?XbxvBaYn+Y#^fNFuAGc7^v&8tiKM%v<0)JRX+T>%qVDNVSi@5scH}$42izKa!DmCB zv!UOUlCqQ+cUnFN#5(#AirB+ntgV z=N^vf-^X@B)~2QLIze<%tYccjlT!MbmvA>;$Eq-E;|XU*$3STCX=S#0l_Yv2u@dM# z^%6n74szcYzv!v?3$0Am?teXxNQh0GdRU)SjibRH?-trKErWLB!5xceCUEC2T)|VW z!z?~EgH%VLrn?GUI^mG1jcgy5$&LUf04JV_-Pg{8c?idc>U2v*1z$6TogSL++~zCd zaP}eJ*%GG*sfy@C;u)!0KQQa#QbeGK-*e;Zwf3b*!XG&D4JJm!Y34W{RG@r~wsbXX znZM4!#*4@k8?Tum0w}T$0vYA-vSP~4GuoJ|z?Ido0cU&p&Tjn+=5?j%jPf<<*zBSs z!r{>Z*=hhCYDXg?^0h*%#<1~1vhq)ty=E*fL{J54+0m>OS^>h{hn6E77i%HYL5B7t zk~eEc6hQ32K*=}Bm7=ug2e`f0(5hTz2&_p!$DhTnqi!!IwLX`N)?L=u3GeaZ?P7;`4MbXy{Hlk2e~RCsxGk zxxoqT46Hd@S^iJVCbBpvgS>5!!CKv+l6KRa~ z5$CL>D@*^2L}XO$WA1n71%6^o^mGpS@D2h&eNI_Il$XR$7qnZznS7kRbzoKvoEce# zH51Bqu@H$@uO;|=l^Vj-O9#1TD~;ViR0RgN_uZoPOa4L&JT<+r*5xNntfa9xVOLTz z&$gBp({dWEN6W5}8wZRUY_$+{KC9eCR=^l49n}6R`{Q21hcQ$_{@LR4(?vUJ>^h>w z6J&o7?0UBl9lStB>u+xjk=BDCQ|2jsc%yp;<}#}j9AqJURh1Y7K&g@CCZJBMPAlhK zXh)pdb`ZxgeP8)sA65zabdcDetflF9j(SK&c;&)4{m6a`@2EY5rLUZ&U^O_gxaaov zJ*~Hsex@-4T=JFIP&;3F7&vgb4l+oS8o6aFv+B+T>qzVdmvCnGn7dq1W}|j~^2=&#!D=nUd3uN4)PxC*YHfq_!2Z6y6Y0)x3qp2H-0A4U zlIXGyqWltPcI1L;qA6Q>pA?nG&oDoWAR)}LQ#af;Y4XvkH{z+AqWp;xv$9{w@bKo} z<{Gi`&MD8;*Yo4+C11ShWiB#1qG>m7VB4Mg1RP_|wa(8~DmpqYV$F48y=zhXh(yf7 zCn^qid0U>gYPEE*7i=9I?|UkBu;OjU)X!D-ia9&vii#sl3oRt?s>hTjM)ha{$NScIquF~C(_jty`8VFG< z{^yY?SpGR>+2PDmb02!#w|s-~A|kJ6bPiRO{rmdY1OKBQ=x>_PTKkSw@iS@MPfY>a M;JyCV_snDe2la%mzyJUM literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/AppScope/resources/base/media/layered_image.json b/ArkUIKit/ShapeDrawing/AppScope/resources/base/media/layered_image.json new file mode 100644 index 00000000000..fb49920440f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/AppScope/resources/base/media/layered_image.json @@ -0,0 +1,7 @@ +{ + "layered-image": + { + "background" : "$media:background", + "foreground" : "$media:foreground" + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/README_zh.md b/ArkUIKit/ShapeDrawing/README_zh.md new file mode 100644 index 00000000000..3628cfa14e1 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/README_zh.md @@ -0,0 +1,96 @@ +# ArkUIç»˜åˆ¶å‡ ä½•å›¾å½¢æŒ‡å—æ–‡æ¡£ç¤ºä¾‹ + +### ä»‹ç» + +本示例通过使用[ArkUIæŒ‡å—æ–‡æ¡£](https://gitcode.com/openharmony/docs/tree/master/zh-cn/application-dev/ui)中å„场景的开å‘示例,展示在工程中,帮助开å‘者更好地ç†è§£ArkUIæä¾›çš„组件åŠç»„件属性并åˆç†ä½¿ç”¨ã€‚该工程中展示的代ç è¯¦ç»†æè¿°å¯æŸ¥å¦‚下链接: + +1. [绘制几何图形](https://gitcode.com/openharmony/docs/blob/master/zh-cn/application-dev/ui/arkts-geometric-shape-drawing.md)。 + + +### 效果预览 + +| 抗锯齿开å¯ä¸Žå…³é—­æ•ˆæžœ | 正常绘制圆和圆环效果 | 设置组件填充区域颜色效果 | 设置网格效果,实现图åƒå±€éƒ¨æ‰­æ›²æ•ˆæžœ | +| ------------------------------------ | --------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | +| ![](screenshots/device/image1.png) | ![](screenshots/device/image2.png) | ![](screenshots/device/image3.png) | ![](screenshots/device/image4.png) | + +| 绘制简å•图形效果 | 绘制å°é—­è·¯å¾„效果 | 设置组件边框颜色效果 | è®¾ç½®çº¿æ¡æ‹è§’ç»˜åˆ¶æ ·å¼æ•ˆæžœ | +| ------------------------------------ | --------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | +| ![](screenshots/device/image5.png) | ![](screenshots/device/image6.png) | ![](screenshots/device/image7.png) | ![](screenshots/device/image8.png) | + +| 设置斜接长度与边框宽度比值的æžé™å€¼æ•ˆæžœ | è®¾ç½®è¾¹æ¡†é€æ˜Žåº¦æ•ˆæžœ | 通过形状视å£å¯¹å›¾å½¢è¿›è¡Œæ”¾å¤§ä¸Žç¼©å°æ•ˆæžœ | 在viewPort中创建圆效果 | 在viewPort中创建圆效果 | +| ------------------------------------ | --------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | +| ![](screenshots/device/image9.png) | ![](screenshots/device/image10.png) | ![](screenshots/device/image11.png) | ![](screenshots/device/image12.png) | ![](screenshots/device/image13.png) | + +### 使用说明 + +1. 在主界é¢ï¼Œå¯ä»¥ç‚¹å‡»å¯¹åº”页é¢ï¼Œé€‰æ‹©éœ€è¦å‚考的组件示例。 + +2. 在组件目录选择详细的示例å‚考。 + +3. 进入示例界é¢ï¼ŒæŸ¥çœ‹å‚考示例。 + +4. 通过自动测试框架å¯è¿›è¡Œæµ‹è¯•åŠç»´æŠ¤ã€‚ + +### 工程目录 +``` +entry/src/main/ets/ +├── entryability +│   └── EntryAbility.ets +├── entrybackupability +│   └── EntryBackupAbility.ets +└── pages + ├── AntiAlias.ets // 通过antiAlias设置是å¦å¼€å¯æŠ—锯齿 + ├── CircleExample.ets // 绘制圆和圆环 + ├── Fill.ets // 通过fillå¯ä»¥è®¾ç½®ç»„件填充区域颜色 + ├── Index.ets + ├── Mesh.ets // 通过mesh设置网格效果 + ├── Shape.ets // 形状视å£viewPort + ├── ShapeExample.ets // 绘制å°é—­è·¯å¾„ + ├── Stroke.ets // 通过strokeå¯ä»¥è®¾ç½®ç»„件边框颜色 + ├── StrokeLineJoin.ets // 通过strokeLineJoinå¯ä»¥è®¾ç½®çº¿æ¡æ‹è§’ç»˜åˆ¶æ ·å¼ + ├── StrokeMiterLimit.ets // 通过strokeMiterLimit设置斜接长度与边框宽度比值的æžé™å€¼ + ├── StrokeOpacity.ets // 通过strokeOpacityå¯ä»¥è®¾ç½®è¾¹æ¡†é€æ˜Žåº¦ + ├── ViewPort1.ets // 形状视å£viewPort1 + ├── ViewPort2.ets // 形状视å£viewPort2 + └── ViewPort3.ets // 形状视å£viewPort3 +entry/src/ohosTest/ +├── ets +│ └── test +│ ├── Ability.test.ets +│ ├── Index.test.ets // æµ‹è¯•ç”¨ä¾‹ä»£ç  +│ └── List.test.ets +└── module.json5 +``` +### 具体实现 + +1. 形状视å£viewPort指定用户空间中的一个矩形,该矩形映射到为关è”çš„SVG元素建立的视区边界。viewPort属性的值包å«xã€yã€widthå’Œheight四个å¯é€‰å‚数,xå’Œyè¡¨ç¤ºè§†åŒºçš„å·¦ä¸Šè§’åæ ‡ï¼Œwidthå’Œheight表示其尺寸。 + +2. 绘制组件支æŒé€šè¿‡å„ç§å±žæ€§æ›´æ”¹ç»„ä»¶æ ·å¼ã€‚通过fillå¯ä»¥è®¾ç½®ç»„件填充区域颜色。通过strokeå¯ä»¥è®¾ç½®ç»„件边框颜色。通过strokeOpacityå¯ä»¥è®¾ç½®è¾¹æ¡†é€æ˜Žåº¦ã€‚通过strokeLineJoinå¯ä»¥è®¾ç½®çº¿æ¡æ‹è§’绘制样å¼ã€‚通过strokeMiterLimit设置斜接长度与边框宽度比值的æžé™å€¼ã€‚通过antiAlias设置是å¦å¼€å¯æŠ—锯齿,默认值为trueï¼ˆå¼€å¯æŠ—é”¯é½¿ï¼‰ã€‚é€šè¿‡mesh设置网格效果,实现图åƒå±€éƒ¨æ‰­æ›²ã€‚ + +### 相关æƒé™ + +䏿¶‰åŠã€‚ + +### ä¾èµ– + +䏿¶‰åŠã€‚ + +### 约æŸä¸Žé™åˆ¶ + +1.æœ¬ç¤ºä¾‹ä»…æ”¯æŒæ ‡å‡†ç³»ç»Ÿä¸Šè¿è¡Œ, 支æŒè®¾å¤‡ï¼šRK3568。 + +2.本示例为Stage模型,支æŒAPI20版本SDK,版本å·ï¼š6.0.0.33,镜åƒç‰ˆæœ¬å·ï¼šOpenHarmony_6.0.0.33。 + +3.本示例需è¦ä½¿ç”¨DevEco Studio 6.0.0 Release (Build Version: 6.0.0.858, built on September 24, 2025)åŠä»¥ä¸Šç‰ˆæœ¬æ‰å¯ç¼–译è¿è¡Œã€‚ + +### 下载 + +如需å•独下载本工程,执行如下命令: + +```` +git init +git config core.sparsecheckout true +echo code/DocsSample/ArkUISample/ShapeDrawing > .git/info/sparse-checkout +git remote add origin https://gitcode.com/openharmony/applications_app_samples.git +git pull origin master +```` \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/build-profile.json5 b/ArkUIKit/ShapeDrawing/build-profile.json5 new file mode 100644 index 00000000000..847c8931009 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/build-profile.json5 @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "app": { + "products": [ + { + "name": "default", + "signingConfig": "default", + "targetSdkVersion": 20, + "compatibleSdkVersion": 20, + "compileSdkVersion": 20, + "runtimeOS": "OpenHarmony", + "buildOption": { + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + } + } + } + ], + "buildModeSet": [ + { + "name": "debug", + }, + { + "name": "release" + } + ] + }, + "modules": [ + { + "name": "entry", + "srcPath": "./entry", + "targets": [ + { + "name": "default", + "applyToProducts": [ + "default" + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/code-linter.json5 b/ArkUIKit/ShapeDrawing/code-linter.json5 new file mode 100644 index 00000000000..ed05653cca3 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/code-linter.json5 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "files": [ + "**/*.ets" + ], + "ignore": [ + "**/src/ohosTest/**/*", + "**/src/test/**/*", + "**/src/mock/**/*", + "**/node_modules/**/*", + "**/oh_modules/**/*", + "**/build/**/*", + "**/.preview/**/*" + ], + "ruleSet": [ + "plugin:@performance/recommended", + "plugin:@typescript-eslint/recommended" + ], + "rules": { + "@security/no-unsafe-aes": "error", + "@security/no-unsafe-hash": "error", + "@security/no-unsafe-mac": "warn", + "@security/no-unsafe-dh": "error", + "@security/no-unsafe-dsa": "error", + "@security/no-unsafe-ecdsa": "error", + "@security/no-unsafe-rsa-encrypt": "error", + "@security/no-unsafe-rsa-sign": "error", + "@security/no-unsafe-rsa-key": "error", + "@security/no-unsafe-dsa-key": "error", + "@security/no-unsafe-dh-key": "error", + "@security/no-unsafe-3des": "error" + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build-profile.json5 b/ArkUIKit/ShapeDrawing/entry/build-profile.json5 new file mode 100644 index 00000000000..6bf0d132e6f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build-profile.json5 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "apiType": "stageMode", + "buildOption": { + "resOptions": { + "copyCodeResource": { + "enable": false + } + } + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } + }, + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest", + } + ] +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/config/buildConfig.json b/ArkUIKit/ShapeDrawing/entry/build/config/buildConfig.json new file mode 100644 index 00000000000..6dadf83b863 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/config/buildConfig.json @@ -0,0 +1 @@ +{"compileConfig":{"deviceType":"default","buildMode":"debug","compilerType":"ark","note":"false","logLevel":"3","hapMode":"false","img2bin":"true","Path":"D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\tools\\node\\","projectProfilePath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\build-profile.json5","localPropertiesPath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\local.properties","appResource":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default\\ResourceTable.txt","cachePath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\debug","aceBuildJson":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\loader\\default\\loader.json","aceModuleJsonPath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default\\module.json","aceSoPath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\loader_out\\default\\nativeDependencies.txt","aceModuleRoot":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets","aceModuleBuild":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\loader_out\\default\\ets","aceProfilePath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default\\resources\\base\\profile","aceSuperVisualPath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\supervisual","watchMode":"false"},"patchConfig":{"changedFileList":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\patch\\default\\changedFileList.json"}} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.ts_checker_cache b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.ts_checker_cache new file mode 100644 index 00000000000..80678586df4 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.ts_checker_cache @@ -0,0 +1,1948 @@ +{ + "runtimeOS": "HarmonyOS", + "sdkInfo": "false:20:6.0.0.47:Release", + "fileList": { + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts" + ], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Ability.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.EnvironmentCallback.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Ability.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.rpc.d.ts" + ], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityLifecycleCallback.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.dialogRequest.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\startAbilityParameter.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppServiceExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\embedded_component.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.hilog.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets", + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entrybackupability\\EntryBackupAbility.ets" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\BaseContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts" + ], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityLifecycleCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\component\\navigation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\folder_stack.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\nav_destination.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\navigation.d.ts" + ], + "error": false + }, + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets": { + "mtimeMs": 1761463405480.0276, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.hilog.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessInformation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationStateObserver.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStateData.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppStateData.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessData.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessInformation.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.rpc.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.mediaquery.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.inspector.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.router.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\component\\navigation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.componentSnapshot.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.dragController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.pointer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneResources.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\embedded_component.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\nav_destination.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\navigation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\pattern_lock.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\video.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cert.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cryptoFramework.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.print.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessInformation.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationStateObserver.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppStateData.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStateData.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessData.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStateData.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationStateObserver.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppStateData.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationStateObserver.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessData.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.appManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationStateObserver.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Metadata.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ElementName.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\BundleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Skill.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessInformation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\BundleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Metadata.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ElementName.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.CompletionHandler.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Metadata.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\resource.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\BundleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Metadata.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Skill.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\BundleInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Metadata.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\BundleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStageContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Metadata.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Skill.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\Skill.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\resource.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\units.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Ability.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.dialogRequest.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AtomicServiceOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceProxy.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceExtensionConnectCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStartCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\AbilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.OpenLinkOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\EmbeddableUIAbilityContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.rpc.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Ability.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.EnvironmentCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStageContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\BaseContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.colorSpaceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.rpc.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.drawableDescriptor.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.componentSnapshot.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\PhotoEditorExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.pointer.d.ts", + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\pages\\Mesh.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.font.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.mediaquery.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.inspector.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.router.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.componentUtils.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.animator.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.animator.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.measure.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.componentSnapshot.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.dragController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.pointer.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\XComponentNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\RenderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\XComponentNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Content.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeContent.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\pages\\Mesh.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\content_slot.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\node_container.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.colorSpaceManager.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\rawFileDescriptor.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\resource.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.drawableDescriptor.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\rawFileDescriptor.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.drawableDescriptor.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\image.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.font.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.mediaquery.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.inspector.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\action_sheet.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\alert_dialog.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\custom_dialog_controller.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.router.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.componentUtils.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.animator.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\component\\navigation.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.measure.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.componentSnapshot.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.dragController.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStageContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\BaseContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\FormExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\EventHub.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStartCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\VpnExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\EmbeddableUIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\PhotoEditorExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceProxy.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceExtensionConnectCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppServiceExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.pointer.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\XComponentNode.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeController.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\RenderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\XComponentNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeContent.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\canvas.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.common2D.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\resource.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\RenderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\particle.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\units.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\RenderNode.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\XComponentNode.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Content.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeContent.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\BuilderNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Content.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\NodeContent.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Content.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.common2D.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.colorSpaceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\resource.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\pages\\Mesh.ets", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\canvas.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.common2D.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\component\\navigation.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ElementName.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.rpc.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppServiceExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.dialogRequest.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AtomicServiceOptions.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.CompletionHandlerForAtomicService.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceProxy.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceExtensionConnectCallback.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStartCallback.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStartCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\PhotoEditorExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\EventHub.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ApplicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\BaseContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.resourceManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.contextConstant.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStageContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.print.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.OpenLinkOptions.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.contextConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.bundleManager.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.CompletionHandler.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AtomicServiceOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppServiceExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.CompletionHandlerForAtomicService.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AtomicServiceOptions.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.contextConstant.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.CompletionHandler.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ElementName.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\EventHub.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ProcessInformation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityLifecycleCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.EnvironmentCallback.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ApplicationStateChangeCallback.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityLifecycleCallback.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.UIAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.EnvironmentCallback.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AbilityConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ApplicationStateChangeCallback.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ApplicationContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.dragController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.AtomicServiceOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.OpenLinkOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.ConfigurationConstant.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceProxy.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIServiceExtensionConnectCallback.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AbilityStageContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\HapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Configuration.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundleManager\\ExtensionAbilityInfo.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\FormExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\VpnExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\PhotoEditorExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppServiceExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.file.BackupExtensionContext.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\FormExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\data\\rdb\\resultSet.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityOperation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityResult.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.dataAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\VpnExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\EmbeddableUIAbilityContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\UIAbilityContext.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\PhotoEditorExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\AppServiceExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.StartOptions.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\data\\rdb\\resultSet.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityOperation.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.dataAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityResult.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.dataAbility.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityOperation.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.rdb.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\data\\rdb\\resultSet.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\BaseContext.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityOperation.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.dataAbility.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\startAbilityParameter.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\abilityResult.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\appVersionInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityHelper.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\connectOptions.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\processInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\dataAbilityOperation.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\ability\\startAbilityParameter.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\appVersionInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\processInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\elementName.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\BaseContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\hapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\appVersionInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\processInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.ability.featureAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\moduleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\customizeData.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\bundleInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\elementName.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\hapModuleInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\bundleInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\customizeData.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\hapModuleInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\bundleInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\bundleInfo.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\app\\context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\moduleInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\customizeData.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\bundleInfo.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\abilityInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\applicationInfo.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\bundle\\hapModuleInfo.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.bundle.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.application.BackupExtensionAbility.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.file.BackupExtensionContext.d.ts" + ], + "parent": [ + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entrybackupability\\EntryBackupAbility.ets" + ], + "error": false + }, + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\entrybackupability\\EntryBackupAbility.ets": { + "mtimeMs": 1761463405481.0276, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.hilog.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.application.BackupExtensionAbility.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.application.BackupExtensionAbility.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.file.BackupExtensionContext.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\ExtensionContext.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.application.BackupExtensionAbility.d.ts" + ], + "error": false + }, + "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\ets\\pages\\Mesh.ets": { + "mtimeMs": 1761463405482.028, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\action_sheet.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\alert_dialog.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\canvas.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\FrameNode.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.uniformTypeDescriptor.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.intentionCode.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ImageModifier.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\SymbolGlyphModifier.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.shape.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.matrix4.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\image.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.uiEffect.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.theme.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\with_theme.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\common.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.dragController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.dragController.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.pointer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.uniformTypeDescriptor.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.data.unifiedDataChannel.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimodalInput.intentionCode.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ImageModifier.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\SymbolGlyphModifier.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.shape.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.shape.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.shape.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.shape.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.matrix4.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.observer.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.UIContext.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.uiEffect.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.uiEffect.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\ComponentContent.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.theme.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\ScenePostProcessSettings.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneTypes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneResources.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\Scene.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\component3d.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\component3d.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\ScenePostProcessSettings.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneTypes.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneResources.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\Scene.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneResources.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneTypes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\Scene.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneResources.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneTypes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\ScenePostProcessSettings.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\Scene.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\Scene.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\Scene.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneResources.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneTypes.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.scene.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\graphics3d\\SceneNodes.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\content_slot.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\custom_dialog_controller.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.promptAction.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\embedded_component.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.app.ability.Want.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\folder_stack.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\image.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.drawableDescriptor.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.matrix4.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\nav_destination.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\navigation.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.window.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\node_container.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.node.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\particle.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\pattern_lock.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\CommonModifier.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\tabs.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\tabs.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\CommonModifier.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.drawing.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.common2D.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\text_common.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\text_common.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.graphics.text.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.intl.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\time_picker.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\time_picker.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.intl.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\with_theme.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.arkui.theme.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\units.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\global\\resource.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\arkui\\Graphics.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\video.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cert.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.multimedia.image.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.print.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.netErrorList.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\web.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader\\declarations\\web.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts" + ], + "parent": [], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cert.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cryptoFramework.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.print.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts", + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\application\\Context.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.netErrorList.d.ts": { + "mtimeMs": 1758690718000, + "children": [], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.web.webview.d.ts" + ], + "error": false + }, + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cryptoFramework.d.ts": { + "mtimeMs": 1758690718000, + "children": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.base.d.ts" + ], + "parent": [ + "D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\openharmony\\ets\\api\\@ohos.security.cert.d.ts" + ], + "error": false + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo new file mode 100644 index 00000000000..5aecf20e80b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo @@ -0,0 +1 @@ +{"program":{"fileNames":["d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es5.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2016.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.core.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.collection.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.generator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.iterable.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.proxy.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.reflect.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.symbol.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2016.array.include.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.object.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.regexp.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.array.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.object.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.symbol.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.bigint.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.date.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.number.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.weakref.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.base.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/metadata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/elementname.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.want.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/global/resource.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/applicationinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/skill.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/abilityinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/extensionabilityinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/hapmoduleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/bundleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.bundle.bundlemanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/processinformation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/appstatedata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/abilitystatedata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/processdata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/applicationstateobserver.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.appmanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.abilityconstant.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.configurationconstant.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.configuration.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.ability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/basecontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.colorspacemanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/global/rawfiledescriptor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.drawabledescriptor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.resourcemanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.rpc.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.multimedia.image.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.font.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.mediaquery.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.inspector.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.promptaction.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.router.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.componentutils.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.common2d.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.drawing.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/graphics.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/rendernode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/content.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/componentcontent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/framenode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/buildernode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/nodecontroller.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/xcomponentnode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/nodecontent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.node.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.animator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/connectoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.dialogrequest.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.completionhandlerforatomicservice.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.contextconstant.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.completionhandler.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.startoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.atomicserviceoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiserviceproxy.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiserviceextensionconnectcallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/abilityresult.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/abilitystartcallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/eventhub.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.abilitylifecyclecallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.environmentcallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.applicationstatechangecallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/applicationcontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/context.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.openlinkoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiabilitycontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/component/navigation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.observer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.measure.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.componentsnapshot.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.unifieddatachannel.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.dragcontroller.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/extensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/abilitystagecontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/formextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/data/rdb/resultset.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/startabilityparameter.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/app/appversioninfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/moduleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/customizedata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/applicationinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/app/processinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/elementname.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/bundleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.bundle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/abilityinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/hapmoduleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/app/context.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.ability.featureability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.rdb.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.dataability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/dataabilityoperation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/dataabilityresult.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/dataabilityhelper.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/vpnextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/embeddableuiabilitycontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/photoeditorextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/appserviceextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.multimodalinput.pointer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.uicontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.window.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.uiability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.hilog.d.ts","../../../../../../src/main/ets/entryability/entryability.ets","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.file.backupextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.application.backupextensionability.d.ts","../../../../../../src/main/ets/entrybackupability/entrybackupability.ets","../../../../../../src/main/ets/pages/antialias.ets","../../../../../../src/main/ets/pages/circleexample.ets","../../../../../../src/main/ets/pages/fill.ets","../../../../../../src/main/ets/pages/index.ets","../../../../../../src/main/ets/pages/mesh.ets","../../../../../../src/main/ets/pages/shape.ets","../../../../../../src/main/ets/pages/shapeexample.ets","../../../../../../src/main/ets/pages/stroke.ets","../../../../../../src/main/ets/pages/strokelinejoin.ets","../../../../../../src/main/ets/pages/strokemiterlimit.ets","../../../../../../src/main/ets/pages/strokeopacity.ets","../../../../../../src/main/ets/pages/viewport1.ets","../../../../../../src/main/ets/pages/viewport2.ets","../../../../../../src/main/ets/pages/viewport3.ets","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/action_sheet.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/alert_dialog.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/alphabet_indexer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/badge.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/blank.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/button.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/calendar_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/canvas.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/checkbox.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/checkboxgroup.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/circle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/column.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/column_split.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.uniformtypedescriptor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.multimodalinput.intentioncode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/imagemodifier.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/symbolglyphmodifier.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.shape.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.matrix4.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.uieffect.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.theme.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/common_ts_ets_api.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scenepostprocesssettings.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scenetypes.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/sceneresources.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scenenodes.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/component3d.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/container_span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/content_slot.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/context_menu.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/counter.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/custom_dialog_controller.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/data_panel.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/date_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/divider.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/ellipse.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/embedded_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/enums.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/featureability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/flex.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/flow_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/focus.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/folder_stack.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/form_link.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/for_each.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/gauge.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/gesture.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/global.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/griditem.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid_col.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid_container.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid_row.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/hyperlink.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image_animator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image_common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image_span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/lazy_for_each.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/lazy_grid_layout.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/line.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/list.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/list_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/list_item_group.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/loading_progress.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/matrix2d.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/marquee.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/menu.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/menu_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/menu_item_group.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/nav_destination.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/nav_router.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/navigation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/navigator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/node_container.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/page_transition.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/panel.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/particle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/paste_button.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/path.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/pattern_lock.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/polygon.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/polyline.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/progress.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/qrcode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/radio.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rating.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rect.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/refresh.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/relative_container.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/repeat.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rich_editor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rich_text.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/row.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/row_split.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/save_button.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/scroll.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/scroll_bar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/search.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/security_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/select.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/shape.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/slider.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/stack.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/state_management.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/stepper.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/stepper_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/swiper.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/indicatorcomponent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/symbolglyph.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/symbol_span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/commonmodifier.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/tabs.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/tab_content.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_area.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_clock.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.text.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_input.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_timer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/time_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/toggle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/toolbar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/with_theme.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/units.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/video.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.security.cryptoframework.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.security.cert.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.print.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.web.neterrorlist.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.web.webview.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/web.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/xcomponent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/sidebar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/water_flow.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/styled_string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/index-full.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/animator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/calendar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/form_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/media_cached_image.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/plugin_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/root_scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/screen.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/window_scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/ability_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/remote_window.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/effect_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/ui_extension_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/isolated_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/linearindicator.d.ts"],"fileInfos":[{"version":"be8b901880718680b6c067fd8083bd5b04cde401c1e1123823e3068bb2e0d282","affectsGlobalScope":true},"e8d2e50f9e8fdd312d31f97571b4c7295b8f29f7f8363498edae2a9eb113ee36","4b1854aec637e8e041eff02899e16fd3c0c78685c622336aadfd67e6604bbe1b","d6f7d47355a0167969e9a8eedfb0994f21e038d360965ec06c30f6871038900b","4735756aff7c5857de387f321633f272e2daba4950c427ab200de954340c7c13","13dfb22c1b46f9858b19fc7df54674146f3d174ccd35f0e02e8d05a3026b9ba8","33d21bcca0f7b054d0d0d402125f547c9ac77782c2df301de314143f08e81406","80510205fb587019e1ad42bfbc046d4f55f3c5a1c8b3debca7d6fe0adc93959f",{"version":"276144a8254bed55adae6f0646c37a2cd11575ac2cbc679bf7ac0419c443fd58","affectsGlobalScope":true},{"version":"3523038578cadf637fdce58f06018e144fd5b26c12e3f9c1cef14cdf92ca3d20","affectsGlobalScope":true},{"version":"28065193ddf88bf697915b9236d2d00a27e85726563e88474f166790376e10d8","affectsGlobalScope":true},{"version":"511c964513d7c2f72556554cdeb960b4f0445990d11080297a97cc7b5fa1bb68","affectsGlobalScope":true},{"version":"725daac09ec6eb9086c2bea6bbdf6d6ab2a6f49d686656c6021a4da0415fe31f","affectsGlobalScope":true},{"version":"21574b67bbedcb39a6efa00ca47e5b9402946a4d4e890abd5b51d3fd371819ba","affectsGlobalScope":true},{"version":"2415a2b1a4a521594b9837316ae3950b0c0c2f8b689defd358986bf3e263e904","affectsGlobalScope":true},{"version":"e5d8d715990d96a37f3521a3f1460679507b261eec1b42dc84d4de835997b794","affectsGlobalScope":true},{"version":"93fa2a84417c65ab8ed121a0b84536312e00a11cbf45b0006a75324d00b176d2","affectsGlobalScope":true},{"version":"a003a6051b48dc64eaa8ad83789e4c2a540f3482bed821053b6770969bd598fb","affectsGlobalScope":true},{"version":"e90857fa86cecc3bc964a2d7db9d95a0c406bebfadeb4853a01a0079936f12f7","affectsGlobalScope":true},{"version":"8bbb03589e48f10b49996064f35256e858d205dcb364428fb4cc045061b1d786","affectsGlobalScope":true},{"version":"5044747370afee4b4c247e8a14c2969d245bbcf8396295dc5a60c659d796a71f","affectsGlobalScope":true},{"version":"8e4921934f4bec04df1bee5762a8f4ad9213f0dab33ea10c5bb1ba1201070c6a","affectsGlobalScope":true},{"version":"a894424c7058bcc77c1a3c92fe289c0ff93792e583e064c683d021879479f7b8","affectsGlobalScope":true},{"version":"8f03386d697248c5d356fd53f2729b920ea124cd1414a6c22de03c5d24729277","affectsGlobalScope":true},{"version":"21ac76354ecc1324ee2e31ac5fcebfa91b1b6beb3e8c3fe6f3988538e9629c73","affectsGlobalScope":true},{"version":"ecc058373716a6bb19a4492ac553b61e3ebc0eb657407b6ea62337316885b64b","affectsGlobalScope":true},{"version":"fe7acdc1039eca904399190766d1c8766b7d2621413f972c8542dddd69612097","affectsGlobalScope":true},{"version":"c25aa843b930662d62f0e853dd1f347d08b66cdec09bd760151d4ba6ce220fe6","affectsGlobalScope":true},{"version":"3e47477f297e4fa0d556c40a872c2c45bddefa487fd054bf1f80bceb527a682b","affectsGlobalScope":true},{"version":"a902be9f4116b449dbac07ffe3f4d69abb664f8eddfaeb892225612469213788","affectsGlobalScope":true},{"version":"155d8d1e367e05af5e5708a860825785f00eabae01744cf7bc569664301415a4","affectsGlobalScope":true},{"version":"5b30b81cdeb239772daf44e6c0d5bf6adec9dbf8d534ed25c9a0e8a43b9abfff","affectsGlobalScope":true},{"version":"cdb77abf1220d79a20508bbcfddf21f0437ea8ef5939ba46f999c4987061baab","affectsGlobalScope":true},{"version":"62e02a2f5889850ed658dfde861b2ba84fb22f3663ea3b2e2f7fb3dcd1813431","affectsGlobalScope":true},{"version":"357921f26d612a4c5ac9896340e6a2beffcaf889ff5cdfcc742e9af804d1a448","affectsGlobalScope":true},{"version":"d836a4258d6b5ee12054b802002d7c9c5eb6a1adb6a654f0ee9429cbda03e1a0","affectsGlobalScope":true},{"version":"c021bff90eb33d29edfde16c9b861097bbf99aa290726d0d0ac65330aa7be85a","affectsGlobalScope":true},{"version":"1c4e64dc374ea5922d7632a52b167187ba7c7e35b34d3c1e22625be66ca1576d","affectsGlobalScope":true},{"version":"cd1bebc4db8fb52c5618ecad3f511f62c78921451c198220c5b2ee5610b4d7b9","affectsGlobalScope":true},{"version":"fb60e7c9de1306648f865b4c8ef76b7376731af3955b69551004ad3848fb8f4c","affectsGlobalScope":true},{"version":"18d23591bba5678cf57ef139e1a3daad8017b26ad6612c8c34d6fa39044b245f","affectsGlobalScope":true},{"version":"868df11ccdabb6de564f70b68aa6b379a243ef32c8f6ee6dc71056a3dd54578a","affectsGlobalScope":true},{"version":"cebef4c7f9b6afb02cd08e7288fab05d0be3e3c898c720775b8aa286e9f7cfed","affectsGlobalScope":true},{"version":"7e3c49afe9bf537f68ce2487d7996c6e5c2350c0f250939726add1efcb1bcf01","affectsGlobalScope":true},{"version":"c7673e88666f933b0d007e82e42b60e85cf606ec247033e8ee5ab5940e4be206","affectsGlobalScope":true},"18c90c5c0cc77bce15249c3b628f54126680dca8e8f800ae13c6827577d8d7ff","0885aa6e52133b13da14bd23c6e2923eb41f6587004d566b7fdcd643003f85dd","41c21e94cc18d83501abacdaf56f29ffa89e64a6dd5449580a53f7c834d487fc","734f6e14694c64bd97f1043a47397565d098937d35301b18c8670612a4e159cf","ff3b80b87f5c428ff03782f0036d2056e1f371b828f5fd1397064730c35c1c2a","76d8f54d8fa8b072116d014f52f4461a30652dc66260903f4897cbe7838ce373","5c5627008db0c037c148380ab9ed21004ad2e33df3c693a5f750a84fdb182c34","b2b5603060e1d6b2982cb5670e4c9f2864b185276e63bbc903d3a9c17ecdbfb0","90e2871e53f616739841e476f3054c5ae40255095aa2e7459222c4dc15e838b0","783616dbe6f5eb8691d1c390e7b089cbadafa32bd00b0c70c04d41407a761d69","1e597215fe046a63746dba7c4858158640e2604eedf9846eae6b349124ee29b9","ae2e5abe87b1a08b722b2eb1480ed06320c3f3f4d0d6dc44e66d08ec329d66ef","21930bd35ce5693ef61bd468014596dfaa5bd6b6c2d4f59f60844fac0eee384d","84912c4054b88f51a421edac0e72c3afffa6e13234d81b9a1aab9c9336830ce4","d6b557c3349079a11c7699cc680f0a9c9f709a09019d45e5e065985ea3919e9b","d720df61b68e1ac759fb8ee19a85b2d64d5fadc4f0f4a8c8e7b55df67a3f1775","acba4d1a0998ac6561b9a1aa15c6b1125f769f046cb38d325856a40b768cdaca","f3aeea828c0af07cee7cfacc5f7f5dd5c7f3e67d8bb63ab279c61c0642194d7c","620b7c31b289e834d976fa4c5dfd04ed9f0923ee5f7641b86fcd532baf2565b6","59076a01123585639ac35ad1ba8fd1acceee2335fe1ffcbf032d38925e47bce1","16820b43a1c139ef435c5dad03ec2a7f91c6e0fed732691ecba152ed1b44cd52","2478abad18abd3df6315d031c62f01f83a91caa634f35b17465df224608a8ac0","a8e07c1a2f8475fbab17dda22a5f51e2d26fbc39603cf3b18f9c0ae2b519e55e","9e35cb3a784322d79f1fc3e5f1f838baccf6e4897b1ba7ca58a0e85f5c62d392","2900121efc03a6a977643fe47b1f57f5d23e2ab7b4cac525ff41f6bd481ca52f","c855e91f562922633a8cbb28b6bf142242a831d861ba23475744253f5e37b95b","024f0f2569c643dc83c8e4ef7432a00186d101e7424132f88fb452f311b5d884","7b5f82b0e0cdc724a3b14a9c8bfce48ca8a5e70fa25f3f55503c4aeb84d0815e","fe89cfcf174d05ce0e14b241b1f456e98100506442bc434c254b457175043d64","a0577605aac5da0b747b491593a469584f0005416e52dce21fbb970abcd115e2","be201049e4d4638501f377c34d5318a68b41548a1a2ee577a306aabfedb05c93","95fdeb811613fe4b7db3766ace5232f7b0830a84bc4eeb5db6fa7c327d1fbbfe","9f17874d37b0bb6bc111469635ff0abddaa39c615d5459354044e5b920d8c095","ae6fbbd727e947b2214d28fb53875d98fee0cc796ece51d34f42475c0b5dfe69","7b071796c9afe1026dbc08854bd73d7f7085f97885a2699b45852808f9d3ce82","f83ee958f4e51ff58ec869784ca5403f66e111488d80ad8ed55e43fe96e79546","44f591ebb300365d6ebcda253431a049d45aa74c5717e58055d8b804bd2a8718","c59d5014d6310118454fe99540005aa81f41a72326eefd3d13ae3cb0a648b008","04d7628b1479c95bb2385477c283fdbf51afe60db51acf2449293c9303374cd8","16d269cca8715b0ca8b907859f6cce45f230f1b55a6429f267e4c5a8aa7f9d17","69634b06c488b31c03055d4544fddea21f84c1b0d052784ccd33ed6527b08131","b840440738eb0014fa755aecb6c49f70c907cca21c78a247b058156ae4bca715","329edb7e5e887dee7d365a60f139fc36de2f9a441abdd690c93bc5a45e467163","3f9b161e68bb7a52a3171cd1144254a968c8d2bb5b6b41ae30d93d5131aa5980","53a5c6a0ecdf633bea0a5ffdaeb9425b01c350ece3ef11b53301eb08bd9dbbf8","dc132b2bfd37756d5385b19a8972614ca9de8bf8264435096283230ce0d1fb2e","a480bb40ed9139c1886999772d83f2d46d4cbf86449af3c606dcca1dbc38d087","be0c35d4b8a3e29f1a98636e00b25ff9fde28e7b2a9eb7cda2c646f13751f1dc","5d1e8f9c86780f23962980d995e80f70cb90173100c4f3f1280c651c6dc22094","2238892eef3efdeaa60f96d62943897ca8c945dd6fb230ce71d2d9ce1989c30d","b77055b21a6390a1053cf3fd95a830c51b0a0b317e1639d0d029bfc637fc9984","0c98893d17a23b9b9a68328528d408ac9141b4d4e3fb5b2b38e6895c4f98aaed","a06221608f5d45845214ee4991743c1e7a6c91fa2addd3665d618abd1f940be1","5bf7782d5dc0ffb156bdb4b981e56c066247c252e7538a32efcf97ab6a65e5d4","45752fba2bcc8f837ba1eb959da11f22584ae2288b3cd0c8a0522c3aacbbd928","ee67d9b87041e39ed225a1c5e815d839985dfc9b6e12af1c96adef07b37251c7","c585cd71cd521f4373ff211223d2487faf3a467037b8e6ab0fa112551492b4c8","0cc5c94908b284934cc25e6bd28a612650b9644d64ce21248732f8ad95625cd5","105a88bf7880674f76b13a3100c47f22f72b2cbe30f42115bac1d45a772bd4a4","e6d653e5102c35235bf08d13b93ab1e229fe3fb4f734a06bf3e268f6be7fa0cd","500cd84a36eec70cf12d75d8db0482692947137231e5b56d729ee01d5799687e","486609fe99f6a3f875a7ec02440f1442f9f70d1b960b25e487d7172fff2145e0","7067a4950c4dfa1282ac4b2af9ea9d6f654ab9ca4874030b0ce08eba113bb788","5ba940e673cb292665db309eaf3cf3b6cd562c69c7d8343e92d351cafdda5de0","1415aaa37727b9d971f5d90855be88e9d6d0f91dedb5f448bac516232c0ec53e","1ee4140494ebdaa4971b592cb59603953c4f613a6707069292e04006a41eb4dd","bdc21c1c6547a171df6e036e256ea2a08ec3fff1259cef232f34b796e27cbdfa",{"version":"a1b442ee2c5708d05fa6267dafcfaaf9052aa5b1f2b96afd87d8bc768d5ffc2d","affectsGlobalScope":true},"6e44d700d4da368e0baa78517d2fd699302b6ef24908c9bfcb329e1a1ec4dae7","2fd4536b789dffa504fa1060d29618e0898f63635fc5b6ac8f8eaacc0e01a435","d73b0df62037fa7d8e447785395076fc48a7529a86d21951bba43b7c2c7e221b","ae34c262f096b945f4104faf1358983ee865fd67a31df058229ac2fc43cdc60e","18ae3d0c60ca49a89e37b243d5692b946f3863e6c6b2a5e2f806cd9fed499e81","ef2a7b4201827194eb706b950ef40889d0870f402e610cb096d86f0bb2d3bfda","33d2db33dbe83d05305a585bf6c0c083e825270b53c56ecc69584b3a6343903c","e15a16903c5239648c795bc68acdc833f6ae58daf7cbabad085e372ad2396a45","062845bbf8e7d38e456b9ad7d53248ba7e1c5b3f061edafddf0d3820488e6648","eb334428756c8c94fcf87fb74ff084f243de6595d19d5875a2e83cfdf645fd67","8e0622fd44e6fc146b3b431cd5433449bcc7660b555e6e6175926a5665353ad4","0fe10efa53a287daaccba7fa70bbf20820ead1cd0c011ad59248f04cea5f3534","6534aeb84fdb78bdf07dd551c70e5f859c28a08b00507446b1043c20526feb9d","59528c8bb0cd15a4e2b544547cd324bb3a1153ebd52beb99c1f36f5437bca908","7542f446bc5bc9148a8443618064cdd94ba23293716dc839ea17e79dee318b45","3a5f3b923aa0dbf9d743ee99961763d38576b11ba81dbcd1b90c046f52d6071e","53b8801feda0f792b5959291f0e760ed1e013a78fb4e22072b663a76eb47a368","e440c7066c19e60990f65eee96ecd5fe22cebf754376c0732a29ee4a11cfd2a4","7d81efdbf839fe9fd65d580a89b98cbde2d89a822d22e2e8e060921ddc93cc9f","f5c03ad15eee48dedd7bdef771d50369c70fa70b10523ab777e925a4c90dbbeb","e79dae84c8e3d36f8f47f2da99a824ebee5674af266cbf274355e1b058fb219b","8c804ac09102ae81cb3a5bd3698b0bbea4ee98bcf1c67ea28daf963e01743cc1","96c6b16e1aa7514e7df94ee86e534b8c06301470960072fac70099e93cf53efc","6c4a9afb20d47e984c4bf2e586b9652073cdf9f850cccee67a3eb4144ebdf147","2644ca9cd4f4d4f4192686f8df72f9e414341fcc40bf10383fe94d3ee7a148ac","383f35282369bbe076f1203bb8db614279bcdf69d3997a7ed8cd02b885aabcc9","64322c0908a6e5cce21f118b77e1bfa46ea39abb05fea77bb9369705e3b8cf47","97e9592d53be761c186124ada0363ffcf29efd028772f317e252e31edee3f84d","6e9801e6ddf7c3eeeda628c984737cadcfa7d075866ec59d0a66d0443aa3fd58","25d084c26f6956c51674a81f67ec88a0d6393e2582199243f06435ee0c2a88bb","bc6faa40ca044b14b715e85fef1ae84e35bd773a5aaad6b78f48d73da135e7b3","67819e5de1ef35de58abe6fcd4b48d4a9cbc9e7d3d72bdbef84366e06f8eacbd","4b6adcdca1b49c4a8dac544448a554be3dab44777a9e71dbcb616f5ae2a88cf3","eb5f405d8ca352dea6f605738c0ad6cced8837be60e64853ee067922d1bd0251","9037ebc6080ee87baf79279684015f7ebaa2a71c2b410707f0c7a5968e331ed3","0673364463a46eaccc54cada61bd168b63db49b4eafe73ef44bd3763dbfef653","0f5d7b3c98e25df635a065681dbbaf399e55459367ffb3c19169141a4704ead3","18d9c779b4f7ed8c70e708f992dfc5b0aa914460a83a1152d6456e1274fc6b11","3338f7a65b34f7b79c00ac82761604aca6f1d2f254e43f0d213a35979603317d","a98e4114fa6839755dce055ca4b9913ab27b0605a964ebdba14571d261fc57b9","c0dc66ec8a658536f71f7e5bf86971c960a7c8f886e76a9571ce66e950421493","f8d3ade82e1108429553ae2dbb29071be7ee3d4b39b1fd6305424ad740908fe0",{"version":"faaffd995ba5b9b8cc8e87e0fffa69fad2562079654b43847984aa51b0731a46","affectsGlobalScope":true},{"version":"f99ad49a5ca9d2427bd8d36e2f0d5571e3c946faf125ceeb8a26792d63ff6e4d","affectsGlobalScope":true},{"version":"01a9b441427e3f5a0760c736cdf1e981138cbd273caeaaeb5fdbebb6f9693bf6","affectsGlobalScope":true},{"version":"cb882b3fb18bbcc978cc4cbe8c003cba929b7bb8532398b6f5ac87a57faf2a6f","affectsGlobalScope":true},"3da76e169ae0f972ff10501ff09afe4219144b52b08ab4b14b502ab699aad896",{"version":"2a63d19269f29df9a7caf3f44b1be7658e46469f77142517f946d782ed3f597d","affectsGlobalScope":true},{"version":"06322dee64b8692adf320dd8e9dace92f1b79fddf651a7a44bd4b9c1a4833caa","affectsGlobalScope":true},{"version":"39c3f1852def2308e7dcbeeb5f94a2b8b1c891e5a384938f92823ad76b4506e9","affectsGlobalScope":true},{"version":"94f0525cb18c93d90bd5a3253213a3ff475868ef4b4d88fccd2c2d3f09f55a9a","affectsGlobalScope":true},{"version":"2132b452a12df287c93b84fef72e521721d3b619cc7cf4a831dfd83eca312995","affectsGlobalScope":true},{"version":"759aacb5f0aaf9c3c323569f7f67d9537f7541eb826dd5228ef2c0d5eb1453af","affectsGlobalScope":true},{"version":"99681ef954a75e37f54153e54ac2c720d1f347212421addc60636a7b3e734a52","affectsGlobalScope":true},{"version":"20d3796c3e58e0254f925ffa4e05fa3ef44e9c36b1a17a2ec5097bffbfb60bab","affectsGlobalScope":true},{"version":"5ea7f58ac1f9afdb53e53d1158e6f17bc6d4f870cc1bf4ced939b76c4a1ec568","affectsGlobalScope":true},{"version":"96e15690cc2379a8b1b4d891b9714785764daf37d5af0996f9261f698b90c1b5","affectsGlobalScope":true},{"version":"3f80769e98e3c0415ebb402dfdf74d97d0d1ee6e4f3b97e6ee3bfbd3109c48e7","affectsGlobalScope":true},{"version":"be6e8ce9d89e6ae797bc5fec1dd2bf1a3e5096819a740e5f7d990ad052953f04","affectsGlobalScope":true},{"version":"6b6cfa0fa9528f829fa03a2cbcb1a9a325800daed455ef111ff15d8d6be8f39f","affectsGlobalScope":true},{"version":"2dae1085d34be82cceaa9da090d387d6a0ac7587ce93d63aa5e3ae5577338bc3","affectsGlobalScope":true},{"version":"ffae7fd73a4a74451be1de4ac54f9686aa321d0b5c633014ab336cc0b437b80a","affectsGlobalScope":true},{"version":"d1c9e5f0ccf6c9dec445e23f6c7806b2ec253fbf40975eda3851093cb7b5cace","affectsGlobalScope":true},{"version":"705d4d41c465b766928595f27e0d6e2cdbbc9b9874492052e171c92424bb7b8d","affectsGlobalScope":true},{"version":"353273db48805fa739de275b52173cb3edf2e553ef86e7813a3f6e4a1d4bddb7","affectsGlobalScope":true},{"version":"f6f74d538cfe5a140e54b23bb409c2225d0412636b8767cd6f8e91267f5b2895","affectsGlobalScope":true},{"version":"1b818842e3d38878689b2c2f3ef055ced422697dc9979976c489a06ff06a65b9","affectsGlobalScope":true},{"version":"7c0ae2a94e7a1a4571cd5dfdc4debd3833c4494ac90e008f6186b86ab61ece10","affectsGlobalScope":true},{"version":"26b491ab4cd40c8a4a797912bb77cf6656f6836d7d7dd83d110c44d3be50c7e4","affectsGlobalScope":true},"748d89f0afe6bab24b161aa0c139a2b91ba7ae37219b842ff6441fc965181713","aabcc875047a9ce097df133c01ccba6e6d1a70f9b3ebe16edfbce541b711d278","d2f0b25716bcf18895c71306abda91b5c9e5720077522060c5fec9bd1d755c03","8c107d9768a16d54f16190b0d6f33957d4bd41eef4fb7ef6b10fca0e5a39a587","cd487422606842bb084a6645f4353a8ee1de9714959c7d8cba214a460cb7f493","77bc4c8fb72b564df020bc3e2b49978f113e0388883e48d5149c4599d422529c","838fd41bfdaab921a26d32d8730b71101fd06e651d7e206324302246a9886243","f3fa1713741b3f7d07ed6bf57134fcbb6729e78f789a910b7e969403b9840a0f",{"version":"024e075321a9059640058c8b61bcf80f241318d686f5f870c33bdc769a53e559","affectsGlobalScope":true},{"version":"dfa1413db6ee4885b5fd49a8edbcd1ee08d8a983dd6b2399992da08cfc455556","affectsGlobalScope":true},"32dd1f6fa95589df742f0e5dc59a39617b85691b3d485a55d05949e6a277c341","61d73ba02b770f68da0d5df5abe6c4b892a94ecd791118d4c5eada5689127505","fe64e214cf336c5f3f188328c53bc015bfb5cd8b9a08855e8eba6154bf514dba","a6f44c7a5b4fc2e6aa37f4aff3944ca4b875e9f46f5196f93830fb88eb04e890","c3310cd0ff3c44be30be014909a718286897be09a3e4919512fb32d91e0de558","9febc93b9612a5081040535a0cc788716ec7ffc0e182517ad1057647704bc96d",{"version":"cd734a3ceb5b1343e1d92f40813437e25530eb5b7ef5154c90b46dec68e4caeb","affectsGlobalScope":true},{"version":"1d26e6d3045e6aa4c43b1b3058fc150ea0a3a05b82f832ce143cfd0d83713758","affectsGlobalScope":true},{"version":"328c9a08cfd0be25d4b3f33f60b21ffe469885f6b4d868e704fa45b4a355b7ca","affectsGlobalScope":true},{"version":"eecedc013fd6e67e7b2727cdf98fefd8dbfd833686a458157cdb305c576f2ee4","affectsGlobalScope":true},{"version":"009f50b2f451600f3b511c7532555ed02a44b93853325b72dd3b979e8ce6e58c","affectsGlobalScope":true},{"version":"2e11c2fbb7a11c2bbaf75a03876f6d0142cf5987e1deea4b1db88d175e84a8e8","affectsGlobalScope":true},{"version":"f2bf83fd6f73d59d35c157612efcf5636a02bea68dddd457edfe396241506b94","affectsGlobalScope":true},{"version":"e6c1aa24b636629fb3a8d69bf78a7d93d7f7095eb96e55cf6b30f45d3b48c2a1","affectsGlobalScope":true},{"version":"491ac07cb7139d2c9dd1fb834df8a71a34b3afd1fe7ca2abab060df7b025b974","affectsGlobalScope":true},{"version":"809d9fbd0d3d0f09074389672b7fee279bc5bbba8b4058b9fbcac91eeb904e9b","affectsGlobalScope":true},{"version":"d84104ff83394662482270c22f3db767397ead8f356c835215ef209f61331000","affectsGlobalScope":true},{"version":"9cb312e2f01112b3826155fb56d56e3e4d7ddd4ede6d0c2f87d655a39bc826ec","affectsGlobalScope":true},{"version":"8b0e1e59695dd28adf930fa4f82ee7f34789fa179837f52fcaa4e56478080974","affectsGlobalScope":true},{"version":"6ea823d5666499a02a3803899588d5337ecf7fababfc27ef1eff214526429f5b","affectsGlobalScope":true},{"version":"34e04261f8d46785867afa92ce6ce81f656228b9983927b9106605ea80399f04","affectsGlobalScope":true},{"version":"8be0e01065b88a7ae97de8138d5561ee34b4dd52dd261253652af6e2999d6220","affectsGlobalScope":true},{"version":"79560e3396417129db53868db639d5b55ec5d33253ad6ae074e94d901599bd7b","affectsGlobalScope":true},{"version":"7a1fdf8e667f526c7a0f3ad9fd8c11ddb3203837294ed277089f7bd2b82753e7","affectsGlobalScope":true},{"version":"399edc722872d367cddd6cd495369534cdbd2d30583889e83d3ab183f3446467","affectsGlobalScope":true},{"version":"953e4e86ef7d072197a5c535a547e7be231b4ab34ebba8d8fff9b752dc63c416","affectsGlobalScope":true},{"version":"90763cb92024b4f3a71ce52e121a06eb37875a7103952acf4bd34f821bc38799","affectsGlobalScope":true},{"version":"27849691ad382edde70c536ebc0a8eb8a45d69360d4b78eb49be2aeb8f0f9ed5","affectsGlobalScope":true},{"version":"1e65a598e37ecb4fa64c85f7cd420fd322612f10458dedc195a55ed7856e3ea4","affectsGlobalScope":true},{"version":"f07f6f392d85adc461612b9fc0114b19e19b03f4e0cf2b86bb17a2660aaad8b6","affectsGlobalScope":true},{"version":"e3444fd440d71f349fd854b42b955316d02249dcb5c5fd3da770388fb93a5011","affectsGlobalScope":true},{"version":"58c153487cdb0395e0602770d51dcb9b49f123e9e361dac849000ea98bac381e","affectsGlobalScope":true},{"version":"556469c9300b8bdf20ca790bccbbd6fc6697bb5d70cb5e921314fa89f2a21834","affectsGlobalScope":true},{"version":"0f7f6bb0ad58920c9f3fb76920826678bb5b7c71ea665b8653479139282039a8","affectsGlobalScope":true},{"version":"d16a8d241066333f1cce03ca06881e042a212b483b8254cc96c9596d9eb8a08c","affectsGlobalScope":true},{"version":"ba8a5a9383147b5ee09db9f7a44d99e9b2721dde4140755eed385386b724a06a","affectsGlobalScope":true},{"version":"a82fab989da9ffdf06c4cb390184f59f40a88e0f0b773fd9d30f1030a4bdd133","affectsGlobalScope":true},{"version":"3babd328660263e70db849a19469ee97eb26fdfea5159739c6ae63f11ae3a296","affectsGlobalScope":true},{"version":"d839874dd15f6ed348bace3842d483b53fb2933a67fc7e15414a6fb8513f9830","affectsGlobalScope":true},{"version":"b0bc815e0adc758ea47d6d3d0197b08f8d20edf56a8f7dda51db6576aa492ef0","affectsGlobalScope":true},{"version":"4e49bff690806c16ba10951046d8752d729031c190479e7b8d3f7ffb929add5b","affectsGlobalScope":true},{"version":"b8da7b98a977d6ccc5cd01ae6f3ac805a01390a78995be8126ee2b7ee4d8fe2c","affectsGlobalScope":true},{"version":"d90ad509192026b7ca61fbe15bb1b509c8c4377d4d184eb0f2c2f5fa6e55e207","affectsGlobalScope":true},{"version":"8e094675134039e83ea5c0e237a7f1389f6c65f66a453329c615ff2be711d4f1","affectsGlobalScope":true},{"version":"265e798c386cb4d68884c27cd3fe18b18531fdcf8b06a6f5f0457d5708409313","affectsGlobalScope":true},{"version":"1111132f62a1fa6ae7d0f4d8270351f96f4ecd605089e4e05062cc345f0ab8ba","affectsGlobalScope":true},{"version":"8ad20d4d07985a03b06755c578f8c5e61959b70c08aa6adf6834dceaa45038cc","affectsGlobalScope":true},{"version":"164cbee53b866ab7bcc1e27be9ca9425ad6ae546d428053c1390f39247ae8124","affectsGlobalScope":true},{"version":"4f4b54dad289cc7da8173f85edf66bcf34b5117d55f4f069154519cfea3ec864","affectsGlobalScope":true},{"version":"8833f137d183571bcfb39b82446abb9d1be5587de2db3e67e69e879e3c36440a","affectsGlobalScope":true},{"version":"2e543a7bcebb6b524651629de4ed05a093f30a979531c1900c7f95c3321b5a53","affectsGlobalScope":true},{"version":"110d2fbadd2fd7713a988779de06f5981e89202f470b1c6f03bcc4676e031942","affectsGlobalScope":true},{"version":"c4dea040deb2f44da458e0db699d8cc07f7a3a8273fb289c26c931cc69c34a1c","affectsGlobalScope":true},{"version":"ed0d1670088a608eaae7baebf7c3b0ad740df1f6a3fbf2e9918b4d2184b10418","affectsGlobalScope":true},{"version":"3b6e856ed84b49d4d2da000fd7c968cbb2f2f3bcb45aa5c516905bb25297a04f","affectsGlobalScope":true},{"version":"a8a6f58d770f1070c632933a238e5c2a3f9b93ee3748fca778741105ca51b42a","affectsGlobalScope":true},{"version":"9737e958668cf4d3877bde85c838d74a6f2399c55aea728330d6757f886fbd47","affectsGlobalScope":true},{"version":"a7c2fa80d163ae228a5f81cb93a1ec3f5ec18448c16ae6fa2fc0af8ff8202142","affectsGlobalScope":true},{"version":"ed92cc55553d5625fb29aa7a56ef7dafef214ba67569a5ad2090ff1210b7a7ee","affectsGlobalScope":true},{"version":"7d39efcf0a7e218d29702ad1ecfc1a819b5d19ead4e297edc51e1e4f48b01f70","affectsGlobalScope":true},{"version":"aa2a62fc51ebae2f2a69d0eeb18b7c9772b088c4bbf3d9e54455a02f98250aaa","affectsGlobalScope":true},{"version":"701ba90d14b2e21192f6184eae5927c5361449a52f7a97d24760f40de985e6a0","affectsGlobalScope":true},{"version":"7c56364ef045ad4a2a9093201e7015cb6dbd33c1789f375ae45ab745171dcd10","affectsGlobalScope":true},{"version":"ba14e8fd121b7b8ca07806f8902dedb6a78aa304cf3f29fb4d550c5174cabad8","affectsGlobalScope":true},{"version":"44ce2c9c3eab14339cf368213acd36f968652894a9c1a1db8f7980c5dfe0b062","affectsGlobalScope":true},{"version":"641703298fafc5cac58bfc067880d3a7d15dfa63014eff307fc40606d99f7695","affectsGlobalScope":true},{"version":"0258b20790ed0fd4fb112e5340d489f70f5ff353020926b395dc32e09f22a422","affectsGlobalScope":true},{"version":"fae2d8d01d5662e8c4602ffbb5c69388cc8a517c38a0d22f17c5975a008d8cfc","affectsGlobalScope":true},{"version":"8743407239e7e664b367343052be4a208d2bae2dbf09de62602c7045b642608f","affectsGlobalScope":true},{"version":"1a3d3001d09a11acca5dd4692dfbbbd526265e5bfb923f127eade807e96194a4","affectsGlobalScope":true},{"version":"bc343f02b56a1d98c7a6af5fc7518d79da9fd1f49cae4b1b97bf68de638d92e7","affectsGlobalScope":true},{"version":"2d8146043e62b7dcac961550e314acbba75fc14a78ccbebdedbdf3d29ee12bca","affectsGlobalScope":true},{"version":"c85bfc4b4d31ced03d7d3b36fd0d5c687c2fdc79810c4747087bf563b73fbec0","affectsGlobalScope":true},{"version":"6be5c828035b956f4136ccc865ecf914d1d966ecc89069e436997a595e0d47df","affectsGlobalScope":true},{"version":"e597e2399a2f5c999202e1bdfa1b0f5900f151b36b76f2d908ab74f2b4953dd4","affectsGlobalScope":true},{"version":"c7d982a2208e45043ebfd7891656f2ea115d4d119f2fc588355f7497b474b0e7","affectsGlobalScope":true},{"version":"5f1b7ef960cfed544094539c33810e5c3356bbb4901a857f240ff3bdd48d1d21","affectsGlobalScope":true},{"version":"f6a38297cf4932bad57637935c7567e5ebaba358d9d1ba05e93f09532b6e3038","affectsGlobalScope":true},{"version":"b7943bedfeb28fe2faa5e470425dd53efb5f8f7f36b2cfa8c40101490b892a95","affectsGlobalScope":true},{"version":"71b0196e3afeb2dd6864b864ea674d488de715f404b58e23e31dc05785ab8aa1","affectsGlobalScope":true},{"version":"6e4143a7da65fb171693aaeabdce2ab45918b64f4376ffec7be9bcec3d98bfaa","affectsGlobalScope":true},{"version":"fd6be01b565fca71bd6fd1f0f908c55ee0ff3ebbd1c3164226d1658da31ca662","affectsGlobalScope":true},{"version":"778132080567d22448de92f3d521fa5ee80cba17c4b402a5eee82cfd0da119cb","affectsGlobalScope":true},{"version":"5a895045b978fa050cd0ba6329ce97c435da2746a1871eb627ccce3f1667437f","affectsGlobalScope":true},{"version":"62d46230b41ce40023bd02ab1ba87f67a4a2596a3d6c62a66847ae86c4aed56f","affectsGlobalScope":true},{"version":"1667c3cea4df08f3ca882c5aa89d1d30828c5f7fbad5d7b99078cd02883c0e38","affectsGlobalScope":true},{"version":"9275648e986dd11e14b0b34d99aeebf0b632f3437fc636fe748582c3ea1f938a","affectsGlobalScope":true},{"version":"0050c919a6db04eb1161549c0b9883f07e341465f979db510381010884820c69","affectsGlobalScope":true},{"version":"8f3491349ef151050e0d8627ca0df34022a514df6552525a727fce0bd63d4d13","affectsGlobalScope":true},{"version":"dfe39326c357ad5c2793071529c2fa17016b1f33aaf2ff68f145f2bf547ba1a7","affectsGlobalScope":true},{"version":"7027679520d93e6d578e95ea194e421e709fbd20ab5a638084306cfed0c4c2f8","affectsGlobalScope":true},{"version":"5268624b0726192556c5c0be40a7a2479c40ec3b0a7732b7644ba6e079f20bf2","affectsGlobalScope":true},"5f2812985cf17f59db22b3f65ec76e1e7065d0e0d6d7f9a557e84f8a2c29e9f3",{"version":"d93627a771eb3089eb4a10d4687fda916dc9d73b02b01c3d87f6519482078863","affectsGlobalScope":true},{"version":"d084060ff7327f0c485b6efb3f1e6da0c1f7b3994b172dbb4ee49bc1993e0380","affectsGlobalScope":true},{"version":"b52776b968af86d593bbabbde7bbaf679cd482a38b0d6abe47e0510fcd135fdc","affectsGlobalScope":true},{"version":"6c61ca33af2fc0ccadf75a54f703a9ef0b9fbb4f69194ffef84e38343627012f","affectsGlobalScope":true},{"version":"3e8a96f68d24b318bc30a63344f7d4bd0d4558df1f5d2d569ab8e7b58f8d8466","affectsGlobalScope":true},"bcaa31b0ab53f1bb0ab217932b46ef1be570c5e0b71cac149d21a284b468080b",{"version":"aefc67cc89b17e4b36069d1c82be8d3b67fffb2dcf09d3469b62ddbbafd56cc9","affectsGlobalScope":true},{"version":"f7fd1042a37dbc4b80765ff070f433fc2d04194463d6f40ee4bab32c90e292ab","affectsGlobalScope":true},{"version":"0d3fe42231316be682277aa0c3e9937ed60610caec5f2d2669d30fb4846cb9be","affectsGlobalScope":true},{"version":"ccd4c143316d8784615624fb86c7fc5866321f26c64597a6b8762b46a4c6ae54","affectsGlobalScope":true},"614a2d35bf66a5f56b643ddffe9f779279eaff318a219a02d1c0fc1c4474cccd",{"version":"384d5da6f57c903720df0491e985c70ddd2591b861b268b2e694bfe3478047d2","affectsGlobalScope":true},{"version":"4b9290a110a4332145785b310afcceb4e31d0a32cfc2f686446c25bacc121f56","affectsGlobalScope":true},{"version":"5686baf6e3c4c244f2e2daaa306986619ce967cf7cf58a80e87f6b8fe4351388","affectsGlobalScope":true},{"version":"4bcfbab841de41b0a983a2312e684c0dfbeaa1e61fa801c56c85bb6c0b14b1e6","affectsGlobalScope":true},{"version":"07d4c4ef938690b1d85ab124138c8737b09b65108858b9213a1a2bc1cefa2b1f","affectsGlobalScope":true},{"version":"2fe137a03095209fe470abd521675f1729c95b416c92c6f1da15c042a7478fcb","affectsGlobalScope":true},"c92b1bbab6cd6ea02ba24a0b92f4d27779ee4b31ea12344d9d1c07ef57e1ad09","486b34258d280c4f09e089e496dbdb2ec7672010c3768492a40f86b8eafac0aa","00a046cedae69af18df1bfad757969fd5e851c6713458face8ae4ba7e1f3ae0c","f11046b75914ea9f73d1a89098b55639f253a7cda2924e16fe671cab923a347f","ead3d3722080de185007770883a2666d443e48e8cc5504ee93f0f06bd1948944",{"version":"1b69207048179b5b43ee0911a968a208b08dc2028b18bebc088575a82f7bbe68","affectsGlobalScope":true},{"version":"dd71ba6be8c2f31da0891252f3063e6f0a27a10e1b57ed7d38cc6edd10a59283","affectsGlobalScope":true},{"version":"44509a4b8ddf0b4b68698646598f5a8ec6ca919b58fc505cf1baf1fa911a68bf","affectsGlobalScope":true},{"version":"effb99c487277fc32e167f6e77bfcf84013ea2d3b56ef6424b77b36188b20ed9","affectsGlobalScope":true},{"version":"cef933f61c21263c027e234452d5fb5f87c424ba6b0920c48a2084af5fc187d4","affectsGlobalScope":true},"bd6709b0a41eb03998f47986b49dbd87c38d41923d32d16ab94335eb5b1343be"],"options":{"allowSyntheticDefaultImports":true,"alwaysStrict":true,"esModuleInterop":true,"etsAnnotationsEnable":true,"experimentalDecorators":true,"importsNotUsedAsValues":0,"module":6,"noImplicitAny":false,"noUnusedLocals":false,"noUnusedParameters":false,"skipLibCheck":false,"sourceMap":true,"target":8,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[46,49,94,103,124,125,129,135,141,149],[64,66],[63],[149,150],[46,58,59,60,61,62],[96,99],[68,94,101,102,103,104,105,109,110,112,119,120,121,122,141,142,143,144,145],[48],[65],[49],[57,74,97,98,149],[49,64,67,73,112,149],[153],[46,74],[46,117],[74],[46],[83,84,85,86,87,88,89,90,91],[46,112],[46,74,75,76,77,78,79,80,92,93,114,115,116,118,146,147],[46,47,48,49,51,52,53,54,55,56],[46,49,74,128,131,133],[137],[46,68,123],[46,49,74],[119],[50,69,74,81],[193,194,195,196,197],[81,82],[46,69,72,73],[46,110],[46,50,70,71],[46,303],[46,74,304,305,306],[46,57,65,68,74,92,148],[48,73],[46,123,137,138,139,140],[136,137,138],[46,68,125,128,129,130,132,133,134],[55,66,110],[103],[46,49,58,65,106,107,108,110],[59,60,61],[49,94,99,119],[46,51,68,72,97,105,109],[112],[54,55,66,110],[74,103,119],[57,63],[46,49,53,55,64,65,66,74,94,95,99,100,101,102,103,104,110,111,149,150],[46,49,65,94,99,100,101,102,103,111,119],[83,87,148],[85,88,148],[83,84,86,148],[50,81,82],[85,87],[83],[87,88,148],[127,128,132],[126,127],[128,133,134],[133],[47,51,52,57],[47,50,57],[51,55,57],[47,53,54,57],[194,195,197],[193,194,195,196],[46,194],[78],[82,87],[74,78,83,86,110,114,117,118,147,148,183,184,185,186,187,188,189,190],[198],[92],[46,49],[149],[46,71,82,188],[170,171,172,173,174,175,176,177,178,179,180,181,182,191,192,199,200,201,202,203,204,205,206,207,208,209,210,212,213,214,215,216,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,286,287,288,289,290,292,293,294,295,297,298,299,300,301,302,308,309,310,311,312,314,315,316,317,318,319,320,321,322,323,324,325,326,327],[46,149],[285],[291],[296],[50,83],[307],[190],[49,64,65,149,150,151],[151,154],[74,82,92]],"referencedMap":[[136,1],[67,2],[64,3],[106,4],[63,5],[100,6],[146,7],[98,8],[66,9],[95,10],[107,2],[99,11],[150,12],[154,13],[116,14],[118,15],[71,16],[77,17],[92,18],[114,19],[148,20],[57,21],[132,22],[138,23],[137,24],[117,25],[153,26],[82,27],[198,28],[291,29],[76,17],[74,30],[147,14],[305,31],[78,17],[72,32],[79,17],[73,17],[304,33],[303,17],[307,34],[149,35],[103,10],[94,36],[141,37],[139,38],[124,10],[135,39],[121,40],[104,41],[109,42],[62,43],[145,44],[110,45],[143,46],[119,47],[122,26],[144,48],[58,49],[112,50],[120,51],[142,26],[88,52],[86,53],[87,54],[83,55],[91,56],[89,52],[84,57],[90,58],[133,59],[128,60],[131,61],[134,62],[53,63],[51,64],[56,65],[54,63],[55,66],[196,67],[197,68],[195,69],[170,70],[171,70],[177,71],[191,72],[199,73],[201,74],[204,70],[209,75],[215,76],[227,77],[313,78],[243,79],[245,79],[247,74],[250,57],[253,17],[286,80],[292,81],[297,82],[301,83],[302,17],[308,84],[300,85],[113,79],[152,86],[155,87],[160,88]],"exportedModulesMap":[[136,1],[67,2],[64,3],[106,4],[63,5],[100,6],[146,7],[98,8],[66,9],[95,10],[107,2],[99,11],[150,12],[154,13],[116,14],[118,15],[71,16],[77,17],[92,18],[114,19],[148,20],[57,21],[132,22],[138,23],[137,24],[117,25],[153,26],[82,27],[198,28],[291,29],[76,17],[74,30],[147,14],[305,31],[78,17],[72,32],[79,17],[73,17],[304,33],[303,17],[307,34],[149,35],[103,10],[94,36],[141,37],[139,38],[124,10],[135,39],[121,40],[104,41],[109,42],[62,43],[145,44],[110,45],[143,46],[119,47],[122,26],[144,48],[58,49],[112,50],[120,51],[142,26],[88,52],[86,53],[87,54],[83,55],[91,56],[89,52],[84,57],[90,58],[133,59],[128,60],[131,61],[134,62],[53,63],[51,64],[56,65],[54,63],[55,66],[196,67],[197,68],[195,69],[170,70],[171,70],[177,71],[191,72],[199,73],[201,74],[204,70],[209,75],[215,76],[227,77],[313,78],[243,79],[245,79],[247,74],[250,57],[253,17],[286,80],[292,81],[297,82],[301,83],[302,17],[308,84],[300,85],[113,79],[152,86],[155,87],[160,88]],"semanticDiagnosticsPerFile":[136,93,67,64,106,108,63,100,146,98,96,66,65,97,95,107,111,99,150,49,154,116,80,118,71,77,92,114,187,190,148,46,57,132,138,137,117,183,153,75,69,81,82,198,291,189,151,296,188,115,76,74,184,147,305,78,72,79,73,304,303,306,307,149,103,94,141,139,140,124,125,135,129,121,104,60,109,62,145,59,68,110,143,105,119,122,144,61,58,112,120,102,101,142,88,285,86,85,87,83,185,91,89,84,186,90,133,128,131,127,130,134,126,53,51,56,48,54,55,47,52,123,70,50,196,197,193,195,194,170,171,172,173,174,175,176,177,178,179,180,181,182,191,192,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,217,216,218,219,220,221,223,224,225,222,226,227,228,229,230,313,282,231,232,233,234,235,236,237,239,238,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,310,275,276,277,278,279,280,312,281,284,283,287,286,288,289,290,292,293,294,295,297,298,299,301,302,311,308,300,309,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,8,45,42,43,44,1,113,152,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],"arktsLinterDiagnosticsPerFile":[136,93,67,64,106,108,63,100,146,98,96,66,65,97,95,107,111,99,150,49,154,116,80,118,71,77,92,114,187,190,148,46,57,132,138,137,117,183,153,75,69,81,82,198,291,189,151,296,188,115,76,74,184,147,305,78,72,79,73,304,303,306,307,149,103,94,141,139,140,124,125,135,129,121,104,60,109,62,145,59,68,110,143,105,119,122,144,61,58,112,120,102,101,142,88,285,86,85,87,83,185,91,89,84,186,90,133,128,131,127,130,134,126,53,51,56,48,54,55,47,52,123,70,50,196,197,193,195,194,170,171,172,173,174,175,176,177,178,179,180,181,182,191,192,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,217,216,218,219,220,221,223,224,225,222,226,227,228,229,230,313,282,231,232,233,234,235,236,237,239,238,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,310,275,276,277,278,279,280,312,281,284,283,287,286,288,289,290,292,293,294,295,297,298,299,301,302,311,308,300,309,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,8,45,42,43,44,1,113,152,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],"affectedFilesPendingEmit":[[136,1],[93,1],[67,1],[64,1],[106,1],[108,1],[63,1],[100,1],[146,1],[98,1],[96,1],[66,1],[65,1],[97,1],[95,1],[107,1],[111,1],[99,1],[150,1],[49,1],[154,1],[116,1],[80,1],[118,1],[71,1],[77,1],[92,1],[114,1],[187,1],[190,1],[148,1],[46,1],[57,1],[132,1],[138,1],[137,1],[117,1],[183,1],[153,1],[75,1],[69,1],[81,1],[82,1],[198,1],[291,1],[189,1],[151,1],[296,1],[188,1],[115,1],[76,1],[74,1],[184,1],[147,1],[305,1],[78,1],[72,1],[79,1],[73,1],[304,1],[303,1],[306,1],[307,1],[149,1],[103,1],[94,1],[141,1],[139,1],[140,1],[124,1],[125,1],[135,1],[129,1],[121,1],[104,1],[60,1],[109,1],[62,1],[145,1],[59,1],[68,1],[110,1],[143,1],[105,1],[119,1],[122,1],[144,1],[61,1],[58,1],[112,1],[120,1],[102,1],[101,1],[142,1],[88,1],[285,1],[86,1],[85,1],[87,1],[83,1],[185,1],[91,1],[89,1],[84,1],[186,1],[90,1],[133,1],[128,1],[131,1],[127,1],[130,1],[134,1],[126,1],[53,1],[51,1],[56,1],[48,1],[54,1],[55,1],[47,1],[52,1],[123,1],[70,1],[50,1],[196,1],[197,1],[193,1],[195,1],[194,1],[170,1],[171,1],[172,1],[173,1],[174,1],[175,1],[176,1],[177,1],[178,1],[179,1],[180,1],[181,1],[182,1],[191,1],[192,1],[199,1],[200,1],[201,1],[202,1],[203,1],[204,1],[205,1],[206,1],[207,1],[208,1],[209,1],[210,1],[211,1],[212,1],[213,1],[214,1],[215,1],[217,1],[216,1],[218,1],[219,1],[220,1],[221,1],[223,1],[224,1],[225,1],[222,1],[226,1],[227,1],[228,1],[229,1],[230,1],[313,1],[282,1],[231,1],[232,1],[233,1],[234,1],[235,1],[236,1],[237,1],[239,1],[238,1],[240,1],[241,1],[242,1],[243,1],[244,1],[245,1],[246,1],[247,1],[248,1],[249,1],[250,1],[251,1],[252,1],[253,1],[254,1],[255,1],[256,1],[257,1],[258,1],[259,1],[260,1],[261,1],[262,1],[263,1],[264,1],[265,1],[266,1],[267,1],[268,1],[269,1],[270,1],[271,1],[272,1],[273,1],[274,1],[310,1],[275,1],[276,1],[277,1],[278,1],[279,1],[280,1],[312,1],[281,1],[284,1],[283,1],[287,1],[286,1],[288,1],[289,1],[290,1],[292,1],[293,1],[294,1],[295,1],[297,1],[298,1],[299,1],[301,1],[302,1],[311,1],[308,1],[300,1],[309,1],[2,1],[3,1],[4,1],[5,1],[6,1],[7,1],[8,1],[113,1],[152,1],[155,1],[156,1],[157,1],[158,1],[159,1],[160,1],[161,1],[162,1],[163,1],[164,1],[165,1],[166,1],[167,1],[168,1],[169,1]],"arkTSVersion":"ArkTS_1_1","compatibleSdkVersion":20},"version":"4.9.5"} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo.linter b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo.linter new file mode 100644 index 00000000000..d530eda1bdd --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/.tsbuildinfo.linter @@ -0,0 +1 @@ +{"program":{"fileNames":["d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es5.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2016.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.core.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.collection.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.generator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.iterable.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.proxy.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.reflect.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.symbol.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2016.array.include.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.object.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2018.regexp.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.array.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.object.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.symbol.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2019.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.bigint.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.date.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2020.number.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.promise.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.weakref.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/node_modules/typescript/lib/lib.es2021.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.base.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/metadata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/elementname.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.want.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/global/resource.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/applicationinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/skill.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/abilityinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/extensionabilityinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/hapmoduleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundlemanager/bundleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.bundle.bundlemanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/processinformation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/appstatedata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/abilitystatedata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/processdata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/applicationstateobserver.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.appmanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.abilityconstant.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.configurationconstant.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.configuration.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.ability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/basecontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.colorspacemanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/global/rawfiledescriptor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.drawabledescriptor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.resourcemanager.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.rpc.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.multimedia.image.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.font.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.mediaquery.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.inspector.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.promptaction.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.router.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.componentutils.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.common2d.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.drawing.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/graphics.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/rendernode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/content.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/componentcontent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/framenode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/buildernode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/nodecontroller.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/xcomponentnode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/nodecontent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.node.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.animator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/connectoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.dialogrequest.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.completionhandlerforatomicservice.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.contextconstant.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.completionhandler.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.startoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.atomicserviceoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiserviceproxy.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiserviceextensionconnectcallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/abilityresult.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/abilitystartcallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/eventhub.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.abilitylifecyclecallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.environmentcallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.applicationstatechangecallback.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/applicationcontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/context.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.openlinkoptions.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiabilitycontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/component/navigation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.observer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.measure.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.componentsnapshot.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.unifieddatachannel.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.dragcontroller.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/extensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/uiextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/abilitystagecontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/formextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/data/rdb/resultset.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/startabilityparameter.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/app/appversioninfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/moduleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/customizedata.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/applicationinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/app/processinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/elementname.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/bundleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.bundle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/abilityinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/bundle/hapmoduleinfo.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/app/context.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.ability.featureability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.rdb.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.dataability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/dataabilityoperation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/dataabilityresult.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/ability/dataabilityhelper.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/vpnextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/embeddableuiabilitycontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/photoeditorextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/application/appserviceextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.multimodalinput.pointer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.uicontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.window.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.app.ability.uiability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.hilog.d.ts","../../../../../../src/main/ets/entryability/entryability.ets","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.file.backupextensioncontext.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.application.backupextensionability.d.ts","../../../../../../src/main/ets/entrybackupability/entrybackupability.ets","../../../../../../src/main/ets/pages/antialias.ets","../../../../../../src/main/ets/pages/circleexample.ets","../../../../../../src/main/ets/pages/fill.ets","../../../../../../src/main/ets/pages/index.ets","../../../../../../src/main/ets/pages/mesh.ets","../../../../../../src/main/ets/pages/shape.ets","../../../../../../src/main/ets/pages/shapeexample.ets","../../../../../../src/main/ets/pages/stroke.ets","../../../../../../src/main/ets/pages/strokelinejoin.ets","../../../../../../src/main/ets/pages/strokemiterlimit.ets","../../../../../../src/main/ets/pages/strokeopacity.ets","../../../../../../src/main/ets/pages/viewport1.ets","../../../../../../src/main/ets/pages/viewport2.ets","../../../../../../src/main/ets/pages/viewport3.ets","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/action_sheet.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/alert_dialog.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/alphabet_indexer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/badge.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/blank.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/button.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/calendar_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/canvas.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/checkbox.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/checkboxgroup.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/circle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/column.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/column_split.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.data.uniformtypedescriptor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.multimodalinput.intentioncode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/imagemodifier.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/symbolglyphmodifier.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.shape.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.matrix4.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.uieffect.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.arkui.theme.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/common_ts_ets_api.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scenepostprocesssettings.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scenetypes.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/sceneresources.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/graphics3d/scenenodes.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/component3d.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/container_span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/content_slot.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/context_menu.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/counter.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/custom_dialog_controller.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/data_panel.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/date_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/divider.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/ellipse.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/embedded_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/enums.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/featureability.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/flex.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/flow_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/focus.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/folder_stack.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/form_link.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/for_each.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/gauge.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/gesture.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/global.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/griditem.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid_col.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid_container.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/grid_row.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/hyperlink.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image_animator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image_common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/image_span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/lazy_for_each.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/lazy_grid_layout.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/line.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/list.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/list_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/list_item_group.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/loading_progress.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/matrix2d.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/marquee.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/menu.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/menu_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/menu_item_group.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/nav_destination.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/nav_router.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/navigation.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/navigator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/node_container.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/page_transition.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/panel.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/particle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/paste_button.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/path.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/pattern_lock.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/polygon.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/polyline.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/progress.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/qrcode.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/radio.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rating.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rect.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/refresh.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/relative_container.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/repeat.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rich_editor.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/rich_text.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/row.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/row_split.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/save_button.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/scroll.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/scroll_bar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/search.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/security_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/select.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/shape.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/slider.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/stack.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/state_management.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/stepper.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/stepper_item.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/swiper.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/indicatorcomponent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/symbolglyph.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/symbol_span.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/arkui/commonmodifier.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/tabs.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/tab_content.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_area.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_clock.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.graphics.text.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_common.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_input.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/text_timer.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.intl.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/time_picker.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/toggle.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/toolbar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/with_theme.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/units.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/video.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.security.cryptoframework.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.security.cert.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.print.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.web.neterrorlist.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/api/@ohos.web.webview.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/web.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/xcomponent.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/sidebar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/water_flow.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/styled_string.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/index-full.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/animator.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/calendar.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/form_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/media_cached_image.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/plugin_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/root_scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/screen.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/window_scene.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/ability_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/remote_window.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/effect_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/ui_extension_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/isolated_component.d.ts","d:/devecostudio-windows-6.0.0.858/deveco studio/sdk/default/openharmony/ets/build-tools/ets-loader/declarations/linearindicator.d.ts"],"fileInfos":[{"version":"be8b901880718680b6c067fd8083bd5b04cde401c1e1123823e3068bb2e0d282","affectsGlobalScope":true},"e8d2e50f9e8fdd312d31f97571b4c7295b8f29f7f8363498edae2a9eb113ee36","4b1854aec637e8e041eff02899e16fd3c0c78685c622336aadfd67e6604bbe1b","d6f7d47355a0167969e9a8eedfb0994f21e038d360965ec06c30f6871038900b","4735756aff7c5857de387f321633f272e2daba4950c427ab200de954340c7c13","13dfb22c1b46f9858b19fc7df54674146f3d174ccd35f0e02e8d05a3026b9ba8","33d21bcca0f7b054d0d0d402125f547c9ac77782c2df301de314143f08e81406","80510205fb587019e1ad42bfbc046d4f55f3c5a1c8b3debca7d6fe0adc93959f",{"version":"276144a8254bed55adae6f0646c37a2cd11575ac2cbc679bf7ac0419c443fd58","affectsGlobalScope":true},{"version":"3523038578cadf637fdce58f06018e144fd5b26c12e3f9c1cef14cdf92ca3d20","affectsGlobalScope":true},{"version":"28065193ddf88bf697915b9236d2d00a27e85726563e88474f166790376e10d8","affectsGlobalScope":true},{"version":"511c964513d7c2f72556554cdeb960b4f0445990d11080297a97cc7b5fa1bb68","affectsGlobalScope":true},{"version":"725daac09ec6eb9086c2bea6bbdf6d6ab2a6f49d686656c6021a4da0415fe31f","affectsGlobalScope":true},{"version":"21574b67bbedcb39a6efa00ca47e5b9402946a4d4e890abd5b51d3fd371819ba","affectsGlobalScope":true},{"version":"2415a2b1a4a521594b9837316ae3950b0c0c2f8b689defd358986bf3e263e904","affectsGlobalScope":true},{"version":"e5d8d715990d96a37f3521a3f1460679507b261eec1b42dc84d4de835997b794","affectsGlobalScope":true},{"version":"93fa2a84417c65ab8ed121a0b84536312e00a11cbf45b0006a75324d00b176d2","affectsGlobalScope":true},{"version":"a003a6051b48dc64eaa8ad83789e4c2a540f3482bed821053b6770969bd598fb","affectsGlobalScope":true},{"version":"e90857fa86cecc3bc964a2d7db9d95a0c406bebfadeb4853a01a0079936f12f7","affectsGlobalScope":true},{"version":"8bbb03589e48f10b49996064f35256e858d205dcb364428fb4cc045061b1d786","affectsGlobalScope":true},{"version":"5044747370afee4b4c247e8a14c2969d245bbcf8396295dc5a60c659d796a71f","affectsGlobalScope":true},{"version":"8e4921934f4bec04df1bee5762a8f4ad9213f0dab33ea10c5bb1ba1201070c6a","affectsGlobalScope":true},{"version":"a894424c7058bcc77c1a3c92fe289c0ff93792e583e064c683d021879479f7b8","affectsGlobalScope":true},{"version":"8f03386d697248c5d356fd53f2729b920ea124cd1414a6c22de03c5d24729277","affectsGlobalScope":true},{"version":"21ac76354ecc1324ee2e31ac5fcebfa91b1b6beb3e8c3fe6f3988538e9629c73","affectsGlobalScope":true},{"version":"ecc058373716a6bb19a4492ac553b61e3ebc0eb657407b6ea62337316885b64b","affectsGlobalScope":true},{"version":"fe7acdc1039eca904399190766d1c8766b7d2621413f972c8542dddd69612097","affectsGlobalScope":true},{"version":"c25aa843b930662d62f0e853dd1f347d08b66cdec09bd760151d4ba6ce220fe6","affectsGlobalScope":true},{"version":"3e47477f297e4fa0d556c40a872c2c45bddefa487fd054bf1f80bceb527a682b","affectsGlobalScope":true},{"version":"a902be9f4116b449dbac07ffe3f4d69abb664f8eddfaeb892225612469213788","affectsGlobalScope":true},{"version":"155d8d1e367e05af5e5708a860825785f00eabae01744cf7bc569664301415a4","affectsGlobalScope":true},{"version":"5b30b81cdeb239772daf44e6c0d5bf6adec9dbf8d534ed25c9a0e8a43b9abfff","affectsGlobalScope":true},{"version":"cdb77abf1220d79a20508bbcfddf21f0437ea8ef5939ba46f999c4987061baab","affectsGlobalScope":true},{"version":"62e02a2f5889850ed658dfde861b2ba84fb22f3663ea3b2e2f7fb3dcd1813431","affectsGlobalScope":true},{"version":"357921f26d612a4c5ac9896340e6a2beffcaf889ff5cdfcc742e9af804d1a448","affectsGlobalScope":true},{"version":"d836a4258d6b5ee12054b802002d7c9c5eb6a1adb6a654f0ee9429cbda03e1a0","affectsGlobalScope":true},{"version":"c021bff90eb33d29edfde16c9b861097bbf99aa290726d0d0ac65330aa7be85a","affectsGlobalScope":true},{"version":"1c4e64dc374ea5922d7632a52b167187ba7c7e35b34d3c1e22625be66ca1576d","affectsGlobalScope":true},{"version":"cd1bebc4db8fb52c5618ecad3f511f62c78921451c198220c5b2ee5610b4d7b9","affectsGlobalScope":true},{"version":"fb60e7c9de1306648f865b4c8ef76b7376731af3955b69551004ad3848fb8f4c","affectsGlobalScope":true},{"version":"18d23591bba5678cf57ef139e1a3daad8017b26ad6612c8c34d6fa39044b245f","affectsGlobalScope":true},{"version":"868df11ccdabb6de564f70b68aa6b379a243ef32c8f6ee6dc71056a3dd54578a","affectsGlobalScope":true},{"version":"cebef4c7f9b6afb02cd08e7288fab05d0be3e3c898c720775b8aa286e9f7cfed","affectsGlobalScope":true},{"version":"7e3c49afe9bf537f68ce2487d7996c6e5c2350c0f250939726add1efcb1bcf01","affectsGlobalScope":true},{"version":"c7673e88666f933b0d007e82e42b60e85cf606ec247033e8ee5ab5940e4be206","affectsGlobalScope":true},"18c90c5c0cc77bce15249c3b628f54126680dca8e8f800ae13c6827577d8d7ff","0885aa6e52133b13da14bd23c6e2923eb41f6587004d566b7fdcd643003f85dd","41c21e94cc18d83501abacdaf56f29ffa89e64a6dd5449580a53f7c834d487fc","734f6e14694c64bd97f1043a47397565d098937d35301b18c8670612a4e159cf","ff3b80b87f5c428ff03782f0036d2056e1f371b828f5fd1397064730c35c1c2a","76d8f54d8fa8b072116d014f52f4461a30652dc66260903f4897cbe7838ce373","5c5627008db0c037c148380ab9ed21004ad2e33df3c693a5f750a84fdb182c34","b2b5603060e1d6b2982cb5670e4c9f2864b185276e63bbc903d3a9c17ecdbfb0","90e2871e53f616739841e476f3054c5ae40255095aa2e7459222c4dc15e838b0","783616dbe6f5eb8691d1c390e7b089cbadafa32bd00b0c70c04d41407a761d69","1e597215fe046a63746dba7c4858158640e2604eedf9846eae6b349124ee29b9","ae2e5abe87b1a08b722b2eb1480ed06320c3f3f4d0d6dc44e66d08ec329d66ef","21930bd35ce5693ef61bd468014596dfaa5bd6b6c2d4f59f60844fac0eee384d","84912c4054b88f51a421edac0e72c3afffa6e13234d81b9a1aab9c9336830ce4","d6b557c3349079a11c7699cc680f0a9c9f709a09019d45e5e065985ea3919e9b","d720df61b68e1ac759fb8ee19a85b2d64d5fadc4f0f4a8c8e7b55df67a3f1775","acba4d1a0998ac6561b9a1aa15c6b1125f769f046cb38d325856a40b768cdaca","f3aeea828c0af07cee7cfacc5f7f5dd5c7f3e67d8bb63ab279c61c0642194d7c","620b7c31b289e834d976fa4c5dfd04ed9f0923ee5f7641b86fcd532baf2565b6","59076a01123585639ac35ad1ba8fd1acceee2335fe1ffcbf032d38925e47bce1","16820b43a1c139ef435c5dad03ec2a7f91c6e0fed732691ecba152ed1b44cd52","2478abad18abd3df6315d031c62f01f83a91caa634f35b17465df224608a8ac0","a8e07c1a2f8475fbab17dda22a5f51e2d26fbc39603cf3b18f9c0ae2b519e55e","9e35cb3a784322d79f1fc3e5f1f838baccf6e4897b1ba7ca58a0e85f5c62d392","2900121efc03a6a977643fe47b1f57f5d23e2ab7b4cac525ff41f6bd481ca52f","c855e91f562922633a8cbb28b6bf142242a831d861ba23475744253f5e37b95b","024f0f2569c643dc83c8e4ef7432a00186d101e7424132f88fb452f311b5d884","7b5f82b0e0cdc724a3b14a9c8bfce48ca8a5e70fa25f3f55503c4aeb84d0815e","fe89cfcf174d05ce0e14b241b1f456e98100506442bc434c254b457175043d64","a0577605aac5da0b747b491593a469584f0005416e52dce21fbb970abcd115e2","be201049e4d4638501f377c34d5318a68b41548a1a2ee577a306aabfedb05c93","95fdeb811613fe4b7db3766ace5232f7b0830a84bc4eeb5db6fa7c327d1fbbfe","9f17874d37b0bb6bc111469635ff0abddaa39c615d5459354044e5b920d8c095","ae6fbbd727e947b2214d28fb53875d98fee0cc796ece51d34f42475c0b5dfe69","7b071796c9afe1026dbc08854bd73d7f7085f97885a2699b45852808f9d3ce82","f83ee958f4e51ff58ec869784ca5403f66e111488d80ad8ed55e43fe96e79546","44f591ebb300365d6ebcda253431a049d45aa74c5717e58055d8b804bd2a8718","c59d5014d6310118454fe99540005aa81f41a72326eefd3d13ae3cb0a648b008","04d7628b1479c95bb2385477c283fdbf51afe60db51acf2449293c9303374cd8","16d269cca8715b0ca8b907859f6cce45f230f1b55a6429f267e4c5a8aa7f9d17","69634b06c488b31c03055d4544fddea21f84c1b0d052784ccd33ed6527b08131","b840440738eb0014fa755aecb6c49f70c907cca21c78a247b058156ae4bca715","329edb7e5e887dee7d365a60f139fc36de2f9a441abdd690c93bc5a45e467163","3f9b161e68bb7a52a3171cd1144254a968c8d2bb5b6b41ae30d93d5131aa5980","53a5c6a0ecdf633bea0a5ffdaeb9425b01c350ece3ef11b53301eb08bd9dbbf8","dc132b2bfd37756d5385b19a8972614ca9de8bf8264435096283230ce0d1fb2e","a480bb40ed9139c1886999772d83f2d46d4cbf86449af3c606dcca1dbc38d087","be0c35d4b8a3e29f1a98636e00b25ff9fde28e7b2a9eb7cda2c646f13751f1dc","5d1e8f9c86780f23962980d995e80f70cb90173100c4f3f1280c651c6dc22094","2238892eef3efdeaa60f96d62943897ca8c945dd6fb230ce71d2d9ce1989c30d","b77055b21a6390a1053cf3fd95a830c51b0a0b317e1639d0d029bfc637fc9984","0c98893d17a23b9b9a68328528d408ac9141b4d4e3fb5b2b38e6895c4f98aaed","a06221608f5d45845214ee4991743c1e7a6c91fa2addd3665d618abd1f940be1","5bf7782d5dc0ffb156bdb4b981e56c066247c252e7538a32efcf97ab6a65e5d4","45752fba2bcc8f837ba1eb959da11f22584ae2288b3cd0c8a0522c3aacbbd928","ee67d9b87041e39ed225a1c5e815d839985dfc9b6e12af1c96adef07b37251c7","c585cd71cd521f4373ff211223d2487faf3a467037b8e6ab0fa112551492b4c8","0cc5c94908b284934cc25e6bd28a612650b9644d64ce21248732f8ad95625cd5","105a88bf7880674f76b13a3100c47f22f72b2cbe30f42115bac1d45a772bd4a4","e6d653e5102c35235bf08d13b93ab1e229fe3fb4f734a06bf3e268f6be7fa0cd","500cd84a36eec70cf12d75d8db0482692947137231e5b56d729ee01d5799687e","486609fe99f6a3f875a7ec02440f1442f9f70d1b960b25e487d7172fff2145e0","7067a4950c4dfa1282ac4b2af9ea9d6f654ab9ca4874030b0ce08eba113bb788","5ba940e673cb292665db309eaf3cf3b6cd562c69c7d8343e92d351cafdda5de0","1415aaa37727b9d971f5d90855be88e9d6d0f91dedb5f448bac516232c0ec53e","1ee4140494ebdaa4971b592cb59603953c4f613a6707069292e04006a41eb4dd","bdc21c1c6547a171df6e036e256ea2a08ec3fff1259cef232f34b796e27cbdfa",{"version":"a1b442ee2c5708d05fa6267dafcfaaf9052aa5b1f2b96afd87d8bc768d5ffc2d","affectsGlobalScope":true},"6e44d700d4da368e0baa78517d2fd699302b6ef24908c9bfcb329e1a1ec4dae7","2fd4536b789dffa504fa1060d29618e0898f63635fc5b6ac8f8eaacc0e01a435","d73b0df62037fa7d8e447785395076fc48a7529a86d21951bba43b7c2c7e221b","ae34c262f096b945f4104faf1358983ee865fd67a31df058229ac2fc43cdc60e","18ae3d0c60ca49a89e37b243d5692b946f3863e6c6b2a5e2f806cd9fed499e81","ef2a7b4201827194eb706b950ef40889d0870f402e610cb096d86f0bb2d3bfda","33d2db33dbe83d05305a585bf6c0c083e825270b53c56ecc69584b3a6343903c","e15a16903c5239648c795bc68acdc833f6ae58daf7cbabad085e372ad2396a45","062845bbf8e7d38e456b9ad7d53248ba7e1c5b3f061edafddf0d3820488e6648","eb334428756c8c94fcf87fb74ff084f243de6595d19d5875a2e83cfdf645fd67","8e0622fd44e6fc146b3b431cd5433449bcc7660b555e6e6175926a5665353ad4","0fe10efa53a287daaccba7fa70bbf20820ead1cd0c011ad59248f04cea5f3534","6534aeb84fdb78bdf07dd551c70e5f859c28a08b00507446b1043c20526feb9d","59528c8bb0cd15a4e2b544547cd324bb3a1153ebd52beb99c1f36f5437bca908","7542f446bc5bc9148a8443618064cdd94ba23293716dc839ea17e79dee318b45","3a5f3b923aa0dbf9d743ee99961763d38576b11ba81dbcd1b90c046f52d6071e","53b8801feda0f792b5959291f0e760ed1e013a78fb4e22072b663a76eb47a368","e440c7066c19e60990f65eee96ecd5fe22cebf754376c0732a29ee4a11cfd2a4","7d81efdbf839fe9fd65d580a89b98cbde2d89a822d22e2e8e060921ddc93cc9f","f5c03ad15eee48dedd7bdef771d50369c70fa70b10523ab777e925a4c90dbbeb","e79dae84c8e3d36f8f47f2da99a824ebee5674af266cbf274355e1b058fb219b","8c804ac09102ae81cb3a5bd3698b0bbea4ee98bcf1c67ea28daf963e01743cc1","96c6b16e1aa7514e7df94ee86e534b8c06301470960072fac70099e93cf53efc","6c4a9afb20d47e984c4bf2e586b9652073cdf9f850cccee67a3eb4144ebdf147","2644ca9cd4f4d4f4192686f8df72f9e414341fcc40bf10383fe94d3ee7a148ac","383f35282369bbe076f1203bb8db614279bcdf69d3997a7ed8cd02b885aabcc9","64322c0908a6e5cce21f118b77e1bfa46ea39abb05fea77bb9369705e3b8cf47","97e9592d53be761c186124ada0363ffcf29efd028772f317e252e31edee3f84d","6e9801e6ddf7c3eeeda628c984737cadcfa7d075866ec59d0a66d0443aa3fd58","25d084c26f6956c51674a81f67ec88a0d6393e2582199243f06435ee0c2a88bb","bc6faa40ca044b14b715e85fef1ae84e35bd773a5aaad6b78f48d73da135e7b3","67819e5de1ef35de58abe6fcd4b48d4a9cbc9e7d3d72bdbef84366e06f8eacbd","4b6adcdca1b49c4a8dac544448a554be3dab44777a9e71dbcb616f5ae2a88cf3","eb5f405d8ca352dea6f605738c0ad6cced8837be60e64853ee067922d1bd0251","9037ebc6080ee87baf79279684015f7ebaa2a71c2b410707f0c7a5968e331ed3","0673364463a46eaccc54cada61bd168b63db49b4eafe73ef44bd3763dbfef653","0f5d7b3c98e25df635a065681dbbaf399e55459367ffb3c19169141a4704ead3","18d9c779b4f7ed8c70e708f992dfc5b0aa914460a83a1152d6456e1274fc6b11","3338f7a65b34f7b79c00ac82761604aca6f1d2f254e43f0d213a35979603317d","a98e4114fa6839755dce055ca4b9913ab27b0605a964ebdba14571d261fc57b9","c0dc66ec8a658536f71f7e5bf86971c960a7c8f886e76a9571ce66e950421493","f8d3ade82e1108429553ae2dbb29071be7ee3d4b39b1fd6305424ad740908fe0",{"version":"faaffd995ba5b9b8cc8e87e0fffa69fad2562079654b43847984aa51b0731a46","affectsGlobalScope":true},{"version":"f99ad49a5ca9d2427bd8d36e2f0d5571e3c946faf125ceeb8a26792d63ff6e4d","affectsGlobalScope":true},{"version":"01a9b441427e3f5a0760c736cdf1e981138cbd273caeaaeb5fdbebb6f9693bf6","affectsGlobalScope":true},{"version":"cb882b3fb18bbcc978cc4cbe8c003cba929b7bb8532398b6f5ac87a57faf2a6f","affectsGlobalScope":true},"3da76e169ae0f972ff10501ff09afe4219144b52b08ab4b14b502ab699aad896",{"version":"2a63d19269f29df9a7caf3f44b1be7658e46469f77142517f946d782ed3f597d","affectsGlobalScope":true},{"version":"06322dee64b8692adf320dd8e9dace92f1b79fddf651a7a44bd4b9c1a4833caa","affectsGlobalScope":true},{"version":"39c3f1852def2308e7dcbeeb5f94a2b8b1c891e5a384938f92823ad76b4506e9","affectsGlobalScope":true},{"version":"94f0525cb18c93d90bd5a3253213a3ff475868ef4b4d88fccd2c2d3f09f55a9a","affectsGlobalScope":true},{"version":"2132b452a12df287c93b84fef72e521721d3b619cc7cf4a831dfd83eca312995","affectsGlobalScope":true},{"version":"759aacb5f0aaf9c3c323569f7f67d9537f7541eb826dd5228ef2c0d5eb1453af","affectsGlobalScope":true},{"version":"99681ef954a75e37f54153e54ac2c720d1f347212421addc60636a7b3e734a52","affectsGlobalScope":true},{"version":"20d3796c3e58e0254f925ffa4e05fa3ef44e9c36b1a17a2ec5097bffbfb60bab","affectsGlobalScope":true},{"version":"5ea7f58ac1f9afdb53e53d1158e6f17bc6d4f870cc1bf4ced939b76c4a1ec568","affectsGlobalScope":true},{"version":"96e15690cc2379a8b1b4d891b9714785764daf37d5af0996f9261f698b90c1b5","affectsGlobalScope":true},{"version":"3f80769e98e3c0415ebb402dfdf74d97d0d1ee6e4f3b97e6ee3bfbd3109c48e7","affectsGlobalScope":true},{"version":"be6e8ce9d89e6ae797bc5fec1dd2bf1a3e5096819a740e5f7d990ad052953f04","affectsGlobalScope":true},{"version":"6b6cfa0fa9528f829fa03a2cbcb1a9a325800daed455ef111ff15d8d6be8f39f","affectsGlobalScope":true},{"version":"2dae1085d34be82cceaa9da090d387d6a0ac7587ce93d63aa5e3ae5577338bc3","affectsGlobalScope":true},{"version":"ffae7fd73a4a74451be1de4ac54f9686aa321d0b5c633014ab336cc0b437b80a","affectsGlobalScope":true},{"version":"d1c9e5f0ccf6c9dec445e23f6c7806b2ec253fbf40975eda3851093cb7b5cace","affectsGlobalScope":true},{"version":"705d4d41c465b766928595f27e0d6e2cdbbc9b9874492052e171c92424bb7b8d","affectsGlobalScope":true},{"version":"353273db48805fa739de275b52173cb3edf2e553ef86e7813a3f6e4a1d4bddb7","affectsGlobalScope":true},{"version":"f6f74d538cfe5a140e54b23bb409c2225d0412636b8767cd6f8e91267f5b2895","affectsGlobalScope":true},{"version":"1b818842e3d38878689b2c2f3ef055ced422697dc9979976c489a06ff06a65b9","affectsGlobalScope":true},{"version":"7c0ae2a94e7a1a4571cd5dfdc4debd3833c4494ac90e008f6186b86ab61ece10","affectsGlobalScope":true},{"version":"26b491ab4cd40c8a4a797912bb77cf6656f6836d7d7dd83d110c44d3be50c7e4","affectsGlobalScope":true},"748d89f0afe6bab24b161aa0c139a2b91ba7ae37219b842ff6441fc965181713","aabcc875047a9ce097df133c01ccba6e6d1a70f9b3ebe16edfbce541b711d278","d2f0b25716bcf18895c71306abda91b5c9e5720077522060c5fec9bd1d755c03","8c107d9768a16d54f16190b0d6f33957d4bd41eef4fb7ef6b10fca0e5a39a587","cd487422606842bb084a6645f4353a8ee1de9714959c7d8cba214a460cb7f493","77bc4c8fb72b564df020bc3e2b49978f113e0388883e48d5149c4599d422529c","838fd41bfdaab921a26d32d8730b71101fd06e651d7e206324302246a9886243","f3fa1713741b3f7d07ed6bf57134fcbb6729e78f789a910b7e969403b9840a0f",{"version":"024e075321a9059640058c8b61bcf80f241318d686f5f870c33bdc769a53e559","affectsGlobalScope":true},{"version":"dfa1413db6ee4885b5fd49a8edbcd1ee08d8a983dd6b2399992da08cfc455556","affectsGlobalScope":true},"32dd1f6fa95589df742f0e5dc59a39617b85691b3d485a55d05949e6a277c341","61d73ba02b770f68da0d5df5abe6c4b892a94ecd791118d4c5eada5689127505","fe64e214cf336c5f3f188328c53bc015bfb5cd8b9a08855e8eba6154bf514dba","a6f44c7a5b4fc2e6aa37f4aff3944ca4b875e9f46f5196f93830fb88eb04e890","c3310cd0ff3c44be30be014909a718286897be09a3e4919512fb32d91e0de558","9febc93b9612a5081040535a0cc788716ec7ffc0e182517ad1057647704bc96d",{"version":"cd734a3ceb5b1343e1d92f40813437e25530eb5b7ef5154c90b46dec68e4caeb","affectsGlobalScope":true},{"version":"1d26e6d3045e6aa4c43b1b3058fc150ea0a3a05b82f832ce143cfd0d83713758","affectsGlobalScope":true},{"version":"328c9a08cfd0be25d4b3f33f60b21ffe469885f6b4d868e704fa45b4a355b7ca","affectsGlobalScope":true},{"version":"eecedc013fd6e67e7b2727cdf98fefd8dbfd833686a458157cdb305c576f2ee4","affectsGlobalScope":true},{"version":"009f50b2f451600f3b511c7532555ed02a44b93853325b72dd3b979e8ce6e58c","affectsGlobalScope":true},{"version":"2e11c2fbb7a11c2bbaf75a03876f6d0142cf5987e1deea4b1db88d175e84a8e8","affectsGlobalScope":true},{"version":"f2bf83fd6f73d59d35c157612efcf5636a02bea68dddd457edfe396241506b94","affectsGlobalScope":true},{"version":"e6c1aa24b636629fb3a8d69bf78a7d93d7f7095eb96e55cf6b30f45d3b48c2a1","affectsGlobalScope":true},{"version":"491ac07cb7139d2c9dd1fb834df8a71a34b3afd1fe7ca2abab060df7b025b974","affectsGlobalScope":true},{"version":"809d9fbd0d3d0f09074389672b7fee279bc5bbba8b4058b9fbcac91eeb904e9b","affectsGlobalScope":true},{"version":"d84104ff83394662482270c22f3db767397ead8f356c835215ef209f61331000","affectsGlobalScope":true},{"version":"9cb312e2f01112b3826155fb56d56e3e4d7ddd4ede6d0c2f87d655a39bc826ec","affectsGlobalScope":true},{"version":"8b0e1e59695dd28adf930fa4f82ee7f34789fa179837f52fcaa4e56478080974","affectsGlobalScope":true},{"version":"6ea823d5666499a02a3803899588d5337ecf7fababfc27ef1eff214526429f5b","affectsGlobalScope":true},{"version":"34e04261f8d46785867afa92ce6ce81f656228b9983927b9106605ea80399f04","affectsGlobalScope":true},{"version":"8be0e01065b88a7ae97de8138d5561ee34b4dd52dd261253652af6e2999d6220","affectsGlobalScope":true},{"version":"79560e3396417129db53868db639d5b55ec5d33253ad6ae074e94d901599bd7b","affectsGlobalScope":true},{"version":"7a1fdf8e667f526c7a0f3ad9fd8c11ddb3203837294ed277089f7bd2b82753e7","affectsGlobalScope":true},{"version":"399edc722872d367cddd6cd495369534cdbd2d30583889e83d3ab183f3446467","affectsGlobalScope":true},{"version":"953e4e86ef7d072197a5c535a547e7be231b4ab34ebba8d8fff9b752dc63c416","affectsGlobalScope":true},{"version":"90763cb92024b4f3a71ce52e121a06eb37875a7103952acf4bd34f821bc38799","affectsGlobalScope":true},{"version":"27849691ad382edde70c536ebc0a8eb8a45d69360d4b78eb49be2aeb8f0f9ed5","affectsGlobalScope":true},{"version":"1e65a598e37ecb4fa64c85f7cd420fd322612f10458dedc195a55ed7856e3ea4","affectsGlobalScope":true},{"version":"f07f6f392d85adc461612b9fc0114b19e19b03f4e0cf2b86bb17a2660aaad8b6","affectsGlobalScope":true},{"version":"e3444fd440d71f349fd854b42b955316d02249dcb5c5fd3da770388fb93a5011","affectsGlobalScope":true},{"version":"58c153487cdb0395e0602770d51dcb9b49f123e9e361dac849000ea98bac381e","affectsGlobalScope":true},{"version":"556469c9300b8bdf20ca790bccbbd6fc6697bb5d70cb5e921314fa89f2a21834","affectsGlobalScope":true},{"version":"0f7f6bb0ad58920c9f3fb76920826678bb5b7c71ea665b8653479139282039a8","affectsGlobalScope":true},{"version":"d16a8d241066333f1cce03ca06881e042a212b483b8254cc96c9596d9eb8a08c","affectsGlobalScope":true},{"version":"ba8a5a9383147b5ee09db9f7a44d99e9b2721dde4140755eed385386b724a06a","affectsGlobalScope":true},{"version":"a82fab989da9ffdf06c4cb390184f59f40a88e0f0b773fd9d30f1030a4bdd133","affectsGlobalScope":true},{"version":"3babd328660263e70db849a19469ee97eb26fdfea5159739c6ae63f11ae3a296","affectsGlobalScope":true},{"version":"d839874dd15f6ed348bace3842d483b53fb2933a67fc7e15414a6fb8513f9830","affectsGlobalScope":true},{"version":"b0bc815e0adc758ea47d6d3d0197b08f8d20edf56a8f7dda51db6576aa492ef0","affectsGlobalScope":true},{"version":"4e49bff690806c16ba10951046d8752d729031c190479e7b8d3f7ffb929add5b","affectsGlobalScope":true},{"version":"b8da7b98a977d6ccc5cd01ae6f3ac805a01390a78995be8126ee2b7ee4d8fe2c","affectsGlobalScope":true},{"version":"d90ad509192026b7ca61fbe15bb1b509c8c4377d4d184eb0f2c2f5fa6e55e207","affectsGlobalScope":true},{"version":"8e094675134039e83ea5c0e237a7f1389f6c65f66a453329c615ff2be711d4f1","affectsGlobalScope":true},{"version":"265e798c386cb4d68884c27cd3fe18b18531fdcf8b06a6f5f0457d5708409313","affectsGlobalScope":true},{"version":"1111132f62a1fa6ae7d0f4d8270351f96f4ecd605089e4e05062cc345f0ab8ba","affectsGlobalScope":true},{"version":"8ad20d4d07985a03b06755c578f8c5e61959b70c08aa6adf6834dceaa45038cc","affectsGlobalScope":true},{"version":"164cbee53b866ab7bcc1e27be9ca9425ad6ae546d428053c1390f39247ae8124","affectsGlobalScope":true},{"version":"4f4b54dad289cc7da8173f85edf66bcf34b5117d55f4f069154519cfea3ec864","affectsGlobalScope":true},{"version":"8833f137d183571bcfb39b82446abb9d1be5587de2db3e67e69e879e3c36440a","affectsGlobalScope":true},{"version":"2e543a7bcebb6b524651629de4ed05a093f30a979531c1900c7f95c3321b5a53","affectsGlobalScope":true},{"version":"110d2fbadd2fd7713a988779de06f5981e89202f470b1c6f03bcc4676e031942","affectsGlobalScope":true},{"version":"c4dea040deb2f44da458e0db699d8cc07f7a3a8273fb289c26c931cc69c34a1c","affectsGlobalScope":true},{"version":"ed0d1670088a608eaae7baebf7c3b0ad740df1f6a3fbf2e9918b4d2184b10418","affectsGlobalScope":true},{"version":"3b6e856ed84b49d4d2da000fd7c968cbb2f2f3bcb45aa5c516905bb25297a04f","affectsGlobalScope":true},{"version":"a8a6f58d770f1070c632933a238e5c2a3f9b93ee3748fca778741105ca51b42a","affectsGlobalScope":true},{"version":"9737e958668cf4d3877bde85c838d74a6f2399c55aea728330d6757f886fbd47","affectsGlobalScope":true},{"version":"a7c2fa80d163ae228a5f81cb93a1ec3f5ec18448c16ae6fa2fc0af8ff8202142","affectsGlobalScope":true},{"version":"ed92cc55553d5625fb29aa7a56ef7dafef214ba67569a5ad2090ff1210b7a7ee","affectsGlobalScope":true},{"version":"7d39efcf0a7e218d29702ad1ecfc1a819b5d19ead4e297edc51e1e4f48b01f70","affectsGlobalScope":true},{"version":"aa2a62fc51ebae2f2a69d0eeb18b7c9772b088c4bbf3d9e54455a02f98250aaa","affectsGlobalScope":true},{"version":"701ba90d14b2e21192f6184eae5927c5361449a52f7a97d24760f40de985e6a0","affectsGlobalScope":true},{"version":"7c56364ef045ad4a2a9093201e7015cb6dbd33c1789f375ae45ab745171dcd10","affectsGlobalScope":true},{"version":"ba14e8fd121b7b8ca07806f8902dedb6a78aa304cf3f29fb4d550c5174cabad8","affectsGlobalScope":true},{"version":"44ce2c9c3eab14339cf368213acd36f968652894a9c1a1db8f7980c5dfe0b062","affectsGlobalScope":true},{"version":"641703298fafc5cac58bfc067880d3a7d15dfa63014eff307fc40606d99f7695","affectsGlobalScope":true},{"version":"0258b20790ed0fd4fb112e5340d489f70f5ff353020926b395dc32e09f22a422","affectsGlobalScope":true},{"version":"fae2d8d01d5662e8c4602ffbb5c69388cc8a517c38a0d22f17c5975a008d8cfc","affectsGlobalScope":true},{"version":"8743407239e7e664b367343052be4a208d2bae2dbf09de62602c7045b642608f","affectsGlobalScope":true},{"version":"1a3d3001d09a11acca5dd4692dfbbbd526265e5bfb923f127eade807e96194a4","affectsGlobalScope":true},{"version":"bc343f02b56a1d98c7a6af5fc7518d79da9fd1f49cae4b1b97bf68de638d92e7","affectsGlobalScope":true},{"version":"2d8146043e62b7dcac961550e314acbba75fc14a78ccbebdedbdf3d29ee12bca","affectsGlobalScope":true},{"version":"c85bfc4b4d31ced03d7d3b36fd0d5c687c2fdc79810c4747087bf563b73fbec0","affectsGlobalScope":true},{"version":"6be5c828035b956f4136ccc865ecf914d1d966ecc89069e436997a595e0d47df","affectsGlobalScope":true},{"version":"e597e2399a2f5c999202e1bdfa1b0f5900f151b36b76f2d908ab74f2b4953dd4","affectsGlobalScope":true},{"version":"c7d982a2208e45043ebfd7891656f2ea115d4d119f2fc588355f7497b474b0e7","affectsGlobalScope":true},{"version":"5f1b7ef960cfed544094539c33810e5c3356bbb4901a857f240ff3bdd48d1d21","affectsGlobalScope":true},{"version":"f6a38297cf4932bad57637935c7567e5ebaba358d9d1ba05e93f09532b6e3038","affectsGlobalScope":true},{"version":"b7943bedfeb28fe2faa5e470425dd53efb5f8f7f36b2cfa8c40101490b892a95","affectsGlobalScope":true},{"version":"71b0196e3afeb2dd6864b864ea674d488de715f404b58e23e31dc05785ab8aa1","affectsGlobalScope":true},{"version":"6e4143a7da65fb171693aaeabdce2ab45918b64f4376ffec7be9bcec3d98bfaa","affectsGlobalScope":true},{"version":"fd6be01b565fca71bd6fd1f0f908c55ee0ff3ebbd1c3164226d1658da31ca662","affectsGlobalScope":true},{"version":"778132080567d22448de92f3d521fa5ee80cba17c4b402a5eee82cfd0da119cb","affectsGlobalScope":true},{"version":"5a895045b978fa050cd0ba6329ce97c435da2746a1871eb627ccce3f1667437f","affectsGlobalScope":true},{"version":"62d46230b41ce40023bd02ab1ba87f67a4a2596a3d6c62a66847ae86c4aed56f","affectsGlobalScope":true},{"version":"1667c3cea4df08f3ca882c5aa89d1d30828c5f7fbad5d7b99078cd02883c0e38","affectsGlobalScope":true},{"version":"9275648e986dd11e14b0b34d99aeebf0b632f3437fc636fe748582c3ea1f938a","affectsGlobalScope":true},{"version":"0050c919a6db04eb1161549c0b9883f07e341465f979db510381010884820c69","affectsGlobalScope":true},{"version":"8f3491349ef151050e0d8627ca0df34022a514df6552525a727fce0bd63d4d13","affectsGlobalScope":true},{"version":"dfe39326c357ad5c2793071529c2fa17016b1f33aaf2ff68f145f2bf547ba1a7","affectsGlobalScope":true},{"version":"7027679520d93e6d578e95ea194e421e709fbd20ab5a638084306cfed0c4c2f8","affectsGlobalScope":true},{"version":"5268624b0726192556c5c0be40a7a2479c40ec3b0a7732b7644ba6e079f20bf2","affectsGlobalScope":true},"5f2812985cf17f59db22b3f65ec76e1e7065d0e0d6d7f9a557e84f8a2c29e9f3",{"version":"d93627a771eb3089eb4a10d4687fda916dc9d73b02b01c3d87f6519482078863","affectsGlobalScope":true},{"version":"d084060ff7327f0c485b6efb3f1e6da0c1f7b3994b172dbb4ee49bc1993e0380","affectsGlobalScope":true},{"version":"b52776b968af86d593bbabbde7bbaf679cd482a38b0d6abe47e0510fcd135fdc","affectsGlobalScope":true},{"version":"6c61ca33af2fc0ccadf75a54f703a9ef0b9fbb4f69194ffef84e38343627012f","affectsGlobalScope":true},{"version":"3e8a96f68d24b318bc30a63344f7d4bd0d4558df1f5d2d569ab8e7b58f8d8466","affectsGlobalScope":true},"bcaa31b0ab53f1bb0ab217932b46ef1be570c5e0b71cac149d21a284b468080b",{"version":"aefc67cc89b17e4b36069d1c82be8d3b67fffb2dcf09d3469b62ddbbafd56cc9","affectsGlobalScope":true},{"version":"f7fd1042a37dbc4b80765ff070f433fc2d04194463d6f40ee4bab32c90e292ab","affectsGlobalScope":true},{"version":"0d3fe42231316be682277aa0c3e9937ed60610caec5f2d2669d30fb4846cb9be","affectsGlobalScope":true},{"version":"ccd4c143316d8784615624fb86c7fc5866321f26c64597a6b8762b46a4c6ae54","affectsGlobalScope":true},"614a2d35bf66a5f56b643ddffe9f779279eaff318a219a02d1c0fc1c4474cccd",{"version":"384d5da6f57c903720df0491e985c70ddd2591b861b268b2e694bfe3478047d2","affectsGlobalScope":true},{"version":"4b9290a110a4332145785b310afcceb4e31d0a32cfc2f686446c25bacc121f56","affectsGlobalScope":true},{"version":"5686baf6e3c4c244f2e2daaa306986619ce967cf7cf58a80e87f6b8fe4351388","affectsGlobalScope":true},{"version":"4bcfbab841de41b0a983a2312e684c0dfbeaa1e61fa801c56c85bb6c0b14b1e6","affectsGlobalScope":true},{"version":"07d4c4ef938690b1d85ab124138c8737b09b65108858b9213a1a2bc1cefa2b1f","affectsGlobalScope":true},{"version":"2fe137a03095209fe470abd521675f1729c95b416c92c6f1da15c042a7478fcb","affectsGlobalScope":true},"c92b1bbab6cd6ea02ba24a0b92f4d27779ee4b31ea12344d9d1c07ef57e1ad09","486b34258d280c4f09e089e496dbdb2ec7672010c3768492a40f86b8eafac0aa","00a046cedae69af18df1bfad757969fd5e851c6713458face8ae4ba7e1f3ae0c","f11046b75914ea9f73d1a89098b55639f253a7cda2924e16fe671cab923a347f","ead3d3722080de185007770883a2666d443e48e8cc5504ee93f0f06bd1948944",{"version":"1b69207048179b5b43ee0911a968a208b08dc2028b18bebc088575a82f7bbe68","affectsGlobalScope":true},{"version":"dd71ba6be8c2f31da0891252f3063e6f0a27a10e1b57ed7d38cc6edd10a59283","affectsGlobalScope":true},{"version":"44509a4b8ddf0b4b68698646598f5a8ec6ca919b58fc505cf1baf1fa911a68bf","affectsGlobalScope":true},{"version":"effb99c487277fc32e167f6e77bfcf84013ea2d3b56ef6424b77b36188b20ed9","affectsGlobalScope":true},{"version":"cef933f61c21263c027e234452d5fb5f87c424ba6b0920c48a2084af5fc187d4","affectsGlobalScope":true},"bd6709b0a41eb03998f47986b49dbd87c38d41923d32d16ab94335eb5b1343be"],"options":{"allowSyntheticDefaultImports":true,"alwaysStrict":true,"esModuleInterop":true,"etsAnnotationsEnable":true,"experimentalDecorators":true,"importsNotUsedAsValues":0,"module":6,"noImplicitAny":false,"noUnusedLocals":false,"noUnusedParameters":false,"skipLibCheck":false,"sourceMap":true,"target":8,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[46,49,94,103,124,125,129,135,141,149],[64,66],[63],[149,150],[46,58,59,60,61,62],[96,99],[68,94,101,102,103,104,105,109,110,112,119,120,121,122,141,142,143,144,145],[48],[65],[49],[57,74,97,98,149],[49,64,67,73,112,149],[153],[46,74],[46,117],[74],[46],[83,84,85,86,87,88,89,90,91],[46,112],[46,74,75,76,77,78,79,80,92,93,114,115,116,118,146,147],[46,47,48,49,51,52,53,54,55,56],[46,49,74,128,131,133],[137],[46,68,123],[46,49,74],[119],[50,69,74,81],[193,194,195,196,197],[81,82],[46,69,72,73],[46,110],[46,50,70,71],[46,303],[46,74,304,305,306],[46,57,65,68,74,92,148],[48,73],[46,123,137,138,139,140],[136,137,138],[46,68,125,128,129,130,132,133,134],[55,66,110],[103],[46,49,58,65,106,107,108,110],[59,60,61],[49,94,99,119],[46,51,68,72,97,105,109],[112],[54,55,66,110],[74,103,119],[57,63],[46,49,53,55,64,65,66,74,94,95,99,100,101,102,103,104,110,111,149,150],[46,49,65,94,99,100,101,102,103,111,119],[83,87,148],[85,88,148],[83,84,86,148],[50,81,82],[85,87],[83],[87,88,148],[127,128,132],[126,127],[128,133,134],[133],[47,51,52,57],[47,50,57],[51,55,57],[47,53,54,57],[194,195,197],[193,194,195,196],[46,194],[78],[82,87],[74,78,83,86,110,114,117,118,147,148,183,184,185,186,187,188,189,190],[198],[92],[46,49],[149],[46,71,82,188],[170,171,172,173,174,175,176,177,178,179,180,181,182,191,192,199,200,201,202,203,204,205,206,207,208,209,210,212,213,214,215,216,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,286,287,288,289,290,292,293,294,295,297,298,299,300,301,302,308,309,310,311,312,314,315,316,317,318,319,320,321,322,323,324,325,326,327],[46,149],[285],[291],[296],[50,83],[307],[190],[49,64,65,149,150,151],[151,154],[74,82,92]],"referencedMap":[[136,1],[67,2],[64,3],[106,4],[63,5],[100,6],[146,7],[98,8],[66,9],[95,10],[107,2],[99,11],[150,12],[154,13],[116,14],[118,15],[71,16],[77,17],[92,18],[114,19],[148,20],[57,21],[132,22],[138,23],[137,24],[117,25],[153,26],[82,27],[198,28],[291,29],[76,17],[74,30],[147,14],[305,31],[78,17],[72,32],[79,17],[73,17],[304,33],[303,17],[307,34],[149,35],[103,10],[94,36],[141,37],[139,38],[124,10],[135,39],[121,40],[104,41],[109,42],[62,43],[145,44],[110,45],[143,46],[119,47],[122,26],[144,48],[58,49],[112,50],[120,51],[142,26],[88,52],[86,53],[87,54],[83,55],[91,56],[89,52],[84,57],[90,58],[133,59],[128,60],[131,61],[134,62],[53,63],[51,64],[56,65],[54,63],[55,66],[196,67],[197,68],[195,69],[170,70],[171,70],[177,71],[191,72],[199,73],[201,74],[204,70],[209,75],[215,76],[227,77],[313,78],[243,79],[245,79],[247,74],[250,57],[253,17],[286,80],[292,81],[297,82],[301,83],[302,17],[308,84],[300,85],[113,79],[152,86],[155,87],[160,88]],"exportedModulesMap":[[136,1],[67,2],[64,3],[106,4],[63,5],[100,6],[146,7],[98,8],[66,9],[95,10],[107,2],[99,11],[150,12],[154,13],[116,14],[118,15],[71,16],[77,17],[92,18],[114,19],[148,20],[57,21],[132,22],[138,23],[137,24],[117,25],[153,26],[82,27],[198,28],[291,29],[76,17],[74,30],[147,14],[305,31],[78,17],[72,32],[79,17],[73,17],[304,33],[303,17],[307,34],[149,35],[103,10],[94,36],[141,37],[139,38],[124,10],[135,39],[121,40],[104,41],[109,42],[62,43],[145,44],[110,45],[143,46],[119,47],[122,26],[144,48],[58,49],[112,50],[120,51],[142,26],[88,52],[86,53],[87,54],[83,55],[91,56],[89,52],[84,57],[90,58],[133,59],[128,60],[131,61],[134,62],[53,63],[51,64],[56,65],[54,63],[55,66],[196,67],[197,68],[195,69],[170,70],[171,70],[177,71],[191,72],[199,73],[201,74],[204,70],[209,75],[215,76],[227,77],[313,78],[243,79],[245,79],[247,74],[250,57],[253,17],[286,80],[292,81],[297,82],[301,83],[302,17],[308,84],[300,85],[113,79],[152,86],[155,87],[160,88]],"semanticDiagnosticsPerFile":[136,93,67,64,106,108,63,100,146,98,96,66,65,97,95,107,111,99,150,49,154,116,80,118,71,77,92,114,187,190,148,46,57,132,138,137,117,183,153,75,69,81,82,198,291,189,151,296,188,115,76,74,184,147,305,78,72,79,73,304,303,306,307,149,103,94,141,139,140,124,125,135,129,121,104,60,109,62,145,59,68,110,143,105,119,122,144,61,58,112,120,102,101,142,88,285,86,85,87,83,185,91,89,84,186,90,133,128,131,127,130,134,126,53,51,56,48,54,55,47,52,123,70,50,196,197,193,195,194,170,171,172,173,174,175,176,177,178,179,180,181,182,191,192,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,217,216,218,219,220,221,223,224,225,222,226,227,228,229,230,313,282,231,232,233,234,235,236,237,239,238,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,310,275,276,277,278,279,280,312,281,284,283,287,286,288,289,290,292,293,294,295,297,298,299,301,302,311,308,300,309,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,8,45,42,43,44,1,113,152,155,156,157,158,159,[160,[{"file":"../../../../../../src/main/ets/pages/mesh.ets","start":1534,"length":4,"code":2345,"category":1,"messageText":"Argument of type 'null' is not assignable to parameter of type 'number[]'."},{"file":"../../../../../../src/main/ets/pages/mesh.ets","start":2780,"length":13,"code":2769,"category":1,"messageText":{"messageText":"No overload matches this call.","category":1,"code":2769,"next":[{"messageText":"Overload 1 of 3, '(src: ResourceStr | PixelMap | DrawableDescriptor): ImageAttribute', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Argument of type 'PixelMap | undefined' is not assignable to parameter of type 'ResourceStr | PixelMap | DrawableDescriptor'.","category":1,"code":2345,"next":[{"messageText":"Type 'undefined' is not assignable to type 'ResourceStr | PixelMap | DrawableDescriptor'.","category":1,"code":2322}]}]},{"messageText":"Overload 2 of 3, '(src: ResourceStr | PixelMap | DrawableDescriptor | ImageContent): ImageAttribute', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Argument of type 'PixelMap | undefined' is not assignable to parameter of type 'ResourceStr | PixelMap | DrawableDescriptor | ImageContent'.","category":1,"code":2345,"next":[{"messageText":"Type 'undefined' is not assignable to type 'ResourceStr | PixelMap | DrawableDescriptor | ImageContent'.","category":1,"code":2322}]}]}]},"relatedInformation":[]},{"file":"../../../../../../src/main/ets/pages/mesh.ets","start":3879,"length":13,"code":2345,"category":1,"messageText":{"messageText":"Argument of type 'PixelMap | undefined' is not assignable to parameter of type 'PixelMap'.","category":1,"code":2345,"next":[{"messageText":"Type 'undefined' is not assignable to type 'PixelMap'.","category":1,"code":2322}]}},{"file":"../../../../../../src/main/ets/pages/mesh.ets","start":4324,"length":13,"code":2345,"category":1,"messageText":{"messageText":"Argument of type 'PixelMap | undefined' is not assignable to parameter of type 'PixelMap'.","category":1,"code":2345,"next":[{"messageText":"Type 'undefined' is not assignable to type 'PixelMap'.","category":1,"code":2322}]}}]],161,162,163,164,165,166,167,168,169],"affectedFilesPendingEmit":[[136,1],[93,1],[67,1],[64,1],[106,1],[108,1],[63,1],[100,1],[146,1],[98,1],[96,1],[66,1],[65,1],[97,1],[95,1],[107,1],[111,1],[99,1],[150,1],[49,1],[154,1],[116,1],[80,1],[118,1],[71,1],[77,1],[92,1],[114,1],[187,1],[190,1],[148,1],[46,1],[57,1],[132,1],[138,1],[137,1],[117,1],[183,1],[153,1],[75,1],[69,1],[81,1],[82,1],[198,1],[291,1],[189,1],[151,1],[296,1],[188,1],[115,1],[76,1],[74,1],[184,1],[147,1],[305,1],[78,1],[72,1],[79,1],[73,1],[304,1],[303,1],[306,1],[307,1],[149,1],[103,1],[94,1],[141,1],[139,1],[140,1],[124,1],[125,1],[135,1],[129,1],[121,1],[104,1],[60,1],[109,1],[62,1],[145,1],[59,1],[68,1],[110,1],[143,1],[105,1],[119,1],[122,1],[144,1],[61,1],[58,1],[112,1],[120,1],[102,1],[101,1],[142,1],[88,1],[285,1],[86,1],[85,1],[87,1],[83,1],[185,1],[91,1],[89,1],[84,1],[186,1],[90,1],[133,1],[128,1],[131,1],[127,1],[130,1],[134,1],[126,1],[53,1],[51,1],[56,1],[48,1],[54,1],[55,1],[47,1],[52,1],[123,1],[70,1],[50,1],[196,1],[197,1],[193,1],[195,1],[194,1],[170,1],[171,1],[172,1],[173,1],[174,1],[175,1],[176,1],[177,1],[178,1],[179,1],[180,1],[181,1],[182,1],[191,1],[192,1],[199,1],[200,1],[201,1],[202,1],[203,1],[204,1],[205,1],[206,1],[207,1],[208,1],[209,1],[210,1],[211,1],[212,1],[213,1],[214,1],[215,1],[217,1],[216,1],[218,1],[219,1],[220,1],[221,1],[223,1],[224,1],[225,1],[222,1],[226,1],[227,1],[228,1],[229,1],[230,1],[313,1],[282,1],[231,1],[232,1],[233,1],[234,1],[235,1],[236,1],[237,1],[239,1],[238,1],[240,1],[241,1],[242,1],[243,1],[244,1],[245,1],[246,1],[247,1],[248,1],[249,1],[250,1],[251,1],[252,1],[253,1],[254,1],[255,1],[256,1],[257,1],[258,1],[259,1],[260,1],[261,1],[262,1],[263,1],[264,1],[265,1],[266,1],[267,1],[268,1],[269,1],[270,1],[271,1],[272,1],[273,1],[274,1],[310,1],[275,1],[276,1],[277,1],[278,1],[279,1],[280,1],[312,1],[281,1],[284,1],[283,1],[287,1],[286,1],[288,1],[289,1],[290,1],[292,1],[293,1],[294,1],[295,1],[297,1],[298,1],[299,1],[301,1],[302,1],[311,1],[308,1],[300,1],[309,1],[2,1],[3,1],[4,1],[5,1],[6,1],[7,1],[8,1],[113,1],[152,1],[155,1],[156,1],[157,1],[158,1],[159,1],[160,1],[161,1],[162,1],[163,1],[164,1],[165,1],[166,1],[167,1],[168,1],[169,1]]},"version":"4.9.5"} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/compileInfo.json b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/compileInfo.json new file mode 100644 index 00000000000..b28e1248f0f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/compileInfo.json @@ -0,0 +1 @@ +{"buildMode":"Debug"} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compileContextInfo.json b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compileContextInfo.json new file mode 100644 index 00000000000..98710fd8244 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compileContextInfo.json @@ -0,0 +1 @@ +{"hspPkgNames":[],"compileEntries":["&entry/src/main/ets/entryability/EntryAbility&","&entry/src/main/ets/entrybackupability/EntryBackupAbility&","&entry/src/main/ets/pages/AntiAlias&","&entry/src/main/ets/pages/CircleExample&","&entry/src/main/ets/pages/Fill&","&entry/src/main/ets/pages/Index&","&entry/src/main/ets/pages/Mesh&","&entry/src/main/ets/pages/Shape&","&entry/src/main/ets/pages/ShapeExample&","&entry/src/main/ets/pages/Stroke&","&entry/src/main/ets/pages/StrokeLineJoin&","&entry/src/main/ets/pages/StrokeMiterLimit&","&entry/src/main/ets/pages/StrokeOpacity&","&entry/src/main/ets/pages/ViewPort1&","&entry/src/main/ets/pages/ViewPort2&","&entry/src/main/ets/pages/ViewPort3&"],"updateVersionInfo":{}} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/AntiAlias.ets-10a8c10904ff45411138364719ce7a0f.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/AntiAlias.ets-10a8c10904ff45411138364719ce7a0f.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..3394f3f521f8b18fc8d26b1e2924f47945e795e5 GIT binary patch literal 11940 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/CircleExample.ets-133fe6d60f02d59e3ef0890a76aceab0.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/CircleExample.ets-133fe6d60f02d59e3ef0890a76aceab0.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..68ce9e03529f98e0c03feae1abb2a6027a1d31ec GIT binary patch literal 11860 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/EntryBackupAbility.ets-8fb6d10e24d06ab44004f738efc10e2e.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/EntryBackupAbility.ets-8fb6d10e24d06ab44004f738efc10e2e.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..590f90675cbf6e3ae61ed0601e9601882e2a61c9 GIT binary patch literal 9875 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 D<|!d6 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Mesh.ets-863e48205f15d701e4ea8e96f865fdae.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Mesh.ets-863e48205f15d701e4ea8e96f865fdae.msgpack new file mode 100644 index 00000000000..8625013acb7 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Mesh.ets-863e48205f15d701e4ea8e96f865fdae.msgpack @@ -0,0 +1,537 @@ +Ôr@Ÿªassertions¤code´customTransformCache¬dependencies¢id¤meta±moduleSideEffects¬originalCode±originalSourcemap«resolvedIds®sourcemapChainµsyntheticNamedExportsµtransformDependencies®transformFiles¨cacheAstÔrAÚ8 if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// [Start mesh] +import { FrameNode as FrameNode } from "@ohos.arkui.node"; +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// [Start mesh] +import { NodeController as NodeController } from "@ohos.arkui.node"; +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// [Start mesh] +import { RenderNode as RenderNode } from "@ohos.arkui.node"; +import drawing from "@ohos.graphics.drawing"; +let offCanvas = new OffscreenCanvas(150, 150); +let ctx = offCanvas.getContext('2d'); +class DrawingRenderNode extends RenderNode { + constructor() { + super(...arguments); + this.verts_ = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360]; + } + setVerts(verts) { + this.verts_ = verts; + } + async draw(context) { + const canvas = context.canvas; + let pixelMap = ctx.getPixelMap(0, 0, 150, 150); + const brush = new drawing.Brush(); // åªæ”¯æŒbrush,使用pen没有绘制效果。 + canvas.attachBrush(brush); + let verts = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + ; // 18 + canvas.drawPixelMapMesh(pixelMap, 2, 2, verts, 0, null, 0); + canvas.detachBrush(); + } +} +const renderNode = new DrawingRenderNode(); +renderNode.frame = { + x: 0, + y: 0, + width: 150, + height: 150 +}; +class MyNodeController extends NodeController { + constructor() { + super(...arguments); + this.rootNode = null; + } + makeNode(uiContext) { + this.rootNode = new FrameNode(uiContext); + const rootRenderNode = this.rootNode.getRenderNode(); + if (rootRenderNode !== null) { + rootRenderNode.appendChild(renderNode); + } + return this.rootNode; + } +} +class Mesh extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.myNodeController = new MyNodeController(); + this.__showShape = new ObservedPropertySimplePU(false, this, "showShape"); + this.__pixelMap = new ObservedPropertyObjectPU(undefined, this, "pixelMap"); + this.__shapeWidth = new ObservedPropertySimplePU(150, this, "shapeWidth"); + this.__strokeWidth = new ObservedPropertySimplePU(1, this, "strokeWidth"); + this.__meshArray = new ObservedPropertyObjectPU([0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360], this, "meshArray"); + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params) { + if (params.myNodeController !== undefined) { + this.myNodeController = params.myNodeController; + } + if (params.showShape !== undefined) { + this.showShape = params.showShape; + } + if (params.pixelMap !== undefined) { + this.pixelMap = params.pixelMap; + } + if (params.shapeWidth !== undefined) { + this.shapeWidth = params.shapeWidth; + } + if (params.strokeWidth !== undefined) { + this.strokeWidth = params.strokeWidth; + } + if (params.meshArray !== undefined) { + this.meshArray = params.meshArray; + } + } + updateStateVars(params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__showShape.purgeDependencyOnElmtId(rmElmtId); + this.__pixelMap.purgeDependencyOnElmtId(rmElmtId); + this.__shapeWidth.purgeDependencyOnElmtId(rmElmtId); + this.__strokeWidth.purgeDependencyOnElmtId(rmElmtId); + this.__meshArray.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__showShape.aboutToBeDeleted(); + this.__pixelMap.aboutToBeDeleted(); + this.__shapeWidth.aboutToBeDeleted(); + this.__strokeWidth.aboutToBeDeleted(); + this.__meshArray.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get showShape() { + return this.__showShape.get(); + } + set showShape(newValue) { + this.__showShape.set(newValue); + } + get pixelMap() { + return this.__pixelMap.get(); + } + set pixelMap(newValue) { + this.__pixelMap.set(newValue); + } + get shapeWidth() { + return this.__shapeWidth.get(); + } + set shapeWidth(newValue) { + this.__shapeWidth.set(newValue); + } + get strokeWidth() { + return this.__strokeWidth.get(); + } + set strokeWidth(newValue) { + this.__strokeWidth.set(newValue); + } + get meshArray() { + return this.__meshArray.get(); + } + set meshArray(newValue) { + this.__meshArray.set(newValue); + } + aboutToAppear() { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(0, 0, 150, 150); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Image.create(this.pixelMap); + Image.backgroundColor(Color.Red); + Image.width(150); + Image.height(150); + Image.onClick(() => { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(1, 1, 150, 150); + this.myNodeController.rebuild(); + this.strokeWidth += 1; + }); + }, Image); + this.observeComponentCreation2((elmtId, isInitialRender) => { + NodeContainer.create(this.myNodeController); + NodeContainer.width(150); + NodeContainer.height(150); + NodeContainer.backgroundColor(Color.Grey); + NodeContainer.onClick(() => { + this.meshArray = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360, 0]; + }); + }, NodeContainer); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Button.createWithLabel('change mesh'); + Button.margin(5); + Button.onClick(() => { + this.meshArray = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + }); + }, Button); + Button.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Button.createWithLabel('Show Shape'); + Button.margin(5); + Button.onClick(() => { + this.showShape = !this.showShape; + }); + }, Button); + Button.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + If.create(); + if (this.showShape) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(this.pixelMap); + Shape.fillOpacity(0.2); + Shape.backgroundColor(Color.Grey); + Shape.width(this.shapeWidth); + Shape.height(150); + Shape.mesh(ObservedObject.GetRawObject(this.meshArray), 2, 2); + Shape.fill(0x317AF7); + Shape.stroke(0xEE8443); + Shape.strokeWidth(this.strokeWidth); + Shape.strokeLineJoin(LineJoinStyle.Miter); + Shape.strokeMiterLimit(5); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(150); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + Shape.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(this.pixelMap); + Shape.fillOpacity(0.2); + Shape.backgroundColor(Color.Grey); + Shape.width(this.shapeWidth); + Shape.height(150); + Shape.fill(0x317AF7); + Shape.stroke(0xEE8443); + Shape.strokeWidth(this.strokeWidth); + Shape.strokeLineJoin(LineJoinStyle.Miter); + Shape.strokeMiterLimit(5); + Shape.onDragStart(() => { + }); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(150); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + Shape.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.create(); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.fillOpacity(0.2); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.backgroundColor(Color.Grey); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.width(this.shapeWidth); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.height(150); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.mesh(ObservedObject.GetRawObject(this.meshArray), 2, 2); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.fill(0x317AF7); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.stroke(0xEE8443); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.strokeWidth(this.strokeWidth); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.strokeLineJoin(LineJoinStyle.Miter); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.strokeMiterLimit(5); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.onClick(() => { + this.pixelMap = undefined; + }); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(150); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + }, If); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName() { + return "Mesh"; + } +} +registerNamedRoute(() => new Mesh(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/Mesh", pageFullPath: "entry/src/main/ets/pages/Mesh", integratedHsp: "false", moduleType: "followWithHap" }); +//# sourceMappingURL=Mesh.js.mapÂ’Ùthvigor_ignore_D:_devecostudio-windows-6.0.0.858_DevEco Studio_sdk_default_openharmony_ets_api_@ohos.arkui.node.d.tsÙzhvigor_ignore_D:_devecostudio-windows-6.0.0.858_DevEco Studio_sdk_default_openharmony_ets_api_@ohos.graphics.drawing.d.tsÙfE:\applications_app_samples\code\DocsSample\ArkUISample\ShapeDrawing\entry\src\main\ets\pages\Mesh.etsÔrB›ªmoduleName±isLocalDependency¯isNodeEntryFile§pkgPath±belongProjectPath§pkgNameªpkgVersion±dependencyPkgInfo°belongModulePath§checker¬shouldEmitJs¥entryÃÂÙJE:\applications_app_samples\code\DocsSample\ArkUISample\ShapeDrawing\entryÙDE:\applications_app_samples\code\DocsSample\ArkUISample\ShapeDrawing¥entry¥1.0.0ÔÙJE:\applications_app_samples\code\DocsSample\ArkUISample\ShapeDrawing\entryÔrCÜ®¬getNodeCount²getIdentifierCount®getSymbolCount¬getTypeCountµgetInstantiationCountµgetRelationCacheSizes±isUndefinedSymbol±isArgumentsSymbol¯isUnknownSymbol¯getMergedSymbol®getDiagnostics´getGlobalDiagnostics´getRecursionIdentity¶getUnmatchedProperties¹getTypeOfSymbolAtLocation¯getTypeOfSymbolÙ(getSymbolsOfParameterPropertyDeclaration·getDeclaredTypeOfSymbol³getPropertiesOfType±getPropertyOfTypeÙ"getPrivateIdentifierPropertyOfType·getTypeOfPropertyOfType²getIndexInfoOfType³getIndexInfosOfTypeºgetIndexInfosOfIndexSymbol³getSignaturesOfType²getIndexTypeOfType¬getIndexType¬getBaseTypes¸getBaseTypeOfLiteralType®getWidenedType³getTypeFromTypeNode°getParameterTypeÙ$getParameterIdentifierNameAtPosition¸getPromisedTypeOfPromise®getAwaitedType¸getReturnTypeOfSignature®isNullableType¯getNullableType²getNonNullableType²getNonOptionalType°getTypeArguments®typeToTypeNodeÙ$indexInfoToIndexSignatureDeclaration¿signatureToSignatureDeclaration²symbolToEntityName²symbolToExpression¬symbolToNodeÙ!symbolToTypeParameterDeclarations¼symbolToParameterDeclarationºtypeParameterToDeclaration±getSymbolsInScope³getSymbolAtLocation·getIndexInfosAtLocationÙ!getShorthandAssignmentValueSymbolÙ#getExportSpecifierLocalTargetSymbol·getExportSymbolOfSymbol±getTypeAtLocationÙ tryGetTypeAtLocationWithoutCheckºgetTypeOfAssignmentPatternÙ*getPropertySymbolOfDestructuringAssignment±signatureToString¬typeToString®symbolToStringµtypePredicateToString®writeSignature©writeType«writeSymbol²writeTypePredicate¼getAugmentedPropertiesOfType®getRootSymbols²getSymbolOfExpando±getContextualTypeÙ(getContextualTypeForObjectLiteralElementÙ#getContextualTypeForArgumentAtIndexÙ getContextualTypeForJsxAttribute²isContextSensitiveÙ!getTypeOfPropertyOfContextualTypeµgetFullyQualifiedNameÙ#tryGetResolvedSignatureWithoutCheck´getResolvedSignatureÙ/getResolvedSignatureForStringLiteralCompletionsÙ$getResolvedSignatureForSignatureHelpµgetExpandedParameters¹hasEffectiveRestParameterºcontainsArgumentsReference°getConstantValueµisValidPropertyAccessÙ#isValidPropertyAccessForCompletions»getSignatureFromDeclarationºisImplementationOfOverload¹getImmediateAliasedSymbol°getAliasedSymbol¯getEmitResolver²getExportsOfModule¿getExportsAndPropertiesOfModuleÙ forEachExportAndPropertyOfModule¯getSymbolWalker±getAmbientModules¹getJsxIntrinsicTagNamesAt³isOptionalParameter»tryGetMemberInModuleExportsÙ(tryGetMemberInModuleExportsAndProperties´tryFindAmbientModuleÙ(tryFindAmbientModuleWithoutAugmentations¯getApparentType¬getUnionType²isTypeAssignableTo³createAnonymousType¯createSignature¬createSymbol¯createIndexInfoªgetAnyType­getStringType­getNumberType±createPromiseType¯createArrayType¹getElementTypeOfArrayType®getBooleanType¬getFalseType«getTrueType«getVoidType°getUndefinedType«getNullType¯getESSymbolType¬getNeverType¯getOptionalType®getPromiseType²getPromiseLikeType´getAsyncIterableType²isSymbolAccessible«isArrayType«isTupleType¯isArrayLikeTypeÙ#isTypeInvalidDueToUnionDiscriminantºgetExactOptionalProperties¿getAllPossiblePropertiesOfTypesÙ(getSuggestedSymbolForNonexistentPropertyÙ#getSuggestionForNonexistentPropertyÙ,getSuggestedSymbolForNonexistentJSXAttributeÙ&getSuggestedSymbolForNonexistentSymbolÙ!getSuggestionForNonexistentSymbolÙ&getSuggestedSymbolForNonexistentModuleÙ!getSuggestionForNonexistentExportÙ+getSuggestedSymbolForNonexistentClassMember·getBaseConstraintOfType»getDefaultFromTypeParameter«resolveName¯getJsxNamespaceµgetJsxFragmentFactory¸getAccessibleSymbolChain»getTypePredicateOfSignature¹resolveExternalModuleName»resolveExternalModuleSymbol°tryGetThisTypeAt¹getTypeArgumentConstraint¸getSuggestionDiagnostics¸runWithCancellationTokenÙ3getLocalTypeParametersOfClassOrInterfaceOrTypeAlias´isDeclarationVisible´isPropertyAccessible»getTypeOnlyAliasDeclaration¿getMemberOverrideModifierStatusÙ!isTypeParameterPossiblyReferenced²getConstEnumRelate´clearConstEnumRelateµdeleteConstEnumRelateÙ$getTypeArgumentsForResolvedSignatureµgetCheckedSourceFilesÙ"collectHaveTsNoCheckFilesForLinter·clearQualifiedNameCache®isStaticRecord²isStaticSourceFile³createIntrinsicTypeÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÃÃÚZ/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start mesh] +import { FrameNode, NodeController, RenderNode } from '@kit.ArkUI'; +import { image } from '@kit.ImageKit'; +import { drawing } from '@kit.ArkGraphics2D'; + +let offCanvas: OffscreenCanvas = new OffscreenCanvas(150, 150); +let ctx = offCanvas.getContext('2d'); + +class DrawingRenderNode extends RenderNode { + private verts_: Array = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360]; + + setVerts(verts: Array): void { + this.verts_ = verts + } + + async draw(context: DrawContext) { + const canvas = context.canvas; + let pixelMap = ctx.getPixelMap(0, 0, 150, 150); + const brush = new drawing.Brush(); // åªæ”¯æŒbrush,使用pen没有绘制效果。 + canvas.attachBrush(brush); + let verts: number[] = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + ; // 18 + canvas.drawPixelMapMesh(pixelMap, 2, 2, verts, 0, null, 0); + canvas.detachBrush(); + } +} + +const renderNode = new DrawingRenderNode(); +renderNode.frame = { + x: 0, + y: 0, + width: 150, + height: 150 +}; + +class MyNodeController extends NodeController { + private rootNode: FrameNode | null = null; + + makeNode(uiContext: UIContext): FrameNode | null { + this.rootNode = new FrameNode(uiContext); + + const rootRenderNode = this.rootNode.getRenderNode(); + if (rootRenderNode !== null) { + rootRenderNode.appendChild(renderNode); + } + return this.rootNode; + } +} + +@Entry +@Component +struct Mesh { + private myNodeController: MyNodeController = new MyNodeController(); + @State showShape: boolean = false; + @State pixelMap: image.PixelMap | undefined = undefined; + @State shapeWidth: number = 150; + @State strokeWidth: number = 1; + @State meshArray: Array = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360]; + + aboutToAppear(): void { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img: ImageBitmap = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(0, 0, 150, 150); + } + + build() { + Column() { + Image(this.pixelMap) + .backgroundColor(Color.Red) + .width(150) + .height(150) + .onClick(() => { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img: ImageBitmap = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(1, 1, 150, 150); + this.myNodeController.rebuild(); + this.strokeWidth += 1; + }) + + NodeContainer(this.myNodeController) + .width(150) + .height(150) + .backgroundColor(Color.Grey) + .onClick(() => { + this.meshArray = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360, 0] + }) + Button('change mesh') + .margin(5) + .onClick(() => { + this.meshArray = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + }) + Button('Show Shape') + .margin(5) + .onClick(() => { + this.showShape = !this.showShape + }) + + if (this.showShape) { + Shape(this.pixelMap) { + Path().width(150).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .fillOpacity(0.2) + .backgroundColor(Color.Grey) + .width(this.shapeWidth) + .height(150) + .mesh(this.meshArray, 2, 2) + .fill(0x317AF7) + .stroke(0xEE8443) + .strokeWidth(this.strokeWidth) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + + Shape(this.pixelMap) { + Path().width(150).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .fillOpacity(0.2) + .backgroundColor(Color.Grey) + .width(this.shapeWidth) + .height(150) + .fill(0x317AF7) + .stroke(0xEE8443) + .strokeWidth(this.strokeWidth) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + .onDragStart(() => { + }) + + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape() { + Path().width(150).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .fillOpacity(0.2) + .backgroundColor(Color.Grey) + .width(this.shapeWidth) + .height(150) + .mesh(this.meshArray, 2, 2) + .fill(0x317AF7) + .stroke(0xEE8443) + .strokeWidth(this.strokeWidth) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + .onClick(() => { + this.pixelMap = undefined; + }) + } + } + } +} +// [End mesh]ÀÔrD’°@ohos.arkui.node¶@ohos.graphics.drawingÔrE—ªassertions¨external¢id¤meta±moduleSideEffectsªresolvedByµsyntheticNamedExportsAÃÙthvigor_ignore_D:_devecostudio-windows-6.0.0.858_DevEco Studio_sdk_default_openharmony_ets_api_@ohos.arkui.node.d.tsÔrF‘¯hostModulesInfo‘ÔrG’²hostDependencyName®hostModuleName°@ohos.arkui.node¥entryêoh-resolveÂEAÃÙzhvigor_ignore_D:_devecostudio-windows-6.0.0.858_DevEco Studio_sdk_default_openharmony_ets_api_@ohos.graphics.drawing.d.tsF‘G¶@ohos.graphics.drawing¥entryêoh-resolve“ÔrH–§version¤fileªsourceRoot§sources¥names¨mappings§Mesh.js ‘¨Mesh.etsÜ=‘”‘” ’””š”” ”  ”” ””!”'6”9ÌB”:ÌC‘”‘” ’””š””” ”"””)"”+"”16”ÌCÌB”ÌDÌC‘”‘” ’””š””$” $”.”$”!.”#.”)6”;ÌB”<ÌC–”” ”””,,”--œ”””  ”!”%”#4”$5”'8”):”,=”->”.?›”””” + +”””””##”$$”%%•””””  ”**‘”Ü)” +””"”#”$”&”'”)”+”!-”".”$0”'3”)5”*6”,8”-9”/;”2>”4Ì@”6ÌB”8ÌD”;ÌG”=ÌI”Ì@ÌL”ÌBÌN”ÌEÌQ”ÌGÌS”ÌHÌT”ÌJÌV”ÌMÌY”ÌOÌ[”ÌQÌ]”ÌSÌ_”ÌVÌb”ÌXÌd”Ì[Ìg”Ì]Ìi”Ì`Ìl”ÌaÌm”ÌbÌn’”(”(”””  +”  ”—”” ”  ””””’””–”” ” +” ” ”!˜”” +”””””%!”&"Ü” ” ” ” ” ” ”& "”' #”( $”* &”+ '”- )”0 ,”2 .”5 1”6 2”7 3œ”!”! +”!”!”!”!!”"!”'!#”)!%”*!&”+!'”ÌC!?˜”"”" +”" ”"”"” "”!"”""Ü*”#” #”# ”#”#”#”#”#”#!”#$” #&”!#'”##)”%#+”'#-”(#.”*#0”+#1”-#3”0#6”2#8”4#:”6#<”9#?”;#ÌA”>#ÌD”Ì@#ÌF”ÌC#ÌI”ÌE#ÌK”ÌF#ÌL”ÌH#ÌN”ÌK#ÌQ”ÌM#ÌS”ÌP#ÌV”ÌR#ÌX”ÌU#Ì[”ÌW#Ì]”ÌY#Ì_”Ì[#Ìa”Ì^#Ìd”Ì_#Ìe”Ì`#Ìf””$” $” +$”$ Ü”%”% +”% ”%” %”(%$”*%&”+%'”-%)”.%*”0%,”5%1”7%3”8%4”:%6”>%:”Ì@%<”ÌA%=”ÌB%>”ÌC%?–”&”& +”& ”&”&”&’”'”'‘”(˜”*”*”*”*”*”(*(”***”+*+•”+” ++ +” + ”+”+””,”,”,”,””-”-”-”-””.” .” . ”. ””/” +/” / +”/ ’”0”0•”2”2”2”2”-2-‘”2•”3 +”3”3'”3+”3,’”>”>””5” 5 +” 5 ”5›”6” 6” 6 ”6”6”6”%6!”&6"”/6+”06,”16-›”8”8 +”8”8”#8”$8 ”,8(”-8)”:86”<88”=89–”9” 9”9”9”#9”%9!˜” :”:”:”&: ”':!”1:+”2:,”3:-‘” ;–”<”< ”<”<”<”<’”=”=‘”>’”ÌB” +ÌB ‘”Ì@”” ÌC/”$ÌC3”4ÌCÌC”6ÌCÌE’”8ÌD”=ÌD#’”7ÌE0”Ì@ÌE9’”9ÌF”<ÌF!’”:ÌG”;ÌG Ü&”8ÌH$”9ÌH%”:ÌH&”<ÌH(”=ÌH)”?ÌH+”ÌAÌH-”ÌCÌH/”ÌDÌH0”ÌFÌH2”ÌIÌH5”ÌKÌH7”ÌLÌH8”ÌNÌH:”ÌOÌH;”ÌQÌH=”ÌTÌHÌ@”ÌVÌHÌB”ÌXÌHÌD”ÌZÌHÌF”Ì]ÌHÌI”Ì_ÌHÌK”ÌbÌHÌN”ÌdÌHÌP”ÌgÌHÌS”ÌiÌHÌU”ÌjÌHÌV”ÌlÌHÌX”ÌoÌHÌ[”ÌqÌHÌ]”ÌsÌHÌ_”ÌuÌHÌa”ÌxÌHÌd”ÌzÌHÌf”Ì}ÌHÌi”ÌÌHÌk”Ì‚ÌHÌn”̃ÌHÌo‘”>’”ÌD ”ÌD’”ÌD ”ÌD’”ÌE ”ÌE’”ÌE ”ÌE’”ÌF ”ÌF’”ÌF ”ÌF’”ÌG ”ÌG’”ÌG ”ÌG’”ÌH ”ÌH’”ÌH ”ÌH’”ÌJ”ÌJ’”ÌK”8ÌK4š”ÌL” ÌL”ÌL ”ÌL”ÌL”!ÌL*”"ÌL+”>ÌLÌG”?ÌLÌH”Ì@ÌLÌIÜ”ÌM” ÌM” ÌM”ÌM”ÌM”ÌM”ÌM”ÌM”ÌM”ÌM”!ÌM”$ÌM ”&ÌM"”)ÌM%”*ÌM&”+ÌM'Ü”ÌN” ÌN” ÌN ”ÌN”ÌN”ÌN”ÌN”'ÌN#”(ÌN$”)ÌN%”+ÌN'”,ÌN(”.ÌN*”1ÌN-”3ÌN/”6ÌN2”7ÌN3”8ÌN4’”ÌO”ÌO‘”ÌQ’” ÌR”ÌR +–” ÌS”ÌS ”ÌS ”ÌS”ÌS”&ÌS˜” ÌS”ÌS ”ÌT ”!ÌT”"ÌT”'ÌT”(ÌT”+ÌT"–” ÌS”ÌS ”ÌU ”ÌU”ÌU”ÌU–” ÌS”ÌS ”ÌV ”ÌV”ÌV”ÌV—” ÌS”ÌS ”ÌW ”ÌW”ÌW”ÌW”ÌW’”ÌX +”Ì@ÌX:š”ÌY +”ÌY”ÌY”ÌY!”ÌY%”)ÌY0”*ÌY1”ÌFÌYÌM”ÌGÌYÌN”ÌHÌYÌOÜ”ÌZ +”ÌZ ”ÌZ”ÌZ”ÌZ”!ÌZ”#ÌZ”$ÌZ”&ÌZ ”'ÌZ!”)ÌZ#”,ÌZ&”.ÌZ(”1ÌZ+”2ÌZ,”3ÌZ-Ü”Ì[ +”Ì[”Ì[”Ì[” Ì[”#Ì[”$Ì[”/Ì[)”0Ì[*”1Ì[+”3Ì[-”4Ì[.”6Ì[0”9Ì[3”;Ì[5”>Ì[8”?Ì[9”Ì@Ì[:˜”Ì\ +”Ì\”Ì\”%Ì\”&Ì\ ”-Ì\'”/Ì\)”0Ì\*—”Ì] +”Ì]”Ì]” Ì]”$Ì]”%Ì]”&Ì] ’” Ì^” Ì^ –” Ì`”Ì`”!Ì`”%Ì`”&Ì`”6Ì`)–” Ì`”Ì`”Ìa ”Ìa” Ìa”#Ìa–” Ì`”Ì`”Ìb ” Ìb”!Ìb”$Ìb˜” Ì`”Ì`”Ìc ”)Ìc”*Ìc”/Ìc”0Ìc”4Ìc#—” Ì`”Ì`”Ìd ”!Ìd”"Ìd”%Ìd”'ÌdÜ-”Ìe +”Ìe”Ìe”Ìe”!Ìe”"Ìe”#Ìe”%Ìe”&Ìe ”(Ìe"”*Ìe$”,Ìe&”-Ìe'”/Ìe)”2Ìe,”4Ìe.”5Ìe/”7Ìe1”8Ìe2”:Ìe4”=Ìe7”?Ìe9”ÌAÌe;”ÌCÌe=”ÌFÌeÌ@”ÌHÌeÌB”ÌKÌeÌE”ÌMÌeÌG”ÌPÌeÌJ”ÌRÌeÌL”ÌSÌeÌM”ÌUÌeÌO”ÌXÌeÌR”ÌZÌeÌT”Ì\ÌeÌV”Ì^ÌeÌX”ÌaÌeÌ[”ÌcÌeÌ]”ÌfÌeÌ`”ÌhÌeÌb”ÌkÌeÌe”ÌmÌeÌg”ÌnÌeÌh”ÌoÌeÌi”ÌpÌeÌi’” Ìf” Ìf ”” Ìg”Ìg ”#Ìg ”0Ìg–” Ìg”Ìg ”Ìh ”Ìh”Ìh”Ìh—” Ìg”Ìg ”Ìi ”Ìi”Ìi”Ìi” ÌiÜ+”Ìj +”Ìj”Ìj”Ìj”!Ìj”"Ìj”#Ìj”%Ìj”&Ìj ”(Ìj"”+Ìj%”-Ìj'”.Ìj(”0Ìj*”2Ìj,”4Ìj.”5Ìj/”7Ìj1”8Ìj2”:Ìj4”=Ìj7”?Ìj9”ÌAÌj;”ÌCÌj=”ÌFÌjÌ@”ÌHÌjÌB”ÌKÌjÌE”ÌMÌjÌG”ÌPÌjÌJ”ÌRÌjÌL”ÌSÌjÌM”ÌUÌjÌO”ÌXÌjÌR”ÌZÌjÌT”Ì]ÌjÌW”Ì_ÌjÌY”ÌbÌjÌ\”ÌdÌjÌ^”ÌfÌjÌ`”ÌhÌjÌb”ÌkÌjÌe”ÌlÌjÌf”ÌmÌjÌg’” Ìk” Ìk ’”Ìg”Ìg ”” Ìl”Ìl ”#Ìl ”/Ìl–” Ìl”Ìl ”Ìm ”Ìm”Ìm”Ìm—” Ìl”Ìl ”Ìn ”Ìn”Ìn”Ìn” Ìnš”Ìo +”Ìo”Ìo”Ìo”!Ìo”"Ìo”&Ìo ”'Ìo!”0Ìo*”1Ìo*’” Ìp” Ìp ’”Ìl”Ìl –” Ìr”Ìr +”Ìr”Ìr”Ìr” Ìr–”Ìs”Ìs ”%Ìs”)Ìs”*Ìs”2Ìs–”Ìs”Ìs ”Ìv ”)Ìv”*Ìv”-Ìv˜”Ìs”Ìs ”Ìw ”-Ìw”.Ìw”3Ìw”4Ìw”8Ìw#˜”Ìs”Ìs ”Ìx ”#Ìx”$Ìx”(Ìx”)Ìx”3Ìx–”Ìs”Ìs ”Ìy ”$Ìy”%Ìy”(Ìyœ”Ìs”Ìs ”Ìz ”"Ìz ”?Ìz”ÌCÌz”ÌDÌz”ÌMÌz”ÌPÌz”ÌQÌz”ÌSÌz!”ÌTÌz"–”Ìs”Ìs ”Ì{ ”"Ì{ ”#Ì{”+Ì{–”Ìs”Ìs ”Ì| ”$Ì|”%Ì|”-Ì|˜”Ìs”Ìs ”Ì} ”)Ì}”*Ì}”.Ì}”/Ì}”:Ì}%˜”Ìs”Ìs ”Ì~ ”,Ì~”-Ì~”:Ì~%”;Ì~&”Ì@Ì~+–”Ìs”Ìs ”Ì ”.Ì”/Ì”0Ì’”Ìt +”Ìt–”Ìt +”Ìt”Ìt”"Ìt”#Ìt”&Ìt–”Ìt +”Ìt”Ìt”#Ìt"”$Ìt#”&Ìt%–”Ìt +”Ìt”Ìt'”%Ìt/”&Ìt0”>ÌtÌH’”Ìs”Ìs –”Ì”Ì ”%Ì”)Ì”*Ì”2Ì–”Ì”Ì ”Ì„ ”)Ì„”*Ì„”-Ì„˜”Ì”Ì ”Ì… ”-Ì…”.Ì…”3Ì…”4Ì…”8Ì…#˜”Ì”Ì ”̆ ”#̆”$̆”(̆”)̆”3̆–”Ì”Ì ”̇ ”$̇”%̇”(̇–”Ì”Ì ”̈ ”"̈ ”#̈”+̈–”Ì”Ì ”̉ ”$̉”%̉”-̉˜”Ì”Ì ”ÌŠ ”)ÌŠ”*ÌŠ”.ÌŠ”/ÌŠ”:ÌŠ%˜”Ì”Ì ”Ì‹ ”,Ì‹”-Ì‹”:Ì‹%”;Ì‹&”Ì@Ì‹+–”Ì”Ì ”ÌŒ ”.ÌŒ”/ÌŒ”0ÌŒ—”Ì”Ì ”Ì ”)Ì”*Ì”-Ì”/Ì‘”ÌŽ ’”Ì‚ +”Ì‚–”Ì‚ +”Ì‚”Ì‚”"Ì‚”#Ì‚”&Ì‚–”Ì‚ +”Ì‚”Ì‚”#Ì‚"”$Ì‚#”&Ì‚%–”Ì‚ +”Ì‚”Ì‚'”%Ì‚/”&Ì‚0”>Ì‚ÌH’”Ì”Ì ’”Ì”9Ì)’”Ì‘”Ì‘ ’”Ì”9Ì)–”Ì‘”Ì‘ ”Ì” ”)Ì””*Ì””-Ì”’”Ì”9Ì)˜”Ì‘”Ì‘ ”Ì• ”-Ì•”.Ì•”3Ì•”4Ì•”8Ì•#’”Ì”9Ì)˜”Ì‘”Ì‘ ”Ì– ”#Ì–”$Ì–”(Ì–”)Ì–”3Ì–’”Ì”9Ì)–”Ì‘”Ì‘ ”Ì— ”$Ì—”%Ì—”(Ì—’”Ì”9Ì)œ”Ì‘”Ì‘ ”̘ ”"̘ ”?̘”ÌC̘”ÌD̘”ÌM̘”ÌP̘”ÌQ̘”ÌS̘!”ÌT̘"’”Ì”9Ì)–”Ì‘”Ì‘ ”Ì™ ”"Ì™ ”#Ì™”+Ì™’”Ì”9Ì)–”Ì‘”Ì‘ ”Ìš ”$Ìš”%Ìš”-Ìš’”Ì”9Ì)˜”Ì‘”Ì‘ ”Ì› ”)Ì›”*Ì›”.Ì›”/Ì›”:Ì›%’”Ì”9Ì)˜”Ì‘”Ì‘ ”Ìœ ”,Ìœ”-Ìœ”:Ìœ%”;Ìœ&”Ì@Ìœ+’”Ì”9Ì)–”Ì‘”Ì‘ ”Ì ”.Ì”/Ì”0Ì’”Ì”9Ì)—”Ì‘”Ì‘ ”Ìž ”%Ìž”&Ìž”)Ìž”+Ìž—”ÌŸ +” ÌŸ”!ÌŸ”)ÌŸ”,ÌŸ”5ÌŸ#”6ÌŸ$’”Ì ”Ì  ’”Ì’ +”Ì’–”Ì’ +”Ì’”Ì’”"Ì’”#Ì’”&Ì’–”Ì’ +”Ì’”Ì’”#Ì’"”$Ì’#”&Ì’%–”Ì’ +”Ì’”Ì’'”%Ì’/”&Ì’0”>Ì’ÌH’”Ì”5Ì)’”Ì‘”Ì‘ ‘” Ì¡‘” Ì¡’”ÌR”ÌR +‘”Ì£ÔrI–§version¤file§sources®sourcesContent¥names¨mappingsÀ‘À‘ÀÜF‘”‘”‘”‘”‘”‘”‘”‘”‘”‘” ‘” +‘” ‘” ‘” ‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘”‘” ‘”!‘”"‘”#‘”$‘”%‘”&‘”'‘”(‘”)‘”*‘”+‘”,‘”-‘”.‘”/‘”0‘”1‘”2‘”3‘”4‘”5‘”6‘”7‘”8‘”9‘”:‘”;‘”<‘”=‘”>‘”?‘”Ì@‘”ÌA‘”ÌB‘”ÌC‘”ÌD‘”ÌE‘”ÌF‘”ÌG‘”ÌH‘”ÌI‘”ÌJ‘”ÌK‘”ÌL‘”ÌM‘”ÌN‘”ÌO‘”ÌP‘”ÌQ‘”ÌR‘”ÌS‘”ÌT‘”ÌU‘”ÌV‘”ÌW‘”ÌX‘”ÌY‘”ÌZ‘”Ì[‘”Ì\‘”Ì]‘”Ì^‘”Ì_‘”Ì`‘”Ìa‘”Ìb‘”Ìc‘”Ìd‘”Ìe‘”Ìf‘”Ìg‘”Ìh‘”Ìi‘”Ìj‘”Ìk‘”Ìl‘”Ìm‘”Ìn‘”Ìo‘”Ìp‘”Ìq‘”Ìr‘”Ìs‘”Ìt‘”Ìu‘”Ìv‘”Ìw‘”Ìx‘”Ìy‘”Ìz‘”Ì{‘”Ì|‘”Ì}‘”Ì~‘”Ì‘”Ì€‘”Ì‘”Ì‚‘”̃‘”Ì„‘”Ì…‘”̆‘”̇‘”̈‘”̉‘”ÌŠ‘”Ì‹‘”ÌŒ‘”Ì‘”ÌŽ‘”Ì‘”Ì‘”Ì‘‘”Ì’‘”Ì“‘”Ì”‘”Ì•‘”Ì–‘”Ì—‘”̘‘”Ì™‘”Ìš‘”Ì›‘”Ìœ‘”Ì‘”Ìž‘”ÌŸ‘”Ì ‘”Ì¡‘”Ì¢‘”Ì£‘”̤‘”Ì¥‘”̦‘”̧‘”̨‘”Ì©‘”̪‘”Ì«‘”̬‘”Ì­‘”Ì®‘”̯‘”̰‘”̱‘”̲‘”̳‘”Ì´‘”̵‘”̶‘”Ì·‘”̸‘”̹‘”̺‘”Ì»‘”̼‘”̽‘”̾‘”Ì¿‘”ÌÀ‘”ÌÁ‘”Ì‘”ÌÑ”ÌÄ‘”ÌÅ‘”ÌÆ‘”ÌÇ‘”ÌÈ‘”ÌÉ‘”ÌÊ‘”ÌË‘”ÌÌ‘”ÌÍ‘”ÌΑ”ÌÏ‘”ÌБ”ÌÑ‘”ÌÒ‘”ÌÓ‘”ÌÔ‘”ÌÕ‘”ÌÖ‘”Ìב”ÌØ‘”ÌÙ‘”ÌÚ‘”ÌÛ‘”ÌÜ‘”ÌÝ‘”ÌÞ‘”Ìß‘”Ìà‘”Ìá‘”Ìâ‘”Ìã‘”Ìä‘”Ìå‘”Ìæ‘”Ìç‘”Ìè‘”Ìé‘”Ìê‘”Ìë‘”Ìì‘”Ìí‘”Ìî‘”Ìï‘”Ìð‘”Ìñ‘”Ìò‘”Ìó‘”Ìô‘”Ìõ‘”Ìö‘”Ì÷‘”Ìø‘”Ìù‘”Ìú‘”Ìû‘”Ìü‘”Ìý‘”Ìþ‘”Ìÿ‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í ‘”Í +‘”Í ‘”Í ‘”Í ‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í‘”Í ‘”Í!‘”Í"‘”Í#‘”Í$‘”Í%‘”Í&‘”Í'‘”Í(‘”Í)‘”Í*‘”Í+‘”Í,‘”Í-‘”Í.‘”Í/‘”Í0‘”Í1‘”Í2‘”Í3‘”Í4‘”Í5‘”Í6‘”Í7‘”Í8‘”Í9‘”Í:‘”Í;‘”Í<‘”Í=‘”Í>‘”Í?‘”Í@‘”ÍA‘”ÍB‘”ÍC‘”ÍD‘”ÍEÔrJ’§missing¦pluginægenAbcÂÔÔrK”²dynamicImportCache¹exportAllDeclarationCache»exportNamedDeclarationCache«importCache”ÔrL•¤type¥start£endªspecifiers¦source±ImportDeclarationÍÿÍ9‘ÔrM•¤type¥start£end¨imported¥local¯ImportSpecifierÍÍÔrN”¤type¥start£end¤nameªIdentifierÍÍ©FrameNodeNªIdentifierÍÍ©FrameNodeÔrO•¤type¥start£end¥value£raw§LiteralÍ&Í8°@ohos.arkui.node²"@ohos.arkui.node"L±ImportDeclarationͺÍþ‘M¯ImportSpecifierÍÃÍãNªIdentifierÍÃÍÑ®NodeControllerNªIdentifierÍÕÍã®NodeControllerO§LiteralÍëÍý°@ohos.arkui.node²"@ohos.arkui.node"L±ImportDeclarationÍÍ»‘M¯ImportSpecifier͈͠NªIdentifier͈͒ªRenderNodeNªIdentifierÍ–Í ªRenderNodeO§Literalͨͺ°@ohos.arkui.node²"@ohos.arkui.node"L±ImportDeclarationͽÍê‘ÔrP”¤type¥start£end¥local¶ImportDefaultSpecifierÍÄÍËNªIdentifierÍÄÍ˧drawingO§LiteralÍÑÍé¶@ohos.graphics.drawing¸"@ohos.graphics.drawing" \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Shape.ets-506fa8efe2fe1208ea26e67ba594fd26.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/Shape.ets-506fa8efe2fe1208ea26e67ba594fd26.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..b973896ae0bfba74a69b38daaa4a94ee8b4f6032 GIT binary patch literal 9366 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 Y3NTrKVSw9Pyhe` literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ShapeExample.ets-27586c1acde59206714c1028dda31e0b.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ShapeExample.ets-27586c1acde59206714c1028dda31e0b.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..33330e92dbce54ed5b5e99d1d335ee47bd9118a3 GIT binary patch literal 9846 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 L0WmS1fxO}WMy#4- literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeLineJoin.ets-1c218be27e767cd26b11f40a3873438b.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeLineJoin.ets-1c218be27e767cd26b11f40a3873438b.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..45257538454daa50f19a5b6510d9a02c6975f189 GIT binary patch literal 9721 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%0A^whUrJVhOrJNM6OZ7QPM@4#InhNitAF9 zr=2E_q6qtnOL#cy7IBG=%1)fRI7rtNCTwUOq%o`)BCSpCWbH5GfZfYI2wO3vGX6SC zhbRvurF`&PNht^I9eNN~6ZGbye4C00s#`gpdWg5a5-i2VNzpJmwjY(Mad3#hKNS&lU_Bsv)qzMDr1_d&uxjEd4JG~b$ zMHOPibezVJlS!migi7$*fE=pqf1C(zTQZeY&RT59=nQQ+%vNOGku<7~-Q}sNdE^L6 zWt4+FoG2g%=v`n0BU9V2Dh?@!dFzzR*4Z6XN!5{zsqXZykBlFANk7psmV~8Gii?&hfKV9Ir~P_?(WlYnpt9rVVh``ELN6i6;U^p! z)5GgG{YYUPuf7<`hC^AtYd)xV-HzTey1L`~I=#Hp3xbZ@c!7s!Q?z}0W5*>dt|BSe z=t~GYyiiC+G4kV(h`T@~v2I{SyQ|}YnN|!jb;Bp7nQ?kJTlD?*%f;f-(o(@-rVFmu zEZS;IvN&CtD9_Z&&x7%J+8GDez*6_bUv(@TtMrAg9$u0nIO(>rq`RJOG(CYa-zCoJ z7=}~c817yh{t_xRUcQdZtBy2j(M5b>|7ipl`@zk3sis$IS^Ze4R;i6Km2;K36V)?w z`nl5VY-wh$Qm*OMS$(29Gg+CdRABlrN6)DO}=v#zD5rAE=9y^>H&xDX|AeI`JO|C?cTmF=AKP~uIAJN&D1BrcyQgi;LkMF@vkip;pm>MLe z1~b7yZSYy}GpK`~!6A?s90^{~2KR%X!2`kfwZXhny-xbppCXZkpHT7;DS3#LJVZ(! z+SWguB`IY|N?Fouc6=BwhLOL8FoDtID$Ur}x{X}O! z(b-Rm+rL|BE1{GlN;#sGBW>kKTRGBJjkKTRGBJZoGdB2S`N+i1Yzc(E*x#fK+tgQ2!S4q?bJDCBGLc$v+2o z`yTn;6YxFq&O;C1^UD1ZA_@!Pzm8PbrH;QcO8oi?{)7LQuLSUMjo_a!e2C%03?E_m zD8t7XKF;ua3^y^{%!ZfCfI;ZBCT8181chv5Ljy$mx9 zpJlj@;d2ZJ8R`s&7-ks`GaO;KpJ9&S0fu>oqYMu+Jj8H};qwd&42ulM86IYMgy9Pe zUu5_a!|yZv0mDCK_-71XX7~!jR~a5<_(O(2V)#F=sh^ViIi`Ll)X$`L&zpMtDwkPK z^ZmBn!M~6F^8Kc8N(<%}m+1iG9S?5RyT}8UiQ8Dbn((Rc6BK&*#??^jjLajSsu8*; QsIMHmj+!u{Ktcci0Jiu7UjP6A literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeOpacity.ets-e9b92236a57c4af295dea8588ab7d5f6.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/StrokeOpacity.ets-e9b92236a57c4af295dea8588ab7d5f6.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..6ae47f94fe39f337e134dc87a44a40b619a96a93 GIT binary patch literal 9470 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ViewPort2.ets-a5d1879b27e2bc9a7c2a6a12dccb2bed.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/modules/ViewPort2.ets-a5d1879b27e2bc9a7c2a6a12dccb2bed.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..d29183379c605f033008b5158e1beb3b059fc725 GIT binary patch literal 10956 zcmeHN|8o>ab{`);gE0aG0t^_`tiUW-UI{qtJ1$(jNGn)QXgTcyxr$QMXt#GYW_D&X zJtJx3^8Wzb#FeU~Dyfuxz5s^}Ho3EXRd;3onjiUPFZajf^IrGN&Pu|rRFV8-LA{=S z{q4Qi?^}28)8L(dy=N;WgV6Ck^U!al44wL%-Ik5gYR3;k^(0KFn9i*KFvZR|u2jFN6NN<;J`IYu|NP2- z=OQJA3InGe=6*V~)oF_Sk$kR6WI6vJr@&_zM0H{~Cmc^)cjU^|YlTkWhkn@Y$P*{T zdqZ0V{^n)V1y=%>XSc2Z3Foi2p46pDQP zgg8BU`mDGV*(=f!({kCVOLQoVi`lSI;O?_Pc}g}!1gQrCq7lUo@hMEpxVSC@1t!Gl z!lcMkhn#83(aKn|>qnw(cZKJNf@BgdIZ8AkG9g#%vJ(>bb-&$l9oqu|D^9q?3z=y& zA-^<}_=_R7N!S?C=?cG@?J4Y#7UV@qa7$s>IX5w}va(XJndpKav?g55lA4$;PnG7X zr8hx%I_#QIJEPNQ8*wv!;t|0*$xn%?TK8mD$3QIxKON?tK&S&jdJZ$0T{Z>S%Lqe5iE31-3pKhFhQE^>$ zWZh{xb#UjkBD*C;%U_m(2c|?v25m>t_9~FrV4_^7?SwWPYDO!vn>7J#n-G6n4ecNl z%h2naWJNc_760#sw$@!3x~R1~wG}_n@OoklegL&KYEL^zs!~`L=fxzclKEp~cO&GA z(}3=r7iT8d^#^w~BT1^#P#h{~%V@-)O3!ow(Ij|nkZ3Om?jFB}&r?Y0^hH*dOr z-FB;?A3%E82e%!T8zAG&Q%R>;yS>=3fg&@43y=+TTZR89drg0UV--Q>`DBTWr_PSe z$b~!%c@7wbCM{X@{CRkZ$kV=NV6{}ndcZ~L$-o95H$iH4j?5|$*}z6Xavk*c$c+}J#dTxiAhbM5IkL3$`>_kk!vSsFtliMF z+ZXNntybVeHz5sp!{cK!XQ!v$I(n{M@cNH!2L&WTfJC&z`RnkzbM zB7TxTGtkgo`tjRm-a56GZrvwKxz?SI-x*M6qv%<*vGhP9v}|l++R02iLD((1vJER! z>7-_~qOe>SEg6=)Fz8YSJLoC`8AbszjYOGG=ZsIo1o$7w7Sa|OaOyh`pCj`+izMfs zj>)Hvb6mXl{t0BDIedskpj}Br&xst;xq`BheMnVMWL%BFUO_^Eo;q1K{lG=g1+oLb zb=9Vw$kC^oxSqsg(>N2kuIa#ICR9+LXd@GxkfEAbKgNM4Yax`$#wFFktWDchGF`of zC`m})b^VnaNSiL%ot)nDiHR{}a&%C*g2WFbUz?vjpHfqJR~2x8`1*G5R_WY=$qYFa zx{1n7!}0>1UlykQx~j4a7K*{GYi0AzDlx6avB116fR_d0WdXb_FfR-J6@hyiT=?gE zeYrhy)GQ?&X$MhOYvW%Usg|IOFE%g;{~z3JyMm!|BaQ-#UG z}t18Zj3Oju*Nf`Bfz!Za4#OALt*!yeVEze)^Oda!Ikw`Tfx=yrA zJ9f+S6`X_m9My}izX%IrFzI-0y9;2S|as^iDKmM&{0=qBRltJ!1q_KG^y=TAJ^5G zUXD@DGR(cd5y>*T53QhQ9>nwJLBy-1_qr=BT24?PoQ8e52FLB1HR@hKR`Ur*%=L~s$u`t{E%9XijPCqVCCHke(wAv} ztk@81KD?t7a!~A}^idfUJxF@-!bg%Ck&?lJ-`aAmqbU z++pyxYE0jfNL!g<(n{6G_m0r;C7e^2a2hY-VBYe`74Tt7PtqGh7kzD2)dzbSaI~n| z@CjyZn&0$cS`u3(>WJmciUI-p;#w?)Or!@>6cxxcXiTNqrw1{E4ideSXiMx(lUHd@ zOMUMZ1qiPFA&;`#h^rH?^?;;^J>|+nWp+_lpRj~+L4%8#u-}R9V&FNAG5!ZviMIQ? zfv0$!Vy`CS{{S+JQHvy*^>o_w$t31|KiM@>?SvJG5ZmCB)Nq{_;y@p1&1TOxh??<( z$|6N!W8fx-l8-Tb?8lOgazk%(+uZyO2jc1MyJ?Yt(%4h zBzt&Cx*Z}@iyFI=L=pAHlCAW0FPOy~eLwhR9h-r4svjwFgGz~Yo&6eiUUWdY?!XZr%7)7Un5A;+HJejN_@&Prl{oZtW4_Ybb49jsBT@GB z9ER#%{#zRRw1NK5(QyXue}EDmz7A{D(ikvHTM<*mPKPh*$Ob6-Uh|-GRDrQjp?wdB zF#j`s+%0;(*KPX|w|}B>=@vgQb@n2rF?G`SXhE+_^Zpi}TH%x0Ttu><+9N%OiME6> z6BUEN=Fy}c#y3ziylT=yj_88#yV7PZh@}}i)lj$lsMLZe{l4xy9KcDX(hM@`NMV_m zMq{a}_nzuBq@7mQ47aSxP46}EF5`@T%}{MmxeBO(pB9PI`oWA<5a7XV5&s!Wn=aoumA1ieok|;M?~U)GYKm^}wQW-pL3u0t(*XW9)Pg0yI4zrY z<48H&Wy#yeEZ@&5S ziywUdZoVYHe>eaCdN=>yy_|QVMf@~Dtez8a%SbWt4yzx&O+)ut4d&S+9hE$on{mlY z$eMOM5e#j8r$l%5DAU)zp{j^#c5Zb6q7 zAL~!`kw@9pZ}4P6PZ?^{gZ{h1yXxQW{I*}kGsEq_SeI|(?@nytkG_(>JMkuKXwzNb zcUbYO){a+yh0mQ<{F1fvrFfgQbK9NxMb!T>-eL{E9B;RVx5mTP@Sb>=HM}?8Z4K|E zmR;1ci&}P3%Pwl!#VxyEMt%48c#pMvKc?UPTD;%deTc@4yo^pGJL0|8$N?Zn4#fwo zk;8Yf+8!(Zp|$6QJMjyEcR|Vi&G8Ov|4yQ09}^$PBi4ao%y(cd-#=q0^WS0F}E2s2g~5V$(JJ$}tPIy~5XY;%0XI<_~?S;zLp zZ&=5KCTVm_ywe)pMt#jENE{^rjgDZs(LM1YYxLln=0nsnhUG?&LK34V*EEkq@S~G7 z#VIf}dhYh^f5G%(3z!w#!K~N;`ou8k5qsk?OS~GtZi$0&-V%r6f+fb{NlP4y&sZWK zpS1+fo($e?iE%70Cb76UMKhd(WVetwhag${gv7T);WgF+9)kXAJ+E z;eWlOi=r+r=weD2)4C|>Vn!Dib#X}-WnEm>#m{vytBWhTnA1f?7gu%h3th}xPlK7e zAM@|lyw=^ooo1uWvs^dLLYjA2+)2jZPicbhu9E6)5r#0Mqmakj|2oeAxqYSG=d>QLo@?yYPChRX6}sI^mNbm z?Upp_^8Wy&*R@rmsSy1Qp zJ@@OJbI;ekcOD1t{QDhSDH(*0@2L;#enWmyk5uTlYk}>lrXRGY?D~?t*N`3QHKbQ} zr2381_^>TQ`$5}pM6Rql4Owb7Wj$2){J?2Bp6yOyq6bN(>PJCcw(ZW{Kq}u|mW^^l z-B$^AYRPuIN2=?EOEProb9P%cN~;||2-Tx7p<+6-{{0j?$5D}yv2#7`$JH)3jE#u;<3>26U zCkvAzPaSfmDMu?~$*v!Xw%rw;9}1F5xa26&gvf+kt;lOo1YmoyE9?#^tJ{m9*R@xK9|*e@NVJ7MQN9v5q2sm2h4P!> ziXBK^zTwc$FGk^j=nO{!{AW8rc(x~U#i}S*bK+dFTCR@sEZ54l3zaK1ajiH%U!1Fz zOI1;s7gLqF>2j@HnL}+x6z6^^eqNrN9v2dV!yd`i4)j|Qp$-XEnysu#5`DUH0!GDk z)sc0l>D0lU*NW_x6fJ*Q1|FCa9T~J8Mcb=DVuOitowgI&Y^WKn$ZpmIv~5ECeKoX$ zP%J~QuagyB50@aee;C?YcVX(H*6!2@k!X26F$h0^>KfIjT_klWtctVZ%@e05Nu$gk z(_0!8u|g`h#hg;VY$I1CY@&O_F}^ZiVOr?2dUXPGOIvj1A768?ceXOs6#@eCMRe<`E?%9KBY7 zDLw?Dq?@s^Obln4QR~HENQpWPJCsoUP+qkIm2j01V0v|;phfKtxs_~8sdy#UnS9XJ zA1Og*q`l}zVa-2>QLcn{8MKvZw5aOvJ2JRrdr-lka2`S9SfRn4;hkYhPUHIZ{IPX% zUOREw3*iK8cde`)y?gT%hBvZQe-UAP8S$;%@jY0_R3O<|oXqF7IgG>o85Piz=s?w1 zCfcMa-;LT{p-zKkN&>aKKW-Y=aqw(bt}fXfxzWP3xNb~bgq9~MN0yd;KXyWSxS)-j zwIh0R`=VXH(F%O%CZqwccyw&$^z_tQCy!>QgE*L|ERMJN*+^ra5|0gbftchr&EwG% zlaogV=t?^nE}zl^selXSCMSRL_VkYiCING_$o~;E;Q9# z(HRu+ll+;1hVIgj-#+!$iM4d=K3U4O?sWXlfI1sR&!UZ`2NJ<$V;j>>X4(nDZpoEx zSeZ&EHKP@U=(=dhu;hh7m$KPGR}siC3XpXq%6uwkd>SUe|3J2o!pMNr;Cc8Qnb#R5 zx%YHTK6RYq;=T8eAsfx%Lo5RAN*a1bc2X)x`QS4m?>4!Av$Ts19ar+OCr6 z>NUhkLi(=juUtb4b;0iB^qx;lj3KL|L&GH`fgt(H{OsA3n!>xPfWyQ$H+wfqXBJGB z$Z64aRIVGA7w9arFzwe>m1VF{3~pR0n{QT$X)TTg=4AoAED$dX;AMe%S?I3_+~eTf zzuxJ~?SZ3aDdk9GNcU4m&0$I2bvl=P(z($hX+2n!uJ5%FbKiwY5r$ew_IFU4B>q8q zzUp4S(V~>(Gd=7QAF+58lK=V*8QfD#e&jYvNCq#ekC^yxzv*3kcB1G_Ka06EWgnd= zOco{|Th_BA@NqEpSL^;gm>3Cs3XVE_h)Nm9(+~-@3>bAEsA{*p=;JVo9@L#wjw_F- zJI;YN25^u}vGdZ^2s&$3ab8r|=_^UfsOJNw7_=fbe~rQ3U-52u{)%VnnE#SQs?pGO zqGj5#Tb{4r9Ml)6o_GC4sLvo0PB-F1o#rL%{wI1~@!EC>Y8p@>WTqib;9mkw%v73s z{$fbVNH*~4nwDN32;E6lnwKfnL-rDwsk+k=$u~?CBY%&Mx+)vlxjzTKzjCEXZ4dgm zuEz9ojB=J??){BOmeGA^1wHd1o;MF7UM0QPU1`yBf&$?*?5j06Zr7|)_o~zKY`9iw zx~H@1B?*!a@TjD6&Q_AX)gRE3R4UC`2O_dvYN4IGhFlrv1*+0QRL%srAwfwB_!)4i zU)gO}{8?}B#e54IEKQoZDx5@+| zAFkp)gSS;<`j$l6$_$fMsy@DVh=woWq`HKYc@c;7mPf9D4^w)Q-Wa;*E3B$M7k=cdlgrAu<>Qdx}rBG*@8-Q za1shdlvs6t0lF!AHONi$#`KoYn+wxap4nZeFtV;gZ(<`XIM^uj3xAH?|=fgk^~T8f2w(l2gu@`BymZ5|^Y>9N{X>3hvij-)>O+EVpsb zjOZ_mxc`I?)(S=bZ~#GWm2xd3p@4Kxn=Rsu&d&bSM-{z<3qDmB_tGjT)z)u zr=Ecp(d%EcUF3MA&BgYj1Il#=j`&bETn@l2l~b?ToI=7ceeS5lp{E=3wbq_XvW**w zvZv=TRQK{vY3$Pm`oBQO8MyxeN_hA>tWis2z$|S=OcgsFzN#Y|py+$WgUV3_#zKYm zJsiUP&-HP)==ol^?MK}Hsm7&Se9zR`iCVNYDT0KKHsiLXQIyZP-atTE|rPRxm!I;bdvepY|!*YPW zODU}37T>i9cET$fd@>&yA>qs3GFj*}xbt}rryaWQYU5GG3n}`PR_%J2&}w`gRESKY zh*P7FFo|XR4cf0Oot{Q595>{B5WOOMY=$ zHtom_lTyGA_U+riaQjau> zXVTLz10B0cxXq{gOf3Lf>FW(!^t7L8=TyUmDNS4qlcP=&j{BSvRegoXoTUB`L>@V$ zDSFmIf=pqq=HHNB?-YjUM2v_|!x&;RiL?S&30j+wLxt^+1Hl)L$^@0G4l6Q{Mwd;r zBJED3QSsa^56z4tL(p4BF(|-^0`lO)DqUGes&_~;oDyYBrkjS%2AMl^U-F_hpHuNx z3r~c2h+x`BKGK)YYp@*VS)|F)6((eYS|jzZwEvt@!g}}uhHf%c4|ho}J%wJdmt_st z9NdMQFv%?4^8~+VQU;P3emTY|g*bHTINSO`gM1NJ`_mi0-w$or8{8Ot|NnalKmy-> z`IUMagTd`-R1yi@$mtOn>kR0zCb4<3sQ)@91|7 zy1e*Af2xl>%C>%sCk%SpP@C@c-x=OjzrOXmeihFSH~(r~yotYCv4ubSO8#!eo2;Qt zw}Ibo#Us}Ckze6+hZVnI?RX*HX6@K^D}EmJ58^G>@QXkUZ;gko;XUzAYj|(G#~R)r z@3n?UsCg$f@1*9P)V!0LcT)4tk$*<>t`~vawGGH!`{P%vU9ZLatz8GGW%rBmE^GI8 z^xQoHY~4iTR;F5!_&8uQu@Zr+YxwhlZGQVwjr$(4gIfZ~HM{R{Bs6OFmepdq(Ce$~qD zh)1p5ZcLur6Cbv6`#%`yIJP<7XN|oK0>*~Wdu+#G^Wn{CIXnce4sVNJvkngrHXqp> zAF__@1<^YUr(~B)&R%`>aVms&)!=Oj(jmIqUO8mMdUXAmXI1m>s zF&0l+;z)eT68ZSFC3yB^@GeV?V{tKw#l;Dl;S40Zg~T}o$aZno6 z?nI@{kNNcdmlv+p@IT+eKWK7QYcav+EP_8^xQXHO41dV*1%{g$ZejQ$!>tToV)!z{ zA%@!+ZfCfI;V{FU40kcy&2SIHy$ts;e1+kDh9eALW%wGy0}Kx`9AzjN9%7hdIL7cW z!y^n|XLyuhp5ZZu#~HrCaGc?r3=0e=7)~-g!SE!*Qw)E^@HE4>7{1N$#|(eM@C?JB zGW;8cXBqyC;oma+uXl7&)WtbnOzC1;7bRWH=;FLCF6g4Hi;KGWxh`gPaY+|*x~S;l zvMzq1i+SsDFmwA8{&kzz`ncmp_`&G6AGf4eT&#a{^Dz?t;C%eB(S?_E>bSteMLQoP hzLfl%P~0YDj#b?9wQixKWn*pIUHlX;nSs2?{{X~W&RYNg literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack new file mode 100644 index 00000000000..e0bdb76fe67 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack @@ -0,0 +1 @@ +Ôr@ \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..992e0f9c1c9ae5c484d7ef9a74ca34c9f5466a08 GIT binary patch literal 13782 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts new file mode 100644 index 00000000000..5bcadbf771a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts @@ -0,0 +1,44 @@ +import type AbilityConstant from "@ohos:app.ability.AbilityConstant"; +import ConfigurationConstant from "@ohos:app.ability.ConfigurationConstant"; +import UIAbility from "@ohos:app.ability.UIAbility"; +import type Want from "@ohos:app.ability.Want"; +import hilog from "@ohos:hilog"; +import type window from "@ohos:window"; +const DOMAIN = 0x0000; +export default class EntryAbility extends UIAbility { + onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { + try { + this.context.getApplicationContext().setColorMode(ConfigurationConstant.ColorMode.COLOR_MODE_NOT_SET); + } + catch (err) { + hilog.error(DOMAIN, 'testTag', 'Failed to set colorMode. Cause: %{public}s', JSON.stringify(err)); + } + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onCreate'); + } + onDestroy(): void { + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onDestroy'); + } + onWindowStageCreate(windowStage: window.WindowStage): void { + // Main window is created, set main page for this ability + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + windowStage.loadContent('pages/Index', (err) => { + if (err.code) { + hilog.error(DOMAIN, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err)); + return; + } + hilog.info(DOMAIN, 'testTag', 'Succeeded in loading the content.'); + }); + } + onWindowStageDestroy(): void { + // Main window is destroyed, release UI related resources + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + onForeground(): void { + // Ability has brought to foreground + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onForeground'); + } + onBackground(): void { + // Ability has back to background + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onBackground'); + } +} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..21cdf0a4ddbee37e853d24527980fd73e4bf3417 GIT binary patch literal 6840 zcmc&&O>7%Q6!xyy-tpM6Htr{yu`43Q+V?we-n{wV z%#gpo|LKnc`}PP?*mnw@K5W^(yD{#$E92|+hCOci-Z*D1*H><}TlM8ev*B-y&!g5H zXUz)MVfIh97xTSJmC!tuX-1Qb2}-Hlep8445rqx3Zrxa@uUj)b5S>v4)tEdY>0m%) zEi)q-V_hb+;hl2U*B$$&m!dz_rLV2ky{k^^f_2+!&fcjv{1hv*%c|V)7T4;owR+K6 zZ8xnH8=IDBwmoU;_%lKn^;Vpgg%k4h%dxqfhPmuAj_rH}mTEIu$b`3PyvjO{?uxbI zxU1(@@Ai4n2^^HYOAjs0FP?JjmA31`I*E*2u|8;9p6|`tw&U0RhGR4H85OGqs`6@h zFvH%aRd7Ckw`HyP*6L*!(&zdcr<}I!$2^Zei&ot2NxBEzE;b#1p}oFrxiMb{Q$;Zc z`d>M^xbx*2J8*xdcKpEBt;D{3F@7~ge}f*OldyNjQ|HHaQQAof!wr_#GR8h~n#q~` z^dNZ}{z)2sRfI@VQ$;dK6=e%aB9*+yq|9{2P|5pD%E1RAe@fyjVsRxIWCikrRF#Ru z^}!JJxfTldqANLR5M7vMl4J_0PiM@%luTW3+bfrrZ?bIN-q7)9RH+rsmnfaGtvgri z?hVWD$VMbC9i|EhycjA4ZiAzmp2W{JFyyhmOBZL)EpVkFgInYSVvwBB zRUh#DYF&)KU&vK1-*4;&c`;nu5$6_X9~L?!A|S>v1V(C1$>mi7LC9R83{Fn!DnR^t z!?S>ms;X8NPH=952qvm(!(cF{tFGla&D&@obcTh2utp*n6%8unbx0GaV%*3mkC-MH5d->Nf-yr;g;XF9z$gR`2gyY}SpKPK zjA)t!VD9VCHeM=Iyi}qf#O#SNlvHB-$P+%Z1PmvDcnTp}&WJmoi0UxTH6w0RPdSaj z{JseChE%e{$7dy-JcnytoDQ z(k|#lsvCNd6G5XOV5=fdQoyRs(2KkXFOcYlUaD<@USx3#geW2Jf?lcx(2KB&#H#?k zdmKAhc);F~Lm#!;%gx5h#~xP+U>MPcYKI}jle%(#@zMey5F#(tX2pQTh=2(R;*7Be zAhzK7Zo|IOxV`}vuBTQ&S1Sm+g%R*A(5+pzps%d15$;A?QL9p871)~66At@U} zWCGF(sw(^=kYe^WbqJhNG0ZS7fgr$(AhvV}45SFKA1#R>f?<*19Ri2N2_Qps2n?Xe zD+4=3NJYH`ML~za&!|2G0q#SK0^uDZQo`9H(diIK@eYA)svL+nb%@BVm}b-=kRPvT z(IK{IZ_^M7BcX>Eo8HP@@XAfN=5&L&@(->6ubZ};Y-j` zjXms}tDU!!tZ|KeBI&)nl1##$l9Kv>xZ|eZR;Bd&ft+|h5E~j#-&w6900FB%tK|jE zg@i_qLrmdO9L3_?kCuv719XRj`LMV%&ENGc8|ylFcMDV^v{AIP#y1i<0`RB5h{uVZ zQg6nliGlK{F$)oaSfOaUJNZEg?>{Zq@g0Aog@=4R2}dT_BLxv)ED|Mh8^;Q~C4${< zvYb!_skk$^E$$4az{;R`kg|j)o(?GGMoEqK4SePX;H7QEYqwgCi*IGIHvzI4HU5iE zMiuF?lr>gqFFUZt4$?eRNNyC)yd=kls|hI@RgGWeo`#uVPh?7n3?s>-SvmwGRjS1q zXU*}Z`6YT(r8Qu_Rvi`0daDH|CjL%2mb}}*qT}#ou+^(6`w}!OATL(cRqJ}a-SoL> z0b-FxWjX+&LRDPl(={`oDTd2H{NhW3uWfRcG$Zdzj(-)4yyEVjutj literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.ts new file mode 100644 index 00000000000..7a794ad4d25 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.ts @@ -0,0 +1,14 @@ +import hilog from "@ohos:hilog"; +import BackupExtensionAbility from "@ohos:application.BackupExtensionAbility"; +import type { BundleVersion as BundleVersion } from "@ohos:application.BackupExtensionAbility"; +const DOMAIN = 0x0000; +export default class EntryBackupAbility extends BackupExtensionAbility { + async onBackup() { + hilog.info(DOMAIN, 'testTag', 'onBackup ok'); + await Promise.resolve(); + } + async onRestore(bundleVersion: BundleVersion) { + hilog.info(DOMAIN, 'testTag', 'onRestore ok %{public}s', JSON.stringify(bundleVersion)); + await Promise.resolve(); + } +} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..0dc04a8f7d79ebcf1a48b5780ef0e7c6257d2748 GIT binary patch literal 20102 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 { }); +} +interface anti_Alias_Params { +} +class anti_Alias extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: anti_Alias_Params) { + } + updateStateVars(params: anti_Alias_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Text.create('Turn on anti-aliasing'); + Text.margin({ bottom: 10 }); + }, Text); + Text.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle.create(); + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle.width(150); + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle.height(200); + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle.fillOpacity(0); + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle.strokeWidth(5); + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle.stroke(Color.Black); + }, Circle); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [End antialias_open] + Text.create('Turn off anti-aliasing'); + // [End antialias_open] + Text.margin({ bottom: 10 }); + }, Text); + // [End antialias_open] + Text.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start antialias_close] + //关闭抗锯齿 + Circle.create(); + // [Start antialias_close] + //关闭抗锯齿 + Circle.width(150); + // [Start antialias_close] + //关闭抗锯齿 + Circle.height(200); + // [Start antialias_close] + //关闭抗锯齿 + Circle.fillOpacity(0); + // [Start antialias_close] + //关闭抗锯齿 + Circle.strokeWidth(5); + // [Start antialias_close] + //关闭抗锯齿 + Circle.stroke(Color.Black); + // [Start antialias_close] + //关闭抗锯齿 + Circle.antiAlias(false); + }, Circle); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "anti_Alias"; + } +} +registerNamedRoute(() => new anti_Alias(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/AntiAlias", pageFullPath: "entry/src/main/ets/pages/AntiAlias", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..52c889b101c4d0d126605d4bcae14e5a4bd84e80 GIT binary patch literal 18920 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.ts new file mode 100644 index 00000000000..3a0537ea603 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.ts @@ -0,0 +1,78 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface CircleExample_Params { +} +class CircleExample extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: CircleExample_Params) { + } + updateStateVars(params: CircleExample_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create({ space: 10 }); + Column.width('100%'); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [StartExclude circle_example_two] + //绘制一个直径为150的圆 + Circle.create({ width: 150, height: 150 }); + }, Circle); + this.observeComponentCreation2((elmtId, isInitialRender) => { + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.create(); + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.width(150); + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.height(200); + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.fillOpacity(0); + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.strokeWidth(3); + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.stroke(Color.Red); + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle.strokeDashArray([1, 2]); + }, Circle); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [EndExclude circle_example_two] + // [StartExclude circle_example_one] + //绘制一个直径为150的圆 + Circle.create(); + // [EndExclude circle_example_two] + // [StartExclude circle_example_one] + //绘制一个直径为150的圆 + Circle.width(150); + // [EndExclude circle_example_two] + // [StartExclude circle_example_one] + //绘制一个直径为150的圆 + Circle.height(200); + // [EndExclude circle_example_two] + // [StartExclude circle_example_one] + //绘制一个直径为150的圆 + Circle.backgroundColor(Color.Pink); + }, Circle); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "CircleExample"; + } +} +registerNamedRoute(() => new CircleExample(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/CircleExample", pageFullPath: "entry/src/main/ets/pages/CircleExample", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..2f3a1f312d704e2d2e4fe79a1854d30e880c957a GIT binary patch literal 14643 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 { }); +} +interface Fill_Params { +} +class Fill extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Fill_Params) { + } + updateStateVars(params: Fill_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start fill] + Path.create(); + // [Start fill] + Path.width(100); + // [Start fill] + Path.height(100); + // [Start fill] + Path.commands('M150 0 L300 300 L0 300 Z'); + // [Start fill] + Path.fill('#E87361'); + // [Start fill] + Path.strokeWidth(0); + }, Path); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Fill"; + } +} +registerNamedRoute(() => new Fill(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/Fill", pageFullPath: "entry/src/main/ets/pages/Fill", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..e53a400601abe3b4734ccbe237c1d9de07dbbb41 GIT binary patch literal 24108 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 { }); +} +interface Index_Params { + ary?: Ary[]; +} +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +interface Ary { + path: string; + name: string; +} +class Index extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.ary = [ + { + name: 'AntiAlias', + path: 'pages/AntiAlias' + }, + { + name: 'CircleExample', + path: 'pages/CircleExample' + }, + { + name: 'Fill', + path: 'pages/Fill' + }, + { + name: 'Mesh', + path: 'pages/Mesh' + }, + { + name: 'Shape', + path: 'pages/Shape' + }, + { + name: 'ShapeExample', + path: 'pages/ShapeExample' + }, + { + name: 'Stroke', + path: 'pages/Stroke' + }, + { + name: 'StrokeLineJoin', + path: 'pages/StrokeLineJoin' + }, + { + name: 'StrokeMiterLimit', + path: 'pages/StrokeMiterLimit' + }, + { + name: 'StrokeOpacity', + path: 'pages/StrokeOpacity' + }, + { + name: 'ViewPort1', + path: 'pages/ViewPort1' + }, + { + name: 'ViewPort2', + path: 'pages/ViewPort2' + }, + { + name: 'ViewPort3', + path: 'pages/ViewPort3' + }, + ]; + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Index_Params) { + if (params.ary !== undefined) { + this.ary = params.ary; + } + } + updateStateVars(params: Index_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private ary: Ary[]; + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Scroll.create(); + }, Scroll); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create({ space: 10 }); + Column.width('100%'); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation2((elmtId, isInitialRender) => { + Button.createWithLabel(item.name); + Button.onClick(() => this.getUIContext().getRouter().pushUrl({ url: item.path })); + }, Button); + Button.pop(); + }; + this.forEachUpdateFunction(elmtId, this.ary, forEachItemGenFunction, (item: Ary) => item.name, false, false); + }, ForEach); + ForEach.pop(); + Column.pop(); + Scroll.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Index"; + } +} +registerNamedRoute(() => new Index(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/Index", pageFullPath: "entry/src/main/ets/pages/Index", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..010e0a9590b2dec2131b77610820a124b1168b9e GIT binary patch literal 68572 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

##@yWTuy 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 IPUaT>A4+#1-~a#s literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.ts new file mode 100644 index 00000000000..ddb2c34db42 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.ts @@ -0,0 +1,289 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface Mesh_Params { + myNodeController?: MyNodeController; + showShape?: boolean; + pixelMap?: image.PixelMap | undefined; + shapeWidth?: number; + strokeWidth?: number; + meshArray?: Array; +} +import { FrameNode as FrameNode } from "@ohos:arkui.node"; +import { NodeController as NodeController } from "@ohos:arkui.node"; +import { RenderNode as RenderNode } from "@ohos:arkui.node"; +import type image from "@ohos:multimedia.image"; +import drawing from "@ohos:graphics.drawing"; +let offCanvas: OffscreenCanvas = new OffscreenCanvas(150, 150); +let ctx = offCanvas.getContext('2d'); +class DrawingRenderNode extends RenderNode { + private verts_: Array = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360]; + setVerts(verts: Array): void { + this.verts_ = verts; + } + async draw(context: DrawContext) { + const canvas = context.canvas; + let pixelMap = ctx.getPixelMap(0, 0, 150, 150); + const brush = new drawing.Brush(); // åªæ”¯æŒbrush,使用pen没有绘制效果。 + canvas.attachBrush(brush); + let verts: number[] = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + ; // 18 + canvas.drawPixelMapMesh(pixelMap, 2, 2, verts, 0, null, 0); + canvas.detachBrush(); + } +} +const renderNode = new DrawingRenderNode(); +renderNode.frame = { + x: 0, + y: 0, + width: 150, + height: 150 +}; +class MyNodeController extends NodeController { + private rootNode: FrameNode | null = null; + makeNode(uiContext: UIContext): FrameNode | null { + this.rootNode = new FrameNode(uiContext); + const rootRenderNode = this.rootNode.getRenderNode(); + if (rootRenderNode !== null) { + rootRenderNode.appendChild(renderNode); + } + return this.rootNode; + } +} +class Mesh extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.myNodeController = new MyNodeController(); + this.__showShape = new ObservedPropertySimplePU(false, this, "showShape"); + this.__pixelMap = new ObservedPropertyObjectPU(undefined, this, "pixelMap"); + this.__shapeWidth = new ObservedPropertySimplePU(150, this, "shapeWidth"); + this.__strokeWidth = new ObservedPropertySimplePU(1, this, "strokeWidth"); + this.__meshArray = new ObservedPropertyObjectPU([0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360], this, "meshArray"); + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Mesh_Params) { + if (params.myNodeController !== undefined) { + this.myNodeController = params.myNodeController; + } + if (params.showShape !== undefined) { + this.showShape = params.showShape; + } + if (params.pixelMap !== undefined) { + this.pixelMap = params.pixelMap; + } + if (params.shapeWidth !== undefined) { + this.shapeWidth = params.shapeWidth; + } + if (params.strokeWidth !== undefined) { + this.strokeWidth = params.strokeWidth; + } + if (params.meshArray !== undefined) { + this.meshArray = params.meshArray; + } + } + updateStateVars(params: Mesh_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__showShape.purgeDependencyOnElmtId(rmElmtId); + this.__pixelMap.purgeDependencyOnElmtId(rmElmtId); + this.__shapeWidth.purgeDependencyOnElmtId(rmElmtId); + this.__strokeWidth.purgeDependencyOnElmtId(rmElmtId); + this.__meshArray.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__showShape.aboutToBeDeleted(); + this.__pixelMap.aboutToBeDeleted(); + this.__shapeWidth.aboutToBeDeleted(); + this.__strokeWidth.aboutToBeDeleted(); + this.__meshArray.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private myNodeController: MyNodeController; + private __showShape: ObservedPropertySimplePU; + get showShape() { + return this.__showShape.get(); + } + set showShape(newValue: boolean) { + this.__showShape.set(newValue); + } + private __pixelMap: ObservedPropertyObjectPU; + get pixelMap() { + return this.__pixelMap.get(); + } + set pixelMap(newValue: image.PixelMap | undefined) { + this.__pixelMap.set(newValue); + } + private __shapeWidth: ObservedPropertySimplePU; + get shapeWidth() { + return this.__shapeWidth.get(); + } + set shapeWidth(newValue: number) { + this.__shapeWidth.set(newValue); + } + private __strokeWidth: ObservedPropertySimplePU; + get strokeWidth() { + return this.__strokeWidth.get(); + } + set strokeWidth(newValue: number) { + this.__strokeWidth.set(newValue); + } + private __meshArray: ObservedPropertyObjectPU>; + get meshArray() { + return this.__meshArray.get(); + } + set meshArray(newValue: Array) { + this.__meshArray.set(newValue); + } + aboutToAppear(): void { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img: ImageBitmap = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(0, 0, 150, 150); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Image.create(this.pixelMap); + Image.backgroundColor(Color.Red); + Image.width(150); + Image.height(150); + Image.onClick(() => { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img: ImageBitmap = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(1, 1, 150, 150); + this.myNodeController.rebuild(); + this.strokeWidth += 1; + }); + }, Image); + this.observeComponentCreation2((elmtId, isInitialRender) => { + NodeContainer.create(this.myNodeController); + NodeContainer.width(150); + NodeContainer.height(150); + NodeContainer.backgroundColor(Color.Grey); + NodeContainer.onClick(() => { + this.meshArray = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360, 0]; + }); + }, NodeContainer); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Button.createWithLabel('change mesh'); + Button.margin(5); + Button.onClick(() => { + this.meshArray = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + }); + }, Button); + Button.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Button.createWithLabel('Show Shape'); + Button.margin(5); + Button.onClick(() => { + this.showShape = !this.showShape; + }); + }, Button); + Button.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + If.create(); + if (this.showShape) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(this.pixelMap); + Shape.fillOpacity(0.2); + Shape.backgroundColor(Color.Grey); + Shape.width(this.shapeWidth); + Shape.height(150); + Shape.mesh(ObservedObject.GetRawObject(this.meshArray), 2, 2); + Shape.fill(0x317AF7); + Shape.stroke(0xEE8443); + Shape.strokeWidth(this.strokeWidth); + Shape.strokeLineJoin(LineJoinStyle.Miter); + Shape.strokeMiterLimit(5); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(150); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + Shape.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(this.pixelMap); + Shape.fillOpacity(0.2); + Shape.backgroundColor(Color.Grey); + Shape.width(this.shapeWidth); + Shape.height(150); + Shape.fill(0x317AF7); + Shape.stroke(0xEE8443); + Shape.strokeWidth(this.strokeWidth); + Shape.strokeLineJoin(LineJoinStyle.Miter); + Shape.strokeMiterLimit(5); + Shape.onDragStart(() => { + }); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(150); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + Shape.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.create(); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.fillOpacity(0.2); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.backgroundColor(Color.Grey); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.width(this.shapeWidth); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.height(150); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.mesh(ObservedObject.GetRawObject(this.meshArray), 2, 2); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.fill(0x317AF7); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.stroke(0xEE8443); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.strokeWidth(this.strokeWidth); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.strokeLineJoin(LineJoinStyle.Miter); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.strokeMiterLimit(5); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.onClick(() => { + this.pixelMap = undefined; + }); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(150); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + }, If); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Mesh"; + } +} +registerNamedRoute(() => new Mesh(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/Mesh", pageFullPath: "entry/src/main/ets/pages/Mesh", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..fefc73eab406e88e95d24f56b3819502cf7e0555 GIT binary patch literal 17828 zcmeGkOKcm*RZA|H!<8tmR+25PWSL&cGDF)EwUYl%>_~QF1CC?ZPTHbKgq66qm{KIW zB;z;@3ba6h0xeqikQ{m}+Edd@g95!3y|g(62zqIcEt+$$$titrW_CH0cFA4JL6Wux zWb4g)^FA~0Gru+Y_|xBfl+%ClV~NQ6M@com=+s*7jF?3Z%GCh%(4Cp`- z+R#<0xYX4}tu#04ySw$;>&+1QwJv&X$8O%QH*Ps^IMwGL*_BpEFRQE9Xr&1jx=#7U zdbwS7Li*fSN7Q6{)iUs}JkizWcD>=CK~3YVU`r8fnJAk5Msu@tH3{~9a}U?tF4f_# zvt4(~H_LAh#Cio;>)%q3Z(hH*QLk;cT^GijS$Eg@PTOg=n$Op2^_JbL)N8sGkd34`)A37~PY1bYb_*Y&kBufeF zu$n5hb}CH)k)Vhvm8?Bz*S25UdcA`~%*E3*RNrQQuPl|8N^ggyhox5Yj%Va&(l_L- zQS@wIh0%Vn+eQ7B4C6iYBPn6LFRP1DCiJxx{YQ~W2cOggpVV~FOwjq3NGK|i2|{V) zvY8-5_yhBJK|4|$BOgFcY+}}3;Z4KjHC>V^FkMvWzY9g$nBt9uF!VBOW;D~qaYCRY z7m)O6ZTg$l(`7PYE|amsTqbh>mr3_?k-hj3mw5tS^KnvL?e8_;yIQ(D5211$3m;~3 z{kMbl8{D5hha{nq=LF|DtL2J>;B=qUQlayfKu1^$&mD(UIVg1;V78x1f-pWARZmBn z=V#|xIO%_m+hg##)p@QM4T^e}D{`TzgcgcQj)kIRJrtD+EFM%1Wg@g!dNLG64h5lx z$*a1A$w$#jEEA~|$kD8&fH&qyL6=mX?yzBuylA9vJ->ea)@F&*j*v|tkSKIfWOD%k z5Wsj|D2|Y$J{_VUNqVv;$j=f*k8O#uLXDtzn(}>CjY^JmD~X`5Bm=mT zBOu!ZB_|$KYIe2qmIKTFX3K5U*#OR?l$oF(cA#QV3j}iHG}sHI8gH0lN(8K34dy#T zLE+CzO*XXDWJ>EjN)2N3>geWXwZ3gv@4<}1{i1EMOFhnNc&& zn=RMAS$j|yki_f8+(p316f>ueFw8A`cdKj*__WXyR>1-$Nijin5mY=tUF^G1-n$C= zyy2i#))PrLexFv)MJm0|&D&e`cI$q9-MQve9oR1FpDF|Q9lRWm@p2r#K9>U5=d?s7 z)F5v^O0F1V_u5;{ZMOou)fep=_^S&+gehgxi&jip41j25fB~s+-AKORw160E)1+pw z(8jdS03h}N8k}h$#X{nfVjlMSG9V9WZ{1MJbew_SYo%EOQ_-ZB@1&PWFE25rFiH6u zo`Q_NZpfALCMH!za7t7W0bj*aEPtSi87ifVlr#3^(}b5&fEM#>mqv%YF+;@}05TYm zEiQsaQ+u81X07G8ko15Z*1|(x7Dj0d01h5N2QmeuIgSln6tNxk;m{7Sg}`O9Y80c5?bVgyJg`aN4`szy2pI9x z5S9~=S(J@>wY^&d5)AtpZJ0^JSY!ZqY!p34mi1&x!2m>GXQ}}nna_%*GJu;p8^u&q z2?>2u5qJ(vJr&*5*H%C=!i}Bv(hlQ%0y51NL%t7{8wfCc%!#HlfSZb<1ygbHf=wa= zTtpoeEoK0>_$Xxnskc#YfHce)*yP*B04@!Iu8iShaai-B5C(7|dFa>IgT^QeK{WP? zJFMu6<9t~2;;RL+Xe$EL1K`vgUC01w1<_Ona8psVVCoE4t!uE3Kx0ufnE~A7BJAX7 z`DQ*eM~V674ucQzG|zZ|??ZVJi{pAy6v6;5a?9k1ProMs|@a*PY4=&{`6$W&pRkM2`df@O*|6=Q`nuczWyfbc)rnwn}Jtsw_t;Dz5i6%D^1fu(W4&Xg_H!_VfEfouOBE;AnLGBVt#grAur)=-JN z%ZIgd5t1w*E@*uS?FVqDRNVF9UizT*qVYFbU5@Bmt^=2hxK8|4{62$wip-aY;qCxC zu24@2bO(QlxGJV82Jkes3YqR0Y(~c0jk4Wxu2taf^Lo|Ug+*c$(j+bpk;GqBFo35? z1pKsxMF1Om_~2To4<<{Q9zKZJAU}il1NfP;*Khj4L4Nf_l8wK}>eYy@6?*cf|KKSw z8Ql54G-)aq>LUHq6r85*I~MzDB`LTfJ{!@KSiIhYhYwf=oBAioLA(AJc+J@VwAcJ2 zrN-E+>%WUdKDc+Jp8lB!T@@vVL(8B%5`^krwqr>%yek*9gf1Vveb~ zN|WF9@WZdp0!~Jf0~FBM2YG`OSa><}L`oU&C~B-j8vS3XcpVPz=ix{0a6uNja0_?l zWS}$C5RkJ$48^k}^ztL3motES`4Md_z{|1K_i_YGxCx!2XN69_?AnhiwTJm_?+lR& zm|`99rt*k}01pf7O%KP@cvOame%R6@F6R2g#c)_$42Q-AVuIshxPM#>A0RF={ro&G zK4{^|<07V;Tl)L);=($3Tm)`Ss2j(=r5Y^%cO8gfV3=ZHFn|Y!sp$cMfvtXEFo63x z0$u4J8+y3;d>=RefBN@cdXD-JCo%nhnvRvtSM?8Kb{O2v`3u;gFGu?42gm5;$3-t^ z0Qd6akc;W z`AU?yobktaOTRV!r!hMW9{UR4;(Xz;-+j4((Z3|d00VdoEWr+CfAnLk9|H)KNZRQC z?FU}l;qq?Dd-Z{F!T=E00eA%Y7)${ur4vDT#e^+AB51i!1ZBe_C>t6YrW7;yGB*Xk=4k~~Ua2^b?z{}j4be7=R`{>9QY7H+aT2Ours39G z_15DCJ5<2tEIAImXapg@Ve(IW$tpu{8S3qA?E zeM<#4;OkY)pOVI3Ycq`z03|)6bW+k~B~3CwjinzA)r5H{!B`LNF&!UjrL@V89Vu&gC`^2)BgzJf=>)I_`%$aa{MXr0i4+sIJ9pUV)hL_zU}b4;CM2C4~37xaoNL6 zfdP3I2NQoddJddRcb$ioCcJdR&s55H;XNe=#Q4Pox!?yE{CXbdEaK-<(0zgnxgb_C z1XS=7lzu^5>kK>s(aIaXD8MHq7qs)NI}QN@Uv+Fh42;lZDex+d@#9}=36hk;@z`gC>sk09 zGv91C8g&;xsT4k@Q=iV!hxA06D!!`rU!IiobE=|)Zx$qVl%#akAq{zGQaimYl zjb+=MK+@tL(h;Pu>Ob#{)G-i$#0>v@fXh)pr5i-iubBtF7Udi>z>$y)jI&fo_%P>-q6Q;KJfw7>? z70~9AIq0+ZeZq%?X$g)eI&0_|mqGG*bD)R2J;iEZ^N2~j#~XsJ=Ro4B8Ta)^Phk@v zOfyHsFD?avmq6e-bCAzALxp0PvrMBDlErtE5khxO|92-=bWnKIRJYo-a+QAS&n01E z%mZ%LoPv}6rKY{xs5;Fh`iUVw@)syM7xra8)^7pFa}zuqaUToKd|L3oU$|qpb_C2g zh|QV9!hg&lAo&0z@@wsCbx+qt=xUmCR95JJ^B{2ZU9#mogwLy-@{MLgKy%d}*wv}EE!K-EpOLkv6sr$ z{?BPF`ZV0)dqykt0}xAL2eTIc{KX2~j#~alik8CayhT59v8F?x`&;`yGqmvexYgO4 aS^>**D+${>E4=Jmd`)EqJtDK%YUMu+o8P_w literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.ts new file mode 100644 index 00000000000..590747bf606 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.ts @@ -0,0 +1,58 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface shape1_Params { +} +class shape1 extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: shape1_Params) { + } + updateStateVars(params: shape1_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Text.create('Create drawing component'); + }, Text); + Text.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start shape_one] + Shape.create(); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Rect.create(); + Rect.width(300); + Rect.height(50); + }, Rect); + // [Start shape_one] + Shape.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [End shape_one] + // [Start shape_two] + Circle.create({ width: 150, height: 150 }); + }, Circle); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "shape1"; + } +} +registerNamedRoute(() => new shape1(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/Shape", pageFullPath: "entry/src/main/ets/pages/Shape", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..ee1f78690f562e4852944d1fff225978f1551aa4 GIT binary patch literal 18440 zcmeHPOKcp;d1lYErump=^C7aurG`UNq(%}s(~_39cJ)|t>9rhcS1ZZ8L5wUjV0Z~w`U$IV}ULt`=XCsBRvqEl@(jyIc)!_A{&xw`4J znw$0FQ>VH4=vlGu?7k=-)ho_L^LxG1&c(7!Pv{YS#L#jDUDqS+&sp@7iJ9Z|uReXZ zc;wvWQY}-Dfy|6#G>ba0h%s_k%WZUY(aX)9+R;(1`f)Ra{(1+!@vPW}@!u`?XTL;)L}1iaw@C+t+Lh|I08_Zywg_4h(8qw-j3nWXp8! zQjfmf&)MJWudA4m1eJr2aia&FoDhyLh|n6;(f(63PxZ-(k) zPV2gFf{9R17$doP_O=-riQSxJpSk~O27XHmlok&~MG`@%sh~#24sOPnX6)Dtx}L8( z&mR{XPo0(-Emn^${4b-eNAnT;oF31&o|T&lBEk`KI=lX)T|Ip7;A0;L%+2e38h=gv zzp#cP{J8L5MD`IvHmjM-x%InR%f62uM@*`A3Ow1nQbP5@`lJZ=}=U}2t`FF zLs2m^6crC#leij*>Cj%unNSp)4ML5w-#0ZRu7r^nSxo0ZnrFNOg=?Cvo0={YCK@K$ zeJi>5*7ok+eqPd!v3(-YICN8G^LYYDfZ+N0+!(vy(E&vX)|EZYz7ff}Z1aK@G@{-~ z&i9teH$c6J)J0LRAe)4YJ;A``rV1=bfsjE0k+YM=gfCD4ghA#{8nXg3>H&m-jHGc< zV8%RvFpL8m0y8dwDP{|=M#&*qMUnX0*VNJY2S_44??|@z%4x0~$XDDnN^_>850J%7ffdELH0LF7`Y}=Y| zI<0%va;sddRF0{t{-j)TN*@#}ZHI(H$x&n6*H{3=0z)xstO*Q;Q2>N-`xtD)jEs&E z7l8&BLPN>1P9*_)N(w+KIYzRxq~!FIaK>4;{D|XaOM2 zu9Ce(YRHB;p+rDQY>C(z37Y<5EgBD9i&FXRE^8668GT}ZzfwCaRvyua(gxTsbu;mG zP|WEGr*hP~S5hzujybQVoENP|@m}>wO+hlZn+O*L6XTdgeN15Xibn^fqJmE zFj0;PS~y9?;TO&`>+h2l)UO*3s?c6)ruD<5e!HLY?Dlf;pw@0Zu5CMSI~9j^sOFy! z&0_F1dQz^@;bp%TSoZUEGolAgfeY-8HTkH0&^&CEX`g(*SfwCt(9A-fnQ^BuGMNBq z3JbuZ{J3pJ-*H+*j0J1Pu*7`FS|9)-b^$(PlSGQu#Un*>_V@}QL%DFn_NXU0udLMdb}Ps1ye=C`d_xwMZ=D+sQrDgy9SydshcR7`Ox9i)=6E1ze< zc!Fq=bUQSfb$tfK1wb+cFrK?e8qJ-Ise9Fy)1XX9?65%2x~Un`1V9{IfIBiyq-lu_ ztdzv={ak2fi{=-*WHw-fk_EL7pDb9vlRtPePg?&ts=v|SWG;&p@u5>KISuot`cVA` zpT-NXej0m=@Vpv+0+8W1PhrJNgW5sUX?#M9?oqu~rFCMb;qdc2n}Q0n9)#X(1F*xc zS%tnleYcQXCTF5%okOQ1t2Y6?8RcJ1VYbZ0J~)IwZ1L>s6hHLY4f6+nS_8fIv2TP#ral` zD3D?uS7Ca?8kGAcI^dL{!H&}0P7gfw|gH5q_OCdVEW zThE99>FSDVu>hpS&_J;mWgVJ2d}dPPRn>9ttmi9yT&&u57X zc!_jIVmpKK9JOw!(gYx-ZSb8St$#w=94Aiu9tGZ$2EdbMNzyK9d$UX0E_6-Xg^;ve z_^nCX3)X+d^!NIjTFdn|ojiX~Y?O-!6{^GPNZ-}NveSI8x+_ZSzk2mN2T$+rVOsbx zJXJ*jI~7r-g`f6D1IxZHaWoYgM=?6M4?koB*3wzyNP5>lXpgP~7gQQh`|vRq@3%BK zNgq@ySU-vBulE;l4TtWzP$GPH;I4y*PfS(^;W0uLcxd%& zIGt+OOU0J+cA0MBb}P;i)dx*Vr>F}+;w>2hkl7o6m*B7_qoGS++M$6N&8NBqCa^)l zNA1H0U*cpiodpL4+eXa`-`Ox={0!BxQAZhCtGwl z9l9QlhN7Zlp{Uq+5UO*3fECelkNvS}6#%V>0+{eo-Q}#g^)b{@~iq7NQN(uDki0IalS=?{a$PXY zfaHZ%Z*mDhPG;py3R68F0g$dSe%bf!79bPV+*xqL|-Y5~ZhULtaSEAymW!F>nL z^w8!FGk`P=P@MhzXWz$~xn!L4hfe@f8IbzQOiNB3%FI$@R#ip-Qkg6<;FnEw`CR)d z7HJ&%q196d0Ov@D)iqp;&2tK6VavJ;8=RFjE{H?Ohfaxzan^?>&zT-E!W+DO{TF0Q zhyIJyxUA|g0IB~nF_@=$Gb;4|P%g|DcqhdO(1|xHC?A%MMPDHSNQZ*XS7=GH=}>5y z8dp?>1Rxb!AqESi(1cKEuUvJ$RO74j3h$@r1k&?#JUs3aJ!&0SFa#Gl<&v-BiUEKm zz`-lVrl>;hm+8)o$k$|}=VFf>E`}7}qD!)+!=lU7xT;zt0BO-GF<2yv3}F$Mx>r6b zBSl@|Jr$ckEc}dow`wf=MhHOq8Fao@8+e&8Ec&+jb2d=F!Hb1ySu6xDCVXxG4Q+MQiyPDm>*@p%fSe%f z#$-UPfL1Su3P8p_fR0)L4XQXyolB}X0Z4I|h`M7Jf?1A6Pa1%6T0o-ou$kkO<>L}x zOQa?s^k*TG3tCiFaPO8=RS|$xB}deJ^?2r#pFTrEz?KEAo-P1HLU@y-=KO?^GXO|c zK5{RooRP6s!ZOxMXvP92IAg7xov~Ji&se{? z?aj3H&57PK51ujZ<0Gv7y!oHw1N9p`W6jaM@t^&pQ0T|$*9@O#i4U;z_%bOs!rM4HA%Ep_AVSyKGgJtq>Wx~f);g|> zGaWRKvsL0neWSd?DEoIjR*ex5qg3~<`&zib8xr&&LLl~Bgv}dFG9SYni`wxhL4IN_gykUk)tK>uHNrgVEA}VA_jp)2&AOJbLHA*b}>YVN&h!_Vu zXyU|3#{l@@jOQgB*=U9#NCZ6qnT|9{v*%9w3ds}*&eiR*7&=HG&I)2=BLKJPQAR)C zWRWR&r;7DUGvvE$p*R52)wRuJc{7$svJ_Dx`NCd9ae1CxK61hXNXT(_X9;uSq~WLR z1|9!deSN~w`TW24nRJ7cHRuN=J!E^M}?)VU7{{eq3-tmYxmVYB;c?720h5j3X_onDY&xt#}Kk<(R6YHyk-m7kp z(?_A1X1iXe(;WJ&Q~7qU@4`R0u-9H{bGeW8o)6FS<}E#8QVg$a`ZSB1Mz+K3^`wWL zA?##!yyLCldNNn;T~@(-Q)etf(ni*!{r{Hx7p-?$w)wZ3r+SK1k7u-*D1=Xu{vCY}n){%4ldhSU zJkC;wX1#dmD2#=7b>jQDcfQxnHIMHoX`IYPTebQru4&@>-^t$D-Z1~!51u9B`&u^q z>kBC@L4JIXCCuN+zN(i3l5vU{GnS$O*VZGRwdY8yscibhJ+Pw7F6r`CcDQTht{Pk- z4OX*DXTIc8bo!8VdX# z9a7*MB#FWA#H=Mea7qy`Al=r0V>rHdHo} znMfoFn)2U{_CDobH-F(zE|Xj~k<|~{)l!B3Q3ojyD@}%Q3)wl^mTxrqU&Lr`H1YQ_ zN{!<4a`mY~DY=M0-hjeM!O0{@Pq7-v*>2XAV}(Dvfj71a#v-w^S@ZNCYV$)5qaECPHNwLyY?d!1pF>S3*b9_>( zRBF#ZEVrJ0u}Bl@c3V zf5Bl7a&*cua41 z)N%IdZ<%blxwk{VyRn&jZe}OMdktHDe`LpSPh|(5BiP;tq_(VlZ2qm0E#D;A^PwMF z*rz@PwegVL_74~AfK8MgrTw`bUR&4+aY>O|ZC literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.ts new file mode 100644 index 00000000000..a489a1c7f46 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.ts @@ -0,0 +1,56 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface ShapeExample_Params { +} +class ShapeExample extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: ShapeExample_Params) { + } + updateStateVars(params: ShapeExample_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create({ space: 10 }); + Column.width('100%'); + Column.margin({ top: 15 }); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(); + Shape.viewPort({ x: -80, y: -5, width: 500, height: 300 }); + Shape.fill(0x317AF7); + Shape.stroke(Color.Red); + Shape.strokeWidth(3); + Shape.strokeLineJoin(LineJoinStyle.Miter); + Shape.strokeMiterLimit(5); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Path.create(); + Path.width(200); + Path.height(60); + Path.commands('M0 0 L400 0 L400 150 Z'); + }, Path); + Shape.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "ShapeExample"; + } +} +registerNamedRoute(() => new ShapeExample(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/ShapeExample", pageFullPath: "entry/src/main/ets/pages/ShapeExample", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..16e919f26147cae868a5ba8db409200eb3c465f3 GIT binary patch literal 14859 zcmd@bU2hx5QAZw+%hT8C^nFn*>LkkyV@uRYhAqdgWhrVRKu%oCNsAPLIkk0Hbk4x!}I#Ldh zwgxD3c4lX0cV}mIXNTk$-}}>#B>h`Hk@Y_&)tPyx;=3n{p1Z$zY?msFj_)nj>_f*} z-0|J&JI=iR%Q#dMvPo1$O{hJZlwVR+HBrB5z$Yu~{k3-vU$c*$H7d!_RT;_jL{>7O z14(E-Yf^rprHfkfHmb+R)ymsm1pP`2y>?`KkE*q8=Uu0K?}=UVBYIgay#`9&&XMgp z#rxG_z3fEvc|+|}ll5iGz&}}{tKNRK=HP%llsx)qbq z%&2L)w%=US-%w3pzWH9w+4r5|0~aR4^-ngc^@=ZWUW`K}vc0R01KXW))qkyiyyv(A zuenH+z`*!JQoVfc4*H0yHr3YAq!q0vKS^HJ6Fu^+ zA@XVCpQPcpL57l2k*I_ch8hlQBxLWFOeAf?no`w5#d-3`b`Kq2Pui6e1OH^DT(Xd` z#?@58KPq_wB0&)oDp@(GSN31ud%KB4%&i5wT|Z!dmlg^Og%2W~#DecVXpHhx=_~Ty z09tpT!@zm4+d}=m3=`h-T`6IFD63aut?A<>{rmB0yIzp^+~L_EXRX^Mv4vFKMaBrAweKtVDZ|F;xz8AQxHiXW}M|PX^S5cuRd} zmhCD1qmH|Dzq~s47z1H@pLvYINK`_LL?wqJQL-M1N`*!ds)jNW*(*I7i6UcRs9y3l zT|yV6Xa(kvR0<4I-=%;-4w9TMsod#d!w|V|q_^*_Z*K1vIBg%<1pFci`T_tjgaQi;)6aonVzF6G!h~QvNNYrt zhXC}&K_RA}{7&LC#|Qz3lN$7D5C#)Qv|*U;Dd>bc6Roew9RVF255eOEo-QfDTyv#y zijYW{N-JQ(waNgVYlYDeLAsu(6$5|}8D+G&{0!LueGRQjY{^lDv4mABm=mTeIVNe zB}WcQ6}wz|-+>!|=eu>f8o+sgG86Q}4paut6r)q&mJa&_M>@4$+}b+man&8BilF`+6>`Pkno3K)fAo>Mc#3w0zfP++<3-;u%-Va^y8o!U?!4@j9k@H{pD5jT?mi+9@rWFKP?tgv>NH9w)G&je zCU=dYo%)`)@0Q^1df%>q$-1zQ(5s9#HZ1xr2Ec}8fC1ic-AKOT_&|)|X;d@V?nckg z03dDvbbqFS6k|z1imo`|%YZC+zI8(>(uoH8Mk{q3=#56TY}3PxHe3@^3jI`|;Z<xNt^?xJ611Xo2B5eQVg%3KJln4wZyNIBz%eCqR33ecj9ZP93~F=wba13(4?`t$Rk z(Zp$M+N$`D3w{sSVK^LXIAWB>0N~I7=tQP~bdY01&qeHZJs#=Dl7&lc{1{@xTm!UU z#5Iskw|e;29Wp*7>h-u=x5Q%JL#I-7T>anaE_;5iHf<1KCq-jp05`TtFd`cEt9zc~ zz6$~MxK^z|4A^iTnnAO`gm8}|VX(IlxI>nW7h}%u+ERWN_$2T{dGUh+?)pjCnj_#{ zl#Ob+ep~?(-1^UHy-XbLM+R`?M%hDTQBS56+=OWFOgF$I^C@wx4B%s(iZfPJ2?>L- zB5)VRdaZ-8K3)RN2p{cK!}l=OSHRueHRK1je*^^RLtYTa$^brAlr4-E4>8!(I$e02 z%8P?$03URo-aNnq*Qzy;hmHfAg5fcM%R`{WabQCm$MIqt$1&a3aZE=zj_J>Z!s zw_+~$Y^@IY$Tw}bWbc(B?$^+PRQ5}b_j+ZM9p8TNEV*^>U>a$d=(H?E;gEAMI~7Fd z1Cyc0j5by?9BDN&ByyvZG>A1+;vVyPZKhw7ImCs9B51#eMWs3oMW^Y*LX+`lSuMmh zFV}(h4Gc*??V?ln#v=10WVA)V`7Y8}LMII1!x{SjHk`kv)J|>(`mZ{p@7_RC&ptUqPe{q$$apCCg`rwc@fh2T zMlu*LJq&=@#(-g#@7Tv{8Kz<}m101yn#MxBSug?& zBhX^#*dU6-j9OL{#{e!a3)I7K;7mO!73qB(HxD)j(hy+JbVZ69XDEDr$!Z92MUalB z`_g#tXXsW<@b+$snlONCVnTnK(L8cWhewz!#grko2C5*?RK?ULnyN5>tAcb*Rq)1- zE#jnLPH;|Cg#lcZIiQ||N$EW(mCLW!?ER8|0{Y;K38Dgh5McV?n$AI82Swr78Nl^H zx~4ulXCvw}0&Vl6J`CXc%tQY%(1+|p#hhI!;#FXj_7IdoA`>3xChjj?FJueZ?d3ut zi=S=w-&?c;Pd%fG^E405Rm9#+6~{SqQN>AU%ZVy7fUB5;{&e-=H3~`!K|zDk3ko91 zFl2sGkmssm=6s4$2#c7bD+(M@y_|N5WzHWuMIe5jHw7~s5TnH+@22|Gyrqr5f8iW| zzZ&K5S0nvBV#59X>iPbD^&; zegYDe-;sAelM}z93U`tA5o#sj;&VHusauzzg~&X@_3&7kv7c0gxd? zyw<3_SfULIB%&E&yMeH1gD%ulV0iAAuvgb2#D(dAO)A|bKKh|wz{a08Oz@#;`v5cuAY(LvI9eG5|=0noBBDxDN` zSxJ)&P-DEpk!r$Z7htk`PK_O7SV|jh4kV>b<&Vg9I4~O>mP^IiG58Lm!3Q5FP*Sie z0f38}0-Fv-hL|(+KP2|YDP{fnWCYA`W==6vU`p=bbmE7jFM)mOu5(!O;As%c`-%_Y z1seCn@T~+{4)zy(U4>qUe<21 z{x}H?fJtZq;20V}hS>@ZXpmghlVB;pWQ>k5G{}uY(ePO}g*6wvKyLQ|t*B`!bdU=# zMFcm*v`b6B6q*lY{CJhCAW6wx?)-kU-VY`1S+8EJRb4Df7iy8!XA|C}r_x0Ju^J<&*3|7h|g6SIveTL1!QyDcui@Tu3 zOJ=vJxwf)j0NIz#nRDN@1Z}G_y}E92X?s28lP# zuByl*r6%Y;z)i2@lKGz`<80w&{h!S(ql3x=rn*QkIlld zU#yqQr}|z2VYB8m6&C&5HGy4Vn7(reRiaMuRj($Xx$*~g*%QaqGTujUoEExpjtA9p zx%%YGCI9GE8#u=E;Va<7F-A0(6@I1@xVNyV(WC^gZ}nL5j+j>5BaPMJnb7Jadu?@= z1GHEUz~Ut@7FNeuk%wJDvOrRS(A|!MAn)5WeclOtmYlg3OU1CNw@}C(IMGVSgyqidn~qC GLhnCybE1y` literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.ts new file mode 100644 index 00000000000..db208915d57 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.ts @@ -0,0 +1,52 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface Stroke_Params { +} +class Stroke extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Stroke_Params) { + } + updateStateVars(params: Stroke_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start stroke] + Path.create(); + // [Start stroke] + Path.width(100); + // [Start stroke] + Path.height(100); + // [Start stroke] + Path.fillOpacity(0); + // [Start stroke] + Path.commands('M150 0 L300 300 L0 300 Z'); + // [Start stroke] + Path.stroke(Color.Red); + }, Path); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Stroke"; + } +} +registerNamedRoute(() => new Stroke(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/Stroke", pageFullPath: "entry/src/main/ets/pages/Stroke", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..87d1962ba9e76bf896723dca8356fb00f2256240 GIT binary patch literal 16472 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 { }); +} +interface Stroke_LineJoin_Params { +} +class Stroke_LineJoin extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Stroke_LineJoin_Params) { + } + updateStateVars(params: Stroke_LineJoin_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start stroke_line_join] + Polyline.create(); + // [Start stroke_line_join] + Polyline.width(100); + // [Start stroke_line_join] + Polyline.height(100); + // [Start stroke_line_join] + Polyline.fillOpacity(0); + // [Start stroke_line_join] + Polyline.stroke(Color.Red); + // [Start stroke_line_join] + Polyline.strokeWidth(8); + // [Start stroke_line_join] + Polyline.points([[20, 0], [0, 100], [100, 90]]); + // [Start stroke_line_join] + Polyline.strokeLineJoin(LineJoinStyle.Round); + }, Polyline); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Stroke_LineJoin"; + } +} +registerNamedRoute(() => new Stroke_LineJoin(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/StrokeLineJoin", pageFullPath: "entry/src/main/ets/pages/StrokeLineJoin", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..1bd5f543baad23b0d0b2cf2781b86201a9414fcd GIT binary patch literal 19934 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 Thj4pPxk+OCUEH_%e$)Q|6r5sp literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.ts new file mode 100644 index 00000000000..3dcf72ade2d --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.ts @@ -0,0 +1,69 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface Stroke_MiterLimit_Params { +} +class Stroke_MiterLimit extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Stroke_MiterLimit_Params) { + } + updateStateVars(params: Stroke_MiterLimit_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Row.create(); + }, Row); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start stroke_miter_limit] + Polyline.create(); + // [Start stroke_miter_limit] + Polyline.width(100); + // [Start stroke_miter_limit] + Polyline.height(100); + // [Start stroke_miter_limit] + Polyline.fillOpacity(0); + // [Start stroke_miter_limit] + Polyline.stroke(Color.Red); + // [Start stroke_miter_limit] + Polyline.strokeWidth(10); + // [Start stroke_miter_limit] + Polyline.points([[20, 0], [20, 100], [100, 100]]); + // [Start stroke_miter_limit] + Polyline.strokeLineJoin(LineJoinStyle.Miter); + // [Start stroke_miter_limit] + Polyline.strokeMiterLimit(1 / Math.sin(45)); + }, Polyline); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Polyline.create(); + Polyline.width(100); + Polyline.height(100); + Polyline.fillOpacity(0); + Polyline.stroke(Color.Red); + Polyline.strokeWidth(10); + Polyline.points([[20, 0], [20, 100], [100, 100]]); + Polyline.strokeLineJoin(LineJoinStyle.Miter); + Polyline.strokeMiterLimit(1.42); + }, Polyline); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Stroke_MiterLimit"; + } +} +registerNamedRoute(() => new Stroke_MiterLimit(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/StrokeMiterLimit", pageFullPath: "entry/src/main/ets/pages/StrokeMiterLimit", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..a19b6267cf2aef0eedae0db239b5223f5d7a38ae GIT binary patch literal 15762 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.ts new file mode 100644 index 00000000000..c4e79aba18f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.ts @@ -0,0 +1,56 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface Stroke_Opacity_Params { +} +class Stroke_Opacity extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: Stroke_Opacity_Params) { + } + updateStateVars(params: Stroke_Opacity_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // [Start stroke_opacity] + Path.create(); + // [Start stroke_opacity] + Path.width(100); + // [Start stroke_opacity] + Path.height(100); + // [Start stroke_opacity] + Path.fillOpacity(0); + // [Start stroke_opacity] + Path.commands('M150 0 L300 300 L0 300 Z'); + // [Start stroke_opacity] + Path.stroke(Color.Red); + // [Start stroke_opacity] + Path.strokeWidth(10); + // [Start stroke_opacity] + Path.strokeOpacity(0.2); + }, Path); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "Stroke_Opacity"; + } +} +registerNamedRoute(() => new Stroke_Opacity(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/StrokeOpacity", pageFullPath: "entry/src/main/ets/pages/StrokeOpacity", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..8553fd4af36f04523d56626705ce777d3481b0ae GIT binary patch literal 35181 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 O>+(l>H+I*J-TPnVSFY0l literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.ts new file mode 100644 index 00000000000..ba23cba6490 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.ts @@ -0,0 +1,155 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface viewPort1_Params { + viep?: Tmp; + viep1?: TmpOne; +} +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// [Start view_port_one] +class Tmp { + public x: number = 0; + public y: number = 0; + public width: number = 75; + public height: number = 75; +} +class TmpOne { + public x: number = 0; + public y: number = 0; + public width: number = 300; + public height: number = 300; +} +class viewPort1 extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.viep = new Tmp(); + this.viep1 = new TmpOne(); + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: viewPort1_Params) { + if (params.viep !== undefined) { + this.viep = params.viep; + } + if (params.viep1 !== undefined) { + this.viep1 = params.viep1; + } + } + updateStateVars(params: viewPort1_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private viep: Tmp; + private viep1: TmpOne; + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // 画一个宽高都为75的圆 + Text.create('Original Size Circle'); + }, Text); + // 画一个宽高都为75的圆 + Text.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Circle.create({ width: 75, height: 75 }); + Circle.fill('#E87361'); + }, Circle); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Row.create({ space: 10 }); + }, Row); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // 创建一个宽高都为150çš„shape组件,背景色为黄色,一个宽高都为75çš„viewPort。 + // 用一个è“色的矩形æ¥å¡«å……viewPort,在viewPort中绘制一个直径为75的圆。 + // 绘制结æŸï¼ŒviewPort会根æ®ç»„件宽高放大两å€ã€‚ + Text.create('Enlarged Circle'); + }, Text); + // 创建一个宽高都为150çš„shape组件,背景色为黄色,一个宽高都为75çš„viewPort。 + // 用一个è“色的矩形æ¥å¡«å……viewPort,在viewPort中绘制一个直径为75的圆。 + // 绘制结æŸï¼ŒviewPort会根æ®ç»„件宽高放大两å€ã€‚ + Text.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(); + Shape.viewPort(this.viep); + Shape.width(150); + Shape.height(150); + Shape.backgroundColor('#F5DC62'); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Rect.create(); + Rect.width('100%'); + Rect.height('100%'); + Rect.fill('#0097D4'); + }, Rect); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Circle.create({ width: 75, height: 75 }); + Circle.fill('#E87361'); + }, Circle); + Shape.pop(); + Column.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + // 创建一个宽高都为150çš„shape组件,背景色为黄色,一个宽高都为300çš„viewPort。 + // 用一个绿色的矩形æ¥å¡«å……viewPort,在viewPort中绘制一个直径为75的圆。 + // 绘制结æŸï¼ŒviewPort会根æ®ç»„件宽高缩å°ä¸¤å€ã€‚ + Text.create('Shrunk Circle'); + }, Text); + // 创建一个宽高都为150çš„shape组件,背景色为黄色,一个宽高都为300çš„viewPort。 + // 用一个绿色的矩形æ¥å¡«å……viewPort,在viewPort中绘制一个直径为75的圆。 + // 绘制结æŸï¼ŒviewPort会根æ®ç»„件宽高缩å°ä¸¤å€ã€‚ + Text.pop(); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(); + Shape.viewPort(this.viep1); + Shape.width(150); + Shape.height(150); + Shape.backgroundColor('#F5DC62'); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Rect.create(); + Rect.width('100%'); + Rect.height('100%'); + Rect.fill('#BDDB69'); + }, Rect); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Circle.create({ width: 75, height: 75 }); + Circle.fill('#E87361'); + }, Circle); + Shape.pop(); + Column.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "viewPort1"; + } +} +registerNamedRoute(() => new viewPort1(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/ViewPort1", pageFullPath: "entry/src/main/ets/pages/ViewPort1", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..82ec22648f2fb14739c8e03176b1d5bec3c7a61c GIT binary patch literal 19924 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 { }); +} +interface viewPort2_Params { + viep?: TmpTwo; +} +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// [Start view_port_two] +class TmpTwo { + public x: number = 0; + public y: number = 0; + public width: number = 300; + public height: number = 300; +} +class viewPort2 extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.viep = new TmpTwo(); + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: viewPort2_Params) { + if (params.viep !== undefined) { + this.viep = params.viep; + } + } + updateStateVars(params: viewPort2_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private viep: TmpTwo; + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(); + Shape.viewPort(this.viep); + Shape.width(300); + Shape.height(300); + Shape.backgroundColor('#F5DC62'); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Rect.create(); + Rect.width('100%'); + Rect.height('100%'); + Rect.fill('#0097D4'); + }, Rect); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Circle.create({ width: 150, height: 150 }); + Circle.fill('#E87361'); + }, Circle); + Shape.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "viewPort2"; + } +} +registerNamedRoute(() => new viewPort2(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/ViewPort2", pageFullPath: "entry/src/main/ets/pages/ViewPort2", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..6bd12765393757c133a21ca6e600e461d252e02f GIT binary patch literal 20024 zcmdU1O>7%Uc2<*3vf27;wfQAv(U^KvUjpTup>}n+vW~M za!G1z4+fJgk|4RQfh2p%B|&mYcK4J+kQ{=|DTe^L273uM$sThE5G2RV`>LwDtEp~^ zq`ZJ<0D1K4y?Q@Y@4b5U)6)L_FaGlP`puvIsiLXoFXHUnP-YnN^$IB=AVtLtV z)R(LI7fyZolcMwLNu}0UT`>Q)O~MH^qv=UKruP_1c173q*y&A+er8p(zxvsWkMbwZ z7L#Y0x(YHgHmg|FL5mqZTS|5*&_yrScPb|*mGbxM5%g;TdgEoj{;X2ncRqJY_h03U zjfh@$pw~dL{`6(O<`h1x6i!P{M4#{IeR}+K)wb}@tY+%<<4VE8ObiR zGpdKVtvK2I-6qb1Crpn6=eSZUJTAQMn*9pco4=)BJ=}Y`Qz;*x)@n5N+{y#z`=?I5 zQNLdyyhcO5(De!aec9!DOj4z&Y3^yfY?y2b^W@&N}jtMsfjtF z>%Q_P+&gLXWGA&x$DY>pT-kZ` zEMI%!G|YIu{KmpRv&v#T7qiFpM6U6&SeFnnhM3T`wdbeh&hW<+Vj(RizPxsUqI1jD`sJ~EY%zOS&iCO=s>e+TD_tO>gk2)gn zeu86Sf>U9$!scGlB2lq)7|PH#Gcm1)eiWM117jvTqWzO%r9XEwvuN$rJ~b7U0h8Gz z`~S5pYfOknP2*^rH*=cF?69U$M*AK^i7 z$%+0TrLVTX5!k9;Iw1Lgzt%C#yA1g3vLOZ zPrD4~6OgIxkT+V&YvJ&muMjdW3jrVr8JC5O%R&HfA@FWMu8=n*1p0EmLdb+H1OONE zV^}$1Ol8NohKX0jLgOVdKpgQtg2ANB0D#0`(wNSUa|X$mPVvRd2651c1L!9BV1}#> zs+QmAiHxZU1nF8-nxC-8bTuT)Ph2n(lg*KK9vmKt%3DRZ{wJ=lw;PEon{%|5?V(~t z>4mzq+rHf=`d`ONuH6l0^^c9gtVR>BYEO(rhO`f@)c*bLz5TUFqU=M<~Rv7qQsqI^mk;wA?jfbXi{%QG;taGoPo}?V~Jz>1u(4Hd{pB! za9HPN3{92?fcnBHVEVP6DPn{lBnUN4u>8?Z~pFb(%Kb%M^9j6R<`0FyGBhHV7) zmW*KDpJ@ych@_deJtjh{%Y+wN!7%```Gi&+AVM&@Y|Lk`U|H2IqnfYfPwEeyvQx`9 zDm6F_MhEorbl7Yrag?j7QbMazGiH(t6Lx2UiU4GafGG!vkOTeMYudIoS$7(b%f&`9Un;$!E%@if zf>Zb;UpjS&{Q&FL@7t0w01ylKM8*)?1Zcql!eE3!W@t-hthbN27#;JkVaQZ7I)&F zusp;U)A`87G@biai^UY!S$*K}uv9tDm!6Vq(FvKqJDyD}f?`5XI;E4w3tltpFcS&Ph=?2@_|Su(FR-ykOaP?w0+$ zGVopF!^+CH%9!=DlzzMI;^OXH{-|==cvjhVcAb(#2U+G1F4n*M+Hy$L2%#G;UL%B_ z6fjgw5A*!X+C6LN>FH7ZxK^aIv=8%T^4%H*6cX988@b4&9H7|afJOOv+loJQuunny zS~e^ms91|QK*TP<0yRaXSlv8QEDj!D4$M+6-nNnjHr7P%wz3?6w6tu@@*IW4yzJ&E zt`riMr{M>*%xqg~v2ch?&j~(|RRrLv_yNx)P%+II2S^2DS3XOAi6qe?*9J7oxnl;! zIY2Tv(4So(jV78M>T$W@)F=TGJ1o#SH{(GX2Z)0Uuz^ev>7c-dR%-m5ZzVFJ#dDWh zBs5^das;(sFh^*e#&~!P4_W`+uixw-hKqa&JaEbdr)K`m1v+;hy_xK`_WO#}-s%4; z&9D*{uq>8)I?VuVSqx18Guj;zg;T`Pl`&Y^tjW&J0pZ+hp%=>lwzO4isr{+kva@rl2h$o02(w5D5B8j+1h@mNH^SW#^2ZYV*M0>8y&cH^=3Hksf4V{% zYQpMu*=hj8WOafrs;VgKkiYK8Msq+I4f&GMsOQiWH2SV=GzWyycZv2~qfs$}&@&o9 zH%7y2287XfWupO@WVA{*VOW8X4R>UlIUsC?c*$l|tY`|_yer$x0b%nl(VlBFid7JL zHUsF!W`zETuz6Ru831?hV(qwunI0vX4`r)4AgqQ0lGS5E!GNz!P~#)na1IE=AJI0H zE%Vh1wj+~_SnNy@Ex>#G1pwaaG$pXXaGasm$FejI2x*Vm_MVCgF6|N{9`pwkcuyJt zPui>?ZLt=9D{?JN}Bl5@Zm|^#8qkC!^eaT6cWXSP1uWY05CgPzBWeYd?W~7^_bS)Zvnhva`Yqb+G zwEj(Id=a>?a*En7=vs+R%c*Aiu=2|KPqqD9td+ZSHHTgfpsf0Fcm2Be8uizBZM83_ zDGrDSF6fkIL;g26i z`eQtoZsCu>hWQ+|U(n~?$?eWty2<Cd-@>n^916!fEoyYqUcZ6$cQ~$t%v- zJ2j10V{_~=W9sWW@z|O`vt?N<7W!(r0lm!%K8UY-{>Hmc=CEm&%00~)Xm?y zQ1|Xb=e=3^f1`yHowxEwInmc^-T$wI-r+{v{JW03bnhvNcYpfHlWcEfWvTXsp@MrF zq}JH4J}gN4TDty5l{IN zR0V`SW0&_(lEY`(+k~mEBD_s>N7fg>G9}qUD$7VRJ!lieDZq42ZYN52)H~N0`gE8+>+&SK*+mAmyC)Gq@VMs| zz1U)C+yQfd7;<1XP_DRbXQ^E=>^>lc(>WZcK~_M29EWYl`g1_&zro12E$`hJE&w+^e&RjYi9HPeCvMwADy4)rP?Eb}jf`(%)w0g<_kd(P? zO!~vf0ig^CePwV#i}p@|(l${&CBqDJq=3v{qs!R^#I>nLdj z+97&XkeYjNeRt;u9t><68DBFF2+ct3Ylc%Tw6w^wch1SOxu`6gi_EgXglE~@`B^r1 z!7Q6@&XN~}BeU$3^`mshS=Kgxp>^J=`z$;1zGPYXL>o!=o*Ww-5V3L37z# z1H$D21d=QoWO2x`Te3I~2yt6PJxrnK3jTdoH03h<$C4dePD%G3}g_ znC7Dr(|lxN0wz2$&7Yr`=D#+HX~g=sRL41H)%>e2I(46zdf%7C6ufpqYTA=Sf&(HX z_Grh#;xn-2L8})O0M@irn|I;31jLcip8LWCal-);=>sC!co-xbNb(~JcUD|IToSvt zXrOx_o5KNN&I97W9+HR%$F2@-o-qJ;gzw#4U%i26pAY1G!vPWDAolgaO)XklMEJvV zB77_=!p9;b9GLJ3A3Hz7$G$cZ-fR7}(Po6>De56Ua6QbK|2x=ur|u(ss*^_{>l6sF zu-zHkxb;Nu1nEg=6xV1gag`rF$61G7?ced#SS3KEg5@Lkt@jFRNRs&+ zvF{>m)?iBSxAB}BswF9DfLO-iZ7*=W+AkpnHUz}vSi>k8l{#>qm-yQPdV}*(c2*%azaw&3> zKrC&30Bq2cleWKlB|Gr47kOTBpVV`$@xGoEbqzDMoT(;LTAHX)Ji%B)nhPA?_t3X0 zCxjbi*Z1T(&>uimyH0@B&6jpj4;> zDS2#wIWsoc*n3?tHXIOR<6$s1P0Zx6!Ko;^hHK=`H#wm`7$t1Hgv?3U#ueZ9cXY z(}Rofg9`f8a4P$i-rm#9ocT;onyQvqRCGg2n0*;*tyyn)GXwkc)JG@GQ*ux9@?)n@nW z=1=@dzd}0AWTL;h5sD_spnWZAKFYk42M~g5nhjH${6blbdGj$&Dh+1_o348$MYc(i zyO|4I9k&$!4HADfbLHH(Xp%zDNTDa0cly$;rHT`z;z-75ew8n2v_l%*%UtA}kuwVP zNK+J^57-RCQ?^L@W~S@c?kz=&{N+C3l5D zI6kkGN|jf?S!}#~lqZhaKT+D8q;>PNru0pJsK(2F;p?;S4_HCnl`CS!_K9irv3u;) z96!jVU-)?s{lf2@?6&t;b_aE<-F6I0e~HBIYUf~g`254}`1-u#9(Kn)R&90#VTC-S+EQ Nn-_z&^4eD3{6DO!p=1C6 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.ts b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.ts new file mode 100644 index 00000000000..e292d397a98 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.ts @@ -0,0 +1,83 @@ +if (!("finalizeConstruction" in ViewPU.prototype)) { + Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { }); +} +interface viewPort3_Params { + viep?: TmpThree; +} +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// [Start view_port_three] +class TmpThree { + public x: number = -150; + public y: number = -150; + public width: number = 300; + public height: number = 300; +} +class viewPort3 extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined, extraInfo) { + super(parent, __localStorage, elmtId, extraInfo); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.viep = new TmpThree(); + this.setInitiallyProvidedValue(params); + this.finalizeConstruction(); + } + setInitiallyProvidedValue(params: viewPort3_Params) { + if (params.viep !== undefined) { + this.viep = params.viep; + } + } + updateStateVars(params: viewPort3_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + } + aboutToBeDeleted() { + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private viep: TmpThree; + initialRender() { + this.observeComponentCreation2((elmtId, isInitialRender) => { + Column.create(); + }, Column); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Shape.create(); + Shape.viewPort(this.viep); + Shape.width(300); + Shape.height(300); + Shape.backgroundColor('#F5DC62'); + }, Shape); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Rect.create(); + Rect.width('100%'); + Rect.height('100%'); + Rect.fill('#0097D4'); + }, Rect); + this.observeComponentCreation2((elmtId, isInitialRender) => { + Circle.create({ width: 150, height: 150 }); + Circle.fill('#E87361'); + }, Circle); + Shape.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } + static getEntryName(): string { + return "viewPort3"; + } +} +registerNamedRoute(() => new viewPort3(undefined, {}), "", { bundleName: "com.samples.shapedrawing", moduleName: "entry", pagePath: "pages/ViewPort3", pageFullPath: "entry/src/main/ets/pages/ViewPort3", integratedHsp: "false", moduleType: "followWithHap" }); diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/filesInfo.txt b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/filesInfo.txt new file mode 100644 index 00000000000..0cf923698f1 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/filesInfo.txt @@ -0,0 +1,16 @@ +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts;&entry/src/main/ets/entryability/EntryAbility&;esm;entry|entry|1.0.0|src/main/ets/entryability/EntryAbility.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.ts;&entry/src/main/ets/pages/AntiAlias&;esm;entry|entry|1.0.0|src/main/ets/pages/AntiAlias.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.ts;&entry/src/main/ets/pages/CircleExample&;esm;entry|entry|1.0.0|src/main/ets/pages/CircleExample.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.ts;&entry/src/main/ets/entrybackupability/EntryBackupAbility&;esm;entry|entry|1.0.0|src/main/ets/entrybackupability/EntryBackupAbility.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.ts;&entry/src/main/ets/pages/Fill&;esm;entry|entry|1.0.0|src/main/ets/pages/Fill.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.ts;&entry/src/main/ets/pages/Mesh&;esm;entry|entry|1.0.0|src/main/ets/pages/Mesh.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts;&entry/src/main/ets/pages/Index&;esm;entry|entry|1.0.0|src/main/ets/pages/Index.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.ts;&entry/src/main/ets/pages/Shape&;esm;entry|entry|1.0.0|src/main/ets/pages/Shape.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.ts;&entry/src/main/ets/pages/StrokeLineJoin&;esm;entry|entry|1.0.0|src/main/ets/pages/StrokeLineJoin.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.ts;&entry/src/main/ets/pages/Stroke&;esm;entry|entry|1.0.0|src/main/ets/pages/Stroke.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.ts;&entry/src/main/ets/pages/ShapeExample&;esm;entry|entry|1.0.0|src/main/ets/pages/ShapeExample.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.ts;&entry/src/main/ets/pages/StrokeMiterLimit&;esm;entry|entry|1.0.0|src/main/ets/pages/StrokeMiterLimit.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.ts;&entry/src/main/ets/pages/StrokeOpacity&;esm;entry|entry|1.0.0|src/main/ets/pages/StrokeOpacity.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.ts;&entry/src/main/ets/pages/ViewPort1&;esm;entry|entry|1.0.0|src/main/ets/pages/ViewPort1.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.ts;&entry/src/main/ets/pages/ViewPort2&;esm;entry|entry|1.0.0|src/main/ets/pages/ViewPort2.ts;entry;false;ets +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.ts;&entry/src/main/ets/pages/ViewPort3&;esm;entry|entry|1.0.0|src/main/ets/pages/ViewPort3.ts;entry;false;ets diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/modules.cache b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/modules.cache new file mode 100644 index 00000000000..2460a2e330b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/modules.cache @@ -0,0 +1,17 @@ +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/AntiAlias.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/CircleExample.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/entrybackupability/EntryBackupAbility.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Fill.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Mesh.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Shape.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeLineJoin.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/Stroke.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ShapeExample.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeMiterLimit.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/StrokeOpacity.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort1.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort2.protoBin +E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.ts;E:/applications_app_samples/code/DocsSample/ArkUISample/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/entry/src/main/ets/pages/ViewPort3.protoBin +E:\applications_app_samples\code\DocsSample\ArkUISample\ShapeDrawing\entry\build\default\cache\default\default@CompileArkTS\esmodule\debug\npmEntries.txt;E:\applications_app_samples\code\DocsSample\ArkUISample\ShapeDrawing\entry\build\default\cache\default\default@CompileArkTS\esmodule\debug\npmEntries.protoBin diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.protoBin b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..799cf238c6029a20f1f8326e7cf8309d0a48d7df GIT binary patch literal 716 zcmd-$aP-e+CZWTu9E?H{T$~R18TrL}i3J5h-bfrJ4lXt>CN2g6MlBOAE-t203n?I0 zU=b2<$V)8AEKAjcX_FG-VgacXVp3p~0_x#l5@2v(6iVdcftZ|JT2z)=EEI^!M>5|W z#e88D^C6mXSdqfT3$Y?Mv7{)o!bB(-O#sOf3lvL4P%MFJ$6-qx7q>%kWpPPrE;x|< zQMgDpn4#Dp1hWC56^HrhTzoL|p+OajE`nr>C5kPgXtv-Dt}HHom_@Jv3&#*bvdRj@ iDls&x@CO=_r;74ROHzx3kURwuL9z+Iry$C)haLd`N}u!q literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.txt b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.txt new file mode 100644 index 00000000000..5c9e7b7c87d --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/npmEntries.txt @@ -0,0 +1,7 @@ +@system.app:@native.system.app +@ohos.app:@native.ohos.app +@system.router:@native.system.router +@system.curves:@native.system.curves +@ohos.curves:@native.ohos.curves +@system.matrix4:@native.system.matrix4 +@ohos.matrix4:@native.ohos.matrix4 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/sourceMaps.json b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/sourceMaps.json new file mode 100644 index 00000000000..db732788ff3 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/sourceMaps.json @@ -0,0 +1,16 @@ +{"key": "entry|entry|1.0.0|src/main/ets/entryability/EntryAbility.ts", "val": {"version":3,"file":"EntryAbility.ets","sourceRoot":"","sources":["entry/src/main/ets/entryability/EntryAbility.ets"],"names":[],"mappings":"YAeS,eAAe;OAAE,qBAAqB;OAAE,SAAS;YAAE,IAAI;OACvD,KAAK;YACL,MAAM;AAEf,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,GAAG,IAAI;QAClE,IAAI;YACF,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;SACvG;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,4CAA4C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;SACnG;QACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,IAAI,IAAI;QACf,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI;QACxD,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,CAAC,CAAC;QAE3E,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE;YAC7C,IAAI,GAAG,CAAC,IAAI,EAAE;gBACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,+CAA+C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBACrG,OAAO;aACR;YACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,mCAAmC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,IAAI,IAAI;QAC1B,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,oCAAoC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/entrybackupability/EntryBackupAbility.ts", "val": {"version":3,"file":"EntryBackupAbility.ets","sourceRoot":"","sources":["entry/src/main/ets/entrybackupability/EntryBackupAbility.ets"],"names":[],"mappings":"OAeS,KAAK;OACL,sBAAsB;cAAE,aAAa,IAAb,aAAa;AAE9C,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,sBAAsB;IACpE,KAAK,CAAC,QAAQ;QACZ,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAC7C,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,aAAa;QAC1C,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;QACxF,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;CACF","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/AntiAlias.ts", "val": {"version":3,"file":"AntiAlias.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/AntiAlias.ets"],"names":[],"mappings":";;;;;MAiBO,UAAU;IAFjB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,IAAI,QAAC,uBAAuB;YAA5B,IAAI,CAA0B,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC;;QAAhD,IAAI;;YACJ,yBAAyB;YACzB,OAAO;YACP,MAAM;YAFN,yBAAyB;YACzB,OAAO;YACP,MAAM,CACH,KAAK,CAAC,GAAG;YAHZ,yBAAyB;YACzB,OAAO;YACP,MAAM,CAEH,MAAM,CAAC,GAAG;YAJb,yBAAyB;YACzB,OAAO;YACP,MAAM,CAGH,WAAW,CAAC,CAAC;YALhB,yBAAyB;YACzB,OAAO;YACP,MAAM,CAIH,WAAW,CAAC,CAAC;YANhB,yBAAyB;YACzB,OAAO;YACP,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,KAAK;;;YACrB,uBAAuB;YACvB,IAAI,QAAC,wBAAwB;YAD7B,uBAAuB;YACvB,IAAI,CAA2B,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC;;QADjD,uBAAuB;QACvB,IAAI;;YACJ,0BAA0B;YAC1B,OAAO;YACP,MAAM;YAFN,0BAA0B;YAC1B,OAAO;YACP,MAAM,CACH,KAAK,CAAC,GAAG;YAHZ,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAEH,MAAM,CAAC,GAAG;YAJb,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAGH,WAAW,CAAC,CAAC;YALhB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAIH,WAAW,CAAC,CAAC;YANhB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,KAAK;YAPrB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAMH,SAAS,CAAC,KAAK;;QApBpB,MAAM;KAuBP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/CircleExample.ts", "val": {"version":3,"file":"CircleExample.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/CircleExample.ets"],"names":[],"mappings":";;;;;MAmBO,aAAa;IAFpB;;;;;;;KAjBA;;;;;;;;;;;IAoBE;;YACE,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAoBJ,KAAK,CAAC,MAAM;;;YAnBZ,oCAAoC;YACpC,cAAc;YACd,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;;;YAClC,uBAAuB;YACvB,MAAM;YADN,uBAAuB;YACvB,MAAM,CACH,KAAK,CAAC,GAAG;YAFZ,uBAAuB;YACvB,MAAM,CAEH,MAAM,CAAC,GAAG;YAHb,uBAAuB;YACvB,MAAM,CAGH,WAAW,CAAC,CAAC;YAJhB,uBAAuB;YACvB,MAAM,CAIH,WAAW,CAAC,CAAC;YALhB,uBAAuB;YACvB,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,GAAG;YANnB,uBAAuB;YACvB,MAAM,CAMH,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;;YACzB,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM;YAHN,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CACH,KAAK,CAAC,GAAG;YAJZ,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CAEH,MAAM,CAAC,GAAG;YALb,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CAGH,eAAe,CAAC,KAAK,CAAC,IAAI;;QAlB/B,MAAM;KAqBP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/Fill.ts", "val": {"version":3,"file":"Fill.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/Fill.ets"],"names":[],"mappings":";;;;;MAiBO,IAAI;IAFX;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,eAAe;YACf,IAAI;YADJ,eAAe;YACf,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,eAAe;YACf,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,eAAe;YACf,IAAI,CAGD,QAAQ,CAAC,0BAA0B;YAJtC,eAAe;YACf,IAAI,CAID,IAAI,CAAC,SAAS;YALjB,eAAe;YACf,IAAI,CAKD,WAAW,CAAC,CAAC;;QAPlB,MAAM;KAUP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/Index.ts", "val": {"version":3,"file":"Index.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/Index.ets"],"names":[],"mappings":";;;;IAsBE,GAAG,GAAC,GAAG,EAAE;;AAtBX;;;;;;;;;;;;;GAaG;AAEH,UAAU,GAAG;IACX,IAAI,EAAC,MAAM,CAAC;IACZ,IAAI,EAAC,MAAM,CAAA;CACZ;MAGM,KAAK;IAFZ;;;;;mBAGY;YACR;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,eAAe;gBACpB,IAAI,EAAC,qBAAqB;aAC3B;YACD;gBACE,IAAI,EAAC,MAAM;gBACX,IAAI,EAAC,YAAY;aAClB;YACD;gBACE,IAAI,EAAC,MAAM;gBACX,IAAI,EAAC,YAAY;aAClB;YACD;gBACE,IAAI,EAAC,OAAO;gBACZ,IAAI,EAAC,aAAa;aACnB;YACD;gBACE,IAAI,EAAC,cAAc;gBACnB,IAAI,EAAC,oBAAoB;aAC1B;YACD;gBACE,IAAI,EAAC,QAAQ;gBACb,IAAI,EAAC,cAAc;aACpB;YACD;gBACE,IAAI,EAAC,gBAAgB;gBACrB,IAAI,EAAC,sBAAsB;aAC5B;YACD;gBACE,IAAI,EAAC,kBAAkB;gBACvB,IAAI,EAAC,wBAAwB;aAC9B;YACD;gBACE,IAAI,EAAC,eAAe;gBACpB,IAAI,EAAC,qBAAqB;aAC3B;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;SACF;;;KAzDF;;;;;;;;;;;;;;IAIC,aAAI,GAAG,EAAE,CAqDR;IACD;;YACE,MAAM;;;YACJ,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAML,KAAK,CAAC,MAAM;;;YALX,OAAO;;;;oBACL,MAAM,iBAAC,IAAI,CAAC,IAAI;oBAAhB,MAAM,CACH,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;;gBAD5E,MAAM;;+CADA,IAAI,CAAC,GAAG,0BAGd,CAAC,IAAI,EAAC,GAAG,EAAC,EAAE,CAAA,IAAI,CAAC,IAAI;;QAHvB,OAAO;QADT,MAAM;QADR,MAAM;KASP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/Mesh.ts", "val": {"version":3,"file":"Mesh.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/Mesh.ets"],"names":[],"mappings":"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","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/Shape.ts", "val": {"version":3,"file":"Shape.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/Shape.ets"],"names":[],"mappings":";;;;;MAiBO,MAAM;IAFb;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,IAAI,QAAC,0BAA0B;;QAA/B,IAAI;;YACJ,oBAAoB;YACpB,KAAK;;;YACH,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;YAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;;QAF7B,oBAAoB;QACpB,KAAK;;YAGL,kBAAkB;YAClB,oBAAoB;YACpB,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;;QARpC,MAAM;KAWP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/ShapeExample.ts", "val": {"version":3,"file":"ShapeExample.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/ShapeExample.ets"],"names":[],"mappings":";;;;;MAkBO,YAAY;IAFnB;;;;;;;KAhBA;;;;;;;;;;;IAmBE;;YACE,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAUJ,KAAK,CAAC,MAAM;YAVd,MAAM,CAUU,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;;;YAThC,KAAK;YAAL,KAAK,CAGJ,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAHpD,KAAK,CAIJ,IAAI,CAAC,QAAQ;YAJd,KAAK,CAKJ,MAAM,CAAC,KAAK,CAAC,GAAG;YALjB,KAAK,CAMJ,WAAW,CAAC,CAAC;YANd,KAAK,CAOJ,cAAc,CAAC,aAAa,CAAC,KAAK;YAPnC,KAAK,CAQJ,gBAAgB,CAAC,CAAC;;;YAPjB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;YAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;YAA3B,IAAI,CAAyB,QAAQ,CAAC,wBAAwB;;QADhE,KAAK;QADP,MAAM;KAWP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/Stroke.ts", "val": {"version":3,"file":"Stroke.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/Stroke.ets"],"names":[],"mappings":";;;;;MAiBO,MAAM;IAFb;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,iBAAiB;YACjB,IAAI;YADJ,iBAAiB;YACjB,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,iBAAiB;YACjB,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,iBAAiB;YACjB,IAAI,CAGD,WAAW,CAAC,CAAC;YAJhB,iBAAiB;YACjB,IAAI,CAID,QAAQ,CAAC,0BAA0B;YALtC,iBAAiB;YACjB,IAAI,CAKD,MAAM,CAAC,KAAK,CAAC,GAAG;;QAPrB,MAAM;KAUP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/StrokeLineJoin.ts", "val": {"version":3,"file":"StrokeLineJoin.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/StrokeLineJoin.ets"],"names":[],"mappings":";;;;;MAiBO,eAAe;IAFtB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,2BAA2B;YAC3B,QAAQ;YADR,2BAA2B;YAC3B,QAAQ,CACL,KAAK,CAAC,GAAG;YAFZ,2BAA2B;YAC3B,QAAQ,CAEL,MAAM,CAAC,GAAG;YAHb,2BAA2B;YAC3B,QAAQ,CAGL,WAAW,CAAC,CAAC;YAJhB,2BAA2B;YAC3B,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YALnB,2BAA2B;YAC3B,QAAQ,CAKL,WAAW,CAAC,CAAC;YANhB,2BAA2B;YAC3B,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAPxC,2BAA2B;YAC3B,QAAQ,CAQL,cAAc,CAAC,aAAa,CAAC,KAAK;;QAVvC,MAAM;KAaP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/StrokeMiterLimit.ts", "val": {"version":3,"file":"StrokeMiterLimit.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/StrokeMiterLimit.ets"],"names":[],"mappings":";;;;;MAiBO,iBAAiB;IAFxB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,GAAG;;;YACD,6BAA6B;YAC7B,QAAQ;YADR,6BAA6B;YAC7B,QAAQ,CACL,KAAK,CAAC,GAAG;YAFZ,6BAA6B;YAC7B,QAAQ,CAEL,MAAM,CAAC,GAAG;YAHb,6BAA6B;YAC7B,QAAQ,CAGL,WAAW,CAAC,CAAC;YAJhB,6BAA6B;YAC7B,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YALnB,6BAA6B;YAC7B,QAAQ,CAKL,WAAW,CAAC,EAAE;YANjB,6BAA6B;YAC7B,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAP1C,6BAA6B;YAC7B,QAAQ,CAQL,cAAc,CAAC,aAAa,CAAC,KAAK;YATrC,6BAA6B;YAC7B,QAAQ,CAUL,gBAAgB,CAAC,CAAC,GAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;;;YAClC,QAAQ;YAAR,QAAQ,CACL,KAAK,CAAC,GAAG;YADZ,QAAQ,CAEL,MAAM,CAAC,GAAG;YAFb,QAAQ,CAGL,WAAW,CAAC,CAAC;YAHhB,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YAJnB,QAAQ,CAKL,WAAW,CAAC,EAAE;YALjB,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAN1C,QAAQ,CAOL,cAAc,CAAC,aAAa,CAAC,KAAK;YAPrC,QAAQ,CAQL,gBAAgB,CAAC,IAAI;;QArB1B,GAAG;KAwBJ","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/StrokeOpacity.ts", "val": {"version":3,"file":"StrokeOpacity.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/StrokeOpacity.ets"],"names":[],"mappings":";;;;;MAiBO,cAAc;IAFrB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,yBAAyB;YACzB,IAAI;YADJ,yBAAyB;YACzB,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,yBAAyB;YACzB,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,yBAAyB;YACzB,IAAI,CAGD,WAAW,CAAC,CAAC;YAJhB,yBAAyB;YACzB,IAAI,CAID,QAAQ,CAAC,0BAA0B;YALtC,yBAAyB;YACzB,IAAI,CAKD,MAAM,CAAC,KAAK,CAAC,GAAG;YANnB,yBAAyB;YACzB,IAAI,CAMD,WAAW,CAAC,EAAE;YAPjB,yBAAyB;YACzB,IAAI,CAOD,aAAa,CAAC,GAAG;;QATtB,MAAM;KAYP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/ViewPort1.ts", "val": {"version":3,"file":"ViewPort1.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/ViewPort1.ets"],"names":[],"mappings":";;;;IAiCE,IAAI,GAAE,GAAG;IACT,KAAK,GAAE,MAAM;;AAlCf;;;;;;;;;;;;;GAaG;AAEH,wBAAwB;AACxB,MAAM,GAAG;IACP,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM;IACV,MAAM,CAAC,CAAC,EAAC,MAAM,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,CAAC,EAAC,MAAM,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,KAAK,EAAC,MAAM,GAAG,GAAG,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAC,MAAM,GAAG,GAAG,CAAC;CAC5B;MAIM,SAAS;IAFhB;;;;;oBAGc,IAAI,GAAG,EAAE;qBACL,IAAI,MAAM,EAAE;;;KAN7B;;;;;;;;;;;;;;;;;IAKC,cAAM,GAAG,CAAa;IACtB,eAAO,MAAM,CAAgB;IAE7B;;YACE,MAAM;;;YACJ,cAAc;YACd,IAAI,QAAC,sBAAsB;;QAD3B,cAAc;QACd,IAAI;;YACJ,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAAhC,MAAM,CAA4B,IAAI,CAAC,SAAS;;;YAEhD,GAAG,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;;YACf,MAAM;;;YACJ,gDAAgD;YAChD,6CAA6C;YAC7C,4BAA4B;YAC5B,IAAI,QAAC,iBAAiB;;QAHtB,gDAAgD;QAChD,6CAA6C;QAC7C,4BAA4B;QAC5B,IAAI;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAAhC,MAAM,CAA4B,IAAI,CAAC,SAAS;;QAFlD,KAAK;QALP,MAAM;;YAeN,MAAM;;;YACJ,iDAAiD;YACjD,6CAA6C;YAC7C,4BAA4B;YAC5B,IAAI,QAAC,eAAe;;QAHpB,iDAAiD;QACjD,6CAA6C;QAC7C,4BAA4B;QAC5B,IAAI;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,KAAK;YAJpB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAC;YAA9B,MAAM,CAA0B,IAAI,CAAC,SAAS;;QAFhD,KAAK;QALP,MAAM;QAhBR,GAAG;QALL,MAAM;KAqCP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/ViewPort2.ts", "val": {"version":3,"file":"ViewPort2.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/ViewPort2.ets"],"names":[],"mappings":";;;;IA0BE,IAAI,GAAE,MAAM;;AA1Bd;;;;;;;;;;;;;GAaG;AAEH,wBAAwB;AACxB,MAAM,MAAM;IACV,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC7B;MAIM,SAAS;IAFhB;;;;;oBAGiB,IAAI,MAAM,EAAE;;;KAL5B;;;;;;;;;;;;;;IAKC,cAAM,MAAM,CAAgB;IAE5B;;YACE,MAAM;;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAAlC,MAAM,CAA8B,IAAI,CAAC,SAAS;;QAFpD,KAAK;QADP,MAAM;KAUP","entry-package-info":"entry|1.0.0"}} +{"key": "entry|entry|1.0.0|src/main/ets/pages/ViewPort3.ts", "val": {"version":3,"file":"ViewPort3.ets","sourceRoot":"","sources":["entry/src/main/ets/pages/ViewPort3.ets"],"names":[],"mappings":";;;;IA0BE,IAAI,GAAE,QAAQ;;AA1BhB;;;;;;;;;;;;;GAaG;AAEH,0BAA0B;AAC1B,MAAM,QAAQ;IACZ,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IACxB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IACxB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC7B;MAIM,SAAS;IAFhB;;;;;oBAGmB,IAAI,QAAQ,EAAE;;;KALhC;;;;;;;;;;;;;;IAKC,cAAM,QAAQ,CAAkB;IAEhC;;YACE,MAAM;;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAAlC,MAAM,CAA8B,IAAI,CAAC,SAAS;;QAFpD,KAAK;QADP,MAAM;KAUP","entry-package-info":"entry|1.0.0"}} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/generated/profile/default/BuildProfile.ets b/ArkUIKit/ShapeDrawing/entry/build/default/generated/profile/default/BuildProfile.ets new file mode 100644 index 00000000000..03654216b15 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/generated/profile/default/BuildProfile.ets @@ -0,0 +1,25 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const BUNDLE_NAME = 'com.samples.shapedrawing'; +export const BUNDLE_TYPE = 'app'; +export const VERSION_CODE = 1000000; +export const VERSION_NAME = '1.0.0'; +export const TARGET_NAME = 'default'; +export const PRODUCT_NAME = 'default'; +export const BUILD_MODE_NAME = 'debug'; +export const DEBUG = true; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly BUNDLE_NAME = BUNDLE_NAME; + static readonly BUNDLE_TYPE = BUNDLE_TYPE; + static readonly VERSION_CODE = VERSION_CODE; + static readonly VERSION_NAME = VERSION_NAME; + static readonly TARGET_NAME = TARGET_NAME; + static readonly PRODUCT_NAME = PRODUCT_NAME; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/generated/r/default/ResourceTable.h b/ArkUIKit/ShapeDrawing/entry/build/default/generated/r/default/ResourceTable.h new file mode 100644 index 00000000000..66fafe2cb37 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/generated/r/default/ResourceTable.h @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef RESOURCE_TABLE_H +#define RESOURCE_TABLE_H + +#include + +namespace OHOS { +const int32_t STRING_ENTRYABILITY_DESC = 0x01000004; +const int32_t STRING_ENTRYABILITY_LABEL = 0x01000005; +const int32_t STRING_APP_NAME = 0x01000000; +const int32_t STRING_MODULE_DESC = 0x01000006; +const int32_t COLOR_START_WINDOW_BACKGROUND = 0x01000007; +const int32_t FLOAT_PAGE_TEXT_FONT_SIZE = 0x01000008; +const int32_t MEDIA_BACKGROUND = 0x01000001; +const int32_t MEDIA_FOREGROUND = 0x01000002; +const int32_t MEDIA_LAYERED_IMAGE = 0x01000003; +const int32_t MEDIA_STARTICON = 0x01000009; +const int32_t PROFILE_BACKUP_CONFIG = 0x0100000a; +const int32_t PROFILE_MAIN_PAGES = 0x0100000b; +} +#endif \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/hap_metadata/default/output_metadata.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/hap_metadata/default/output_metadata.json new file mode 100644 index 00000000000..2d6e4e7b9ac --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/hap_metadata/default/output_metadata.json @@ -0,0 +1 @@ +[{"hapName":"entry-default-unsigned.hap","deviceTypes":["default"],"isSigned":false}] diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/loader.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/loader.json new file mode 100644 index 00000000000..24e7e72379f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/loader.json @@ -0,0 +1,25 @@ +{ + "modulePathMap": { + "entry": "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry" + }, + "compileMode": "esmodule", + "projectRootPath": "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing", + "nodeModulesPath": "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\loader_out\\default\\node_modules", + "byteCodeHarInfo": {}, + "declarationEntry": [], + "moduleName": "entry", + "hspNameOhmMap": {}, + "harNameOhmMap": {}, + "packageManagerType": "ohpm", + "compileEntry": [], + "otherCompileFiles": [], + "dynamicImportLibInfo": {}, + "routerMap": [], + "hspResourcesMap": {}, + "updateVersionInfo": {}, + "anBuildOutPut": "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\loader_out\\default\\an\\arm64-v8a", + "anBuildMode": "type", + "patchConfig": { + "changedFileList": "E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\patch\\default\\changedFileList.json" + } +} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/pkgContextInfo.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/pkgContextInfo.json new file mode 100644 index 00000000000..b41dd3937f6 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader/default/pkgContextInfo.json @@ -0,0 +1 @@ +{"@ohos/hypium":{"packageName":"@ohos/hypium","bundleName":"","moduleName":"","version":"1.0.24","entryPath":"index.js","isSO":false,"dependencyAlias":""},"@ohos/hamock":{"packageName":"@ohos/hamock","bundleName":"","moduleName":"","version":"1.0.0","entryPath":"index.ets","isSO":false,"dependencyAlias":""},"entry":{"packageName":"entry","bundleName":"","moduleName":"","version":"","entryPath":"src/main/","isSO":false,"dependencyAlias":""}} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader_out/default/ets/modules.abc b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/loader_out/default/ets/modules.abc new file mode 100644 index 0000000000000000000000000000000000000000..fc426d7c24ef92b97e1eff43f5bf39c3f06453c0 GIT binary patch literal 90744 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

M${fZUig3^@a0Di~qu!TLOAT%Kz(#vu0+h^w!MY z=TDmj^kF&66C>1@PDN868}x}pi)Nep#hH-p#*7;fsnd6A+JSvE79a}`q*cY7?n<1G z4rKN11PFPrKFC*dU4Lqhksi(Y@Vg&jYqsL|MRg1OT&Xns zi(Jfogz$_$n4<@(nz^FZU{gGr$-zSI!K;8<@gQG~`8Ys?3&TD8h3ibfwALO5xL9eK@_UFPMX2$iw;z>pl9MB&*oX~GH z59L9f*5214v)asi_9W8o(&e#IW9x8`&lSX(It)&KWj6aY7dRm3>wSv?Q9@jn0QO)X z6=%|Xm5UbKbVp{ZM(pPY>w+gpi98t+zBDA(M#{{kWT*0h;6-6P8Q+G)3^it`+;xwH z8zNg>Yv}U2YwIrZ&yz4voA^(@*aqK*zVgaT4$lRP^-J`%E6=~oiKmz#_GeOF0wGsL z0fdiRZC!oYTe4YPRJg~F_GZ=eLPeaG?ErI{W6}{g4=*F(Dz=@sy3kK;=yjiG1Wd)i zv2$m>6uO zHSSLe$m!V^#`$_$-M~j;ZvlyTVmN#5n4_-hbHsJaCpDzyZE6-QG!5hpY&yF8H}CcA z)UDXY7jlQw^hwAK0DF`X73UjHZ4f~rlaBR5z3_HxqHmg_&#l3C@GI zVp-}Sn&>P3N1Jx8^fuj0z5egG{4`zP!CffI0ypLy(>sl1K8kEOO4kwU;tVMG#xl3?dVyb#{GYJL9amtQ}Waf=se0WFN^ zBeFt~Esbw9 zZ>QYbN8n5!V?L~LB)2m^ZfHmd)NFV81hG@yj5Z?%>hShb$8m;>4LJhDzL%S`x6=}v zz#xxUupuT0ih5)l*Aw2*m02VXeW-UEcwjcAPtSvPePcxe&x=pThB250UqcD%iZ>U! ze>I=sU*147pmvrXVpN$hwS?1SJH{BiamHJ0R`Qwgw}bl52TV47@9!B0n4 z^8D5^-vuz#&5WoFF;4CMnks+$Z!IykzLi1_dIplRxw=AQSz_i;i`n>iz0b7^G?!~m zJ81pbx5K6hL#diREv;N?JP(3bvZ`{VFlWTRp`FWMHMdFEPX5MX<>CgwOgjO^i~^II zQt?-uIJORW|0NE_!M#_({Uio>TdaJ|TN%6GLvZ2Z7Sa}4nho}u9lLGmWQ>E%0Ocw1 z8CA`r!bm=%o#-Y@yJaYtKvJ4SK<+_TT1O}ck!P-;N*24=o&q+TQAbVfRW!8`@L8|J zu9@qc_v_{wg4b{D=GtsMo984Q+jH;Aq4Z1@&Xzm!-gbSE0%trFEd6*7(2W)RkTa+E zbs6Wi6*gTQF0q9j&vc|AC3iJVD3tXmRfPM`q%PJ#4Dsf2a0t_n;q`sHpk@5*kpCL2 z{zz{M#QJ}|NA+@x*;j_>KsWesuR5o_g^|rLt~`Wo46Fg}wrG;f{4(O4FFeyN(^}X? zWPAC^O~UVRiQ6@AfY5K$0bRjp4}Md!pgfZwCL32w^T;u{$FdWz%I>hE^?y=Y^9tcA z0LYrJuv&S+o7W3#v_<&9Gk!&wO=wMm zvToXA?2wQ&zK$ZWL$-2X*|jPyeW}$@sAsWl+^iY8EM28?J2NBZ)cqUjm&%t72N8^| znZ!$zj*J1pIB-*WW4 zNa+7g>VFible_UNQBc;YgbUrU*3VK~n)M##oIhW2Z(`|KFIN2{*i4ObFX@d|*dqB3 zHfF}TwRz%y?H4F&O-;(oYs$StS2}t?kkVI)VqD+?@Eq4Axp8 z)vO?Y#~E7W%PpEd)K8gjwK70YyY~?2RC(oqtMwjFM~x-e@I@+PoZuSUj7y_h^v{

55DnBc5_SNJ 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/.caches/base/media/foreground.png b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/.caches/base/media/foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..418affbf658954b0c174c80847a26328ca86111e GIT binary patch literal 13086 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ResourceTable.txt b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ResourceTable.txt new file mode 100644 index 00000000000..f1ffa94f5e4 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ResourceTable.txt @@ -0,0 +1,12 @@ +string EntryAbility_desc 0x01000004 +string EntryAbility_label 0x01000005 +string app_name 0x01000000 +string module_desc 0x01000006 +color start_window_background 0x01000007 +float page_text_font_size 0x01000008 +media background 0x01000001 +media foreground 0x01000002 +media layered_image 0x01000003 +media startIcon 0x01000009 +profile backup_config 0x0100000a +profile main_pages 0x0100000b \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ark_module.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ark_module.json new file mode 100644 index 00000000000..aa7e747e404 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ark_module.json @@ -0,0 +1 @@ +{"app":{"bundleName":"com.samples.shapedrawing","vendor":"samples","versionCode":1000000,"versionName":"1.0.0","icon":"$media:layered_image","label":"$string:app_name","apiReleaseType":"Release","compileSdkVersion":"6.0.0.47","targetAPIVersion":60000020,"minAPIVersion":60000020,"compileSdkType":"HarmonyOS","targetMinorAPIVersion":0,"targetPatchAPIVersion":0,"appEnvironments":[],"bundleType":"app","buildMode":"debug","debug":true},"module":{"name":"entry","type":"entry","description":"$string:module_desc","mainElement":"EntryAbility","deviceTypes":["default"],"deliveryWithInstall":true,"installationFree":false,"pages":"$profile:main_pages","abilities":[{"name":"EntryAbility","srcEntry":"./ets/entryability/EntryAbility.ets","description":"$string:EntryAbility_desc","icon":"$media:layered_image","label":"$string:EntryAbility_label","startWindowIcon":"$media:startIcon","startWindowBackground":"$color:start_window_background","exported":true,"skills":[{"entities":["entity.system.home"],"actions":["ohos.want.action.home"]}]}],"extensionAbilities":[{"name":"EntryBackupAbility","srcEntry":"./ets/entrybackupability/EntryBackupAbility.ets","type":"backup","exported":false,"metadata":[{"name":"ohos.extension.backup","resource":"$profile:backup_config"}]}],"packageName":"entry","virtualMachine":"ark13.0.1.0","compileMode":"esmodule","dependencies":[]}} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ids_map/id_defined.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ids_map/id_defined.json new file mode 100644 index 00000000000..42f4b3fa4e6 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/ids_map/id_defined.json @@ -0,0 +1,51 @@ +{ + "record": [{ + "type": "string", + "name": "app_name", + "id": "0x01000000" + }, { + "type": "media", + "name": "background", + "id": "0x01000001" + }, { + "type": "media", + "name": "foreground", + "id": "0x01000002" + }, { + "type": "media", + "name": "layered_image", + "id": "0x01000003" + }, { + "type": "string", + "name": "EntryAbility_desc", + "id": "0x01000004" + }, { + "type": "string", + "name": "EntryAbility_label", + "id": "0x01000005" + }, { + "type": "string", + "name": "module_desc", + "id": "0x01000006" + }, { + "type": "color", + "name": "start_window_background", + "id": "0x01000007" + }, { + "type": "float", + "name": "page_text_font_size", + "id": "0x01000008" + }, { + "type": "media", + "name": "startIcon", + "id": "0x01000009" + }, { + "type": "profile", + "name": "backup_config", + "id": "0x0100000A" + }, { + "type": "profile", + "name": "main_pages", + "id": "0x0100000B" + }] +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/module.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/module.json new file mode 100644 index 00000000000..30f0c214382 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/module.json @@ -0,0 +1,68 @@ +{ + "app": { + "bundleName": "com.samples.shapedrawing", + "vendor": "samples", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:layered_image", + "label": "$string:app_name", + "apiReleaseType": "Release", + "compileSdkVersion": "6.0.0.47", + "targetAPIVersion": 60000020, + "minAPIVersion": 60000020, + "compileSdkType": "HarmonyOS", + "targetMinorAPIVersion": 0, + "targetPatchAPIVersion": 0, + "appEnvironments": [], + "bundleType": "app", + "buildMode": "debug", + "debug": true, + "iconId": 16777219, + "labelId": 16777216 + }, + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": ["default"], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [{ + "name": "EntryAbility", + "srcEntry": "./ets/entryability/EntryAbility.ets", + "description": "$string:EntryAbility_desc", + "icon": "$media:layered_image", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:startIcon", + "startWindowBackground": "$color:start_window_background", + "exported": true, + "skills": [{ + "entities": ["entity.system.home"], + "actions": ["ohos.want.action.home"] + }], + "descriptionId": 16777220, + "iconId": 16777219, + "labelId": 16777221, + "startWindowIconId": 16777225, + "startWindowBackgroundId": 16777223 + }], + "extensionAbilities": [{ + "name": "EntryBackupAbility", + "srcEntry": "./ets/entrybackupability/EntryBackupAbility.ets", + "type": "backup", + "exported": false, + "metadata": [{ + "name": "ohos.extension.backup", + "resource": "$profile:backup_config", + "resourceId": 16777226 + }] + }], + "packageName": "entry", + "virtualMachine": "ark13.0.1.0", + "compileMode": "esmodule", + "dependencies": [], + "descriptionId": 16777222 + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/opt-compression.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/opt-compression.json new file mode 100644 index 00000000000..f385d4026e8 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/opt-compression.json @@ -0,0 +1 @@ +{"context":{"extensionPath":"D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\hms\\toolchains\\lib\\libimage_transcoder_shared.dll"},"compression":{"media":{"enable":false},"filters":[]}} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resConfig.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resConfig.json new file mode 100644 index 00000000000..6b599e19f35 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resConfig.json @@ -0,0 +1 @@ +{"configPath":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\process_profile\\default\\module.json","packageName":"com.samples.shapedrawing","output":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default","moduleNames":"entry","ResourceTable":["E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\generated\\r\\default\\ResourceTable.h"],"applicationResource":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\AppScope\\resources","moduleResources":["E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\src\\main\\resources"],"dependencies":[],"iconCheck":true,"compression":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default\\opt-compression.json","ids":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default\\ids_map","definedIds":"E:\\applications_app_samples\\code\\DocsSample\\ArkUISample\\ShapeDrawing\\entry\\build\\default\\intermediates\\res\\default\\ids_map\\id_defined.json","definedSysIds":"D:\\devecostudio-windows-6.0.0.858\\DevEco Studio\\sdk\\default\\hms\\toolchains\\id_defined.json"} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources.index b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources.index new file mode 100644 index 0000000000000000000000000000000000000000..bb73550681c4188a348ba74844d1fa13f7d3a64c GIT binary patch literal 1168 zcmchW&ui2`6vroaYpY!aYe57L1urey%__8)o))&k;>{JI2N`BJFY9PBGo8s&x8PB{ z)<3~N!n;=w{srRSAl^KQ--#+Mc`Rd*i|8tzT zgt&l&ySP0(Ivz%tvt6u;U{+1Vpg$bG!s04G8@2^Igt7ky-1afKjCroKkxor0;4K<} zUI87c@r$XGV{1}9*#x))<5cT-oIrFPbM}%2y)0yEO(BCmqpQGiC0&E`HKaH29t!0P zd8$ofPbCMRcsn%-M@eDWm$(G^Q^@h0%LmB50{Eq>DN{4@lt`T;FIe;qH{L>OJ0(wcqJ`0WEOH+j zi=PJox6VF*ahN)L3xFIAma^y%b_j;i(CvY>#qgPO z)b|RXeX=Wv+ZuZccIw9z;*kmz=aguL>8}IPasQAmzBNntmPKuxm(KHG&4%D_?X@ek zHEj{NzGPnCW_232Yl<~-`$0KcV!xZZon^_&1I{Ow%ZmT5bl#>qqjI~yf3C8yyUQIG M|7fX3UEOm01R_)4x&QzG literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/background.png b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/background.png new file mode 100644 index 0000000000000000000000000000000000000000..1ab7ae20a327270995f1ad22c3dfc76db4fb1056 GIT binary patch literal 70283 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

M${fZUig3^@a0Di~qu!TLOAT%Kz(#vu0+h^w!MY z=TDmj^kF&66C>1@PDN868}x}pi)Nep#hH-p#*7;fsnd6A+JSvE79a}`q*cY7?n<1G z4rKN11PFPrKFC*dU4Lqhksi(Y@Vg&jYqsL|MRg1OT&Xns zi(Jfogz$_$n4<@(nz^FZU{gGr$-zSI!K;8<@gQG~`8Ys?3&TD8h3ibfwALO5xL9eK@_UFPMX2$iw;z>pl9MB&*oX~GH z59L9f*5214v)asi_9W8o(&e#IW9x8`&lSX(It)&KWj6aY7dRm3>wSv?Q9@jn0QO)X z6=%|Xm5UbKbVp{ZM(pPY>w+gpi98t+zBDA(M#{{kWT*0h;6-6P8Q+G)3^it`+;xwH z8zNg>Yv}U2YwIrZ&yz4voA^(@*aqK*zVgaT4$lRP^-J`%E6=~oiKmz#_GeOF0wGsL z0fdiRZC!oYTe4YPRJg~F_GZ=eLPeaG?ErI{W6}{g4=*F(Dz=@sy3kK;=yjiG1Wd)i zv2$m>6uO zHSSLe$m!V^#`$_$-M~j;ZvlyTVmN#5n4_-hbHsJaCpDzyZE6-QG!5hpY&yF8H}CcA z)UDXY7jlQw^hwAK0DF`X73UjHZ4f~rlaBR5z3_HxqHmg_&#l3C@GI zVp-}Sn&>P3N1Jx8^fuj0z5egG{4`zP!CffI0ypLy(>sl1K8kEOO4kwU;tVMG#xl3?dVyb#{GYJL9amtQ}Waf=se0WFN^ zBeFt~Esbw9 zZ>QYbN8n5!V?L~LB)2m^ZfHmd)NFV81hG@yj5Z?%>hShb$8m;>4LJhDzL%S`x6=}v zz#xxUupuT0ih5)l*Aw2*m02VXeW-UEcwjcAPtSvPePcxe&x=pThB250UqcD%iZ>U! ze>I=sU*147pmvrXVpN$hwS?1SJH{BiamHJ0R`Qwgw}bl52TV47@9!B0n4 z^8D5^-vuz#&5WoFF;4CMnks+$Z!IykzLi1_dIplRxw=AQSz_i;i`n>iz0b7^G?!~m zJ81pbx5K6hL#diREv;N?JP(3bvZ`{VFlWTRp`FWMHMdFEPX5MX<>CgwOgjO^i~^II zQt?-uIJORW|0NE_!M#_({Uio>TdaJ|TN%6GLvZ2Z7Sa}4nho}u9lLGmWQ>E%0Ocw1 z8CA`r!bm=%o#-Y@yJaYtKvJ4SK<+_TT1O}ck!P-;N*24=o&q+TQAbVfRW!8`@L8|J zu9@qc_v_{wg4b{D=GtsMo984Q+jH;Aq4Z1@&Xzm!-gbSE0%trFEd6*7(2W)RkTa+E zbs6Wi6*gTQF0q9j&vc|AC3iJVD3tXmRfPM`q%PJ#4Dsf2a0t_n;q`sHpk@5*kpCL2 z{zz{M#QJ}|NA+@x*;j_>KsWesuR5o_g^|rLt~`Wo46Fg}wrG;f{4(O4FFeyN(^}X? zWPAC^O~UVRiQ6@AfY5K$0bRjp4}Md!pgfZwCL32w^T;u{$FdWz%I>hE^?y=Y^9tcA z0LYrJuv&S+o7W3#v_<&9Gk!&wO=wMm zvToXA?2wQ&zK$ZWL$-2X*|jPyeW}$@sAsWl+^iY8EM28?J2NBZ)cqUjm&%t72N8^| znZ!$zj*J1pIB-*WW4 zNa+7g>VFible_UNQBc;YgbUrU*3VK~n)M##oIhW2Z(`|KFIN2{*i4ObFX@d|*dqB3 zHfF}TwRz%y?H4F&O-;(oYs$StS2}t?kkVI)VqD+?@Eq4Axp8 z)vO?Y#~E7W%PpEd)K8gjwK70YyY~?2RC(oqtMwjFM~x-e@I@+PoZuSUj7y_h^v{

55DnBc5_SNJ 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/foreground.png b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..418affbf658954b0c174c80847a26328ca86111e GIT binary patch literal 13086 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/layered_image.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/layered_image.json new file mode 100644 index 00000000000..88e305e7ad5 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/layered_image.json @@ -0,0 +1,6 @@ +{ + "layered-image": { + "background": "$media:16777217", + "foreground": "$media:16777218" + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/startIcon.png b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/media/startIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..205ad8b5a8a42e8762fbe4899b8e5e31ce822b8b GIT binary patch literal 20093 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

c)ijgxDm}8EsRXFt3h@+Ufr7@DN z^55r2UpdZvo*$)c`MJ_3zXBARbH%T}ifygzYy6g*WBtspGU<*Ccb`wpyW!Ui$gZ}y zo>MwK`K>f-62KfvO2{S zXF|ni6T=gB=C>=mF~5ojWS?I%DBt!ouB^&}v*S8G>5&(6>bM<0W9)PIeSXbv;v2lq zgZx&0)nJZqzUPEz=3RZouldy~VSciFe9|fxrs_KoD#u$hYz3BTu8Twxs@yt>*lp{< zm_XbpVEfL5#v}%x;+@AY<0*cV$ZF-248A&7CXCUG-9e@z7Va=V8J*&{q4I$n{~M-~K{qUmg-Y{N~tC__Y!6wZ`uS zAN=8SKnb`wARia}P{>}4q*mFJ2rt$xz9z}40>2@prKgMpJ4y?1MK zsu;8LLY(s8tNKp-L`??i35r}^567PuI=u8S&*EdFoy9Nf;48%{S#m8d=h|q*N!*Hw zE&QzCc2jn4u4(uar*pTPKCQ7DC)&Cs49?>3$7+X~)XJA`!=HT>p7`~r%@S~FvIWT% zL)t28t$h|BY!xpHnSQNXihG*>p${(0U;hi2mrwZcOUrZh0ee^UiT1oYO{3$5Hop*u zLXEN0l1qM=vD`rN)XOLJdon_5oHz3`AzpsrE1f=|*Mk1={U^)6{EcJ3kodUYZmX=p z&l4~2a)h&L*mG4|<3d+3_?Prr)`vgu$Y1U7EWIl2?@iUEd5K>;n9zxxlFNU^0vTLl zH@o9AcfQkuuVr{d?>6N1tv`70$?|*eKGqA1!uC8^rS(s+P1LOQ9lYFac+7nk_^^=}_9|LQHrRm;gm z#jgtmwd-2xd;fSm;rGSZd-@wbDeXS|)%sP&lv@b1qs`Sf43!0V?3qvsHeeF4^Q(*h z^}o7zxuRcU@`@_U0N4FIMxo}rPTLvJc{K#}XhYWmowJJ2$Yjbl`u)zkPnNIv?#GvR zeQ>x@oZ)FOm|m&l>_ivC(ek;URCk@4f5BINBIPcJedSknv#$7sL09O4r%@qb_M zz2et2d?)PSD|vhJv?jf^coe^7;*5D_(i{GoNjc@GFgNZjMJ5=HK91L-#6s_k5ZsDS zGS%RQ&sF+5eNE*3{W~3);ByDsjH9O)4$S@$?yR>?gy?){V`EPI$n>{$7kZJt&E|jq z@9tl&>KhB0wjiX?fvux_ph<@^P`xU#l~@YcVmvoP|52 zFCDST=db-|m-UT`(xE24+%n&4gZ%FnLi&Yo)!)!<`8*?XqEn@~PlG4oI{hPQc|SBA-3UqQo@Ok7n} zIAZ21l@78Rn`X^sw|ukiJP&AnypS?sjm)BYgRrvd_2vm*-zj>cKd@`Ab&91Yp=>6{)F%4)7auKu@lUJhnvWozKNZb^uG+`E@Y3=U zeK~|@uUf1nf;jWRpXQgYuqA_|MTZQJmcB;TNR^GlS{T8}iC6rO{IH|tWqO{uY5h}C zK^05FmfvX7IMk$1hE*ehH{+tKyHIa1DdB;;rJvHi z@XysN8q8vy7k-&z&tLr~zqICPT-#vO+|kk)bI{UP%}!$rHS^6TDD1uXt~a|@W*~+c z8vo^wJW;Rw34f4ZJkG`2_D~Yj%WRNd2O^Mwn=s<$0*s{9@EYCPT5v)bA~e(n|~6M0EUxGtnrcN&$s(s zzN8S(XWAcol9+ za@NCPqQw`HsBTqo#8>DWj&U^~+CTP~&69^IHqX$ty#E|%_>m7|XO7~asM|V+|Xy_l(fh&fm#RNST>VcoN?=6S_DPi%0~BG=sQt4-78)-@|b)lahBHa~PL<9jHj zNE~dl9PG02qUPM@QPu+cEDu-Af8%z}zB%Ihfge*{9Wd$&G+)E(=&9+o!^CjO`cwNdjVRH+WU`h_MXAOitJp5x3ifW{$igPf9iBj$(b=HI#x==`-hy-E&gI#->XR(BW&pMdcoR19-nNcPkY4s2bR7uK27u z;T-wi{Jv$d3tg^Khr|3zu!D-f$3GV1rd-BjB{h8+psmB&uHFO}3e<>-KnIym}P_oSC zslstp61Dm&1NiV|^pEbaNt}ZX!rh1GA<@OoA~K`yhAgd{@foOROsg!`F}gM(u1!jB zP-&PeM7Vk8W1#d^)-p1e`o(13g|c~w?dj`;4_bZu^_E|g3d=E{cLES;rdxmDH283uG=7WUKG<2~ea{IxU4q0( zBCeM((XD0e;O571>R|^u&Ev*jpsQGwzvm-2(K$^ICifY)?_e`E(umG-isbY(H;sFS z_TV{-u;uIR9OWMt?$V=eCxZbQ9k$3lC>2^A@xz~@XvD&(_uWN31AO=Zpf(=jB!lHh zOT3|j8)NsuFr00(J`~5*Aa@-yCcZDeY#2MK^7+byjE?yuYo4B|14zoWZPTeh8BIOF zi#LZ9-0pPpQq1&2arSg`YF@vQoGhb26RLwnlb*1L_^M-Vlx>giHItHpV-y+pt6ZEK z556G7lZ4?GS?qbNp_S;OAM&IlDs9+mIL@;^vinA)D6z3H9OHAVWxzHP_n^luSJ#<< zbsIty2lS^g(Tp%sL>_Jx%DMrbLPR&IRuN*2au@Mv3b3wQaDyVnmOp4Ma3Q*l1@}l- z7!@6xqcC>X;&3#^WC@2>d~Pt-WCFI;DSS*he8-yHfN>hl!&k7gZRoJWX*}IU_<3Dv zFh%O=_d;$wPTu#$88_QzeaYlJH`gOD^~u}%0AtVi0{v!P<5awgzdH2uJ`V|wUL*2lawezA2~fq&{P;mfB?8T6HUC*4h6A&Uoa8O-j$RT~z$aZBVg6 zzF?cyl6N zdHw?sJ7Tp$XXHMr#>SS7hWS(q4Vv|F6FxR`qoAKa__u1W&%AQI4T^VKan^IyU>zfs zE|$R$NQPNwnbWKcmi{dLjG5%b9r@2i8f!K??SvY4H+*lPY@EblJRiC1P#E;CqroIW z@amJ2xy(A56v{9|GuaTpMMj+DK>H#%Xah4-!k=}#^ zneQH-ALI49-brtya+(0Rs?MoH;W4xa=7q~HKFb7Z1nBuy5&@vrkTKXDY=saRII;oP z3R%&P2^nF-NYearIVR*J3O2Ys934KH3%!qF8Ezacu`vg0S*Oab^yt!p+xLq-xy5gM z#Kw5jI=`XA!CkZ&zAqE&VEj1=NFmPhl*4MSO=PEas`~e2-T71-1sApc|fu*Q}= zsYFnC_DZcy+zSDb@&j)&>t^-n;oK7;%>Y=GI zf;q6^#lf=W>#ky4S#ll)lVVQT_DO*_|C(c%5cIB9nT$1w zdZdwu#x~{=-+@S!Al?*`YqRX_$W)w|mL<42l`iKk-%cwYqIN?eH8`i)kL=}d1?JZx ztLCs2KGwvGug#(X==ud4yo;s5T!B+uNNV9YMyc!;d~C+efEeaJa{IVw7aDzJFOkR6 zSlJt<<>?A3vyx@)YW!;#RD~3cJ<+yt$FWi*K*_8K6|i@y5t3Ja zJ+H|ads>I+vjj95MRGK=^x>=qv2joEMXBp_IFN4`AdHaye#ZCSN+T3ki zEEWhGJ-%>&Q^eAnKgqhuJba{|Jl+AxddOr{Cxi+(@50!IbHi4?hjyY5LQ=XVPTEpb zyqVjwx1@vOf~d3GC@cCi=V6PSGqd|Ua>`SZ|JP5mkUUL?=|EPi{@-nlH?JLkAw z*sMbLgtgvL+o_1?*wJfZjcXpC5>GR~M4yu?y`l7N54Pg1hB01ME2+8Z!14qfU-Yz@ zpP&@C_lf&Q^@(4j;1EbkPV$`KhCay2t@XoalE&DO(HG;)bGsV$(1$|8a365@r{WKw zNW$FkEp^Sm<|7b9uV3Ad{N#D~L@0goVuYqx6L^T_<{Zg#=0otZT7J0Sg93< zJ_mX2IquB#Bm6s#^rsweb>du#$y5q2icb}=oNpi;{UA7T{^iK)*yGw5d6=pq_?*D>mRC&iQRDaItw;A9 zUwyN}YMcO55)^&3H9%p>YklyFuHBgRqrZ5o{^}Fg-RyE2Q&BkPr4P7!;2dsBBY5kZ z6MOo=-HSke#!JD&S`O^!e_!8v^T8YV)+p1?{L!gB{K1puy1vT%sWe=-JBLXqC(&~o zh8QdS8g_rYT88wPo<6+$(H>5CKO8#&q^#c>*j4hprAvR9e{%Kyt8YGf`?u>?8Tz14 zS1k!Et{sV(!ehcu#U^0M9yMmukRS`=W<1D5*Xuj%0?f#3B#i1AuV%Dk0a#p(np`Z z@Ny<>{{ZDV5+@v)mOs>&&;9Vv>-)pHaOkS3YygE%;ePHnZ!h`bKx(H9HZuLnZ`piM z2ii=ClLN3rsu>=c{+jNjKd(=0rLpid^!u4*y(mWJPG6kjm0Yv8i=0jt@0q$c?3SO6 zo`T_+i0(Myt98b;JQvD(PJ8@c_^spR4R6xbATVp;gA^fWJoolt6Viy=aHkR(bL6>a z0*u#QIOR-CHs#1eI_@gp{LgMJH~1i?ZcMM{ufkCb2He+@V%l*Br$@ccN`(OGk)9u)8Cl^IS$70>cnNtJOD;^adIv1mfzOH@{j*A zpUGT+)Iu&-&YD8$81J|E-`Afpo?Sod(=~-f1KG?W4N<>A4H|trX(W)6k{Oa&+m(#9NV~FpO<-jgq5FpLo=R80h%`t-tc094&kfl2?<-(g>J|r?=r^r}OA> zmp&f(`pX~wSI3@L@|*kMoPV!t)up3lQ3afNHGkNJ?ukAA%&S+P!*d|=aQo0Nz5YfK zKR4s_UId|>uzYyqbjJt5=GTt(Ez-yS$U9G{Cqm(9+ajN> zgT~ide(a0*RMefm>R_qQXttNTKUJiWa#G(o>gibbxL(-&eO>l^>-4Yw{;}#f=Ndog zTpjgwLr5GKkp=Bm^VjU9%39U~*@|iCk3RCfSN<|`f4G7d?}tSDTy`AIwQL?;#$97+ ztSvnwvYK=4p}Io0?fv>@g@5oyeJpBc$rtZF^xS26hCWZ4#Yok->p2VeHu^YSPUGG2k^A|XtmgmW>+a9E=9)4OCk5TSW^(Rd;pI_JfySLre zQLOv*sbCN46V?6wuS}=FN|eBT_p(bFq*`MXpIA`Vg(EMp(umI{;a4t?=!xmyYV?&H2P7PMKv=d+vjRBWh(As6Lj0Qcn$#3?!%y6`&&<3aj!!;n$@xk0 z*`QFf2~yb7*ZgYBR84)J;s=KZ&x_vE!tWtII60`G5(@|IFyHPr=5zVG<@(X_<1hTc z_kGCwAo)o&!Uw+XL*A!{f;S*LxN;y5=0e-ZrK)pdNED2liw(!iVbw-%n7!XMpG8kA zGUJMmr0RBj5-MyJddQOpL{O*s7%s{`6u+WXrgQwlI?smCIg$&Q{AYgqCt0wKb7$_% zm%{TugWsEv_{Fa|uJO;}cZ_9uLpG0)>jq*Vhu`WPlbLjiH(IU~Fm-o{X+n|rIebs+ zBK*FBMohVN%r4@=_@qH>4)KXqe5CL#cK)Tu;+Dei@z-rsKEYOe;uO{W-~*^lGv{e} zg4af91r84J?WZul<4pXy&Q9bMAD7uEiayKu@j6WtFdw~+#;%<5b$dDfR;X#?4us;} z-~EhV6zs>~=Rof`?o~=VM~9%M_?8J+n!&AcCV)?AP=;fE71{~UeEA>#S{QucDki=r zzHybu$j{hvT>Nr&n2+r=zY;+&dlw*cHh$KbFJ$UN=-6jIG7AR2vDH_c$iN1FmhpRt z?{%2s!?BZglURd~-k|DP8~&9Flv)o?mLI$Jz3h>-Z8i{UeJRS<(K9vL#!-~$F*1Sp z9>4-|wb7EC2gB>kF9$2`EI#_O(HBeOdGZy+=Ze2BPH_+Mi?qgP47=j(>kB=mJ%oMS z9r<0iE@an9F`Z)KGra&4x%#2EIrCiSSMf=2pI?~4w>$UPbpC{gT;8zlrl=Bb2 zc!MuoiVfHWSDf^|NDlF(^ZW;&*`LSHX6X1EeyW$cIeN{P*pA<}=H;OUB#~>P2l%!Y z!u69#KlsSz*U2UJ{M*;+{q-Mwz4pdlJGFtZ-+TGiS1Ql<#B&y|xO2F8BP#-G95X!= zS3AtF&0v5*jT?Lk8~!j1%0_T}otooBko6is#Sgz&6@Aj7$ONp`$^7Ks*zOGN$=Vl+ z!3WfQyRB%BY(65Ff(S*v1=yWtyJ{I0gB$4W-~OP!g>&~BlI$ss{JeWJ0Y~lvE4La}LgwmJ{B^=-^LrxrR*K+!NY34Y z%M z<9FfUS32e(gAJbEtbl5ub8iasSIo+HYW6cI2(;PPCVrX9hj6>)HIID%gYPzH@6^%v zv^{*@-@5)2n!;y#NN$bBu|)+fn^0}89(_q=8AGE|lG!A3qm}-*G$sPd@g2 zSN`*ry_F8$fdaX8yu3>5_^=Mm3a>SxDq|(W496V3gthog+!l-+gI^0x3>K~U0B9_I z@g1v9#%%cbQY(J<)|7{e%NhR$c6@0R)3;{wt|Y5hT-qAn?23((Ie*Is_;P_4Gx3j1 z3^!RMCcZ=O#~*wM_}}BBm6H6+W|(D1K9`SA_)O&v{7zZehxLm7tBQH}eC`H%|3AL+ zwv$WC=ZSiwBbOHn*aasRMW->jDp-wcQfvqt$sDPv&GGOq`KuGkd^o;c>O`@?JJE_` zdU788%6;TNa;;()znFK!uf=i(n|UXb!}$}T5F5S&N6!Fu`(`Au^2Zij=Z|V?HNBZ# z{Jg_J&>P3Qlh3>HhAVHIXs5)?*?J{TB9TPPY-Gp32p`^F3!lv=`TY2MT!#Dn_EX5YDwXjm4@%zo zyA%j0dpPZ8aUi>rp!dHqyG~d+l6Q>+x9T-*oC&4dQmFv;TYcH~Spj>DJ0esIt zzWNO+#A`{>E5i(Xk;Z0`sjgNLsQM^ePYfMu`tZTDpWqGSgiZetwnduxeT7P8ynTsi zel~9SC}kpn5&t6m<~Z?*-@e9Xw_7%@1cxGiwOUv!*ZAgV{^YpI;WyoHSsAi`#H6j9 zt$aSe;%xY&tQ7Q@%CCLw|GfH*c7B0V=63;TLHuy07aBFXpK@e@kz6>#YSGcv3{ghz zzVXF3=^Q@()T&z5KP7&Q>i!XZTNu&$kfkNQnO!8-_aDL+?R~C8sjF4t! z6x@c9tB)3F@nK85F<=By?G&Gi4}X@LiXJ2XmM&tvDMDVeZJcH{s6W+y1bgFn`9~ZXTFjEjziZ(}(o3vn z`%X>ZGshK%2W48h%Jnqix>9=bSGbGC-{Va~Hp{r_k-l2)R5e=9GXJFTue#GuTPtHLO_kpoE;{;<|N8ou=yCIP zN<{A~WY5T@7mLhsKlK)EER*b9LF?v{dT-&+=Hpvd_~PVB{13->Hs|DD_AU++MKR^? zVbs#s_)ceV^X6!`7vaB08NBAP@4xarcZzYI{jMLv_MN@||G4r!x9+?3(b^}k&qm0m zIJo%3!Mf<)XVROminu6NX7e>E)#+h2O$}L)eu$)~=3}XaGUgyZ_V8KMnK#)7zjPHp z_Ts=j%wK(OAJ%4maf|Pa51wLAKZDR6(r+-k<@J}An;-pDHxE9y+0Rj)g#6$aUwirP zX!kYxQ0mVy-QN2yL-92;)+QS*i|kvrv|fAPK+-?Jmin%y1ZS6N0LGw(w2!|y(vgZ*y#F}>^b>-1db)Nj=f;xC|Ft8@YI zMIq1nn~#0+?)d1{!hey9e+8a5izk@{Oplez2GHqrSUlSN&@^wrvVyP!giSlmuO%9r zW`jOGD83?gYTjdlCEZT%G_f_YKb`yp!)N?Qcc8y6-5c~LFW-9YpKRX@b^v?Vs?#fW z*DlT`JnOH$|Jl3C_q|fP=kqnu&(d`7^YSrkS5(VraZMu&zIv_2t3qXyto_-1d=_pk z^vbJk!~$p|XLVszAW2V_Pv+Y=r{jaEb~--#@C&o@YkYyT{(x!uak=@SdyXFer}KN5 zFTlMk$hvZOMZ0@2f4q3@#*LTjFKs?eK|fUioJEMtmjUO-<02&yOE|p|V-%X=6Xv@X(oCxjr1jf2;npdQ$tQM<2QW z=azp~pZ|S`@O0`r&8O4l#eLPLy7n@?{`u15<>(>(HP?sj)ax^gp0C0^Q@=iWK*f2c zD)fL#sXs~F-K&MVM;neWi6M8@tERwteOT%%cv{JMqtu2a&-F?ld~arKwAH@y=LKKw z#h-2EA?L&VSjQ(K-_mq$Dl8u&b4}hKRXUGo8jtD{dqj15STlZy(C<7sI)2CQ_~fnE k9@EG3{4s5ok?kb>|H;3ubeVRY^#A|>07*qoM6N<$f~C=$asU7T literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/backup_config.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/backup_config.json new file mode 100644 index 00000000000..78f40ae7c49 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/backup_config.json @@ -0,0 +1,3 @@ +{ + "allowToBackupRestore": true +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/main_pages.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/main_pages.json new file mode 100644 index 00000000000..c0dc01023c8 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/res/default/resources/base/profile/main_pages.json @@ -0,0 +1,18 @@ +{ + "src": [ + "pages/AntiAlias", + "pages/CircleExample", + "pages/Fill", + "pages/Index", + "pages/Mesh", + "pages/Shape", + "pages/ShapeExample", + "pages/Stroke", + "pages/StrokeLineJoin", + "pages/StrokeMiterLimit", + "pages/StrokeOpacity", + "pages/ViewPort1", + "pages/ViewPort2", + "pages/ViewPort3" + ] +} diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/loader-router-map.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/loader-router-map.json new file mode 100644 index 00000000000..0ec611b0f7a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/loader-router-map.json @@ -0,0 +1 @@ +{"routerMap":[]} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/temp-router-map.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/temp-router-map.json new file mode 100644 index 00000000000..0ec611b0f7a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/router_map/default/temp-router-map.json @@ -0,0 +1 @@ +{"routerMap":[]} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/share_config/default/temp-share-config.json b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/share_config/default/temp-share-config.json new file mode 100644 index 00000000000..2a514991fa3 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/share_config/default/temp-share-config.json @@ -0,0 +1 @@ +{"crossAppSharedConfig":[]} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/source_map/default/sourceMaps.map b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/source_map/default/sourceMaps.map new file mode 100644 index 00000000000..4349b9b14a6 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/intermediates/source_map/default/sourceMaps.map @@ -0,0 +1,178 @@ +{ + "entry|entry|1.0.0|src/main/ets/entryability/EntryAbility.ts": { + "version": 3, + "file": "EntryAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entryability/EntryAbility.ets" + ], + "names": [], + "mappings": "YAeS,eAAe;OAAE,qBAAqB;OAAE,SAAS;YAAE,IAAI;OACvD,KAAK;YACL,MAAM;AAEf,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,GAAG,IAAI;QAClE,IAAI;YACF,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;SACvG;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,4CAA4C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;SACnG;QACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,IAAI,IAAI;QACf,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI;QACxD,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,CAAC,CAAC;QAE3E,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE;YAC7C,IAAI,GAAG,CAAC,IAAI,EAAE;gBACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,+CAA+C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBACrG,OAAO;aACR;YACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,mCAAmC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,IAAI,IAAI;QAC1B,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,oCAAoC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/entrybackupability/EntryBackupAbility.ts": { + "version": 3, + "file": "EntryBackupAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entrybackupability/EntryBackupAbility.ets" + ], + "names": [], + "mappings": "OAeS,KAAK;OACL,sBAAsB;cAAE,aAAa,IAAb,aAAa;AAE9C,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,sBAAsB;IACpE,KAAK,CAAC,QAAQ;QACZ,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAC7C,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,aAAa;QAC1C,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;QACxF,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;CACF", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/AntiAlias.ts": { + "version": 3, + "file": "AntiAlias.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/AntiAlias.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,UAAU;IAFjB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,IAAI,QAAC,uBAAuB;YAA5B,IAAI,CAA0B,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC;;QAAhD,IAAI;;YACJ,yBAAyB;YACzB,OAAO;YACP,MAAM;YAFN,yBAAyB;YACzB,OAAO;YACP,MAAM,CACH,KAAK,CAAC,GAAG;YAHZ,yBAAyB;YACzB,OAAO;YACP,MAAM,CAEH,MAAM,CAAC,GAAG;YAJb,yBAAyB;YACzB,OAAO;YACP,MAAM,CAGH,WAAW,CAAC,CAAC;YALhB,yBAAyB;YACzB,OAAO;YACP,MAAM,CAIH,WAAW,CAAC,CAAC;YANhB,yBAAyB;YACzB,OAAO;YACP,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,KAAK;;;YACrB,uBAAuB;YACvB,IAAI,QAAC,wBAAwB;YAD7B,uBAAuB;YACvB,IAAI,CAA2B,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC;;QADjD,uBAAuB;QACvB,IAAI;;YACJ,0BAA0B;YAC1B,OAAO;YACP,MAAM;YAFN,0BAA0B;YAC1B,OAAO;YACP,MAAM,CACH,KAAK,CAAC,GAAG;YAHZ,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAEH,MAAM,CAAC,GAAG;YAJb,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAGH,WAAW,CAAC,CAAC;YALhB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAIH,WAAW,CAAC,CAAC;YANhB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,KAAK;YAPrB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAMH,SAAS,CAAC,KAAK;;QApBpB,MAAM;KAuBP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/CircleExample.ts": { + "version": 3, + "file": "CircleExample.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/CircleExample.ets" + ], + "names": [], + "mappings": ";;;;;MAmBO,aAAa;IAFpB;;;;;;;KAjBA;;;;;;;;;;;IAoBE;;YACE,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAoBJ,KAAK,CAAC,MAAM;;;YAnBZ,oCAAoC;YACpC,cAAc;YACd,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;;;YAClC,uBAAuB;YACvB,MAAM;YADN,uBAAuB;YACvB,MAAM,CACH,KAAK,CAAC,GAAG;YAFZ,uBAAuB;YACvB,MAAM,CAEH,MAAM,CAAC,GAAG;YAHb,uBAAuB;YACvB,MAAM,CAGH,WAAW,CAAC,CAAC;YAJhB,uBAAuB;YACvB,MAAM,CAIH,WAAW,CAAC,CAAC;YALhB,uBAAuB;YACvB,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,GAAG;YANnB,uBAAuB;YACvB,MAAM,CAMH,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;;YACzB,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM;YAHN,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CACH,KAAK,CAAC,GAAG;YAJZ,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CAEH,MAAM,CAAC,GAAG;YALb,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CAGH,eAAe,CAAC,KAAK,CAAC,IAAI;;QAlB/B,MAAM;KAqBP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Fill.ts": { + "version": 3, + "file": "Fill.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Fill.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,IAAI;IAFX;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,eAAe;YACf,IAAI;YADJ,eAAe;YACf,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,eAAe;YACf,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,eAAe;YACf,IAAI,CAGD,QAAQ,CAAC,0BAA0B;YAJtC,eAAe;YACf,IAAI,CAID,IAAI,CAAC,SAAS;YALjB,eAAe;YACf,IAAI,CAKD,WAAW,CAAC,CAAC;;QAPlB,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Index.ts": { + "version": 3, + "file": "Index.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Index.ets" + ], + "names": [], + "mappings": ";;;;IAsBE,GAAG,GAAC,GAAG,EAAE;;AAtBX;;;;;;;;;;;;;GAaG;AAEH,UAAU,GAAG;IACX,IAAI,EAAC,MAAM,CAAC;IACZ,IAAI,EAAC,MAAM,CAAA;CACZ;MAGM,KAAK;IAFZ;;;;;mBAGY;YACR;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,eAAe;gBACpB,IAAI,EAAC,qBAAqB;aAC3B;YACD;gBACE,IAAI,EAAC,MAAM;gBACX,IAAI,EAAC,YAAY;aAClB;YACD;gBACE,IAAI,EAAC,MAAM;gBACX,IAAI,EAAC,YAAY;aAClB;YACD;gBACE,IAAI,EAAC,OAAO;gBACZ,IAAI,EAAC,aAAa;aACnB;YACD;gBACE,IAAI,EAAC,cAAc;gBACnB,IAAI,EAAC,oBAAoB;aAC1B;YACD;gBACE,IAAI,EAAC,QAAQ;gBACb,IAAI,EAAC,cAAc;aACpB;YACD;gBACE,IAAI,EAAC,gBAAgB;gBACrB,IAAI,EAAC,sBAAsB;aAC5B;YACD;gBACE,IAAI,EAAC,kBAAkB;gBACvB,IAAI,EAAC,wBAAwB;aAC9B;YACD;gBACE,IAAI,EAAC,eAAe;gBACpB,IAAI,EAAC,qBAAqB;aAC3B;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;SACF;;;KAzDF;;;;;;;;;;;;;;IAIC,aAAI,GAAG,EAAE,CAqDR;IACD;;YACE,MAAM;;;YACJ,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAML,KAAK,CAAC,MAAM;;;YALX,OAAO;;;;oBACL,MAAM,iBAAC,IAAI,CAAC,IAAI;oBAAhB,MAAM,CACH,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;;gBAD5E,MAAM;;+CADA,IAAI,CAAC,GAAG,0BAGd,CAAC,IAAI,EAAC,GAAG,EAAC,EAAE,CAAA,IAAI,CAAC,IAAI;;QAHvB,OAAO;QADT,MAAM;QADR,MAAM;KASP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Mesh.ts": { + "version": 3, + "file": "Mesh.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Mesh.ets" + ], + "names": [], + "mappings": ";;;;IAmEU,gBAAgB,GAAE,gBAAgB;IACnC,SAAS,GAAE,OAAO;IAClB,QAAQ,GAAE,KAAK,CAAC,QAAQ,GAAG,SAAS;IACpC,UAAU,GAAE,MAAM;IAClB,WAAW,GAAE,MAAM;IACnB,SAAS,GAAE,KAAK,CAAC,MAAM,CAAC;;OAxDxB,EAAA,SAAS,IAAT,SAAS,EAAA;OAAE,EAAA,cAAc,IAAd,cAAc,EAAA;OAAE,EAAA,UAAU,IAAV,UAAU,EAAA;YACrC,KAAK;OACL,OAAO;AAEhB,IAAI,SAAS,EAAE,eAAe,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC/D,IAAI,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAErC,MAAM,iBAAkB,SAAQ,UAAU;IACxC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAE5G,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI;QAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,wBAAwB;QAC3D,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAClG,CAAC,CAAC,KAAK;QACP,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;CACF;AAED,MAAM,UAAU,GAAG,IAAI,iBAAiB,EAAE,CAAC;AAC3C,UAAU,CAAC,KAAK,GAAG;IACjB,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,MAAM,gBAAiB,SAAQ,cAAc;IAC3C,OAAO,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;IAE1C,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI;QAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;QAEzC,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QACrD,IAAI,cAAc,KAAK,IAAI,EAAE;YAC3B,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;SACxC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF;MAIM,IAAI;IAFX;;;;;gCAG+C,IAAI,gBAAgB,EAAE;wDACvC,KAAK;uDACa,SAAS;yDAC3B,GAAG;0DACF,CAAC;wDACI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;;;KAV9G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKC,OAAO,mBAAmB,gBAAgB,CAA0B;IACpE,8CAAkB,OAAO,EAAS;QAA3B,SAAS;;;QAAT,SAAS,WAAE,OAAO;;;IACzB,6CAAiB,KAAK,CAAC,QAAQ,GAAG,SAAS,EAAa;QAAjD,QAAQ;;;QAAR,QAAQ,WAAE,KAAK,CAAC,QAAQ,GAAG,SAAS;;;IAC3C,+CAAmB,MAAM,EAAO;QAAzB,UAAU;;;QAAV,UAAU,WAAE,MAAM;;;IACzB,gDAAoB,MAAM,EAAK;QAAxB,WAAW;;;QAAX,WAAW,WAAE,MAAM;;;IAC1B,8CAAkB,KAAK,CAAC,MAAM,CAAC,EAA+E;QAAvG,SAAS;;;QAAT,SAAS,WAAE,KAAK,CAAC,MAAM,CAAC;;;IAE/B,aAAa,IAAI,IAAI;QACnB,gDAAgD;QAChD,IAAI,GAAG,EAAE,WAAW,GAAG,IAAI,WAAW,CAAC,4BAA4B,CAAC,CAAC;QACrE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClD,CAAC;IAED;;YACE,MAAM;;;YACJ,KAAK,QAAC,IAAI,CAAC,QAAQ;YAAnB,KAAK,CACF,eAAe,CAAC,KAAK,CAAC,GAAG;YAD5B,KAAK,CAEF,KAAK,CAAC,GAAG;YAFZ,KAAK,CAGF,MAAM,CAAC,GAAG;YAHb,KAAK,CAIF,OAAO,CAAC,GAAG,EAAE;gBACZ,gDAAgD;gBAChD,IAAI,GAAG,EAAE,WAAW,GAAG,IAAI,WAAW,CAAC,4BAA4B,CAAC,CAAC;gBACrE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAChD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAChC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YACxB,CAAC;;;YAEH,aAAa,QAAC,IAAI,CAAC,gBAAgB;YAAnC,aAAa,CACV,KAAK,CAAC,GAAG;YADZ,aAAa,CAEV,MAAM,CAAC,GAAG;YAFb,aAAa,CAGV,eAAe,CAAC,KAAK,CAAC,IAAI;YAH7B,aAAa,CAIV,OAAO,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YACjG,CAAC;;;YACH,MAAM,iBAAC,aAAa;YAApB,MAAM,CACH,MAAM,CAAC,CAAC;YADX,MAAM,CAEH,OAAO,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC/F,CAAC;;QAJH,MAAM;;YAKN,MAAM,iBAAC,YAAY;YAAnB,MAAM,CACH,MAAM,CAAC,CAAC;YADX,MAAM,CAEH,OAAO,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAA;YAClC,CAAC;;QAJH,MAAM;;;YAMN,IAAI,IAAI,CAAC,SAAS,EAAE;;;wBAClB,KAAK,QAAC,IAAI,CAAC,QAAQ;wBAAnB,KAAK,CAGJ,WAAW,CAAC,GAAG;wBAHhB,KAAK,CAIJ,eAAe,CAAC,KAAK,CAAC,IAAI;wBAJ3B,KAAK,CAKJ,KAAK,CAAC,IAAI,CAAC,UAAU;wBALtB,KAAK,CAMJ,MAAM,CAAC,GAAG;wBANX,KAAK,CAOJ,IAAI,6BAAC,IAAI,CAAC,SAAS,GAAE,CAAC,EAAE,CAAC;wBAP1B,KAAK,CAQJ,IAAI,CAAC,QAAQ;wBARd,KAAK,CASJ,MAAM,CAAC,QAAQ;wBAThB,KAAK,CAUJ,WAAW,CAAC,IAAI,CAAC,WAAW;wBAV7B,KAAK,CAWJ,cAAc,CAAC,aAAa,CAAC,KAAK;wBAXnC,KAAK,CAYJ,gBAAgB,CAAC,CAAC;;;wBAXjB,IAAI;wBAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;wBAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;wBAA3B,IAAI,CAAyB,QAAQ,CAAC,wBAAwB;;oBADhE,KAAK;;wBAcL,KAAK,QAAC,IAAI,CAAC,QAAQ;wBAAnB,KAAK,CAGJ,WAAW,CAAC,GAAG;wBAHhB,KAAK,CAIJ,eAAe,CAAC,KAAK,CAAC,IAAI;wBAJ3B,KAAK,CAKJ,KAAK,CAAC,IAAI,CAAC,UAAU;wBALtB,KAAK,CAMJ,MAAM,CAAC,GAAG;wBANX,KAAK,CAOJ,IAAI,CAAC,QAAQ;wBAPd,KAAK,CAQJ,MAAM,CAAC,QAAQ;wBARhB,KAAK,CASJ,WAAW,CAAC,IAAI,CAAC,WAAW;wBAT7B,KAAK,CAUJ,cAAc,CAAC,aAAa,CAAC,KAAK;wBAVnC,KAAK,CAWJ,gBAAgB,CAAC,CAAC;wBAXnB,KAAK,CAYJ,WAAW,CAAC,GAAG,EAAE;yBACjB;;;wBAZC,IAAI;wBAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;wBAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;wBAA3B,IAAI,CAAyB,QAAQ,CAAC,wBAAwB;;oBADhE,KAAK;;wBAeL,iCAAiC;wBACjC,KAAK;wBADL,iCAAiC;wBACjC,KAAK,CAGJ,WAAW,CAAC,GAAG;wBAJhB,iCAAiC;wBACjC,KAAK,CAIJ,eAAe,CAAC,KAAK,CAAC,IAAI;wBAL3B,iCAAiC;wBACjC,KAAK,CAKJ,KAAK,CAAC,IAAI,CAAC,UAAU;wBANtB,iCAAiC;wBACjC,KAAK,CAMJ,MAAM,CAAC,GAAG;wBAPX,iCAAiC;wBACjC,KAAK,CAOJ,IAAI,6BAAC,IAAI,CAAC,SAAS,GAAE,CAAC,EAAE,CAAC;wBAR1B,iCAAiC;wBACjC,KAAK,CAQJ,IAAI,CAAC,QAAQ;wBATd,iCAAiC;wBACjC,KAAK,CASJ,MAAM,CAAC,QAAQ;wBAVhB,iCAAiC;wBACjC,KAAK,CAUJ,WAAW,CAAC,IAAI,CAAC,WAAW;wBAX7B,iCAAiC;wBACjC,KAAK,CAWJ,cAAc,CAAC,aAAa,CAAC,KAAK;wBAZnC,iCAAiC;wBACjC,KAAK,CAYJ,gBAAgB,CAAC,CAAC;wBAbnB,iCAAiC;wBACjC,KAAK,CAaJ,OAAO,CAAC,GAAG,EAAE;4BACZ,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;wBAC5B,CAAC;;;wBAdC,IAAI;wBAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;wBAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;wBAA3B,IAAI,CAAyB,QAAQ,CAAC,wBAAwB;;oBAFhE,iCAAiC;oBACjC,KAAK;;aAgBN;;;;aAAA;;;QA/EH,MAAM;KAiFP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Shape.ts": { + "version": 3, + "file": "Shape.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Shape.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,MAAM;IAFb;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,IAAI,QAAC,0BAA0B;;QAA/B,IAAI;;YACJ,oBAAoB;YACpB,KAAK;;;YACH,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;YAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;;QAF7B,oBAAoB;QACpB,KAAK;;YAGL,kBAAkB;YAClB,oBAAoB;YACpB,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;;QARpC,MAAM;KAWP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ShapeExample.ts": { + "version": 3, + "file": "ShapeExample.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ShapeExample.ets" + ], + "names": [], + "mappings": ";;;;;MAkBO,YAAY;IAFnB;;;;;;;KAhBA;;;;;;;;;;;IAmBE;;YACE,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAUJ,KAAK,CAAC,MAAM;YAVd,MAAM,CAUU,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;;;YAThC,KAAK;YAAL,KAAK,CAGJ,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAHpD,KAAK,CAIJ,IAAI,CAAC,QAAQ;YAJd,KAAK,CAKJ,MAAM,CAAC,KAAK,CAAC,GAAG;YALjB,KAAK,CAMJ,WAAW,CAAC,CAAC;YANd,KAAK,CAOJ,cAAc,CAAC,aAAa,CAAC,KAAK;YAPnC,KAAK,CAQJ,gBAAgB,CAAC,CAAC;;;YAPjB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;YAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;YAA3B,IAAI,CAAyB,QAAQ,CAAC,wBAAwB;;QADhE,KAAK;QADP,MAAM;KAWP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Stroke.ts": { + "version": 3, + "file": "Stroke.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Stroke.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,MAAM;IAFb;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,iBAAiB;YACjB,IAAI;YADJ,iBAAiB;YACjB,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,iBAAiB;YACjB,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,iBAAiB;YACjB,IAAI,CAGD,WAAW,CAAC,CAAC;YAJhB,iBAAiB;YACjB,IAAI,CAID,QAAQ,CAAC,0BAA0B;YALtC,iBAAiB;YACjB,IAAI,CAKD,MAAM,CAAC,KAAK,CAAC,GAAG;;QAPrB,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/StrokeLineJoin.ts": { + "version": 3, + "file": "StrokeLineJoin.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/StrokeLineJoin.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,eAAe;IAFtB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,2BAA2B;YAC3B,QAAQ;YADR,2BAA2B;YAC3B,QAAQ,CACL,KAAK,CAAC,GAAG;YAFZ,2BAA2B;YAC3B,QAAQ,CAEL,MAAM,CAAC,GAAG;YAHb,2BAA2B;YAC3B,QAAQ,CAGL,WAAW,CAAC,CAAC;YAJhB,2BAA2B;YAC3B,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YALnB,2BAA2B;YAC3B,QAAQ,CAKL,WAAW,CAAC,CAAC;YANhB,2BAA2B;YAC3B,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAPxC,2BAA2B;YAC3B,QAAQ,CAQL,cAAc,CAAC,aAAa,CAAC,KAAK;;QAVvC,MAAM;KAaP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/StrokeMiterLimit.ts": { + "version": 3, + "file": "StrokeMiterLimit.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/StrokeMiterLimit.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,iBAAiB;IAFxB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,GAAG;;;YACD,6BAA6B;YAC7B,QAAQ;YADR,6BAA6B;YAC7B,QAAQ,CACL,KAAK,CAAC,GAAG;YAFZ,6BAA6B;YAC7B,QAAQ,CAEL,MAAM,CAAC,GAAG;YAHb,6BAA6B;YAC7B,QAAQ,CAGL,WAAW,CAAC,CAAC;YAJhB,6BAA6B;YAC7B,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YALnB,6BAA6B;YAC7B,QAAQ,CAKL,WAAW,CAAC,EAAE;YANjB,6BAA6B;YAC7B,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAP1C,6BAA6B;YAC7B,QAAQ,CAQL,cAAc,CAAC,aAAa,CAAC,KAAK;YATrC,6BAA6B;YAC7B,QAAQ,CAUL,gBAAgB,CAAC,CAAC,GAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;;;YAClC,QAAQ;YAAR,QAAQ,CACL,KAAK,CAAC,GAAG;YADZ,QAAQ,CAEL,MAAM,CAAC,GAAG;YAFb,QAAQ,CAGL,WAAW,CAAC,CAAC;YAHhB,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YAJnB,QAAQ,CAKL,WAAW,CAAC,EAAE;YALjB,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAN1C,QAAQ,CAOL,cAAc,CAAC,aAAa,CAAC,KAAK;YAPrC,QAAQ,CAQL,gBAAgB,CAAC,IAAI;;QArB1B,GAAG;KAwBJ", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/StrokeOpacity.ts": { + "version": 3, + "file": "StrokeOpacity.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/StrokeOpacity.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,cAAc;IAFrB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,yBAAyB;YACzB,IAAI;YADJ,yBAAyB;YACzB,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,yBAAyB;YACzB,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,yBAAyB;YACzB,IAAI,CAGD,WAAW,CAAC,CAAC;YAJhB,yBAAyB;YACzB,IAAI,CAID,QAAQ,CAAC,0BAA0B;YALtC,yBAAyB;YACzB,IAAI,CAKD,MAAM,CAAC,KAAK,CAAC,GAAG;YANnB,yBAAyB;YACzB,IAAI,CAMD,WAAW,CAAC,EAAE;YAPjB,yBAAyB;YACzB,IAAI,CAOD,aAAa,CAAC,GAAG;;QATtB,MAAM;KAYP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ViewPort1.ts": { + "version": 3, + "file": "ViewPort1.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ViewPort1.ets" + ], + "names": [], + "mappings": ";;;;IAiCE,IAAI,GAAE,GAAG;IACT,KAAK,GAAE,MAAM;;AAlCf;;;;;;;;;;;;;GAaG;AAEH,wBAAwB;AACxB,MAAM,GAAG;IACP,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM;IACV,MAAM,CAAC,CAAC,EAAC,MAAM,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,CAAC,EAAC,MAAM,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,KAAK,EAAC,MAAM,GAAG,GAAG,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAC,MAAM,GAAG,GAAG,CAAC;CAC5B;MAIM,SAAS;IAFhB;;;;;oBAGc,IAAI,GAAG,EAAE;qBACL,IAAI,MAAM,EAAE;;;KAN7B;;;;;;;;;;;;;;;;;IAKC,cAAM,GAAG,CAAa;IACtB,eAAO,MAAM,CAAgB;IAE7B;;YACE,MAAM;;;YACJ,cAAc;YACd,IAAI,QAAC,sBAAsB;;QAD3B,cAAc;QACd,IAAI;;YACJ,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAAhC,MAAM,CAA4B,IAAI,CAAC,SAAS;;;YAEhD,GAAG,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;;YACf,MAAM;;;YACJ,gDAAgD;YAChD,6CAA6C;YAC7C,4BAA4B;YAC5B,IAAI,QAAC,iBAAiB;;QAHtB,gDAAgD;QAChD,6CAA6C;QAC7C,4BAA4B;QAC5B,IAAI;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAAhC,MAAM,CAA4B,IAAI,CAAC,SAAS;;QAFlD,KAAK;QALP,MAAM;;YAeN,MAAM;;;YACJ,iDAAiD;YACjD,6CAA6C;YAC7C,4BAA4B;YAC5B,IAAI,QAAC,eAAe;;QAHpB,iDAAiD;QACjD,6CAA6C;QAC7C,4BAA4B;QAC5B,IAAI;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,KAAK;YAJpB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAC;YAA9B,MAAM,CAA0B,IAAI,CAAC,SAAS;;QAFhD,KAAK;QALP,MAAM;QAhBR,GAAG;QALL,MAAM;KAqCP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ViewPort2.ts": { + "version": 3, + "file": "ViewPort2.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ViewPort2.ets" + ], + "names": [], + "mappings": ";;;;IA0BE,IAAI,GAAE,MAAM;;AA1Bd;;;;;;;;;;;;;GAaG;AAEH,wBAAwB;AACxB,MAAM,MAAM;IACV,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC7B;MAIM,SAAS;IAFhB;;;;;oBAGiB,IAAI,MAAM,EAAE;;;KAL5B;;;;;;;;;;;;;;IAKC,cAAM,MAAM,CAAgB;IAE5B;;YACE,MAAM;;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAAlC,MAAM,CAA8B,IAAI,CAAC,SAAS;;QAFpD,KAAK;QADP,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ViewPort3.ts": { + "version": 3, + "file": "ViewPort3.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ViewPort3.ets" + ], + "names": [], + "mappings": ";;;;IA0BE,IAAI,GAAE,QAAQ;;AA1BhB;;;;;;;;;;;;;GAaG;AAEH,0BAA0B;AAC1B,MAAM,QAAQ;IACZ,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IACxB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IACxB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC7B;MAIM,SAAS;IAFhB;;;;;oBAGmB,IAAI,QAAQ,EAAE;;;KALhC;;;;;;;;;;;;;;IAKC,cAAM,QAAQ,CAAkB;IAEhC;;YACE,MAAM;;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAAlC,MAAM,CAA8B,IAAI,CAAC,SAAS;;QAFpD,KAAK;QADP,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/entry-default-unsigned.hap b/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/entry-default-unsigned.hap new file mode 100644 index 0000000000000000000000000000000000000000..92b1cd4b2f1e89eeccadad5f21548bc7e2bc8205 GIT binary patch literal 222535 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/mapping/sourceMaps.map b/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/mapping/sourceMaps.map new file mode 100644 index 00000000000..4349b9b14a6 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/mapping/sourceMaps.map @@ -0,0 +1,178 @@ +{ + "entry|entry|1.0.0|src/main/ets/entryability/EntryAbility.ts": { + "version": 3, + "file": "EntryAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entryability/EntryAbility.ets" + ], + "names": [], + "mappings": "YAeS,eAAe;OAAE,qBAAqB;OAAE,SAAS;YAAE,IAAI;OACvD,KAAK;YACL,MAAM;AAEf,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,GAAG,IAAI;QAClE,IAAI;YACF,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;SACvG;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,4CAA4C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;SACnG;QACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,IAAI,IAAI;QACf,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI;QACxD,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,CAAC,CAAC;QAE3E,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE;YAC7C,IAAI,GAAG,CAAC,IAAI,EAAE;gBACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,+CAA+C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBACrG,OAAO;aACR;YACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,mCAAmC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,IAAI,IAAI;QAC1B,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,oCAAoC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/entrybackupability/EntryBackupAbility.ts": { + "version": 3, + "file": "EntryBackupAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entrybackupability/EntryBackupAbility.ets" + ], + "names": [], + "mappings": "OAeS,KAAK;OACL,sBAAsB;cAAE,aAAa,IAAb,aAAa;AAE9C,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,sBAAsB;IACpE,KAAK,CAAC,QAAQ;QACZ,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAC7C,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,aAAa;QAC1C,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;QACxF,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;CACF", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/AntiAlias.ts": { + "version": 3, + "file": "AntiAlias.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/AntiAlias.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,UAAU;IAFjB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,IAAI,QAAC,uBAAuB;YAA5B,IAAI,CAA0B,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC;;QAAhD,IAAI;;YACJ,yBAAyB;YACzB,OAAO;YACP,MAAM;YAFN,yBAAyB;YACzB,OAAO;YACP,MAAM,CACH,KAAK,CAAC,GAAG;YAHZ,yBAAyB;YACzB,OAAO;YACP,MAAM,CAEH,MAAM,CAAC,GAAG;YAJb,yBAAyB;YACzB,OAAO;YACP,MAAM,CAGH,WAAW,CAAC,CAAC;YALhB,yBAAyB;YACzB,OAAO;YACP,MAAM,CAIH,WAAW,CAAC,CAAC;YANhB,yBAAyB;YACzB,OAAO;YACP,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,KAAK;;;YACrB,uBAAuB;YACvB,IAAI,QAAC,wBAAwB;YAD7B,uBAAuB;YACvB,IAAI,CAA2B,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,EAAC;;QADjD,uBAAuB;QACvB,IAAI;;YACJ,0BAA0B;YAC1B,OAAO;YACP,MAAM;YAFN,0BAA0B;YAC1B,OAAO;YACP,MAAM,CACH,KAAK,CAAC,GAAG;YAHZ,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAEH,MAAM,CAAC,GAAG;YAJb,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAGH,WAAW,CAAC,CAAC;YALhB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAIH,WAAW,CAAC,CAAC;YANhB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,KAAK;YAPrB,0BAA0B;YAC1B,OAAO;YACP,MAAM,CAMH,SAAS,CAAC,KAAK;;QApBpB,MAAM;KAuBP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/CircleExample.ts": { + "version": 3, + "file": "CircleExample.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/CircleExample.ets" + ], + "names": [], + "mappings": ";;;;;MAmBO,aAAa;IAFpB;;;;;;;KAjBA;;;;;;;;;;;IAoBE;;YACE,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAoBJ,KAAK,CAAC,MAAM;;;YAnBZ,oCAAoC;YACpC,cAAc;YACd,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;;;YAClC,uBAAuB;YACvB,MAAM;YADN,uBAAuB;YACvB,MAAM,CACH,KAAK,CAAC,GAAG;YAFZ,uBAAuB;YACvB,MAAM,CAEH,MAAM,CAAC,GAAG;YAHb,uBAAuB;YACvB,MAAM,CAGH,WAAW,CAAC,CAAC;YAJhB,uBAAuB;YACvB,MAAM,CAIH,WAAW,CAAC,CAAC;YALhB,uBAAuB;YACvB,MAAM,CAKH,MAAM,CAAC,KAAK,CAAC,GAAG;YANnB,uBAAuB;YACvB,MAAM,CAMH,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;;YACzB,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM;YAHN,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CACH,KAAK,CAAC,GAAG;YAJZ,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CAEH,MAAM,CAAC,GAAG;YALb,kCAAkC;YAClC,oCAAoC;YACpC,cAAc;YACd,MAAM,CAGH,eAAe,CAAC,KAAK,CAAC,IAAI;;QAlB/B,MAAM;KAqBP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Fill.ts": { + "version": 3, + "file": "Fill.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Fill.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,IAAI;IAFX;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,eAAe;YACf,IAAI;YADJ,eAAe;YACf,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,eAAe;YACf,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,eAAe;YACf,IAAI,CAGD,QAAQ,CAAC,0BAA0B;YAJtC,eAAe;YACf,IAAI,CAID,IAAI,CAAC,SAAS;YALjB,eAAe;YACf,IAAI,CAKD,WAAW,CAAC,CAAC;;QAPlB,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Index.ts": { + "version": 3, + "file": "Index.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Index.ets" + ], + "names": [], + "mappings": ";;;;IAsBE,GAAG,GAAC,GAAG,EAAE;;AAtBX;;;;;;;;;;;;;GAaG;AAEH,UAAU,GAAG;IACX,IAAI,EAAC,MAAM,CAAC;IACZ,IAAI,EAAC,MAAM,CAAA;CACZ;MAGM,KAAK;IAFZ;;;;;mBAGY;YACR;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,eAAe;gBACpB,IAAI,EAAC,qBAAqB;aAC3B;YACD;gBACE,IAAI,EAAC,MAAM;gBACX,IAAI,EAAC,YAAY;aAClB;YACD;gBACE,IAAI,EAAC,MAAM;gBACX,IAAI,EAAC,YAAY;aAClB;YACD;gBACE,IAAI,EAAC,OAAO;gBACZ,IAAI,EAAC,aAAa;aACnB;YACD;gBACE,IAAI,EAAC,cAAc;gBACnB,IAAI,EAAC,oBAAoB;aAC1B;YACD;gBACE,IAAI,EAAC,QAAQ;gBACb,IAAI,EAAC,cAAc;aACpB;YACD;gBACE,IAAI,EAAC,gBAAgB;gBACrB,IAAI,EAAC,sBAAsB;aAC5B;YACD;gBACE,IAAI,EAAC,kBAAkB;gBACvB,IAAI,EAAC,wBAAwB;aAC9B;YACD;gBACE,IAAI,EAAC,eAAe;gBACpB,IAAI,EAAC,qBAAqB;aAC3B;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;YACD;gBACE,IAAI,EAAC,WAAW;gBAChB,IAAI,EAAC,iBAAiB;aACvB;SACF;;;KAzDF;;;;;;;;;;;;;;IAIC,aAAI,GAAG,EAAE,CAqDR;IACD;;YACE,MAAM;;;YACJ,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAML,KAAK,CAAC,MAAM;;;YALX,OAAO;;;;oBACL,MAAM,iBAAC,IAAI,CAAC,IAAI;oBAAhB,MAAM,CACH,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;;gBAD5E,MAAM;;+CADA,IAAI,CAAC,GAAG,0BAGd,CAAC,IAAI,EAAC,GAAG,EAAC,EAAE,CAAA,IAAI,CAAC,IAAI;;QAHvB,OAAO;QADT,MAAM;QADR,MAAM;KASP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Mesh.ts": { + "version": 3, + "file": "Mesh.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Mesh.ets" + ], + "names": [], + "mappings": "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", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Shape.ts": { + "version": 3, + "file": "Shape.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Shape.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,MAAM;IAFb;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,IAAI,QAAC,0BAA0B;;QAA/B,IAAI;;YACJ,oBAAoB;YACpB,KAAK;;;YACH,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;YAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;;QAF7B,oBAAoB;QACpB,KAAK;;YAGL,kBAAkB;YAClB,oBAAoB;YACpB,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;;QARpC,MAAM;KAWP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ShapeExample.ts": { + "version": 3, + "file": "ShapeExample.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ShapeExample.ets" + ], + "names": [], + "mappings": ";;;;;MAkBO,YAAY;IAFnB;;;;;;;KAhBA;;;;;;;;;;;IAmBE;;YACE,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAApB,MAAM,CAUJ,KAAK,CAAC,MAAM;YAVd,MAAM,CAUU,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;;;YAThC,KAAK;YAAL,KAAK,CAGJ,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAHpD,KAAK,CAIJ,IAAI,CAAC,QAAQ;YAJd,KAAK,CAKJ,MAAM,CAAC,KAAK,CAAC,GAAG;YALjB,KAAK,CAMJ,WAAW,CAAC,CAAC;YANd,KAAK,CAOJ,cAAc,CAAC,aAAa,CAAC,KAAK;YAPnC,KAAK,CAQJ,gBAAgB,CAAC,CAAC;;;YAPjB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,GAAG;YAAhB,IAAI,CAAc,MAAM,CAAC,EAAE;YAA3B,IAAI,CAAyB,QAAQ,CAAC,wBAAwB;;QADhE,KAAK;QADP,MAAM;KAWP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/Stroke.ts": { + "version": 3, + "file": "Stroke.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Stroke.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,MAAM;IAFb;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,iBAAiB;YACjB,IAAI;YADJ,iBAAiB;YACjB,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,iBAAiB;YACjB,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,iBAAiB;YACjB,IAAI,CAGD,WAAW,CAAC,CAAC;YAJhB,iBAAiB;YACjB,IAAI,CAID,QAAQ,CAAC,0BAA0B;YALtC,iBAAiB;YACjB,IAAI,CAKD,MAAM,CAAC,KAAK,CAAC,GAAG;;QAPrB,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/StrokeLineJoin.ts": { + "version": 3, + "file": "StrokeLineJoin.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/StrokeLineJoin.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,eAAe;IAFtB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,2BAA2B;YAC3B,QAAQ;YADR,2BAA2B;YAC3B,QAAQ,CACL,KAAK,CAAC,GAAG;YAFZ,2BAA2B;YAC3B,QAAQ,CAEL,MAAM,CAAC,GAAG;YAHb,2BAA2B;YAC3B,QAAQ,CAGL,WAAW,CAAC,CAAC;YAJhB,2BAA2B;YAC3B,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YALnB,2BAA2B;YAC3B,QAAQ,CAKL,WAAW,CAAC,CAAC;YANhB,2BAA2B;YAC3B,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAPxC,2BAA2B;YAC3B,QAAQ,CAQL,cAAc,CAAC,aAAa,CAAC,KAAK;;QAVvC,MAAM;KAaP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/StrokeMiterLimit.ts": { + "version": 3, + "file": "StrokeMiterLimit.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/StrokeMiterLimit.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,iBAAiB;IAFxB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,GAAG;;;YACD,6BAA6B;YAC7B,QAAQ;YADR,6BAA6B;YAC7B,QAAQ,CACL,KAAK,CAAC,GAAG;YAFZ,6BAA6B;YAC7B,QAAQ,CAEL,MAAM,CAAC,GAAG;YAHb,6BAA6B;YAC7B,QAAQ,CAGL,WAAW,CAAC,CAAC;YAJhB,6BAA6B;YAC7B,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YALnB,6BAA6B;YAC7B,QAAQ,CAKL,WAAW,CAAC,EAAE;YANjB,6BAA6B;YAC7B,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAP1C,6BAA6B;YAC7B,QAAQ,CAQL,cAAc,CAAC,aAAa,CAAC,KAAK;YATrC,6BAA6B;YAC7B,QAAQ,CAUL,gBAAgB,CAAC,CAAC,GAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;;;YAClC,QAAQ;YAAR,QAAQ,CACL,KAAK,CAAC,GAAG;YADZ,QAAQ,CAEL,MAAM,CAAC,GAAG;YAFb,QAAQ,CAGL,WAAW,CAAC,CAAC;YAHhB,QAAQ,CAIL,MAAM,CAAC,KAAK,CAAC,GAAG;YAJnB,QAAQ,CAKL,WAAW,CAAC,EAAE;YALjB,QAAQ,CAML,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAN1C,QAAQ,CAOL,cAAc,CAAC,aAAa,CAAC,KAAK;YAPrC,QAAQ,CAQL,gBAAgB,CAAC,IAAI;;QArB1B,GAAG;KAwBJ", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/StrokeOpacity.ts": { + "version": 3, + "file": "StrokeOpacity.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/StrokeOpacity.ets" + ], + "names": [], + "mappings": ";;;;;MAiBO,cAAc;IAFrB;;;;;;;KAfA;;;;;;;;;;;IAkBE;;YACE,MAAM;;;YACJ,yBAAyB;YACzB,IAAI;YADJ,yBAAyB;YACzB,IAAI,CACD,KAAK,CAAC,GAAG;YAFZ,yBAAyB;YACzB,IAAI,CAED,MAAM,CAAC,GAAG;YAHb,yBAAyB;YACzB,IAAI,CAGD,WAAW,CAAC,CAAC;YAJhB,yBAAyB;YACzB,IAAI,CAID,QAAQ,CAAC,0BAA0B;YALtC,yBAAyB;YACzB,IAAI,CAKD,MAAM,CAAC,KAAK,CAAC,GAAG;YANnB,yBAAyB;YACzB,IAAI,CAMD,WAAW,CAAC,EAAE;YAPjB,yBAAyB;YACzB,IAAI,CAOD,aAAa,CAAC,GAAG;;QATtB,MAAM;KAYP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ViewPort1.ts": { + "version": 3, + "file": "ViewPort1.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ViewPort1.ets" + ], + "names": [], + "mappings": ";;;;IAiCE,IAAI,GAAE,GAAG;IACT,KAAK,GAAE,MAAM;;AAlCf;;;;;;;;;;;;;GAaG;AAEH,wBAAwB;AACxB,MAAM,GAAG;IACP,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM;IACV,MAAM,CAAC,CAAC,EAAC,MAAM,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,CAAC,EAAC,MAAM,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,KAAK,EAAC,MAAM,GAAG,GAAG,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAC,MAAM,GAAG,GAAG,CAAC;CAC5B;MAIM,SAAS;IAFhB;;;;;oBAGc,IAAI,GAAG,EAAE;qBACL,IAAI,MAAM,EAAE;;;KAN7B;;;;;;;;;;;;;;;;;IAKC,cAAM,GAAG,CAAa;IACtB,eAAO,MAAM,CAAgB;IAE7B;;YACE,MAAM;;;YACJ,cAAc;YACd,IAAI,QAAC,sBAAsB;;QAD3B,cAAc;QACd,IAAI;;YACJ,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAAhC,MAAM,CAA4B,IAAI,CAAC,SAAS;;;YAEhD,GAAG,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;;YACf,MAAM;;;YACJ,gDAAgD;YAChD,6CAA6C;YAC7C,4BAA4B;YAC5B,IAAI,QAAC,iBAAiB;;QAHtB,gDAAgD;QAChD,6CAA6C;QAC7C,4BAA4B;QAC5B,IAAI;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAAhC,MAAM,CAA4B,IAAI,CAAC,SAAS;;QAFlD,KAAK;QALP,MAAM;;YAeN,MAAM;;;YACJ,iDAAiD;YACjD,6CAA6C;YAC7C,4BAA4B;YAC5B,IAAI,QAAC,eAAe;;QAHpB,iDAAiD;QACjD,6CAA6C;QAC7C,4BAA4B;QAC5B,IAAI;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,KAAK;YAJpB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAC;YAA9B,MAAM,CAA0B,IAAI,CAAC,SAAS;;QAFhD,KAAK;QALP,MAAM;QAhBR,GAAG;QALL,MAAM;KAqCP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ViewPort2.ts": { + "version": 3, + "file": "ViewPort2.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ViewPort2.ets" + ], + "names": [], + "mappings": ";;;;IA0BE,IAAI,GAAE,MAAM;;AA1Bd;;;;;;;;;;;;;GAaG;AAEH,wBAAwB;AACxB,MAAM,MAAM;IACV,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC7B;MAIM,SAAS;IAFhB;;;;;oBAGiB,IAAI,MAAM,EAAE;;;KAL5B;;;;;;;;;;;;;;IAKC,cAAM,MAAM,CAAgB;IAE5B;;YACE,MAAM;;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAAlC,MAAM,CAA8B,IAAI,CAAC,SAAS;;QAFpD,KAAK;QADP,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + }, + "entry|entry|1.0.0|src/main/ets/pages/ViewPort3.ts": { + "version": 3, + "file": "ViewPort3.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/ViewPort3.ets" + ], + "names": [], + "mappings": ";;;;IA0BE,IAAI,GAAE,QAAQ;;AA1BhB;;;;;;;;;;;;;GAaG;AAEH,0BAA0B;AAC1B,MAAM,QAAQ;IACZ,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IACxB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IACxB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC7B;MAIM,SAAS;IAFhB;;;;;oBAGmB,IAAI,QAAQ,EAAE;;;KALhC;;;;;;;;;;;;;;IAKC,cAAM,QAAQ,CAAkB;IAEhC;;YACE,MAAM;;;YACJ,KAAK;YAAL,KAAK,CAIJ,QAAQ,CAAC,IAAI,CAAC,IAAI;YAJnB,KAAK,CAKJ,KAAK,CAAC,GAAG;YALV,KAAK,CAMJ,MAAM,CAAC,GAAG;YANX,KAAK,CAOJ,eAAe,CAAC,SAAS;;;YANxB,IAAI;YAAJ,IAAI,CAAG,KAAK,CAAC,MAAM;YAAnB,IAAI,CAAiB,MAAM,CAAC,MAAM;YAAlC,IAAI,CAAgC,IAAI,CAAC,SAAS;;;YAClD,MAAM,QAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YAAlC,MAAM,CAA8B,IAAI,CAAC,SAAS;;QAFpD,KAAK;QADP,MAAM;KAUP", + "entry-package-info": "entry|1.0.0" + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/pack.info b/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/pack.info new file mode 100644 index 00000000000..931dd209ac2 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/build/default/outputs/default/pack.info @@ -0,0 +1 @@ +{"summary":{"app":{"bundleName":"com.samples.shapedrawing","bundleType":"app","version":{"code":1000000,"name":"1.0.0"}},"modules":[{"mainAbility":"EntryAbility","deviceType":["default"],"abilities":[{"name":"EntryAbility","label":"$string:EntryAbility_label"}],"extensionAbilities":[{"name":"EntryBackupAbility","forms":[]}],"distro":{"moduleType":"entry","installationFree":false,"deliveryWithInstall":true,"moduleName":"entry"},"apiVersion":{"compatible":20,"releaseType":"Release","target":20}}]},"packages":[{"deviceType":["default"],"moduleType":"entry","deliveryWithInstall":true,"name":"entry-default"}]} diff --git a/ArkUIKit/ShapeDrawing/entry/hvigorfile.ts b/ArkUIKit/ShapeDrawing/entry/hvigorfile.ts new file mode 100644 index 00000000000..cfa8a00f74f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/hvigorfile.ts @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { hapTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: hapTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/obfuscation-rules.txt b/ArkUIKit/ShapeDrawing/entry/obfuscation-rules.txt new file mode 100644 index 00000000000..272efb6ca3f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/oh-package.json5 b/ArkUIKit/ShapeDrawing/entry/oh-package.json5 new file mode 100644 index 00000000000..c9cb6c81748 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/oh-package.json5 @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "name": "entry", + "version": "1.0.0", + "description": "Please describe the basic information.", + "main": "", + "author": "", + "license": "", + "dependencies": {} +} + diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/common/image/startIcon.png b/ArkUIKit/ShapeDrawing/entry/src/main/common/image/startIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..205ad8b5a8a42e8762fbe4899b8e5e31ce822b8b GIT binary patch literal 20093 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

c)ijgxDm}8EsRXFt3h@+Ufr7@DN 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/entryability/EntryAbility.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/entryability/EntryAbility.ets new file mode 100644 index 00000000000..62f53acbc95 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/entryability/EntryAbility.ets @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { AbilityConstant, ConfigurationConstant, UIAbility, Want } from '@kit.AbilityKit'; +import { hilog } from '@kit.PerformanceAnalysisKit'; +import { window } from '@kit.ArkUI'; + +const DOMAIN = 0x0000; + +export default class EntryAbility extends UIAbility { + onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { + try { + this.context.getApplicationContext().setColorMode(ConfigurationConstant.ColorMode.COLOR_MODE_NOT_SET); + } catch (err) { + hilog.error(DOMAIN, 'testTag', 'Failed to set colorMode. Cause: %{public}s', JSON.stringify(err)); + } + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onCreate'); + } + + onDestroy(): void { + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onDestroy'); + } + + onWindowStageCreate(windowStage: window.WindowStage): void { + // Main window is created, set main page for this ability + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + + windowStage.loadContent('pages/Index', (err) => { + if (err.code) { + hilog.error(DOMAIN, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err)); + return; + } + hilog.info(DOMAIN, 'testTag', 'Succeeded in loading the content.'); + }); + } + + onWindowStageDestroy(): void { + // Main window is destroyed, release UI related resources + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + + onForeground(): void { + // Ability has brought to foreground + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onForeground'); + } + + onBackground(): void { + // Ability has back to background + hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onBackground'); + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets new file mode 100644 index 00000000000..0a97e21bd7a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { hilog } from '@kit.PerformanceAnalysisKit'; +import { BackupExtensionAbility, BundleVersion } from '@kit.CoreFileKit'; + +const DOMAIN = 0x0000; + +export default class EntryBackupAbility extends BackupExtensionAbility { + async onBackup() { + hilog.info(DOMAIN, 'testTag', 'onBackup ok'); + await Promise.resolve(); + } + + async onRestore(bundleVersion: BundleVersion) { + hilog.info(DOMAIN, 'testTag', 'onRestore ok %{public}s', JSON.stringify(bundleVersion)); + await Promise.resolve(); + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/AntiAlias.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/AntiAlias.ets new file mode 100644 index 00000000000..73fd011ffc0 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/AntiAlias.ets @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct anti_Alias { + build() { + Column() { + Text('Turn on anti-aliasing').margin({bottom:10}) + // [Start antialias_open] + //å¼€å¯æŠ—é”¯é½¿ + Circle() + .width(150) + .height(200) + .fillOpacity(0) + .strokeWidth(5) + .stroke(Color.Black) + // [End antialias_open] + Text('Turn off anti-aliasing').margin({bottom:10}) + // [Start antialias_close] + //关闭抗锯齿 + Circle() + .width(150) + .height(200) + .fillOpacity(0) + .strokeWidth(5) + .stroke(Color.Black) + .antiAlias(false) + // [End antialias_close] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/CircleExample.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/CircleExample.ets new file mode 100644 index 00000000000..1f5b163af66 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/CircleExample.ets @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start circle_example_one] +// [Start circle_example_two] +@Entry +@Component +struct CircleExample { + build() { + Column({ space: 10 }) { + // [StartExclude circle_example_two] + //绘制一个直径为150的圆 + Circle({ width: 150, height: 150 }) + //绘制一个直径为150ã€çº¿æ¡ä¸ºçº¢è‰²è™šçº¿çš„圆环 + Circle() + .width(150) + .height(200) + .fillOpacity(0) + .strokeWidth(3) + .stroke(Color.Red) + .strokeDashArray([1, 2]) + // [EndExclude circle_example_two] + // [StartExclude circle_example_one] + //绘制一个直径为150的圆 + Circle() + .width(150) + .height(200) + .backgroundColor(Color.Pink) // 会生效在一个150*200大å°çš„矩形区域,而éžä»…在绘制的一个直径为150的圆形区域 + // [EndExclude circle_example_one] + }.width('100%') + } +} +// [End circle_example_two] +// [End circle_example_one] \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Fill.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Fill.ets new file mode 100644 index 00000000000..5e58dafca75 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Fill.ets @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct Fill { + build() { + Column() { + // [Start fill] + Path() + .width(100) + .height(100) + .commands('M150 0 L300 300 L0 300 Z') + .fill('#E87361') + .strokeWidth(0) + // [End fill] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Index.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Index.ets new file mode 100644 index 00000000000..940bf11fd84 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Index.ets @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +interface Ary { + path:string, + name:string +} +@Entry +@Component +struct Index { + ary:Ary[]=[ + { + name:'AntiAlias', + path:'pages/AntiAlias' + }, + { + name:'CircleExample', + path:'pages/CircleExample' + }, + { + name:'Fill', + path:'pages/Fill' + }, + { + name:'Mesh', + path:'pages/Mesh' + }, + { + name:'Shape', + path:'pages/Shape' + }, + { + name:'ShapeExample', + path:'pages/ShapeExample' + }, + { + name:'Stroke', + path:'pages/Stroke' + }, + { + name:'StrokeLineJoin', + path:'pages/StrokeLineJoin' + }, + { + name:'StrokeMiterLimit', + path:'pages/StrokeMiterLimit' + }, + { + name:'StrokeOpacity', + path:'pages/StrokeOpacity' + }, + { + name:'ViewPort1', + path:'pages/ViewPort1' + }, + { + name:'ViewPort2', + path:'pages/ViewPort2' + }, + { + name:'ViewPort3', + path:'pages/ViewPort3' + }, + ] + build() { + Scroll() { + Column({ space: 10 }) { + ForEach(this.ary,(item:Ary)=>{ + Button(item.name) + .onClick(() => this.getUIContext().getRouter().pushUrl({ url: item.path })) + },(item:Ary)=>item.name) + } + .width('100%') + } + } +} diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Mesh.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Mesh.ets new file mode 100644 index 00000000000..fa2991dc65c --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Mesh.ets @@ -0,0 +1,166 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start mesh] +import { FrameNode, NodeController, RenderNode } from '@kit.ArkUI'; +import { image } from '@kit.ImageKit'; +import { drawing } from '@kit.ArkGraphics2D'; + +let offCanvas: OffscreenCanvas = new OffscreenCanvas(150, 150); +let ctx = offCanvas.getContext('2d'); + +class DrawingRenderNode extends RenderNode { + private verts_: Array = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360]; + + setVerts(verts: Array): void { + this.verts_ = verts + } + + async draw(context: DrawContext) { + const canvas = context.canvas; + let pixelMap = ctx.getPixelMap(0, 0, 150, 150); + const brush = new drawing.Brush(); // åªæ”¯æŒbrush,使用pen没有绘制效果。 + canvas.attachBrush(brush); + let verts: number[] = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + ; // 18 + canvas.drawPixelMapMesh(pixelMap, 2, 2, verts, 0, null, 0); + canvas.detachBrush(); + } +} + +const renderNode = new DrawingRenderNode(); +renderNode.frame = { + x: 0, + y: 0, + width: 150, + height: 150 +}; + +class MyNodeController extends NodeController { + private rootNode: FrameNode | null = null; + + makeNode(uiContext: UIContext): FrameNode | null { + this.rootNode = new FrameNode(uiContext); + + const rootRenderNode = this.rootNode.getRenderNode(); + if (rootRenderNode !== null) { + rootRenderNode.appendChild(renderNode); + } + return this.rootNode; + } +} + +@Entry +@Component +struct Mesh { + private myNodeController: MyNodeController = new MyNodeController(); + @State showShape: boolean = false; + @State pixelMap: image.PixelMap | undefined = undefined; + @State shapeWidth: number = 150; + @State strokeWidth: number = 1; + @State meshArray: Array = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360]; + + aboutToAppear(): void { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img: ImageBitmap = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(0, 0, 150, 150); + } + + build() { + Column() { + Image(this.pixelMap) + .backgroundColor(Color.Red) + .width(150) + .height(150) + .onClick(() => { + // 'common/image/startIcon.png'éœ€è¦æ›¿æ¢ä¸ºå¼€å‘者所需的图åƒèµ„æºæ–‡ä»¶ + let img: ImageBitmap = new ImageBitmap('common/image/startIcon.png'); + ctx.drawImage(img, 0, 0, 100, 100); + this.pixelMap = ctx.getPixelMap(1, 1, 150, 150); + this.myNodeController.rebuild(); + this.strokeWidth += 1; + }) + + NodeContainer(this.myNodeController) + .width(150) + .height(150) + .backgroundColor(Color.Grey) + .onClick(() => { + this.meshArray = [0, 0, 50, 0, 410, 0, 0, 180, 50, 180, 410, 180, 0, 360, 50, 360, 410, 360, 0] + }) + Button('change mesh') + .margin(5) + .onClick(() => { + this.meshArray = [0, 0, 410, 0, 50, 0, 0, 180, 50, 180, 410, 180, 0, 360, 410, 360, 50, 360]; + }) + Button('Show Shape') + .margin(5) + .onClick(() => { + this.showShape = !this.showShape + }) + + if (this.showShape) { + Shape(this.pixelMap) { + Path().width(150).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .fillOpacity(0.2) + .backgroundColor(Color.Grey) + .width(this.shapeWidth) + .height(150) + .mesh(this.meshArray, 2, 2) + .fill(0x317AF7) + .stroke(0xEE8443) + .strokeWidth(this.strokeWidth) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + + Shape(this.pixelMap) { + Path().width(150).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .fillOpacity(0.2) + .backgroundColor(Color.Grey) + .width(this.shapeWidth) + .height(150) + .fill(0x317AF7) + .stroke(0xEE8443) + .strokeWidth(this.strokeWidth) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + .onDragStart(() => { + }) + + // meshåªå¯¹shapeä¼ å…¥pixelMap时生效,此处ä¸ç”Ÿæ•ˆ + Shape() { + Path().width(150).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .fillOpacity(0.2) + .backgroundColor(Color.Grey) + .width(this.shapeWidth) + .height(150) + .mesh(this.meshArray, 2, 2) + .fill(0x317AF7) + .stroke(0xEE8443) + .strokeWidth(this.strokeWidth) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + .onClick(() => { + this.pixelMap = undefined; + }) + } + } + } +} +// [End mesh] \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Shape.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Shape.ets new file mode 100644 index 00000000000..b06fc7a2062 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Shape.ets @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct shape1 { + build() { + Column() { + Text('Create drawing component') + // [Start shape_one] + Shape() { + Rect().width(300).height(50) + } + // [End shape_one] + // [Start shape_two] + Circle({ width: 150, height: 150 }) + // [End shape_two] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ShapeExample.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ShapeExample.ets new file mode 100644 index 00000000000..6e7b719306e --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ShapeExample.ets @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start shape_example] +@Entry +@Component +struct ShapeExample { + build() { + Column({ space: 10 }) { + Shape() { + Path().width(200).height(60).commands('M0 0 L400 0 L400 150 Z') + } + .viewPort({ x: -80, y: -5, width: 500, height: 300 }) + .fill(0x317AF7) + .stroke(Color.Red) + .strokeWidth(3) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(5) + }.width('100%').margin({ top: 15 }) + } +} +// [End shape_example] \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Stroke.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Stroke.ets new file mode 100644 index 00000000000..0d953a66753 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/Stroke.ets @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct Stroke { + build() { + Column() { + // [Start stroke] + Path() + .width(100) + .height(100) + .fillOpacity(0) + .commands('M150 0 L300 300 L0 300 Z') + .stroke(Color.Red) + // [End stroke] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeLineJoin.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeLineJoin.ets new file mode 100644 index 00000000000..4a0e9c72429 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeLineJoin.ets @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct Stroke_LineJoin { + build() { + Column() { + // [Start stroke_line_join] + Polyline() + .width(100) + .height(100) + .fillOpacity(0) + .stroke(Color.Red) + .strokeWidth(8) + .points([[20, 0], [0, 100], [100, 90]]) + // 设置折线æ‹è§’处为圆弧 + .strokeLineJoin(LineJoinStyle.Round) + // [End stroke_line_join] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeMiterLimit.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeMiterLimit.ets new file mode 100644 index 00000000000..335659a63ae --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeMiterLimit.ets @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct Stroke_MiterLimit { + build() { + Row() { + // [Start stroke_miter_limit] + Polyline() + .width(100) + .height(100) + .fillOpacity(0) + .stroke(Color.Red) + .strokeWidth(10) + .points([[20, 0], [20, 100], [100, 100]]) + // 设置折线æ‹è§’处为尖角 + .strokeLineJoin(LineJoinStyle.Miter) + // 设置斜接长度与线宽的比值 + .strokeMiterLimit(1/Math.sin(45)) + Polyline() + .width(100) + .height(100) + .fillOpacity(0) + .stroke(Color.Red) + .strokeWidth(10) + .points([[20, 0], [20, 100], [100, 100]]) + .strokeLineJoin(LineJoinStyle.Miter) + .strokeMiterLimit(1.42) + // [End stroke_miter_limit] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeOpacity.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeOpacity.ets new file mode 100644 index 00000000000..c7f9a468c24 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/StrokeOpacity.ets @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@Entry +@Component +struct Stroke_Opacity { + build() { + Column() { + // [Start stroke_opacity] + Path() + .width(100) + .height(100) + .fillOpacity(0) + .commands('M150 0 L300 300 L0 300 Z') + .stroke(Color.Red) + .strokeWidth(10) + .strokeOpacity(0.2) + // [End stroke_opacity] + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort1.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort1.ets new file mode 100644 index 00000000000..d4adb1296ee --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort1.ets @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start view_port_one] +class Tmp { + public x: number = 0; + public y: number = 0; + public width: number = 75; + public height: number = 75; +} + +class TmpOne { + public x:number = 0; + public y:number = 0; + public width:number = 300; + public height:number = 300; +} + +@Entry +@Component +struct viewPort1 { + viep: Tmp = new Tmp(); + viep1: TmpOne = new TmpOne(); + + build() { + Column() { + // 画一个宽高都为75的圆 + Text('Original Size Circle') + Circle({ width: 75, height: 75 }).fill('#E87361') + + Row({ space: 10 }) { + Column() { + // 创建一个宽高都为150çš„shape组件,背景色为黄色,一个宽高都为75çš„viewPort。 + // 用一个è“色的矩形æ¥å¡«å……viewPort,在viewPort中绘制一个直径为75的圆。 + // 绘制结æŸï¼ŒviewPort会根æ®ç»„件宽高放大两å€ã€‚ + Text('Enlarged Circle') + Shape() { + Rect().width('100%').height('100%').fill('#0097D4') + Circle({ width: 75, height: 75 }).fill('#E87361') + } + .viewPort(this.viep) + .width(150) + .height(150) + .backgroundColor('#F5DC62') + } + + Column() { + // 创建一个宽高都为150çš„shape组件,背景色为黄色,一个宽高都为300çš„viewPort。 + // 用一个绿色的矩形æ¥å¡«å……viewPort,在viewPort中绘制一个直径为75的圆。 + // 绘制结æŸï¼ŒviewPort会根æ®ç»„件宽高缩å°ä¸¤å€ã€‚ + Text('Shrunk Circle') + Shape() { + Rect().width('100%').height('100%').fill('#BDDB69') + Circle({width: 75, height: 75}).fill('#E87361') + } + .viewPort(this.viep1) + .width(150) + .height(150) + .backgroundColor('#F5DC62') + } + } + } + } +} +// [End view_port_one] \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort2.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort2.ets new file mode 100644 index 00000000000..250ddeb23ce --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort2.ets @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start view_port_two] +class TmpTwo { + public x: number = 0; + public y: number = 0; + public width: number = 300; + public height: number = 300; +} + +@Entry +@Component +struct viewPort2 { + viep: TmpTwo = new TmpTwo(); + + build() { + Column() { + Shape() { + Rect().width('100%').height('100%').fill('#0097D4') + Circle({ width: 150, height: 150 }).fill('#E87361') + } + .viewPort(this.viep) + .width(300) + .height(300) + .backgroundColor('#F5DC62') + } + } +} +// [End view_port_two] \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort3.ets b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort3.ets new file mode 100644 index 00000000000..57db585030a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/ets/pages/ViewPort3.ets @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// [Start view_port_three] +class TmpThree { + public x: number = -150; + public y: number = -150; + public width: number = 300; + public height: number = 300; +} + +@Entry +@Component +struct viewPort3 { + viep: TmpThree = new TmpThree(); + + build() { + Column() { + Shape() { + Rect().width('100%').height('100%').fill('#0097D4') + Circle({ width: 150, height: 150 }).fill('#E87361') + } + .viewPort(this.viep) + .width(300) + .height(300) + .backgroundColor('#F5DC62') + } + } +} +// [End view_port_three] \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/module.json5 b/ArkUIKit/ShapeDrawing/entry/src/main/module.json5 new file mode 100644 index 00000000000..cb355a98002 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/module.json5 @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": [ + "default" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "EntryAbility", + "srcEntry": "./ets/entryability/EntryAbility.ets", + "description": "$string:EntryAbility_desc", + "icon": "$media:layered_image", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:startIcon", + "startWindowBackground": "$color:start_window_background", + "exported": true, + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "ohos.want.action.home" + ] + } + ] + } + ], + "extensionAbilities": [ + { + "name": "EntryBackupAbility", + "srcEntry": "./ets/entrybackupability/EntryBackupAbility.ets", + "type": "backup", + "exported": false, + "metadata": [ + { + "name": "ohos.extension.backup", + "resource": "$profile:backup_config" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/color.json b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/color.json new file mode 100644 index 00000000000..3c712962da3 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/color.json @@ -0,0 +1,8 @@ +{ + "color": [ + { + "name": "start_window_background", + "value": "#FFFFFF" + } + ] +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/float.json b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/float.json new file mode 100644 index 00000000000..33ea22304f9 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/float.json @@ -0,0 +1,8 @@ +{ + "float": [ + { + "name": "page_text_font_size", + "value": "50fp" + } + ] +} diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/string.json b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/string.json new file mode 100644 index 00000000000..fd299280e70 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "shapedrawing" + } + ] +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/media/background.png b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/media/background.png new file mode 100644 index 0000000000000000000000000000000000000000..923f2b3f27e915d6871871deea0420eb45ce102f GIT binary patch literal 91942 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

c)ijgxDm}8EsRXFt3h@+Ufr7@DN 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/backup_config.json b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/backup_config.json new file mode 100644 index 00000000000..78f40ae7c49 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/backup_config.json @@ -0,0 +1,3 @@ +{ + "allowToBackupRestore": true +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/main_pages.json b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 00000000000..c0dc01023c8 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,18 @@ +{ + "src": [ + "pages/AntiAlias", + "pages/CircleExample", + "pages/Fill", + "pages/Index", + "pages/Mesh", + "pages/Shape", + "pages/ShapeExample", + "pages/Stroke", + "pages/StrokeLineJoin", + "pages/StrokeMiterLimit", + "pages/StrokeOpacity", + "pages/ViewPort1", + "pages/ViewPort2", + "pages/ViewPort3" + ] +} diff --git a/ArkUIKit/ShapeDrawing/entry/src/main/resources/dark/element/color.json b/ArkUIKit/ShapeDrawing/entry/src/main/resources/dark/element/color.json new file mode 100644 index 00000000000..79b11c2747a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/main/resources/dark/element/color.json @@ -0,0 +1,8 @@ +{ + "color": [ + { + "name": "start_window_background", + "value": "#000000" + } + ] +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/mock/mock-config.json5 b/ArkUIKit/ShapeDrawing/entry/src/mock/mock-config.json5 new file mode 100644 index 00000000000..b9a78e20153 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/mock/mock-config.json5 @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Ability.test.ets b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Ability.test.ets new file mode 100644 index 00000000000..0f8ce9a2c01 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Ability.test.ets @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { hilog } from '@kit.PerformanceAnalysisKit'; +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'; + +export default function abilityTest() { + describe('ActsAbilityTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }) + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }) + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }) + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }) + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + hilog.info(0x0000, 'testTag', '%{public}s', 'it begin'); + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }) + }) +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Index.test.ets b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Index.test.ets new file mode 100644 index 00000000000..89111d4cdd9 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/Index.test.ets @@ -0,0 +1,240 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { describe, it, expect, beforeAll } from '@ohos/hypium'; +// 导入测试ä¾èµ–kit +import hilog from '@ohos.hilog'; +import { abilityDelegatorRegistry, Driver, ON, MatchPattern } from '@kit.TestKit'; +import { UIAbility, Want } from '@kit.AbilityKit'; + +const TAG = '[Sample_ShapeDrawing]'; +const DOMAIN = 0xF811; +const BUNDLE = 'ShapeDrawing_'; +const delegator: abilityDelegatorRegistry.AbilityDelegator = abilityDelegatorRegistry.getAbilityDelegator(); +const bundleName = abilityDelegatorRegistry.getArguments().bundleName; +let want: Want; + +export default function IndexTest() { + describe('IndexTest', () => { + beforeAll(async () => { + want = { + bundleName: bundleName, + abilityName: 'EntryAbility' + }; + await delegator.startAbility(want); + let driver = Driver.create(); + await driver.delayMs(1000); + const ability: UIAbility = await delegator.getCurrentTopAbility(); + expect(ability.context.abilityInfo.name).assertEqual('EntryAbility'); + }) + + /** + * @tc.number ShapeDrawingTest_001 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_001', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_001 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('AntiAlias', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_001 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_002 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_002', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_002 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('CircleExample', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_002 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_003 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_003', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_003 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('Fill', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_003 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_004 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_004', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_004 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('Mesh', MatchPattern.CONTAINS)); + await button.click(); + let button1 = await driver.findComponent(ON.text('Show Shape', MatchPattern.CONTAINS)); + await button1.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_004 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_005 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_005', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_005 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('Shape', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_005 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_006 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_006', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_006 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('ShapeExample', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_006 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_007 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_007', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_007 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('Stroke', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_007 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_008 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_008', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_008 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('StrokeLineJoin', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_008 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_009 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_009', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_009 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('StrokeMiterLimit', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_009 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_010 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_010', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_010 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('StrokeOpacity', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_010 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_011 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_011', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_011 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('ViewPort1', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_011 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_012 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_012', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_012 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('ViewPort2', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_012 end'); + done(); + }) + + /** + * @tc.number ShapeDrawingTest_013 + * @tc.name testShapeDrawing + * @tc.desc æµ‹è¯•å›¾å½¢ç»˜åˆ¶æ˜¯å¦æ˜¾ç¤ºæ­£å¸¸ + */ + it('ShapeDrawingTest_013', 0, async (done: Function) => { + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_013 begin'); + let driver = Driver.create(); + let button = await driver.findComponent(ON.text('ViewPort3', MatchPattern.CONTAINS)); + await button.click(); + await driver.pressBack(); + hilog.info(DOMAIN, TAG, BUNDLE + 'ShapeDrawingTest_013 end'); + done(); + }) + }) +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/List.test.ets b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/List.test.ets new file mode 100644 index 00000000000..a1951e50c73 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/ets/test/List.test.ets @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import abilityTest from './Ability.test'; +import IndexTest from './Index.test'; + +export default function testsuite() { + abilityTest(); + IndexTest(); +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/ohosTest/module.json5 b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/module.json5 new file mode 100644 index 00000000000..84d30586d59 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/ohosTest/module.json5 @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "module": { + "name": "entry_test", + "type": "feature", + "deviceTypes": [ + "default" + ], + "deliveryWithInstall": true, + "installationFree": false + } +} diff --git a/ArkUIKit/ShapeDrawing/entry/src/test/List.test.ets b/ArkUIKit/ShapeDrawing/entry/src/test/List.test.ets new file mode 100644 index 00000000000..f1186b1f53c --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/test/List.test.ets @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/entry/src/test/LocalUnit.test.ets b/ArkUIKit/ShapeDrawing/entry/src/test/LocalUnit.test.ets new file mode 100644 index 00000000000..7fc57c77dbf --- /dev/null +++ b/ArkUIKit/ShapeDrawing/entry/src/test/LocalUnit.test.ets @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/hvigor/hvigor-config.json5 b/ArkUIKit/ShapeDrawing/hvigor/hvigor-config.json5 new file mode 100644 index 00000000000..b8fea3f097b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/hvigor/hvigor-config.json5 @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "modelVersion": "6.0.0", + "dependencies": { + }, + "execution": { + // "analyze": "normal", /* Define the build analyze mode. Value: [ "normal" | "advanced" | "ultrafine" | false ]. Default: "normal" */ + // "daemon": true, /* Enable daemon compilation. Value: [ true | false ]. Default: true */ + // "incremental": true, /* Enable incremental compilation. Value: [ true | false ]. Default: true */ + // "parallel": true, /* Enable parallel compilation. Value: [ true | false ]. Default: true */ + // "typeCheck": false, /* Enable typeCheck. Value: [ true | false ]. Default: false */ + // "optimizationStrategy": "memory" /* Define the optimization strategy. Value: [ "memory" | "performance" ]. Default: "memory" */ + }, + "logging": { + // "level": "info" /* Define the log level. Value: [ "debug" | "info" | "warn" | "error" ]. Default: "info" */ + }, + "debugging": { + // "stacktrace": false /* Disable stacktrace compilation. Value: [ true | false ]. Default: false */ + }, + "nodeOptions": { + // "maxOldSpaceSize": 8192 /* Enable nodeOptions maxOldSpaceSize compilation. Unit M. Used for the daemon process. Default: 8192*/ + // "exposeGC": true /* Enable to trigger garbage collection explicitly. Default: true*/ + } +} diff --git a/ArkUIKit/ShapeDrawing/hvigorfile.ts b/ArkUIKit/ShapeDrawing/hvigorfile.ts new file mode 100644 index 00000000000..e3340f07e45 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/hvigorfile.ts @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { appTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: appTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/local.properties b/ArkUIKit/ShapeDrawing/local.properties new file mode 100644 index 00000000000..3a0275d64a9 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/local.properties @@ -0,0 +1,8 @@ +# This file is automatically generated by DevEco Studio. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file should *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. +# +# For customization when using a Version Control System, please read the header note. +sdk.dir=C:/Users/lenovo/AppData/Local/OpenHarmony/Sdk \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh-package.json5 b/ArkUIKit/ShapeDrawing/oh-package.json5 new file mode 100644 index 00000000000..69cb43cba3a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh-package.json5 @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "modelVersion": "6.0.0", + "description": "Please describe the basic information.", + "dependencies": { + }, + "devDependencies": { + "@ohos/hypium": "1.0.24", + "@ohos/hamock": "1.0.0" + } +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/CHANGELOG.md b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/CHANGELOG.md new file mode 100644 index 00000000000..22a35bda8a1 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/CHANGELOG.md @@ -0,0 +1,4 @@ +## 1.0.0 +- ä¿®å¤once断言问题 +## 1.0.0-rc +- æä¾›DevEco Studio预览器场景使能的MockSetup装饰器 \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/LICENSE b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/LICENSE new file mode 100644 index 00000000000..4947287f7b5 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/LICENSE @@ -0,0 +1,177 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/README.md b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/README.md new file mode 100644 index 00000000000..c46981eb6b9 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/README.md @@ -0,0 +1,82 @@ +# Hamock + +## 简介 + +Hamock 是 OpenHarmony 上的模拟框架,æä¾›é¢„览场景的模拟功能。 + +## 下载安装 + +```bash +ohpm install @ohos/hamock +``` + +OpenHarmony ohpm 环境é…置等更多内容,请å‚考[如何安装 OpenHarmony ohpm 包](https://gitee.com/openharmony-tpc/docs/blob/master/OpenHarmony_har_usage.md) + +## 使用示例 + +Hamock æä¾›äº† @MockSetup 用于修饰 Mock 方法,仅支æŒå£°æ˜Žå¼èŒƒå¼çš„组件。当开å‘者预览该组件时,预览è¿è¡Œæ—¶å°†åœ¨ç»„ä»¶åˆå§‹åŒ–时执行被 @MockSetup 修饰的方法。因此,开å‘者å¯ä»¥åœ¨è¿™ä¸ªè¢«ä¿®é¥°çš„æ–¹æ³•内é‡å®šä¹‰ç»„件的方法或é‡èµ‹å€¼ç»„件的属性,其将在预览时生效。 + +> 说明: +> @MockSetup 修饰的方法仅在预览场景会自动触å‘,并先于组件的 aboutToAppear 执行。 + +### UI组件的方法 + +在 ArkTS 页é¢ä»£ç ä¸­å¼•å…¥ Hamock。在目标组件中定义一个方法,并用 @MockSetup 修饰该方法。在这个方法中,使用 MockKit 模拟目标方法。 + +```typescript +import { MockKit, when, MockSetup } from '@ohos/hamock'; + +@Entry +@Component +struct Index { + ... + @MockSetup + randomName() { + let mocker: MockKit = new MockKit(); + let mockfunc: Object = mocker.mockFunc(this, this.method1); + // mock 指定的方法在指定入å‚的返回值 + when(mockfunc)('test').afterReturn(1); + } + ... + // 业务场景调用方法 + const result: number = this.method1('test'); // in previewer, result = 1 +} +``` + +### UI组件的属性 + +在 ArkTS 页é¢ä»£ç ä¸­å¼•å…¥ Hamock。在目标组件中定义一个方法,并用 @MockSetup ä¿®é¥°è¯¥æ–¹æ³•ã€‚åœ¨è¿™ä¸ªæ–¹æ³•ä¸­ï¼Œå¯¹äºŽéœ€è¦ Mock 的属性,å¯ä»¥é‡æ–°èµ‹å€¼ã€‚ + +```typescript +import { MockSetup } from '@ohos/hamock'; + +@Component +struct Person { + @Prop species: string; + ... + // 在 @MockSetup 片段中,定义对象属性 + @MockSetup + randomName() { + this.species = 'primates'; + } + ... + // 业务场景调用属性(如果从åˆå§‹åŒ–到调用期间,该属性无å˜åŒ–) + const result: string = this.species; // in previewer, result = primates +} +``` + +## 约æŸä¸Žé™åˆ¶ + +在下述版本验è¯é€šè¿‡ï¼š + +DevEco Studio: 4.1 (4.1.3.400), SDK: API11 (4.1.0.36) + +MockSetup 仅在 API11 支æŒã€‚ + +## è´¡çŒ®ä»£ç  + +使用过程中å‘现任何问题都å¯ä»¥æ[Issue](https://gitee.com/openharmony/testfwk_arkxtest/issues) 给我们,当然,我们也éžå¸¸æ¬¢è¿Žä½ ç»™æˆ‘们æ[PR](https://gitee.com/openharmony/testfwk_arkxtest/pulls) 。 + +## å¼€æºåè®® + +本项目基于 [Apache License 2.0](https://gitee.com/openharmony/testfwk_arkxtest/blob/master/hamock/LICENSE) ,请自由地享å—å’Œå‚与开æºã€‚ \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/build-profile.json5 b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/build-profile.json5 new file mode 100644 index 00000000000..12fe2d844bd --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/build-profile.json5 @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + "apiType": "stageMode", + "buildOption": { + }, + "targets": [ + { + "name": "default" + } + ] +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.js new file mode 100644 index 00000000000..d7bda561c9b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.js @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Script for compiling build behavior. It is built in the build plug-in and cannot be modified currently. +export { harTasks } from '@ohos/hvigor-ohos-plugin'; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.ts new file mode 100644 index 00000000000..960be7d7df0 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/hvigorfile.ts @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Script for compiling build behavior. It is built in the build plug-in and cannot be modified currently. +export { harTasks } from '@ohos/hvigor-ohos-plugin'; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.d.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.d.ts new file mode 100644 index 00000000000..6bc7929ba57 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.d.ts @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export class ArgumentMatchers { + static any; + static anyString; + static anyBoolean; + static anyNumber; + static anyObj; + static anyFunction; + static matchRegexs(Regex: RegExp): void +} + +declare interface when { + afterReturn(value: any): any + afterReturnNothing(): undefined + afterAction(action: any): any + afterThrow(e_msg: string): string + (argMatchers?: any): when; +} + +export const when: when; + +export interface VerificationMode { + times(count: Number): void + never(): void + once(): void + atLeast(count: Number): void + atMost(count: Number): void +} + +export class MockKit { + constructor() + mockFunc(obj: Object, func: Function): Function + mockObject(obj: Object): Object + verify(methodName: String, argsArray: Array): VerificationMode + ignoreMock(obj: Object, func: Function): void + clear(obj: Object): void + clearAll(): void +} + +export declare function MockSetup( + target: Object, + propertyName: string | Symbol, + descriptor: TypedPropertyDescriptor<() => void> +): void; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ets b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ets new file mode 100644 index 00000000000..c3a47320c2b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ets @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { MockSetup, MockKit, when } from './src/main/mock/MockKit'; +export { ArgumentMatchers } from './src/main/mock/ArgumentMatchers'; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.js new file mode 100644 index 00000000000..1cb2b5e0256 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.js @@ -0,0 +1,16 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export { MockSetup, MockKit, when } from './src/main/mock/MockKit.js'; +export { ArgumentMatchers } from './src/main/mock/ArgumentMatchers.js'; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ts new file mode 100644 index 00000000000..608eb4fe72a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { MockSetup, MockKit, when } from './src/main/mock/MockKit.js'; +export { ArgumentMatchers } from './src/main/mock/ArgumentMatchers.js'; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/oh-package.json5 b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/oh-package.json5 new file mode 100644 index 00000000000..0ef4eeed251 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/oh-package.json5 @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + name: '@ohos/hamock', + version: '1.0.0', + description: 'A mock framework for OpenHarmony application.', + main: 'index.ets', + author: 'huawei', + license: 'Apache-2.0', + dependencies: {}, + ohos: { + org: 'ohos', + }, + types: 'index.d.ts' +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.js new file mode 100644 index 00000000000..f06bbca0b28 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.js @@ -0,0 +1,97 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export class ArgumentMatchers { + constructor() { + this.ANY = ""; + this.ANY_STRING = ""; + this.ANY_BOOLEAN = ""; + this.ANY_NUMBER = ""; + this.ANY_OBJECT = ""; + this.ANY_FUNCTION = ""; + this.MATCH_REGEXS = ""; + } + static any() { + } + static anyString() { + } + static anyBoolean() { + } + static anyNumber() { + } + static anyObj() { + } + static anyFunction() { + } + static matchRegexs(regex) { + if (ArgumentMatchers.isRegExp(regex)) { + return regex; + } + throw Error("not a regex"); + } + static isRegExp(value) { + return Object.prototype.toString.call(value) === "[object RegExp]"; + } + matcheReturnKey(...args) { + let arg = args[0]; + let regex = args[1]; + let stubSetKey = args[2]; + if (stubSetKey && stubSetKey == this.ANY) { + return this.ANY; + } + if (typeof arg === "string" && !regex) { + return this.ANY_STRING; + } + if (typeof arg === "boolean" && !regex) { + return this.ANY_BOOLEAN; + } + if (typeof arg === "number" && !regex) { + return this.ANY_NUMBER; + } + if (typeof arg === "object" && !regex) { + return this.ANY_OBJECT; + } + if (typeof arg === "function" && !regex) { + return this.ANY_FUNCTION; + } + if (typeof arg === "string" && regex) { + return regex.test(arg); + } + return null; + } + matcheStubKey(key) { + if (key === ArgumentMatchers.any) { + return this.ANY; + } + if (key === ArgumentMatchers.anyString) { + return this.ANY_STRING; + } + if (key === ArgumentMatchers.anyBoolean) { + return this.ANY_BOOLEAN; + } + if (key === ArgumentMatchers.anyNumber) { + return this.ANY_NUMBER; + } + if (key === ArgumentMatchers.anyObj) { + return this.ANY_OBJECT; + } + if (key === ArgumentMatchers.anyFunction) { + return this.ANY_FUNCTION; + } + if (ArgumentMatchers.isRegExp(key)) { + return key; + } + return null; + } +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.ts new file mode 100644 index 00000000000..262bea1afbe --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ArgumentMatchers.ts @@ -0,0 +1,118 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export class ArgumentMatchers { + ANY = ""; + ANY_STRING = ""; + ANY_BOOLEAN = ""; + ANY_NUMBER = ""; + ANY_OBJECT = ""; + ANY_FUNCTION = ""; + MATCH_REGEXS = ""; + + static any() { + } + + static anyString() { + } + + static anyBoolean() { + } + + static anyNumber() { + } + + static anyObj() { + } + + static anyFunction() { + } + + static matchRegexs(regex: any) { + if (ArgumentMatchers.isRegExp(regex)) { + return regex; + } + throw Error("not a regex"); + } + + static isRegExp(value: string) { + return Object.prototype.toString.call(value) === "[object RegExp]"; + } + + matcheReturnKey(...args: Array) { + let arg = args[0]; + let regex = args[1]; + let stubSetKey = args[2]; + + if (stubSetKey && stubSetKey == this.ANY) { + return this.ANY; + } + + if (typeof arg === "string" && !regex) { + return this.ANY_STRING; + } + + if (typeof arg === "boolean" && !regex) { + return this.ANY_BOOLEAN; + } + + if (typeof arg === "number" && !regex) { + return this.ANY_NUMBER; + } + + if (typeof arg === "object" && !regex) { + return this.ANY_OBJECT; + } + + if (typeof arg === "function" && !regex) { + return this.ANY_FUNCTION; + } + + if (typeof arg === "string" && regex) { + return regex.test(arg); + } + + return null; + } + + matcheStubKey(key: any) { + + if (key === ArgumentMatchers.any) { + return this.ANY; + } + + if (key === ArgumentMatchers.anyString) { + return this.ANY_STRING; + } + if (key === ArgumentMatchers.anyBoolean) { + return this.ANY_BOOLEAN; + } + if (key === ArgumentMatchers.anyNumber) { + return this.ANY_NUMBER; + } + if (key === ArgumentMatchers.anyObj) { + return this.ANY_OBJECT; + } + if (key === ArgumentMatchers.anyFunction) { + return this.ANY_FUNCTION; + } + + if (ArgumentMatchers.isRegExp(key)) { + return key; + } + + return null; + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.js new file mode 100644 index 00000000000..52f9dff07f7 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.js @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +class ExtendInterface { + constructor(mocker) { + this.mocker = mocker; + } + stub() { + this.params = arguments; + return this; + } + stubMockedCall(returnInfo) { + this.mocker.stubApply(this, this.params, returnInfo); + } + afterReturn(value) { + this.stubMockedCall(function () { + return value; + }); + } + afterReturnNothing() { + this.stubMockedCall(function () { + return undefined; + }); + } + afterAction(action) { + this.stubMockedCall(action); + } + afterThrow(msg) { + this.stubMockedCall(function () { + throw msg; + }); + } + clear(obj) { + this.mocker.clear(obj); + } +} +export default ExtendInterface; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.ts new file mode 100644 index 00000000000..55f7a0b36bc --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/ExtendInterface.ts @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { MockKit } from "./MockKit.js"; + +class ExtendInterface { + + private mocker: MockKit + private params: any + + constructor(mocker: MockKit) { + this.mocker = mocker; + } + + stub() { + this.params = arguments; + return this; + } + + stubMockedCall(returnInfo: any) { + this.mocker.stubApply(this, this.params, returnInfo); + } + + afterReturn(value: any) { + this.stubMockedCall(function () { + return value; + }); + } + + afterReturnNothing() { + this.stubMockedCall(function () { + return undefined; + }); + } + + afterAction(action: Function) { + this.stubMockedCall(action); + } + + afterThrow(msg: string) { + this.stubMockedCall(function () { + throw msg; + }); + } + + clear(obj?: any) { + this.mocker.clear(obj); + } +} + +export default ExtendInterface; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.js new file mode 100644 index 00000000000..c1ca51614ab --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.js @@ -0,0 +1,253 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import ExtendInterface from "./ExtendInterface.js"; +import VerificationMode from "./VerificationMode.js"; +import { ArgumentMatchers } from "./ArgumentMatchers.js"; +class MockKit { + constructor() { + this.mFunctions = []; + this.stubs = new Map(); + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + this.mFunctions = []; + this.stubs = new Map(); + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + init() { + this.reset(); + } + reset() { + this.mFunctions = []; + this.stubs = new Map(); + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + clearAll() { + this.reset(); + } + clear(obj) { + if (!obj) throw Error("Please enter an object to be cleaned"); + if (typeof (obj) !== 'object' && typeof (obj) !== 'function') throw new Error('Not a object or static class'); + this.recordMockedMethod.forEach(function (value, key, map) { + if (key) { + obj[key] = value; + } + }); + } + ignoreMock(obj, method) { + if (typeof (obj) !== 'object' && typeof (obj) !== 'function') throw new Error('Not a object or static class'); + if (typeof (method) !== 'function') throw new Error('Not a function'); + let og = this.recordMockedMethod.get(method.propName); + if (og) { + obj[method.propName] = og; + this.recordMockedMethod.set(method.propName, undefined); + } + } + extend(dest, source) { + dest["stub"] = source["stub"]; + dest["afterReturn"] = source["afterReturn"]; + dest["afterReturnNothing"] = source["afterReturnNothing"]; + dest["afterAction"] = source["afterAction"]; + dest["afterThrow"] = source["afterThrow"]; + dest["stubMockedCall"] = source["stubMockedCall"]; + dest["clear"] = source["clear"]; + return dest; + } + stubApply(f, params, returnInfo) { + let values = this.stubs.get(f); + if (!values) { + values = new Map(); + } + let key = params[0]; + if (typeof key === "undefined") { + key = "anonymous-mock-" + f.propName; + } + let matcher = new ArgumentMatchers(); + if (matcher.matcheStubKey(key)) { + key = matcher.matcheStubKey(key); + if (key) { + this.currentSetKey.set(f, key); + } + } + values.set(key, returnInfo); + this.stubs.set(f, values); + } + getReturnInfo(f, params) { + let values = this.stubs.get(f); + if (!values) { + return undefined; + } + let retrunKet = params[0]; + if (typeof retrunKet === "undefined") { + retrunKet = "anonymous-mock-" + f.propName; + } + let stubSetKey = this.currentSetKey.get(f); + + if (stubSetKey && (typeof (retrunKet) !== "undefined")) { + retrunKet = stubSetKey; + } + let matcher = new ArgumentMatchers(); + if (matcher.matcheReturnKey(params[0], undefined, stubSetKey) && matcher.matcheReturnKey(params[0], undefined, stubSetKey) !== stubSetKey) { + retrunKet = params[0]; + } + values.forEach(function (value, key, map) { + if (ArgumentMatchers.isRegExp(key) && matcher.matcheReturnKey(params[0], key)) { + retrunKet = key; + } + }); + return values.get(retrunKet); + } + findName(obj, value) { + let properties = this.findProperties(obj); + let name = ''; + properties.filter((item) => (item !== 'caller' && item !== 'arguments')).forEach(function (va1, idx, array) { + if (obj[va1] === value) { + name = va1; + } + }); + return name; + } + isFunctionFromPrototype(f, container, propName) { + if (container.constructor !== Object && container.constructor.prototype !== container) { + return container.constructor.prototype[propName] === f; + } + return false; + } + findProperties(obj, ...arg) { + function getProperty(new_obj) { + if (new_obj.__proto__ === null) { + return []; + } + let properties = Object.getOwnPropertyNames(new_obj); + return [...properties, ...getProperty(new_obj.__proto__)]; + } + return getProperty(obj); + } + recordMethodCall(originalMethod, args) { + originalMethod['getName'] = function () { + return this.name || this.toString().match(/function\s*([^(]*)\(/)[1]; + }; + let name = originalMethod.getName(); + let arglistString = name + '(' + Array.from(args).toString() + ')'; + let records = this.recordCalls.get(arglistString); + if (!records) { + records = 0; + } + records++; + this.recordCalls.set(arglistString, records); + } + mockFunc(originalObject, originalMethod) { + let tmp = this; + this.originalMethod = originalMethod; + const _this = this; + let f = function () { + let args = arguments; + let action = tmp.getReturnInfo(f, args); + if (originalMethod) { + tmp.recordMethodCall(originalMethod, args); + } + if (action) { + return action.apply(_this, args); + } + }; + f.container = null || originalObject; + f.original = originalMethod || null; + if (originalObject && originalMethod) { + if (typeof (originalMethod) != 'function') + throw new Error('Not a function'); + var name = this.findName(originalObject, originalMethod); + originalObject[name] = f; + this.recordMockedMethod.set(name, originalMethod); + f.propName = name; + f.originalFromPrototype = this.isFunctionFromPrototype(f.original, originalObject, f.propName); + } + f.mocker = this; + this.mFunctions.push(f); + this.extend(f, new ExtendInterface(this)); + return f; + } + verify(methodName, argsArray) { + if (!methodName) { + throw Error("not a function name"); + } + let a = this.recordCalls.get(methodName + '(' + argsArray.toString() + ')'); + return new VerificationMode(a ? a : 0); + } + mockObject(object) { + if (!object || typeof object === "string") { + throw Error(`this ${object} cannot be mocked`); + } + const _this = this; + let mockedObject = {}; + let keys = Reflect.ownKeys(object); + keys.filter(key => (typeof Reflect.get(object, key)) === 'function') + .forEach((key) => { + mockedObject[key] = object[key]; + mockedObject[key] = _this.mockFunc(mockedObject, mockedObject[key]); + }); + return mockedObject; + } +} +function ifMockedFunction(f) { + if (Object.prototype.toString.call(f) != "[object Function]" && + Object.prototype.toString.call(f) != "[object AsyncFunction]") { + throw Error("not a function"); + } + if (!f.stub) { + throw Error("not a mock function"); + } + return true; +} +function when(f) { + if (ifMockedFunction(f)) { + return f.stub.bind(f); + } +} +function MockSetup(target, propertyName, descriptor) { + const aboutToAppearOrigin = target.aboutToAppear; + const setup = descriptor.value; + target.aboutToAppear = function (...args) { + if (target.__Param) { // copy attributes and params of the original context + try { + const map = target.__Param; + for (const [key, val] of map) { + this[key] = val; // 'this' refers to context of current function + } + } + catch (e) { + throw new Error(`Mock setup param error: ${e}`); + } + } + if (setup) { // apply the mock content + try { + setup.apply(this); + } + catch (e) { + throw new Error(`Mock setup apply error: ${e}`); + } + } + if (aboutToAppearOrigin) { // append to aboutToAppear function of the original context + aboutToAppearOrigin.apply(this, args); + } + }; +} +export { MockSetup, MockKit, when }; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.ts new file mode 100644 index 00000000000..2807643e29d --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/MockKit.ts @@ -0,0 +1,294 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import ExtendInterface from "./ExtendInterface.js"; +import VerificationMode from "./VerificationMode.js"; +import { ArgumentMatchers } from "./ArgumentMatchers.js"; + +interface IFunction extends Function { + container: any; + original: any; + propName: string; + originalFromPrototype: boolean + mocker: MockKit +} + +class MockKit { + + private mFunctions:Array = []; + private stubs = new Map(); + private recordCalls = new Map(); + private currentSetKey = new Map(); + private mockObj = null; + private recordMockedMethod = new Map(); + private originalMethod: any; + + constructor() { + this.mFunctions = []; + this.stubs = new Map(); + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + + init() { + this.reset(); + } + + reset() { + this.mFunctions = []; + this.stubs = new Map() + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + + clearAll() { + this.reset(); + } + + clear(obj: any) { + if (!obj) throw Error("Please enter an object to be cleaned"); + if (typeof (obj) != 'object') throw new Error('Not a object'); + this.recordMockedMethod.forEach(function (value, key, map) { + if (key) { + obj[key] = value; + } + }); + } + + ignoreMock(obj:any, method: any) { + if (typeof (obj) != 'object') throw new Error('Not a object'); + if (typeof (method) != 'function') throw new Error('Not a function'); + let og = this.recordMockedMethod.get(method.propName); + if (og) { + obj[method.propName] = og; + this.recordMockedMethod.set(method.propName, undefined); + } + } + + extend(dest: any, source:any) { + dest["stub"] = source["stub"]; + dest["afterReturn"] = source["afterReturn"]; + dest["afterReturnNothing"] = source["afterReturnNothing"]; + dest["afterAction"] = source["afterAction"]; + dest["afterThrow"] = source["afterThrow"]; + dest["stubMockedCall"] = source["stubMockedCall"]; + dest["clear"] = source["clear"]; + return dest; + } + + stubApply(f: any, params:any, returnInfo:any) { + let values = this.stubs.get(f); + if (!values) { + values = new Map(); + } + let key = params[0]; + if (typeof key == "undefined") { + key = "anonymous-mock-" + f.propName; + } + let matcher = new ArgumentMatchers(); + if (matcher.matcheStubKey(key)) { + key = matcher.matcheStubKey(key); + if (key) { + this.currentSetKey.set(f, key); + } + } + values.set(key, returnInfo); + this.stubs.set(f, values); + } + + getReturnInfo(f: any, params:any) { + let values = this.stubs.get(f); + if (!values) { + return undefined; + } + let retrunKet = params[0]; + if (typeof retrunKet == "undefined") { + retrunKet = "anonymous-mock-" + f.propName; + } + let stubSetKey = this.currentSetKey.get(f); + + if (stubSetKey && (typeof (retrunKet) != "undefined")) { + retrunKet = stubSetKey; + } + let matcher = new ArgumentMatchers(); + if (matcher.matcheReturnKey(params[0], undefined, stubSetKey) && matcher.matcheReturnKey(params[0], undefined, stubSetKey) != stubSetKey) { + retrunKet = params[0]; + } + + values.forEach(function (value: any, key: any, map: any) { + if (ArgumentMatchers.isRegExp(key) && matcher.matcheReturnKey(params[0], key)) { + retrunKet = key; + } + }); + + return values.get(retrunKet); + } + + findName(obj: any, value: any) { + let properties = this.findProperties(obj); + let name = ''; + properties.filter((item:any) => (item !== 'caller' && item !== 'arguments')).forEach( + function (va1:any, idx:any, array:any) { + if (obj[va1] === value) { + name = va1; + } + } + ); + return name; + } + + isFunctionFromPrototype(f: Function, container:Function, propName: string) { + if (container.constructor != Object && container.constructor.prototype !== container) { + return container.constructor.prototype[propName] === f; + } + return false; + } + + findProperties(obj: any, ...arg: Array) { + function getProperty(new_obj:any): Array { + if (new_obj.__proto__ === null) { + return []; + } + let properties = Object.getOwnPropertyNames(new_obj); + return [...properties, ...getProperty(new_obj.__proto__)]; + } + return getProperty(obj); + } + + recordMethodCall(originalMethod: any, args: any) { + originalMethod['getName'] = function () { + return this.name || this.toString().match(/function\s*([^(]*)\(/)[1]; + } + let name = originalMethod.getName(); + let arglistString = name + '(' + Array.from(args).toString() + ')'; + let records = this.recordCalls.get(arglistString); + if (!records) { + records = 0; + } + records++; + this.recordCalls.set(arglistString, records); + } + + mockFunc(originalObject:any, originalMethod:any) { + let tmp = this; + this.originalMethod = originalMethod; + const _this = this; + let f:any = function () { + let args = arguments; + let action = tmp.getReturnInfo(f, args); + if (originalMethod) { + tmp.recordMethodCall(originalMethod, args); + } + if (action) { + return action.apply(_this, args); + } + }; + + f.container = null || originalObject; + f.original = originalMethod || null; + + if (originalObject && originalMethod) { + if (typeof (originalMethod) != 'function') throw new Error('Not a function'); + var name = this.findName(originalObject, originalMethod); + originalObject[name] = f; + this.recordMockedMethod.set(name, originalMethod); + f.propName = name; + f.originalFromPrototype = this.isFunctionFromPrototype(f.original, originalObject, f.propName); + } + f.mocker = this; + this.mFunctions.push(f); + this.extend(f, new ExtendInterface(this)); + return f; + } + + verify(methodName:any, argsArray:any) { + if (!methodName) { + throw Error("not a function name"); + } + let a = this.recordCalls.get(methodName + '(' + argsArray.toString() + ')'); + return new VerificationMode(a ? a : 0); + } + + mockObject(object: any) { + if (!object || typeof object === "string") { + throw Error(`this ${object} cannot be mocked`); + } + const _this = this; + let mockedObject:any = {}; + let keys = Reflect.ownKeys(object); + keys.filter(key => (typeof Reflect.get(object, key)) === 'function') + .forEach((key:any) => { + mockedObject[key] = object[key]; + mockedObject[key] = _this.mockFunc(mockedObject, mockedObject[key]); + }); + return mockedObject; + } +} + +function ifMockedFunction(f: any) { + if (Object.prototype.toString.call(f) != "[object Function]" && + Object.prototype.toString.call(f) != "[object AsyncFunction]") { + throw Error("not a function"); + } + if (!f.stub) { + throw Error("not a mock function"); + } + return true; +} + +function when(f: any) { + if (ifMockedFunction(f)) { + return f.stub.bind(f); + } +} + +function MockSetup(target: Object, propertyName: string | Symbol, descriptor: TypedPropertyDescriptor<() => void>): void { + const aboutToAppearOrigin = target.aboutToAppear; + const setup = descriptor.value; + target.aboutToAppear = function (...args: any[]) { + if (target.__Param) { // copy attributes and params of the original context + try { + const map = target.__Param as Map; + for (const [key, val] of map) { + this[key] = val; // 'this' refers to context of current function + } + } catch (e) { + throw new Error(`Mock setup param error: ${e}`); + } + } + + if (setup) { // apply the mock content + try { + setup.apply(this); + } catch (e) { + throw new Error(`Mock setup apply error: ${e}`); + } + } + + if (aboutToAppearOrigin) { // append to aboutToAppear function of the original context + aboutToAppearOrigin.apply(this, args); + } + } +} + +export { + MockSetup, + MockKit, + when +}; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.js new file mode 100644 index 00000000000..21e10fb8037 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.js @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +class VerificationMode { + constructor(times) { + this.doTimes = times; + } + times(count) { + if (count !== this.doTimes) { + throw Error(`expect ${count} actual ${this.doTimes}`); + } + } + never() { + if (this.doTimes !== 0) { + throw Error(`expect 0 actual ${this.doTimes}`); + } + } + once() { + if (this.doTimes !== 1) { + throw Error(`expect 1 actual ${this.doTimes}`); + } + } + atLeast(count) { + if (count > this.doTimes) { + throw Error('failed ' + count + ' greater than the actual execution times of method'); + } + } + atMost(count) { + if (count < this.doTimes) { + throw Error('failed ' + count + ' less than the actual execution times of method'); + } + } +} +export default VerificationMode; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.ts new file mode 100644 index 00000000000..93d976ce73b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/mock/VerificationMode.ts @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +class VerificationMode { + + private doTimes: number + + constructor(times: number) { + this.doTimes = times; + } + + times(count: number) { + if(count !== this.doTimes) { + throw Error(`expect ${count} actual ${this.doTimes}`); + } + } + + never() { + if (this.doTimes !== 0) { + throw Error(`expect 0 actual ${this.doTimes}`); + } + } + + once() { + if (this.doTimes !== 1) { + throw Error(`expect 1 actual ${this.doTimes}`); + } + } + + atLeast(count: number) { + if (count > this.doTimes) { + throw Error('failed ' + count + ' greater than the actual execution times of method'); + } + } + + atMost(count: number) { + if (count < this.doTimes) { + throw Error('failed ' + count + ' less than the actual execution times of method'); + } + } +} + +export default VerificationMode; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/module.json b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/module.json new file mode 100644 index 00000000000..384ae72f9bd --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/main/module.json @@ -0,0 +1,22 @@ +{ + "app": { + "bundleName": "com.example.hamock", + "debug": true, + "versionCode": 1000000, + "versionName": "1.0.0", + "minAPIVersion": 9, + "targetAPIVersion": 9, + "apiReleaseType": "Release" + }, + "module": { + "name": "hamock", + "type": "har", + "deviceTypes": [ + "default", + "tablet", + "tv", + "wearable", + "car" + ] + } +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/res/schemas/mock-config-json5-schema.json b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/res/schemas/mock-config-json5-schema.json new file mode 100644 index 00000000000..96036325a31 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hamock@1.0.0/oh_modules/@ohos/hamock/src/res/schemas/mock-config-json5-schema.json @@ -0,0 +1,25 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "JSON schema for mock-config.json5 file", + "definitions": { + "sourceRedirection": { + "description": "A source redirection for mocked module.", + "type": "object", + "required": [ + "source" + ], + "properties": { + "source": { + "type": "string", + "maxLength": 128, + "minLength": 1 + } + } + } + }, + "patternProperties": { + ".+": { + "$ref": "#/definitions/sourceRedirection" + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/BuildProfile.ets b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/BuildProfile.ets new file mode 100644 index 00000000000..3da4b66931c --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '1.0.24'; +export const BUILD_MODE_NAME = 'debug'; +export const DEBUG = true; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/CHANGELOG.md b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/CHANGELOG.md new file mode 100644 index 00000000000..3953f9d91b5 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/CHANGELOG.md @@ -0,0 +1,33 @@ +### 1.0.24 +- æç¤ºä¿¡æ¯ä¼˜åŒ– +### 1.0.23 +- 断言错误æç¤ºä¿¡æ¯ä¼˜åŒ– +### 1.0.22 +- mockäº”å‚æ•°å¤±è´¥é—®é¢˜ä¿®å¤ +### 1.0.21 +- mock支æŒå¤šå‚æ•° +- describeä¸­å¼‚æ­¥å‡½æ•°æŠ›å‡ºæ—¥å¿—ä¿¡æ¯ +- ä¿®å¤å¤šæµ‹è¯•套时,执行å•个测试套会打å°å…¶ä»–æµ‹è¯•å¥—çš„æ—¥å¿—ä¿¡æ¯ +## 1.0.14 +- å †æ ˆä¿¡æ¯æ‰“å°åˆ°cmd +## 1.0.15 +- 支æŒèŽ·å–æµ‹è¯•代ç çš„å¤±è´¥å †æ ˆä¿¡æ¯ +- mock代ç è¿ç§»è‡³harmock包 +- 适é…arkts语法 +- ä¿®å¤è¦†ç›–率数æ®å®¹æ˜“截断的bug +## 1.0.16 +- 修改覆盖率文件生æˆåŠŸèƒ½ +- ä¿®æ”¹é™æ€æ–¹æ³•无法ignoreMock函数 + ## 1.0.17 +- 修改not断言失败æç¤ºæ—¥å¿— +- 自定义错误messageä¿¡æ¯ +- 添加xdescribe, xit API功能 + ## 1.0.18 +- 添加全局å˜é‡å­˜å‚¨API get set +- 自定义断言功能 +## 1.0.18-rc.0 +添加框架worker执行能力 +## 1.0.19 +è§„èŒƒæ—¥å¿—æ ¼å¼ +# 1.0.20 +代ç å‘Šè­¦æ•´æ”¹ \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/LICENSE b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/LICENSE new file mode 100644 index 00000000000..4947287f7b5 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/LICENSE @@ -0,0 +1,177 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/README.md b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/README.md new file mode 100644 index 00000000000..c7a16a7eead --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/README.md @@ -0,0 +1,229 @@ +
Hypium
+
A unit test framework for OpenHarmonyOS application
+ +## Hypium是什么? +*** +- Hypium是OpenHarmony上的测试框架,æä¾›æµ‹è¯•ç”¨ä¾‹ç¼–å†™ã€æ‰§è¡Œã€ç»“果显示能力,用于OpenHarmony系统应用接å£ä»¥åŠåº”ç”¨ç•Œé¢æµ‹è¯•。 +- Hypium结构化模型:hypium工程主è¦ç”±List.test.js与TestCase.test.js组æˆã€‚ +``` +rootProject // Hypium工程根目录 +├── moduleA +│   ├── src +│      ├── main // 被测试应用目录 +│      ├── ohosTest // 测试用例目录 +│         ├── js/ets +│            └── test +│               └── List.test.js // 测试用例加载脚本,ets目录下为.etsåŽç¼€ +│               └── TestCase.test.js // 测试用例脚本,ets目录下为.etsåŽç¼€ +└── moduleB + ... +│               └── List.test.js // 测试用例加载脚本,ets目录下为.etsåŽç¼€ +│               └── TestCase.test.js // 测试用例脚本,ets目录下为.etsåŽç¼€ +``` + +## 安装使用 + +- æ–¹å¼ä¸€ +```javascript +ohpm i @ohos/hypium +``` +- æ–¹å¼äºŒ +*** +- 在DevEco Studio内使用Hypium +- 工程级oh-package.json5内é…ç½®: +```json +"dependencies": { + "@ohos/hypium": "1.0.24" +} +``` +注: +hypiumæœåŠ¡äºŽOpenHarmonyOSåº”ç”¨å¯¹å¤–æŽ¥å£æµ‹è¯•ã€ç³»ç»Ÿå¯¹å¤–æŽ¥å£æµ‹è¯•(SDK中接å£ï¼‰ï¼Œå®ŒæˆHAP自动化测试。详细指导: +[Deveco Studio](https://developer.harmonyos.com/cn/develop/deveco-studio) + +#### 通用语法 + +- 测试用例采用业内通用语法,describe代表一个测试套, it代表一æ¡ç”¨ä¾‹ã€‚ + +| No. | API | 功能说明 | +|-----| ----------------- |------------------------------------------------------------------------| +| 1 | describe | 定义一个测试套,支æŒä¸¤ä¸ªå‚数:测试套å称和测试套函数。其中测试套函数ä¸èƒ½æ˜¯å¼‚步函数 | +| 2 | beforeAll | 在测试套内定义一个预置æ¡ä»¶ï¼Œåœ¨æ‰€æœ‰æµ‹è¯•ç”¨ä¾‹å¼€å§‹å‰æ‰§è¡Œä¸”仅执行一次,支æŒä¸€ä¸ªå‚数:预置动作函数。 | +| 3 | beforeEach | 在测试套内定义一个å•元预置æ¡ä»¶ï¼Œåœ¨æ¯æ¡æµ‹è¯•ç”¨ä¾‹å¼€å§‹å‰æ‰§è¡Œï¼Œæ‰§è¡Œæ¬¡æ•°ä¸Žit定义的测试用例数一致,支æŒä¸€ä¸ªå‚数:预置动作函数。 | +| 4 | afterEach | 在测试套内定义一个å•å…ƒæ¸…ç†æ¡ä»¶ï¼Œåœ¨æ¯æ¡æµ‹è¯•用例结æŸåŽæ‰§è¡Œï¼Œæ‰§è¡Œæ¬¡æ•°ä¸Žit定义的测试用例数一致,支æŒä¸€ä¸ªå‚数:清ç†åŠ¨ä½œå‡½æ•°ã€‚ | +| 5 | afterAll | åœ¨æµ‹è¯•å¥—å†…å®šä¹‰ä¸€ä¸ªæ¸…ç†æ¡ä»¶ï¼Œåœ¨æ‰€æœ‰æµ‹è¯•用例结æŸåŽæ‰§è¡Œä¸”仅执行一次,支æŒä¸€ä¸ªå‚数:清ç†åŠ¨ä½œå‡½æ•°ã€‚ | +| 6 | beforeItSpecified | @since1.0.15在测试套内定义一个å•元预置æ¡ä»¶ï¼Œä»…åœ¨æŒ‡å®šæµ‹è¯•ç”¨ä¾‹å¼€å§‹å‰æ‰§è¡Œï¼Œæ”¯æŒä¸¤ä¸ªå‚数:å•个用例å称或用例å称数组ã€é¢„置动作函数。 | +| 7 | afterItSpecified | @since1.0.15在测试套内定义一个å•å…ƒæ¸…ç†æ¡ä»¶ï¼Œä»…在指定测试用例结æŸåŽæ‰§è¡Œï¼Œæ”¯æŒä¸¤ä¸ªå‚数:å•个用例å称或用例åç§°æ•°ç»„ã€æ¸…ç†åŠ¨ä½œå‡½æ•° | +| 8 | it | å®šä¹‰ä¸€æ¡æµ‹è¯•用例,支æŒä¸‰ä¸ªå‚数:用例åç§°ï¼Œè¿‡æ»¤å‚æ•°å’Œç”¨ä¾‹å‡½æ•°ã€‚ | +| 9 | expect | 支æŒboolç±»åž‹åˆ¤æ–­ç­‰å¤šç§æ–­è¨€æ–¹æ³•。 | +| 10 | xdescribe | @since1.0.17定义一个跳过的测试套,支æŒä¸¤ä¸ªå‚数:测试套å称和测试套函数。 | +| 11 | xit | @since1.0.17定义一æ¡è·³è¿‡çš„æµ‹è¯•用例,支æŒä¸‰ä¸ªå‚数:用例åç§°ï¼Œè¿‡æ»¤å‚æ•°å’Œç”¨ä¾‹å‡½æ•°ã€‚ | | + +#### 断言库 + +- 示例代ç ï¼š + +```javascript + expect(${actualvalue}).assertX(${expectvalue}) +``` + +- 断言功能列表: + +| No. | API | 功能说明 | +| :--- | :------------------------------- | ---------------------------------------------------------------------------------------------- | +| 1 | assertClose | 检验actualvalueå’Œexpectvalue(0)çš„æŽ¥è¿‘ç¨‹åº¦æ˜¯å¦æ˜¯expectValue(1) | +| 2 | assertContain | 检验actualvalue中是å¦åŒ…å«expectvalue | +| 3 | assertDeepEquals | @since1.0.4 检验actualvalueå’Œexpectvalue(0)æ˜¯å¦æ˜¯åŒä¸€ä¸ªå¯¹è±¡ | +| 4 | assertEqual | 检验actualvalue是å¦ç­‰äºŽexpectvalue[0] | +| 5 | assertFail | 抛出一个错误 | +| 6 | assertFalse | 检验actualvalueæ˜¯å¦æ˜¯false | +| 7 | assertTrue | 检验actualvalueæ˜¯å¦æ˜¯true | +| 8 | assertInstanceOf | 检验actualvalueæ˜¯å¦æ˜¯expectvalue类型 | +| 9 | assertLarger | 检验actualvalue是å¦å¤§äºŽexpectvalue | +| 10 | assertLess | 检验actualvalue是å¦å°äºŽexpectvalue | +| 11 | assertNaN | @since1.0.4 检验actualvalueæ˜¯å¦æ˜¯NaN | +| 12 | assertNegUnlimited | @since1.0.4 检验actualvalue是å¦ç­‰äºŽNumber.NEGATIVE_INFINITY | +| 13 | assertNull | 检验actualvalueæ˜¯å¦æ˜¯null | +| 14 | assertPosUnlimited | @since1.0.4 检验actualvalue是å¦ç­‰äºŽNumber.POSITIVE_INFINITY | +| 15 | assertPromiseIsPending | @since1.0.4 检验actualvalue是å¦å¤„于Pending状æ€ã€actualvalue为promse对象】 | +| 16 | assertPromiseIsRejected | @since1.0.4 检验actualvalue是å¦å¤„于Rejected状æ€ã€åŒ15】 | +| 17 | assertPromiseIsRejectedWith | @since1.0.4 检验actualvalue是å¦å¤„于Rejected状æ€ï¼Œå¹¶ä¸”比较执行的结果值ã€åŒ15】 | +| 18 | assertPromiseIsRejectedWithError | @since1.0.4 检验actualvalue是å¦å¤„于Rejected状æ€å¹¶æœ‰å¼‚å¸¸ï¼ŒåŒæ—¶æ¯”较异常的类型和message值ã€åŒ15】 | +| 19 | assertPromiseIsResolved | @since1.0.4 检验actualvalue是å¦å¤„于Resolved状æ€ã€åŒ15】 | +| 20 | assertPromiseIsResolvedWith | @since1.0.4 检验actualvalue是å¦å¤„于Resolved状æ€ï¼Œå¹¶ä¸”比较执行的结果值ã€åŒ15】 | +| 21 | assertThrowError | 检验actualvalue抛出Errorå†…å®¹æ˜¯å¦æ˜¯expectValue | +| 22 | assertUndefined | 检验actualvalueæ˜¯å¦æ˜¯undefined | +| 23 | not | @since1.0.4 断言结果å–å | +| 24 | message | @since1.0.17è‡ªå®šä¹‰æ–­è¨€å¼‚å¸¸ä¿¡æ¯ | + +示例代ç ï¼š + +```javascript + import { describe, it, expect } from '@ohos/hypium'; + + export default async function assertCloseTest() { + describe('assertClose', function () { + it('assertClose_success', 0, function () { + let a = 100; + let b = 0.1; + expect(a).assertClose(99, b); + }) + }) + } +``` + +#### 公共系统能力 + +| No. | API | 功能æè¿° | +| ---- | ------------------------------------------------------- | ------------------------------------------------------------ | +| 1 | existKeyword(keyword: string, timeout: number): boolean | @since1.0.3 hilog日志中查找指定字段是å¦å­˜åœ¨ï¼Œkeyword是待查找关键字,timeout为设置的查找时间 | +| 2 | actionStart(tag: string): void | @since1.0.3 cmd窗å£è¾“出开始tag | +| 3 | actionEnd(tag: string): void | @since1.0.3 cmd窗å£è¾“出结æŸtag | + +示例代ç ï¼š + +```javascript +import { describe, it, expect, SysTestKit} from '@ohos/hypium'; + +export default function existKeywordTest() { + describe('existKeywordTest', function () { + it('existKeyword',DEFAULT, async function () { + console.info("HelloTest"); + let isExist = await SysTestKit.existKeyword('HelloTest'); + console.info('isExist ------>' + isExist); + }) + }) +} +``` +```javascript +import { describe, it, expect, SysTestKit} from '@ohos/hypium'; + +export default function actionTest() { + describe('actionTest', function () { + it('existKeyword',DEFAULT, async function () { + let tag = '[MyTest]'; + SysTestKit.actionStart(tag); + //do something + SysTestKit.actionEnd(tag); + }) + }) +} +``` + +#### 专项能力 + +- 测试用例属性筛选能力:hypiumæ”¯æŒæ ¹æ®ç”¨ä¾‹å±žæ€§ç­›é€‰æ‰§è¡ŒæŒ‡å®šæµ‹è¯•ç”¨ä¾‹ï¼Œä½¿ç”¨æ–¹å¼æ˜¯å…ˆåœ¨æµ‹è¯•用例上标记用例属性åŽï¼Œå†åœ¨æµ‹è¯•应用的å¯åЍshellå‘½ä»¤åŽæ–°å¢ž" -s ${Key} ${Value}"。 + +| Key | å«ä¹‰è¯´æ˜Ž | Valueå–值范围 | +| -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | +| level | 用例级别 | "0","1","2","3","4", 例如:-s level 1 | +| size | 用例粒度 | "small","medium","large", 例如:-s size small | +| testType | 用例测试类型 | "function","performance","power","reliability","security","global","compatibility","user","standard","safety","resilience", 例如:-s testType function | + +ç¤ºä¾‹ä»£ç  + +```javascript +import { describe, it, expect, TestType, Size, Level } from '@ohos/hypium'; + +export default function attributeTest() { + describe('attributeTest', function () { + it("testAttributeIt", TestType.FUNCTION | Size.SMALLTEST | Level.LEVEL0, function () { + console.info('Hello Test'); + }) + }) +} +``` + +示例命令 +```shell +XX -s level 1 -s size small -s testType function +``` +è¯¥å‘½ä»¤çš„ä½œç”¨æ˜¯ï¼šç­›é€‰æµ‹è¯•åº”ç”¨ä¸­åŒæ—¶æ»¡è¶³a)用例级别是1 b)用例粒度是small c)用例测试类型是function 三个æ¡ä»¶çš„用例执行。 + +- 测试套/测试用例å称筛选能力(测试套与用例å称用“#â€å·è¿žæŽ¥ï¼Œå¤šä¸ªç”¨â€œ,â€è‹±æ–‡é€—å·åˆ†éš”) + +| Key | å«ä¹‰è¯´æ˜Ž | Valueå–值范围 | +| -------- | ----------------------- | -------------------------------------------------------------------------------------------- | +| class | æŒ‡å®šè¦æ‰§è¡Œçš„æµ‹è¯•套&用例 | ${describeName}#${itName},${describeName} , 例如:-s class attributeTest#testAttributeIt | +| notClass | æŒ‡å®šä¸æ‰§è¡Œçš„æµ‹è¯•套&用例 | ${describeName}#${itName},${describeName} , 例如:-s notClass attributeTest#testAttributeIt | + +示例命令 +```shell +XX -s class attributeTest#testAttributeIt,abilityTest#testAbilityIt +``` +该命令的作用是:筛选测试应用中attributeTest测试套下的testAttributeIt测试用例,abilityTest测试套下的testAbilityItæµ‹è¯•ç”¨ä¾‹ï¼Œåªæ‰§è¡Œè¿™ä¸¤æ¡ç”¨ä¾‹ã€‚ + +- 其他能力 + +| 能力项 | Key | å«ä¹‰è¯´æ˜Ž | Valueå–值范围 | +| ------------ | ------- | ---------------------------- | ---------------------------------------------- | +| éšæœºæ‰§è¡Œèƒ½åŠ› | random | 测试套&æµ‹è¯•ç”¨ä¾‹éšæœºæ‰§è¡Œ | true, ä¸ä¼ å‚默认为false, 例如:-s random true | +| 空跑能力 | dryRun | æ˜¾ç¤ºè¦æ‰§è¡Œçš„æµ‹è¯•用例信æ¯å…¨é›† | true , ä¸ä¼ å‚默认为false,例如:-s dryRun true | +| 异步超时能力 | timeout | 异步用例执行的超时时间 | 正整数 , å•ä½ms,例如:-s timeout 5000 | + +##### 约æŸé™åˆ¶ +éšæœºæ‰§è¡Œèƒ½åŠ›å’Œç©ºè·‘èƒ½åŠ›ä»Žnpm包1.0.3ç‰ˆæœ¬å¼€å§‹æ”¯æŒ + +#### Mock能力 + +##### 约æŸé™åˆ¶ + +å•元测试框架Mock能力从npm包[1.0.1版本](https://repo.harmonyos.com/#/cn/application/atomService/@ohos%2Fhypium/v/1.0.1)å¼€å§‹æ”¯æŒ + +## çº¦æŸ + +*** + 本模å—首批接å£ä»ŽOpenHarmony SDK API version 8开始支æŒã€‚ + +## Hypium开放能力éšç§å£°æ˜Ž + +- æˆ‘ä»¬å¦‚ä½•æ”¶é›†å’Œä½¿ç”¨æ‚¨çš„ä¸ªäººä¿¡æ¯ + 您在使用集æˆäº†Hypium开放能力的测试应用时,Hypiumä¸ä¼šå¤„ç†æ‚¨çš„个人信æ¯ã€‚ +- SDK处ç†çš„ä¸ªäººä¿¡æ¯ + 䏿¶‰åŠã€‚ +- SDK集æˆç¬¬ä¸‰æ–¹æœåŠ¡å£°æ˜Ž + 䏿¶‰åŠã€‚ +- SDKæ•°æ®å®‰å…¨ä¿æŠ¤ + 䏿¶‰åŠã€‚ +- SDK版本更新声明 + ä¸ºäº†å‘æ‚¨æä¾›æœ€æ–°çš„æœåŠ¡ï¼Œæˆ‘ä»¬ä¼šä¸æ—¶æ›´æ–°Hypium版本。我们强烈建议开å‘者集æˆä½¿ç”¨æœ€æ–°ç‰ˆæœ¬çš„Hypium。 + diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/build-profile.json5 b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/build-profile.json5 new file mode 100644 index 00000000000..e6773f9f5d7 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/build-profile.json5 @@ -0,0 +1,31 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + }, + }, + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest" + } + ] +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/consumer-rules.txt b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/consumer-rules.txt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/hvigorfile.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/hvigorfile.ts new file mode 100644 index 00000000000..805c5d7f680 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/hvigorfile.ts @@ -0,0 +1,6 @@ +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.d.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.d.ts new file mode 100644 index 00000000000..7272b5fa839 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.d.ts @@ -0,0 +1,150 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export const DEFAULT = 0B0000 + +export const when: when; + +export enum TestType { + FUNCTION = 0B1, + PERFORMANCE = 0B1 << 1, + POWER = 0B1 << 2, + RELIABILITY = 0B1 << 3, + SECURITY = 0B1 << 4, + GLOBAL = 0B1 << 5, + COMPATIBILITY = 0B1 << 6, + USER = 0B1 << 7, + STANDARD = 0B1 << 8, + SAFETY = 0B1 << 9, + RESILIENCE = 0B1 << 10 +} + +export enum Size { + SMALLTEST = 0B1 << 16, + MEDIUMTEST = 0B1 << 17, + LARGETEST = 0B1 << 18 +} + +export enum Level { + LEVEL0 = 0B1 << 24, + LEVEL1 = 0B1 << 25, + LEVEL2 = 0B1 << 26, + LEVEL3 = 0B1 << 27, + LEVEL4 = 0B1 << 28 +} +export { xdescribe, xit, describe, it } from './index'; + + + +export function beforeItSpecified(testCaseNames: Array | string, callback: Function): void + +export function afterItSpecified(testCaseNames: Array | string, callback: Function): void + +export function beforeEach(callback: Function): void + +export function afterEach(callback: Function): void + +export function beforeAll(callback: Function): void + +export function afterAll(callback: Function): void + + +export interface Assert { + assertClose(expectValue: number, precision: number): void + assertContain(expectValue: any): void + assertEqual(expectValue: any): void + assertFail(): void + assertFalse(): void + assertTrue(): void + assertInstanceOf(expectValue: string): void + assertLarger(expectValue: number): void + assertLess(expectValue: number): void + assertNull(): void + assertThrowError(expectValue: string | Function): void + assertUndefined(): void + assertLargerOrEqual(expectValue: number): void + assertLessOrEqual(expectValue: number): void + assertNaN(): void + assertNegUnlimited(): void + assertPosUnlimited(): void + not(): Assert; + assertDeepEquals(expectValue: any): void + assertPromiseIsPending(): Promise + assertPromiseIsRejected(): Promise + assertPromiseIsRejectedWith(expectValue?: any): Promise + assertPromiseIsRejectedWithError(...expectValue): Promise + assertPromiseIsResolved(): Promise + assertPromiseIsResolvedWith(expectValue?: any): Promise + message(msg: string): Assert +} + +export function expect(actualValue?: any): Assert + +export class ArgumentMatchers { + static any; + static anyString; + static anyBoolean; + static anyNumber; + static anyObj; + static anyFunction; + static matchRegexs(Regex: RegExp): void +} + +declare interface when { + afterReturn(value: any): any + afterReturnNothing(): undefined + afterAction(action: any): any + afterThrow(e_msg: string): string + (argMatchers?: any): when; +} + +export interface VerificationMode { + times(count: Number): void + never(): void + once(): void + atLeast(count: Number): void + atMost(count: Number): void +} + +export class MockKit { + constructor() + mockFunc(obj: Object, func: Function): Function + mockObject(obj: Object): Object + verify(methodName: String, argsArray: Array): VerificationMode + ignoreMock(obj: Object, func: Function): void + clear(obj: Object): void + clearAll(): void +} + +export class SysTestKit { + static getDescribeName(): string; + static getItName(): string; + static getItAttribute(): TestType | Size | Level + static actionStart(tag: string): void + static actionEnd(tag: string): void + static existKeyword(keyword: string, timeout?: number): boolean +} + +export class Hypium { + static setData(data: { [key: string]: any }): void + static setTimeConfig(systemTime: any) + static hypiumTest(abilityDelegator: any, abilityDelegatorArguments: any, testsuite: Function): void + static set(key: string, value: any): void + static get(key: string): any + static registerAssert(customAssertion: Function): void + static unregisterAssert(customAssertion: string | Function): void + static hypiumWorkerTest(abilityDelegator: Object, abilityDelegatorArguments: Object, testsuite: Function, workerPort: Object): void; + static hypiumInitWorkers(abilityDelegator: Object, scriptURL: string, workerNum: number, params: Object): void; +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ets b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ets new file mode 100644 index 00000000000..98b0ec55fe1 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ets @@ -0,0 +1,137 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import Core from './src/main/core'; +import {TestType, Size, Level, DEFAULT} from './src/main/Constant'; +import DataDriver from './src/main/module/config/DataDriver'; +import ExpectExtend from './src/main/module/assert/ExpectExtend'; +import OhReport from './src/main/module/report/OhReport'; +export { xdescribe, xit, describe, it } from './index.ts'; + +export declare class Hypium { + static setData(data: Object): void + static setTimeConfig(systemTime: Object): void + static hypiumTest(abilityDelegator: Object, abilityDelegatorArguments: Object, testsuite: Function): void + static set(key: string, value: Object): void + static get(key: string): Object + static registerAssert(customAssertion: Function): void + static unregisterAssert(customAssertion: string | Function): void + static hypiumWorkerTest(abilityDelegator: Object, abilityDelegatorArguments: Object, + testsuite: Function, workerPort: Object): void; + static hypiumInitWorkers(abilityDelegator: Object, scriptURL: string, workerNum: number, params: Object): void; +} + +export { + Core, + DataDriver, + ExpectExtend, + OhReport, + TestType, + Size, + Level, + DEFAULT +}; + +type allExpectType = Object | undefined | null + +export declare function beforeItSpecified(testCaseNames: Array | string, callback: Function): void + +export declare function afterItSpecified(testCaseNames: Array | string, callback: Function): void + +export declare function beforeEach(callback: Function): void + +export declare function afterEach(callback: Function): void + +export declare function beforeAll(callback: Function): void + +export declare function afterAll(callback: Function): void + +export declare interface Assert { + assertClose(expectValue: number, precision: number): void + assertContain(expectValue: allExpectType): void + assertEqual(expectValue: allExpectType): void + assertFail(): void + assertFalse(): void + assertTrue(): void + assertInstanceOf(expectValue: string): void + assertLarger(expectValue: number): void + assertLess(expectValue: number): void + assertNull(): void + assertThrowError(expectValue: string | Function): void + assertUndefined(): void + assertLargerOrEqual(expectValue: number):void + assertLessOrEqual(expectValue: number):void + assertNaN():void + assertNegUnlimited(): void + assertPosUnlimited(): void + not(): Assert; + assertDeepEquals(expectValue: allExpectType):void + assertPromiseIsPending(): Promise + assertPromiseIsRejected(): Promise + assertPromiseIsRejectedWith(expectValue?: allExpectType): Promise + assertPromiseIsRejectedWithError(...expectValue: allExpectType[]): Promise + assertPromiseIsResolved(): Promise + assertPromiseIsResolvedWith(expectValue?: allExpectType): Promise + message(msg: string): Assert +} + +export declare function expect(actualValue?: allExpectType): Assert + +export declare class ArgumentMatchers { + public static any: allExpectType; + public static anyString: string; + public static anyBoolean: Boolean; + public static anyNumber: Number; + public static anyObj: Object; + public static anyFunction: Function; + public static matchRegexs(regex: RegExp): void +} + +declare interface whenResult { + afterReturn: (value: allExpectType) => allExpectType + afterReturnNothing: () => undefined + afterAction: (action: allExpectType) => allExpectType + afterThrow: (e_msg: string) => string +} + +export declare function when(f:Function): (...args: (allExpectType | void)[]) => whenResult + +export declare interface VerificationMode { + times(count: Number): void + never(): void + once(): void + atLeast(count: Number): void + atMost(count: Number): void +} + +export declare class MockKit { + constructor() + mockFunc(obj: Object, func: Function): Function + mockObject(obj: Object): Object + verify(methodName: String, argsArray: Array): VerificationMode + ignoreMock(obj: Object, func: Function): void + clear(obj: Object): void + clearAll(): void +} + +export declare class SysTestKit { + static getDescribeName(): string; + static getItName(): string; + static getItAttribute(): TestType | Size | Level + static actionStart(tag: string): void + static actionEnd(tag: string): void + static existKeyword(keyword: string, timeout?: number): boolean +} + diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.js new file mode 100644 index 00000000000..02d06d9d1b4 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.js @@ -0,0 +1,261 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import Core from './src/main/core'; +import { DEFAULT, TestType, Size, Level, TAG, PrintTag } from './src/main/Constant'; +import DataDriver from './src/main/module/config/DataDriver'; +import ExpectExtend from './src/main/module/assert/ExpectExtend'; +import OhReport from './src/main/module/report/OhReport'; +import SysTestKit from './src/main/module/kit/SysTestKit'; +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect, beforeItSpecified, afterItSpecified, xdescribe, xit } from './src/main/interface'; +import { MockKit, when } from './src/main/module/mock/MockKit'; +import ArgumentMatchers from './src/main/module/mock/ArgumentMatchers'; +import worker from '@ohos.worker'; + +class Hypium { + static context = new Map(); + static setData(data) { + const core = Core.getInstance(); + const dataDriver = new DataDriver({ data }); + core.addService('dataDriver', dataDriver); + } + + static setTimeConfig(systemTime) { + SysTestKit.systemTime = systemTime; + } + + static set(key, value) { + Hypium.context.set(key, value); + } + + static get(key) { + return Hypium.context.get(key); + } + + static hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite) { + const core = Core.getInstance(); + const expectExtend = new ExpectExtend({ + 'id': 'extend' + }); + core.addService('expect', expectExtend); + const ohReport = new OhReport({ + 'delegator': abilityDelegator, + 'abilityDelegatorArguments': abilityDelegatorArguments + }); + SysTestKit.delegator = abilityDelegator; + core.addService('report', ohReport); + core.init(); + core.subscribeEvent('spec', ohReport); + core.subscribeEvent('suite', ohReport); + core.subscribeEvent('task', ohReport); + const configService = core.getDefaultService('config'); + if (abilityDelegatorArguments !== null) { + let testParameters = configService.translateParams(abilityDelegatorArguments.parameters); + console.info(`${TAG}parameters:${JSON.stringify(testParameters)}`); + configService.setConfig(testParameters); + } + testsuite(); + core.execute(abilityDelegator); + } + static async hypiumInitWorkers(abilityDelegator, scriptURL, workerNum = 8, params) { + console.info(`${TAG}, hypiumInitWorkers call,${scriptURL}`); + let workerPromiseArray = []; + + // 开始统计时间 + let startTime = await SysTestKit.getRealTime(); + for (let i = 0; i < workerNum; i++) { + // 创建worker线程 + const workerPromise = Hypium.createWorkerPromise(scriptURL, i, params); + workerPromiseArray.push(workerPromise); + } + const ret = {total: 0, failure: 0, error: 0, pass: 0, ignore: 0, duration: 0}; + Promise.all(workerPromiseArray).then(async (items) => { + console.info(`${TAG}, all result from workers, ${JSON.stringify(items)}`); + let allItemList = new Array(); + // 统计执行结果 + Hypium.handleWorkerTestResult(ret, allItemList, items); + console.info(`${TAG}, all it result, ${JSON.stringify(allItemList)}`); + // 统计用例执行结果 + const retResult = {total: 0, failure: 0, error: 0, pass: 0, ignore: 0, duration: 0}; + // 标记用例执行结果 + Hypium.configWorkerItTestResult(retResult, allItemList); + // 打å°ç”¨ä¾‹ç»“æžœ + Hypium.printWorkerTestResult(abilityDelegator, allItemList); + // 用例执行完æˆç»Ÿè®¡æ—¶é—´ + let endTime = await SysTestKit.getRealTime(); + const taskConsuming = endTime - startTime; + const message = + `\n${PrintTag.OHOS_REPORT_ALL_RESULT}: stream=Test run: runTimes: ${ret.total},total: ${retResult.total}, Failure: ${retResult.failure}, Error: ${retResult.error}, Pass: ${retResult.pass}, Ignore: ${retResult.ignore}` + + `\n${PrintTag.OHOS_REPORT_ALL_CODE}: ${retResult.failure > 0 || retResult.error > 0 ? -1 : 0}` + + `\n${PrintTag.OHOS_REPORT_ALL_STATUS}: taskconsuming=${taskConsuming > 0 ? taskConsuming : ret.duration}`; + abilityDelegator.printSync(message); + console.info(`${TAG}, [end] you worker test`); + abilityDelegator.finishTest('you worker test finished!!!', 0, () => {}); + }).catch((e) => { + console.info(`${TAG}, [end] error you worker test, ${JSON.stringify(e)}`); + abilityDelegator.finishTest('you worker test error finished!!!', 0, () => {}); + }).finally(() => { + console.info(`${TAG}, all promise finally end`); + }); + } + // 创建worker线程 + static createWorkerPromise(scriptURL, i, params) { + console.info(`${TAG}, createWorkerPromiser, ${scriptURL}, ${i}`); + const workerPromise = new Promise((resolve, reject) => { + const workerInstance = new worker.ThreadWorker(scriptURL, {name: `worker_${i}`}); + console.info(`${TAG}, send data to worker`); + // å‘逿•°æ®åˆ°worker线程中 + workerInstance.postMessage(params); + workerInstance.onmessage = function (e) { + let currentThreadName = e.data?.currentThreadName; + console.info(`${TAG}, receview data from ${currentThreadName}, ${JSON.stringify(e.data)}`); + // + resolve(e.data?.summary); + console.info(`${TAG}, ${currentThreadName} finish`); + workerInstance.terminate(); + }; + workerInstance.onerror = function (e) { + console.info(`${TAG}, worker error, ${JSON.stringify(e)}`); + reject(e); + workerInstance.terminate(); + }; + workerInstance.onmessageerror = function (e) { + console.info(`${TAG}, worker message error, ${JSON.stringify(e)}`); + reject(e); + workerInstance.terminate(); + }; + }); + return workerPromise; + } + static handleWorkerTestResult(ret, allItemList, items) { + console.info(`${TAG}, handleWorkerTestResult, ${JSON.stringify(items)}`); + for (const {total, failure, error, pass, ignore, duration, itItemList} of items) { + ret.total += total; + ret.failure += failure; + ret.error += error; + ret.pass += pass; + ret.ignore += ignore; + ret.duration += duration; + Hypium.handleItResult(allItemList, itItemList); + } + } + static handleItResult(allItemList, itItemList) { + // é历所有的用例结果统计最终结果 + for (const {currentThreadName, description, result} of itItemList) { + let item = allItemList.find((it) => it.description === description); + if (item) { + let itResult = item.result; + // 当在worker中出现一次failure就标记为failure, 出现一次error就标记为error, 所有线程都passæ‰æ ‡è®°ä¸ºpass + if (itResult === 0) { + item.result = result; + item.currentThreadName = currentThreadName; + } + } else { + let it = { + description: description, + currentThreadName: currentThreadName, + result: result + }; + allItemList.push(it); + } + } + } + static configWorkerItTestResult(retResult, allItemList) { + console.info(`${TAG}, configWorkerItTestResult, ${JSON.stringify(allItemList)}`); + for (const {currentThreadName, description, result} of allItemList) { + console.info(`${TAG}, description, ${description}, result,${result}`); + retResult.total ++; + if (result === 0) { + retResult.pass ++; + } else if (result === -1) { + retResult.error ++; + } else if (result === -2) { + retResult.failure ++; + } else { + retResult.ignore ++; + } + } + } + static printWorkerTestResult(abilityDelegator, allItemList) { + console.info(`${TAG}, printWorkerTestResult, ${JSON.stringify(allItemList)}`); + let index = 1; + for (const {currentThreadName, description, result} of allItemList) { + console.info(`${TAG}, description print, ${description}, result,${result}`); + let itArray = description.split('#'); + let des; + let itName; + if (itArray.length > 1) { + des = itArray[0]; + itName = itArray[1]; + } else if (itArray.length > 1) { + des = itArray[0]; + itName = itArray[0]; + } else { + des = 'undefined'; + itName = 'undefined'; + } + + let msg = `\n${PrintTag.OHOS_REPORT_WORKER_STATUS}: class=${des}`; + msg += `\n${PrintTag.OHOS_REPORT_WORKER_STATUS}: test=${itName}`; + msg += `\n${PrintTag.OHOS_REPORT_WORKER_STATUS}: current=${index}`; + msg += `\n${PrintTag.OHOS_REPORT_WORKER_STATUS}: CODE=${result}`; + abilityDelegator.printSync(msg); + index ++; + } + } + static hypiumWorkerTest(abilityDelegator, abilityDelegatorArguments, testsuite, workerPort) { + console.info(`${TAG}, hypiumWorkerTest call`); + SysTestKit.workerPort = workerPort; + let currentWorkerName = workerPort.name; + console.info(`${TAG}, hypiumWorkerTest_currentWorkerName: ${currentWorkerName}`); + Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite); + + } + + static registerAssert(customAssertion) { + const core = Core.getInstance(); + const expectService = core.getDefaultService('expect'); + let matchers = {}; + matchers[customAssertion.name] = customAssertion; + expectService.addMatchers(matchers); + expectService.customMatchers.push(customAssertion.name); + console.info(`${TAG}success to register the ${customAssertion.name}`); + } + + static unregisterAssert(customAssertion) { + const core = Core.getInstance(); + const expectService = core.getDefaultService('expect'); + let customAssertionName = typeof customAssertion === 'function' ? customAssertion.name : customAssertion; + expectService.removeMatchers(customAssertionName); + console.info(`${TAG}success to unregister the ${customAssertionName}`); + } + +} + +export { + Hypium, + Core, + DEFAULT, + TestType, + Size, + Level, + DataDriver, + ExpectExtend, + OhReport, + SysTestKit, + describe, beforeAll, beforeEach, afterEach, afterAll, it, expect, beforeItSpecified, afterItSpecified, xdescribe, xit, + MockKit, when, + ArgumentMatchers +}; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ts new file mode 100644 index 00000000000..b7082ebc982 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/index.ts @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { TestType, Size, Level } from "./src/main/Constant"; + +export declare function xdescribe(testSuiteName: string, func: Function): void; + +export declare namespace xdescribe { + function reason(reason: string): any; +}; + +export declare function describe(testSuiteName: string, func: Function): void; + +export declare function xit(testCaseName: string, attribute: TestType | Size | Level, func: Function): void; + +export declare namespace xit { + function reason(reason: string): any; +}; + +export declare function it(testCaseName: string, attribute: TestType | Size | Level, func: Function): void; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/obfuscation-rules.txt b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/obfuscation-rules.txt new file mode 100644 index 00000000000..272efb6ca3f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/oh-package.json5 b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/oh-package.json5 new file mode 100644 index 00000000000..fe6fe8a55da --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/oh-package.json5 @@ -0,0 +1 @@ +{"name":"@ohos/hypium","version":"1.0.24","description":"A unit test framework for OpenHarmony application","main":"index.js","keywords":["测试框架","except","mock"],"author":"huawei","license":"Apache-2.0","repository":"https://gitee.com/openharmony/testfwk_arkxtest","homepage":"https://gitee.com/openharmony/testfwk_arkxtest","dependencies":{},"metadata":{"sourceRoots":["./src/main"],"debug":true,"useNormalizedOHMUrl":false},"compatibleSdkVersion":17,"compatibleSdkType":"HarmonyOS","obfuscated":false} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/Constant.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/Constant.js new file mode 100644 index 00000000000..dfd6b24a225 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/Constant.js @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * define the testcase type : TestType, Size , Level + */ +export const TAG = '[Hypium]'; + +export const DEFAULT = 0B0000; + +export class PrintTag { + static OHOS_REPORT_WORKER_STATUS = 'OHOS_REPORT_WORKER_STATUS'; + static OHOS_REPORT_ALL_RESULT = 'OHOS_REPORT_ALL_RESULT'; + static OHOS_REPORT_ALL_CODE = 'OHOS_REPORT_ALL_CODE'; + static OHOS_REPORT_ALL_STATUS = 'OHOS_REPORT_ALL_STATUS'; + static OHOS_REPORT_RESULT = 'OHOS_REPORT_RESULT'; + static OHOS_REPORT_CODE = 'OHOS_REPORT_CODE'; + static OHOS_REPORT_STATUS = 'OHOS_REPORT_STATUS'; + static OHOS_REPORT_SUM = 'OHOS_REPORT_SUM'; + static OHOS_REPORT_STATUS_CODE = 'OHOS_REPORT_STATUS_CODE'; +}; + +export class TestType { + static FUNCTION = 0B1; + static PERFORMANCE = 0B1 << 1; + static POWER = 0B1 << 2; + static RELIABILITY = 0B1 << 3; + static SECURITY = 0B1 << 4; + static GLOBAL = 0B1 << 5; + static COMPATIBILITY = 0B1 << 6; + static USER = 0B1 << 7; + static STANDARD = 0B1 << 8; + static SAFETY = 0B1 << 9; + static RESILIENCE = 0B1 << 10; +}; + +export class Size { + static SMALLTEST = 0B1 << 16; + static MEDIUMTEST = 0B1 << 17; + static LARGETEST = 0B1 << 18; +}; + +export class Level { + static LEVEL0 = 0B1 << 24; + static LEVEL1 = 0B1 << 25; + static LEVEL2 = 0B1 << 26; + static LEVEL3 = 0B1 << 27; + static LEVEL4 = 0B1 << 28; +}; + +export const TESTTYPE = { + 'function': 1, + 'performance': 1 << 1, + 'power': 1 << 2, + 'reliability': 1 << 3, + 'security': 1 << 4, + 'global': 1 << 5, + 'compatibility': 1 << 6, + 'user': 1 << 7, + 'standard': 1 << 8, + 'safety': 1 << 9, + 'resilience': 1 << 10, +}; + +export const LEVEL = { + '0': 1 << 24, + '1': 1 << 25, + '2': 1 << 26, + '3': 1 << 27, + '4': 1 << 28, +}; + +export const SIZE = { + 'small': 1 << 16, + 'medium': 1 << 17, + 'large': 1 << 18, +}; + +export const KEYSET = [ + '-s class', '-s notClass', '-s suite', '-s itName', + '-s level', '-s testType', '-s size', '-s timeout', + '-s dryRun', '-s random', '-s breakOnError', '-s stress', + '-s coverage', '-s skipMessage', '-s runSkipped', + 'class', 'notClass', 'suite', 'itName', + 'level', 'testType', 'size', 'timeout', 'dryRun', 'random', + 'breakOnError', 'stress', 'coverage', 'skipMessage', 'runSkipped' +]; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/core.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/core.js new file mode 100644 index 00000000000..cfcb5f17287 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/core.js @@ -0,0 +1,159 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {SuiteService, SpecService, ExpectService, ReportService} from './service'; +import {ConfigService} from './module/config/configService'; +import {SpecEvent, TaskEvent, SuiteEvent} from './event'; + +/** + * core service for execute testcase. + */ +class Core { + static getInstance() { + if (!this.instance) { + this.instance = new Core(); + } + return this.instance; + } + + constructor() { + this.instance = null; + this.services = { + suite: {}, + spec: {}, + config: {}, + expect: {}, + log: {}, + report: {} + + }; + this.events = { + suite: {}, + spec: {}, + task: {} + }; + } + + addService(name, service) { + let serviceObj = {}; + if (!this.services[name]) { + this.services[name] = serviceObj; + } else { + serviceObj = this.services[name]; + } + serviceObj[service.id] = service; + } + + getDefaultService(name) { + return this.services[name].default; + } + + getServices(name) { + return this.services[name]; + } + + registerEvent(serviceName, event) { + let eventObj = {}; + if (!this.events[serviceName]) { + this.events[serviceName] = eventObj; + } else { + eventObj = this.events[serviceName]; + } + eventObj[event.id] = event; + } + + unRegisterEvent(serviceName, eventID) { + const eventObj = this.events[serviceName]; + if (eventObj) { + delete eventObj[eventID]; + } + } + + subscribeEvent(serviceName, serviceObj) { + const eventObj = this.events[serviceName]; + if (eventObj) { + for (const attr in eventObj) { + eventObj[attr]['subscribeEvent'](serviceObj); + } + } + } + + async fireEvents(serviceName, eventName) { + const eventObj = this.events[serviceName]; + if (!eventObj) { + return; + } + for (const attr in eventObj) { + await eventObj[attr][eventName](); + } + } + + addToGlobal(apis) { + if (typeof globalThis !== 'undefined') { + for (let api in apis) { + globalThis[api] = apis[api]; + } + } + for (const api in apis) { + this[api] = apis[api]; + } + } + + init() { + this.addService('suite', new SuiteService({id: 'default'})); + this.addService('spec', new SpecService({id: 'default'})); + this.addService('expect', new ExpectService({id: 'default'})); + this.addService('report', new ReportService({id: 'default'})); + this.addService('config', new ConfigService({id: 'default'})); + this.registerEvent('task', new TaskEvent({id: 'default', coreContext: this})); + this.registerEvent('suite', new SuiteEvent({id: 'default', coreContext: this})); + this.registerEvent('spec', new SpecEvent({id: 'default', coreContext: this})); + this.subscribeEvent('spec', this.getDefaultService('report')); + this.subscribeEvent('suite', this.getDefaultService('report')); + this.subscribeEvent('task', this.getDefaultService('report')); + const context = this; + for (const key in this.services) { + const serviceObj = this.services[key]; + for (const serviceID in serviceObj) { + const service = serviceObj[serviceID]; + service.init(context); + + if (typeof service.apis !== 'function') { + continue; + } + const apis = service.apis(); + if (apis) { + this.addToGlobal(apis); + } + } + } + } + + execute(abilityDelegator) { + const suiteService = this.getDefaultService('suite'); + const configService = this.getDefaultService('config'); + if (configService['dryRun'] === 'true') { + (async function () { + await suiteService.dryRun(abilityDelegator); + })(); + return; + } + setTimeout(() => { + suiteService.execute(); + }, 10); + } +} + +export default Core; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/event.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/event.js new file mode 100644 index 00000000000..3be0211f016 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/event.js @@ -0,0 +1,100 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class SpecEvent { + constructor(attr) { + this.id = attr.id; + this.coreContext = attr.context; + this.eventMonitors = []; + } + + subscribeEvent(service) { + this.eventMonitors.push(service); + } + + async specStart() { + for (const monitor of this.eventMonitors) { + await monitor['specStart'](); + } + } + + async specDone() { + for (const monitor of this.eventMonitors) { + await monitor['specDone'](); + } + } +} + +class SuiteEvent { + constructor(attr) { + this.id = attr.id; + this.suiteContext = attr.coreContext; + this.eventMonitors = []; + } + + subscribeEvent(service) { + this.eventMonitors.push(service); + } + + async suiteStart() { + for (const monitor of this.eventMonitors) { + await monitor['suiteStart'](); + } + } + + async suiteDone() { + for (const monitor of this.eventMonitors) { + await monitor['suiteDone'](); + } + } +} + +class TaskEvent { + constructor(attr) { + this.id = attr.id; + this.coreContext = attr.coreContext; + this.eventMonitors = []; + } + + subscribeEvent(service) { + this.eventMonitors.push(service); + } + + async taskStart() { + for (const monitor of this.eventMonitors) { + await monitor['taskStart'](); + } + } + + async taskDone() { + for (const monitor of this.eventMonitors) { + await monitor['taskDone'](); + } + } + + incorrectFormat() { + for (const monitor of this.eventMonitors) { + monitor['incorrectFormat'](); + } + } + + incorrectTestSuiteFormat() { + for (const monitor of this.eventMonitors) { + monitor.incorrectTestSuiteFormat(); + } + } +} + +export { SpecEvent, TaskEvent, SuiteEvent }; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/interface.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/interface.js new file mode 100644 index 00000000000..1bf43509ac3 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/interface.js @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import Core from './core'; + +const core = Core.getInstance(); + +const describe = function (desc, func) { + return Reflect.has(core, 'describe') ? core.describe(desc, func) : (desc, func) => { }; +}; +const it = function (desc, filter, func) { + return Reflect.has(core, 'it') ? core.it(desc, filter, func) : (desc, filter, func) => { }; +}; +const beforeItSpecified = function (itDescs, func) { + return Reflect.has(core, 'beforeItSpecified') ? core.beforeItSpecified(itDescs, func) : (itDescs, func) => { }; +}; + +const afterItSpecified = function (itDescs, func) { + return Reflect.has(core, 'afterItSpecified') ? core.afterItSpecified(itDescs, func) : (itDescs, func) => { }; +}; +const beforeEach = function (func) { + return Reflect.has(core, 'beforeEach') ? core.beforeEach(func) : (func) => { }; +}; +const afterEach = function (func) { + return Reflect.has(core, 'afterEach') ? core.afterEach(func) : (func) => { }; +}; +const beforeAll = function (func) { + return Reflect.has(core, 'beforeAll') ? core.beforeAll(func) : (func) => { }; +}; +const afterAll = function (func) { + return Reflect.has(core, 'afterAll') ? core.afterAll(func) : (func) => { }; +}; +const expect = function (actualValue) { + return Reflect.has(core, 'expect') ? core.expect(actualValue) : (actualValue) => { }; +}; + +const xdescribe = function (desc, func) { + return Reflect.has(core, 'xdescribe') ? core.xdescribe(desc, func, null) : (desc, func, reason) => { }; +}; +xdescribe.reason = (reason) => { + return (desc, func) => { + return Reflect.has(core, 'xdescribe') ? core.xdescribe(desc, func, reason) : (desc, func, reason) => { }; + }; +}; +const xit = function (desc, filter, func) { + return Reflect.has(core, 'xit') ? core.xit(desc, filter, func, null) : (desc, filter, func, reason) => { }; +}; +xit.reason = (reason) => { + return (desc, filter, func) => { + return Reflect.has(core, 'xit') ? core.xit(desc, filter, func, reason) : (desc, filter, func, reason) => { }; + }; +}; + +export { + describe, it, beforeAll, beforeEach, afterEach, afterAll, expect, beforeItSpecified, afterItSpecified, xdescribe, xit +}; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module.json b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module.json new file mode 100644 index 00000000000..7182854b6b5 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module.json @@ -0,0 +1,30 @@ +{ + "app": { + "bundleName": "com.hypium.myapplication", + "debug": true, + "versionCode": 1000000, + "versionName": "1.0.0", + "minAPIVersion": 50005017, + "targetAPIVersion": 50005017, + "apiReleaseType": "Release", + "compileSdkVersion": "5.0.5.165", + "compileSdkType": "HarmonyOS", + "appEnvironments": [], + "bundleType": "app", + "buildMode": "debug" + }, + "module": { + "name": "hypium", + "type": "har", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ], + "packageName": "@ohos/hypium", + "installationFree": false, + "virtualMachine": "ark12.0.6.0", + "compileMode": "esmodule", + "dependencies": [] + } +} diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js new file mode 100644 index 00000000000..d087755a446 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js @@ -0,0 +1,85 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import assertNull from './assertNull'; +import assertClose from './assertClose'; +import assertContain from './assertContain'; +import assertLess from './assertLess'; +import assertLarger from './assertLarger'; +import assertFail from './assertFail'; +import assertUndefined from './assertUndefined'; +import assertFalse from './assertFalse'; +import assertInstanceOf from './assertInstanceOf'; +import assertThrowError from './assertThrowError'; +import assertLargerOrEqual from './assertLargerOrEqual'; +import assertLessOrEqual from './assertLessOrEqual'; +import assertNaN from './assertNaN'; +import assertNegUnlimited from './assertNegUnlimited'; +import assertPosUnlimited from './assertPosUnlimited'; +import assertDeepEquals from './deepEquals/assertDeepEquals'; +import assertPromiseIsPending from './assertPromiseIsPending'; +import assertPromiseIsRejected from './assertPromiseIsRejected'; +import assertPromiseIsRejectedWith from './assertPromiseIsRejectedWith'; +import assertPromiseIsRejectedWithError from './assertPromiseIsRejectedWithError'; +import assertPromiseIsResolved from './assertPromiseIsResolved'; +import assertPromiseIsResolvedWith from './assertPromiseIsResolvedWith'; +class ExpectExtend { + constructor(attr) { + this.id = attr.id; + this.matchers = {}; + } + + extendsMatchers() { + this.matchers.assertNull = assertNull; + this.matchers.assertClose = assertClose; + this.matchers.assertContain = assertContain; + this.matchers.assertLess = assertLess; + this.matchers.assertLarger = assertLarger; + this.matchers.assertFail = assertFail; + this.matchers.assertUndefined = assertUndefined; + this.matchers.assertFalse = assertFalse; + this.matchers.assertInstanceOf = assertInstanceOf; + this.matchers.assertThrowError = assertThrowError; + this.matchers.assertLargerOrEqual = assertLargerOrEqual; + this.matchers.assertLessOrEqual = assertLessOrEqual; + this.matchers.assertNaN = assertNaN; + this.matchers.assertNegUnlimited = assertNegUnlimited; + this.matchers.assertPosUnlimited = assertPosUnlimited; + this.matchers.assertDeepEquals = assertDeepEquals; + this.matchers.assertPromiseIsPending = assertPromiseIsPending; + this.matchers.assertPromiseIsRejected = assertPromiseIsRejected; + this.matchers.assertPromiseIsRejectedWith = assertPromiseIsRejectedWith; + this.matchers.assertPromiseIsRejectedWithError = assertPromiseIsRejectedWithError; + this.matchers.assertPromiseIsResolved = assertPromiseIsResolved; + this.matchers.assertPromiseIsResolvedWith = assertPromiseIsResolvedWith; + } + + init(coreContext) { + this.coreContext = coreContext; + this.extendsMatchers(); + const expectService = this.coreContext.getDefaultService('expect'); + expectService.addMatchers(this.matchers); + } + + apis() { + return { + 'expect': function (actualValue) { + return this.coreContext.getDefaultService('expect').expect(actualValue); + } + }; + } +} + +export default ExpectExtend; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js new file mode 100644 index 00000000000..7e692bd25f1 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertClose(actualValue, expected) { + if (actualValue === null && expected[0] === null) { + throw new Error('actualValue and expected can not be both null!!!'); + } + let result; + let diff = Math.abs(expected[0] - actualValue); + let actualAbs = Math.abs(actualValue); + if ((actualAbs - 0) === 0) { + if ((diff - 0) === 0) { + result = true; + } else { + result = false; + } + } else if (diff / actualAbs < expected[1]) { + result = true; + } else { + result = false; + } + return { + pass: result, + message: '|' + actualValue + ' - ' + expected[0] + '|/' + actualValue + ' is not less than ' + expected[1] + }; +} + +export default assertClose; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js new file mode 100644 index 00000000000..7fba0d97555 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertContain(actualValue, expect) { + let result = false; + if (Object.prototype.toString.call(actualValue).indexOf('Array')) { + for (let i in actualValue) { + if (actualValue[i] == expect[0]) { + result = true; + } + } + } + let type = Object.prototype.toString.call(actualValue); + if (type === '[object String]') { + result = actualValue.indexOf(expect[0]) >= 0; + } + return { + pass: result, + message: 'expect false, ' + actualValue + ' do not have ' + expect[0] + }; +} + +export default assertContain; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js new file mode 100644 index 00000000000..8ab4ac5caef --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertFail() { + return { + pass: false, + message: 'fail ' + }; +} + +export default assertFail; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js new file mode 100644 index 00000000000..c5008e94f4b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertFalse(actualValue) { + return { + pass: (actualValue) === false, + message: 'expect false, actualValue is ' + actualValue + }; +} + +export default assertFalse; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js new file mode 100644 index 00000000000..1e11b93f725 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertInstanceOf(actualValue, expected) { + if (Object.prototype.toString.call(actualValue) == '[object ' + expected[0] + ']') { + return { + pass: true + }; + } else { + return { + pass: false, + message: actualValue + ' is ' + Object.prototype.toString.call(actualValue) + 'not ' + expected[0] + }; + } +} + +export default assertInstanceOf; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js new file mode 100644 index 00000000000..a74f4a8ceda --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLarger(actualValue, expected) { + return { + pass: (actualValue) > expected[0], + message: (actualValue) + ' is not larger than ' + expected[0] + }; +} + +export default assertLarger; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js new file mode 100644 index 00000000000..e847e6c2173 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLargerOrEqual(actualValue, expected) { + return { + pass: (actualValue) >= expected[0], + message: (actualValue) + ' is not larger than ' + expected[0] + }; +} + +export default assertLargerOrEqual; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js new file mode 100644 index 00000000000..17e84b0abae --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLess(actualValue, expected) { + return { + pass: (actualValue) < expected[0], + message: (actualValue) + ' is not less than ' + expected[0] + }; +} + +export default assertLess; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js new file mode 100644 index 00000000000..f754f97ffa9 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLessOrEqual(actualValue, expected) { + return { + pass: (actualValue) <= expected[0], + message: (actualValue) + ' is not less than ' + expected[0] + }; +} + +export default assertLessOrEqual; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js new file mode 100644 index 00000000000..8d45d6a93b8 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertNaN(actualValue) { + return { + pass: actualValue !== actualValue, + message: 'expect NaN, actualValue is ' + actualValue + }; +} + +export default assertNaN; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js new file mode 100644 index 00000000000..ceac555afc8 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js @@ -0,0 +1,23 @@ +/* +* Copyright (c) 2022 Huawei Device Co., Ltd. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +function assertNegUnlimited(actualValue) { + return { + pass: actualValue === Number.NEGATIVE_INFINITY, + message: 'Expected actualValue not to be -Infinity. actualValue is,' + actualValue + }; +} + +export default assertNegUnlimited; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js new file mode 100644 index 00000000000..53a7bad8273 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertNull(actualValue) { + return { + pass: (actualValue) === null, + message: 'expect null, actualValue is ' + (actualValue) + }; +} + +export default assertNull; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js new file mode 100644 index 00000000000..6e68c0e2b6c --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js @@ -0,0 +1,23 @@ +/* +* Copyright (c) 2022 Huawei Device Co., Ltd. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +function assertPosUnlimited(actualValue) { + return { + pass: actualValue === Number.POSITIVE_INFINITY, + message: 'Expected actualValue is POSITIVE_INFINITY. actualValue is,' + actualValue + }; +} + +export default assertPosUnlimited; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js new file mode 100644 index 00000000000..7e2ca2ce14d --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsPending(actualPromise) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + return helper === got ? {pass: true, message: 'actualValue is isPending'} + : { + pass: false, + message: 'expect isPending, actualValue is resolve' + }; + }, + function () { + return { + pass: false + , message: 'expect isPending, actualValue is reject' + }; + }); +} + +export default assertPromiseIsPending; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js new file mode 100644 index 00000000000..380075a369a --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsRejected(actualPromise) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + return actualPromise.then( + function (got) { + return { + pass: false, + message: 'expect isRejected, but actualValue is resolve' + }; + }, + function () { + return {pass: true, message: 'actualValue is isRejected'}; + } + ); +} + +export default assertPromiseIsRejected; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js new file mode 100644 index 00000000000..8179589d558 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsRejectedWith(actualPromise, expectedValue) { + + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + + function tips(passed) { + return ('Expected a promise ' + (passed ? 'not ' : '') + + 'to be rejected with ' + JSON.stringify(expectedValue[0])); + } + + return actualPromise.then( + function (got) { + return { + pass: false, + message: tips(false) + ' but actualValue is resolve' + }; + }, + function (actualValue) { + if (JSON.stringify(actualValue) == JSON.stringify(expectedValue[0])) { + return { + pass: true, + message: 'actualValue was rejected with ' + JSON.stringify(actualValue) + '.' + }; + } else { + return { + pass: false, + message: tips(false) + ' but it was rejected with ' + JSON.stringify(actualValue) + '.' + }; + } + } + ); +} + +export default assertPromiseIsRejectedWith; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js new file mode 100644 index 00000000000..e515535394f --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsRejectedWithError(actualPromise, expectedValue) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + return actualPromise.then( + function (got) { + return { + pass: false, + message: 'Expected a promise to be rejected but actualValue is resolve' + }; + }, + function (actualValue) { + return matchError(actualValue, expectedValue); + } + ); + +} + +function matchError(actualValue, expectedValue) { + if (expectedValue.length == 1 && typeof expectedValue[0] === 'function') { + if (expectedValue[0].name === actualValue.__proto__.name) { + return {pass: true, message: 'actual error type is ' + actualValue.name + '.'}; + } + return {pass: false, message: `except error type is ${expectedValue[0].name},but actual is ${actualValue.name}.`}; + } + + if (expectedValue.length == 1 && typeof expectedValue[0] === 'string') { + if (expectedValue[0] === actualValue.message) { + return {pass: true, message: `actual error message is ${actualValue.message}.`}; + } + return {pass: false, message: `except error message ${expectedValue[0]},but actual is ${actualValue.message}.`}; + } + + if (expectedValue.length == 1) { + return {pass: false, message: 'When only one parameter, it should be error type or error message.'}; + } + + if (expectedValue.length == 2 && typeof expectedValue[0] === 'function' && expectedValue[0].name === actualValue.name) { + if (typeof expectedValue[1] === 'string' && actualValue.message === expectedValue[1]) { + return {pass: true, message: 'actual error message is ' + actualValue.message + '.'}; + } + return {pass: false, message: `except error message is ${expectedValue[1]},but actual is ${actualValue.message}.`}; + } + + if (expectedValue.length == 2 && typeof expectedValue[0] === 'function' && expectedValue[0].name !== actualValue.name) { + if (typeof expectedValue[1] === 'string' && actualValue.message === expectedValue[1]) { + return {pass: false, message: `except error type is ${expectedValue[0].name},but actual is ${actualValue.name}.`}; + } + return {pass: false, message: 'except error type and message are incorrect.'}; + } + if (expectedValue.length > 2) { + return {pass: false, message: 'Up to two parameters are supported.'}; + } + return {pass: true, message: 'not equal type'}; +} + +export default assertPromiseIsRejectedWithError; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js new file mode 100644 index 00000000000..86f559c3287 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsResolved(actualPromise) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + + return actualPromise.then( + function (got) { + return {pass: true, message: 'actualValue is isResolved'}; + }, + function (rej) { + return { + pass: false, + message: 'Expected a promise to be resolved but it was ' + + 'rejected with ' + JSON.stringify(rej) + '.' + }; + } + ); +} + +export default assertPromiseIsResolved; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js new file mode 100644 index 00000000000..c6f0ef68fde --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsResolvedWith(actualPromise, expectedValue) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + + function tips(passed) { + return ( + 'Expected a promise ' + (passed ? 'not ' : '') + + 'to be resolved with ' + JSON.stringify(expectedValue[0])); + } + + return actualPromise.then( + function (got) { + if (JSON.stringify(got) == JSON.stringify(expectedValue[0])) { + return { + pass: true, + message: 'actualValue was resolved with ' + JSON.stringify(got) + '.' + }; + } + return { + pass: false, + message: tips(false) + ' but it was resolved with ' + + JSON.stringify(got) + '.' + }; + }, + function (rej) { + return { + pass: false, + message: tips(false) + ' but it was rejected with ' + JSON.stringify(rej) + '.' + }; + } + ); +} + +export default assertPromiseIsResolvedWith; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js new file mode 100644 index 00000000000..87609980812 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertThrowError(actualValue, expected) { + let result = false; + let message = ''; + let err; + if (typeof actualValue !== 'function') { + throw new Error('actualValue is not a function'); + } + try { + actualValue(); + return { + pass: result, + message: ' An error is not thrown while it is expected!' + }; + } catch (e) { + err = e; + } + if (err instanceof Error) { + let type = typeof expected[0]; + if (type === 'function') { + result = err.constructor.name === expected[0].name; + message = 'expected throw failed , ' + err.constructor.name + ' is not ' + expected[0].name; + } else if (type === 'string') { + result = err.message.includes(expected[0]); + message = 'expected throw failed , ' + err.message + ' is not ' + expected[0]; + } + } + return { + pass: result, + message: message + }; +} + +export default assertThrowError; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js new file mode 100644 index 00000000000..61f092d715d --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertUndefined(actualValue) { + return { + pass: undefined === (actualValue), + message: 'expect Undefined, actualValue is ' + (actualValue) + }; +} + +export default assertUndefined; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js new file mode 100644 index 00000000000..916824d9cb7 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js @@ -0,0 +1,139 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class DeepTypeUtils { + static getType(value) { + return Object.prototype.toString.apply(value); + } + static isA(typeName, value) { + return this.getType(value) === '[object ' + typeName + ']'; + } + static isAsymmetricEqualityTester(obj) { + return obj ? this.isA('Function', obj.asymmetricMatch) : false; + } + + /** + * æ˜¯å¦æ˜¯function + * @param value + */ + static isFunction(value) { + return this.isA('Function', value); + } + + /** + * æ˜¯å¦æ˜¯undefined + * @param obj + */ + static isUndefined(obj) { + return obj === void 0; + } + + /** + * æ˜¯å¦æ˜¯Node + * @param obj + */ + static isDomNode(obj) { + return obj !== null && + typeof obj === 'object' && + typeof obj.nodeType === 'number' && + typeof obj.nodeName === 'string'; + } + + /** + * æ˜¯å¦æ˜¯promise对象 + * @param obj + */ + static isPromise(obj) { + return !!obj && obj.constructor === Promise; + }; + /** + * æ˜¯å¦æ˜¯map对象 + * @param obj + */ + static isMap(obj) { + return ( + obj !== null && + typeof obj !== 'undefined' && + obj.constructor === Map + ); + } + + /** + * æ˜¯å¦æ˜¯set对象 + * @param obj 对象 + */ + static isSet(obj) { + return ( + obj !== null && + typeof obj !== 'undefined' && + obj.constructor === Set + ); + } + + /** + * å¯¹è±¡æ˜¯å¦æœ‰key属性 + * @param obj 对象 + * @param key 对象属性åç§° + */ + static has(obj, key) { + return Object.prototype.hasOwnProperty.call(obj, key); + } + + /** + * 获å–对象的自有属性 + * @param obj 对象 + * @param isArray æ˜¯å¦æ˜¯æ•°ç»„,[object Array] + */ + static keys(obj, isArray) { + const extraKeys = []; + // 获å–对象所有属性 + const allKeys = this.getAllKeys(obj); + if (!isArray) { + return allKeys; + } + if (allKeys.length === 0) { + return allKeys; + } + for (const k of allKeys) { + if (typeof k === 'symbol' || !/^[0-9]+$/.test(k)) { + extraKeys.push(k); + } + } + return extraKeys; + } + + /** + * 获å–obj对象的所有属性 + * @param obj obj对象 + */ + static getAllKeys(obj) { + const keys = []; + for (let key in obj) { + if (this.has(obj, key)) { + keys.push(key); + } + } + const symbols = Object.getOwnPropertySymbols(obj); + for (const sym of symbols) { + // obj.propertyIsEnumerable(sym) + if (Object.prototype.propertyIsEnumerable.call(obj, sym)) { + keys.push(sym); + } + } + return keys; + } + +} +export default DeepTypeUtils; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js new file mode 100644 index 00000000000..f20758a7f30 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js @@ -0,0 +1,433 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import DeepTypeUtils from './DeepTypeUtils'; +function assertDeepEquals(actualValue, expected) { + let result = eq(actualValue, expected[0]); + let msg = logMsg(actualValue, expected[0]); + return { + pass: result, + message: msg + }; +} + +function getMapLog(item) { + let valueStr = ''; + let keyValue = ''; + if (item.length > 1) { + let key = item[0]; + let value = item[1]; + if (value !== value) { + valueStr = value; + } else { + valueStr = JSON.stringify(value); + } + keyValue = JSON.stringify(key); + } + return '[' + keyValue + ',' + valueStr + ']'; +} + +function getArrayLog(item) { + // NAN + if (item !== item) { + return item; + } + if (item === undefined) { + return 'undefined'; + } + return JSON.stringify(item); +} + + +function getCollectionLog(data) { + // 获å–a的对象åç§° + let finallyResult = ''; + const aClassName = Object.prototype.toString.call(data); + if (aClassName === '[object Map]') { + let result = Array.from(data); + finallyResult = result.flatMap((item) => { + return getMapLog(item); + }); + } + if (aClassName === '[object Set]') { + let setArray = Array.from(data); + finallyResult = setArray.flatMap((item) => { + return getArrayLog(item); + }); + } + if (aClassName === '[object Array]') { + finallyResult = data.flatMap((item) => { + return getArrayLog(item); + }); + } + return finallyResult; +} + +function getActualValueLog(actualValue) { + // 获å–a的对象åç§° + const aClassName = Object.prototype.toString.call(actualValue); + let actualMsg = ''; + if (aClassName === '[object Function]') { + actualMsg = 'actualValue Function'; + } else if (aClassName === '[object Promise]') { + actualMsg = 'actualValue Promise'; + } else if (aClassName === '[object Map]') { + let finallyResult = getCollectionLog(actualValue); + actualMsg = '[' + finallyResult + ']'; + } else if (aClassName === '[object Set]') { + let flatMapResult = getCollectionLog(actualValue); + actualMsg = '[' + flatMapResult + ']'; + } else if (aClassName === '[object Array]') { + let flatMapResult = getCollectionLog(actualValue); + actualMsg = '[' + flatMapResult + ']'; + } else if (aClassName === '[object RegExp]') { + actualMsg = JSON.stringify(actualValue.source.replace('\\', '')); + } else if (aClassName === '[object BigInt]') { + actualMsg = actualValue; + } else if (aClassName === '[object Error]') { + actualMsg = actualValue.message; + } else if (aClassName === '[object ArrayBuffer]') { + actualMsg = actualValue.byteLength; + } + else { + // NAN + if (actualValue !== actualValue) { + actualMsg = actualValue.toString(); + } else { + actualMsg = JSON.stringify(actualValue); + } + } + return actualMsg; +} + +function getExpectedLog(expected) { + const bClassName = Object.prototype.toString.call(expected); + let expectMsg = ''; + if (bClassName === '[object Function]') { + expectMsg = 'expected Function'; + } else if (bClassName === '[object Promise]') { + expectMsg = 'expected Promise'; + } else if (bClassName === '[object Map]') { + let finallyResult = getCollectionLog(expected); + expectMsg = '[' + finallyResult + ']'; + } else if (bClassName === '[object Set]') { + let flatMapResult = getCollectionLog(expected); + expectMsg = '[' + flatMapResult + ']'; + } else if (bClassName === '[object Array]') { + let flatMapResult = getCollectionLog(expected); + expectMsg = '[' + flatMapResult + ']'; + } else if (bClassName === '[object RegExp]') { + expectMsg = JSON.stringify(expected.source.replace('\\', '')); + } else if (bClassName === '[object BigInt]') { + expectMsg = expected; + } else if (bClassName === '[object Error]') { + expectMsg = expected.message; + } else if (bClassName === '[object ArrayBuffer]') { + expectMsg = expected.byteLength; + } + else { + // NAN + if (expected !== expected) { + expectMsg = expected.toString(); + } else { + expectMsg = JSON.stringify(expected); + } + } + return expectMsg; +} + +/** + * 获å–失败显示日志 + * @param actualValue 实际对象 + * @param expected 期待比较对象 + */ +function logMsg(actualValue, expected) { + // 获å–a的对象åç§° + let actualMsg = getActualValueLog(actualValue); + let expectMsg = getExpectedLog(expected); + + return 'expect ' + actualMsg + ' deep equals ' + expectMsg; +} + +function eq(a, b) { + let result = true; + + if (a === b) { + result = a !== 0 || 1 / a === 1 / b; + return result; + } + + if (a === null || b === null) { + result = a === b; + return result; + } + // 获å–a的对象åç§° + const aClassName = Object.prototype.toString.call(a); + const bClassName = Object.prototype.toString.call(b); + // ä¸åŒç±»åž‹ä¸åŒå¯¹è±¡ + if (aClassName !== bClassName) { + return false; + } + if (aClassName === '[object String]' || aClassName === '[object Number]' || aClassName === '[object Date]' || + aClassName === '[object Boolean]' || aClassName === '[object ArrayBuffer]' || + aClassName === '[object RegExp]' || aClassName === '[object Error]') { + result = isEqualSampleObj(a, b); + return result; + } + + if (typeof a !== 'object' || typeof b !== 'object') { + return false; + } + + if (DeepTypeUtils.isDomNode(a) || DeepTypeUtils.isPromise(a) || DeepTypeUtils.isFunction(a)) { + result = isEqualNodeOrPromiseOrFunction(a, b); + return result; + } + + if (aClassName === '[object Array]' || aClassName === '[object Map]' || aClassName === '[object Set]') { + result = isEqualCollection(a, b); + return result; + } + + result = isEqualObj(a, b); + return result; +} + +function isEqualNodeOrPromiseOrFunction(a, b) { + let equalNodeOrPromiseOrFunction = true; + if (DeepTypeUtils.isDomNode(a) && DeepTypeUtils.isDomNode(b)) { + const aIsDomNode = DeepTypeUtils.isDomNode(a); + const bIsDomNode = DeepTypeUtils.isDomNode(b); + if (aIsDomNode && bIsDomNode) { + // At first try to use DOM3 method isEqualNode + equalNodeOrPromiseOrFunction = a.isEqualNode(b); + return equalNodeOrPromiseOrFunction; + } + if (aIsDomNode || bIsDomNode) { + equalNodeOrPromiseOrFunction = false; + return false; + } + } + + if (DeepTypeUtils.isPromise(a) && DeepTypeUtils.isPromise(b)) { + const aIsPromise = DeepTypeUtils.isPromise(a); + const bIsPromise = DeepTypeUtils.isPromise(b); + // 俩个Promise对象 + if (aIsPromise && bIsPromise) { + equalNodeOrPromiseOrFunction = a === b; + return a === b; + } + } + if (DeepTypeUtils.isFunction(a) && DeepTypeUtils.isFunction(b)) { + // 俩个函数对象 + const aCtor = a.constructor, + bCtor = b.constructor; + if ( + aCtor !== bCtor && + DeepTypeUtils.isFunction(aCtor) && + DeepTypeUtils.isFunction(bCtor) && + a instanceof aCtor && + b instanceof bCtor && + !(aCtor instanceof aCtor && bCtor instanceof bCtor) + ) { + equalNodeOrPromiseOrFunction = false; + return false; + } + } + return equalNodeOrPromiseOrFunction; +} + +function isEqualCollection(a, b) { + let equalCollection = true; + // 获å–a的对象åç§° + const aClassName = Object.prototype.toString.call(a); + const bClassName = Object.prototype.toString.call(b); + // 都是数组 + if (aClassName === '[object Array]') { + equalCollection = isEqualArray(a, b); + return equalCollection; + } + + // 都是Map + if (DeepTypeUtils.isMap(a) && DeepTypeUtils.isMap(b)) { + equalCollection = isEqualMap(a, b); + return equalCollection; + } + + // 都是Set + if (DeepTypeUtils.isSet(a) && DeepTypeUtils.isSet(b)) { + equalCollection = isEqualSet(a, b); + return equalCollection; + } + + return true; +} + +function isEqualSampleObj(a, b) { + let equalSampleObj = true; + const aClassName = Object.prototype.toString.call(a); + const bClassName = Object.prototype.toString.call(b); + // 俩个string对象 + if (aClassName === '[object String]') { + equalSampleObj = a === String(b); + return equalSampleObj; + } + // 俩个Number对象 + if (aClassName === '[object Number]') { + // NAN + if (a !== a && b !== b) { + return a === b; + } + equalSampleObj = a !== +a ? b !== +b : a === 0 && b === 0 ? 1 / a === 1 / b : a === +b; + return equalSampleObj; + } + + // 俩个Date对象/ boolean对象 + if (aClassName === '[object Date]' || aClassName === '[object Boolean]') { + equalSampleObj = +a === +b; + return equalSampleObj; + } + + // 俩个ArrayBuffer + if (aClassName === '[object ArrayBuffer]') { + equalSampleObj = eq(new Uint8Array(a), new Uint8Array(b)); + return equalSampleObj; + } + + // æ­£åˆ™è¡¨è¾¾å¼ + if (aClassName === '[object RegExp]') { + return ( + a.source === b.source && + a.global === b.global && + a.multiline === b.multiline && + a.ignoreCase === b.ignoreCase + ); + } + + if (a instanceof Error && b instanceof Error) { + equalSampleObj = a.message === b.message; + return equalSampleObj; + } + + return equalSampleObj; +} + +function isEqualObj(a, b) { + let equalObj = true; + const aClassName = Object.prototype.toString.call(a); + const bClassName = Object.prototype.toString.call(b); + const aKeys = DeepTypeUtils.keys(a, aClassName === '[object Array]'); + let size = aKeys.length; + + // 俩个对象属性长度ä¸ä¸€è‡´ï¼Œ 俩对象ä¸ç›¸åŒ + if (DeepTypeUtils.keys(b, bClassName === '[object Array]').length !== size) { + return false; + } + + // 俩对象属性数é‡ç›¸åŒï¼Œ 递归比较æ¯ä¸ªå±žæ€§å€¼å¾—值 + for (const key of aKeys) { + // b 没有 key 属性 + if (!DeepTypeUtils.has(b, key)) { + equalObj = false; + continue; + } + if (!eq(a[key], b[key])) { + equalObj = false; + } + } + return equalObj; +} + +function isEqualArray(a, b) { + let equalArray = true; + const aLength = a.length; + const bLength = b.length; + if (aLength !== bLength) { + // 数组长度ä¸åŒï¼Œä¸æ˜¯åŒä¸€ä¸ªå¯¹è±¡ + return false; + } + for (let i = 0; i < aLength || i < bLength; i++) { + // 递归æ¯ä¸€ä¸ªå…ƒç´ æ˜¯å¦ç›¸åŒ + equalArray = eq(i < aLength ? a[i] : void 0, i < bLength ? b[i] : void 0) && equalArray; + } + return equalArray; +} + +function isEqualMap(a, b) { + let equalMap = true; + if (a.size !== b.size) { + return false; + } + const keysA = []; + const keysB = []; + a.forEach(function(valueA, keyA) { + keysA.push(keyA); + }); + b.forEach(function(valueB, keyB) { + keysB.push(keyB); + }); + const mapKeys = [keysA, keysB]; + const cmpKeys = [keysB, keysA]; + for (let i = 0; equalMap && i < mapKeys.length; i++) { + const mapIter = mapKeys[i]; + const cmpIter = cmpKeys[i]; + + for (let j = 0; equalMap && j < mapIter.length; j++) { + const mapKey = mapIter[j]; + const cmpKey = cmpIter[j]; + const mapValueA = a.get(mapKey); + let mapValueB; + if (eq(mapKey, cmpKey)) { + mapValueB = b.get(cmpKey); + } else { + mapValueB = b.get(mapKey); + } + equalMap = eq(mapValueA, mapValueB); + } + } + return equalMap; +} + +function isEqualSet(a, b) { + let equalSet = true; + if (a.size !== b.size) { + return false; + } + const valuesA = []; + a.forEach(function(valueA) { + valuesA.push(valueA); + }); + const valuesB = []; + b.forEach(function(valueB) { + valuesB.push(valueB); + }); + const setPairs = [[valuesA, valuesB], [valuesB, valuesA]]; + for (let i = 0; equalSet && i < setPairs.length; i++) { + const baseValues = setPairs[i][0]; + const otherValues = setPairs[i][1]; + for (const baseValue of baseValues) { + let found = false; + for (let j = 0; !found && j < otherValues.length; j++) { + const otherValue = otherValues[j]; + // 深度比较对象 + found = eq(baseValue, otherValue); + } + equalSet = equalSet && found; + } + } + return equalSet; +} + +export default assertDeepEquals; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js new file mode 100644 index 00000000000..f5e771477f0 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function isPromiseLike(obj) { + return !!obj && isFunction(obj.then); +} + +function isFunction(value) { + return isA('Function', value); +} + +function isA(typeName, value) { + return getType(value) === '[object ' + typeName + ']'; +} + +function getType(value) { + return Object.prototype.toString.apply(value); +} + +export default isPromiseLike; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js new file mode 100644 index 00000000000..f86e4e479ad --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +const SUITES_KEY = 'suites'; +const SPECS_KEY = 'items'; +const DESCRIBE_KEY = 'describe'; +const IT_KEY = 'it'; +const PARAMS_KEY = 'params'; +const STRESS_KEY = 'stress'; + +class ObjectUtils { + static get(object, name, defaultValue) { + let result = defaultValue; + for (const key in object) { + if (key === name) { + return object[key]; + } + } + return result; + } + + static has(object, key) { + return Object.prototype.hasOwnProperty.call(object, key); + } +} + +class DataDriver { + constructor(attr) { + this.id = 'dataDriver'; + this.data = attr.data || {}; + } + + init(coreContext) { + this.coreContext = coreContext; + this.suiteService = this.coreContext.getDefaultService('suite'); + this.specService = this.coreContext.getDefaultService('spec'); + } + + getSpecParamsValue(specs) { + let specParams = []; + let specDesc = this.specService.getCurrentRunningSpec().description; + if (specs === null || specs === undefined) { + return specParams; + } + for (const specItem of specs) { + if (ObjectUtils.has(specItem, IT_KEY) && ObjectUtils.get(specItem, IT_KEY) === specDesc) { + return ObjectUtils.get(specItem, PARAMS_KEY, specParams); + } + } + return specParams; + } + + getSpecParams() { + let specParams = []; + let suiteDesc = this.suiteService.getCurrentRunningSuite().description; + let specDesc = this.specService.getCurrentRunningSpec().description; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, ''); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + let specs = ObjectUtils.get(suiteItem, SPECS_KEY, []); + return this.getSpecParamsValue(specs); + } + } + return specParams; + } + + getSuiteParams() { + let suiteParams = {}; + let suiteDesc = this.suiteService.getCurrentRunningSuite().description; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, []); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + suiteParams = Object.assign({}, suiteParams, ObjectUtils.get(suiteItem, PARAMS_KEY, suiteParams)); + } + } + return suiteParams; + } + + getStressNum(specs, specDesc) { + let stress = 1; + if (specs === null || specs === undefined) { + return stress; + } + for (const specItem of specs) { + if (ObjectUtils.has(specItem, IT_KEY) && ObjectUtils.get(specItem, IT_KEY) === specDesc) { + let tempStress = ObjectUtils.get(specItem, STRESS_KEY, stress); + return (Number.isInteger(tempStress) && tempStress >= 1) ? tempStress : stress; + } + } + return stress; + } + + getSpecStress(specDesc) { + let stress = 1; + let suiteDesc = this.suiteService.getCurrentRunningSuite().description; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, ''); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + let specs = ObjectUtils.get(suiteItem, SPECS_KEY, []); + return this.getStressNum(specs, specDesc); + } + } + return stress; + } + + getSuiteStress(suiteDesc) { + let stress = 1; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, []); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + let tempStress = ObjectUtils.get(suiteItem, STRESS_KEY, stress); + return (Number.isInteger(tempStress) && tempStress >= 1) ? tempStress : stress; + } + } + return stress; + } +} + +export default DataDriver; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/Filter.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/Filter.js new file mode 100644 index 00000000000..52f68560cac --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/Filter.js @@ -0,0 +1,143 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { LEVEL, SIZE, TESTTYPE } from '../../Constant'; + +class ClassFilter { + constructor(suiteName, itName, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + } + + filterSuite() { + return !this.params.split(',').map(item => item.split('#')[0]).map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + } + + filterIt() { + let classArray = this.params.split(',') || []; + let suiteFilterResult = classArray.filter(item => !item.includes('#')).map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + let itFilterResult = classArray.filter(item => item.includes('#')).map(item => item == (this.suiteName + '#' + this.itName)).reduce((pre, cur) => pre || cur, false); + return !(suiteFilterResult || itFilterResult); + } +} + +class NotClassFilter { + constructor(suiteName, itName, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + } + + filterSuite() { + return this.params.split(',').map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + } + + filterIt() { + return this.params.split(',').some(item => item == (this.suiteName + '#' + this.itName)); + } +} + +class SuiteAndItNameFilter { + constructor(suiteName, itName, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + } + + filterSuite() { + return !this.params.split(',').map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + } + + filterIt() { + return !this.params.split(',').map(item => item == this.itName).reduce((pre, cur) => pre || cur, false); + } +} + + +class TestTypesFilter { + constructor(suiteName, itName, fi, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + this.fi = fi; + } + + filterIt() { + return !((this.params === (this.fi & this.params)) || this.fi === 0); + } +} + +class NestFilter { + filterNestName(targetSuiteArray, targetSpecArray, suiteStack, desc) { + let targetSuiteName = ''; + for (let key in suiteStack) { + targetSuiteName = targetSuiteName + '.' + suiteStack[key].description; + } + targetSuiteName = targetSuiteName.substring(2); + const targetSpecName = targetSuiteName + '#' + desc; + let isFilter = true; + if (targetSpecArray.includes(targetSpecName)) { + return false; + } + for (let index in targetSuiteArray) { + if (targetSuiteName.startsWith(targetSuiteArray[index])) { + return false; + } + } + return isFilter; + } + + filterNotClass(notClass, suiteStack, desc) { + let filterNotClass = false; + if (notClass != null) { + let notClassArray = notClass.split(','); + let targetSuiteName = ''; + for (let key in suiteStack) { + targetSuiteName = targetSuiteName + '.' + suiteStack[key].description; + } + targetSuiteName = targetSuiteName.substring(2); + const targetSpecName = targetSuiteName + '#' + desc; + if (notClassArray.includes(targetSpecName) || notClassArray.some(key => targetSpecName.startsWith(key))) { + filterNotClass = true; + } + } + return filterNotClass; + } + + filterLevelOrSizeOrTestType(level, size, testType, filter) { + let result = false; + if (filter === 0 || filter === '0') { + return result; + } + if (level == null && size == null && testType == null) { + return result; + } + if (level != null) { + let levelFilter = LEVEL[`${level}`]; + result = result || filter === levelFilter; + } + if (size != null) { + let sizeFilter = SIZE[`${size}`]; + result = result || filter === sizeFilter; + } + if (testType != null) { + let testTypeFilter = TESTTYPE[`${testType}`]; + result = result || filter === testTypeFilter; + } + return !result; + } +} +export { ClassFilter, NotClassFilter, SuiteAndItNameFilter, TestTypesFilter, NestFilter }; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/configService.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/configService.js new file mode 100644 index 00000000000..17674d8cf7e --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/config/configService.js @@ -0,0 +1,299 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { ClassFilter, NotClassFilter, SuiteAndItNameFilter, TestTypesFilter, NestFilter } from './Filter'; +import { TAG, TESTTYPE, LEVEL, SIZE, KEYSET } from '../../Constant'; +const STRESS_RULE = /^[1-9]\d*$/; + +class ConfigService { + constructor(attr) { + this.id = attr.id; + this.supportAsync = true; // é»˜è®¤å¼‚æ­¥å¤„ç†æµ‹è¯•用例 + this.random = false; + this.filterValid = []; + this.filter = 0; + this.flag = false; + this.suite = null; + this.itName = null; + this.testType = null; + this.level = null; + this.size = null; + this.class = null; + this.notClass = null; + this.timeout = null; + // é‡é”™å³åœæ¨¡å¼é…ç½® + this.breakOnError = false; + // 压力测试é…ç½® + this.stress = null; + this.skipMessage = false; + this.runSkipped = ''; + this.filterXdescribe = []; + } + + init(coreContext) { + this.coreContext = coreContext; + } + + isNormalInteger(str) { + const n = Math.floor(Number(str)); + return n !== Infinity && String(n) === String(str) && n >= 0; + } + + + getStress() { + if (this.stress === undefined || this.stress === '' || this.stress === null) { + return 1; + } + return !this.stress.match(STRESS_RULE) ? 1 : Number.parseInt(this.stress); + } + + basicParamValidCheck(params) { + let size = params.size; + if (size !== undefined && size !== '' && size !== null) { + let sizeArray = ['small', 'medium', 'large']; + if (sizeArray.indexOf(size) === -1) { + this.filterValid.push('size:' + size); + } + } + let level = params.level; + if (level !== undefined && level !== '' && level !== null) { + let levelArray = ['0', '1', '2', '3', '4']; + if (levelArray.indexOf(level) === -1) { + this.filterValid.push('level:' + level); + } + } + let testType = params.testType; + if (testType !== undefined && testType !== '' && testType !== null) { + let testTypeArray = ['function', 'performance', 'power', 'reliability', 'security', + 'global', 'compatibility', 'user', 'standard', 'safety', 'resilience']; + if (testTypeArray.indexOf(testType) === -1) { + this.filterValid.push('testType:' + testType); + } + } + } + + filterParamValidCheck(params) { + let timeout = params.timeout; + if (timeout !== undefined && timeout !== '' && timeout !== null) { + if (!this.isNormalInteger(timeout)) { + this.filterValid.push('timeout:' + timeout); + } + } + + let paramKeys = ['dryRun', 'random', 'breakOnError', 'coverage', 'skipMessage']; + for (const key of paramKeys) { + if (params[key] !== undefined && params[key] !== 'true' && params[key] !== 'false') { + this.filterValid.push(`${key}:${params[key]}`); + } + } + + // åŽ‹åŠ›æµ‹è¯•å‚æ•°éªŒè¯,正整数 + if (params.stress !== undefined && params.stress !== '' && params.stress !== null) { + if (!params.stress.match(STRESS_RULE)) { + this.filterValid.push('stress:' + params.stress); + } + } + + let nameRule = /^[A-Za-z]{1}[\w#,.]*$/; + let paramClassKeys = ['class', 'notClass']; + for (const key of paramClassKeys) { + if (params[key] !== undefined && params[key] !== '' && params[key] !== null) { + let classArray = params[key].split(','); + classArray.forEach(item => !item.match(nameRule) ? this.filterValid.push(`${key}:${params[key]}`) : null); + } + } + } + + setConfig(params) { + this.basicParamValidCheck(params); + this.filterParamValidCheck(params); + try { + this.class = params.class; + this.notClass = params.notClass; + this.flag = params.flag || { flag: false }; + this.suite = params.suite; + this.itName = params.itName; + this.filter = params.filter; + this.testType = params.testType; + this.level = params.level; + this.size = params.size; + this.timeout = params.timeout; + this.dryRun = params.dryRun; + this.breakOnError = params.breakOnError; + this.random = params.random === 'true' ? true : false; + this.stress = params.stress; + this.coverage = params.coverage; + this.skipMessage = params.skipMessage; + this.runSkipped = params.runSkipped; + this.filterParam = { + testType: TESTTYPE, + level: LEVEL, + size: SIZE + }; + this.parseParams(); + } catch (err) { + console.info(`${TAG}setConfig error: ${err.message}`); + } + } + + parseParams() { + if (this.filter != null) { + return; + } + let testTypeFilter = 0; + let sizeFilter = 0; + let levelFilter = 0; + if (this.testType != null) { + testTypeFilter = this.testType.split(',') + .map(item => this.filterParam.testType[item] || 0) + .reduce((pre, cur) => pre | cur, 0); + } + if (this.level != null) { + levelFilter = this.level.split(',') + .map(item => this.filterParam.level[item] || 0) + .reduce((pre, cur) => pre | cur, 0); + } + if (this.size != null) { + sizeFilter = this.size.split(',') + .map(item => this.filterParam.size[item] || 0) + .reduce((pre, cur) => pre | cur, 0); + } + this.filter = testTypeFilter | sizeFilter | levelFilter; + console.info(`${TAG}filter params:${this.filter}`); + } + + isCurrentSuite(description) { + if (this.suite !== undefined && this.suite !== '' && this.suite !== null) { + let suiteArray = this.suite.split(','); + return suiteArray.indexOf(description) !== -1; + } + return false; + } + + filterSuite(currentSuiteName) { + let filterArray = []; + if (this.suite !== undefined && this.suite !== '' && this.suite !== null) { + filterArray.push(new SuiteAndItNameFilter(currentSuiteName, '', this.suite)); + } + if (this.class !== undefined && this.class !== '' && this.class !== null) { + filterArray.push(new ClassFilter(currentSuiteName, '', this.class)); + } + if (this.notClass !== undefined && this.notClass !== '' && this.notClass !== null) { + filterArray.push(new NotClassFilter(currentSuiteName, '', this.notClass)); + } + + let result = filterArray.map(item => item.filterSuite()).reduce((pre, cur) => pre || cur, false); + return result; + } + + filterDesc(currentSuiteName, desc, fi, coreContext) { + let filterArray = []; + if (this.itName !== undefined && this.itName !== '' && this.itName !== null) { + filterArray.push(new SuiteAndItNameFilter(currentSuiteName, desc, this.itName)); + } + if (this.class !== undefined && this.class !== '' && this.class !== null) { + filterArray.push(new ClassFilter(currentSuiteName, desc, this.class)); + } + if (this.notClass !== undefined && this.notClass !== '' && this.notClass !== null) { + filterArray.push(new NotClassFilter(currentSuiteName, desc, this.notClass)); + } + if (typeof (this.filter) !== 'undefined' && this.filter !== 0 && fi !== 0) { + filterArray.push(new TestTypesFilter('', '', fi, this.filter)); + } + let result = filterArray.map(item => item.filterIt()).reduce((pre, cur) => pre || cur, false); + return result; + } + + filterWithNest(desc, filter) { + let filterArray = []; + const nestFilter = new NestFilter(); + const targetSuiteArray = this.coreContext.getDefaultService('suite').targetSuiteArray; + const targetSpecArray = this.coreContext.getDefaultService('suite').targetSpecArray; + const suiteStack = this.coreContext.getDefaultService('suite').suitesStack; + let isFilter = nestFilter.filterNestName(targetSuiteArray, targetSpecArray, suiteStack, desc); + const isFullRun = this.coreContext.getDefaultService('suite').fullRun; + if (typeof (this.filter) !== 'undefined' && this.filter !== 0 && filter !== 0) { + filterArray.push(new TestTypesFilter('', '', filter, this.filter)); + return filterArray.map(item => item.filterIt()).reduce((pre, cur) => pre || cur, false); + } + if (isFilter && !isFullRun) { + return true; + } + return nestFilter.filterNotClass(this.notClass, suiteStack, desc); + + } + + isRandom() { + return this.random || false; + } + + isBreakOnError() { + return this.breakOnError !== 'true' ? false : true; + } + + setSupportAsync(value) { + this.supportAsync = value; + } + + isSupportAsync() { + return this.supportAsync; + } + + translateParams(parameters) { + const keySet = new Set(KEYSET); + let targetParams = {}; + for (const key in parameters) { + if (keySet.has(key)) { + var newKey = key.replace('-s ', ''); + targetParams[newKey] = parameters[key]; + } + } + return targetParams; + } + translateParamsToString(parameters) { + const keySet = new Set(KEYSET); + let targetParams = ''; + for (const key in parameters) { + if (keySet.has(key)) { + targetParams += ' ' + key + ' ' + parameters[key]; + } + } + return targetParams.trim(); + } + + execute() { + } + + checkIfSuiteInSkipRun(desc) { + return this.runSkipped.split(',').some(item => { + return item === desc || item.startsWith(desc + '.') || item.startsWith(desc + '#') || desc.startsWith(item + '.') || this.runSkipped === 'skipped'; + }); + } + + checkIfSpecInSkipRun(desc) { + return this.runSkipped.split(',').some(item => { + if (item.includes('#')) { + return item === desc; + } else { + return desc.startsWith(item + '.') || desc.startsWith(item + '#') || this.runSkipped === 'skipped'; + } + } + ); + } +} + +export { + ConfigService +}; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js new file mode 100644 index 00000000000..334a33db956 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import SysTestKit from '../kit/SysTestKit'; +import fs from '@ohos.file.fs'; +import {TAG} from '../../Constant'; + +const jsCoverageFileName = 'js_coverage.json'; + +export async function collectCoverageData() { + if (globalThis.__coverage__ === undefined) { + console.info(`${TAG} globalThis not have coverage`); + return; + } + const strJson = JSON.stringify(globalThis.__coverage__); + let testMode = globalThis.__testMode__; + console.info(`${TAG} coverage data testMode: ${testMode}`); + let savePath = globalThis.__savePath__; + console.info(`${TAG} write coverage data to: ${savePath}`); + let readPath = globalThis.__readPath__; + console.info(`${TAG} read coverage data in: ${readPath}`); + + // run callback mode if local test or (save path and read path ) is not defined + if (!testMode || !isCoveragePathValid(savePath)) { + console.info(`${TAG} run coverage data in call back mode`); + const strLen = strJson.length; + const maxLen = 500; + const maxCount = Math.floor(strLen / maxLen); + const OHOS_REPORT_COVERAGE_DATA = 'OHOS_REPORT_COVERAGE_DATA:'; + for (let count = 0; count <= maxCount; count++) { + console.info(`${OHOS_REPORT_COVERAGE_DATA} ${strJson.substring(count * maxLen, (count + 1) * maxLen)}`); + await SysTestKit.print(`${OHOS_REPORT_COVERAGE_DATA} ${strJson.substring(count * maxLen, (count + 1) * maxLen)}`); + } + return; + } + console.info(`${TAG} run coverage data in save file mode`); + if (fs.accessSync(savePath)) { + fs.unlinkSync(savePath); + } + + let inputPathDir = savePath.substring(0, savePath.length - jsCoverageFileName.length); + if (!fs.accessSync(inputPathDir)) { + console.info(`${TAG} coverage data create dir: ${inputPathDir}`); + fs.mkdirSync(inputPathDir); + } + + let file = fs.openSync(savePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); + let writeLen = fs.writeSync(file.fd, strJson, {encoding:'utf-8'}); + console.info(`${TAG} write coverage data success: ${writeLen}`); + fs.closeSync(file); + const OHOS_REPORT_COVERAGE_PATH = 'OHOS_REPORT_COVERAGE_PATH:'; + await SysTestKit.print(`${OHOS_REPORT_COVERAGE_PATH} ${readPath}`); + console.info(`${OHOS_REPORT_COVERAGE_PATH} ${readPath}`); +} + +function isCoveragePathValid(inputPath) { + if (!inputPath) { + return false; + } + if (inputPath.indexOf(jsCoverageFileName) === -1) { + return false; + } + return true; +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js new file mode 100644 index 00000000000..6e2f256514c --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {TAG} from '../../Constant'; +import Core from '../../core.js'; + +export default class SysTestKit { + + static delegator = null; + static systemTime = null; + static workerPort = null; + + constructor() { + this.id = 'sysTestKit'; + this.index = 0; + } + + static getDescribeName() { + return Core.getInstance().getDefaultService('suite').getCurrentRunningSuite().description; + } + + static getItName() { + return Core.getInstance().getDefaultService('spec').getCurrentRunningSpec().description; + } + + static getItAttribute() { + return Core.getInstance().getDefaultService('spec').getCurrentRunningSpec().fi; + } + + static actionStart(tag) { + console.info(`${TAG}${JSON.stringify(tag)}`); + var message = '\n' + 'OHOS_REPORT_ACTIONSTART: ' + JSON.stringify(tag) + '\n'; + SysTestKit.print(message); + console.info(`${TAG}${JSON.stringify(tag)} actionStart print success`); + } + + static actionEnd(tag) { + console.info(`${TAG}${JSON.stringify(tag)}`); + var message = '\n' + 'OHOS_REPORT_ACTIONEND: ' + JSON.stringify(tag) + '\n'; + SysTestKit.print(message); + console.info(`${TAG}${JSON.stringify(tag)} actionEnd print success`); + } + + static async existKeyword(keyword, timeout) { + let reg = new RegExp(/^[a-zA-Z0-9]{1,}$/); + if (!reg.test(keyword)) { + throw new Error('keyword must contain more than one string, and only letters and numbers are supported.'); + } + timeout = timeout || 4; + + let searchResult = false; + let cmd = 'hilog -x | grep -i \'' + keyword + '\' | wc -l'; + await executePromise(cmd, timeout).then((data) => { + searchResult = data; + }); + return searchResult; + } + static async print(message) { + if ('printSync' in SysTestKit.delegator) { + console.info(`${TAG}printSync called ...`); + SysTestKit.delegator.printSync(message); + } else { + await SysTestKit.delegator.print(message); + } + } + + static async getRealTime() { + let currentTime = new Date().getTime(); + if (SysTestKit.systemTime !== null && SysTestKit.systemTime !== undefined) { + await SysTestKit.systemTime.getRealTime().then((time) => { + console.info(`${TAG}systemTime.getRealTime success data: ${JSON.stringify(time)}`); + currentTime = time; + }).catch((error) => { + console.error(`${TAG}failed to systemTime.getRealTime because ${JSON.stringify(error)}`); + }); + } + return currentTime; + } +} + +function executePromise(cmd, timeout) { + return new Promise((resolve, reject) => { + SysTestKit.delegator.executeShellCommand(cmd, timeout, + (error, data) => { + console.info(`${TAG}existKeyword CallBack: err : ${JSON.stringify(error)}`); + console.info(`${TAG}existKeyword CallBack: data : ${JSON.stringify(data)}`); + resolve(parseInt(data.stdResult) > 3 ? true : false); + }); + }); +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js new file mode 100644 index 00000000000..1e69ac40104 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ArgumentMatchers { + ANY = ''; + ANY_STRING = ''; + ANY_BOOLEAN = ''; + ANY_NUMBER = ''; + ANY_OBJECT = ''; + ANY_FUNCTION = ''; + MATCH_REGEXS = ''; + + static any() { + } + + static anyString() { + } + + static anyBoolean() { + } + + static anyNumber() { + } + + static anyObj() { + } + + static anyFunction() { + } + + static matchRegexs() { + let regex = arguments[0]; + if (ArgumentMatchers.isRegExp(regex)) { + return regex; + } + throw Error('not a regex'); + } + + static isRegExp(value) { + return Object.prototype.toString.call(value) === '[object RegExp]'; + } + + matcheReturnKey() { + let arg = arguments[0]; + let regex = arguments[1]; + let stubSetKey = arguments[2]; + + if (stubSetKey && stubSetKey == this.ANY) { + return this.ANY; + } + + if (typeof arg === 'string' && !regex) { + return this.ANY_STRING; + } + + if (typeof arg === 'boolean' && !regex) { + return this.ANY_BOOLEAN; + } + + if (typeof arg === 'number' && !regex) { + return this.ANY_NUMBER; + } + + if (typeof arg === 'object' && !regex) { + return this.ANY_OBJECT; + } + + if (typeof arg === 'function' && !regex) { + return this.ANY_FUNCTION; + } + + if (typeof arg === 'string' && regex) { + return regex.test(arg); + } + + return null; + } + + matcheStubKey() { + let key = arguments[0]; + + if (key === ArgumentMatchers.any) { + return this.ANY; + } + + if (key === ArgumentMatchers.anyString) { + return this.ANY_STRING; + } + if (key === ArgumentMatchers.anyBoolean) { + return this.ANY_BOOLEAN; + } + if (key === ArgumentMatchers.anyNumber) { + return this.ANY_NUMBER; + } + if (key === ArgumentMatchers.anyObj) { + return this.ANY_OBJECT; + } + if (key === ArgumentMatchers.anyFunction) { + return this.ANY_FUNCTION; + } + + if (ArgumentMatchers.isRegExp(key)) { + return key; + } + + return null; + } +} + +export default ArgumentMatchers; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js new file mode 100644 index 00000000000..c6a866a6df6 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ExtendInterface { + constructor(mocker) { + this.mocker = mocker; + } + + stub() { + this.params = arguments; + return this; + } + + stubMockedCall(returnInfo) { + this.mocker.stubApply(this, this.params, returnInfo); + } + + afterReturn(value) { + this.stubMockedCall(function () { + return value; + }); + } + + afterReturnNothing() { + this.stubMockedCall(function () { + return undefined; + }); + } + + afterAction(action) { + this.stubMockedCall(action); + } + + afterThrow(msg) { + this.stubMockedCall(function () { + throw msg; + }); + } + + clear() { + this.mocker.clear(); + } +} + +export default ExtendInterface; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js new file mode 100644 index 00000000000..da220c7116b --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js @@ -0,0 +1,353 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import ExtendInterface from './ExtendInterface'; +import VerificationMode from './VerificationMode'; +import ArgumentMatchers from './ArgumentMatchers'; + +class MockKit { + constructor() { + this.mFunctions = []; + this.stubs = new Map(); + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + + init() { + this.reset(); + } + + reset() { + this.mFunctions = []; + this.stubs = {}; + this.recordCalls = {}; + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + + clearAll() { + this.reset(); + var props = Object.keys(this); + for (var i = 0; i < props.length; i++) { + delete this[props[i]]; + } + + var props = Object.getOwnPropertyNames(this); + for (var i = 0; i < props.length; i++) { + delete this[props[i]]; + } + for (var key in this) { + delete this[key]; + } + } + + clear(obj) { + if (!obj) { + throw Error('Please enter an object to be cleaned'); + } + if (typeof obj !== 'object' && typeof obj !== 'function') { + throw new Error('Not a object or static class'); + } + this.recordMockedMethod.forEach(function (value, key, map) { + if (key) { + obj[key] = value; + } + }); + } + + ignoreMock(obj, method) { + if (typeof obj !== 'object' && typeof obj !== 'function') { + throw new Error('Not a object or static class'); + } + if (typeof method !== 'function') { + throw new Error('Not a function'); + } + let og = this.recordMockedMethod.get(method.propName); + if (og) { + obj[method.propName] = og; + this.recordMockedMethod.set(method.propName, undefined); + } + } + + extend(dest, source) { + dest['stub'] = source['stub']; + dest['afterReturn'] = source['afterReturn']; + dest['afterReturnNothing'] = source['afterReturnNothing']; + dest['afterAction'] = source['afterAction']; + dest['afterThrow'] = source['afterThrow']; + dest['stubMockedCall'] = source['stubMockedCall']; + dest['clear'] = source['clear']; + return dest; + } + + stubApply(f, params, returnInfo) { + let values = this.stubs.get(f); + if (!values) { + values = new Map(); + } + let key = params[0]; + if (typeof key === 'undefined') { + key = 'anonymous-mock-' + f.propName; + } else { + key = []; + const matcher = new ArgumentMatchers(); + for (let i = 0; i < params.length; i++) { + const param = params[i]; + const matchKey = matcher.matcheStubKey(param); + if (matchKey) { + key.push(matchKey); + } else { + key.push(param); + } + } + } + this.currentSetKey.set(f, key); + values.set(key, returnInfo); + this.stubs.set(f, values); + } + + getReturnInfo(f, params) { + let values = this.stubs.get(f); + if (!values) { + return undefined; + } + let returnKet = params[0]; + const anonymousName = 'anonymous-mock-' + f.propName; + if (typeof returnKet === 'undefined') { + returnKet = anonymousName; + let stubSetKey = this.currentSetKey.get(f); + + if (stubSetKey && (typeof (returnKet) !== 'undefined')) { + returnKet = stubSetKey; + } + } else { + returnKet = this.getReturnKet(values, params, returnKet, anonymousName); + } + + return values.get(returnKet); + } + + getReturnKet(values, params, defaultValue, anonymousName) { + let flag = true; + let returnKet = defaultValue; + values.forEach((value, paramsKey, map) => { + if ( + flag && + paramsKey !== anonymousName && + paramsKey.length === params.length && + this.checkIsRightValue(paramsKey, params) + ) { + returnKet = paramsKey; + flag = false; + } + }); + return returnKet; + } + + checkIsRightValue(paramsKey, params) { + const matcher = new ArgumentMatchers(); + return paramsKey.every((key, j) => { + if (ArgumentMatchers.isRegExp(key) && typeof params[j] === 'string') { + return key.test(params[j]); + } + const matchKey = matcher.matcheReturnKey(params[j], undefined, key); + if (matchKey && matchKey === key) { + return true; + } else if (this.checkIsEqual(params[j], key)) { + return true; + } + return false; + }); + } + + checkIsEqual(value1, value2) { + if (value1 === value2) { + return true; + } + if (typeof value1 !== typeof value2) { + return false; + } + if (Array.isArray(value1) && Array.isArray(value2)) { + if (value1.length !== value2.length) { + return false; + } + for (let i = 0; i < value1.length; i++) { + if (!this.checkIsEqual(value1[i], value2[i])) { + return false; + } + } + return true; + } + if (Object.prototype.toString.call(value1) === '[object Object]' && + Object.prototype.toString.call(value2) === '[object Object]') { + const keys1 = Object.keys(value1); + const keys2 = Object.keys(value2); + if (keys1.length !== keys2.length) { + return false; + } + for (let key of keys1) { + if (!keys2.includes(key) || !this.checkIsEqual(value1[key], value2[key])) { + return false; + } + } + return true; + } + if (Object.prototype.toString.call(value1) === '[object Date]' && + Object.prototype.toString.call(value2) === '[object Date]' && + value1.getTime() === value2.getTime()) { + return true; + } + if (Object.prototype.toString.call(value1) === '[object RegExp]' && + Object.prototype.toString.call(value2) === '[object RegExp]' && + value1.toString() === value2.toString()) { + return true; + } + return false; + } + + findName(obj, value) { + let properties = this.findProperties(obj); + let name = null; + properties + .filter((item) => item !== 'caller' && item !== 'arguments') + .forEach(function (va1, idx, array) { + if (obj[va1] === value) { + name = va1; + } + }); + return name; + } + + isFunctionFromPrototype(f, container, propName) { + if ( + container.constructor !== Object && + container.constructor.prototype !== container + ) { + return container.constructor.prototype[propName] === f; + } + return false; + } + + findProperties(obj, ...arg) { + function getProperty(newObj) { + if (newObj.__proto__ === null) { + return []; + } + let properties = Object.getOwnPropertyNames(newObj); + return [...properties, ...getProperty(newObj.__proto__)]; + } + return getProperty(obj); + } + + recordMethodCall(originalMethod, args) { + Function.prototype.getName = function () { + return this.name || this.toString().match(/function\s*([^(]*)\(/)[1]; + }; + let name = originalMethod.getName(); + let arglistString = name + '(' + Array.from(args).toString() + ')'; + let records = this.recordCalls.get(arglistString); + if (!records) { + records = 0; + } + records++; + this.recordCalls.set(arglistString, records); + } + + mockFunc(originalObject, originalMethod) { + let tmp = this; + this.originalMethod = originalMethod; + let f = function () { + let args = arguments; + let action = tmp.getReturnInfo(f, args); + if (originalMethod) { + tmp.recordMethodCall(originalMethod, args); + } + if (action) { + return action.apply(this, args); + } + }; + + f.container = null || originalObject; + f.original = originalMethod || null; + + if (originalObject && originalMethod) { + if (typeof originalMethod !== 'function') { + throw new Error('Not a function'); + } + var name = this.findName(originalObject, originalMethod); + originalObject[name] = f; + this.recordMockedMethod.set(name, originalMethod); + f.propName = name; + f.originalFromPrototype = this.isFunctionFromPrototype( + f.original, + originalObject, + f.propName + ); + } + f.mocker = this; + this.mFunctions.push(f); + this.extend(f, new ExtendInterface(this)); + return f; + } + + verify(methodName, argsArray) { + if (!methodName) { + throw Error('not a function name'); + } + let a = this.recordCalls.get(methodName + '(' + argsArray.toString() + ')'); + return new VerificationMode(a ? a : 0); + } + + mockObject(object) { + if (!object || typeof object === 'string') { + throw Error(`this ${object} cannot be mocked`); + } + const _this = this; + let mockedObject = {}; + let keys = Reflect.ownKeys(object); + keys + .filter((key) => typeof Reflect.get(object, key) === 'function') + .forEach((key) => { + mockedObject[key] = object[key]; + mockedObject[key] = _this.mockFunc(mockedObject, mockedObject[key]); + }); + return mockedObject; + } +} + +function ifMockedFunction(f) { + if ( + Object.prototype.toString.call(f) !== '[object Function]' && + Object.prototype.toString.call(f) !== '[object AsyncFunction]' + ) { + throw Error('not a function'); + } + if (!f.stub) { + throw Error('not a mock function'); + } + return true; +} + +function when(f) { + if (!ifMockedFunction(f)) { + throw Error('not a mock function'); + } + return f.stub.bind(f); +} + +export { MockKit, when }; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js new file mode 100644 index 00000000000..aaf2fdfae00 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {expect} from '../../interface'; + +class VerificationMode { + constructor(times) { + this.doTimes = times; + } + + times(count) { + expect(count).assertEqual(this.doTimes); + } + + never() { + console.info(this.doTimes); + expect(0).assertEqual(this.doTimes); + } + + once() { + expect(1).assertEqual(this.doTimes); + } + + atLeast(count) { + if (count > this.doTimes) { + throw Error('failed ' + count + ' greater than the actual execution times of method'); + } + } + + atMost(count) { + if (count < this.doTimes) { + throw Error('failed ' + count + ' less than the actual execution times of method'); + } + } +} + +export default VerificationMode; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/LogExpectError.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/LogExpectError.js new file mode 100644 index 00000000000..5a94cecb462 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/LogExpectError.js @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class LogExpectError { + static getErrorMsg(matcherName, actualValue, expect, originMsg) { + if (matcherName === 'assertNull') { + return 'expect not null, actualValue is ' + (actualValue); + } + if (matcherName === 'assertTrue') { + return 'expect not true, actualValue is ' + (actualValue); + } + if (matcherName === 'assertFalse') { + return 'expect not false, actualValue is ' + (actualValue); + } + if (matcherName === 'assertEqual') { + return 'expect not Equal, actualValue is ' + actualValue + ' equals ' + expect; + } + if (matcherName === 'assertContain') { + return 'expect not have, ' + actualValue + ' have ' + expect; + } + if (matcherName === 'assertInstanceOf') { + return 'expect not InstanceOf, ' + actualValue + ' is ' + + Object.prototype.toString.call(actualValue) + expect; + } + if (matcherName === 'assertLarger') { + return 'expect not Larger, ' + + (actualValue) + ' is larger than ' + expect; + } + if (matcherName === 'assertLargerOrEqual') { + return 'expect not LargerOrEqual, ' + (actualValue) + ' larger than ' + expect; + } + if (matcherName === 'assertLess') { + return 'expect not Less, ' + (actualValue) + ' less than ' + expect; + } + if (matcherName === 'assertLessOrEqual') { + return 'expect not LessOrEqual, ' + (actualValue) + ' is less than ' + expect; + } + if (matcherName === 'assertNaN') { + return 'expect not NaN, actualValue is ' + (actualValue); + } + if (matcherName === 'assertNegUnlimited') { + return 'expect not NegUnlimited, actualValue is ' + (actualValue); + } + if (matcherName === 'assertPosUnlimited') { + return 'expect not PosUnlimited, actualValue is ' + (actualValue); + } + if (matcherName === 'assertUndefined') { + return 'expect not Undefined, actualValue is ' + (actualValue); + } + return originMsg; + } +} +export default LogExpectError; \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js new file mode 100644 index 00000000000..d9327b4b2dc --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js @@ -0,0 +1,217 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import SysTestKit from '../kit/SysTestKit'; +import { collectCoverageData } from '../coverage/coverageCollect'; +import { TAG, PrintTag } from '../../Constant'; + +class OhReport { + constructor(attr) { + this.delegator = attr.delegator; + this.abilityDelegatorArguments = attr.abilityDelegatorArguments; + this.id = 'report'; + this.index = 0; + this.duration = 0; + this.currentThreadName = 'mainThread'; + } + + init(coreContext) { + this.coreContext = coreContext; + this.suiteService = this.coreContext.getDefaultService('suite'); + this.specService = this.coreContext.getDefaultService('spec'); + if (SysTestKit.workerPort !== null) { + this.currentThreadName = SysTestKit.workerPort.name; + } + } + + taskStart() { + } + + async taskDone() { + let summary = this.suiteService.getSummary(); + if (this.abilityDelegatorArguments !== null) { + this.taskDoneTime = new Date().getTime(); + const configService = this.coreContext.getDefaultService('config'); + const suiteService = this.coreContext.getDefaultService('suite'); + const specService = this.coreContext.getDefaultService('spec'); + if (configService['coverage'] === 'true') { + await collectCoverageData(); + } + let message = '\n' + `${PrintTag.OHOS_REPORT_RESULT}: stream=Tests run: ` + summary.total + ', Failure: ' + summary.failure; + message += ', Error: ' + summary.error; + message += ', Pass: ' + summary.pass; + message += ', Ignore: ' + summary.ignore; + if (specService.skipSpecNum > 0) { + message += ', SkipSpec: ' + specService.skipSpecNum; + } + message += '\n' + `${PrintTag.OHOS_REPORT_CODE}: ` + (summary.failure > 0 ? -1 : 0) + '\n'; + let isHasError = summary.failure > 0 || summary.error > 0; + let config = this.coreContext.getDefaultService('config'); + if (config.isBreakOnError() && isHasError) { + // 未执行全部说明 + message += '\n' + `${PrintTag.OHOS_REPORT_RESULT}: breakOnError model, Stopping whole test suite if one specific test case failed or error` + '\n'; + } + message += `${PrintTag.OHOS_REPORT_STATUS}: taskconsuming=` + summary.duration + '\n'; + console.info(`${message}`); + await SysTestKit.print(message); + } + if (SysTestKit.workerPort === null || SysTestKit.workerPort === undefined) { + // ä¸»çº¿ç¨‹æ‰§è¡Œå®Œæˆ ç»“æŸä»»åŠ¡ã€‚ + console.info(`${TAG}report print success`); + this.delegator.finishTest('your test finished!!!', 0, () => { }); + } else { + // worker线程执行完æˆå°†æ•°æ®å‘é€åˆ°ä¸»çº¿ç¨‹ä¸­ã€‚ + let sendData = { + currentThreadName: this.currentThreadName, + summary: summary + }; + console.info(`${TAG}, send data to mainThread, ${this.currentThreadName}, ${JSON.stringify(sendData)}`); + SysTestKit.workerPort.postMessage(sendData); + } + } + + incorrectFormat() { + if (this.coreContext.getDefaultService('config').filterValid.length !== 0) { + var value = this.coreContext.getDefaultService('config').filterValid; + var message = 'this param ' + value.join(',') + ' is invalid' + '\n'; + this.delegator.finishTest(message, 0, () => { + }); + } + } + + incorrectTestSuiteFormat() { + if (this.coreContext.getDefaultService('config').filterXdescribe.length !== 0) { + let value = this.coreContext.getDefaultService('config').filterXdescribe; + let message = 'xdescribe ' + value.join(',') + ' should not contain it' + '\n'; + this.delegator.finishTest(message, 0, () => { + }); + } + } + async suiteStart() { + if (this.abilityDelegatorArguments !== null) { + let specArr = []; + this.suiteService.getAllChildSuiteNum(this.suiteService.getCurrentRunningSuite(), specArr); + let message = '\n' + `${PrintTag.OHOS_REPORT_SUM}: ` + specArr.length; + this.suiteService.setCurrentRunningSuiteDesc(this.suiteService.getRootSuite(), this.suiteService.getCurrentRunningSuite(), ''); + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: class=` + this.suiteService.getCurrentRunningSuiteDesc() + '\n'; + if (this.suiteService.currentRunningSuite.isSkip) { + message += `${PrintTag.OHOS_REPORT_STATUS}: skipReason=` + this.suiteService.currentRunningSuite.skipReason + '\n'; + } + if (SysTestKit.workerPort !== null) { + message += `${PrintTag.OHOS_REPORT_STATUS}: currentWorkerName=` + this.currentThreadName; + } + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${this.suiteService.getCurrentRunningSuite().description} suiteStart print success`); + } + } + + async suiteDone() { + if (this.abilityDelegatorArguments !== null) { + const currentRunningSuite = this.suiteService.getCurrentRunningSuite(); + this.suiteService.setCurrentRunningSuiteDesc(this.suiteService.getRootSuite(), currentRunningSuite, ''); + let message = '\n' + `${PrintTag.OHOS_REPORT_STATUS}: class=` + this.suiteService.getCurrentRunningSuiteDesc(); + if (this.suiteService.currentRunningSuite.isSkip && this.suiteService.currentRunningSuite.skipReason !== '') { + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: skipReason=` + this.suiteService.currentRunningSuite.skipReason; + } + const isPromiseError = currentRunningSuite.isPromiseError; + if (isPromiseError) { + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: shortMsg=Promise(async, await) in describe is not allowed!`; + } + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: suiteconsuming=` + currentRunningSuite.duration; + if (currentRunningSuite.hookError) { + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: ${currentRunningSuite.hookError.message}`; + } + message += '\n'; + if (SysTestKit.workerPort !== null) { + message += `${PrintTag.OHOS_REPORT_STATUS}: currentWorkerName=` + this.currentThreadName; + } + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${currentRunningSuite.description} suiteDone print success`); + } + } + + async specStart() { + if (this.abilityDelegatorArguments !== null) { + let message = '\n' + `${PrintTag.OHOS_REPORT_STATUS}: class=` + this.suiteService.getCurrentRunningSuiteDesc(); + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: current=` + (++this.index); + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: id=JS`; + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: numtests=` + this.specService.getTestTotal(); + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: stream=`; + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: test=` + this.specService.currentRunningSpec.description; + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS_CODE}: 1` + '\n'; + if (this.specService.currentRunningSpec.isSkip) { + message += `${PrintTag.OHOS_REPORT_STATUS}: skipReason=` + this.specService.currentRunningSpec.skipReason + '\n'; + } + if (SysTestKit.workerPort !== null) { + message += `${PrintTag.OHOS_REPORT_STATUS}: currentWorkerName=` + this.currentThreadName; + } + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${this.specService.currentRunningSpec.description} specStart start print success`); + } + } + + async specDone() { + if (this.abilityDelegatorArguments !== null) { + let message = '\n' + `${PrintTag.OHOS_REPORT_STATUS}: class=` + this.suiteService.getCurrentRunningSuiteDesc(); + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: current=` + (this.index); + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: id=JS`; + message += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: numtests=` + this.specService.getTestTotal(); + let messageStack = ''; + let messageCode = ''; + if (this.specService.currentRunningSpec.error) { + messageStack = `${PrintTag.OHOS_REPORT_STATUS}: stack=` + this.specService.currentRunningSpec.error?.stack?.slice(0, -1); + messageCode += `${PrintTag.OHOS_REPORT_STATUS}: stream=`; + messageCode += this.specService.currentRunningSpec.expectMsg !== '' ? + `message: ${this.specService.currentRunningSpec.expectMsg}, Error in ${this.specService.currentRunningSpec.description}, ${this.specService.currentRunningSpec.error?.message}` : + `Error in ${this.specService.currentRunningSpec.description}, ${this.specService.currentRunningSpec.error?.message}`; + messageCode += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: test=` + this.specService.currentRunningSpec.description; + messageCode += '\n' + `${PrintTag.OHOS_REPORT_STATUS_CODE}: -1` + '\n'; + } else if (this.specService.currentRunningSpec) { + if (this.specService.currentRunningSpec.fail) { + messageStack += `${PrintTag.OHOS_REPORT_STATUS}: stack=` + this.specService.currentRunningSpec.fail?.stack?.slice(0, -1); + messageCode += `${PrintTag.OHOS_REPORT_STATUS}: stream=`; + messageCode += this.specService.currentRunningSpec.expectMsg !== '' ? + `message: ${this.specService.currentRunningSpec.expectMsg}, Error in ${this.specService.currentRunningSpec.description}, ${this.specService.currentRunningSpec.fail?.message}` : + `Error in ${this.specService.currentRunningSpec.description}, ${this.specService.currentRunningSpec.fail?.message}`; + messageCode += '\n' + `${PrintTag.OHOS_REPORT_STATUS}: test=` + this.specService.currentRunningSpec.description; + messageCode += '\n' + `${PrintTag.OHOS_REPORT_STATUS_CODE}: -2` + '\n'; + } else { + messageStack += `${PrintTag.OHOS_REPORT_STATUS}: stream=`; + messageCode += `${PrintTag.OHOS_REPORT_STATUS}: test=` + this.specService.currentRunningSpec.description; + messageCode += '\n' + `${PrintTag.OHOS_REPORT_STATUS_CODE}: 0` + '\n'; + messageCode += this.specService.currentRunningSpec.isSkip ? (`${PrintTag.OHOS_REPORT_STATUS}: skipReason=` + this.specService.currentRunningSpec.skipReason + '\n') : ''; + } + } else { + messageCode += '\n'; + } + messageCode += `${PrintTag.OHOS_REPORT_STATUS}: consuming=` + this.specService.currentRunningSpec.duration + '\n'; + if (SysTestKit.workerPort !== null) { + messageCode += `${PrintTag.OHOS_REPORT_STATUS}: currentWorkerName=` + this.currentThreadName; + } + console.info(`${message}`); + console.info(`\n${messageStack}`); + console.info(`\n${messageCode}`); + await SysTestKit.print(message); + await SysTestKit.print(messageStack); + await SysTestKit.print(messageCode); + console.info(`${TAG}${this.specService.currentRunningSpec.description} specDone end print success`); + } + } +} + +export default OhReport; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js new file mode 100644 index 00000000000..4a75453f433 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js @@ -0,0 +1,149 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ReportExtend { + constructor(fileModule) { + this.id = 'extend'; + this.fileModule = fileModule; + } + + init(coreContext) { + this.coreContext = coreContext; + this.suiteService = this.coreContext.getDefaultService('suite'); + } + + taskStart() { + + } + + handleSpecs(specs, report, suiteReport, testsuite) { + for (let testcase of specs) { + report.tests++; + suiteReport.tests++; + let caseReport = { + tag: 'testcase', + name: testcase.description, + status: 'run', + time: '0.0', + classname: testsuite.description + }; + if (testcase.error) { + caseReport.result = false; + caseReport.children = [{ + tag: 'error', + type: '', + message: testcase.error.message + }]; + report.errors++; + suiteReport.errors++; + } else if (testcase.result.failExpects.length > 0) { + caseReport.result = false; + let message = ''; + testcase.result.failExpects.forEach(failExpect => { + message += failExpect.message || ('expect ' + failExpect.actualValue + ' ' + failExpect.checkFunc + ' ' + (failExpect.expectValue || '')) + ';'; + }); + caseReport.children = [{ + tag: 'failure', + type: '', + message: message + }]; + report.failures++; + suiteReport.failures++; + } else { + caseReport.result = true; + } + suiteReport.children.push(caseReport); + } + } + + taskDone() { + const report = { + tag: 'testsuites', + name: 'summary_report', + timestamp: new Date().toDateString(), + time: '1', + errors: 0, + failures: 0, + tests: 0, + children: [] + }; + const rootSuite = this.suiteService.rootSuite; + if (rootSuite && rootSuite.childSuites) { + for (let testsuite of rootSuite.childSuites) { + let suiteReport = { + tag: 'testsuite', + name: testsuite['description'], + errors: 0, + tests: 0, + failures: 0, + time: '0.1', + children: [] + }; + let specs = testsuite['specs']; + this.handleSpecs(specs, report, suiteReport, testsuite); + report.children.push(suiteReport); + } + } + + writeXmlReport(report); + } +} + +function writeXmlReport(report) { + let reportXml = '\n' + json2xml(report); + this.fileModule.writeText({ + uri: 'internal://app/report.xml', + text: reportXml, + success: function () { + console.info('call success callback success'); + }, + fail: function (data, code) { + console.info('call fail callback success:'); + }, + complete: function () { + console.info('call complete callback success'); + } + }); +} + +function handleChild(json, key, hasChildren, childrenStr) { + if (json[key].length > 0) { + hasChildren = true; + for (let child of json[key]) { + childrenStr += json2xml(child); + } + } +} + +function json2xml(json) { + let tagName; + let hasChildren = false; + let childrenStr = ''; + let attrStr = ''; + for (let key in json) { + if (key === 'tag') { + tagName = json[key]; + } else if (key === 'children') { + handleChild(json, key, hasChildren, childrenStr); + } else { + attrStr += ` ${key}="${json[key]}"`; + } + } + let xml = `<${tagName}${attrStr}`; + xml += hasChildren ? `>${childrenStr}` : '/>'; + return xml; +} + +export default ReportExtend; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/service.js b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/service.js new file mode 100644 index 00000000000..0ca605e4269 --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/service.js @@ -0,0 +1,1265 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import SysTestKit from './module/kit/SysTestKit'; +import { TAG } from './Constant'; +import LogExpectError from './module/report/LogExpectError'; +import { NestFilter } from './module/config/Filter'; + +function assertTrueFun(actualValue) { + let result = { + pass: (actualValue) === true, + message: 'expect true, actualValue is ' + actualValue + }; + return result; +} + +function assertEqualFun(actualValue, args) { + let msg = 'expect ' + actualValue + ' equals ' + args[0]; + if (actualValue === args[0]) { // 数值相åŒ,æç¤ºæ•°æ®ç±»åž‹ + const aClassName = Object.prototype.toString.call(actualValue); + const bClassName = Object.prototype.toString.call(args[0]); + msg = 'expect ' + actualValue + aClassName + ' equals ' + args[0] + bClassName + 'strict mode inspect type'; + } + let result = { + pass: (actualValue) === args[0], + expectValue: args[0], + message: msg + }; + return result; +} + +function assertThrowFun(actual, args) { + const result = { + pass: false + }; + if (typeof actual !== 'function') { + result.message = 'toThrow\'s Actual should be a Function'; + } else { + let hasThrow = false; + let throwError; + try { + actual(); + } catch (e) { + hasThrow = true; + throwError = e; + } + if (!hasThrow) { + result.message = 'function did not throw an exception'; + } else if (throwError && throwError.message === args[0]) { + result.pass = true; + } else { + result.message = `expect to throw ${args[0]} , actual throw ${throwError.message}`; + } + } + return result; +} + +class AssertException extends Error { + constructor(message) { + super(); + this.name = 'AssertException'; + this.message = message; + } +} + +function getFuncWithArgsZero(func, timeout, isStressTest) { + return new Promise(async (resolve, reject) => { + let timer = null; + if (!isStressTest) { + timer = setTimeout(() => { + reject(new Error('execute timeout ' + timeout + 'ms')); + }, timeout); + } + try { + await func(); + } catch (err) { + reject(err); + } + timer !== null ? clearTimeout(timer) : null; + resolve(); + }); +} + +function getFuncWithArgsOne(func, timeout, isStressTest) { + return new Promise(async (resolve, reject) => { + let timer = null; + if (!isStressTest) { + timer = setTimeout(() => { + reject(new Error('execute timeout ' + timeout + 'ms')); + }, timeout); + } + + function done() { + timer !== null ? clearTimeout(timer) : null; + resolve(); + } + + try { + await func(done); + } catch (err) { + timer !== null ? clearTimeout(timer) : null; + reject(err); + } + }); +} + +function getFuncWithArgsTwo(func, timeout, paramItem, isStressTest) { + return new Promise(async (resolve, reject) => { + let timer = null; + if (!isStressTest) { + timer = setTimeout(() => { + reject(new Error('execute timeout ' + timeout + 'ms')); + }, timeout); + } + + function done() { + timer !== null ? clearTimeout(timer) : null; + resolve(); + } + + try { + await func(done, paramItem); + } catch (err) { + timer !== null ? clearTimeout(timer) : null; + reject(err); + } + }); +} + +function processFunc(coreContext, func) { + let argNames = ((func || '').toString() + .replace(/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg, '') + .match(/^(function)?\s*[^\(]*\(\s*([^\)]*)\)/m) || ['', '', ''])[2] + .split(',') // split parameters + .map(item => item.replace(/^\s*(_?)(.+?)\1\s*$/, name => name.split('=')[0].trim())) + .filter(String); + let funcLen = func.length; + let processedFunc; + const config = coreContext.getDefaultService('config'); + config.setSupportAsync(true); + const timeout = + (config.timeout === undefined ? 5000 : config.timeout); + const isStressTest = (coreContext.getServices('dataDriver') !== undefined || config.getStress() > 1); + switch (funcLen) { + case 0: { + processedFunc = function () { + return getFuncWithArgsZero(func, timeout, isStressTest); + }; + break; + } + case 1: { + processedFunc = function () { + return getFuncWithArgsOne(func, timeout, isStressTest); + }; + break; + } + default: { + processedFunc = function (paramItem) { + return getFuncWithArgsTwo(func, timeout, paramItem, isStressTest); + }; + break; + } + } + return processedFunc; +} + +function secureRandomNumber() { + return crypto.randomBytes(8).readUInt32LE() / 0xffffffff; +} + + + +class SuiteService { + constructor(attr) { + this.id = attr.id; + this.rootSuite = new SuiteService.Suite({}); + this.currentRunningSuite = this.rootSuite; + this.suitesStack = [this.rootSuite]; + this.targetSuiteArray = []; + this.targetSpecArray = []; + this.currentRunningSuiteDesc = null; + this.fullRun = false; + this.isSkipSuite = false; + this.suiteSkipReason = null; + } + + describe(desc, func) { + const configService = this.coreContext.getDefaultService('config'); + if (this.suitesStack.some(suite => { return suite.description === desc })) { + console.error(`${TAG} Loop nesting occurs : ${desc}`); + this.suiteSkipReason = ''; + this.isSkipSuite = false; + return; + } + let isFilter = this.analyzeConfigServiceClass(configService.class, desc); + if (configService.filterSuite(desc) && isFilter) { + if (this.currentRunningSuite.description === '' || this.currentRunningSuite.description == null) { + console.info(`${TAG}filter suite : ${desc}`); + this.suiteSkipReason = ''; + this.isSkipSuite = false; + return; + } + } + const suite = new SuiteService.Suite({ description: desc }); + if (this.isSkipSuite) { + suite.isSkip = true; + suite.skipReason = this.suiteSkipReason; + } + this.suiteSkipReason = ''; + this.isSkipSuite = false; + if (typeof this.coreContext.getServices('dataDriver') !== 'undefined' && configService['dryRun'] !== 'true') { + let suiteStress = this.coreContext.getServices('dataDriver').dataDriver.getSuiteStress(desc); + for (let i = 1; i < suiteStress; i++) { + this.currentRunningSuite.childSuites.push(suite); + } + } + this.currentRunningSuite.childSuites.push(suite); + this.currentRunningSuite = suite; + this.suitesStack.push(suite); + const res = func.call(); + if (Object.prototype.toString.call(res) === '[object Promise]') { + suite.isPromiseError = true; + } + this.suitesStack.pop(); + this.currentRunningSuite = this.suitesStack.pop(); + this.suitesStack.push(this.currentRunningSuite); + } + xdescribe(desc, func, reason) { + const configService = this.coreContext.getDefaultService('config'); + if (!configService.skipMessage && configService.runSkipped !== 'all') { + if (configService.runSkipped != null && configService.runSkipped !== '') { + let finalDesc = ''; + this.suitesStack.map(suite => { + finalDesc = finalDesc + '.' + suite.description; + }); + finalDesc = (finalDesc + '.' + desc).substring(2); + console.info(`${TAG} finalDesc ${finalDesc}`); + if (configService.checkIfSuiteInSkipRun(finalDesc)) { + console.info(`${TAG} runSkipped suite: ${desc}`); + } else { + console.info(reason == null ? `${TAG} skip suite: ${desc}` : `${TAG} skip suite: ${desc}, and the reason is ${reason}`); + return; + } + } else { + console.info(reason == null ? `${TAG} skip suite: ${desc}` : `${TAG} skip suite: ${desc}, and the reason is ${reason}`); + return; + } + } + this.isSkipSuite = true; + this.suiteSkipReason = reason; + this.describe(desc, func); + } + + beforeAll(func) { + this.currentRunningSuite.beforeAll.push(processFunc(this.coreContext, func)); + } + + beforeEach(func) { + this.currentRunningSuite.beforeEach.push(processFunc(this.coreContext, func)); + } + + beforeItSpecified(itDescs, func) { + this.currentRunningSuite.beforeItSpecified.set(itDescs, processFunc(this.coreContext, func)); + } + + afterItSpecified(itDescs, func) { + this.currentRunningSuite.afterItSpecified.set(itDescs, processFunc(this.coreContext, func)); + } + + afterAll(func) { + this.currentRunningSuite.afterAll.push(processFunc(this.coreContext, func)); + } + + afterEach(func) { + this.currentRunningSuite.afterEach.push(processFunc(this.coreContext, func)); + } + + getCurrentRunningSuite() { + return this.currentRunningSuite; + } + + setCurrentRunningSuite(suite) { + this.currentRunningSuite = suite; + } + + getRootSuite() { + return this.rootSuite; + } + + getCurrentRunningSuiteDesc() { + return this.currentRunningSuiteDesc; + } + + + setCurrentRunningSuiteDesc(suite, currentSuite, prefix) { + if (suite != null && suite === currentSuite) { + this.currentRunningSuiteDesc = prefix; + } else if (suite != null && suite !== currentSuite) { + suite.childSuites.forEach(it => { + let temp = prefix; + if (it.description != null || it.description !== '') { + temp = prefix === '' ? it.description : prefix + '.' + it.description; + } + this.setCurrentRunningSuiteDesc(it, currentSuite, temp); + } + ); + } + } + analyzeConfigServiceClass(configServiceClass, desc) { + if (configServiceClass == null || configServiceClass === '') { + this.fullRun = true; + return false; + } + const targetArray = configServiceClass.split(',').map(item => item.trim()).filter(item => item !== ''); + if (this.targetSuiteArray.length === 0) { + for (let index in targetArray) { + if (targetArray[index].includes('#')) { + this.targetSpecArray.push(targetArray[index]); + } else { + this.targetSuiteArray.push(targetArray[index]); + } + } + + } + return targetArray.indexOf(desc) === -1; + + } + traversalResults(suite, obj, breakOnError) { + if (suite.childSuites.length === 0 && suite.specs.length === 0) { + return; + } + if (suite.specs.length > 0) { + for (const itItem of suite.specs) { + obj.total++; + let itInfo = { + currentThreadName: 'mainThread', + description: suite.description + '#' + itItem.description, + result: -3 + }; + if (SysTestKit.workerPort !== null) { + itInfo.currentThreadName = SysTestKit.workerPort.name; + } + obj.itItemList.push(itInfo); + if (breakOnError && (obj.error > 0 || obj.failure > 0)) { // breakOnErroræ¨¡å¼ + continue; + } + if (itItem.error) { + obj.error++; + itInfo.result = -1; + } else if (itItem.fail) { + obj.failure++; + itInfo.result = -2; + } else if (itItem.pass === true) { + obj.pass++; + itInfo.result = 0; + } + } + } + + obj.duration += suite.duration; + + if (suite.childSuites.length > 0) { + for (const suiteItem of suite.childSuites) { + this.traversalResults(suiteItem, obj, breakOnError); + } + } + + } + + async setSuiteResults(suite, error, coreContext) { + if (suite.childSuites.length === 0 && suite.specs.length === 0) { + return; + } + if (suite.specs.length > 0) { + const specService = coreContext.getDefaultService('spec'); + for (const specItem of suite.specs) { + specService.setCurrentRunningSpec(specItem); + if (error instanceof AssertException) { + specItem.fail = error; + } else { + specItem.error = error; + } + await coreContext.fireEvents('spec', 'specStart', specItem); + await coreContext.fireEvents('spec', 'specDone', specItem); + } + } + if (suite.childSuites.length > 0) { + for (const suiteItem of suite.childSuites) { + await this.setSuiteResults(suiteItem, error, coreContext); + } + } + } + + getSummary() { + let suiteService = this.coreContext.getDefaultService('suite'); + let rootSuite = suiteService.rootSuite; + const specService = this.coreContext.getDefaultService('spec'); + const configService = this.coreContext.getDefaultService('config'); + let breakOnError = configService.isBreakOnError(); + let isError = specService.getStatus(); + let isBreaKOnError = breakOnError && isError; + // itItemList ä¿å­˜å½“å‰ç”¨ä¾‹æ‰§è¡Œæƒ…况, å‘é€åˆ°ä¸»çº¿ç¨‹ç”¨ä¾‹è®¡ç®—最终结果 + let obj = { total: 0, failure: 0, error: 0, pass: 0, ignore: 0, duration: 0, itItemList: []}; + for (const suiteItem of rootSuite.childSuites) { + this.traversalResults(suiteItem, obj, isBreaKOnError); + } + obj.ignore = obj.total - obj.pass - obj.failure - obj.error; + return obj; + } + + init(coreContext) { + this.coreContext = coreContext; + } + + traversalSuites(suite, obj, configService) { + if (suite.childSuites.length === 0 && suite.specs.length === 0) { + return []; + } + if (suite.specs.length > 0) { + let itArray = []; + for (const itItem of suite['specs']) { + if (!configService.filterDesc(suite.description, itItem.description, itItem.fi, null)) { + itArray.push({ 'itName': itItem.description }); + } + } + obj[suite.description] = itArray; + } + if (suite.childSuites.length > 0) { + let suiteArray = []; + for (const suiteItem of suite.childSuites) { + let suiteObj = {}; + this.traversalSuites(suiteItem, suiteObj, configService); + if (!configService.filterSuite(suiteItem.description)) { + suiteArray.push(suiteObj); + } + } + obj.suites = suiteArray; + } + } + + async dryRun(abilityDelegator) { + console.info(`${TAG} rootSuite : ` + JSON.stringify(this.rootSuite)); + let obj = this.rootSuite; + let prefixStack = []; + let suiteArray = []; + let skipSuiteArray = []; + this.analyzeSuitesArray(prefixStack, suiteArray, skipSuiteArray, obj); + const configService = this.coreContext.getDefaultService('config'); + let result; + if (configService.skipMessage) { + result = { 'suites': suiteArray, 'skipSuites': skipSuiteArray }; + } else { + result = { 'suites': suiteArray }; + } + let strJson = JSON.stringify(result); + let strLen = strJson.length; + let maxLen = 500; + let maxCount = Math.floor(strLen / maxLen); + for (let count = 0; count <= maxCount; count++) { + await SysTestKit.print(strJson.substring(count * maxLen, (count + 1) * maxLen)); + } + console.info(`${TAG}dryRun print success`); + abilityDelegator.finishTest('dry run finished!!!', 0, () => { }); + } + + //å°†suitesArray的嵌套结构展开æˆä¸‰å±‚结构 + analyzeSuitesArray(prefixStack, suiteArray, skipSuiteArray, obj) { + obj.childSuites.map(suite => { + if (suite.description != null && suite.description !== '') { + let prefix = ''; + if (prefixStack.length > 0) { + prefix = prefixStack.join('.') + '.' + suite.description; + } else { + prefix = suite.description; + } + prefixStack.push(suite.description); + let temp = {}; + temp[prefix] = []; + let skipTemp = {}; + skipTemp[prefix] = []; + suite.specs.map(spec => { + let it = { 'itName': spec.description }; + spec.isSkip ? skipTemp[prefix].push(it) : temp[prefix].push(it); + }); + suiteArray.push(temp); + skipSuiteArray.push(skipTemp); + } + this.analyzeSuitesArray(prefixStack, suiteArray, skipSuiteArray, suite); + prefixStack.pop(); + }); + } + //获å–当剿µ‹è¯•å¥—ä¸‹çš„æ‰€æœ‰æµ‹è¯•ç”¨ä¾‹æ•°é‡ + getAllChildSuiteNum(suite, specArray) { + if (suite.specs != null) { + suite.specs.forEach(spec => specArray.push(spec)); + } + if (suite.childSuites != null) { + suite.childSuites.forEach(it => this.getAllChildSuiteNum(it, specArray)); + } + } + + execute() { + const configService = this.coreContext.getDefaultService('config'); + if (configService.filterValid.length !== 0) { + this.coreContext.fireEvents('task', 'incorrectFormat'); + return; + } + if (configService.filterXdescribe.length !== 0) { + this.coreContext.fireEvents('task', 'incorrectTestSuiteFormat'); + return; + } + if (configService.isRandom() && this.rootSuite.childSuites.length > 0) { + this.rootSuite.childSuites.sort(function () { + return +('0.' + (+ new Date() + '').split('').reverse().join('')) > 0.5 ? -1 : 1; + }); + this.currentRunningSuite = this.rootSuite.childSuites[0]; + } + if (configService.isSupportAsync()) { + console.info(`${TAG} rootSuite:` + JSON.stringify(this.rootSuite)); + let asyncExecute = async () => { + await this.coreContext.fireEvents('task', 'taskStart'); + await this.rootSuite.asyncRun(this.coreContext); + }; + asyncExecute().then(async () => { + await this.coreContext.fireEvents('task', 'taskDone'); + }); + } else { + console.info('${TAG} rootSuite:' + JSON.stringify(this.rootSuite)); + this.coreContext.fireEvents('task', 'taskStart'); + this.rootSuite.run(this.coreContext); + this.coreContext.fireEvents('task', 'taskDone'); + } + } + + apis() { + const _this = this; + return { + describe: function (desc, func) { + return _this.describe(desc, func); + }, + xdescribe: function (desc, func, reason) { + return _this.xdescribe(desc, func, reason); + }, + beforeItSpecified: function (itDescs, func) { + return _this.beforeItSpecified(itDescs, func); + }, + afterItSpecified: function (itDescs, func) { + return _this.afterItSpecified(itDescs, func); + }, + beforeAll: function (func) { + return _this.beforeAll(func); + }, + beforeEach: function (func) { + return _this.beforeEach(func); + }, + afterAll: function (func) { + return _this.afterAll(func); + }, + afterEach: function (func) { + return _this.afterEach(func); + } + }; + } +} + +SuiteService.Suite = class { + constructor(attrs) { + this.description = attrs.description || ''; + this.childSuites = []; + this.specs = []; + this.beforeAll = []; + this.afterAll = []; + this.beforeItSpecified = new Map(); + this.afterItSpecified = new Map(); + this.beforeEach = []; + this.afterEach = []; + this.duration = 0; + this.hookError = null; + this.isSkip = false; + this.skipReason = ''; + } + + pushSpec(spec) { + this.specs.push(spec); + } + + removeSpec(desc) { + this.specs = this.specs.filter((item, index) => { + return item.description !== desc; + }); + } + + getSpecsNum() { + return this.specs.length; + } + + isRun(coreContext) { + const configService = coreContext.getDefaultService('config'); + const suiteService = coreContext.getDefaultService('suite'); + const specService = coreContext.getDefaultService('spec'); + let breakOnError = configService.isBreakOnError(); + let isError = specService.getStatus(); + return breakOnError && isError; + } + + run(coreContext) { + const suiteService = coreContext.getDefaultService('suite'); + suiteService.setCurrentRunningSuite(this); + if (this.description !== '') { + coreContext.fireEvents('suite', 'suiteStart', this); + } + this.runHookFunc('beforeAll'); + if (this.specs.length > 0) { + const configService = coreContext.getDefaultService('config'); + if (configService.isRandom()) { + this.specs.sort(function () { + return +('0.' + (+ new Date() + '').split('').reverse().join('')) > 0.5 ? -1 : 1; + }); + } + for (let spec in this.specs) { + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + break; + } + this.runHookFunc('beforeEach'); + spec.run(coreContext); + this.runHookFunc('afterEach'); + } + } + if (this.childSuites.length > 0) { + for (let suite in this.childSuites) { + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + break; + } + suite.run(coreContext); + suiteService.setCurrentRunningSuite(suite); + } + } + this.runHookFunc('afterAll'); + if (this.description !== '') { + coreContext.fireEvents('suite', 'suiteDone'); + } + } + + async runBeforeItSpecified(beforeItSpecified, specItem) { + for (const [itNames, hookFunc] of beforeItSpecified) { + if ((Object.prototype.toString.call(itNames) === '[object Array]' && itNames.includes(specItem.description)) || + (Object.prototype.toString.call(itNames) === '[object String]' && itNames === specItem.description)) { + await Reflect.apply(hookFunc, null, []); + } + break; + } + } + + async runAfterItSpecified(beforeItSpecified, specItem) { + for (const [itNames, hookFunc] of beforeItSpecified) { + if ((Object.prototype.toString.call(itNames) === '[object Array]' && itNames.includes(specItem.description)) || + (Object.prototype.toString.call(itNames) === '[object String]' && itNames === specItem.description)) { + await Reflect.apply(hookFunc, null, []); + } + break; + } + } + + async asyncRunSpecs(coreContext) { + const configService = coreContext.getDefaultService('config'); + if (configService.isRandom()) { + this.specs.sort(function () { + return +('0.' + (+ new Date() + '').split('').reverse().join('')) > 0.5 ? -1 : 1; + }); + } + const specService = coreContext.getDefaultService('spec'); + for (let specItem of this.specs) { + specService.setCurrentRunningSpec(specItem); + // é‡é”™å³åœæ¨¡å¼,å‘现用例有问题,直接返回,ä¸åœ¨æ‰§è¡ŒåŽé¢çš„it + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + console.info('break description :' + this.description); + break; + } + await coreContext.fireEvents('spec', 'specStart', specItem); + try { + await this.runBeforeItSpecified(this.beforeItSpecified, specItem); + await this.runAsyncHookFunc('beforeEach'); + await specItem.asyncRun(coreContext); + await this.runAfterItSpecified(this.afterItSpecified, specItem); + await this.runAsyncHookFunc('afterEach'); + } catch (e) { + console.error(`${TAG}stack:${e?.stack}`); + console.error(`${TAG}stack end`); + if (e instanceof AssertException) { + specItem.fail = e; + } else { + specItem.error = e; + } + specService.setStatus(true); + } + specItem.setResult(); + await coreContext.fireEvents('spec', 'specDone', specItem); + specService.setCurrentRunningSpec(null); + } + } + + async asyncRunChildSuites(coreContext) { + for (let i = 0; i < this.childSuites.length; i++) { + // é‡é”™å³åœæ¨¡å¼, å‘现用例有问题,直接返回,ä¸åœ¨æ‰§è¡ŒåŽé¢çš„description + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + console.info(`${TAG}break description : ${this.description}`); + break; + } + await this.childSuites[i].asyncRun(coreContext); + } + } + + async asyncRun(coreContext) { + const suiteService = coreContext.getDefaultService('suite'); + const specService = coreContext.getDefaultService('spec'); + + suiteService.setCurrentRunningSuite(this); + suiteService.suitesStack.push(this); + if (this.description !== '') { + await coreContext.fireEvents('suite', 'suiteStart', this); + } + + try { + await this.runAsyncHookFunc('beforeAll'); + } catch (error) { + console.error(`${TAG}${error?.stack}`); + this.hookError = error; + } + + if (this.hookError !== null) { + specService.setStatus(true); + await suiteService.setSuiteResults(this, this.hookError, coreContext); + } + + if (this.specs.length > 0 && this.hookError === null) { + await this.asyncRunSpecs(coreContext); + } + + if (this.childSuites.length > 0 && this.hookError === null) { + await this.asyncRunChildSuites(coreContext); + } + + try { + await this.runAsyncHookFunc('afterAll'); + } catch (error) { + console.error(`${TAG}${error?.stack}`); + this.hookError = error; + specService.setStatus(true); + } + + if (this.description !== '') { + await coreContext.fireEvents('suite', 'suiteDone'); + let childSuite = suiteService.suitesStack.pop(); + let currentRunningSuite = suiteService.suitesStack.pop(); + suiteService.setCurrentRunningSuite(currentRunningSuite); + suiteService.suitesStack.push(currentRunningSuite); + } + } + + runHookFunc(hookName) { + if (this[hookName] && this[hookName].length > 0) { + this[hookName].forEach(func => { + try { + func(); + } catch (e) { + console.error(`${TAG}${e.stack}`); + } + }); + } + } + + async runAsyncHookFunc(hookName) { + for (const hookItem of this[hookName]) { + try { + await hookItem(); + } catch (error) { + error['message'] += `, error in ${hookName} function`; + throw error; + } + + } + } +}; + +class SpecService { + constructor(attr) { + this.id = attr.id; + this.totalTest = 0; + this.hasError = false; + this.skipSpecNum = 0; + this.isSkipSpec = false; + this.specSkipReason = ''; + } + + init(coreContext) { + this.coreContext = coreContext; + } + + setCurrentRunningSpec(spec) { + this.currentRunningSpec = spec; + } + + setStatus(obj) { + this.hasError = obj; + } + + getStatus() { + return this.hasError; + } + + getTestTotal() { + return this.totalTest; + } + + getCurrentRunningSpec() { + return this.currentRunningSpec; + } + + + getSkipSpecNum() { + return this.skipSpecNum; + } + + initSpecService() { + this.isSkipSpec = false; + this.specSkipReason = ''; + } + + it(desc, filter, func) { + const suiteService = this.coreContext.getDefaultService('suite'); + const configService = this.coreContext.getDefaultService('config'); + let isFilter = new NestFilter().filterNestName(suiteService.targetSuiteArray, suiteService.targetSpecArray, suiteService.suitesStack, desc); + if (configService.filterWithNest(desc, filter)) { + console.info(`${TAG}filter it :${desc}`); + this.initSpecService(); + return; + } + if (configService.filterDesc(suiteService.currentRunningSuite.description, desc, filter, this.coreContext) && isFilter && !suiteService.fullRun) { + console.info(`${TAG}filter it :${desc}`); + this.initSpecService(); + } else { + let processedFunc = processFunc(this.coreContext, func); + const spec = new SpecService.Spec({ description: desc, fi: filter, fn: processedFunc }); + if (this.isSkipSpec) { + spec.isSkip = true; + spec.skipReason = this.specSkipReason; + } + this.initSpecService(); + if (configService.runSkipped === 'skipped' && !spec.isSkip) { + console.info(`${TAG} runSkipped is skipped , just run xit, don't run it: ${spec.description}`); + return; + } + if (suiteService.getCurrentRunningSuite().isSkip && !spec.isSkip) { + configService.filterXdescribe.push(suiteService.getCurrentRunningSuite().description); + } + if (typeof this.coreContext.getServices('dataDriver') !== 'undefined' && configService['dryRun'] !== 'true') { + let specStress = this.coreContext.getServices('dataDriver').dataDriver.getSpecStress(desc); + for (let i = 1; i < specStress; i++) { + this.totalTest++; + suiteService.getCurrentRunningSuite().pushSpec(spec); + } + } + // dryRun 状æ€ä¸‹ä¸ç»Ÿè®¡åŽ‹åŠ›æµ‹è¯•é‡å¤æ•°æ® + if (configService['dryRun'] !== 'true') { + let stress = configService.getStress(); // 命令é…置压力测试 + console.info(`${TAG}stress length : ${stress}`); + for (let i = 1; i < stress; i++) { + this.totalTest++; + suiteService.getCurrentRunningSuite().pushSpec(spec); + } + } + this.totalTest++; + suiteService.getCurrentRunningSuite().pushSpec(spec); + } + } + + xit(desc, filter, func, reason) { + const configService = this.coreContext.getDefaultService('config'); + const suiteService = this.coreContext.getDefaultService('suite'); + if (!configService.skipMessage && configService.runSkipped !== 'all') { + if (configService.runSkipped != null && configService.runSkipped !== '') { + let finalDesc = ''; + suiteService.suitesStack.map(suite => { + finalDesc = finalDesc + '.' + suite.description; + }); + finalDesc = (finalDesc + '#' + desc).substring(2); + if (configService.checkIfSpecInSkipRun(finalDesc)) { + console.info(`${TAG} runSkipped spec: ${desc}`); + } else { + console.info(reason == null ? `${TAG} skip spec: ${desc}` : `${TAG} skip spec: ${desc}, and the reason is ${reason}`); + return; + } + } else { + console.info(reason == null ? `${TAG} skip spec: ${desc}` : `${TAG} skip spec: ${desc}, and the reason is ${reason}`); + return; + } + } + this.skipSpecNum++; + this.isSkipSpec = true; + this.specSkipReason = reason; + this.it(desc, filter, func); + } + + apis() { + const _this = this; + return { + it: function (desc, filter, func) { + return _this.it(desc, filter, func); + }, + xit: function (desc, filter, func, reason) { + return _this.xit(desc, filter, func, reason); + } + }; + } +} + +SpecService.Spec = class { + constructor(attrs) { + this.description = attrs.description || ''; + this.fi = attrs.fi; + this.fn = attrs.fn || function () { + }; + this.fail = undefined; + this.error = undefined; + this.duration = 0; + this.startTime = 0; + this.isExecuted = false; // 当å‰ç”¨ä¾‹æ˜¯å¦æ‰§è¡Œ + this.isSkip = false; + this.skipReason = ''; + this.expectMsg = ''; + } + + setResult() { + if (this.fail) { + this.pass = false; + } else { + this.pass = true; + } + } + + run(coreContext) { + const specService = coreContext.getDefaultService('spec'); + specService.setCurrentRunningSpec(this); + coreContext.fireEvents('spec', 'specStart', this); + this.isExecuted = true; + try { + let dataDriver = coreContext.getServices('dataDriver'); + if (typeof dataDriver === 'undefined') { + this.fn(); + } else { + let suiteParams = dataDriver.dataDriver.getSuiteParams(); + let specParams = dataDriver.dataDriver.getSpecParams(); + console.info(`${TAG}[suite params] ${JSON.stringify(suiteParams)}`); + console.info(`${TAG}[spec params] ${JSON.stringify(specParams)}`); + if (this.fn.length === 0) { + this.fn(); + } else if (specParams.length === 0) { + this.fn(suiteParams); + } else { + specParams.forEach(paramItem => this.fn(Object.assign({}, paramItem, suiteParams))); + } + } + this.setResult(); + } catch (e) { + this.error = e; + specService.setStatus(true); + } + coreContext.fireEvents('spec', 'specDone', this); + } + + async asyncRun(coreContext) { + const dataDriver = coreContext.getServices('dataDriver'); + if (typeof dataDriver === 'undefined') { + await this.fn(); + } else { + const suiteParams = dataDriver.dataDriver.getSuiteParams(); + const specParams = dataDriver.dataDriver.getSpecParams(); + console.info(`[suite params] ${JSON.stringify(suiteParams)}`); + console.info(`[spec params] ${JSON.stringify(specParams)}`); + if (this.fn.length === 0) { + await this.fn(); + } else if (specParams.length === 0) { + await this.fn(suiteParams); + } else { + for (const paramItem of specParams) { + await this.fn(Object.assign({}, paramItem, suiteParams)); + } + } + } + + this.isExecuted = true; + } + + filterCheck(coreContext) { + const specService = coreContext.getDefaultService('spec'); + specService.setCurrentRunningSpec(this); + return true; + } +}; + +class ExpectService { + constructor(attr) { + this.id = attr.id; + this.matchers = {}; + this.customMatchers = []; + } + + expect(actualValue) { + return this.wrapMatchers(actualValue); + } + + init(coreContext) { + this.coreContext = coreContext; + this.addMatchers(this.basicMatchers()); + } + + addMatchers(matchers) { + for (const matcherName in matchers) { + if (Object.prototype.hasOwnProperty.call(matchers, matcherName)) { + this.matchers[matcherName] = matchers[matcherName]; + } + } + } + + removeMatchers(customAssertionName) { + if (customAssertionName === 'all') { + for (const matcherName in this.matchers) { + this.matchers[matcherName] = this.customMatchers.includes(matcherName) + ? (() => {throw new Error(`${matcherName} is unregistered`)}) : undefined; + } + } else { + this.matchers[customAssertionName] = () => { + throw new Error(`${customAssertionName} is unregistered`); + }; + } + } + + basicMatchers() { + return { + assertTrue: assertTrueFun, + assertEqual: assertEqualFun, + assertThrow: assertThrowFun + }; + } + + initWrapMatchers(currentRunningSpec) { + return { + // 翻转标识 + isNot: false, + // 翻转方法 + not: function () { + this.isNot = true; + return this; + }, + message: function (msg) { + currentRunningSpec.expectMsg = msg; + console.info(`${TAG} msg: ${msg}`); + return this; + } + }; + + } + + handleWithAssertPromise(_this, wrappedMatchers, matcherName, actualValue, currentRunningSpec, currentRunningSuite) { + wrappedMatchers[matcherName] = async function (...args) { + await _this.matchers[matcherName](actualValue, args).then(function (result) { + if (wrappedMatchers.isNot) { + result.pass = !result.pass; + } + result.actualValue = actualValue; + result.checkFunc = matcherName; + if (!result.pass) { + const assertError = new AssertException(result.message); + currentRunningSpec ? currentRunningSpec.fail = assertError : currentRunningSuite.hookError = assertError; + throw assertError; + } + }); + }; + } + + handleWithoutAssertPromise(_this, wrappedMatchers, matcherName, actualValue, currentRunningSpec, currentRunningSuite) { + wrappedMatchers[matcherName] = function (...args) { + const result = _this.customMatchers.includes(matcherName) + ? _this.matchers[matcherName](actualValue, args[0]) : _this.matchers[matcherName](actualValue, args); + if (wrappedMatchers.isNot) { + result.pass = !result.pass; + result.message = LogExpectError.getErrorMsg(matcherName, actualValue, args[0], result.message); + } + result.actualValue = actualValue; + result.checkFunc = matcherName; + if (!result.pass) { + const assertError = new AssertException(result.message); + currentRunningSpec ? currentRunningSpec.fail = assertError : currentRunningSuite.hookError = assertError; + throw assertError; + } + }; + } + + addAssert(wrappedMatchers, matcherName, actualValue) { + const _this = this; + const specService = _this.coreContext.getDefaultService('spec'); + const currentRunningSpec = specService.getCurrentRunningSpec(); + const currentRunningSuite = _this.coreContext.getDefaultService('suite').getCurrentRunningSuite(); + if (matcherName.search('assertPromise') === 0) { + this.handleWithAssertPromise(_this, wrappedMatchers, matcherName, actualValue, currentRunningSpec, currentRunningSuite); + } else { + this.handleWithoutAssertPromise(_this, wrappedMatchers, matcherName, actualValue, currentRunningSpec, currentRunningSuite); + } + } + + wrapMatchers(actualValue) { + const _this = this; + const specService = _this.coreContext.getDefaultService('spec'); + const currentRunningSpec = specService.getCurrentRunningSpec(); + const wrappedMatchers = this.initWrapMatchers(currentRunningSpec); + const currentRunningSuite = _this.coreContext.getDefaultService('suite').getCurrentRunningSuite(); + for (const matcherName in this.matchers) { + let result = Object.prototype.hasOwnProperty.call(this.matchers, matcherName); + if (!result) { + continue; + } + this.addAssert(wrappedMatchers, matcherName, actualValue); + } + return wrappedMatchers; + } + + apis() { + const _this = this; + return { + expect: function (actualValue) { + return _this.expect(actualValue); + } + }; + } +} + +class ReportService { + constructor(attr) { + this.id = attr.id; + } + + init(coreContext) { + this.coreContext = coreContext; + this.specService = this.coreContext.getDefaultService('spec'); + this.suiteService = this.coreContext.getDefaultService('suite'); + this.duration = 0; + } + + taskStart() { + console.info(`${TAG}[start] start run suites`); + } + + async suiteStart() { + console.info(`${TAG}[suite start]${this.suiteService.getCurrentRunningSuite().description}`); + } + + async specStart() { + console.info(`${TAG}start running case '${this.specService.currentRunningSpec.description}'`); + this.index = this.index + 1; + let spec = this.specService.currentRunningSpec; + spec.startTime = await SysTestKit.getRealTime(); + } + + async specDone() { + let msg = ''; + let spec = this.specService.currentRunningSpec; + let suite = this.suiteService.currentRunningSuite; + spec.duration = await SysTestKit.getRealTime() - spec.startTime; + suite.duration += spec.duration; + if (spec.error) { + this.formatPrint('error', spec.description + ' ; consuming ' + spec.duration + 'ms'); + this.formatPrint('errorDetail', spec.error); + } else if (spec.fail) { + this.formatPrint('fail', spec.description + ' ; consuming ' + spec.duration + 'ms'); + this.formatPrint('failDetail', spec.fail?.message); + } else { + this.formatPrint('pass', spec.description + ' ; consuming ' + spec.duration + 'ms'); + } + this.formatPrint(this.specService.currentRunningSpec.error, msg); + } + + suiteDone() { + let suite = this.suiteService.currentRunningSuite; + let message = suite.hookError ? `, ${suite.hookError?.message}` : ''; + console.info(`[suite end] ${suite.description} consuming ${suite.duration} ms${message}`); + } + + taskDone() { + let msg = ''; + let summary = this.suiteService.getSummary(); + msg = 'total cases:' + summary.total + ';failure ' + summary.failure + ',' + 'error ' + summary.error; + msg += ',pass ' + summary.pass + '; consuming ' + summary.duration + 'ms'; + console.info(`${TAG}${msg}`); + console.info(`${TAG}[end] run suites end`); + } + + incorrectFormat() { + if (this.coreContext.getDefaultService('config').filterValid.length !== 0) { + this.coreContext.getDefaultService('config').filterValid.forEach(function (item) { + console.info(`${TAG}this param ${item} is invalid`); + }); + } + } + + incorrectTestSuiteFormat() { + if (this.coreContext.getDefaultService('config').filterXdescribe.length !== 0) { + this.coreContext.getDefaultService('config').filterXdescribe.forEach(function (item) { + console.info(`${TAG}xdescribe: ${item} should not contain it`); + }); + } + } + + formatPrint(type, msg) { + switch (type) { + case 'pass': + console.info(`${TAG}[pass]${msg}`); + break; + case 'fail': + console.info(`${TAG}[fail]${msg}`); + break; + case 'failDetail': + console.info(`${TAG}[failDetail]${msg}`); + break; + case 'error': + console.info(`${TAG}[error]${msg}`); + break; + case 'errorDetail': + console.info(`${TAG}[errorDetail]${msg}`); + break; + } + } + + sleep(numberMillis) { + var now = new Date(); + var exitTime = now.getTime() + numberMillis; + while (true) { + now = new Date(); + if (now.getTime() > exitTime) { + return; + } + } + } +} + +export { + SuiteService, + SpecService, + ExpectService, + ReportService +}; diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/testrunner/OpenHarmonyTestRunner.ts b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/testrunner/OpenHarmonyTestRunner.ts new file mode 100644 index 00000000000..e6f4c1b12dd --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/@ohos+hypium@1.0.24/oh_modules/@ohos/hypium/src/main/testrunner/OpenHarmonyTestRunner.ts @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { abilityDelegatorRegistry, TestRunner } from '@kit.TestKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { hilog } from '@kit.PerformanceAnalysisKit'; +import { resourceManager } from '@kit.LocalizationKit'; +import { util } from '@kit.ArkTS'; +import { Hypium } from '@ohos/hypium'; +import testsuite from '../test/List.test'; + +let abilityDelegator: abilityDelegatorRegistry.AbilityDelegator; +let abilityDelegatorArguments: abilityDelegatorRegistry.AbilityDelegatorArgs; +let jsonPath: string = 'mock/mock-config.json'; +let domain: number = 0x0000; //日志标识,0x0000作为测试框架的业务标识 +let tag: string = 'testTag'; //日志标识字符串,作为tag标识当å‰runner类下的测试行为 + +export default class OpenHarmonyTestRunner implements TestRunner { + constructor() { + } + + onPrepare() { + hilog.info(domain, tag, '%{public}s', 'OpenHarmonyTestRunner OnPrepare'); + } + + async onRun() { + hilog.info(domain, tag, '%{public}s', 'OpenHarmonyTestRunner onRun run'); + abilityDelegatorArguments = abilityDelegatorRegistry.getArguments(); + abilityDelegator = abilityDelegatorRegistry.getAbilityDelegator(); + let moduleName = abilityDelegatorArguments.parameters['-m']; + let context = abilityDelegator.getAppContext().getApplicationContext().createModuleContext(moduleName); + let mResourceManager = context.resourceManager; + await checkMock(abilityDelegator, mResourceManager); + hilog.info(domain, tag, '%{public}s', 'start run testcase!!!'); + Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite); + hilog.info(domain, tag, '%{public}s', 'OpenHarmonyTestRunner onRun end'); + } +} + +async function checkMock(abilityDelegator: abilityDelegatorRegistry.AbilityDelegator, resourceManager: resourceManager.ResourceManager) { + let rawFile: Uint8Array; + try { + rawFile = resourceManager.getRawFileContentSync(jsonPath); + hilog.info(domain, tag, 'MockList file exists'); + let mockStr: string = util.TextDecoder.create("utf-8", { ignoreBOM: true }).decodeWithStream(rawFile); + let mockMap: Record = getMockList(mockStr); + try { + abilityDelegator.setMockList(mockMap); + } catch (error) { + let code = (error as BusinessError).code; + let message = (error as BusinessError).message; + hilog.error(domain, tag, `abilityDelegator.setMockList failed, error code: ${code}, message: ${message}.`); + } + } catch (error) { + let code = (error as BusinessError).code; + let message = (error as BusinessError).message; + hilog.error(domain, tag, `ResourceManager:callback getRawFileContent failed, error code: ${code}, message: ${message}.`); + } +} + +function getMockList(jsonStr: string) { + let jsonObj: Record = JSON.parse(jsonStr); + let map: Map = new Map(Object.entries(jsonObj)); + let mockList: Record = {}; + map.forEach((value: object, key: string) => { + let realValue: string = value['source'].toString(); + mockList[key] = realValue; + }); + hilog.info(domain, tag, '%{public}s', 'mock-json value:' + JSON.stringify(mockList) ?? ''); + return mockList; +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/lock.json5 b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/lock.json5 new file mode 100644 index 00000000000..a50e2d793fa --- /dev/null +++ b/ArkUIKit/ShapeDrawing/oh_modules/.ohpm/lock.json5 @@ -0,0 +1,55 @@ +{ + "lockVersion": "1.0", + "settings": { + "resolveConflict": true, + "resolveConflictStrict": false, + "installAll": true + }, + "overrides": {}, + "overrideDependencyMap": {}, + "modules": { + ".": { + "name": "", + "dependencies": {}, + "devDependencies": { + "@ohos/hypium": { + "specifier": "1.0.24", + "version": "1.0.24" + }, + "@ohos/hamock": { + "specifier": "1.0.0", + "version": "1.0.0" + } + }, + "dynamicDependencies": {}, + "maskedByOverrideDependencyMap": false + }, + "entry": { + "name": "entry", + "dependencies": {}, + "devDependencies": {}, + "dynamicDependencies": {}, + "maskedByOverrideDependencyMap": false + } + }, + "packages": { + "@ohos/hypium@1.0.24": { + "integrity": "sha512-3dCqc+BAR5LqEGG2Vtzi8O3r7ci/3fYU+FWjwvUobbfko7DUnXGOccaror0yYuUhJfXzFK0aZNMGSnXaTwEnbw==", + "storePath": "oh_modules/.ohpm/@ohos+hypium@1.0.24", + "dependencies": {}, + "dynamicDependencies": {}, + "dev": true, + "dynamic": false, + "maskedByOverrideDependencyMap": false + }, + "@ohos/hamock@1.0.0": { + "integrity": "sha512-K6lDPYc6VkKe6ZBNQa9aoG+ZZMiwqfcR/7yAVFSUGIuOAhPvCJAo9+t1fZnpe0dBRBPxj2bxPPbKh69VuyAtDg==", + "storePath": "oh_modules/.ohpm/@ohos+hamock@1.0.0", + "dependencies": {}, + "dynamicDependencies": {}, + "dev": true, + "dynamic": false, + "maskedByOverrideDependencyMap": false + } + } +} \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/ohosTest.md b/ArkUIKit/ShapeDrawing/ohosTest.md new file mode 100644 index 00000000000..09bd409b1eb --- /dev/null +++ b/ArkUIKit/ShapeDrawing/ohosTest.md @@ -0,0 +1,7 @@ +# ShapeDrawing 测试用例归档 + +## 用例表 + +| 测试功能 | 预置æ¡ä»¶ | 输入 | 预期输出 | 是å¦è‡ªåЍ | 测试结果 | +| ------------------- | -------------- |---------------------------------------|----------| :------- | -------- | +| ShapeDrawing示例代ç éªŒè¯ | 设备正常è¿è¡Œ | 进入首页,查看页é¢å›¾å½¢ç»˜åˆ¶æƒ…况 | 图形显示正常 | 是 | Pass | \ No newline at end of file diff --git a/ArkUIKit/ShapeDrawing/screenshots/device/image1.png b/ArkUIKit/ShapeDrawing/screenshots/device/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..14808d31915aee71d6eccf5cccbb1b653645629b GIT binary patch literal 12994 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
vj4D57 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 literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/screenshots/device/image2.png b/ArkUIKit/ShapeDrawing/screenshots/device/image2.png new file mode 100644 index 0000000000000000000000000000000000000000..1613ea3b477a67fbb53cf2b315831096c1726d47 GIT binary patch literal 17672 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 B8W;co literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/screenshots/device/image3.png b/ArkUIKit/ShapeDrawing/screenshots/device/image3.png new file mode 100644 index 0000000000000000000000000000000000000000..394bd5b379a56256a3729063158d61cb0e47ee92 GIT binary patch literal 2702 zcmV;93UT#`P)>7epU)Fb#+-k+u-7wKQy{^bq7f)(x$xlb>P(ob zC7GVw+J-778UazNsXO_l@!_QC+E3w@4FKAdWI&gX_P>=w+pKi7ve#0miKIgxYE<#PON7f%!DXZ-J1J8E4VX)ui*D3 zMOSPZQmx<%y43xCX0K;xUoe)Xoy_u>kPuzzfVZxAaG!^pav-Z~pv4ag>XU_2u}zBzuzqPlk7`Ob3ZtQP{vy zK9mkPlV*E|2*L?C_v~)mwfiusVOqyF4|l zDGJ55fYWuG+L<+;>+1=*oLe3jQ-b@Tu_l!W_^Qhbu&%CY3bl>Z)_8`jsKDe$_j04Y zXj4pPiF-Zm*UC}_at!NCdrVv783r^d=hmu8pz&EI)A2Op}81mA~X#_={hYWCh>Yd{9fG1J9bSKtb1#mS+P5Z zSUpf#d2Zmr{L8c*t$D_o7cvnykE8E}dF z_29g;wLUqT6KJy-)-!eo|^ z)jYB~H|%@+si>(cnzq7uYo28U6jf_mtCQihz@-A14G{idwTw46W_4KPzS`S5t7XzL zt6TG|8B9*k-cI`mVj(-2e7K;WE&pv?FW0J=XcfWHLA2-@8g?xoy*6SSlUed)0$law zJh6h+M|(CgIr-zA;;3_D%#{_aXEIB`>f9yw(icI!R#Q4=_0gUUCM$bPUYoj{=Up*- zn9LH?c0B0L@q^_zPf5qDKH9UvWVO!Z%?IBmV67MGLnaGdtZisxB9ztn$mf&Qj#+)Q z=Q@*RWb$_8h5$@X1l+=a_YxBDgQt` z*gYn*1huw$b4ssBZL_)w&(O1_d~Ax(;YjXYuV#x&1-Z(?@5WrT9abOi`43E1N%G;H zq92)@5sto|Y`1V!kGS7{IgYHx25XULvdd%`FBB$T8`BeYCTF_HWR~iz&hmq$rN_9{ z+_GhcXX6Tmsv1l#%-)XkaG1VmsJl#NN%SVg!F1r`*gs}!ZL#`r&vhnC29skm0bp`G zWDMqRGMOb2FViPO9~Jzcl-{(nu0GszZI{V3`=8rTORzldK9gAjRu_bRybI-$FLHD8 z9jh_SHWM-E>AP)Uau^?? zIB=w15!88Rlw1Gmnl9DQcB`HZCd+juYqflI=4xS=$vwa)hTgIIlbzR(RosqkaK?^? z+NRK~cbS~~;a_py3rvpn2$NZYwki&$0)6qXK9iefbwh0%Os>JnDi;$|yuoBAFgYU} zI8yHjSj`V63|1FkK53HG`<{213`w571M~wF1Cw#3e(*>=BfRHEaHd2qH{y%loYF{B ztlsxr1tu$0Rd!;%$7GfcvRXA*tpIGwd%)yK*q!cSCbLv$b>yE@ zx-8*6)$j2v>k>Y>3X&kn*9yF|$C=Dh1FN6BpVbbk;mz^TvU9Wlj`6;P!Q|uU`5mkK zwR%g^1fGZ}!~ z<4k7BxIY$H?aqyOV_(le8)LEB0ZdlZa_supabYq`W>zmeQ}DS>n30-U?I0RS|2muS z4%pPr@X(vFi!Z2fFb+;AD)c^nh07*qo IM6N<$g2nDzPyhe` literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/screenshots/device/image4.png b/ArkUIKit/ShapeDrawing/screenshots/device/image4.png new file mode 100644 index 0000000000000000000000000000000000000000..56c2a398d332f0aea0fbf178bdef1081a025dd95 GIT binary patch literal 10114 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 MU@ap}lsYW@f0MGt?*IS* literal 0 HcmV?d00001 diff --git a/ArkUIKit/ShapeDrawing/screenshots/device/image9.png b/ArkUIKit/ShapeDrawing/screenshots/device/image9.png new file mode 100644 index 0000000000000000000000000000000000000000..c5da068a959f516d4699b49d92911da2c89ee4c6 GIT binary patch literal 1548 zcmds%>sQhT0ETUzq*;nKm($QLdUB%6yd1;WFfY}#L?Z7u6iv*OQ1C`x+E80(Q)@1| z7+OaZv6%=8c_Fh>S6V800e>Nuh8I9`h*AX1v%g`V_Thcr_nhbZdj*9&VP6Mn8@cOb3=N_f_v~cSoS! z_4z)nFS!-+y-3g)q_hRn($`YG$lgm0Tfaj!H^_%S*A6Ig-0edM^k@oBRjkdq4Vy8n-=Il$uGQxzVVVau&M)VaQ01RYhX6&ATU&b1nvN6})MMP#W9}rw+>zx|w zD~+p1X*aRqp@L-bRfU=-X8Ja%GL%%WcITW#kxX6{GIk5~wF8oHu}}P#*%W>a?{FkyCO%pm!|&0)(gH3w;6wvwq)0!Gv}DK#iw4#}>isXzLW@5aD-|31 zn0WEhgQ--N___q4X}7CA9&d_ker{eHr`unL`4BB-NBqSW(!?F1g;^HWJQ@99wP&^1 zRDOB18>5Y&j=WSK6zMM#SFs;DS1depd|+27Zmm?6O8OW_%ymWQtxrzUco%jCYq`u| zPZDMn%s8uA!DooJ8_>$%118C&6@OCsQ4P)+vZI`m^wtPu3WA|vkAHfy#oWrAaF=k& zxXc*xEoAoS|4SYB$?wT+$VHLt=&7d`MzUzbezro@ICA-*TFN=F;JxHn>Crn7K_uK!r>R5!xb={IUfgVz<5bzSM-48RH?hU z$J7h%4Qd{hs)n&tOLtn{^X%heW_t77rg>`tk%hZJW;86mST@i>fNstnHM^yuXaTu) z!WX_)M(HCQa)s5sxYZa!`O3LxK-DTn%!Z85_)X48brxkm8b-2}ub^l#4 zy1M!-3guo%E=m{*AlgelB^f@Sm+s}pR3N-y-%O`~+#~jd%~*pr9u*Yo)hL6;OY{7; z$G^ro{B$)``Nqxn#_p-1iu3AZ2gbu<7sFh!pu6SV9~7&&Le1Ttw$sHq=Lz778thy| z!Ca$++_Z76{DH>NoXoK+Lk-OOCp-BReGJ#(Wux+=KKu~8i`re&_k$OH?Z88obFD)6 zY)0N}vCM3>sDNNfbVpo{-?8b^_m3BNCR`W-%kO2)!FzGdGE64Vnut=uyvb>|&I^4+n*@H^wyIq6FtbCX|6 k^@Ln~vc>s7z$a_R>Qiy8iIYv6FK-ld3>o;qKk?^(0JgO7kpKVy literal 0 HcmV?d00001 -- Gitee