@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.
Files changed (365) hide show
  1. package/README.md +61 -8
  2. package/Voltra.podspec +1 -0
  3. package/build/commonjs/dynamic-widget/api.js +15 -0
  4. package/build/commonjs/dynamic-widget/api.js.map +1 -0
  5. package/build/commonjs/events.js +23 -0
  6. package/build/commonjs/events.js.map +1 -1
  7. package/build/commonjs/index.js +74 -7
  8. package/build/commonjs/index.js.map +1 -1
  9. package/build/commonjs/live-activity/api.js +3 -1
  10. package/build/commonjs/live-activity/api.js.map +1 -1
  11. package/build/commonjs/live-activity/dynamic-api.js +173 -0
  12. package/build/commonjs/live-activity/dynamic-api.js.map +1 -0
  13. package/build/commonjs/native/NativeVoltra.js.map +1 -1
  14. package/build/commonjs/utils/enableDynamicLiveActivityHotReload.js +47 -0
  15. package/build/commonjs/utils/enableDynamicLiveActivityHotReload.js.map +1 -0
  16. package/build/commonjs/utils/enableWidgetHotReload.js +8 -11
  17. package/build/commonjs/utils/enableWidgetHotReload.js.map +1 -1
  18. package/build/commonjs/utils/useUpdateOnHMR.js +3 -7
  19. package/build/commonjs/utils/useUpdateOnHMR.js.map +1 -1
  20. package/build/commonjs/widgets/server-credentials.js +9 -0
  21. package/build/commonjs/widgets/server-credentials.js.map +1 -1
  22. package/build/commonjs/widgets/server-update.js +78 -0
  23. package/build/commonjs/widgets/server-update.js.map +1 -0
  24. package/build/module/dynamic-widget/api.js +10 -0
  25. package/build/module/dynamic-widget/api.js.map +1 -0
  26. package/build/module/events.js +23 -0
  27. package/build/module/events.js.map +1 -1
  28. package/build/module/index.js +4 -0
  29. package/build/module/index.js.map +1 -1
  30. package/build/module/live-activity/api.js +2 -2
  31. package/build/module/live-activity/api.js.map +1 -1
  32. package/build/module/live-activity/dynamic-api.js +167 -0
  33. package/build/module/live-activity/dynamic-api.js.map +1 -0
  34. package/build/module/native/NativeVoltra.js.map +1 -1
  35. package/build/module/utils/enableDynamicLiveActivityHotReload.js +43 -0
  36. package/build/module/utils/enableDynamicLiveActivityHotReload.js.map +1 -0
  37. package/build/module/utils/enableWidgetHotReload.js +9 -11
  38. package/build/module/utils/enableWidgetHotReload.js.map +1 -1
  39. package/build/module/utils/useUpdateOnHMR.js +3 -7
  40. package/build/module/utils/useUpdateOnHMR.js.map +1 -1
  41. package/build/module/widgets/server-credentials.js +9 -0
  42. package/build/module/widgets/server-credentials.js.map +1 -1
  43. package/build/module/widgets/server-update.js +72 -0
  44. package/build/module/widgets/server-update.js.map +1 -0
  45. package/build/typescript/commonjs/dynamic-widget/api.d.ts +8 -0
  46. package/build/typescript/commonjs/dynamic-widget/api.d.ts.map +1 -0
  47. package/build/typescript/commonjs/events.d.ts +7 -0
  48. package/build/typescript/commonjs/events.d.ts.map +1 -1
  49. package/build/typescript/commonjs/index.d.ts +4 -0
  50. package/build/typescript/commonjs/index.d.ts.map +1 -1
  51. package/build/typescript/commonjs/live-activity/api.d.ts +7 -0
  52. package/build/typescript/commonjs/live-activity/api.d.ts.map +1 -1
  53. package/build/typescript/commonjs/live-activity/dynamic-api.d.ts +54 -0
  54. package/build/typescript/commonjs/live-activity/dynamic-api.d.ts.map +1 -0
  55. package/build/typescript/commonjs/native/NativeVoltra.d.ts +21 -0
  56. package/build/typescript/commonjs/native/NativeVoltra.d.ts.map +1 -1
  57. package/build/typescript/commonjs/types.d.ts +1 -1
  58. package/build/typescript/commonjs/types.d.ts.map +1 -1
  59. package/build/typescript/commonjs/utils/enableDynamicLiveActivityHotReload.d.ts +15 -0
  60. package/build/typescript/commonjs/utils/enableDynamicLiveActivityHotReload.d.ts.map +1 -0
  61. package/build/typescript/commonjs/utils/enableWidgetHotReload.d.ts +5 -7
  62. package/build/typescript/commonjs/utils/enableWidgetHotReload.d.ts.map +1 -1
  63. package/build/typescript/commonjs/utils/useUpdateOnHMR.d.ts +0 -3
  64. package/build/typescript/commonjs/utils/useUpdateOnHMR.d.ts.map +1 -1
  65. package/build/typescript/commonjs/widgets/server-credentials.d.ts +8 -0
  66. package/build/typescript/commonjs/widgets/server-credentials.d.ts.map +1 -1
  67. package/build/typescript/commonjs/widgets/server-update.d.ts +64 -0
  68. package/build/typescript/commonjs/widgets/server-update.d.ts.map +1 -0
  69. package/build/typescript/module/dynamic-widget/api.d.ts +8 -0
  70. package/build/typescript/module/dynamic-widget/api.d.ts.map +1 -0
  71. package/build/typescript/module/events.d.ts +7 -0
  72. package/build/typescript/module/events.d.ts.map +1 -1
  73. package/build/typescript/module/index.d.ts +4 -0
  74. package/build/typescript/module/index.d.ts.map +1 -1
  75. package/build/typescript/module/live-activity/api.d.ts +7 -0
  76. package/build/typescript/module/live-activity/api.d.ts.map +1 -1
  77. package/build/typescript/module/live-activity/dynamic-api.d.ts +54 -0
  78. package/build/typescript/module/live-activity/dynamic-api.d.ts.map +1 -0
  79. package/build/typescript/module/native/NativeVoltra.d.ts +21 -0
  80. package/build/typescript/module/native/NativeVoltra.d.ts.map +1 -1
  81. package/build/typescript/module/types.d.ts +1 -1
  82. package/build/typescript/module/types.d.ts.map +1 -1
  83. package/build/typescript/module/utils/enableDynamicLiveActivityHotReload.d.ts +15 -0
  84. package/build/typescript/module/utils/enableDynamicLiveActivityHotReload.d.ts.map +1 -0
  85. package/build/typescript/module/utils/enableWidgetHotReload.d.ts +5 -7
  86. package/build/typescript/module/utils/enableWidgetHotReload.d.ts.map +1 -1
  87. package/build/typescript/module/utils/useUpdateOnHMR.d.ts +0 -3
  88. package/build/typescript/module/utils/useUpdateOnHMR.d.ts.map +1 -1
  89. package/build/typescript/module/widgets/server-credentials.d.ts +8 -0
  90. package/build/typescript/module/widgets/server-credentials.d.ts.map +1 -1
  91. package/build/typescript/module/widgets/server-update.d.ts +64 -0
  92. package/build/typescript/module/widgets/server-update.d.ts.map +1 -0
  93. package/expo-plugin/build/cjs/constants.js +20 -1
  94. package/expo-plugin/build/cjs/constants.js.map +1 -1
  95. package/expo-plugin/build/cjs/index.js +9 -1
  96. package/expo-plugin/build/cjs/index.js.map +1 -1
  97. package/expo-plugin/build/cjs/ios/index.js +1 -0
  98. package/expo-plugin/build/cjs/ios/index.js.map +1 -1
  99. package/expo-plugin/build/cjs/ios/infoPlist.js +28 -5
  100. package/expo-plugin/build/cjs/ios/infoPlist.js.map +1 -1
  101. package/expo-plugin/build/cjs/ios/serverUpdate.js +25 -0
  102. package/expo-plugin/build/cjs/ios/serverUpdate.js.map +1 -0
  103. package/expo-plugin/build/cjs/ios-widget/clientRendered.js +4 -4
  104. package/expo-plugin/build/cjs/ios-widget/clientRendered.js.map +1 -1
  105. package/expo-plugin/build/cjs/ios-widget/clientRenderedPrerender.js +5 -5
  106. package/expo-plugin/build/cjs/ios-widget/clientRenderedPrerender.js.map +1 -1
  107. package/expo-plugin/build/cjs/ios-widget/dynamic-live-activity/swift.js +130 -0
  108. package/expo-plugin/build/cjs/ios-widget/dynamic-live-activity/swift.js.map +1 -0
  109. package/expo-plugin/build/cjs/ios-widget/files/index.js +9 -2
  110. package/expo-plugin/build/cjs/ios-widget/files/index.js.map +1 -1
  111. package/expo-plugin/build/cjs/ios-widget/files/infoPlist.js +6 -3
  112. package/expo-plugin/build/cjs/ios-widget/files/infoPlist.js.map +1 -1
  113. package/expo-plugin/build/cjs/ios-widget/files/manifest.js +24 -0
  114. package/expo-plugin/build/cjs/ios-widget/files/manifest.js.map +1 -1
  115. package/expo-plugin/build/cjs/ios-widget/files/swift-utils.js +7 -0
  116. package/expo-plugin/build/cjs/ios-widget/files/swift-utils.js.map +1 -0
  117. package/expo-plugin/build/cjs/ios-widget/files/swift.js +56 -26
  118. package/expo-plugin/build/cjs/ios-widget/files/swift.js.map +1 -1
  119. package/expo-plugin/build/cjs/ios-widget/index.js +9 -3
  120. package/expo-plugin/build/cjs/ios-widget/index.js.map +1 -1
  121. package/expo-plugin/build/cjs/ios-widget/podfile.js +38 -12
  122. package/expo-plugin/build/cjs/ios-widget/podfile.js.map +1 -1
  123. package/expo-plugin/build/cjs/ios-widget/widgetPlist.js +34 -22
  124. package/expo-plugin/build/cjs/ios-widget/widgetPlist.js.map +1 -1
  125. package/expo-plugin/build/cjs/ios-widget/xcode/buildPhases.js +194 -118
  126. package/expo-plugin/build/cjs/ios-widget/xcode/buildPhases.js.map +1 -1
  127. package/expo-plugin/build/cjs/ios-widget/xcode/configurationList.js +30 -22
  128. package/expo-plugin/build/cjs/ios-widget/xcode/configurationList.js.map +1 -1
  129. package/expo-plugin/build/cjs/ios-widget/xcode/fileReferences.js +50 -0
  130. package/expo-plugin/build/cjs/ios-widget/xcode/fileReferences.js.map +1 -0
  131. package/expo-plugin/build/cjs/ios-widget/xcode/groups.js +45 -43
  132. package/expo-plugin/build/cjs/ios-widget/xcode/groups.js.map +1 -1
  133. package/expo-plugin/build/cjs/ios-widget/xcode/index.js +93 -91
  134. package/expo-plugin/build/cjs/ios-widget/xcode/index.js.map +1 -1
  135. package/expo-plugin/build/cjs/ios-widget/xcode/mainAppSettings.js +41 -39
  136. package/expo-plugin/build/cjs/ios-widget/xcode/mainAppSettings.js.map +1 -1
  137. package/expo-plugin/build/cjs/ios-widget/xcode/productFile.js +2 -2
  138. package/expo-plugin/build/cjs/ios-widget/xcode/productFile.js.map +1 -1
  139. package/expo-plugin/build/cjs/ios-widget/xcode/target.js +29 -63
  140. package/expo-plugin/build/cjs/ios-widget/xcode/target.js.map +1 -1
  141. package/expo-plugin/build/cjs/utils/urlScheme.js +36 -14
  142. package/expo-plugin/build/cjs/utils/urlScheme.js.map +1 -1
  143. package/expo-plugin/build/cjs/validation.js +54 -0
  144. package/expo-plugin/build/cjs/validation.js.map +1 -1
  145. package/expo-plugin/build/esm/constants.js +17 -0
  146. package/expo-plugin/build/esm/constants.js.map +1 -1
  147. package/expo-plugin/build/esm/index.js +9 -1
  148. package/expo-plugin/build/esm/index.js.map +1 -1
  149. package/expo-plugin/build/esm/ios/index.js +1 -0
  150. package/expo-plugin/build/esm/ios/index.js.map +1 -1
  151. package/expo-plugin/build/esm/ios/infoPlist.js +28 -5
  152. package/expo-plugin/build/esm/ios/infoPlist.js.map +1 -1
  153. package/expo-plugin/build/esm/ios/serverUpdate.js +21 -0
  154. package/expo-plugin/build/esm/ios/serverUpdate.js.map +1 -0
  155. package/expo-plugin/build/esm/ios-widget/clientRendered.js +5 -5
  156. package/expo-plugin/build/esm/ios-widget/clientRendered.js.map +1 -1
  157. package/expo-plugin/build/esm/ios-widget/clientRenderedPrerender.js +6 -6
  158. package/expo-plugin/build/esm/ios-widget/clientRenderedPrerender.js.map +1 -1
  159. package/expo-plugin/build/esm/ios-widget/dynamic-live-activity/swift.js +122 -0
  160. package/expo-plugin/build/esm/ios-widget/dynamic-live-activity/swift.js.map +1 -0
  161. package/expo-plugin/build/esm/ios-widget/files/index.js +10 -3
  162. package/expo-plugin/build/esm/ios-widget/files/index.js.map +1 -1
  163. package/expo-plugin/build/esm/ios-widget/files/infoPlist.js +6 -3
  164. package/expo-plugin/build/esm/ios-widget/files/infoPlist.js.map +1 -1
  165. package/expo-plugin/build/esm/ios-widget/files/manifest.js +23 -1
  166. package/expo-plugin/build/esm/ios-widget/files/manifest.js.map +1 -1
  167. package/expo-plugin/build/esm/ios-widget/files/swift-utils.js +4 -0
  168. package/expo-plugin/build/esm/ios-widget/files/swift-utils.js.map +1 -0
  169. package/expo-plugin/build/esm/ios-widget/files/swift.js +50 -20
  170. package/expo-plugin/build/esm/ios-widget/files/swift.js.map +1 -1
  171. package/expo-plugin/build/esm/ios-widget/index.js +9 -3
  172. package/expo-plugin/build/esm/ios-widget/index.js.map +1 -1
  173. package/expo-plugin/build/esm/ios-widget/podfile.js +36 -11
  174. package/expo-plugin/build/esm/ios-widget/podfile.js.map +1 -1
  175. package/expo-plugin/build/esm/ios-widget/widgetPlist.js +34 -22
  176. package/expo-plugin/build/esm/ios-widget/widgetPlist.js.map +1 -1
  177. package/expo-plugin/build/esm/ios-widget/xcode/buildPhases.js +194 -117
  178. package/expo-plugin/build/esm/ios-widget/xcode/buildPhases.js.map +1 -1
  179. package/expo-plugin/build/esm/ios-widget/xcode/configurationList.js +31 -22
  180. package/expo-plugin/build/esm/ios-widget/xcode/configurationList.js.map +1 -1
  181. package/expo-plugin/build/esm/ios-widget/xcode/fileReferences.js +45 -0
  182. package/expo-plugin/build/esm/ios-widget/xcode/fileReferences.js.map +1 -0
  183. package/expo-plugin/build/esm/ios-widget/xcode/groups.js +45 -42
  184. package/expo-plugin/build/esm/ios-widget/xcode/groups.js.map +1 -1
  185. package/expo-plugin/build/esm/ios-widget/xcode/index.js +97 -96
  186. package/expo-plugin/build/esm/ios-widget/xcode/index.js.map +1 -1
  187. package/expo-plugin/build/esm/ios-widget/xcode/mainAppSettings.js +41 -39
  188. package/expo-plugin/build/esm/ios-widget/xcode/mainAppSettings.js.map +1 -1
  189. package/expo-plugin/build/esm/ios-widget/xcode/productFile.js +3 -2
  190. package/expo-plugin/build/esm/ios-widget/xcode/productFile.js.map +1 -1
  191. package/expo-plugin/build/esm/ios-widget/xcode/target.js +28 -62
  192. package/expo-plugin/build/esm/ios-widget/xcode/target.js.map +1 -1
  193. package/expo-plugin/build/esm/utils/urlScheme.js +34 -14
  194. package/expo-plugin/build/esm/utils/urlScheme.js.map +1 -1
  195. package/expo-plugin/build/esm/validation.js +54 -1
  196. package/expo-plugin/build/esm/validation.js.map +1 -1
  197. package/expo-plugin/build/types/constants.d.ts +10 -1
  198. package/expo-plugin/build/types/constants.d.ts.map +1 -1
  199. package/expo-plugin/build/types/index.d.ts +1 -1
  200. package/expo-plugin/build/types/index.d.ts.map +1 -1
  201. package/expo-plugin/build/types/ios/index.d.ts +2 -0
  202. package/expo-plugin/build/types/ios/index.d.ts.map +1 -1
  203. package/expo-plugin/build/types/ios/infoPlist.d.ts +2 -0
  204. package/expo-plugin/build/types/ios/infoPlist.d.ts.map +1 -1
  205. package/expo-plugin/build/types/ios/serverUpdate.d.ts +11 -0
  206. package/expo-plugin/build/types/ios/serverUpdate.d.ts.map +1 -0
  207. package/expo-plugin/build/types/ios-widget/clientRendered.d.ts.map +1 -1
  208. package/expo-plugin/build/types/ios-widget/clientRenderedPrerender.d.ts.map +1 -1
  209. package/expo-plugin/build/types/ios-widget/dynamic-live-activity/swift.d.ts +7 -0
  210. package/expo-plugin/build/types/ios-widget/dynamic-live-activity/swift.d.ts.map +1 -0
  211. package/expo-plugin/build/types/ios-widget/files/index.d.ts +3 -1
  212. package/expo-plugin/build/types/ios-widget/files/index.d.ts.map +1 -1
  213. package/expo-plugin/build/types/ios-widget/files/infoPlist.d.ts +2 -1
  214. package/expo-plugin/build/types/ios-widget/files/infoPlist.d.ts.map +1 -1
  215. package/expo-plugin/build/types/ios-widget/files/manifest.d.ts +9 -2
  216. package/expo-plugin/build/types/ios-widget/files/manifest.d.ts.map +1 -1
  217. package/expo-plugin/build/types/ios-widget/files/swift-utils.d.ts +2 -0
  218. package/expo-plugin/build/types/ios-widget/files/swift-utils.d.ts.map +1 -0
  219. package/expo-plugin/build/types/ios-widget/files/swift.d.ts +6 -2
  220. package/expo-plugin/build/types/ios-widget/files/swift.d.ts.map +1 -1
  221. package/expo-plugin/build/types/ios-widget/index.d.ts +3 -1
  222. package/expo-plugin/build/types/ios-widget/index.d.ts.map +1 -1
  223. package/expo-plugin/build/types/ios-widget/podfile.d.ts +19 -1
  224. package/expo-plugin/build/types/ios-widget/podfile.d.ts.map +1 -1
  225. package/expo-plugin/build/types/ios-widget/widgetPlist.d.ts.map +1 -1
  226. package/expo-plugin/build/types/ios-widget/xcode/buildPhases.d.ts +6 -8
  227. package/expo-plugin/build/types/ios-widget/xcode/buildPhases.d.ts.map +1 -1
  228. package/expo-plugin/build/types/ios-widget/xcode/configurationList.d.ts +15 -10
  229. package/expo-plugin/build/types/ios-widget/xcode/configurationList.d.ts.map +1 -1
  230. package/expo-plugin/build/types/ios-widget/xcode/fileReferences.d.ts +16 -0
  231. package/expo-plugin/build/types/ios-widget/xcode/fileReferences.d.ts.map +1 -0
  232. package/expo-plugin/build/types/ios-widget/xcode/groups.d.ts +0 -4
  233. package/expo-plugin/build/types/ios-widget/xcode/groups.d.ts.map +1 -1
  234. package/expo-plugin/build/types/ios-widget/xcode/index.d.ts +23 -3
  235. package/expo-plugin/build/types/ios-widget/xcode/index.d.ts.map +1 -1
  236. package/expo-plugin/build/types/ios-widget/xcode/mainAppSettings.d.ts +16 -4
  237. package/expo-plugin/build/types/ios-widget/xcode/mainAppSettings.d.ts.map +1 -1
  238. package/expo-plugin/build/types/ios-widget/xcode/productFile.d.ts +0 -4
  239. package/expo-plugin/build/types/ios-widget/xcode/productFile.d.ts.map +1 -1
  240. package/expo-plugin/build/types/ios-widget/xcode/target.d.ts +11 -26
  241. package/expo-plugin/build/types/ios-widget/xcode/target.d.ts.map +1 -1
  242. package/expo-plugin/build/types/types.d.ts +23 -4
  243. package/expo-plugin/build/types/types.d.ts.map +1 -1
  244. package/expo-plugin/build/types/utils/urlScheme.d.ts +16 -0
  245. package/expo-plugin/build/types/utils/urlScheme.d.ts.map +1 -1
  246. package/expo-plugin/build/types/validation.d.ts +2 -1
  247. package/expo-plugin/build/types/validation.d.ts.map +1 -1
  248. package/expo-plugin/src/constants.ts +24 -1
  249. package/expo-plugin/src/index.ts +14 -1
  250. package/expo-plugin/src/ios/index.ts +3 -0
  251. package/expo-plugin/src/ios/infoPlist.ts +33 -5
  252. package/expo-plugin/src/ios/serverUpdate.ts +29 -0
  253. package/expo-plugin/src/ios-widget/clientRendered.ts +9 -5
  254. package/expo-plugin/src/ios-widget/clientRenderedPrerender.ts +11 -6
  255. package/expo-plugin/src/ios-widget/dynamic-live-activity/swift.ts +138 -0
  256. package/expo-plugin/src/ios-widget/files/index.ts +15 -4
  257. package/expo-plugin/src/ios-widget/files/infoPlist.ts +17 -3
  258. package/expo-plugin/src/ios-widget/files/manifest.ts +42 -2
  259. package/expo-plugin/src/ios-widget/files/swift-utils.ts +3 -0
  260. package/expo-plugin/src/ios-widget/files/swift.ts +69 -22
  261. package/expo-plugin/src/ios-widget/index.ts +13 -3
  262. package/expo-plugin/src/ios-widget/podfile.ts +46 -13
  263. package/expo-plugin/src/ios-widget/widgetPlist.ts +37 -23
  264. package/expo-plugin/src/ios-widget/xcode/__fixtures__/fresh.pbxproj +197 -0
  265. package/expo-plugin/src/ios-widget/xcode/__fixtures__/with-existing-extension.pbxproj +321 -0
  266. package/expo-plugin/src/ios-widget/xcode/__fixtures__/with-per-config-signing.pbxproj +203 -0
  267. package/expo-plugin/src/ios-widget/xcode/__snapshots__/applyXcodeChanges.node.test.ts.snap +363 -0
  268. package/expo-plugin/src/ios-widget/xcode/__tests__/pbxConsistency.ts +130 -0
  269. package/expo-plugin/src/ios-widget/xcode/buildPhases.ts +210 -164
  270. package/expo-plugin/src/ios-widget/xcode/configurationList.ts +52 -35
  271. package/expo-plugin/src/ios-widget/xcode/fileReferences.ts +51 -0
  272. package/expo-plugin/src/ios-widget/xcode/groups.ts +52 -54
  273. package/expo-plugin/src/ios-widget/xcode/index.ts +124 -119
  274. package/expo-plugin/src/ios-widget/xcode/mainAppSettings.ts +59 -54
  275. package/expo-plugin/src/ios-widget/xcode/productFile.ts +3 -2
  276. package/expo-plugin/src/ios-widget/xcode/target.ts +31 -83
  277. package/expo-plugin/src/types.ts +28 -4
  278. package/expo-plugin/src/utils/urlScheme.ts +47 -17
  279. package/expo-plugin/src/validation.ts +76 -1
  280. package/ios/Package.swift +39 -4
  281. package/ios/VoltraWidget.podspec +1 -0
  282. package/ios/app/NativeVoltra.mm +126 -7
  283. package/ios/app/VoltraLiveActivityManager.swift +30 -0
  284. package/ios/app/VoltraLiveActivityService.swift +77 -5
  285. package/ios/app/VoltraModule.swift +117 -1
  286. package/ios/app/VoltraModuleImpl.swift +116 -2
  287. package/ios/app/VoltraViewComponentView.mm +3 -3
  288. package/ios/app/VoltraWidgetService.swift +147 -12
  289. package/ios/app/dynamic-live-activity/VoltraDynamicLiveActivityService.swift +97 -0
  290. package/ios/app/dynamic-live-activity/VoltraLiveActivityChronology.swift +68 -0
  291. package/ios/shared/DynamicWidgetPropsCodec.swift +51 -0
  292. package/ios/shared/DynamicWidgetPropsStorage.swift +53 -0
  293. package/ios/shared/DynamicWidgetPropsStore.swift +117 -0
  294. package/ios/shared/DynamicWidgetRenderCoordinator.swift +31 -0
  295. package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerFetchResolver.swift +34 -0
  296. package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerProps.swift +55 -0
  297. package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerPropsStore.swift +146 -0
  298. package/ios/shared/DynamicWidgetServerUpdate/DynamicWidgetServerUpdateRunner.swift +193 -0
  299. package/ios/shared/DynamicWidgetUpdater.swift +30 -0
  300. package/ios/shared/ServerWidgetContentResolver.swift +60 -0
  301. package/ios/shared/ServerWidgetResponseStore.swift +25 -0
  302. package/ios/shared/ShortNames.swift +6 -0
  303. package/ios/shared/VoltraConfig.swift +41 -0
  304. package/ios/shared/VoltraConstants.swift +19 -0
  305. package/ios/shared/VoltraElement.swift +127 -43
  306. package/ios/shared/VoltraEventBus.swift +52 -7
  307. package/ios/shared/VoltraJSRenderer.swift +93 -23
  308. package/ios/shared/VoltraNode.swift +7 -111
  309. package/ios/shared/VoltraRefreshIntent.swift +1 -1
  310. package/ios/shared/VoltraWidgetDefaults.swift +9 -1
  311. package/ios/shared/VoltraWidgetKind.swift +41 -0
  312. package/ios/shared/VoltraWidgetServerFetcher.swift +52 -107
  313. package/ios/shared/WidgetServer/VoltraWidgetAppearance.swift +17 -0
  314. package/ios/shared/WidgetServer/VoltraWidgetServer.swift +138 -0
  315. package/ios/shared/WidgetServer/WidgetCanonicalConfiguration.swift +77 -0
  316. package/ios/shared/WidgetServer/WidgetScope.swift +55 -0
  317. package/ios/shared/WidgetServer/WidgetServerEtagStore.swift +55 -0
  318. package/ios/shared/WidgetServer/WidgetServerFetcher.swift +179 -0
  319. package/ios/shared/WidgetServer/WidgetServerRequestBuilder.swift +114 -0
  320. package/ios/shared/WidgetServer/WidgetServerSettingsCodec.swift +47 -0
  321. package/ios/shared/WidgetServer/WidgetServerSettingsResolver.swift +129 -0
  322. package/ios/shared/WidgetServer/WidgetServerSettingsStore.swift +170 -0
  323. package/ios/shared/WidgetServer/WidgetServerSettingsValidator.swift +73 -0
  324. package/ios/shared/WidgetServer/WidgetServerUpdateSettings.swift +123 -0
  325. package/ios/shared/WidgetServer/WidgetServerUpdateSettingsJson.swift +115 -0
  326. package/ios/shared/dynamic-live-activity/DynamicLiveActivityPropsCodec.swift +13 -0
  327. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityBundleSource.swift +156 -0
  328. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityObserver.swift +97 -0
  329. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityOperations.swift +105 -0
  330. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityPayloadValidator.swift +55 -0
  331. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRegistry.swift +143 -0
  332. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRenderFailureQueue.swift +158 -0
  333. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRenderFailureReporter.swift +120 -0
  334. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityRenderer.swift +370 -0
  335. package/ios/shared/dynamic-live-activity/VoltraDynamicLiveActivityTypes.swift +87 -0
  336. package/ios/shared/dynamic-live-activity/VoltraLiveActivityOrder.swift +19 -0
  337. package/ios/target/VoltraClientWidgetRuntime.swift +60 -10
  338. package/ios/target/VoltraDynamicWidgetServerUpdateProvider.swift +204 -0
  339. package/ios/target/VoltraHomeWidget.swift +91 -92
  340. package/ios/target/VoltraWidget.swift +3 -1
  341. package/ios/ui/Extensions/VoltraNode+View.swift +113 -0
  342. package/ios/ui/Generated/Parameters/ChartParameters.swift +3 -0
  343. package/ios/ui/Helpers/VoltraDeepLinkResolver.swift +5 -3
  344. package/ios/ui/Helpers/VoltraProgressDriver.swift +6 -2
  345. package/ios/ui/Layout/VoltraFlexStackLayout.swift +9 -3
  346. package/ios/ui/Style/JSColorParser.swift +24 -8
  347. package/ios/ui/Style/JSGradientParser.swift +36 -12
  348. package/ios/ui/Style/JSStyleParser.swift +36 -12
  349. package/ios/ui/Style/LayoutStyle.swift +12 -4
  350. package/ios/ui/Views/VoltraChart.swift +160 -16
  351. package/ios/ui/Views/VoltraLinearGradient.swift +6 -2
  352. package/package.json +5 -5
  353. package/src/dynamic-widget/api.ts +25 -0
  354. package/src/events.ts +34 -0
  355. package/src/index.ts +23 -0
  356. package/src/live-activity/api.ts +2 -2
  357. package/src/live-activity/dynamic-api.ts +240 -0
  358. package/src/native/NativeVoltra.ts +22 -0
  359. package/src/types.ts +4 -0
  360. package/src/utils/enableDynamicLiveActivityHotReload.ts +50 -0
  361. package/src/utils/enableWidgetHotReload.ts +9 -16
  362. package/src/utils/useUpdateOnHMR.ts +3 -12
  363. package/src/widgets/server-credentials.ts +8 -0
  364. package/src/widgets/server-update.ts +84 -0
  365. /package/ios/shared/{VoltraKeychainHelper.swift → WidgetServer/VoltraKeychainHelper.swift} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getFastRefreshHub","getNativeVoltra","enableDynamicLiveActivityHotReload","__DEV__","hub","previousDefinitionUpdated","global","__voltraDynamicLiveActivityDefinitionUpdated","updatedDefinitionIds","Set","definitionId","isAccepting","add","reloadDynamicLiveActivities","unsubscribe","onPatch","definitionIds","Array","from","clear","length"],"sourceRoot":"../../../src","sources":["utils/enableDynamicLiveActivityHotReload.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,iBAAiB;AAEnD,SAASC,eAAe,QAAQ,oBAAoB;AAMpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kCAAkCA,CAAA,EAAe;EAC/D,IAAI,CAACC,OAAO,EAAE,OAAO,MAAM,CAAC,CAAC;EAE7B,MAAMC,GAAG,GAAGJ,iBAAiB,CAAC,CAAC;EAC/B,MAAMK,yBAAyB,GAAGC,MAAM,CAACC,4CAA4C;EACrF,MAAMC,oBAAoB,GAAG,IAAIC,GAAG,CAAS,CAAC;EAE9CH,MAAM,CAACC,4CAA4C,GAAIG,YAAY,IAAK;IACtE;IACA;IACA;IACA;IACA,IAAIN,GAAG,CAACO,WAAW,EAAE;MACnBH,oBAAoB,CAACI,GAAG,CAACF,YAAY,CAAC;MACtC;IACF;IACA,KAAKT,eAAe,CAAC,CAAC,CAACY,2BAA2B,CAAC,CAACH,YAAY,CAAC,CAAC;EACpE,CAAC;EAED,MAAMI,WAAW,GAAGV,GAAG,CAACW,OAAO,CAAC,MAAM;IACpC,MAAMC,aAAa,GAAGC,KAAK,CAACC,IAAI,CAACV,oBAAoB,CAAC;IACtDA,oBAAoB,CAACW,KAAK,CAAC,CAAC;IAC5B;IACA;IACA,KAAKlB,eAAe,CAAC,CAAC,CAACY,2BAA2B,CAACG,aAAa,CAACI,MAAM,GAAG,CAAC,GAAGJ,aAAa,GAAG,IAAI,CAAC;EACrG,CAAC,CAAC;EAEF,OAAO,MAAM;IACXF,WAAW,CAAC,CAAC;IACbR,MAAM,CAACC,4CAA4C,GAAGF,yBAAyB;EACjF,CAAC;AACH","ignoreList":[]}
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
 
