@use-voltra/ios-client 2.1.1 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -8
- package/Voltra.podspec +1 -0
- package/build/commonjs/dynamic-widget/api.js +15 -0
- package/build/commonjs/dynamic-widget/api.js.map +1 -0
- package/build/commonjs/events.js +23 -0
- package/build/commonjs/events.js.map +1 -1
- package/build/commonjs/index.js +74 -7
- package/build/commonjs/index.js.map +1 -1
- package/build/commonjs/live-activity/api.js +3 -1
- package/build/commonjs/live-activity/api.js.map +1 -1
- package/build/commonjs/live-activity/dynamic-api.js +173 -0
- package/build/commonjs/live-activity/dynamic-api.js.map +1 -0
- package/build/commonjs/native/NativeVoltra.js.map +1 -1
- package/build/commonjs/utils/enableDynamicLiveActivityHotReload.js +47 -0
- package/build/commonjs/utils/enableDynamicLiveActivityHotReload.js.map +1 -0
- package/build/commonjs/utils/enableWidgetHotReload.js +8 -11
- package/build/commonjs/utils/enableWidgetHotReload.js.map +1 -1
- package/build/commonjs/utils/useUpdateOnHMR.js +3 -7
- package/build/commonjs/utils/useUpdateOnHMR.js.map +1 -1
- package/build/commonjs/widgets/server-credentials.js +9 -0
- package/build/commonjs/widgets/server-credentials.js.map +1 -1
- package/build/commonjs/widgets/server-update.js +78 -0
- package/build/commonjs/widgets/server-update.js.map +1 -0
- package/build/module/dynamic-widget/api.js +10 -0
- package/build/module/dynamic-widget/api.js.map +1 -0
- package/build/module/events.js +23 -0
- package/build/module/events.js.map +1 -1
- package/build/module/index.js +4 -0
- package/build/module/index.js.map +1 -1
- package/build/module/live-activity/api.js +2 -2
- package/build/module/live-activity/api.js.map +1 -1
- package/build/module/live-activity/dynamic-api.js +167 -0
- package/build/module/live-activity/dynamic-api.js.map +1 -0
- package/build/module/native/NativeVoltra.js.map +1 -1
- package/build/module/utils/enableDynamicLiveActivityHotReload.js +43 -0
- package/build/module/utils/enableDynamicLiveActivityHotReload.js.map +1 -0
- package/build/module/utils/enableWidgetHotReload.js +9 -11
- package/build/module/utils/enableWidgetHotReload.js.map +1 -1
- package/build/module/utils/useUpdateOnHMR.js +3 -7
- package/build/module/utils/useUpdateOnHMR.js.map +1 -1
- package/build/module/widgets/server-credentials.js +9 -0
- package/build/module/widgets/server-credentials.js.map +1 -1
- package/build/module/widgets/server-update.js +72 -0
- package/build/module/widgets/server-update.js.map +1 -0
- package/build/typescript/commonjs/dynamic-widget/api.d.ts +8 -0
- package/build/typescript/commonjs/dynamic-widget/api.d.ts.map +1 -0
- package/build/typescript/commonjs/events.d.ts +7 -0
- package/build/typescript/commonjs/events.d.ts.map +1 -1
- package/build/typescript/commonjs/index.d.ts +4 -0
- package/build/typescript/commonjs/index.d.ts.map +1 -1
- package/build/typescript/commonjs/live-activity/api.d.ts +7 -0
- package/build/typescript/commonjs/live-activity/api.d.ts.map +1 -1
- package/build/typescript/commonjs/live-activity/dynamic-api.d.ts +54 -0
- package/build/typescript/commonjs/live-activity/dynamic-api.d.ts.map +1 -0
- package/build/typescript/commonjs/native/NativeVoltra.d.ts +21 -0
- package/build/typescript/commonjs/native/NativeVoltra.d.ts.map +1 -1
- package/build/typescript/commonjs/types.d.ts +1 -1
- package/build/typescript/commonjs/types.d.ts.map +1 -1
- package/build/typescript/commonjs/utils/enableDynamicLiveActivityHotReload.d.ts +15 -0
- package/build/typescript/commonjs/utils/enableDynamicLiveActivityHotReload.d.ts.map +1 -0
- package/build/typescript/commonjs/utils/enableWidgetHotReload.d.ts +5 -7
- package/build/typescript/commonjs/utils/enableWidgetHotReload.d.ts.map +1 -1
- package/build/typescript/commonjs/utils/useUpdateOnHMR.d.ts +0 -3
- package/build/typescript/commonjs/utils/useUpdateOnHMR.d.ts.map +1 -1
- package/build/typescript/commonjs/widgets/server-credentials.d.ts +8 -0
- package/build/typescript/commonjs/widgets/server-credentials.d.ts.map +1 -1
- package/build/typescript/commonjs/widgets/server-update.d.ts +64 -0
- package/build/typescript/commonjs/widgets/server-update.d.ts.map +1 -0
- package/build/typescript/module/dynamic-widget/api.d.ts +8 -0
- package/build/typescript/module/dynamic-widget/api.d.ts.map +1 -0
- package/build/typescript/module/events.d.ts +7 -0
- package/build/typescript/module/events.d.ts.map +1 -1
- package/build/typescript/module/index.d.ts +4 -0
- package/build/typescript/module/index.d.ts.map +1 -1
- package/build/typescript/module/live-activity/api.d.ts +7 -0
- package/build/typescript/module/live-activity/api.d.ts.map +1 -1
- package/build/typescript/module/live-activity/dynamic-api.d.ts +54 -0
- package/build/typescript/module/live-activity/dynamic-api.d.ts.map +1 -0
- package/build/typescript/module/native/NativeVoltra.d.ts +21 -0
- package/build/typescript/module/native/NativeVoltra.d.ts.map +1 -1
- package/build/typescript/module/types.d.ts +1 -1
- package/build/typescript/module/types.d.ts.map +1 -1
- package/build/typescript/module/utils/enableDynamicLiveActivityHotReload.d.ts +15 -0
- package/build/typescript/module/utils/enableDynamicLiveActivityHotReload.d.ts.map +1 -0
- package/build/typescript/module/utils/enableWidgetHotReload.d.ts +5 -7
- package/build/typescript/module/utils/enableWidgetHotReload.d.ts.map +1 -1
- package/build/typescript/module/utils/useUpdateOnHMR.d.ts +0 -3
- package/build/typescript/module/utils/useUpdateOnHMR.d.ts.map +1 -1
- package/build/typescript/module/widgets/server-credentials.d.ts +8 -0
- package/build/typescript/module/widgets/server-credentials.d.ts.map +1 -1
- package/build/typescript/module/widgets/server-update.d.ts +64 -0
- package/build/typescript/module/widgets/server-update.d.ts.map +1 -0
- package/expo-plugin/build/cjs/constants.js +20 -1
- package/expo-plugin/build/cjs/constants.js.map +1 -1
- package/expo-plugin/build/cjs/index.js +9 -1
- package/expo-plugin/build/cjs/index.js.map +1 -1
- package/expo-plugin/build/cjs/ios/index.js +1 -0
- package/expo-plugin/build/cjs/ios/index.js.map +1 -1
- package/expo-plugin/build/cjs/ios/infoPlist.js +28 -5
- package/expo-plugin/build/cjs/ios/infoPlist.js.map +1 -1
- package/expo-plugin/build/cjs/ios/serverUpdate.js +25 -0
- package/expo-plugin/build/cjs/ios/serverUpdate.js.map +1 -0
- package/expo-plugin/build/cjs/ios-widget/clientRendered.js +4 -4
- package/expo-plugin/build/cjs/ios-widget/clientRendered.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/clientRenderedPrerender.js +5 -5
- package/expo-plugin/build/cjs/ios-widget/clientRenderedPrerender.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/dynamic-live-activity/swift.js +130 -0
- package/expo-plugin/build/cjs/ios-widget/dynamic-live-activity/swift.js.map +1 -0
- package/expo-plugin/build/cjs/ios-widget/files/index.js +9 -2
- package/expo-plugin/build/cjs/ios-widget/files/index.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/files/infoPlist.js +6 -3
- package/expo-plugin/build/cjs/ios-widget/files/infoPlist.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/files/manifest.js +24 -0
- package/expo-plugin/build/cjs/ios-widget/files/manifest.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/files/swift-utils.js +7 -0
- package/expo-plugin/build/cjs/ios-widget/files/swift-utils.js.map +1 -0
- package/expo-plugin/build/cjs/ios-widget/files/swift.js +56 -26
- package/expo-plugin/build/cjs/ios-widget/files/swift.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/index.js +9 -3
- package/expo-plugin/build/cjs/ios-widget/index.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/podfile.js +38 -12
- package/expo-plugin/build/cjs/ios-widget/podfile.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/widgetPlist.js +34 -22
- package/expo-plugin/build/cjs/ios-widget/widgetPlist.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/buildPhases.js +194 -118
- package/expo-plugin/build/cjs/ios-widget/xcode/buildPhases.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/configurationList.js +30 -22
- package/expo-plugin/build/cjs/ios-widget/xcode/configurationList.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/fileReferences.js +50 -0
- package/expo-plugin/build/cjs/ios-widget/xcode/fileReferences.js.map +1 -0
- package/expo-plugin/build/cjs/ios-widget/xcode/groups.js +45 -43
- package/expo-plugin/build/cjs/ios-widget/xcode/groups.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/index.js +93 -91
- package/expo-plugin/build/cjs/ios-widget/xcode/index.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/mainAppSettings.js +41 -39
- package/expo-plugin/build/cjs/ios-widget/xcode/mainAppSettings.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/productFile.js +2 -2
- package/expo-plugin/build/cjs/ios-widget/xcode/productFile.js.map +1 -1
- package/expo-plugin/build/cjs/ios-widget/xcode/target.js +29 -63
- package/expo-plugin/build/cjs/ios-widget/xcode/target.js.map +1 -1
- package/expo-plugin/build/cjs/utils/urlScheme.js +36 -14
- package/expo-plugin/build/cjs/utils/urlScheme.js.map +1 -1
- package/expo-plugin/build/cjs/validation.js +54 -0
- package/expo-plugin/build/cjs/validation.js.map +1 -1
- package/expo-plugin/build/esm/constants.js +17 -0
- package/expo-plugin/build/esm/constants.js.map +1 -1
- package/expo-plugin/build/esm/index.js +9 -1
- package/expo-plugin/build/esm/index.js.map +1 -1
- package/expo-plugin/build/esm/ios/index.js +1 -0
- package/expo-plugin/build/esm/ios/index.js.map +1 -1
- package/expo-plugin/build/esm/ios/infoPlist.js +28 -5
- package/expo-plugin/build/esm/ios/infoPlist.js.map +1 -1
- package/expo-plugin/build/esm/ios/serverUpdate.js +21 -0
- package/expo-plugin/build/esm/ios/serverUpdate.js.map +1 -0
- package/expo-plugin/build/esm/ios-widget/clientRendered.js +5 -5
- package/expo-plugin/build/esm/ios-widget/clientRendered.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/clientRenderedPrerender.js +6 -6
- package/expo-plugin/build/esm/ios-widget/clientRenderedPrerender.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/dynamic-live-activity/swift.js +122 -0
- package/expo-plugin/build/esm/ios-widget/dynamic-live-activity/swift.js.map +1 -0
- package/expo-plugin/build/esm/ios-widget/files/index.js +10 -3
- package/expo-plugin/build/esm/ios-widget/files/index.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/files/infoPlist.js +6 -3
- package/expo-plugin/build/esm/ios-widget/files/infoPlist.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/files/manifest.js +23 -1
- package/expo-plugin/build/esm/ios-widget/files/manifest.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/files/swift-utils.js +4 -0
- package/expo-plugin/build/esm/ios-widget/files/swift-utils.js.map +1 -0
- package/expo-plugin/build/esm/ios-widget/files/swift.js +50 -20
- package/expo-plugin/build/esm/ios-widget/files/swift.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/index.js +9 -3
- package/expo-plugin/build/esm/ios-widget/index.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/podfile.js +36 -11
- package/expo-plugin/build/esm/ios-widget/podfile.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/widgetPlist.js +34 -22
- package/expo-plugin/build/esm/ios-widget/widgetPlist.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/buildPhases.js +194 -117
- package/expo-plugin/build/esm/ios-widget/xcode/buildPhases.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/configurationList.js +31 -22
- package/expo-plugin/build/esm/ios-widget/xcode/configurationList.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/fileReferences.js +45 -0
- package/expo-plugin/build/esm/ios-widget/xcode/fileReferences.js.map +1 -0
- package/expo-plugin/build/esm/ios-widget/xcode/groups.js +45 -42
- package/expo-plugin/build/esm/ios-widget/xcode/groups.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/index.js +97 -96
- package/expo-plugin/build/esm/ios-widget/xcode/index.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/mainAppSettings.js +41 -39
- package/expo-plugin/build/esm/ios-widget/xcode/mainAppSettings.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/productFile.js +3 -2
- package/expo-plugin/build/esm/ios-widget/xcode/productFile.js.map +1 -1
- package/expo-plugin/build/esm/ios-widget/xcode/target.js +28 -62
- package/expo-plugin/build/esm/ios-widget/xcode/target.js.map +1 -1
- package/expo-plugin/build/esm/utils/urlScheme.js +34 -14
- package/expo-plugin/build/esm/utils/urlScheme.js.map +1 -1
- package/expo-plugin/build/esm/validation.js +54 -1
- package/expo-plugin/build/esm/validation.js.map +1 -1
- package/expo-plugin/build/types/constants.d.ts +10 -1
- package/expo-plugin/build/types/constants.d.ts.map +1 -1
- package/expo-plugin/build/types/index.d.ts +1 -1
- package/expo-plugin/build/types/index.d.ts.map +1 -1
- package/expo-plugin/build/types/ios/index.d.ts +2 -0
- package/expo-plugin/build/types/ios/index.d.ts.map +1 -1
- package/expo-plugin/build/types/ios/infoPlist.d.ts +2 -0
- package/expo-plugin/build/types/ios/infoPlist.d.ts.map +1 -1
- package/expo-plugin/build/types/ios/serverUpdate.d.ts +11 -0
- package/expo-plugin/build/types/ios/serverUpdate.d.ts.map +1 -0
- package/expo-plugin/build/types/ios-widget/clientRendered.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/clientRenderedPrerender.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/dynamic-live-activity/swift.d.ts +7 -0
- package/expo-plugin/build/types/ios-widget/dynamic-live-activity/swift.d.ts.map +1 -0
- package/expo-plugin/build/types/ios-widget/files/index.d.ts +3 -1
- package/expo-plugin/build/types/ios-widget/files/index.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/files/infoPlist.d.ts +2 -1
- package/expo-plugin/build/types/ios-widget/files/infoPlist.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/files/manifest.d.ts +9 -2
- package/expo-plugin/build/types/ios-widget/files/manifest.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/files/swift-utils.d.ts +2 -0
- package/expo-plugin/build/types/ios-widget/files/swift-utils.d.ts.map +1 -0
- package/expo-plugin/build/types/ios-widget/files/swift.d.ts +6 -2
- package/expo-plugin/build/types/ios-widget/files/swift.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/index.d.ts +3 -1
- package/expo-plugin/build/types/ios-widget/index.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/podfile.d.ts +19 -1
- package/expo-plugin/build/types/ios-widget/podfile.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/widgetPlist.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/buildPhases.d.ts +6 -8
- package/expo-plugin/build/types/ios-widget/xcode/buildPhases.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/configurationList.d.ts +15 -10
- package/expo-plugin/build/types/ios-widget/xcode/configurationList.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/fileReferences.d.ts +16 -0
- package/expo-plugin/build/types/ios-widget/xcode/fileReferences.d.ts.map +1 -0
- package/expo-plugin/build/types/ios-widget/xcode/groups.d.ts +0 -4
- package/expo-plugin/build/types/ios-widget/xcode/groups.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/index.d.ts +23 -3
- package/expo-plugin/build/types/ios-widget/xcode/index.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/mainAppSettings.d.ts +16 -4
- package/expo-plugin/build/types/ios-widget/xcode/mainAppSettings.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/productFile.d.ts +0 -4
- package/expo-plugin/build/types/ios-widget/xcode/productFile.d.ts.map +1 -1
- package/expo-plugin/build/types/ios-widget/xcode/target.d.ts +11 -26
- package/expo-plugin/build/types/ios-widget/xcode/target.d.ts.map +1 -1
- package/expo-plugin/build/types/types.d.ts +23 -4
- package/expo-plugin/build/types/types.d.ts.map +1 -1
- package/expo-plugin/build/types/utils/urlScheme.d.ts +16 -0
- package/expo-plugin/build/types/utils/urlScheme.d.ts.map +1 -1
- package/expo-plugin/build/types/validation.d.ts +2 -1
- package/expo-plugin/build/types/validation.d.ts.map +1 -1
- package/expo-plugin/src/constants.ts +24 -1
- package/expo-plugin/src/index.ts +14 -1
- package/expo-plugin/src/ios/index.ts +3 -0
- package/expo-plugin/src/ios/infoPlist.ts +33 -5
- package/expo-plugin/src/ios/serverUpdate.ts +29 -0
- package/expo-plugin/src/ios-widget/clientRendered.ts +9 -5
- package/expo-plugin/src/ios-widget/clientRenderedPrerender.ts +11 -6
- package/expo-plugin/src/ios-widget/dynamic-live-activity/swift.ts +138 -0
- package/expo-plugin/src/ios-widget/files/index.ts +15 -4
- package/expo-plugin/src/ios-widget/files/infoPlist.ts +17 -3
- package/expo-plugin/src/ios-widget/files/manifest.ts +42 -2
- package/expo-plugin/src/ios-widget/files/swift-utils.ts +3 -0
- package/expo-plugin/src/ios-widget/files/swift.ts +69 -22
- package/expo-plugin/src/ios-widget/index.ts +13 -3
- package/expo-plugin/src/ios-widget/podfile.ts +46 -13
- package/expo-plugin/src/ios-widget/widgetPlist.ts +37 -23
- package/expo-plugin/src/ios-widget/xcode/__fixtures__/fresh.pbxproj +197 -0
- package/expo-plugin/src/ios-widget/xcode/__fixtures__/with-existing-extension.pbxproj +321 -0
- package/expo-plugin/src/ios-widget/xcode/__fixtures__/with-per-config-signing.pbxproj +203 -0
- package/expo-plugin/src/ios-widget/xcode/__snapshots__/applyXcodeChanges.node.test.ts.snap +363 -0
- package/expo-plugin/src/ios-widget/xcode/__tests__/pbxConsistency.ts +130 -0
- package/expo-plugin/src/ios-widget/xcode/buildPhases.ts +210 -164
- package/expo-plugin/src/ios-widget/xcode/configurationList.ts +52 -35
- package/expo-plugin/src/ios-widget/xcode/fileReferences.ts +51 -0
- package/expo-plugin/src/ios-widget/xcode/groups.ts +52 -54
- package/expo-plugin/src/ios-widget/xcode/index.ts +124 -119
- package/expo-plugin/src/ios-widget/xcode/mainAppSettings.ts +59 -54
- package/expo-plugin/src/ios-widget/xcode/productFile.ts +3 -2
- package/expo-plugin/src/ios-widget/xcode/target.ts +31 -83
- package/expo-plugin/src/types.ts +28 -4
- package/expo-plugin/src/utils/urlScheme.ts +47 -17
- package/expo-plugin/src/validation.ts +76 -1
- package/ios/Package.swift +39 -4
- package/ios/VoltraWidget.podspec +1 -0
- package/ios/app/NativeVoltra.mm +126 -7
- package/ios/app/VoltraLiveActivityManager.swift +30 -0
- package/ios/app/VoltraLiveActivityService.swift +77 -5
- package/ios/app/VoltraModule.swift +117 -1
- package/ios/app/VoltraModuleImpl.swift +116 -2
- package/ios/app/VoltraViewComponentView.mm +3 -3
- package/ios/app/VoltraWidgetService.swift +147 -12
- package/ios/app/dynamic-live-activity/VoltraDynamicLiveActivityService.swift +97 -0
- package/ios/app/dynamic-live-activity/VoltraLiveActivityChronology.swift +68 -0
- package/ios/shared/DynamicWidgetPropsCodec.swift +51 -0
- package/ios/shared/DynamicWidgetPropsStorage.swift +53 -0
- package/ios/shared/DynamicWidgetPropsStore.swift +117 -0
- package/ios/shared/DynamicWidgetRenderCoordinator.swift +31 -0
- package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerFetchResolver.swift +34 -0
- package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerProps.swift +55 -0
- package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerPropsStore.swift +146 -0
- package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerUpdateRunner.swift +193 -0
- package/ios/shared/DynamicWidgetUpdater.swift +30 -0
- package/ios/shared/ServerWidgetContentResolver.swift +60 -0
- package/ios/shared/ServerWidgetResponseStore.swift +25 -0
- package/ios/shared/ShortNames.swift +6 -0
- package/ios/shared/VoltraConfig.swift +41 -0
- package/ios/shared/VoltraConstants.swift +19 -0
- package/ios/shared/VoltraElement.swift +127 -43
- package/ios/shared/VoltraEventBus.swift +52 -7
- package/ios/shared/VoltraJSRenderer.swift +93 -23
- package/ios/shared/VoltraNode.swift +7 -111
- package/ios/shared/VoltraRefreshIntent.swift +1 -1
- package/ios/shared/VoltraWidgetDefaults.swift +9 -1
- package/ios/shared/VoltraWidgetKind.swift +41 -0
- package/ios/shared/VoltraWidgetServerFetcher.swift +52 -107
- package/ios/shared/WidgetServer/VoltraWidgetAppearance.swift +17 -0
- package/ios/shared/WidgetServer/VoltraWidgetServer.swift +138 -0
- package/ios/shared/WidgetServer/WidgetCanonicalConfiguration.swift +77 -0
- package/ios/shared/WidgetServer/WidgetScope.swift +55 -0
- package/ios/shared/WidgetServer/WidgetServerEtagStore.swift +55 -0
- package/ios/shared/WidgetServer/WidgetServerFetcher.swift +179 -0
- package/ios/shared/WidgetServer/WidgetServerRequestBuilder.swift +114 -0
- package/ios/shared/WidgetServer/WidgetServerSettingsCodec.swift +47 -0
- package/ios/shared/WidgetServer/WidgetServerSettingsResolver.swift +129 -0
- package/ios/shared/WidgetServer/WidgetServerSettingsStore.swift +170 -0
- package/ios/shared/WidgetServer/WidgetServerSettingsValidator.swift +73 -0
- package/ios/shared/WidgetServer/WidgetServerUpdateSettings.swift +123 -0
- package/ios/shared/WidgetServer/WidgetServerUpdateSettingsJson.swift +115 -0
- package/ios/shared/dynamic-live-activity/DynamicLiveActivityPropsCodec.swift +13 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityBundleSource.swift +156 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityObserver.swift +97 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityOperations.swift +105 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityPayloadValidator.swift +55 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRegistry.swift +143 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRenderFailureQueue.swift +158 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRenderFailureReporter.swift +120 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRenderer.swift +370 -0
- package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityTypes.swift +87 -0
- package/ios/shared/dynamic-live-activity/VoltraLiveActivityOrder.swift +19 -0
- package/ios/target/VoltraClientWidgetRuntime.swift +60 -10
- package/ios/target/VoltraDynamicWidgetServerUpdateProvider.swift +204 -0
- package/ios/target/VoltraHomeWidget.swift +91 -92
- package/ios/target/VoltraWidget.swift +3 -1
- package/ios/ui/Extensions/VoltraNode+View.swift +113 -0
- package/ios/ui/Generated/Parameters/ChartParameters.swift +3 -0
- package/ios/ui/Helpers/VoltraDeepLinkResolver.swift +5 -3
- package/ios/ui/Helpers/VoltraProgressDriver.swift +6 -2
- package/ios/ui/Layout/VoltraFlexStackLayout.swift +9 -3
- package/ios/ui/Style/JSColorParser.swift +24 -8
- package/ios/ui/Style/JSGradientParser.swift +36 -12
- package/ios/ui/Style/JSStyleParser.swift +36 -12
- package/ios/ui/Style/LayoutStyle.swift +12 -4
- package/ios/ui/Views/VoltraChart.swift +160 -16
- package/ios/ui/Views/VoltraLinearGradient.swift +6 -2
- package/package.json +5 -5
- package/src/dynamic-widget/api.ts +25 -0
- package/src/events.ts +34 -0
- package/src/index.ts +23 -0
- package/src/live-activity/api.ts +2 -2
- package/src/live-activity/dynamic-api.ts +240 -0
- package/src/native/NativeVoltra.ts +22 -0
- package/src/types.ts +4 -0
- package/src/utils/enableDynamicLiveActivityHotReload.ts +50 -0
- package/src/utils/enableWidgetHotReload.ts +9 -16
- package/src/utils/useUpdateOnHMR.ts +3 -12
- package/src/widgets/server-credentials.ts +8 -0
- package/src/widgets/server-update.ts +84 -0
- /package/ios/shared/{VoltraKeychainHelper.swift → WidgetServer/VoltraKeychainHelper.swift} +0 -0
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
- **iOS Widgets**: Update, schedule, reload, and query widgets with `updateWidget`, `scheduleWidget`, `getActiveWidgets`, and more.
|
|
14
14
|
|
|
15
|
-
- **
|
|
15
|
+
- **Dynamic Widgets** _(experimental)_: Declare a widget in app.json with an `id` and `entry`, default-export the Dynamic Widget component, and render it on-device from runtime props and live environment values (family, color scheme, locale, configuration).
|
|
16
16
|
|
|
17
17
|
- **Fast Refresh**: Hooks and previews integrate with your React Native dev workflow.
|
|
18
18
|
|
|
@@ -22,20 +22,73 @@
|
|
|
22
22
|
|
|
23
23
|
- **Expo config plugin**: Add `"@use-voltra/ios-client"` to `app.json` to generate the Live Activity extension, widget targets, and entitlements.
|
|
24
24
|
|
|
25
|
-
##
|
|
25
|
+
## Dynamic Widgets (experimental)
|
|
26
26
|
|
|
27
27
|
> [!WARNING]
|
|
28
|
-
>
|
|
28
|
+
> Dynamic Widgets are **experimental** — usable in production at your own risk. The API may
|
|
29
29
|
> change between releases.
|
|
30
30
|
|
|
31
|
-
Declare
|
|
32
|
-
module must default-export the
|
|
33
|
-
match the
|
|
34
|
-
(widget family, color scheme, locale, and user
|
|
31
|
+
Declare a Dynamic Widget in app.json with a stable `id` and a project-relative `entry` path. The
|
|
32
|
+
entry module must default-export the Dynamic Widget function or component; the exported name does
|
|
33
|
+
not need to match the Dynamic Widget id. A Dynamic Widget renders on-device, so it can react to both
|
|
34
|
+
runtime props and live environment values (widget family, color scheme, locale, and user
|
|
35
|
+
`configuration` from the native Edit Widget sheet).
|
|
36
|
+
|
|
37
|
+
The first argument is the Dynamic Widget props object. Use `updateDynamicWidget` in your app to
|
|
38
|
+
persist a new props object and re-render the installed Dynamic Widget with the matching id:
|
|
39
|
+
|
|
40
|
+
```tsx
|
|
41
|
+
// widgets/ios/inbox-widget.tsx
|
|
42
|
+
import { Voltra, type WidgetEnvironment } from '@use-voltra/ios'
|
|
43
|
+
|
|
44
|
+
type InboxDynamicWidgetProps = {
|
|
45
|
+
headline?: string
|
|
46
|
+
unreadCount?: number
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export default function InboxDynamicWidget(
|
|
50
|
+
props: InboxDynamicWidgetProps = {},
|
|
51
|
+
env: WidgetEnvironment = {} as WidgetEnvironment
|
|
52
|
+
) {
|
|
53
|
+
const headline = props.headline ?? 'Inbox'
|
|
54
|
+
const unreadCount = props.unreadCount ?? 0
|
|
55
|
+
|
|
56
|
+
return (
|
|
57
|
+
<Voltra.VStack style={{ padding: 16, backgroundColor: '#111827' }}>
|
|
58
|
+
<Voltra.Text style={{ color: 'white' }}>{headline}</Voltra.Text>
|
|
59
|
+
<Voltra.Text style={{ color: '#34D399' }}>{unreadCount} unread</Voltra.Text>
|
|
60
|
+
<Voltra.Text style={{ color: '#9CA3AF' }}>Family: {env.widgetFamily}</Voltra.Text>
|
|
61
|
+
</Voltra.VStack>
|
|
62
|
+
)
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
// App code
|
|
68
|
+
import { updateDynamicWidget } from '@use-voltra/ios-client'
|
|
69
|
+
|
|
70
|
+
await updateDynamicWidget('inbox_widget', { headline: 'Team inbox', unreadCount: 7 })
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Dynamic Widget props must be JSON-serializable: strings, numbers, booleans, `null`, arrays, and nested
|
|
74
|
+
objects are supported. Values such as functions, `undefined`, `Date`, `BigInt`, and cyclic references
|
|
75
|
+
are not supported. Before the first `updateDynamicWidget` call, the entry receives `{}`. The latest
|
|
76
|
+
props object is stored by Dynamic Widget id, survives app process restarts, and is reused on
|
|
77
|
+
subsequent renders until another update replaces it or the app's data is cleared.
|
|
78
|
+
|
|
79
|
+
`updateDynamicWidget` is only for an entry-based Dynamic Widget. The legacy `updateWidget` API sends
|
|
80
|
+
pre-rendered variant payloads to a payload-driven widget and cannot update an entry-based Dynamic
|
|
81
|
+
Widget.
|
|
82
|
+
|
|
83
|
+
Configuration parameters declared in `app.json` (`appIntent.parameters`) are edited by the user in
|
|
84
|
+
the native iOS Edit Widget sheet and surface as `env.configuration`. Configuration is separate from
|
|
85
|
+
the Dynamic Widget props passed as the first argument; updating one does not replace the other.
|
|
35
86
|
|
|
36
87
|
Notes:
|
|
37
88
|
|
|
38
89
|
- iOS and Android widget declarations stay separate, and the same widget id can exist on both platforms as separate entries.
|
|
90
|
+
- Set `groupIdentifier` in the Voltra plugin configuration before calling `updateDynamicWidget`; the app and WidgetKit extension use the shared App Group to exchange runtime props.
|
|
91
|
+
- Rebuild the native iOS app after changing plugin configuration or upgrading to a package version that adds a native API.
|
|
39
92
|
- Verify release rendering on a **real device** — the iOS Simulator is unreliable for widget
|
|
40
93
|
rendering.
|
|
41
94
|
|
|
@@ -46,7 +99,7 @@ The documentation is available at [use-voltra.dev](https://use-voltra.dev). Rele
|
|
|
46
99
|
- [Installation](https://use-voltra.dev/getting-started/installation)
|
|
47
100
|
- [iOS Setup](https://use-voltra.dev/ios/setup)
|
|
48
101
|
- [Developing Live Activities](https://use-voltra.dev/ios/development/developing-live-activities)
|
|
49
|
-
- [Developing
|
|
102
|
+
- [Developing Dynamic Widgets](https://use-voltra.dev/ios/development/dynamic-widgets)
|
|
50
103
|
- [Plugin Configuration](https://use-voltra.dev/ios/api/plugin-configuration)
|
|
51
104
|
- [API Reference](https://use-voltra.dev/ios/api/configuration)
|
|
52
105
|
|
package/Voltra.podspec
CHANGED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.updateDynamicWidget = void 0;
|
|
7
|
+
var _NativeVoltra = require("../native/NativeVoltra.js");
|
|
8
|
+
var _assertRunningOnApple = require("../utils/assertRunningOnApple.js");
|
|
9
|
+
const updateDynamicWidget = async (dynamicWidgetId, dynamicWidgetProps) => {
|
|
10
|
+
if (!(0, _assertRunningOnApple.assertRunningOnApple)()) return Promise.resolve();
|
|
11
|
+
const dynamicWidgetPropsJson = JSON.stringify(dynamicWidgetProps);
|
|
12
|
+
return (0, _NativeVoltra.getNativeVoltra)().updateDynamicWidget(dynamicWidgetId, dynamicWidgetPropsJson);
|
|
13
|
+
};
|
|
14
|
+
exports.updateDynamicWidget = updateDynamicWidget;
|
|
15
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NativeVoltra","require","_assertRunningOnApple","updateDynamicWidget","dynamicWidgetId","dynamicWidgetProps","assertRunningOnApple","Promise","resolve","dynamicWidgetPropsJson","JSON","stringify","getNativeVoltra","exports"],"sourceRoot":"../../../src","sources":["dynamic-widget/api.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AAcO,MAAME,mBAAmB,GAAG,MAAAA,CACjCC,eAAuB,EACvBC,kBAAsC,KACpB;EAClB,IAAI,CAAC,IAAAC,0CAAoB,EAAC,CAAC,EAAE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;EAErD,MAAMC,sBAAsB,GAAGC,IAAI,CAACC,SAAS,CAACN,kBAAkB,CAAC;EAEjE,OAAO,IAAAO,6BAAe,EAAC,CAAC,CAACT,mBAAmB,CAACC,eAAe,EAAEK,sBAAsB,CAAC;AACvF,CAAC;AAAAI,OAAA,CAAAV,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
package/build/commonjs/events.js
CHANGED
|
@@ -9,6 +9,11 @@ var _VoltraModule = require("./VoltraModule.js");
|
|
|
9
9
|
const noopSubscription = {
|
|
10
10
|
remove: () => {}
|
|
11
11
|
};
|
|
12
|
+
|
|
13
|
+
// Codegen EventEmitter subscriptions do not tell native code when their last
|
|
14
|
+
// JavaScript listener goes away. Keep this count at the public API boundary so
|
|
15
|
+
// the App Group queue is drained only while it can actually be delivered.
|
|
16
|
+
let dynamicRenderFailureListenerCount = 0;
|
|
12
17
|
function addVoltraListener(event, listener) {
|
|
13
18
|
if (_reactNative.Platform.OS !== 'ios') {
|
|
14
19
|
console.warn(`[Voltra] Event '${event}' is only supported on iOS. Returning no-op subscription.`);
|
|
@@ -24,6 +29,24 @@ function addVoltraListener(event, listener) {
|
|
|
24
29
|
return voltraModule.onStateChanged(listener);
|
|
25
30
|
case 'interaction':
|
|
26
31
|
return voltraModule.onInteraction(listener);
|
|
32
|
+
case 'dynamicLiveActivityRenderFailed':
|
|
33
|
+
const subscription = voltraModule.onDynamicLiveActivityRenderFailed(listener);
|
|
34
|
+
dynamicRenderFailureListenerCount += 1;
|
|
35
|
+
if (dynamicRenderFailureListenerCount === 1) {
|
|
36
|
+
voltraModule.setDynamicLiveActivityRenderFailureListenerActive(true);
|
|
37
|
+
}
|
|
38
|
+
let removed = false;
|
|
39
|
+
return {
|
|
40
|
+
remove: () => {
|
|
41
|
+
if (removed) return;
|
|
42
|
+
removed = true;
|
|
43
|
+
subscription.remove();
|
|
44
|
+
dynamicRenderFailureListenerCount -= 1;
|
|
45
|
+
if (dynamicRenderFailureListenerCount === 0) {
|
|
46
|
+
voltraModule.setDynamicLiveActivityRenderFailureListenerActive(false);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
};
|
|
27
50
|
default:
|
|
28
51
|
console.warn(`[Voltra] Event '${event}' is not supported. Returning no-op subscription.`);
|
|
29
52
|
return noopSubscription;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_VoltraModule","noopSubscription","remove","addVoltraListener","event","listener","Platform","OS","console","warn","voltraModule","getNativeVoltra","onActivityTokenReceived","onActivityPushToStartTokenReceived","onStateChanged","onInteraction"],"sourceRoot":"../../src","sources":["events.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAGA,IAAAC,aAAA,GAAAD,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_VoltraModule","noopSubscription","remove","dynamicRenderFailureListenerCount","addVoltraListener","event","listener","Platform","OS","console","warn","voltraModule","getNativeVoltra","onActivityTokenReceived","onActivityPushToStartTokenReceived","onStateChanged","onInteraction","subscription","onDynamicLiveActivityRenderFailed","setDynamicLiveActivityRenderFailureListenerActive","removed"],"sourceRoot":"../../src","sources":["events.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAGA,IAAAC,aAAA,GAAAD,OAAA;AAoCA,MAAME,gBAAmC,GAAG;EAC1CC,MAAM,EAAEA,CAAA,KAAM,CAAC;AACjB,CAAC;;AAED;AACA;AACA;AACA,IAAIC,iCAAiC,GAAG,CAAC;AAUlC,SAASC,iBAAiBA,CAC/BC,KAAQ,EACRC,QAA4C,EACzB;EACnB,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzBC,OAAO,CAACC,IAAI,CAAC,mBAAmBL,KAAK,2DAA2D,CAAC;IACjG,OAAOJ,gBAAgB;EACzB;EAEA,MAAMU,YAAY,GAAG,IAAAC,6BAAe,EAAC,CAAC;EAEtC,QAAQP,KAAK;IACX,KAAK,uBAAuB;MAC1B,OAAOM,YAAY,CAACE,uBAAuB,CAACP,QAA2D,CAAC;IAC1G,KAAK,kCAAkC;MACrC,OAAOK,YAAY,CAACG,kCAAkC,CACpDR,QACF,CAAC;IACH,KAAK,aAAa;MAChB,OAAOK,YAAY,CAACI,cAAc,CAACT,QAAoD,CAAC;IAC1F,KAAK,aAAa;MAChB,OAAOK,YAAY,CAACK,aAAa,CAACV,QAAiD,CAAC;IACtF,KAAK,iCAAiC;MACpC,MAAMW,YAAY,GAAGN,YAAY,CAACO,iCAAiC,CACjEZ,QACF,CAAC;MACDH,iCAAiC,IAAI,CAAC;MACtC,IAAIA,iCAAiC,KAAK,CAAC,EAAE;QAC3CQ,YAAY,CAACQ,iDAAiD,CAAC,IAAI,CAAC;MACtE;MAEA,IAAIC,OAAO,GAAG,KAAK;MACnB,OAAO;QACLlB,MAAM,EAAEA,CAAA,KAAM;UACZ,IAAIkB,OAAO,EAAE;UACbA,OAAO,GAAG,IAAI;UACdH,YAAY,CAACf,MAAM,CAAC,CAAC;UACrBC,iCAAiC,IAAI,CAAC;UACtC,IAAIA,iCAAiC,KAAK,CAAC,EAAE;YAC3CQ,YAAY,CAACQ,iDAAiD,CAAC,KAAK,CAAC;UACvE;QACF;MACF,CAAC;IACH;MACEV,OAAO,CAACC,IAAI,CAAC,mBAAmBL,KAAK,mDAAmD,CAAC;MACzF,OAAOJ,gBAAgB;EAC3B;AACF","ignoreList":[]}
|
package/build/commonjs/index.js
CHANGED
|
@@ -8,6 +8,7 @@ var _exportNames = {
|
|
|
8
8
|
VoltraLiveActivityPreview: true,
|
|
9
9
|
VoltraView: true,
|
|
10
10
|
VoltraWidgetPreview: true,
|
|
11
|
+
updateDynamicWidget: true,
|
|
11
12
|
isGlassSupported: true,
|
|
12
13
|
isHeadless: true,
|
|
13
14
|
useIsHeadless: true,
|
|
@@ -18,12 +19,20 @@ var _exportNames = {
|
|
|
18
19
|
stopLiveActivity: true,
|
|
19
20
|
updateLiveActivity: true,
|
|
20
21
|
useLiveActivity: true,
|
|
22
|
+
getDynamicLiveActivityDefinitionIds: true,
|
|
23
|
+
startDynamicLiveActivity: true,
|
|
24
|
+
updateDynamicLiveActivity: true,
|
|
25
|
+
useDynamicLiveActivity: true,
|
|
21
26
|
clearPreloadedImages: true,
|
|
22
27
|
preloadImages: true,
|
|
23
28
|
reloadLiveActivities: true,
|
|
24
29
|
assertRunningOnApple: true,
|
|
25
30
|
enableWidgetHotReload: true,
|
|
31
|
+
enableDynamicLiveActivityHotReload: true,
|
|
26
32
|
useUpdateOnHMR: true,
|
|
33
|
+
clearWidgetServerUpdate: true,
|
|
34
|
+
getWidgetServerUpdate: true,
|
|
35
|
+
setWidgetServerUpdate: true,
|
|
27
36
|
clearWidgetServerCredentials: true,
|
|
28
37
|
setWidgetServerCredentials: true,
|
|
29
38
|
clearAllWidgets: true,
|
|
@@ -87,6 +96,18 @@ Object.defineProperty(exports, "clearWidgetServerCredentials", {
|
|
|
87
96
|
return _serverCredentials.clearWidgetServerCredentials;
|
|
88
97
|
}
|
|
89
98
|
});
|
|
99
|
+
Object.defineProperty(exports, "clearWidgetServerUpdate", {
|
|
100
|
+
enumerable: true,
|
|
101
|
+
get: function () {
|
|
102
|
+
return _serverUpdate.clearWidgetServerUpdate;
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
Object.defineProperty(exports, "enableDynamicLiveActivityHotReload", {
|
|
106
|
+
enumerable: true,
|
|
107
|
+
get: function () {
|
|
108
|
+
return _enableDynamicLiveActivityHotReload.enableDynamicLiveActivityHotReload;
|
|
109
|
+
}
|
|
110
|
+
});
|
|
90
111
|
Object.defineProperty(exports, "enableWidgetHotReload", {
|
|
91
112
|
enumerable: true,
|
|
92
113
|
get: function () {
|
|
@@ -96,7 +117,7 @@ Object.defineProperty(exports, "enableWidgetHotReload", {
|
|
|
96
117
|
Object.defineProperty(exports, "endAllLiveActivities", {
|
|
97
118
|
enumerable: true,
|
|
98
119
|
get: function () {
|
|
99
|
-
return
|
|
120
|
+
return _api2.endAllLiveActivities;
|
|
100
121
|
}
|
|
101
122
|
});
|
|
102
123
|
Object.defineProperty(exports, "getActiveWidgets", {
|
|
@@ -105,6 +126,18 @@ Object.defineProperty(exports, "getActiveWidgets", {
|
|
|
105
126
|
return _widgetApi.getActiveWidgets;
|
|
106
127
|
}
|
|
107
128
|
});
|
|
129
|
+
Object.defineProperty(exports, "getDynamicLiveActivityDefinitionIds", {
|
|
130
|
+
enumerable: true,
|
|
131
|
+
get: function () {
|
|
132
|
+
return _dynamicApi.getDynamicLiveActivityDefinitionIds;
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
Object.defineProperty(exports, "getWidgetServerUpdate", {
|
|
136
|
+
enumerable: true,
|
|
137
|
+
get: function () {
|
|
138
|
+
return _serverUpdate.getWidgetServerUpdate;
|
|
139
|
+
}
|
|
140
|
+
});
|
|
108
141
|
Object.defineProperty(exports, "isGlassSupported", {
|
|
109
142
|
enumerable: true,
|
|
110
143
|
get: function () {
|
|
@@ -120,7 +153,7 @@ Object.defineProperty(exports, "isHeadless", {
|
|
|
120
153
|
Object.defineProperty(exports, "isLiveActivityActive", {
|
|
121
154
|
enumerable: true,
|
|
122
155
|
get: function () {
|
|
123
|
-
return
|
|
156
|
+
return _api2.isLiveActivityActive;
|
|
124
157
|
}
|
|
125
158
|
});
|
|
126
159
|
Object.defineProperty(exports, "logger", {
|
|
@@ -159,22 +192,46 @@ Object.defineProperty(exports, "setWidgetServerCredentials", {
|
|
|
159
192
|
return _serverCredentials.setWidgetServerCredentials;
|
|
160
193
|
}
|
|
161
194
|
});
|
|
195
|
+
Object.defineProperty(exports, "setWidgetServerUpdate", {
|
|
196
|
+
enumerable: true,
|
|
197
|
+
get: function () {
|
|
198
|
+
return _serverUpdate.setWidgetServerUpdate;
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
Object.defineProperty(exports, "startDynamicLiveActivity", {
|
|
202
|
+
enumerable: true,
|
|
203
|
+
get: function () {
|
|
204
|
+
return _dynamicApi.startDynamicLiveActivity;
|
|
205
|
+
}
|
|
206
|
+
});
|
|
162
207
|
Object.defineProperty(exports, "startLiveActivity", {
|
|
163
208
|
enumerable: true,
|
|
164
209
|
get: function () {
|
|
165
|
-
return
|
|
210
|
+
return _api2.startLiveActivity;
|
|
166
211
|
}
|
|
167
212
|
});
|
|
168
213
|
Object.defineProperty(exports, "stopLiveActivity", {
|
|
169
214
|
enumerable: true,
|
|
170
215
|
get: function () {
|
|
171
|
-
return
|
|
216
|
+
return _api2.stopLiveActivity;
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
Object.defineProperty(exports, "updateDynamicLiveActivity", {
|
|
220
|
+
enumerable: true,
|
|
221
|
+
get: function () {
|
|
222
|
+
return _dynamicApi.updateDynamicLiveActivity;
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
Object.defineProperty(exports, "updateDynamicWidget", {
|
|
226
|
+
enumerable: true,
|
|
227
|
+
get: function () {
|
|
228
|
+
return _api.updateDynamicWidget;
|
|
172
229
|
}
|
|
173
230
|
});
|
|
174
231
|
Object.defineProperty(exports, "updateLiveActivity", {
|
|
175
232
|
enumerable: true,
|
|
176
233
|
get: function () {
|
|
177
|
-
return
|
|
234
|
+
return _api2.updateLiveActivity;
|
|
178
235
|
}
|
|
179
236
|
});
|
|
180
237
|
Object.defineProperty(exports, "updateWidget", {
|
|
@@ -183,6 +240,12 @@ Object.defineProperty(exports, "updateWidget", {
|
|
|
183
240
|
return _widgetApi.updateWidget;
|
|
184
241
|
}
|
|
185
242
|
});
|
|
243
|
+
Object.defineProperty(exports, "useDynamicLiveActivity", {
|
|
244
|
+
enumerable: true,
|
|
245
|
+
get: function () {
|
|
246
|
+
return _dynamicApi.useDynamicLiveActivity;
|
|
247
|
+
}
|
|
248
|
+
});
|
|
186
249
|
Object.defineProperty(exports, "useIsHeadless", {
|
|
187
250
|
enumerable: true,
|
|
188
251
|
get: function () {
|
|
@@ -192,7 +255,7 @@ Object.defineProperty(exports, "useIsHeadless", {
|
|
|
192
255
|
Object.defineProperty(exports, "useLiveActivity", {
|
|
193
256
|
enumerable: true,
|
|
194
257
|
get: function () {
|
|
195
|
-
return
|
|
258
|
+
return _api2.useLiveActivity;
|
|
196
259
|
}
|
|
197
260
|
});
|
|
198
261
|
Object.defineProperty(exports, "useUpdateOnHMR", {
|
|
@@ -205,6 +268,7 @@ var _ios = require("@use-voltra/ios");
|
|
|
205
268
|
var _VoltraLiveActivityPreview = require("./components/VoltraLiveActivityPreview.js");
|
|
206
269
|
var _VoltraView = require("./components/VoltraView.js");
|
|
207
270
|
var _VoltraWidgetPreview = require("./components/VoltraWidgetPreview.js");
|
|
271
|
+
var _api = require("./dynamic-widget/api.js");
|
|
208
272
|
var _events = require("./events.js");
|
|
209
273
|
Object.keys(_events).forEach(function (key) {
|
|
210
274
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -219,10 +283,12 @@ Object.keys(_events).forEach(function (key) {
|
|
|
219
283
|
});
|
|
220
284
|
var _helpers = require("./helpers.js");
|
|
221
285
|
var _logger = require("./logger.js");
|
|
222
|
-
var
|
|
286
|
+
var _api2 = require("./live-activity/api.js");
|
|
287
|
+
var _dynamicApi = require("./live-activity/dynamic-api.js");
|
|
223
288
|
var _preload = require("./preload.js");
|
|
224
289
|
var _assertRunningOnApple = require("./utils/assertRunningOnApple.js");
|
|
225
290
|
var _enableWidgetHotReload = require("./utils/enableWidgetHotReload.js");
|
|
291
|
+
var _enableDynamicLiveActivityHotReload = require("./utils/enableDynamicLiveActivityHotReload.js");
|
|
226
292
|
var _useUpdateOnHMR = require("./utils/useUpdateOnHMR.js");
|
|
227
293
|
var _helpers2 = require("./utils/helpers.js");
|
|
228
294
|
Object.keys(_helpers2).forEach(function (key) {
|
|
@@ -236,6 +302,7 @@ Object.keys(_helpers2).forEach(function (key) {
|
|
|
236
302
|
}
|
|
237
303
|
});
|
|
238
304
|
});
|
|
305
|
+
var _serverUpdate = require("./widgets/server-update.js");
|
|
239
306
|
var _serverCredentials = require("./widgets/server-credentials.js");
|
|
240
307
|
var _widgetApi = require("./widgets/widget-api.js");
|
|
241
308
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_ios","require","_VoltraLiveActivityPreview","_VoltraView","_VoltraWidgetPreview","_events","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_helpers","_logger","
|
|
1
|
+
{"version":3,"names":["_ios","require","_VoltraLiveActivityPreview","_VoltraView","_VoltraWidgetPreview","_api","_events","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_helpers","_logger","_api2","_dynamicApi","_preload","_assertRunningOnApple","_enableWidgetHotReload","_enableDynamicLiveActivityHotReload","_useUpdateOnHMR","_helpers2","_serverUpdate","_serverCredentials","_widgetApi"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AAIA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAH,OAAA;AACA,IAAAI,IAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAAAM,MAAA,CAAAC,IAAA,CAAAF,OAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,OAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,OAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,QAAA,GAAAlB,OAAA;AACA,IAAAmB,OAAA,GAAAnB,OAAA;AACA,IAAAoB,KAAA,GAAApB,OAAA;AAcA,IAAAqB,WAAA,GAAArB,OAAA;AAaA,IAAAsB,QAAA,GAAAtB,OAAA;AAOA,IAAAuB,qBAAA,GAAAvB,OAAA;AACA,IAAAwB,sBAAA,GAAAxB,OAAA;AACA,IAAAyB,mCAAA,GAAAzB,OAAA;AACA,IAAA0B,eAAA,GAAA1B,OAAA;AACA,IAAA2B,SAAA,GAAA3B,OAAA;AAAAM,MAAA,CAAAC,IAAA,CAAAoB,SAAA,EAAAnB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAkB,SAAA,CAAAlB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAU,SAAA,CAAAlB,GAAA;IAAA;EAAA;AAAA;AAEA,IAAAmB,aAAA,GAAA5B,OAAA;AASA,IAAA6B,kBAAA,GAAA7B,OAAA;AAMA,IAAA8B,UAAA,GAAA9B,OAAA","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.endAllLiveActivities = endAllLiveActivities;
|
|
7
|
-
exports.useLiveActivity = exports.updateLiveActivity = exports.stopLiveActivity = exports.startLiveActivity = exports.isLiveActivityActive = void 0;
|
|
7
|
+
exports.useLiveActivity = exports.updateLiveActivity = exports.stopLiveActivity = exports.startLiveActivity = exports.normalizeSharedLiveActivityOptions = exports.normalizeEndLiveActivityOptions = exports.isLiveActivityActive = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _ios = require("@use-voltra/ios");
|
|
10
10
|
var _events = require("../events.js");
|
|
@@ -30,6 +30,7 @@ const normalizeSharedLiveActivityOptions = options => {
|
|
|
30
30
|
}
|
|
31
31
|
return Object.keys(normalizedOptions).length > 0 ? normalizedOptions : undefined;
|
|
32
32
|
};
|
|
33
|
+
exports.normalizeSharedLiveActivityOptions = normalizeSharedLiveActivityOptions;
|
|
33
34
|
const normalizeEndLiveActivityOptions = options => {
|
|
34
35
|
if (!options?.dismissalPolicy) return undefined;
|
|
35
36
|
if (typeof options.dismissalPolicy === 'string') {
|
|
@@ -54,6 +55,7 @@ const normalizeEndLiveActivityOptions = options => {
|
|
|
54
55
|
}
|
|
55
56
|
};
|
|
56
57
|
};
|
|
58
|
+
exports.normalizeEndLiveActivityOptions = normalizeEndLiveActivityOptions;
|
|
57
59
|
const useLiveActivity = (variants, options) => {
|
|
58
60
|
const [targetId, setTargetId] = (0, _react.useState)(() => {
|
|
59
61
|
if (options?.activityName) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_ios","_events","_logger","_index","_VoltraModule","normalizeSharedLiveActivityOptions","options","undefined","normalizedOptions","staleDate","Date","now","logger","warn","relevanceScore","Object","keys","length","normalizeEndLiveActivityOptions","dismissalPolicy","type","date","after","useLiveActivity","variants","targetId","setTargetId","useState","activityName","isLiveActivityActive","isActive","optionsRef","useRef","variantsRef","lastUpdateOptionsRef","useEffect","current","useUpdateOnHMR","start","useCallback","id","startLiveActivity","update","updateOptions","updateLiveActivity","end","stopLiveActivity","autoStart","autoUpdate","subscription","addVoltraListener","event","activityState","remove","
|
|
1
|
+
{"version":3,"names":["_react","require","_ios","_events","_logger","_index","_VoltraModule","normalizeSharedLiveActivityOptions","options","undefined","normalizedOptions","staleDate","Date","now","logger","warn","relevanceScore","Object","keys","length","exports","normalizeEndLiveActivityOptions","dismissalPolicy","type","date","after","useLiveActivity","variants","targetId","setTargetId","useState","activityName","isLiveActivityActive","isActive","optionsRef","useRef","variantsRef","lastUpdateOptionsRef","useEffect","current","useUpdateOnHMR","start","useCallback","id","startLiveActivity","update","updateOptions","updateLiveActivity","end","stopLiveActivity","autoStart","autoUpdate","subscription","addVoltraListener","event","activityState","remove","assertRunningOnApple","Promise","resolve","payload","renderLiveActivityToString","normalizedSharedOptions","getNativeVoltra","target","deepLinkUrl","channelId","endLiveActivity","endAllLiveActivities"],"sourceRoot":"../../../src","sources":["live-activity/api.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getDynamicLiveActivityDefinitionIds = getDynamicLiveActivityDefinitionIds;
|
|
7
|
+
exports.startDynamicLiveActivity = startDynamicLiveActivity;
|
|
8
|
+
exports.updateDynamicLiveActivity = updateDynamicLiveActivity;
|
|
9
|
+
exports.useDynamicLiveActivity = useDynamicLiveActivity;
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var _events = require("../events.js");
|
|
12
|
+
var _index = require("../utils/index.js");
|
|
13
|
+
var _VoltraModule = require("../VoltraModule.js");
|
|
14
|
+
var _api = require("./api.js");
|
|
15
|
+
/** @experimental A JSON-compatible value accepted as Dynamic Live Activity props. */
|
|
16
|
+
|
|
17
|
+
/** @experimental A complete JSON-compatible props record for a Dynamic Live Activity update. */
|
|
18
|
+
|
|
19
|
+
/** @experimental Options used to start a Dynamic Live Activity. */
|
|
20
|
+
|
|
21
|
+
/** @experimental Options used to update a Dynamic Live Activity. */
|
|
22
|
+
|
|
23
|
+
/** @experimental Options for `useDynamicLiveActivity`. */
|
|
24
|
+
|
|
25
|
+
/** @experimental Lifecycle controls returned by `useDynamicLiveActivity`. */
|
|
26
|
+
|
|
27
|
+
function serializeDynamicLiveActivityProps(props) {
|
|
28
|
+
const ancestors = new Set();
|
|
29
|
+
const validate = (value, path) => {
|
|
30
|
+
if (value === null || typeof value === 'string' || typeof value === 'boolean') return;
|
|
31
|
+
if (typeof value === 'number') {
|
|
32
|
+
if (!Number.isFinite(value)) {
|
|
33
|
+
throw new TypeError(`Dynamic Live Activity props must be JSON-compatible; ${path} is not a finite number.`);
|
|
34
|
+
}
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
if (Array.isArray(value)) {
|
|
38
|
+
if (ancestors.has(value)) {
|
|
39
|
+
throw new TypeError(`Dynamic Live Activity props must be JSON-compatible; ${path} contains a circular reference.`);
|
|
40
|
+
}
|
|
41
|
+
ancestors.add(value);
|
|
42
|
+
value.forEach((item, index) => validate(item, `${path}[${index}]`));
|
|
43
|
+
ancestors.delete(value);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (typeof value === 'object') {
|
|
47
|
+
const prototype = Object.getPrototypeOf(value);
|
|
48
|
+
if (prototype !== Object.prototype && prototype !== null) {
|
|
49
|
+
throw new TypeError(`Dynamic Live Activity props must be JSON-compatible; ${path} must be a plain object.`);
|
|
50
|
+
}
|
|
51
|
+
if (ancestors.has(value)) {
|
|
52
|
+
throw new TypeError(`Dynamic Live Activity props must be JSON-compatible; ${path} contains a circular reference.`);
|
|
53
|
+
}
|
|
54
|
+
ancestors.add(value);
|
|
55
|
+
for (const [key, item] of Object.entries(value)) {
|
|
56
|
+
validate(item, `${path}.${key}`);
|
|
57
|
+
}
|
|
58
|
+
ancestors.delete(value);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
throw new TypeError(`Dynamic Live Activity props must be JSON-compatible; ${path} has unsupported type ${typeof value}.`);
|
|
62
|
+
};
|
|
63
|
+
if (props === null || Array.isArray(props) || typeof props !== 'object') {
|
|
64
|
+
throw new TypeError('Dynamic Live Activity props must be a JSON-compatible record.');
|
|
65
|
+
}
|
|
66
|
+
validate(props, 'props');
|
|
67
|
+
return JSON.stringify(props);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Starts a bundled Dynamic Live Activity with a complete opaque props record.
|
|
72
|
+
* @experimental
|
|
73
|
+
*/
|
|
74
|
+
async function startDynamicLiveActivity(definitionId, props, options) {
|
|
75
|
+
if (!(0, _index.assertRunningOnApple)()) return '';
|
|
76
|
+
const propsJson = serializeDynamicLiveActivityProps(props);
|
|
77
|
+
const normalizedSharedOptions = (0, _api.normalizeSharedLiveActivityOptions)(options);
|
|
78
|
+
return (0, _VoltraModule.getNativeVoltra)().startDynamicLiveActivity(definitionId, propsJson, {
|
|
79
|
+
target: 'liveActivity',
|
|
80
|
+
deepLinkUrl: options?.deepLinkUrl,
|
|
81
|
+
activityName: options?.activityName,
|
|
82
|
+
channelId: options?.channelId,
|
|
83
|
+
...normalizedSharedOptions
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Replaces a Dynamic Live Activity's complete opaque props record.
|
|
89
|
+
* @experimental
|
|
90
|
+
*/
|
|
91
|
+
async function updateDynamicLiveActivity(activityName, props, options) {
|
|
92
|
+
if (!(0, _index.assertRunningOnApple)()) return;
|
|
93
|
+
const propsJson = serializeDynamicLiveActivityProps(props);
|
|
94
|
+
return (0, _VoltraModule.getNativeVoltra)().updateDynamicLiveActivity(activityName, propsJson, (0, _api.normalizeSharedLiveActivityOptions)(options) ?? {});
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Returns the Dynamic Live Activity definition IDs bundled in the installed app.
|
|
99
|
+
* @experimental
|
|
100
|
+
*/
|
|
101
|
+
async function getDynamicLiveActivityDefinitionIds() {
|
|
102
|
+
if (!(0, _index.assertRunningOnApple)()) return [];
|
|
103
|
+
return (0, _VoltraModule.getNativeVoltra)().getDynamicLiveActivityDefinitionIds();
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Manages the lifecycle of one Dynamic Live Activity definition.
|
|
108
|
+
*
|
|
109
|
+
* Complete props are sent on every update. In development, call
|
|
110
|
+
* `enableDynamicLiveActivityHotReload()` once in the app host to reload only
|
|
111
|
+
* the definition changed by Fast Refresh.
|
|
112
|
+
* @experimental
|
|
113
|
+
*/
|
|
114
|
+
function useDynamicLiveActivity(definitionId, props, options) {
|
|
115
|
+
const [activityName, setActivityName] = (0, _react.useState)(() => {
|
|
116
|
+
if (options?.activityName) {
|
|
117
|
+
return (0, _api.isLiveActivityActive)(options.activityName) ? options.activityName : null;
|
|
118
|
+
}
|
|
119
|
+
return null;
|
|
120
|
+
});
|
|
121
|
+
const propsRef = (0, _react.useRef)(props);
|
|
122
|
+
const optionsRef = (0, _react.useRef)(options);
|
|
123
|
+
const lastUpdateOptionsRef = (0, _react.useRef)(undefined);
|
|
124
|
+
(0, _react.useEffect)(() => {
|
|
125
|
+
propsRef.current = props;
|
|
126
|
+
}, [props]);
|
|
127
|
+
(0, _react.useEffect)(() => {
|
|
128
|
+
optionsRef.current = options;
|
|
129
|
+
}, [options]);
|
|
130
|
+
(0, _index.useUpdateOnHMR)();
|
|
131
|
+
const start = (0, _react.useCallback)(async startOptions => {
|
|
132
|
+
const id = await startDynamicLiveActivity(definitionId, propsRef.current, {
|
|
133
|
+
...optionsRef.current,
|
|
134
|
+
...startOptions
|
|
135
|
+
});
|
|
136
|
+
setActivityName(id);
|
|
137
|
+
}, [definitionId]);
|
|
138
|
+
const update = (0, _react.useCallback)(async updateOptions => {
|
|
139
|
+
if (!activityName) return;
|
|
140
|
+
const mergedOptions = {
|
|
141
|
+
...optionsRef.current,
|
|
142
|
+
...updateOptions
|
|
143
|
+
};
|
|
144
|
+
lastUpdateOptionsRef.current = mergedOptions;
|
|
145
|
+
await updateDynamicLiveActivity(activityName, propsRef.current, mergedOptions);
|
|
146
|
+
}, [activityName]);
|
|
147
|
+
const end = (0, _react.useCallback)(async endOptions => {
|
|
148
|
+
if (!activityName) return;
|
|
149
|
+
await (0, _api.stopLiveActivity)(activityName, endOptions);
|
|
150
|
+
setActivityName(null);
|
|
151
|
+
}, [activityName]);
|
|
152
|
+
(0, _react.useEffect)(() => {
|
|
153
|
+
if (options?.autoStart) void start();
|
|
154
|
+
}, [options?.autoStart, start]);
|
|
155
|
+
(0, _react.useEffect)(() => {
|
|
156
|
+
if (options?.autoUpdate) void update(lastUpdateOptionsRef.current);
|
|
157
|
+
}, [options?.autoUpdate, props, update]);
|
|
158
|
+
(0, _react.useEffect)(() => {
|
|
159
|
+
if (!activityName) return;
|
|
160
|
+
const subscription = (0, _events.addVoltraListener)('stateChange', event => {
|
|
161
|
+
if (event.activityName !== activityName) return;
|
|
162
|
+
if (event.activityState === 'dismissed' || event.activityState === 'ended') setActivityName(null);
|
|
163
|
+
});
|
|
164
|
+
return () => subscription.remove();
|
|
165
|
+
}, [activityName]);
|
|
166
|
+
return {
|
|
167
|
+
start,
|
|
168
|
+
update,
|
|
169
|
+
end,
|
|
170
|
+
isActive: activityName !== null
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=dynamic-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_events","_index","_VoltraModule","_api","serializeDynamicLiveActivityProps","props","ancestors","Set","validate","value","path","Number","isFinite","TypeError","Array","isArray","has","add","forEach","item","index","delete","prototype","Object","getPrototypeOf","key","entries","JSON","stringify","startDynamicLiveActivity","definitionId","options","assertRunningOnApple","propsJson","normalizedSharedOptions","normalizeSharedLiveActivityOptions","getNativeVoltra","target","deepLinkUrl","activityName","channelId","updateDynamicLiveActivity","getDynamicLiveActivityDefinitionIds","useDynamicLiveActivity","setActivityName","useState","isLiveActivityActive","propsRef","useRef","optionsRef","lastUpdateOptionsRef","undefined","useEffect","current","useUpdateOnHMR","start","useCallback","startOptions","id","update","updateOptions","mergedOptions","end","endOptions","stopLiveActivity","autoStart","autoUpdate","subscription","addVoltraListener","event","activityState","remove","isActive"],"sourceRoot":"../../../src","sources":["live-activity/dynamic-api.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","getNativeVoltra","voltraModule","TurboModuleRegistry","get","Error"],"sourceRoot":"../../../src","sources":["native/NativeVoltra.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","getNativeVoltra","voltraModule","TurboModuleRegistry","get","Error"],"sourceRoot":"../../../src","sources":["native/NativeVoltra.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAqIO,SAASC,eAAeA,CAAA,EAAS;EACtC,MAAMC,YAAY,GAAGC,gCAAmB,CAACC,GAAG,CAAO,cAAc,CAAC;EAElE,IAAIF,YAAY,IAAI,IAAI,EAAE;IACxB,MAAM,IAAIG,KAAK,CAAC,+BAA+B,CAAC;EAClD;EAEA,OAAOH,YAAY;AACrB","ignoreList":[]}
|