Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
uni-app
提交
c65b509e
U
uni-app
项目概览
DCloud
/
uni-app
3 个月 前同步成功
通知
720
Star
38705
Fork
3642
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
7
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
7
Issue
7
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c65b509e
编写于
8月 18, 2023
作者:
fxy060608
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
wip(uts): compiler
上级
327a8780
变更
12
显示空白变更内容
内联
并排
Showing
12 changed file
with
60 addition
and
19 deletion
+60
-19
packages/playground/uts/unpackage/dist/dev/.sourcemap/app/uni_modules/test-component/utssdk/app-android/index.kt.map
...ni_modules/test-component/utssdk/app-android/index.kt.map
+1
-1
packages/playground/uts/unpackage/dist/dev/.sourcemap/app/uni_modules/test-component/utssdk/app-ios/index.swift.map
...uni_modules/test-component/utssdk/app-ios/index.swift.map
+1
-1
packages/playground/uts/unpackage/dist/dev/.sourcemap/app/uni_modules/test-uniplugin/utssdk/app-ios/index.swift.map
...uni_modules/test-uniplugin/utssdk/app-ios/index.swift.map
+1
-1
packages/playground/uts/unpackage/dist/dev/app-plus/uni_modules/test-component/utssdk/app-android/index.kt
...us/uni_modules/test-component/utssdk/app-android/index.kt
+34
-14
packages/playground/uts/unpackage/dist/dev/app-plus/uni_modules/test-uniplugin/utssdk/app-ios/index.swift
...lus/uni_modules/test-uniplugin/utssdk/app-ios/index.swift
+22
-1
packages/uni-uts-v1/__tests__/sourceMap.spec.ts
packages/uni-uts-v1/__tests__/sourceMap.spec.ts
+1
-1
packages/uts-darwin-arm64/uts.darwin-arm64.node
packages/uts-darwin-arm64/uts.darwin-arm64.node
+0
-0
packages/uts-darwin-x64/uts.darwin-x64.node
packages/uts-darwin-x64/uts.darwin-x64.node
+0
-0
packages/uts-linux-x64-gnu/uts.linux-x64-gnu.node
packages/uts-linux-x64-gnu/uts.linux-x64-gnu.node
+0
-0
packages/uts-linux-x64-musl/uts.linux-x64-musl.node
packages/uts-linux-x64-musl/uts.linux-x64-musl.node
+0
-0
packages/uts-win32-ia32-msvc/uts.win32-ia32-msvc.node
packages/uts-win32-ia32-msvc/uts.win32-ia32-msvc.node
+0
-0
packages/uts-win32-x64-msvc/uts.win32-x64-msvc.node
packages/uts-win32-x64-msvc/uts.win32-x64-msvc.node
+0
-0
未找到文件。
packages/playground/uts/unpackage/dist/dev/.sourcemap/app/uni_modules/test-component/utssdk/app-android/index.kt.map
浏览文件 @
c65b509e
{"version":3,"sources":["uni_modules/test-component/utssdk/app-android/index.vue"],"sourcesContent":["\n\n\n\n\n\nimport Animator from 'android.animation.Animator'\nimport TextUtils from 'android.text.TextUtils'\nimport View from 'android.view.View'\nimport LottieAnimationView from 'com.airbnb.lottie.LottieAnimationView'\nimport LottieDrawable from 'com.airbnb.lottie.LottieDrawable'\n\n\nclass CustomAnimListener extends Animator.AnimatorListener {\n\n comp: UTSComponent<LottieAnimationView>\n constructor(com: UTSComponent<LottieAnimationView>) {\n super();\n this.comp = com\n }\n\n override onAnimationStart(animation: Animator | null) {\n }\n\n override onAnimationEnd(animation: Animator | null, isReverse: Boolean) {\n this.comp.emit(\"bindended\")\n }\n\n override onAnimationEnd(animation: Animator | null) {\n }\n\n override onAnimationCancel(animation: Animator | null) {\n }\n\n override onAnimationRepeat(animation: Animator | null) {\n }\n}\n\n//原生提供以下属性或方法的实现 \nexport default {\n /**\n * 当播放到末尾时触发 ended 事件(自然播放结束会触发回调,循环播放结束及手动停止动画不会触发)\n */\n emits: ['bindended'],\n props: {\n /**\n * 动画资源地址,目前只支持绝对路径\n */\n \"path\": {\n type: String,\n\t\t\tdefault:\"\"\n },\n /**\n * 动画是否循环播放\n */\n \"autoplay\": {\n type: Boolean,\n\t\t\tdefault:false\n },\n /**\n * 动画是否自动播放\n */\n \"loop\": {\n type: Boolean,\n\t\t\tdefault:false\n },\n /**\n * 是否隐藏动画\n */\n \"hidden\": {\n type: Boolean,\n\t\t\tdefault:false\n },\n /**\n * 动画操作,可取值 play、pause、stop\n */\n \"action\": {\n type: String,\n\t\t\tdefault:\"stop\"\n }\n\n },\n data() {\n return {\n\n }\n },\n watch: {\n \"path\": {\n handler(newPath: string, oldPath: string) {\n\n let lottieAnimationView = this.$el\n\n if (lottieAnimationView != null && !TextUtils.isEmpty(newPath)) {\n if (newPath.startsWith(\"http://\") || newPath.startsWith(\"https://\")) {\n lottieAnimationView.setAnimationFromUrl(newPath)\n } else {\n // 默认是asset了\n lottieAnimationView.setAnimation(newPath)\n }\n }\n if (this.autoplay) {\n lottieAnimationView.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"loop\": {\n handler(newLoop: Boolean, oldLoop: Boolean) {\n\n if (newLoop) {\n this.$el.repeatCount = Int.MAX_VALUE\n } else {\n // 不循环则设置成1次\n this.$el.repeatCount = 0\n }\n\n if (this.autoplay) {\n this.$el.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"autoplay\": {\n handler(newValue: boolean, oldValue: boolean) {\n\n if (newValue) {\n this.$el.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"action\": {\n handler(newAction: string, oldAction: string) {\n\n if (newAction == \"play\" || newAction == \"pause\" || newAction == \"stop\") {\n\n\n if (this.action == \"play\") {\n this.$el.playAnimation()\n } else if (this.action == \"play\") {\n this.$el.pauseAnimation()\n } else if (this.action == \"stop\") {\n this.$el.cancelAnimation()\n this.$el.clearAnimation()\n }\n\n } else {\n // 非法入参,不管\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"hidden\": {\n handler(newValue: boolean, oldValue: boolean) {\n\n if (newValue) {\n this.$el.visibility = View.GONE\n } else {\n this.$el.visibility = View.VISIBLE\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n },\n methods: {\n setRepeatMode(repeat: string) {\n if (\"RESTART\" == repeat) {\n this.$el.repeatMode = LottieDrawable.RESTART\n } else if (\"REVERSE\" == repeat) {\n this.$el.repeatMode = LottieDrawable.RESTART\n }\n },\n privateMethod() {\t//如何定义不对外暴露的API? 暂不支持,需在export外写 \n }\n },\n created() {\t\t\t//创建组件,替换created \n\n },\n NVBeforeLoad() {\t\t//组件将要创建,对应前端beforeMount \n //可选实现,这里可以提前做一些操作 \n },\n NVLoad(): LottieAnimationView { //创建原生View,必须定义返回值类型(Android需要明确知道View类型,需特殊校验) \n //必须实现 \n let lottieAnimationView = new LottieAnimationView(getContext())\n return lottieAnimationView\n },\n NVLoaded() {\t\t\t//原生View已创建 \n //可选实现,这里可以做后续操作 \n this.$el.repeatMode = LottieDrawable.RESTART;\n this.$el.visibility = View.GONE\n this.$el.repeatCount = 0\n this.$el.addAnimatorListener(new CustomAnimListener(this))\n\n },\n NVLayouted() {\t//原生View布局完成 \n //可选实现,这里可以做布局后续操作 \n },\n NVBeforeUnload() {\t\t//原生View将释放 \n //可选实现,这里可以做释放View之前的操作 \n },\n NVUnloaded() {\t\t\t//原生View已释放 \n //可选实现,这里可以做释放View之后的操作 \n },\n NVMeasure(size: UTSSize): UTSSize {\n return UTSSize(100, 100)\n },\n unmounted() {\t//组件销毁 \n //可选实现 \n }\n}\n\n\n\n\n\n\n\n\n"],"names":[],"mappings":"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"}
{"version":3,"sources":["uni_modules/test-component/utssdk/app-android/index.vue"],"sourcesContent":["\n\n\n\n\n\nimport Animator from 'android.animation.Animator'\nimport TextUtils from 'android.text.TextUtils'\nimport View from 'android.view.View'\nimport LottieAnimationView from 'com.airbnb.lottie.LottieAnimationView'\nimport LottieDrawable from 'com.airbnb.lottie.LottieDrawable'\n\n\nclass CustomAnimListener extends Animator.AnimatorListener {\n\n comp: UTSComponent<LottieAnimationView>\n constructor(com: UTSComponent<LottieAnimationView>) {\n super();\n this.comp = com\n }\n\n override onAnimationStart(animation: Animator | null) {\n }\n\n override onAnimationEnd(animation: Animator | null, isReverse: Boolean) {\n this.comp.emit(\"bindended\")\n }\n\n override onAnimationEnd(animation: Animator | null) {\n }\n\n override onAnimationCancel(animation: Animator | null) {\n }\n\n override onAnimationRepeat(animation: Animator | null) {\n }\n}\n\n//原生提供以下属性或方法的实现 \nexport default {\n /**\n * 当播放到末尾时触发 ended 事件(自然播放结束会触发回调,循环播放结束及手动停止动画不会触发)\n */\n emits: ['bindended'],\n props: {\n /**\n * 动画资源地址,目前只支持绝对路径\n */\n \"path\": {\n type: String,\n\t\t\tdefault:\"\"\n },\n /**\n * 动画是否循环播放\n */\n \"autoplay\": {\n type: Boolean,\n\t\t\tdefault:false\n },\n /**\n * 动画是否自动播放\n */\n \"loop\": {\n type: Boolean,\n\t\t\tdefault:false\n },\n /**\n * 是否隐藏动画\n */\n \"hidden\": {\n type: Boolean,\n\t\t\tdefault:false\n },\n /**\n * 动画操作,可取值 play、pause、stop\n */\n \"action\": {\n type: String,\n\t\t\tdefault:\"stop\"\n }\n\n },\n data() {\n return {\n\n }\n },\n watch: {\n \"path\": {\n handler(newPath: string, oldPath: string) {\n\n let lottieAnimationView = this.$el\n\n if (lottieAnimationView != null && !TextUtils.isEmpty(newPath)) {\n if (newPath.startsWith(\"http://\") || newPath.startsWith(\"https://\")) {\n lottieAnimationView.setAnimationFromUrl(newPath)\n } else {\n // 默认是asset了\n lottieAnimationView.setAnimation(newPath)\n }\n }\n if (this.autoplay) {\n lottieAnimationView.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"loop\": {\n handler(newLoop: Boolean, oldLoop: Boolean) {\n\n if (newLoop) {\n this.$el.repeatCount = Int.MAX_VALUE\n } else {\n // 不循环则设置成1次\n this.$el.repeatCount = 0\n }\n\n if (this.autoplay) {\n this.$el.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"autoplay\": {\n handler(newValue: boolean, oldValue: boolean) {\n\n if (newValue) {\n this.$el.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"action\": {\n handler(newAction: string, oldAction: string) {\n\n if (newAction == \"play\" || newAction == \"pause\" || newAction == \"stop\") {\n\n\n if (this.action == \"play\") {\n this.$el.playAnimation()\n } else if (this.action == \"play\") {\n this.$el.pauseAnimation()\n } else if (this.action == \"stop\") {\n this.$el.cancelAnimation()\n this.$el.clearAnimation()\n }\n\n } else {\n // 非法入参,不管\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"hidden\": {\n handler(newValue: boolean, oldValue: boolean) {\n\n if (newValue) {\n this.$el.visibility = View.GONE\n } else {\n this.$el.visibility = View.VISIBLE\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n },\n methods: {\n setRepeatMode(repeat: string) {\n if (\"RESTART\" == repeat) {\n this.$el.repeatMode = LottieDrawable.RESTART\n } else if (\"REVERSE\" == repeat) {\n this.$el.repeatMode = LottieDrawable.RESTART\n }\n },\n privateMethod() {\t//如何定义不对外暴露的API? 暂不支持,需在export外写 \n }\n },\n created() {\t\t\t//创建组件,替换created \n\n },\n NVBeforeLoad() {\t\t//组件将要创建,对应前端beforeMount \n //可选实现,这里可以提前做一些操作 \n },\n NVLoad(): LottieAnimationView { //创建原生View,必须定义返回值类型(Android需要明确知道View类型,需特殊校验) \n //必须实现 \n let lottieAnimationView = new LottieAnimationView(getContext())\n return lottieAnimationView\n },\n NVLoaded() {\t\t\t//原生View已创建 \n //可选实现,这里可以做后续操作 \n this.$el.repeatMode = LottieDrawable.RESTART;\n this.$el.visibility = View.GONE\n this.$el.repeatCount = 0\n this.$el.addAnimatorListener(new CustomAnimListener(this))\n\n },\n NVLayouted() {\t//原生View布局完成 \n //可选实现,这里可以做布局后续操作 \n },\n NVBeforeUnload() {\t\t//原生View将释放 \n //可选实现,这里可以做释放View之前的操作 \n },\n NVUnloaded() {\t\t\t//原生View已释放 \n //可选实现,这里可以做释放View之后的操作 \n },\n NVMeasure(size: UTSSize): UTSSize {\n return UTSSize(100, 100)\n },\n unmounted() {\t//组件销毁 \n //可选实现 \n }\n}\n\n\n\n\n\n\n\n\n"],"names":[],"mappings":"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"}
\ No newline at end of file
\ No newline at end of file
packages/playground/uts/unpackage/dist/dev/.sourcemap/app/uni_modules/test-component/utssdk/app-ios/index.swift.map
浏览文件 @
c65b509e
{"version":3,"sources":["uni_modules/test-component/utssdk/app-ios/index.vue"],"sourcesContent":["\n\n\n\n\n\nimport {\n LottieAnimationView,\n LottieAnimation,\n LottieLoopMode\n} from 'Lottie'\nimport {\n URL\n} from 'Foundation'\nimport {\n UIView\n} from \"UIKit\"\nimport {\n UTSiOS\n} from \"DCloudUTSFoundation\"\n\n\n//原生提供以下属性或方法的实现 \nexport default {\n name: \"animation-view\",\n /**\n * 当播放到末尾时触发 ended 事件(自然播放结束会触发回调,循环播放结束及手动停止动画不会触发)\n */\n emits: ['bindended'],\n props: {\n /**\n * 动画资源地址,目前只支持绝对路径\n */\n \"path\": {\n type: String,\n },\n /**\n * 动画是否循环播放\n */\n \"autoplay\": {\n type: Boolean,\n },\n /**\n * 动画是否自动播放\n */\n \"loop\": {\n type: Boolean,\n },\n /**\n * 是否隐藏动画\n */\n \"hidden\": {\n type: Boolean,\n },\n /**\n * 动画操作,可取值 play、pause、stop\n */\n \"action\": {\n type: String,\n }\n\n },\n data() {\n return {\n animationView: null as LottieAnimationView | null\n }\n },\n watch: {\n\n /// 注意: newValue 都需要强转成对应的类型\n\n \"path\": {\n handler(newValue: string, oldValue: string) {\n this.path = newValue\n if (this.autoplay) {\n this.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"loop\": {\n handler(newValue: boolean, oldValue: boolean) {\n this.loop = newValue\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.loop\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"autoplay\": {\n handler(newValue: boolean, oldValue: boolean) {\n this.autoplay = newValue\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"action\": {\n handler(newValue: string, oldValue: string) {\n const action = newValue\n\n if (action == \"play\" || action == \"pause\" || action == \"stop\") {\n this.action = action\n switch (action) {\n case \"play\":\n this.playAnimation()\n break;\n case \"pause\":\n this.animationView.pause()\n break;\n case \"stop\":\n this.animationView.stop()\n break;\n default:\n break;\n }\n } else {\n // 非法入参,不管\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"hidden\": {\n handler(newValue: boolean, oldValue: boolean) {\n this.hidden = newValue\n this.animationView.isHidden = this.hidden\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n },\n methods: {\n // 需要对外暴露的方法\n // 设置 RepeatMode \n setRepeatMode(repeatMode: string) {\n if (repeatMode == \"RESTART\") {\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.loop\n } else {\n this.animationView.loopMode = LottieLoopMode.playOnce\n }\n } else if (repeatMode == \"REVERSE\") {\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.autoReverse\n } else {\n this.animationView.loopMode = LottieLoopMode.repeatBackwards(1)\n }\n }\n },\n // 不对外暴露的方法\n // 播放动画 \n playAnimation() {\n if (this.path == null) {\n return\n }\n\n // 构建动画资源 url\n var animationUrl: URL | null\n\n if (this.path!.hasPrefix(\"http\")) {\n animationUrl = new URL(string = this.path!)\n } else {\n var filePath = UTSiOS.getResourcePath(this.path!)\n animationUrl = new URL(filePath = filePath)\n }\n\n if (animationUrl != null) {\n // 加载动画 LottieAnimation\n LottieAnimation.loadedFrom(url = animationUrl!, closure = (animation: LottieAnimation): void => {\n if (animation != null) {\n // 加载成功开始播放\n this.animationView.animation = animation\n this.animationView.play(completion = (isFinish: boolean): void => {\n if (isFinish) {\n // 播放完成回调事件\n this.fireEvent(\"bindended\")\n }\n })\n }\n })\n }\n }\n },\n created() { //创建组件,替换created \n\n },\n measure(size: UTSSize): UTSSize { //测量组件大小\n //可选实现,仅当需要原生计算组件大小时需要实现 \n return new UTSSize(100, 100);\n },\n NVBeforeLoad() { //组件将要创建,对应前端beforeMount \n //可选实现,这里可以提前做一些操作 \n },\n NVLoad(): UIView { //创建原生View,必须定义返回值类型(Android需要明确知道View类型,需特殊校验) \n // 初始化 LottieAnimationView\n this.animationView = new LottieAnimationView()\n // 默认只播放一次动画\n this.animationView.loopMode = LottieLoopMode.playOnce\n return this.animationView\n },\n NVLoaded() { //原生View已创建 \n\n /// 更新 props 中定义的属性值\n\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.loop\n }\n\n this.animationView.isHidden = this.hidden\n\n if (this.autoplay) {\n this.playAnimation()\n }\n },\n\n NVLayouted() { //原生View布局完成 \n //可选实现,这里可以做布局后续操作 \n },\n\n NVBeforeUnload() { //原生View将释放 \n //可选实现,这里可以做释放View之前的操作 \n },\n NVUnloaded() { //原生View已释放 \n //可选实现,这里可以做释放View之后的操作 \n },\n NVMeasure(size: UTSSize): UTSSize {\n return UTSSize(100, 100)\n },\n unmounted() { //组件销毁 \n //可选实现 \n }\n}\n\n\n\n\n\n\n\n\n"],"names":[],"mappings":"AAMA,cAIe;AACf,kBAEmB;AACnB,aAEc;AACd,2BAE4B;;;mDA6Kd;;;;;;8BAhIqB,uBAAR,GAAI;mCAsHjB,CAEV;iCACQ,EAAA,MAAM,OAAO,KAAG,QAAQ;QAE5B,OAAO,AAAI,QAAQ,GAAG,EAAE,GAAG;IAC/B;wCACe,CAEf;qCACU,OAAO;QAEb,IAAI,CAAC,aAAa,GAAG,AAAI;QAEzB,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,QAAQ;QACrD,OAAO,IAAI,CAAC,aAAa;IAC7B;oCACW;QAIP,IAAI,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,IAAI;;QAGrD,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;QAEzC,IAAI,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,aAAa;;IAE1B;sCAEa,CAEb;0CAEiB,CAEjB;sCACa,CAEb;mCACU,MAAM,OAAO,KAAG,QAAQ;QAC9B,OAAO,QAAQ,GAAG,EAAE,GAAG;IAC3B;qCACY,CAEZ;8BAhGkB,EAAA,YAAY,MAAM,EAAE;QAC9B,IAAI,cAAc;YACd,IAAI,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,IAAI;;gBAEjD,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,QAAQ;aACxD;;YACE,IAAI,cAAc;gBACrB,IAAI,IAAI,CAAC,IAAI;oBACT,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,WAAW;;oBAExD,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,eAAe,CAAC,CAAC;;;;IAG1E;gCAGgB;QACZ,IAAI,IAAI,CAAC,IAAI,IAAI,GAAI;YACjB;;QAIJ,IAAI,cAAc;QAElB,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;YACrB,eAAe,AAAI,IAAI,QAAS,IAAI,CAAC,IAAI;eACtC;YACH,IAAI,WAAW,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI;YAC/C,eAAe,AAAI,IAAI,UAAW;QACtC;QAEA,IAAI,gBAAgB,GAAI;YAEpB,gBAAgB,UAAU,CAAC,KAAM,eAAe,SAAU;eAAC,WAAW,oBAAkB,IAAI;YACxF,IAAI,aAAa,GAAI,EAAE;gBAEnB,IAAI,CAAC,aAAa,CAAC,SAAS,GAAG;gBAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAa;mBAAC,UAAU,IAAO,KAAG,IAAI;gBAC1D,IAAI;oBAEA,IAAI,CAAC,SAAS,CAAC;;;YAG3B;;;IAGZ;;;;;;;;;;YA5GY;YAAkB;QACtB,IAAI,CAAC,IAAI,GAAG;QACZ,IAAI,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,aAAa;;;;;YAMlB;YAAmB;QACvB,IAAI,CAAC,IAAI,GAAG;QACZ,IAAI,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,eAAe,IAAI;;;;;YAMjD;YAAmB;QACvB,IAAI,CAAC,QAAQ,GAAG;;;;YAKZ;YAAkB;QACtB,IAAM,SAAS;QAEf,IAAI,UAAU,UAAU,UAAU,WAAW,UAAU,QAAQ;YAC3D,IAAI,CAAC,MAAM,GAAG;YACd,OAAQ;gBACJ,KAAK;oBACD,IAAI,CAAC,aAAa;gBAEtB,KAAK;oBACD,IAAI,CAAC,aAAa,CAAC,KAAK;gBAE5B,KAAK;oBACD,IAAI,CAAC,aAAa,CAAC,IAAI;gBAE3B;oBACI,KAAM;YACd;QACJ;;;;YAQI;YAAmB;QACvB,IAAI,CAAC,MAAM,GAAG;QACd,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM"}
{"version":3,"sources":["uni_modules/test-component/utssdk/app-ios/index.vue"],"sourcesContent":["\n\n\n\n\n\nimport {\n LottieAnimationView,\n LottieAnimation,\n LottieLoopMode\n} from 'Lottie'\nimport {\n URL\n} from 'Foundation'\nimport {\n UIView\n} from \"UIKit\"\nimport {\n UTSiOS\n} from \"DCloudUTSFoundation\"\n\n\n//原生提供以下属性或方法的实现 \nexport default {\n name: \"animation-view\",\n /**\n * 当播放到末尾时触发 ended 事件(自然播放结束会触发回调,循环播放结束及手动停止动画不会触发)\n */\n emits: ['bindended'],\n props: {\n /**\n * 动画资源地址,目前只支持绝对路径\n */\n \"path\": {\n type: String,\n },\n /**\n * 动画是否循环播放\n */\n \"autoplay\": {\n type: Boolean,\n },\n /**\n * 动画是否自动播放\n */\n \"loop\": {\n type: Boolean,\n },\n /**\n * 是否隐藏动画\n */\n \"hidden\": {\n type: Boolean,\n },\n /**\n * 动画操作,可取值 play、pause、stop\n */\n \"action\": {\n type: String,\n }\n\n },\n data() {\n return {\n animationView: null as LottieAnimationView | null\n }\n },\n watch: {\n\n /// 注意: newValue 都需要强转成对应的类型\n\n \"path\": {\n handler(newValue: string, oldValue: string) {\n this.path = newValue\n if (this.autoplay) {\n this.playAnimation()\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"loop\": {\n handler(newValue: boolean, oldValue: boolean) {\n this.loop = newValue\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.loop\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"autoplay\": {\n handler(newValue: boolean, oldValue: boolean) {\n this.autoplay = newValue\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n \"action\": {\n handler(newValue: string, oldValue: string) {\n const action = newValue\n\n if (action == \"play\" || action == \"pause\" || action == \"stop\") {\n this.action = action\n switch (action) {\n case \"play\":\n this.playAnimation()\n break;\n case \"pause\":\n this.animationView.pause()\n break;\n case \"stop\":\n this.animationView.stop()\n break;\n default:\n break;\n }\n } else {\n // 非法入参,不管\n }\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n \"hidden\": {\n handler(newValue: boolean, oldValue: boolean) {\n this.hidden = newValue\n this.animationView.isHidden = this.hidden\n },\n immediate: false //创建时是否通过此方法更新属性,默认值为false \n },\n\n },\n methods: {\n // 需要对外暴露的方法\n // 设置 RepeatMode \n setRepeatMode(repeatMode: string) {\n if (repeatMode == \"RESTART\") {\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.loop\n } else {\n this.animationView.loopMode = LottieLoopMode.playOnce\n }\n } else if (repeatMode == \"REVERSE\") {\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.autoReverse\n } else {\n this.animationView.loopMode = LottieLoopMode.repeatBackwards(1)\n }\n }\n },\n // 不对外暴露的方法\n // 播放动画 \n playAnimation() {\n if (this.path == null) {\n return\n }\n\n // 构建动画资源 url\n var animationUrl: URL | null\n\n if (this.path!.hasPrefix(\"http\")) {\n animationUrl = new URL(string = this.path!)\n } else {\n var filePath = UTSiOS.getResourcePath(this.path!)\n animationUrl = new URL(filePath = filePath)\n }\n\n if (animationUrl != null) {\n // 加载动画 LottieAnimation\n LottieAnimation.loadedFrom(url = animationUrl!, closure = (animation: LottieAnimation): void => {\n if (animation != null) {\n // 加载成功开始播放\n this.animationView.animation = animation\n this.animationView.play(completion = (isFinish: boolean): void => {\n if (isFinish) {\n // 播放完成回调事件\n this.fireEvent(\"bindended\")\n }\n })\n }\n })\n }\n }\n },\n created() { //创建组件,替换created \n\n },\n measure(size: UTSSize): UTSSize { //测量组件大小\n //可选实现,仅当需要原生计算组件大小时需要实现 \n return new UTSSize(100, 100);\n },\n NVBeforeLoad() { //组件将要创建,对应前端beforeMount \n //可选实现,这里可以提前做一些操作 \n },\n NVLoad(): UIView { //创建原生View,必须定义返回值类型(Android需要明确知道View类型,需特殊校验) \n // 初始化 LottieAnimationView\n this.animationView = new LottieAnimationView()\n // 默认只播放一次动画\n this.animationView.loopMode = LottieLoopMode.playOnce\n return this.animationView\n },\n NVLoaded() { //原生View已创建 \n\n /// 更新 props 中定义的属性值\n\n if (this.loop) {\n this.animationView.loopMode = LottieLoopMode.loop\n }\n\n this.animationView.isHidden = this.hidden\n\n if (this.autoplay) {\n this.playAnimation()\n }\n },\n\n NVLayouted() { //原生View布局完成 \n //可选实现,这里可以做布局后续操作 \n },\n\n NVBeforeUnload() { //原生View将释放 \n //可选实现,这里可以做释放View之前的操作 \n },\n NVUnloaded() { //原生View已释放 \n //可选实现,这里可以做释放View之后的操作 \n },\n NVMeasure(size: UTSSize): UTSSize {\n return UTSSize(100, 100)\n },\n unmounted() { //组件销毁 \n //可选实现 \n }\n}\n\n\n\n\n\n\n\n\n"],"names":[],"mappings":"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"}
\ No newline at end of file
\ No newline at end of file
packages/playground/uts/unpackage/dist/dev/.sourcemap/app/uni_modules/test-uniplugin/utssdk/app-ios/index.swift.map
浏览文件 @
c65b509e
{
"version"
:
3
,
"sources"
:
[
"uni_modules/test-uniplugin/utssdk/app-ios/index.uts"
,
"uni_modules/test-uniplugin/utssdk/interface.uts"
],
"sourcesContent"
:
[
"import { UIDevice } from 'UIKit'
\n
import { CLLocationManager, CLAuthorizationStatus } from 'CoreLocation'
\n
import { ShowToast } from '../interface.uts'
\n\n
type GetBatteryInfoOptions = {\n name: string
\n
pwd: number
\n
success?: (res: UTSJSONObject) => void
\n
fail?: (res: UTSJSONObject) => void
\n
complete?: (res: UTSJSONObject) => void
\n
}
\n\n
export default function getBatteryInfo(options: GetBatteryInfoOptions) {\n new UIAlertController(
\n
(title = title),
\n
(message = message),
\n
(preferredStyle = UIAlertController.Style.alert)
\n
)
\n
const res = {\n errMsg: 'getBatteryInfo:ok',
\n
level: UIDevice.current.batteryLevel * 100,
\n
isCharging: UIDevice.current.batteryState == UIDevice.BatteryState.charging,
\n
}
\n
if (options.success != null) {\n options.success!(res)
\n
}
\n
if (options.complete != null) {\n options.complete!(res)
\n
}
\n
}
\n\n
export function test1(callback: () => void): string {\n console.log({
\"
a
\"
:
\"
b
\"
})
\n
console.log('test1')
\n\n\n\n\n
console.log('def ios')
\n\n\n
console.log('ndef android')
\n\n\n\n\n\n
console.log('def android || def ios')
\n\n\n\n\n
console.log(CLLocationManager, CLAuthorizationStatus)
\n
const a = -3
\n
console.log(~a)
\n
return 'test1'
\n
}
\n\n
class Test1 { }
\n
export class Test {\n constructor() {\n new Test1()
\n
}
\n
test(): string | null {\n if (UTSiOS.macros(
\"
swift(>=1)
\"
)) {\n console.log(
\"
swift(>=1)
\"
)
\n
}
\n
if (UTSiOS.macros(
\"
arch(i386) || arch(arm)
\"
)) {\n console.log(
\"
arch(i386) || arch(arm)
\"
)
\n
}
\n
if (UTSiOS.available(
\"
iOS 14, macOS 11.0, *
\"
)) {\n console.log(
\"
iOS 14, macOS 11.0, *
\"
)
\n
} else if (UTSiOS.available(
\"
iOS 13,*
\"
)) {\n console.log(
\"
iOS 13,*
\"
)
\n
} else if (UTSiOS.unavailable(
\"
tvOS 12
\"
)) {\n console.log(
\"
tvOS 12
\"
)
\n
}
\n
return null
\n
}
\n
}
\n\n
export async function testAsync() {\n uni.showToast()
\n
uni.showToast()
\n
uni.showModel()
\n
return { a: 1 }
\n
}
\n\n
export const showToast1: ShowToast = (msg) => { }
\n
export const showToast2: ShowToast = function (msg) { }
\n
export const showToast3: ShowToast = function showToast(msg) { }
\n
"
,
"export type ShowToast = (msg: string) => void
\n
"
],
"names"
:
[],
"mappings"
:
";AAAA,aAAgC;AAChC,oBAAuE;;;;iBCD3D,eAAa,KAAK,MAAM,KAAK,IAAI;ADIhB;;aAAxB;IACH,WAAA,MAAM,MAAM,EAAA;IACZ,WAAA,KAAK,QAAM,EAAA;IACX,WAAA,aAAW,KAAK,kBAAkB,IAAI,GAAA;IACtC,WAAA,UAAQ,KAAK,kBAAkB,IAAI,GAAA;IACnC,WAAA,cAAY,KAAK,kBAAkB,IAAI,GAAA;;;;;QAJvC,uBAAM,MAAM;QACZ,qBAAK,QAAM;QACX,iCAAW,KAAK,kBAAkB,IAAI;QACtC,2BAAQ,KAAK,kBAAkB,IAAI;QACnC,mCAAY,KAAK,kBAAkB,IAAI;;AACzC;AAEe,YAAS,eAAe,EAAA,SAAS,qBAAqB,EAAE;IACjE,kBACD,OAAQ,OACR,SAAU,SACV,gBAAiB,kBAAkB,KAAK,CAAC,KAAK;IAEjD,IAAM,MAAM;QACV,CAAA,SAAQ;QACR,CAAA,QAAO,SAAS,OAAO,CAAC,YAAY,GAAG,GAAG;QAC1C,CAAA,aAAY,SAAS,OAAO,CAAC,YAAY,IAAI,SAAS,YAAY,CAAC,QAAQ;MAC5E;IACD,IAAI,QAAQ,OAAO,IAAI,GAAI;QACzB,QAAQ,OAAO,EAAE;;IAEnB,IAAI,QAAQ,QAAQ,IAAI,GAAI;QAC1B,QAAQ,QAAQ,EAAE;;AAEtB;AAEO,YAAS,MAAM,EAAA,yBAAgB,IAAI,KAAG,MAAM,CAAC;IAClD,QAAQ,GAAG,CAAC;QAAE,KAAK;MAAK;IACxB,QAAQ,GAAG,CAAC;IAKZ,QAAQ,GAAG,CAAC;IAGZ,QAAQ,GAAG,CAAC;IAMZ,QAAQ,GAAG,CAAC;IAKZ,QAAQ,GAAG,CAAC,mBAAmB;IAC/B,IAAM,cAAI,EAAE;IACZ,QAAQ,GAAG,CAAC,CAAC;IACb,OAAO;AACT;AAEA;;aAAM;AAAQ;AACP;;aAAM;IACX,aAAc;QACR;IACN;IACA,YAAA,UAAQ,MAAM,EAAQ;QACpB;YACE,QAAQ,GAAG,CAAC;cACb;QACD;YACE,QAAQ,GAAG,CAAC;cACb;QACD;YACE,QAAQ,GAAG,CAAC;;YACP;gBACL,QAAQ,GAAG,CAAC;;gBACP;oBACL,QAAQ,GAAG,CAAC;;;;QAEd,OAAO,GAAI;IACb;AACF;AAEO;YAAe,mCAAY;IAC5B;IACA;IACA;IACJ,OAAO;QAAE,CAAA,IAAG,CAAC;MAAE;AACjB;AAEO,WAAM,wBAAwB;GAAC;;AAC/B,WAAM,wBAAwB;CAAU,EAAA,GAAG;;AAC3C,WAAM,wBAAwB;CAAmB,EAAA,GAAG;;AAtF9B;;;IAC3B,WAAA,MAAM,MAAM,EAAA;IACZ,WAAA,KAAK,QAAM,EAAA;IACX,WAAA,SAAQ,aAA8B;IACtC,WAAA,MAAK,aAA8B;IACnC,WAAA,UAAS,aAA8B;AACzC;+BAEuC,EAAA,SAAS,+BAAqB;;;;;SALxD,KAAK;yBAAL;;;SACH,KAAK;sBAAL;;;SACI,KAAK;0BAAL;;;;wBAsBQ,0BAAuB,MAAM;;;IAA7B;;;;;;8BAgCZ,MAAM;;;;;;;;6BC/DS,KAAK,MAAM,KAAK,IAAI;sBAApB;;6BAAA,KAAK,MAAM,KAAK,IAAI;sBAApB;;6BAAA,KAAK,MAAM,KAAK,IAAI;sBAApB;;;;;4CDYc,EAAA,SAAS,+BAAqB;kCAA9B;;qCAmBjB,0BAAuB,MAAM;yBAA7B;;;;;;0CC/BG,KAAK,MAAM,KAAK,IAAI;8BAApB;;0CAAA,KAAK,MAAM,KAAK,IAAI;8BAApB;;0CAAA,KAAK,MAAM,KAAK,IAAI;8BAApB"
}
{
"version"
:
3
,
"sources"
:
[
"uni_modules/test-uniplugin/utssdk/app-ios/index.uts"
,
"uni_modules/test-uniplugin/utssdk/interface.uts"
],
"sourcesContent"
:
[
"import { UIDevice } from 'UIKit'
\n
import { CLLocationManager, CLAuthorizationStatus } from 'CoreLocation'
\n
import { ShowToast } from '../interface.uts'
\n\n
type GetBatteryInfoOptions = {\n name: string
\n
pwd: number
\n
success?: (res: UTSJSONObject) => void
\n
fail?: (res: UTSJSONObject) => void
\n
complete?: (res: UTSJSONObject) => void
\n
}
\n\n
export default function getBatteryInfo(options: GetBatteryInfoOptions) {\n new UIAlertController(
\n
(title = title),
\n
(message = message),
\n
(preferredStyle = UIAlertController.Style.alert)
\n
)
\n
const res = {\n errMsg: 'getBatteryInfo:ok',
\n
level: UIDevice.current.batteryLevel * 100,
\n
isCharging: UIDevice.current.batteryState == UIDevice.BatteryState.charging,
\n
}
\n
if (options.success != null) {\n options.success!(res)
\n
}
\n
if (options.complete != null) {\n options.complete!(res)
\n
}
\n
}
\n\n
export function test1(callback: () => void): string {\n console.log({
\"
a
\"
:
\"
b
\"
})
\n
console.log('test1')
\n\n\n\n\n
console.log('def ios')
\n\n\n
console.log('ndef android')
\n\n\n\n\n\n
console.log('def android || def ios')
\n\n\n\n\n
console.log(CLLocationManager, CLAuthorizationStatus)
\n
const a = -3
\n
console.log(~a)
\n
return 'test1'
\n
}
\n\n
class Test1 { }
\n
export class Test {\n constructor() {\n new Test1()
\n
}
\n
test(): string | null {\n if (UTSiOS.macros(
\"
swift(>=1)
\"
)) {\n console.log(
\"
swift(>=1)
\"
)
\n
}
\n
if (UTSiOS.macros(
\"
arch(i386) || arch(arm)
\"
)) {\n console.log(
\"
arch(i386) || arch(arm)
\"
)
\n
}
\n
if (UTSiOS.available(
\"
iOS 14, macOS 11.0, *
\"
)) {\n console.log(
\"
iOS 14, macOS 11.0, *
\"
)
\n
} else if (UTSiOS.available(
\"
iOS 13,*
\"
)) {\n console.log(
\"
iOS 13,*
\"
)
\n
} else if (UTSiOS.unavailable(
\"
tvOS 12
\"
)) {\n console.log(
\"
tvOS 12
\"
)
\n
}
\n
return null
\n
}
\n
}
\n\n
export async function testAsync() {\n uni.showToast()
\n
uni.showToast()
\n
uni.showModel()
\n
return { a: 1 }
\n
}
\n\n
export const showToast1: ShowToast = (msg) => { }
\n
export const showToast2: ShowToast = function (msg) { }
\n
export const showToast3: ShowToast = function showToast(msg) { }
\n
"
,
"export type ShowToast = (msg: string) => void
\n
"
],
"names"
:
[],
"mappings"
:
";AAAA,aAAgC;AAChC,oBAAuE;;;;iBCD3D,eAAa,KAAK,MAAM,KAAK,IAAI;ADIhB;;aAAxB;IACH,WAAA,MAAM,MAAM,EAAA;IACZ,WAAA,KAAK,QAAM,EAAA;IACX,WAAA,aAAW,KAAK,kBAAkB,IAAI,GAAA;IACtC,WAAA,UAAQ,KAAK,kBAAkB,IAAI,GAAA;IACnC,WAAA,cAAY,KAAK,kBAAkB,IAAI,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;QAJvC,uBAAM,MAAM;QACZ,qBAAK,QAAM;QACX,iCAAW,KAAK,kBAAkB,IAAI;QACtC,2BAAQ,KAAK,kBAAkB,IAAI;QACnC,mCAAY,KAAK,kBAAkB,IAAI;;AACzC;AAEe,YAAS,eAAe,EAAA,SAAS,qBAAqB,EAAE;IACjE,kBACD,OAAQ,OACR,SAAU,SACV,gBAAiB,kBAAkB,KAAK,CAAC,KAAK;IAEjD,IAAM,MAAM;QACV,CAAA,SAAQ;QACR,CAAA,QAAO,SAAS,OAAO,CAAC,YAAY,GAAG,GAAG;QAC1C,CAAA,aAAY,SAAS,OAAO,CAAC,YAAY,IAAI,SAAS,YAAY,CAAC,QAAQ;MAC5E;IACD,IAAI,QAAQ,OAAO,IAAI,GAAI,EAAE;QAC3B,QAAQ,OAAO,EAAE;IACnB;IACA,IAAI,QAAQ,QAAQ,IAAI,GAAI,EAAE;QAC5B,QAAQ,QAAQ,EAAE;IACpB;AACF;AAEO,YAAS,MAAM,EAAA,yBAAgB,IAAI,KAAG,MAAM,CAAC;IAClD,QAAQ,GAAG,CAAC;QAAE,KAAK;MAAK;IACxB,QAAQ,GAAG,CAAC;IAKZ,QAAQ,GAAG,CAAC;IAGZ,QAAQ,GAAG,CAAC;IAMZ,QAAQ,GAAG,CAAC;IAKZ,QAAQ,GAAG,CAAC,mBAAmB;IAC/B,IAAM,cAAI,EAAE;IACZ,QAAQ,GAAG,CAAC,CAAC;IACb,OAAO;AACT;AAEA;;aAAM;AAAQ;AACP;;aAAM;IACX,aAAc;QACR;IACN;IACA,YAAA,UAAQ,MAAM,EAAQ;QACpB;YACE,QAAQ,GAAG,CAAC;cACb;QACD;YACE,QAAQ,GAAG,CAAC;cACb;QACD,qCAA+C;YAC7C,QAAQ,GAAG,CAAC;QACd;YAAO,wBAAkC;gBACvC,QAAQ,GAAG,CAAC;YACd;gBAAO,yBAAmC;oBACxC,QAAQ,GAAG,CAAC;gBACd;;;QACA,OAAO,GAAI;IACb;AACF;AAEO;YAAe,mCAAY;IAC5B;IACA;IACA;IACJ,OAAO;QAAE,CAAA,IAAG,CAAC;MAAE;AACjB;AAEO,WAAM,wBAAwB;GAAC;;AAC/B,WAAM,wBAAwB;CAAU,EAAA,GAAG;;AAC3C,WAAM,wBAAwB;CAAmB,EAAA,GAAG;;AAtF9B;;;IAC3B,WAAA,MAAM,MAAM,EAAA;IACZ,WAAA,KAAK,QAAM,EAAA;IACX,WAAA,SAAQ,aAA8B;IACtC,WAAA,MAAK,aAA8B;IACnC,WAAA,UAAS,aAA8B;AACzC;+BAEuC,EAAA,SAAS,+BAAqB;;;;;SALxD,KAAK;yBAAL;;;SACH,KAAK;sBAAL;;;SACI,KAAK;0BAAL;;;;wBAsBQ,0BAAuB,MAAM;;;IAA7B;;;;;;8BAgCZ,MAAM;;;;;;;;6BC/DS,KAAK,MAAM,KAAK,IAAI;sBAApB;;6BAAA,KAAK,MAAM,KAAK,IAAI;sBAApB;;6BAAA,KAAK,MAAM,KAAK,IAAI;sBAApB;;;;;4CDYc,EAAA,SAAS,+BAAqB;kCAA9B;;qCAmBjB,0BAAuB,MAAM;yBAA7B;;;;;;0CC/BG,KAAK,MAAM,KAAK,IAAI;8BAApB;;0CAAA,KAAK,MAAM,KAAK,IAAI;8BAApB;;0CAAA,KAAK,MAAM,KAAK,IAAI;8BAApB"
}
\ No newline at end of file
\ No newline at end of file
packages/playground/uts/unpackage/dist/dev/app-plus/uni_modules/test-component/utssdk/app-android/index.kt
浏览文件 @
c65b509e
...
@@ -58,8 +58,11 @@ open class AnimationViewComponent : UTSComponent<LottieAnimationView> {
...
@@ -58,8 +58,11 @@ open class AnimationViewComponent : UTSComponent<LottieAnimationView> {
override
fun
unmounted
()
{}
override
fun
unmounted
()
{}
@JSMethod
(
uiThread
=
false
)
@JSMethod
(
uiThread
=
false
)
open
fun
setRepeatMode
(
repeat
:
String
)
{
open
fun
setRepeatMode
(
repeat
:
String
)
{
if
(
"RESTART"
==
repeat
)
this
.
`$
el`
.
repeatMode
=
LottieDrawable
.
RESTART
;
if
(
"RESTART"
==
repeat
)
{
else
if
(
"REVERSE"
==
repeat
)
this
.
`$
el`
.
repeatMode
=
LottieDrawable
.
RESTART
;
this
.
`$
el`
.
repeatMode
=
LottieDrawable
.
RESTART
;
}
else
if
(
"REVERSE"
==
repeat
)
{
this
.
`$
el`
.
repeatMode
=
LottieDrawable
.
RESTART
;
}
}
}
@JSMethod
(
uiThread
=
false
)
@JSMethod
(
uiThread
=
false
)
open
fun
privateMethod
()
{}
open
fun
privateMethod
()
{}
...
@@ -67,27 +70,41 @@ open class AnimationViewComponent : UTSComponent<LottieAnimationView> {
...
@@ -67,27 +70,41 @@ open class AnimationViewComponent : UTSComponent<LottieAnimationView> {
this
.
`$
watch`
<
String
>(
"path"
,
fun
(
newPath
,
oldPath
){
this
.
`$
watch`
<
String
>(
"path"
,
fun
(
newPath
,
oldPath
){
var
lottieAnimationView
=
this
.
`$
el`
;
var
lottieAnimationView
=
this
.
`$
el`
;
if
(
lottieAnimationView
!=
null
&&
!
TextUtils
.
isEmpty
(
newPath
))
{
if
(
lottieAnimationView
!=
null
&&
!
TextUtils
.
isEmpty
(
newPath
))
{
if
(
newPath
.
startsWith
(
"http://"
)
||
newPath
.
startsWith
(
"https://"
))
lottieAnimationView
.
setAnimationFromUrl
(
newPath
);
if
(
newPath
.
startsWith
(
"http://"
)
||
newPath
.
startsWith
(
"https://"
))
{
else
lottieAnimationView
.
setAnimation
(
newPath
);
lottieAnimationView
.
setAnimationFromUrl
(
newPath
);
}
else
{
lottieAnimationView
.
setAnimation
(
newPath
);
}
}
if
(
this
.
autoplay
)
{
lottieAnimationView
.
playAnimation
();
}
}
if
(
this
.
autoplay
)
lottieAnimationView
.
playAnimation
();
}
}
);
);
this
.
`$
watch`
<
Boolean
>(
"loop"
,
fun
(
newLoop
,
oldLoop
){
this
.
`$
watch`
<
Boolean
>(
"loop"
,
fun
(
newLoop
,
oldLoop
){
if
(
newLoop
)
this
.
`$
el`
.
repeatCount
=
Int
.
MAX_VALUE
;
if
(
newLoop
)
{
else
this
.
`$
el`
.
repeatCount
=
0
;
this
.
`$
el`
.
repeatCount
=
Int
.
MAX_VALUE
;
if
(
this
.
autoplay
)
this
.
`$
el`
.
playAnimation
();
}
else
{
this
.
`$
el`
.
repeatCount
=
0
;
}
if
(
this
.
autoplay
)
{
this
.
`$
el`
.
playAnimation
();
}
}
}
);
);
this
.
`$
watch`
<
Boolean
>(
"autoplay"
,
fun
(
newValue
,
oldValue
){
this
.
`$
watch`
<
Boolean
>(
"autoplay"
,
fun
(
newValue
,
oldValue
){
if
(
newValue
)
this
.
`$
el`
.
playAnimation
();
if
(
newValue
)
{
this
.
`$
el`
.
playAnimation
();
}
}
}
);
);
this
.
`$
watch`
<
String
>(
"action"
,
fun
(
newAction
,
oldAction
){
this
.
`$
watch`
<
String
>(
"action"
,
fun
(
newAction
,
oldAction
){
if
(
newAction
==
"play"
||
newAction
==
"pause"
||
newAction
==
"stop"
)
{
if
(
newAction
==
"play"
||
newAction
==
"pause"
||
newAction
==
"stop"
)
{
if
(
this
.
action
==
"play"
)
this
.
`$
el`
.
playAnimation
();
if
(
this
.
action
==
"play"
)
{
else
if
(
this
.
action
==
"play"
)
this
.
`$
el`
.
pauseAnimation
();
this
.
`$
el`
.
playAnimation
();
else
if
(
this
.
action
==
"stop"
)
{
}
else
if
(
this
.
action
==
"play"
)
{
this
.
`$
el`
.
pauseAnimation
();
}
else
if
(
this
.
action
==
"stop"
)
{
this
.
`$
el`
.
cancelAnimation
();
this
.
`$
el`
.
cancelAnimation
();
this
.
`$
el`
.
clearAnimation
();
this
.
`$
el`
.
clearAnimation
();
}
}
...
@@ -95,8 +112,11 @@ open class AnimationViewComponent : UTSComponent<LottieAnimationView> {
...
@@ -95,8 +112,11 @@ open class AnimationViewComponent : UTSComponent<LottieAnimationView> {
}
}
);
);
this
.
`$
watch`
<
Boolean
>(
"hidden"
,
fun
(
newValue
,
oldValue
){
this
.
`$
watch`
<
Boolean
>(
"hidden"
,
fun
(
newValue
,
oldValue
){
if
(
newValue
)
this
.
`$
el`
.
visibility
=
View
.
GONE
;
if
(
newValue
)
{
else
this
.
`$
el`
.
visibility
=
View
.
VISIBLE
;
this
.
`$
el`
.
visibility
=
View
.
GONE
;
}
else
{
this
.
`$
el`
.
visibility
=
View
.
VISIBLE
;
}
}
}
);
);
}
}
...
...
packages/playground/uts/unpackage/dist/dev/app-plus/uni_modules/test-uniplugin/utssdk/app-ios/index.swift
浏览文件 @
c65b509e
...
@@ -7,12 +7,33 @@ public var uni_showModel = DCloudUTSExtAPI.showModel;
...
@@ -7,12 +7,33 @@ public var uni_showModel = DCloudUTSExtAPI.showModel;
public
typealias
ShowToast
=
(
_
msg
:
String
)
->
Void
;
public
typealias
ShowToast
=
(
_
msg
:
String
)
->
Void
;
@objc
(
UTSSDKModulesTestUniPluginGetBatteryInfoOptions
)
@objc
(
UTSSDKModulesTestUniPluginGetBatteryInfoOptions
)
@objcMembers
@objcMembers
public
class
GetBatteryInfoOptions
:
NSObject
{
public
class
GetBatteryInfoOptions
:
NSObject
,
UTSObject
{
public
var
name
:
String
!
;
public
var
name
:
String
!
;
public
var
pwd
:
NSNumber
!
;
public
var
pwd
:
NSNumber
!
;
public
var
success
:
((
_
res
:
UTSJSONObject
)
->
Void
)?;
public
var
success
:
((
_
res
:
UTSJSONObject
)
->
Void
)?;
public
var
fail
:
((
_
res
:
UTSJSONObject
)
->
Void
)?;
public
var
fail
:
((
_
res
:
UTSJSONObject
)
->
Void
)?;
public
var
complete
:
((
_
res
:
UTSJSONObject
)
->
Void
)?;
public
var
complete
:
((
_
res
:
UTSJSONObject
)
->
Void
)?;
public
subscript
(
_
key
:
String
)
->
Any
?
{
get
{
return
utsSubscriptGetValue
(
key
);
}
set
{
switch
(
key
){
case
"name"
:
name
=
try!
utsSubscriptCheckValue
(
newValue
);
case
"pwd"
:
pwd
=
try!
utsSubscriptCheckValue
(
newValue
);
case
"success"
:
success
=
try!
utsSubscriptCheckValueIfPresent
(
newValue
);
case
"fail"
:
fail
=
try!
utsSubscriptCheckValueIfPresent
(
newValue
);
case
"complete"
:
complete
=
try!
utsSubscriptCheckValueIfPresent
(
newValue
);
default
:
break
;
}
}
}
public
override
init
()
{
public
override
init
()
{
super
.
init
();
super
.
init
();
}
}
...
...
packages/uni-uts-v1/__tests__/sourceMap.spec.ts
浏览文件 @
c65b509e
...
@@ -183,7 +183,7 @@ describe('uts:sourceMap', () => {
...
@@ -183,7 +183,7 @@ describe('uts:sourceMap', () => {
)
)
const
{
line
,
column
,
source
}
=
await
originalPositionFor
({
const
{
line
,
column
,
source
}
=
await
originalPositionFor
({
sourceMapFile
,
sourceMapFile
,
line
:
29
,
line
:
50
,
column
:
0
,
column
:
0
,
})
})
...
...
packages/uts-darwin-arm64/uts.darwin-arm64.node
浏览文件 @
c65b509e
无法预览此类型文件
packages/uts-darwin-x64/uts.darwin-x64.node
浏览文件 @
c65b509e
无法预览此类型文件
packages/uts-linux-x64-gnu/uts.linux-x64-gnu.node
浏览文件 @
c65b509e
无法预览此类型文件
packages/uts-linux-x64-musl/uts.linux-x64-musl.node
浏览文件 @
c65b509e
无法预览此类型文件
packages/uts-win32-ia32-msvc/uts.win32-ia32-msvc.node
浏览文件 @
c65b509e
无法预览此类型文件
packages/uts-win32-x64-msvc/uts.win32-x64-msvc.node
浏览文件 @
c65b509e
无法预览此类型文件
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录