3
+ import { getFastRefreshHub } from '@use-voltra/ios';
3
4
  import { reloadWidgets } from '../widgets/widget-api.js';
5
+
4
6
  /**
5
7
  * Trigger `reloadWidgets()` on every Metro Fast Refresh patch (DEV only).
6
8
  *
7
- * Hooks the global `__accept` callback Metro fires when a Fast Refresh patch
8
- * lands in the host app's JS runtime. When fired, calls
9
+ * Subscribes to the shared {@link getFastRefreshHub}, which wraps the global
10
+ * `__accept` callback Metro fires when a Fast Refresh patch lands in the host
11
+ * app's JS runtime. On each debounced patch it calls
9
12
  * `WidgetCenter.shared.reloadAllTimelines()` so WidgetKit re-invokes each widget
10
13
  * Provider, which re-fetches the freshest bundle from Metro and renders the
11
14
  * updated UI.
@@ -16,20 +19,15 @@ import { reloadWidgets } from '../widgets/widget-api.js';
16
19
  * workflow the dev still relies on WidgetKit's natural lifecycle refresh on
17
20
  * app foreground.
18
21
  *
19
- * Call once at app startup. Returns `dispose()` to restore the prior
20
- * `__accept` (rarely needed in practice). No-op in release builds.
22
+ * Call once at app startup. Returns `dispose()` to unsubscribe (rarely needed
23
+ * in practice). No-op in release builds.
21
24
  */
22
25
  export function enableWidgetHotReload() {
23
26
  if (!__DEV__) {
24
27
  return () => {};
25
28
  }
26
- const oldAccept = global['__accept'];
27
- global['__accept'] = (...args) => {
29
+ return getFastRefreshHub().onPatch(() => {
28
30
  void reloadWidgets();
29
- oldAccept?.(...args);
30
- };
31
- return () => {
32
- global['__accept'] = oldAccept;
33
- };
31
+ });
34
32
  }
35
33
  //# sourceMappingURL=enableWidgetHotReload.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["reloadWidgets","enableWidgetHotReload","__DEV__","oldAccept","global","args"],"sourceRoot":"../../../src","sources":["utils/enableWidgetHotReload.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,0BAA0B;AAMxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAe;EAClD,IAAI,CAACC,OAAO,EAAE;IACZ,OAAO,MAAM,CAAC,CAAC;EACjB;EAEA,MAAMC,SAAS,GAAGC,MAAM,CAAC,UAAU,CAAC;EACpCA,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAGC,IAAI,KAAK;IAChC,KAAKL,aAAa,CAAC,CAAC;IACpBG,SAAS,GAAG,GAAGE,IAAI,CAAC;EACtB,CAAC;EAED,OAAO,MAAM;IACXD,MAAM,CAAC,UAAU,CAAC,GAAGD,SAAS;EAChC,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["getFastRefreshHub","reloadWidgets","enableWidgetHotReload","__DEV__","onPatch"],"sourceRoot":"../../../src","sources":["utils/enableWidgetHotReload.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,iBAAiB;AAEnD,SAASC,aAAa,QAAQ,0BAA0B;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAe;EAClD,IAAI,CAACC,OAAO,EAAE;IACZ,OAAO,MAAM,CAAC,CAAC;EACjB;EAEA,OAAOH,iBAAiB,CAAC,CAAC,CAACI,OAAO,CAAC,MAAM;IACvC,KAAKH,aAAa,CAAC,CAAC;EACtB,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ import { getFastRefreshHub } from '@use-voltra/ios';
3
4
  import { useEffect, useState } from 'react';
4
5
  export const useUpdateOnHMR = () => {
5
6
  const [, forceUpdate] = useState(0);
@@ -7,14 +8,9 @@ export const useUpdateOnHMR = () => {
7
8
  if (!__DEV__) {
8
9
  return;
9
10
  }
10
- const oldAccept = global['__accept'];
11
- global['__accept'] = (...args) => {
11
+ return getFastRefreshHub().onPatch(() => {
12
12
  forceUpdate(prev => prev + 1);
13
- oldAccept?.(...args);
14
- };
15
- return () => {
16
- global['__accept'] = oldAccept;
17
- };
13
+ });
18
14
  }, []);
19
15
  };
20
16
  //# sourceMappingURL=useUpdateOnHMR.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useState","useUpdateOnHMR","forceUpdate","__DEV__","oldAccept","global","args","prev"],"sourceRoot":"../../../src","sources":["utils/useUpdateOnHMR.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAM3C,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,MAAM,GAAGC,WAAW,CAAC,GAAGF,QAAQ,CAAC,CAAC,CAAC;EAEnCD,SAAS,CAAC,MAAM;IACd,IAAI,CAACI,OAAO,EAAE;MACZ;IACF;IAEA,MAAMC,SAAS,GAAGC,MAAM,CAAC,UAAU,CAAC;IACpCA,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAGC,IAAI,KAAK;MAChCJ,WAAW,CAAEK,IAAI,IAAKA,IAAI,GAAG,CAAC,CAAC;MAC/BH,SAAS,GAAG,GAAGE,IAAI,CAAC;IACtB,CAAC;IAED,OAAO,MAAM;MACXD,MAAM,CAAC,UAAU,CAAC,GAAGD,SAAS;IAChC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getFastRefreshHub","useEffect","useState","useUpdateOnHMR","forceUpdate","__DEV__","onPatch","prev"],"sourceRoot":"../../../src","sources":["utils/useUpdateOnHMR.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,iBAAiB;AACnD,SAASC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAE3C,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,MAAM,GAAGC,WAAW,CAAC,GAAGF,QAAQ,CAAC,CAAC,CAAC;EAEnCD,SAAS,CAAC,MAAM;IACd,IAAI,CAACI,OAAO,EAAE;MACZ;IACF;IAEA,OAAOL,iBAAiB,CAAC,CAAC,CAACM,OAAO,CAAC,MAAM;MACvCF,WAAW,CAAEG,IAAI,IAAKA,IAAI,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;AACR,CAAC","ignoreList":[]}
@@ -1,12 +1,21 @@
1
1
  "use strict";
2
2
 
3
3
  import { getNativeVoltra } from '../VoltraModule.js';
4
+ /**
5
+ * @deprecated Use {@link setWidgetServerUpdate} with an `Authorization` header. This writes the
6
+ * same stored credentials and keeps the same replace-everything semantics, so migrating is a
7
+ * one-line change; it will be removed in a future major.
8
+ */
4
9
  export async function setWidgetServerCredentials(credentials) {
5
10
  if (!credentials.token) {
6
11
  throw new Error('[Voltra][iOS] setWidgetServerCredentials: token is required');
7
12
  }
8
13
  return getNativeVoltra().setWidgetServerCredentials(credentials);
9
14
  }
15
+
16
+ /**
17
+ * @deprecated Use {@link clearWidgetServerUpdate} instead.
18
+ */
10
19
  export async function clearWidgetServerCredentials() {
11
20
  return getNativeVoltra().clearWidgetServerCredentials();
12
21
  }
@@ -1 +1 @@
1
- {"version":3,"names":["getNativeVoltra","setWidgetServerCredentials","credentials","token","Error","clearWidgetServerCredentials"],"sourceRoot":"../../../src","sources":["widgets/server-credentials.ts"],"mappings":";;AACA,SAASA,eAAe,QAAQ,oBAAoB;AAIpD,OAAO,eAAeC,0BAA0BA,CAACC,WAAoC,EAAiB;EACpG,IAAI,CAACA,WAAW,CAACC,KAAK,EAAE;IACtB,MAAM,IAAIC,KAAK,CAAC,6DAA6D,CAAC;EAChF;EAEA,OAAOJ,eAAe,CAAC,CAAC,CAACC,0BAA0B,CAACC,WAAW,CAAC;AAClE;AAEA,OAAO,eAAeG,4BAA4BA,CAAA,EAAkB;EAClE,OAAOL,eAAe,CAAC,CAAC,CAACK,4BAA4B,CAAC,CAAC;AACzD","ignoreList":[]}
1
+ {"version":3,"names":["getNativeVoltra","setWidgetServerCredentials","credentials","token","Error","clearWidgetServerCredentials"],"sourceRoot":"../../../src","sources":["widgets/server-credentials.ts"],"mappings":";;AACA,SAASA,eAAe,QAAQ,oBAAoB;AAIpD;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,0BAA0BA,CAACC,WAAoC,EAAiB;EACpG,IAAI,CAACA,WAAW,CAACC,KAAK,EAAE;IACtB,MAAM,IAAIC,KAAK,CAAC,6DAA6D,CAAC;EAChF;EAEA,OAAOJ,eAAe,CAAC,CAAC,CAACC,0BAA0B,CAACC,WAAW,CAAC;AAClE;;AAEA;AACA;AACA;AACA,OAAO,eAAeG,4BAA4BA,CAAA,EAAkB;EAClE,OAAOL,eAAe,CAAC,CAAC,CAACK,4BAA4B,CAAC,CAAC;AACzD","ignoreList":[]}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ import { getNativeVoltra } from '../VoltraModule.js';
4
+ /**
5
+ * Overrides a server-driven widget's `serverUpdate` settings at runtime.
6
+ *
7
+ * The `serverUpdate` entry in app.json supplies the defaults; this replaces any of them for one
8
+ * widget, or for every server-driven widget when no `widgetId` is given. A widget-scoped call wins
9
+ * over a global one, and `headers` and `query` merge per key across the two.
10
+ *
11
+ * Each call replaces the whole layer it writes, so pass every field you want to keep. Setting
12
+ * anything reschedules the widgets it affects and fetches once immediately.
13
+ *
14
+ * @example Point a widget at the tenant's own backend once the user has logged in.
15
+ * ```ts
16
+ * await setWidgetServerUpdate(
17
+ * { url: `https://${tenant}.example.com/widgets/portfolio`, headers: { Authorization: `Bearer ${token}` } },
18
+ * { widgetId: 'portfolio' }
19
+ * )
20
+ * ```
21
+ *
22
+ * @example Take a widget over and drive it from the app until you hand it back.
23
+ * ```ts
24
+ * await setWidgetServerUpdate({ enabled: false }, { widgetId: 'portfolio' })
25
+ * await updateDynamicWidget('portfolio', localProps)
26
+ * ```
27
+ *
28
+ * @throws if the widget has no `serverUpdate` in app.json, if the URL is not https (plain http is
29
+ * allowed only in a debug build, and only for a local dev host), or if `query` names one of the
30
+ * parameters Voltra already sends.
31
+ */
32
+ export async function setWidgetServerUpdate(settings, options) {
33
+ return getNativeVoltra().setWidgetServerUpdate(JSON.stringify(settings ?? {}), options?.widgetId ?? null);
34
+ }
35
+
36
+ /**
37
+ * Drops the runtime settings for one widget, or the global ones when no `widgetId` is given, so
38
+ * the widget falls back to what app.json configured.
39
+ *
40
+ * Clearing the global settings is the logout gesture: along with the settings it drops what the
41
+ * server last sent for every server-driven widget, so a Dynamic Widget goes back to `{}` with
42
+ * `env.serverUpdate.status` of `never` rather than showing the previous account's data. Credentials
43
+ * set with the deprecated `setWidgetServerCredentials` are stored separately — clear those with
44
+ * `clearWidgetServerCredentials`.
45
+ */
46
+ export async function clearWidgetServerUpdate(options) {
47
+ return getNativeVoltra().clearWidgetServerUpdate(options?.widgetId ?? null);
48
+ }
49
+
50
+ /**
51
+ * Reads a widget's `serverUpdate` settings back, without reasoning about what was set where.
52
+ *
53
+ * With a `widgetId`, this is the fully resolved settings that widget would fetch with right now:
54
+ * every layer flattened and app.json's defaults applied — `null` if the widget is not
55
+ * server-driven. Without one, this is the raw contents of the global layer only — what the last
56
+ * `setWidgetServerUpdate(settings)` call (with no `widgetId`) wrote, with no defaults applied and
57
+ * every field optional — `null` if nothing has been set globally.
58
+ *
59
+ * @example Check what a widget is about to fetch from.
60
+ * ```ts
61
+ * const snapshot = await getWidgetServerUpdate({ widgetId: 'portfolio' })
62
+ * if (snapshot?.enabled) {
63
+ * console.log(`portfolio fetches ${snapshot.url} every ${snapshot.intervalMinutes}m`)
64
+ * }
65
+ * ```
66
+ */
67
+
68
+ export async function getWidgetServerUpdate(options) {
69
+ const json = await getNativeVoltra().getWidgetServerUpdate(options?.widgetId ?? null);
70
+ return json == null ? null : JSON.parse(json);
71
+ }
72
+ //# sourceMappingURL=server-update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getNativeVoltra","setWidgetServerUpdate","settings","options","JSON","stringify","widgetId","clearWidgetServerUpdate","getWidgetServerUpdate","json","parse"],"sourceRoot":"../../../src","sources":["widgets/server-update.ts"],"mappings":";;AACA,SAASA,eAAe,QAAQ,oBAAoB;AASpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,qBAAqBA,CACzCC,QAAoC,EACpCC,OAAmC,EACpB;EACf,OAAOH,eAAe,CAAC,CAAC,CAACC,qBAAqB,CAACG,IAAI,CAACC,SAAS,CAACH,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAEC,OAAO,EAAEG,QAAQ,IAAI,IAAI,CAAC;AAC3G;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,uBAAuBA,CAACJ,OAAmC,EAAiB;EAChG,OAAOH,eAAe,CAAC,CAAC,CAACO,uBAAuB,CAACJ,OAAO,EAAEG,QAAQ,IAAI,IAAI,CAAC;AAC7E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,OAAO,eAAeE,qBAAqBA,CACzCL,OAAmC,EACsC;EACzE,MAAMM,IAAI,GAAG,MAAMT,eAAe,CAAC,CAAC,CAACQ,qBAAqB,CAACL,OAAO,EAAEG,QAAQ,IAAI,IAAI,CAAC;EACrF,OAAOG,IAAI,IAAI,IAAI,GAAG,IAAI,GAAGL,IAAI,CAACM,KAAK,CAACD,IAAI,CAAC;AAC/C","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ export type DynamicWidgetPropsValue = string | number | boolean | null | ReadonlyArray<DynamicWidgetPropsValue> | Readonly<{
2
+ [dynamicWidgetPropName: string]: DynamicWidgetPropsValue;
3
+ }>;
4
+ export type DynamicWidgetProps = Readonly<{
5
+ [dynamicWidgetPropName: string]: DynamicWidgetPropsValue;
6
+ }>;
7
+ export declare const updateDynamicWidget: (dynamicWidgetId: string, dynamicWidgetProps: DynamicWidgetProps) => Promise<void>;
8
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/dynamic-widget/api.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,uBAAuB,GAC/B,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,aAAa,CAAC,uBAAuB,CAAC,GACtC,QAAQ,CAAC;IAAE,CAAC,qBAAqB,EAAE,MAAM,GAAG,uBAAuB,CAAA;CAAE,CAAC,CAAA;AAE1E,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,CAAC,qBAAqB,EAAE,MAAM,GAAG,uBAAuB,CAAA;CACzD,CAAC,CAAA;AAEF,eAAO,MAAM,mBAAmB,GAC9B,iBAAiB,MAAM,EACvB,oBAAoB,kBAAkB,KACrC,OAAO,CAAC,IAAI,CAMd,CAAA"}
@@ -23,11 +23,18 @@ export type VoltraInteractionEvent = BasicVoltraEvent & {
23
23
  identifier: string;
24
24
  payload: string;
25
25
  };
26
+ export type VoltraDynamicLiveActivityRenderFailedEvent = BasicVoltraEvent & {
27
+ type: 'dynamicLiveActivityRenderFailed';
28
+ activityName: string;
29
+ definitionId: string;
30
+ message: string;
31
+ };
26
32
  export type VoltraEventMap = {
27
33
  activityTokenReceived: VoltraActivityTokenReceivedEvent;
28
34
  activityPushToStartTokenReceived: VoltraActivityPushToStartTokenReceivedEvent;
29
35
  stateChange: VoltraActivityUpdateEvent;
30
36
  interaction: VoltraInteractionEvent;
37
+ dynamicLiveActivityRenderFailed: VoltraDynamicLiveActivityRenderFailedEvent;
31
38
  };
32
39
  export declare function addVoltraListener<K extends keyof VoltraEventMap>(event: K, listener: (event: VoltraEventMap[K]) => void): EventSubscription;
33
40
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/events.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGnD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;AACjG,MAAM,MAAM,gCAAgC,GAAG,gBAAgB,GAAG;IAChE,IAAI,EAAE,uBAAuB,CAAA;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AACD,MAAM,MAAM,2CAA2C,GAAG,gBAAgB,GAAG;IAC3E,IAAI,EAAE,kCAAkC,CAAA;IACxC,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AACD,MAAM,MAAM,yBAAyB,GAAG,gBAAgB,GAAG;IACzD,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG;IACtD,IAAI,EAAE,aAAa,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAMD,MAAM,MAAM,cAAc,GAAG;IAC3B,qBAAqB,EAAE,gCAAgC,CAAA;IACvD,gCAAgC,EAAE,2CAA2C,CAAA;IAC7E,WAAW,EAAE,yBAAyB,CAAA;IACtC,WAAW,EAAE,sBAAsB,CAAA;CACpC,CAAA;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,cAAc,EAC9D,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,GAC3C,iBAAiB,CAuBnB"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/events.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGnD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;AACjG,MAAM,MAAM,gCAAgC,GAAG,gBAAgB,GAAG;IAChE,IAAI,EAAE,uBAAuB,CAAA;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AACD,MAAM,MAAM,2CAA2C,GAAG,gBAAgB,GAAG;IAC3E,IAAI,EAAE,kCAAkC,CAAA;IACxC,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AACD,MAAM,MAAM,yBAAyB,GAAG,gBAAgB,GAAG;IACzD,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG;IACtD,IAAI,EAAE,aAAa,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,0CAA0C,GAAG,gBAAgB,GAAG;IAC1E,IAAI,EAAE,iCAAiC,CAAA;IACvC,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAWD,MAAM,MAAM,cAAc,GAAG;IAC3B,qBAAqB,EAAE,gCAAgC,CAAA;IACvD,gCAAgC,EAAE,2CAA2C,CAAA;IAC7E,WAAW,EAAE,yBAAyB,CAAA;IACtC,WAAW,EAAE,sBAAsB,CAAA;IACnC,+BAA+B,EAAE,0CAA0C,CAAA;CAC5E,CAAA;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,cAAc,EAC9D,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,GAC3C,iBAAiB,CA4CnB"}
@@ -2,17 +2,21 @@ export { Voltra } from '@use-voltra/ios';
2
2
  export { VoltraLiveActivityPreview, type VoltraLiveActivityPreviewProps, } from './components/VoltraLiveActivityPreview.js';
3
3
  export { VoltraView, type VoltraViewProps } from './components/VoltraView.js';
4
4
  export { VoltraWidgetPreview, type VoltraWidgetPreviewProps } from './components/VoltraWidgetPreview.js';
5
+ export { type DynamicWidgetProps, type DynamicWidgetPropsValue, updateDynamicWidget } from './dynamic-widget/api.js';
5
6
  export * from './events.js';
6
7
  export { isGlassSupported, isHeadless, useIsHeadless } from './helpers.js';
7
8
  export { logger, type VoltraLogLevel } from './logger.js';
8
9
  export { endAllLiveActivities, type EndLiveActivityOptions, isLiveActivityActive, type SharedLiveActivityOptions, startLiveActivity, type StartLiveActivityOptions, stopLiveActivity, updateLiveActivity, type UpdateLiveActivityOptions, useLiveActivity, type UseLiveActivityOptions, type UseLiveActivityResult, } from './live-activity/api.js';
10
+ export { getDynamicLiveActivityDefinitionIds, startDynamicLiveActivity, type StartDynamicLiveActivityOptions, updateDynamicLiveActivity, type UpdateDynamicLiveActivityOptions, useDynamicLiveActivity, type UseDynamicLiveActivityOptions, type UseDynamicLiveActivityResult, type DynamicLiveActivityProps, type DynamicLiveActivityPropsValue, } from './live-activity/dynamic-api.js';
9
11
  export type { DismissalPolicy, LiveActivityVariants } from '@use-voltra/ios';
10
12
  export { clearPreloadedImages, type PreloadImageOptions, preloadImages, type PreloadImagesResult, reloadLiveActivities, } from './preload.js';
11
13
  export { assertRunningOnApple } from './utils/assertRunningOnApple.js';
12
14
  export { enableWidgetHotReload } from './utils/enableWidgetHotReload.js';
15
+ export { enableDynamicLiveActivityHotReload } from './utils/enableDynamicLiveActivityHotReload.js';
13
16
  export { useUpdateOnHMR } from './utils/useUpdateOnHMR.js';
14
17
  export * from './utils/helpers.js';
15
18
  export type { VoltraElementJson, VoltraNodeJson } from './types.js';
19
+ export { clearWidgetServerUpdate, getWidgetServerUpdate, setWidgetServerUpdate, type WidgetServerUpdateBody, type WidgetServerUpdateOptions, type WidgetServerUpdateSettings, type WidgetServerUpdateSnapshot, } from './widgets/server-update.js';
16
20
  export { clearWidgetServerCredentials, setWidgetServerCredentials, type WidgetServerCredentials, } from './widgets/server-credentials.js';
17
21
  export type { WidgetFamily, WidgetInfo, WidgetVariants } from '@use-voltra/ios';
18
22
  export { clearAllWidgets, clearWidget, getActiveWidgets, reloadWidgets, type ScheduledWidgetEntry, scheduleWidget, updateWidget, type UpdateWidgetOptions, } from './widgets/widget-api.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EACL,yBAAyB,EACzB,KAAK,8BAA8B,GACpC,MAAM,2CAA2C,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAE,KAAK,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AACxG,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC1E,OAAO,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EACL,oBAAoB,EACpB,KAAK,sBAAsB,EAC3B,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,GAC3B,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC5E,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,aAAa,EACb,KAAK,mBAAmB,EACxB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,cAAc,oBAAoB,CAAA;AAClC,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,iCAAiC,CAAA;AACxC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EACL,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,KAAK,oBAAoB,EACzB,cAAc,EACd,YAAY,EACZ,KAAK,mBAAmB,GACzB,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EACL,yBAAyB,EACzB,KAAK,8BAA8B,GACpC,MAAM,2CAA2C,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAE,KAAK,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AACxG,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AACpH,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC1E,OAAO,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EACL,oBAAoB,EACpB,KAAK,sBAAsB,EAC3B,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,GAC3B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,mCAAmC,EACnC,wBAAwB,EACxB,KAAK,+BAA+B,EACpC,yBAAyB,EACzB,KAAK,gCAAgC,EACrC,sBAAsB,EACtB,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,6BAA6B,GACnC,MAAM,gCAAgC,CAAA;AACvC,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC5E,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,aAAa,EACb,KAAK,mBAAmB,EACxB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AACxE,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAA;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,cAAc,oBAAoB,CAAA;AAClC,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,GAChC,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,iCAAiC,CAAA;AACxC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EACL,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,KAAK,oBAAoB,EACzB,cAAc,EACd,YAAY,EACZ,KAAK,mBAAmB,GACzB,MAAM,yBAAyB,CAAA"}
@@ -26,6 +26,13 @@ export type UseLiveActivityResult = {
26
26
  end: (options?: EndLiveActivityOptions) => Promise<void>;
27
27
  isActive: boolean;
28
28
  };
29
+ export declare const normalizeSharedLiveActivityOptions: (options?: SharedLiveActivityOptions) => SharedLiveActivityOptions | undefined;
30
+ export declare const normalizeEndLiveActivityOptions: (options?: EndLiveActivityOptions) => {
31
+ dismissalPolicy?: {
32
+ type: "immediate" | "after";
33
+ date?: number;
34
+ };
35
+ } | undefined;
29
36
  export declare const useLiveActivity: (variants: LiveActivityVariants, options?: UseLiveActivityOptions) => UseLiveActivityResult;
30
37
  export declare const startLiveActivity: (variants: LiveActivityVariants, options?: StartLiveActivityOptions) => Promise<string>;
31
38
  export declare const updateLiveActivity: (targetId: string, variants: LiveActivityVariants, options?: UpdateLiveActivityOptions) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/live-activity/api.ts"],"names":[],"mappings":"AAEA,OAAO,EAA8B,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAO7G,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,yBAAyB,CAAA;AAE7B,MAAM,MAAM,yBAAyB,GAAG,yBAAyB,CAAA;AAEjE,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,yBAAyB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9D,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AA4CD,eAAO,MAAM,eAAe,GAC1B,UAAU,oBAAoB,EAC9B,UAAU,sBAAsB,KAC/B,qBAsFF,CAAA;AAED,eAAO,MAAM,iBAAiB,GAC5B,UAAU,oBAAoB,EAC9B,UAAU,wBAAwB,KACjC,OAAO,CAAC,MAAM,CAchB,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,UAAU,MAAM,EAChB,UAAU,oBAAoB,EAC9B,UAAU,yBAAyB,KAClC,OAAO,CAAC,IAAI,CAOd,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAU,UAAU,MAAM,EAAE,UAAU,sBAAsB,KAAG,OAAO,CAAC,IAAI,CAKvG,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,cAAc,MAAM,KAAG,OAI3D,CAAA;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1D"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/live-activity/api.ts"],"names":[],"mappings":"AAEA,OAAO,EAA8B,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAO7G,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,yBAAyB,CAAA;AAE7B,MAAM,MAAM,yBAAyB,GAAG,yBAAyB,CAAA;AAEjE,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,yBAAyB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9D,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,kCAAkC,GAC7C,UAAU,yBAAyB,KAClC,yBAAyB,GAAG,SAsB9B,CAAA;AAED,eAAO,MAAM,+BAA+B,GAC1C,UAAU,sBAAsB,KAC/B;IAAE,eAAe,CAAC,EAAE;QAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,SAYzE,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,UAAU,oBAAoB,EAC9B,UAAU,sBAAsB,KAC/B,qBAsFF,CAAA;AAED,eAAO,MAAM,iBAAiB,GAC5B,UAAU,oBAAoB,EAC9B,UAAU,wBAAwB,KACjC,OAAO,CAAC,MAAM,CAchB,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,UAAU,MAAM,EAChB,UAAU,oBAAoB,EAC9B,UAAU,yBAAyB,KAClC,OAAO,CAAC,IAAI,CAOd,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAU,UAAU,MAAM,EAAE,UAAU,sBAAsB,KAAG,OAAO,CAAC,IAAI,CAKvG,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,cAAc,MAAM,KAAG,OAI3D,CAAA;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1D"}
@@ -0,0 +1,54 @@
1
+ import { type EndLiveActivityOptions, type SharedLiveActivityOptions } from './api.js';
2
+ /** @experimental A JSON-compatible value accepted as Dynamic Live Activity props. */
3
+ export type DynamicLiveActivityPropsValue = string | number | boolean | null | ReadonlyArray<DynamicLiveActivityPropsValue> | Readonly<{
4
+ [key: string]: DynamicLiveActivityPropsValue;
5
+ }>;
6
+ /** @experimental A complete JSON-compatible props record for a Dynamic Live Activity update. */
7
+ export type DynamicLiveActivityProps = Readonly<{
8
+ [key: string]: DynamicLiveActivityPropsValue;
9
+ }>;
10
+ /** @experimental Options used to start a Dynamic Live Activity. */
11
+ export type StartDynamicLiveActivityOptions = {
12
+ activityName?: string;
13
+ deepLinkUrl?: string;
14
+ channelId?: string;
15
+ } & SharedLiveActivityOptions;
16
+ /** @experimental Options used to update a Dynamic Live Activity. */
17
+ export type UpdateDynamicLiveActivityOptions = SharedLiveActivityOptions;
18
+ /** @experimental Options for `useDynamicLiveActivity`. */
19
+ export type UseDynamicLiveActivityOptions = StartDynamicLiveActivityOptions & {
20
+ autoStart?: boolean;
21
+ autoUpdate?: boolean;
22
+ };
23
+ /** @experimental Lifecycle controls returned by `useDynamicLiveActivity`. */
24
+ export type UseDynamicLiveActivityResult = {
25
+ start: (options?: StartDynamicLiveActivityOptions) => Promise<void>;
26
+ update: (options?: UpdateDynamicLiveActivityOptions) => Promise<void>;
27
+ end: (options?: EndLiveActivityOptions) => Promise<void>;
28
+ isActive: boolean;
29
+ };
30
+ /**
31
+ * Starts a bundled Dynamic Live Activity with a complete opaque props record.
32
+ * @experimental
33
+ */
34
+ export declare function startDynamicLiveActivity(definitionId: string, props: DynamicLiveActivityProps, options?: StartDynamicLiveActivityOptions): Promise<string>;
35
+ /**
36
+ * Replaces a Dynamic Live Activity's complete opaque props record.
37
+ * @experimental
38
+ */
39
+ export declare function updateDynamicLiveActivity(activityName: string, props: DynamicLiveActivityProps, options?: UpdateDynamicLiveActivityOptions): Promise<void>;
40
+ /**
41
+ * Returns the Dynamic Live Activity definition IDs bundled in the installed app.
42
+ * @experimental
43
+ */
44
+ export declare function getDynamicLiveActivityDefinitionIds(): Promise<string[]>;
45
+ /**
46
+ * Manages the lifecycle of one Dynamic Live Activity definition.
47
+ *
48
+ * Complete props are sent on every update. In development, call
49
+ * `enableDynamicLiveActivityHotReload()` once in the app host to reload only
50
+ * the definition changed by Fast Refresh.
51
+ * @experimental
52
+ */
53
+ export declare function useDynamicLiveActivity<Props extends DynamicLiveActivityProps = DynamicLiveActivityProps>(definitionId: string, props: Props, options?: UseDynamicLiveActivityOptions): UseDynamicLiveActivityResult;
54
+ //# sourceMappingURL=dynamic-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-api.d.ts","sourceRoot":"","sources":["../../../../src/live-activity/dynamic-api.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC/B,MAAM,UAAU,CAAA;AAEjB,qFAAqF;AACrF,MAAM,MAAM,6BAA6B,GACrC,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,aAAa,CAAC,6BAA6B,CAAC,GAC5C,QAAQ,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,6BAA6B,CAAA;CAAE,CAAC,CAAA;AAE9D,gGAAgG;AAChG,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,6BAA6B,CAAA;CAAE,CAAC,CAAA;AAEjG,mEAAmE;AACnE,MAAM,MAAM,+BAA+B,GAAG;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,yBAAyB,CAAA;AAE7B,oEAAoE;AACpE,MAAM,MAAM,gCAAgC,GAAG,yBAAyB,CAAA;AAExE,0DAA0D;AAC1D,MAAM,MAAM,6BAA6B,GAAG,+BAA+B,GAAG;IAC5E,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,6EAA6E;AAC7E,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,+BAA+B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,gCAAgC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AA0DD;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,wBAAwB,EAC/B,OAAO,CAAC,EAAE,+BAA+B,GACxC,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,wBAAwB,EAC/B,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,IAAI,CAAC,CASf;AAED;;;GAGG;AACH,wBAAsB,mCAAmC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAG7E;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,SAAS,wBAAwB,GAAG,wBAAwB,EACtG,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,6BAA6B,GACtC,4BAA4B,CAwE9B"}
@@ -26,6 +26,14 @@ type VoltraInteractionEvent = Readonly<{
26
26
  identifier: string;
27
27
  payload: string;
28
28
  }>;
29
+ type VoltraDynamicLiveActivityRenderFailedEvent = Readonly<{
30
+ source: string;
31
+ timestamp: number;
32
+ type: 'dynamicLiveActivityRenderFailed';
33
+ activityName: string;
34
+ definitionId: string;
35
+ message: string;
36
+ }>;
29
37
  type StartVoltraOptions = Readonly<{
30
38
  target?: string;
31
39
  deepLinkUrl?: string;
@@ -75,26 +83,39 @@ type WidgetServerCredentials = Readonly<{
75
83
  }>;
76
84
  export interface Spec extends TurboModule {
77
85
  readonly onInteraction: CodegenTypes.EventEmitter<VoltraInteractionEvent>;
86
+ readonly onDynamicLiveActivityRenderFailed: CodegenTypes.EventEmitter<VoltraDynamicLiveActivityRenderFailedEvent>;
78
87
  readonly onStateChanged: CodegenTypes.EventEmitter<VoltraActivityUpdateEvent>;
79
88
  readonly onActivityTokenReceived: CodegenTypes.EventEmitter<VoltraActivityTokenReceivedEvent>;
80
89
  readonly onActivityPushToStartTokenReceived: CodegenTypes.EventEmitter<VoltraActivityPushToStartTokenReceivedEvent>;
90
+ drainDynamicLiveActivityRenderFailures(): void;
91
+ setDynamicLiveActivityRenderFailureListenerActive(active: boolean): void;
81
92
  startLiveActivity(jsonString: string, options: StartVoltraOptions): Promise<string>;
82
93
  updateLiveActivity(activityId: string, jsonString: string, options: UpdateVoltraOptions): Promise<void>;
94
+ startDynamicLiveActivity(definitionId: string, propsJson: string, options: StartVoltraOptions): Promise<string>;
95
+ updateDynamicLiveActivity(activityId: string, propsJson: string, options: UpdateVoltraOptions): Promise<void>;
83
96
  endLiveActivity(activityId: string, options: EndVoltraOptions): Promise<void>;
84
97
  endAllLiveActivities(): Promise<void>;
85
98
  getLatestVoltraActivityId(): Promise<string | null>;
86
99
  listVoltraActivityIds(): Promise<string[]>;
100
+ getDynamicLiveActivityDefinitionIds(): Promise<string[]>;
87
101
  isLiveActivityActive(activityName: string): boolean;
88
102
  isHeadless(): boolean;
89
103
  preloadImages(images: PreloadImageOptions[]): Promise<PreloadImagesResult>;
90
104
  reloadLiveActivities(activityNames?: string[] | null): Promise<void>;
105
+ reloadDynamicLiveActivities(definitionIds?: string[] | null): Promise<void>;
91
106
  clearPreloadedImages(keys?: string[] | null): Promise<void>;
107
+ updateDynamicWidget(dynamicWidgetId: string, dynamicWidgetPropsJson: string): Promise<void>;
92
108
  updateWidget(widgetId: string, jsonString: string, options: UpdateWidgetOptions): Promise<void>;
93
109
  scheduleWidget(widgetId: string, timelineJson: string): Promise<void>;
94
110
  reloadWidgets(widgetIds?: string[] | null): Promise<void>;
95
111
  clearWidget(widgetId: string): Promise<void>;
96
112
  clearAllWidgets(): Promise<void>;
97
113
  getActiveWidgets<T = unknown>(): Promise<T[]>;
114
+ /** Settings are passed as JSON so an arbitrary `body` survives the bridge unchanged. */
115
+ setWidgetServerUpdate(settingsJson: string, widgetId?: string | null): Promise<void>;
116
+ clearWidgetServerUpdate(widgetId?: string | null): Promise<void>;
117
+ /** Result is JSON so an arbitrary `body` survives the bridge unchanged, or null. */
118
+ getWidgetServerUpdate(widgetId?: string | null): Promise<string | null>;
98
119
  setWidgetServerCredentials(credentials: WidgetServerCredentials): Promise<void>;
99
120
  clearWidgetServerCredentials(): Promise<void>;
100
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NativeVoltra.d.ts","sourceRoot":"","sources":["../../../../src/native/NativeVoltra.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeVoltra.d.ts","sourceRoot":"","sources":["../../../../src/native/NativeVoltra.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export type { EventSubscription, PreloadImageFailure, PreloadImageOptions, PreloadImagesResult, UpdateWidgetOptions, VoltraElementJson, VoltraElementRef, VoltraNodeJson, VoltraPropValue, WidgetServerCredentials, } from '@use-voltra/ios';
1
+ export type { EventSubscription, PreloadImageFailure, PreloadImageOptions, PreloadImagesResult, UpdateWidgetOptions, VoltraElementJson, VoltraElementRef, VoltraNodeJson, VoltraPropValue, WidgetServerCredentials, WidgetServerUpdateBody, WidgetServerUpdateOptions, WidgetServerUpdateSettings, WidgetServerUpdateSnapshot, } from '@use-voltra/ios';
2
2
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,uBAAuB,GACxB,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAA"}
@@ -0,0 +1,15 @@
1
+ declare global {
2
+ var __voltraDynamicLiveActivityDefinitionUpdated: ((definitionId: string) => void) | undefined;
3
+ }
4
+ /**
5
+ * Reload Dynamic Live Activities after a Metro Fast Refresh patch. When Metro
6
+ * re-evaluates a generated definition entry, only that definition is reloaded.
7
+ * Component-only refresh boundaries do not re-evaluate their importer, so those
8
+ * patches fall back to reloading every Dynamic Live Activity definition.
9
+ * Legacy activities and Dynamic Widgets are unaffected.
10
+ *
11
+ * Subscribes to the shared {@link getFastRefreshHub} so multiple `__accept`
12
+ * calls from one save collapse into a single native reload.
13
+ */
14
+ export declare function enableDynamicLiveActivityHotReload(): () => void;
15
+ //# sourceMappingURL=enableDynamicLiveActivityHotReload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enableDynamicLiveActivityHotReload.d.ts","sourceRoot":"","sources":["../../../../src/utils/enableDynamicLiveActivityHotReload.ts"],"names":[],"mappings":"AAIA,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,4CAA4C,EAAE,CAAC,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;CAC/F;AAED;;;;;;;;;GASG;AACH,wBAAgB,kCAAkC,IAAI,MAAM,IAAI,CA+B/D"}
@@ -1,11 +1,9 @@
1
- declare global {
2
- var __accept: (...args: unknown[]) => void;
3
- }
4
1
  /**
5
2
  * Trigger `reloadWidgets()` on every Metro Fast Refresh patch (DEV only).
6
3
  *
7
- * Hooks the global `__accept` callback Metro fires when a Fast Refresh patch
8
- * lands in the host app's JS runtime. When fired, calls
4
+ * Subscribes to the shared {@link getFastRefreshHub}, which wraps the global
5
+ * `__accept` callback Metro fires when a Fast Refresh patch lands in the host
6
+ * app's JS runtime. On each debounced patch it calls
9
7
  * `WidgetCenter.shared.reloadAllTimelines()` so WidgetKit re-invokes each widget
10
8
  * Provider, which re-fetches the freshest bundle from Metro and renders the
11
9
  * updated UI.
@@ -16,8 +14,8 @@ declare global {
16
14
  * workflow the dev still relies on WidgetKit's natural lifecycle refresh on
17
15
  * app foreground.
18
16
  *
19
- * Call once at app startup. Returns `dispose()` to restore the prior
20
- * `__accept` (rarely needed in practice). No-op in release builds.
17
+ * Call once at app startup. Returns `dispose()` to unsubscribe (rarely needed
18
+ * in practice). No-op in release builds.
21
19
  */
22
20
  export declare function enableWidgetHotReload(): () => void;
23
21
  //# sourceMappingURL=enableWidgetHotReload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enableWidgetHotReload.d.ts","sourceRoot":"","sources":["../../../../src/utils/enableWidgetHotReload.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAC3C;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,IAAI,CAclD"}
1
+ {"version":3,"file":"enableWidgetHotReload.d.ts","sourceRoot":"","sources":["../../../../src/utils/enableWidgetHotReload.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,IAAI,CAQlD"}
@@ -1,5 +1,2 @@
1
- declare global {
2
- var __accept: (...args: unknown[]) => void;
3
- }
4
1
  export declare const useUpdateOnHMR: () => void;
5
2
  //# sourceMappingURL=useUpdateOnHMR.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateOnHMR.d.ts","sourceRoot":"","sources":["../../../../src/utils/useUpdateOnHMR.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAC3C;AAED,eAAO,MAAM,cAAc,YAkB1B,CAAA"}
1
+ {"version":3,"file":"useUpdateOnHMR.d.ts","sourceRoot":"","sources":["../../../../src/utils/useUpdateOnHMR.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc,YAY1B,CAAA"}
@@ -1,5 +1,13 @@
1
1
  import type { WidgetServerCredentials } from '../types.js';
2
2
  export type { WidgetServerCredentials } from '../types.js';
3
+ /**
4
+ * @deprecated Use {@link setWidgetServerUpdate} with an `Authorization` header. This writes the
5
+ * same stored credentials and keeps the same replace-everything semantics, so migrating is a
6
+ * one-line change; it will be removed in a future major.
7
+ */
3
8
  export declare function setWidgetServerCredentials(credentials: WidgetServerCredentials): Promise<void>;
9
+ /**
10
+ * @deprecated Use {@link clearWidgetServerUpdate} instead.
11
+ */
4
12
  export declare function clearWidgetServerCredentials(): Promise<void>;
5
13
  //# sourceMappingURL=server-credentials.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-credentials.d.ts","sourceRoot":"","sources":["../../../../src/widgets/server-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAG1D,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAE1D,wBAAsB,0BAA0B,CAAC,WAAW,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpG;AAED,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC,CAElE"}
1
+ {"version":3,"file":"server-credentials.d.ts","sourceRoot":"","sources":["../../../../src/widgets/server-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAG1D,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAE1D;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,WAAW,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpG;AAED;;GAEG;AACH,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC,CAElE"}
@@ -0,0 +1,64 @@
1
+ import type { WidgetServerUpdateOptions, WidgetServerUpdateSettings, WidgetServerUpdateSnapshot } from '../types.js';
2
+ export type { WidgetServerUpdateBody, WidgetServerUpdateOptions, WidgetServerUpdateSettings, WidgetServerUpdateSnapshot, } from '../types.js';
3
+ /**
4
+ * Overrides a server-driven widget's `serverUpdate` settings at runtime.
5
+ *
6
+ * The `serverUpdate` entry in app.json supplies the defaults; this replaces any of them for one
7
+ * widget, or for every server-driven widget when no `widgetId` is given. A widget-scoped call wins
8
+ * over a global one, and `headers` and `query` merge per key across the two.
9
+ *
10
+ * Each call replaces the whole layer it writes, so pass every field you want to keep. Setting
11
+ * anything reschedules the widgets it affects and fetches once immediately.
12
+ *
13
+ * @example Point a widget at the tenant's own backend once the user has logged in.
14
+ * ```ts
15
+ * await setWidgetServerUpdate(
16
+ * { url: `https://${tenant}.example.com/widgets/portfolio`, headers: { Authorization: `Bearer ${token}` } },
17
+ * { widgetId: 'portfolio' }
18
+ * )
19
+ * ```
20
+ *
21
+ * @example Take a widget over and drive it from the app until you hand it back.
22
+ * ```ts
23
+ * await setWidgetServerUpdate({ enabled: false }, { widgetId: 'portfolio' })
24
+ * await updateDynamicWidget('portfolio', localProps)
25
+ * ```
26
+ *
27
+ * @throws if the widget has no `serverUpdate` in app.json, if the URL is not https (plain http is
28
+ * allowed only in a debug build, and only for a local dev host), or if `query` names one of the
29
+ * parameters Voltra already sends.
30
+ */
31
+ export declare function setWidgetServerUpdate(settings: WidgetServerUpdateSettings, options?: WidgetServerUpdateOptions): Promise<void>;
32
+ /**
33
+ * Drops the runtime settings for one widget, or the global ones when no `widgetId` is given, so
34
+ * the widget falls back to what app.json configured.
35
+ *
36
+ * Clearing the global settings is the logout gesture: along with the settings it drops what the
37
+ * server last sent for every server-driven widget, so a Dynamic Widget goes back to `{}` with
38
+ * `env.serverUpdate.status` of `never` rather than showing the previous account's data. Credentials
39
+ * set with the deprecated `setWidgetServerCredentials` are stored separately — clear those with
40
+ * `clearWidgetServerCredentials`.
41
+ */
42
+ export declare function clearWidgetServerUpdate(options?: WidgetServerUpdateOptions): Promise<void>;
43
+ /**
44
+ * Reads a widget's `serverUpdate` settings back, without reasoning about what was set where.
45
+ *
46
+ * With a `widgetId`, this is the fully resolved settings that widget would fetch with right now:
47
+ * every layer flattened and app.json's defaults applied — `null` if the widget is not
48
+ * server-driven. Without one, this is the raw contents of the global layer only — what the last
49
+ * `setWidgetServerUpdate(settings)` call (with no `widgetId`) wrote, with no defaults applied and
50
+ * every field optional — `null` if nothing has been set globally.
51
+ *
52
+ * @example Check what a widget is about to fetch from.
53
+ * ```ts
54
+ * const snapshot = await getWidgetServerUpdate({ widgetId: 'portfolio' })
55
+ * if (snapshot?.enabled) {
56
+ * console.log(`portfolio fetches ${snapshot.url} every ${snapshot.intervalMinutes}m`)
57
+ * }
58
+ * ```
59
+ */
60
+ export declare function getWidgetServerUpdate(options: {
61
+ widgetId: string;
62
+ }): Promise<WidgetServerUpdateSnapshot | null>;
63
+ export declare function getWidgetServerUpdate(options?: undefined): Promise<WidgetServerUpdateSettings | null>;
64
+ //# sourceMappingURL=server-update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-update.d.ts","sourceRoot":"","sources":["../../../../src/widgets/server-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAGpH,YAAY,EACV,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,aAAa,CAAA;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,0BAA0B,EACpC,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhG;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAA;AACtH,wBAAsB,qBAAqB,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ export type DynamicWidgetPropsValue = string | number | boolean | null | ReadonlyArray<DynamicWidgetPropsValue> | Readonly<{
2
+ [dynamicWidgetPropName: string]: DynamicWidgetPropsValue;
3
+ }>;
4
+ export type DynamicWidgetProps = Readonly<{
5
+ [dynamicWidgetPropName: string]: DynamicWidgetPropsValue;
6
+ }>;
7
+ export declare const updateDynamicWidget: (dynamicWidgetId: string, dynamicWidgetProps: DynamicWidgetProps) => Promise<void>;
8
+ //# sourceMappingURL=api.d.ts.map