@pushframe/sdk 0.1.5 → 0.1.9

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 (288) hide show
  1. package/lib/commonjs/PushframeProvider.js +69 -0
  2. package/lib/commonjs/PushframeProvider.js.map +1 -0
  3. package/lib/commonjs/PushframeScreen.js +69 -0
  4. package/lib/commonjs/PushframeScreen.js.map +1 -0
  5. package/lib/commonjs/bindings.js +73 -0
  6. package/lib/commonjs/bindings.js.map +1 -0
  7. package/lib/commonjs/components/ButtonComponent.js +72 -0
  8. package/lib/commonjs/components/ButtonComponent.js.map +1 -0
  9. package/lib/commonjs/components/FlatListComponent.js +73 -0
  10. package/lib/commonjs/components/FlatListComponent.js.map +1 -0
  11. package/lib/commonjs/components/ImageComponent.js +67 -0
  12. package/lib/commonjs/components/ImageComponent.js.map +1 -0
  13. package/lib/commonjs/components/PushFrameComponent.js +179 -0
  14. package/lib/commonjs/components/PushFrameComponent.js.map +1 -0
  15. package/lib/commonjs/components/PushFrameProvider.js +115 -0
  16. package/lib/commonjs/components/PushFrameProvider.js.map +1 -0
  17. package/lib/commonjs/components/PushFrameScreen.js +39 -0
  18. package/lib/commonjs/components/PushFrameScreen.js.map +1 -0
  19. package/lib/commonjs/components/ScrollViewComponent.js +64 -0
  20. package/lib/commonjs/components/ScrollViewComponent.js.map +1 -0
  21. package/lib/commonjs/components/StackComponent.js +61 -0
  22. package/lib/commonjs/components/StackComponent.js.map +1 -0
  23. package/lib/commonjs/components/TextComponent.js +62 -0
  24. package/lib/commonjs/components/TextComponent.js.map +1 -0
  25. package/lib/commonjs/conditions.js +44 -0
  26. package/lib/commonjs/conditions.js.map +1 -0
  27. package/lib/commonjs/context/PushFrameContext.js +33 -0
  28. package/lib/commonjs/context/PushFrameContext.js.map +1 -0
  29. package/lib/commonjs/index.js +200 -0
  30. package/lib/commonjs/index.js.map +1 -0
  31. package/lib/commonjs/overlays/BottomSheetHost.js +144 -0
  32. package/lib/commonjs/overlays/BottomSheetHost.js.map +1 -0
  33. package/lib/commonjs/overlays/ToastHost.js +135 -0
  34. package/lib/commonjs/overlays/ToastHost.js.map +1 -0
  35. package/lib/commonjs/package.json +1 -0
  36. package/lib/commonjs/primitives/ActivityIndicator.js +24 -0
  37. package/lib/commonjs/primitives/ActivityIndicator.js.map +1 -0
  38. package/lib/commonjs/primitives/FlatList.js +34 -0
  39. package/lib/commonjs/primitives/FlatList.js.map +1 -0
  40. package/lib/commonjs/primitives/Image.js +33 -0
  41. package/lib/commonjs/primitives/Image.js.map +1 -0
  42. package/lib/commonjs/primitives/KeyboardAvoidingView.js +24 -0
  43. package/lib/commonjs/primitives/KeyboardAvoidingView.js.map +1 -0
  44. package/lib/commonjs/primitives/Modal.js +24 -0
  45. package/lib/commonjs/primitives/Modal.js.map +1 -0
  46. package/lib/commonjs/primitives/Pressable.js +26 -0
  47. package/lib/commonjs/primitives/Pressable.js.map +1 -0
  48. package/lib/commonjs/primitives/SafeAreaView.js +38 -0
  49. package/lib/commonjs/primitives/SafeAreaView.js.map +1 -0
  50. package/lib/commonjs/primitives/ScrollView.js +26 -0
  51. package/lib/commonjs/primitives/ScrollView.js.map +1 -0
  52. package/lib/commonjs/primitives/StatusBar.js +24 -0
  53. package/lib/commonjs/primitives/StatusBar.js.map +1 -0
  54. package/lib/commonjs/primitives/Switch.js +28 -0
  55. package/lib/commonjs/primitives/Switch.js.map +1 -0
  56. package/lib/commonjs/primitives/Text.js +37 -0
  57. package/lib/commonjs/primitives/Text.js.map +1 -0
  58. package/lib/commonjs/primitives/TextInput.js +31 -0
  59. package/lib/commonjs/primitives/TextInput.js.map +1 -0
  60. package/lib/commonjs/primitives/View.js +24 -0
  61. package/lib/commonjs/primitives/View.js.map +1 -0
  62. package/lib/commonjs/primitives/index.js +97 -0
  63. package/lib/commonjs/primitives/index.js.map +1 -0
  64. package/lib/commonjs/registry/ComponentRegistry.js +70 -0
  65. package/lib/commonjs/registry/ComponentRegistry.js.map +1 -0
  66. package/lib/commonjs/registry.js +94 -0
  67. package/lib/commonjs/registry.js.map +1 -0
  68. package/lib/commonjs/renderer/RecursiveRenderer.js +202 -0
  69. package/lib/commonjs/renderer/RecursiveRenderer.js.map +1 -0
  70. package/lib/commonjs/renderer/bindingResolver.js +98 -0
  71. package/lib/commonjs/renderer/bindingResolver.js.map +1 -0
  72. package/lib/commonjs/renderer/conditionalEvaluator.js +31 -0
  73. package/lib/commonjs/renderer/conditionalEvaluator.js.map +1 -0
  74. package/lib/commonjs/renderer.js +107 -0
  75. package/lib/commonjs/renderer.js.map +1 -0
  76. package/lib/commonjs/schema.js +79 -0
  77. package/lib/commonjs/schema.js.map +1 -0
  78. package/lib/commonjs/transformer/index.js +1055 -0
  79. package/lib/commonjs/transformer/index.js.map +1 -0
  80. package/lib/commonjs/transport.js +86 -0
  81. package/lib/commonjs/transport.js.map +1 -0
  82. package/lib/module/PushframeProvider.js +62 -0
  83. package/lib/module/PushframeProvider.js.map +1 -0
  84. package/lib/module/PushframeScreen.js +65 -0
  85. package/lib/module/PushframeScreen.js.map +1 -0
  86. package/lib/module/bindings.js +68 -0
  87. package/lib/module/bindings.js.map +1 -0
  88. package/lib/module/components/ButtonComponent.js +67 -0
  89. package/lib/module/components/ButtonComponent.js.map +1 -0
  90. package/lib/module/components/FlatListComponent.js +68 -0
  91. package/lib/module/components/FlatListComponent.js.map +1 -0
  92. package/lib/module/components/ImageComponent.js +62 -0
  93. package/lib/module/components/ImageComponent.js.map +1 -0
  94. package/lib/module/components/PushFrameComponent.js +174 -0
  95. package/lib/module/components/PushFrameComponent.js.map +1 -0
  96. package/lib/module/components/PushFrameProvider.js +110 -0
  97. package/lib/module/components/PushFrameProvider.js.map +1 -0
  98. package/lib/module/components/PushFrameScreen.js +34 -0
  99. package/lib/module/components/PushFrameScreen.js.map +1 -0
  100. package/lib/module/components/ScrollViewComponent.js +59 -0
  101. package/lib/module/components/ScrollViewComponent.js.map +1 -0
  102. package/lib/module/components/StackComponent.js +56 -0
  103. package/lib/module/components/StackComponent.js.map +1 -0
  104. package/lib/module/components/TextComponent.js +57 -0
  105. package/lib/module/components/TextComponent.js.map +1 -0
  106. package/lib/module/conditions.js +40 -0
  107. package/lib/module/conditions.js.map +1 -0
  108. package/lib/module/context/PushFrameContext.js +29 -0
  109. package/lib/module/context/PushFrameContext.js.map +1 -0
  110. package/lib/module/index.js +99 -0
  111. package/lib/module/index.js.map +1 -0
  112. package/lib/module/overlays/BottomSheetHost.js +139 -0
  113. package/lib/module/overlays/BottomSheetHost.js.map +1 -0
  114. package/lib/module/overlays/ToastHost.js +130 -0
  115. package/lib/module/overlays/ToastHost.js.map +1 -0
  116. package/lib/module/primitives/ActivityIndicator.js +19 -0
  117. package/lib/module/primitives/ActivityIndicator.js.map +1 -0
  118. package/lib/module/primitives/FlatList.js +29 -0
  119. package/lib/module/primitives/FlatList.js.map +1 -0
  120. package/lib/module/primitives/Image.js +28 -0
  121. package/lib/module/primitives/Image.js.map +1 -0
  122. package/lib/module/primitives/KeyboardAvoidingView.js +19 -0
  123. package/lib/module/primitives/KeyboardAvoidingView.js.map +1 -0
  124. package/lib/module/primitives/Modal.js +19 -0
  125. package/lib/module/primitives/Modal.js.map +1 -0
  126. package/lib/module/primitives/Pressable.js +21 -0
  127. package/lib/module/primitives/Pressable.js.map +1 -0
  128. package/lib/module/primitives/SafeAreaView.js +33 -0
  129. package/lib/module/primitives/SafeAreaView.js.map +1 -0
  130. package/lib/module/primitives/ScrollView.js +21 -0
  131. package/lib/module/primitives/ScrollView.js.map +1 -0
  132. package/lib/module/primitives/StatusBar.js +19 -0
  133. package/lib/module/primitives/StatusBar.js.map +1 -0
  134. package/lib/module/primitives/Switch.js +23 -0
  135. package/lib/module/primitives/Switch.js.map +1 -0
  136. package/lib/module/primitives/Text.js +32 -0
  137. package/lib/module/primitives/Text.js.map +1 -0
  138. package/lib/module/primitives/TextInput.js +26 -0
  139. package/lib/module/primitives/TextInput.js.map +1 -0
  140. package/lib/module/primitives/View.js +19 -0
  141. package/lib/module/primitives/View.js.map +1 -0
  142. package/lib/module/primitives/index.js +16 -0
  143. package/lib/module/primitives/index.js.map +1 -0
  144. package/lib/module/registry/ComponentRegistry.js +66 -0
  145. package/lib/module/registry/ComponentRegistry.js.map +1 -0
  146. package/lib/module/registry.js +88 -0
  147. package/lib/module/registry.js.map +1 -0
  148. package/lib/module/renderer/RecursiveRenderer.js +197 -0
  149. package/lib/module/renderer/RecursiveRenderer.js.map +1 -0
  150. package/lib/module/renderer/bindingResolver.js +92 -0
  151. package/lib/module/renderer/bindingResolver.js.map +1 -0
  152. package/lib/module/renderer/conditionalEvaluator.js +28 -0
  153. package/lib/module/renderer/conditionalEvaluator.js.map +1 -0
  154. package/lib/module/renderer.js +103 -0
  155. package/lib/module/renderer.js.map +1 -0
  156. package/lib/module/schema.js +74 -0
  157. package/lib/module/schema.js.map +1 -0
  158. package/lib/module/transformer/index.js +1051 -0
  159. package/lib/module/transformer/index.js.map +1 -0
  160. package/lib/module/transport.js +82 -0
  161. package/lib/module/transport.js.map +1 -0
  162. package/lib/typescript/PushframeProvider.d.ts +58 -0
  163. package/lib/typescript/PushframeProvider.d.ts.map +1 -0
  164. package/lib/typescript/PushframeScreen.d.ts +36 -0
  165. package/lib/typescript/PushframeScreen.d.ts.map +1 -0
  166. package/lib/typescript/bindings.d.ts +29 -0
  167. package/lib/typescript/bindings.d.ts.map +1 -0
  168. package/lib/typescript/components/ButtonComponent.d.ts +11 -0
  169. package/lib/typescript/components/ButtonComponent.d.ts.map +1 -0
  170. package/lib/typescript/components/FlatListComponent.d.ts +28 -0
  171. package/lib/typescript/components/FlatListComponent.d.ts.map +1 -0
  172. package/lib/typescript/components/ImageComponent.d.ts +12 -0
  173. package/lib/typescript/components/ImageComponent.d.ts.map +1 -0
  174. package/lib/typescript/components/PushFrameComponent.d.ts +48 -0
  175. package/lib/typescript/components/PushFrameComponent.d.ts.map +1 -0
  176. package/lib/typescript/components/PushFrameProvider.d.ts +51 -0
  177. package/lib/typescript/components/PushFrameProvider.d.ts.map +1 -0
  178. package/lib/typescript/components/PushFrameScreen.d.ts +15 -0
  179. package/lib/typescript/components/PushFrameScreen.d.ts.map +1 -0
  180. package/lib/typescript/components/ScrollViewComponent.d.ts +19 -0
  181. package/lib/typescript/components/ScrollViewComponent.d.ts.map +1 -0
  182. package/lib/typescript/components/StackComponent.d.ts +16 -0
  183. package/lib/typescript/components/StackComponent.d.ts.map +1 -0
  184. package/lib/typescript/components/TextComponent.d.ts +13 -0
  185. package/lib/typescript/components/TextComponent.d.ts.map +1 -0
  186. package/lib/typescript/conditions.d.ts +12 -0
  187. package/lib/typescript/conditions.d.ts.map +1 -0
  188. package/lib/typescript/context/PushFrameContext.d.ts +57 -0
  189. package/lib/typescript/context/PushFrameContext.d.ts.map +1 -0
  190. package/lib/typescript/index.d.ts +74 -0
  191. package/lib/typescript/index.d.ts.map +1 -0
  192. package/lib/typescript/overlays/BottomSheetHost.d.ts +21 -0
  193. package/lib/typescript/overlays/BottomSheetHost.d.ts.map +1 -0
  194. package/lib/typescript/overlays/ToastHost.d.ts +12 -0
  195. package/lib/typescript/overlays/ToastHost.d.ts.map +1 -0
  196. package/lib/typescript/primitives/ActivityIndicator.d.ts +12 -0
  197. package/lib/typescript/primitives/ActivityIndicator.d.ts.map +1 -0
  198. package/lib/typescript/primitives/FlatList.d.ts +29 -0
  199. package/lib/typescript/primitives/FlatList.d.ts.map +1 -0
  200. package/lib/typescript/primitives/Image.d.ts +20 -0
  201. package/lib/typescript/primitives/Image.d.ts.map +1 -0
  202. package/lib/typescript/primitives/KeyboardAvoidingView.d.ts +12 -0
  203. package/lib/typescript/primitives/KeyboardAvoidingView.d.ts.map +1 -0
  204. package/lib/typescript/primitives/Modal.d.ts +12 -0
  205. package/lib/typescript/primitives/Modal.d.ts.map +1 -0
  206. package/lib/typescript/primitives/Pressable.d.ts +14 -0
  207. package/lib/typescript/primitives/Pressable.d.ts.map +1 -0
  208. package/lib/typescript/primitives/SafeAreaView.d.ts +20 -0
  209. package/lib/typescript/primitives/SafeAreaView.d.ts.map +1 -0
  210. package/lib/typescript/primitives/ScrollView.d.ts +15 -0
  211. package/lib/typescript/primitives/ScrollView.d.ts.map +1 -0
  212. package/lib/typescript/primitives/StatusBar.d.ts +12 -0
  213. package/lib/typescript/primitives/StatusBar.d.ts.map +1 -0
  214. package/lib/typescript/primitives/Switch.d.ts +19 -0
  215. package/lib/typescript/primitives/Switch.d.ts.map +1 -0
  216. package/lib/typescript/primitives/Text.d.ts +25 -0
  217. package/lib/typescript/primitives/Text.d.ts.map +1 -0
  218. package/lib/typescript/primitives/TextInput.d.ts +25 -0
  219. package/lib/typescript/primitives/TextInput.d.ts.map +1 -0
  220. package/lib/typescript/primitives/View.d.ts +12 -0
  221. package/lib/typescript/primitives/View.d.ts.map +1 -0
  222. package/lib/typescript/primitives/index.d.ts +27 -0
  223. package/lib/typescript/primitives/index.d.ts.map +1 -0
  224. package/lib/typescript/registry/ComponentRegistry.d.ts +21 -0
  225. package/lib/typescript/registry/ComponentRegistry.d.ts.map +1 -0
  226. package/lib/typescript/registry.d.ts +57 -0
  227. package/lib/typescript/registry.d.ts.map +1 -0
  228. package/lib/typescript/renderer/RecursiveRenderer.d.ts +32 -0
  229. package/lib/typescript/renderer/RecursiveRenderer.d.ts.map +1 -0
  230. package/lib/typescript/renderer/bindingResolver.d.ts +26 -0
  231. package/lib/typescript/renderer/bindingResolver.d.ts.map +1 -0
  232. package/lib/typescript/renderer/conditionalEvaluator.d.ts +15 -0
  233. package/lib/typescript/renderer/conditionalEvaluator.d.ts.map +1 -0
  234. package/lib/typescript/renderer.d.ts +29 -0
  235. package/lib/typescript/renderer.d.ts.map +1 -0
  236. package/lib/typescript/schema.d.ts +84 -0
  237. package/lib/typescript/schema.d.ts.map +1 -0
  238. package/lib/typescript/transformer/index.d.ts +49 -0
  239. package/lib/typescript/transformer/index.d.ts.map +1 -0
  240. package/lib/typescript/transport.d.ts +19 -0
  241. package/lib/typescript/transport.d.ts.map +1 -0
  242. package/package.json +20 -18
  243. package/src/PushframeProvider.tsx +119 -0
  244. package/src/PushframeScreen.tsx +107 -0
  245. package/src/bindings.ts +72 -0
  246. package/src/components/ButtonComponent.tsx +87 -0
  247. package/src/components/FlatListComponent.tsx +86 -0
  248. package/src/components/ImageComponent.tsx +70 -0
  249. package/src/components/PushFrameComponent.tsx +221 -0
  250. package/src/components/PushFrameProvider.tsx +177 -0
  251. package/src/components/PushFrameScreen.tsx +30 -0
  252. package/src/components/ScrollViewComponent.tsx +65 -0
  253. package/src/components/StackComponent.tsx +69 -0
  254. package/src/components/TextComponent.tsx +60 -0
  255. package/src/conditions.ts +46 -0
  256. package/src/context/PushFrameContext.ts +89 -0
  257. package/src/index.ts +119 -0
  258. package/src/overlays/BottomSheetHost.tsx +175 -0
  259. package/src/overlays/ToastHost.tsx +147 -0
  260. package/src/primitives/ActivityIndicator.tsx +21 -0
  261. package/src/primitives/FlatList.tsx +49 -0
  262. package/src/primitives/Image.tsx +26 -0
  263. package/src/primitives/KeyboardAvoidingView.tsx +21 -0
  264. package/src/primitives/Modal.tsx +17 -0
  265. package/src/primitives/Pressable.tsx +19 -0
  266. package/src/primitives/SafeAreaView.tsx +42 -0
  267. package/src/primitives/ScrollView.tsx +21 -0
  268. package/src/primitives/StatusBar.tsx +17 -0
  269. package/src/primitives/Switch.tsx +24 -0
  270. package/src/primitives/Text.tsx +43 -0
  271. package/src/primitives/TextInput.tsx +42 -0
  272. package/src/primitives/View.tsx +17 -0
  273. package/src/primitives/index.ts +38 -0
  274. package/src/registry/ComponentRegistry.ts +99 -0
  275. package/src/registry.ts +99 -0
  276. package/src/renderer/RecursiveRenderer.tsx +242 -0
  277. package/src/renderer/bindingResolver.ts +94 -0
  278. package/src/renderer/conditionalEvaluator.ts +29 -0
  279. package/src/renderer.tsx +124 -0
  280. package/src/schema.ts +132 -0
  281. package/src/transformer/index.ts +1016 -0
  282. package/src/transport.ts +104 -0
  283. package/dist/index.d.mts +0 -534
  284. package/dist/index.d.ts +0 -534
  285. package/dist/index.js +0 -1572
  286. package/dist/index.js.map +0 -1
  287. package/dist/index.mjs +0 -1541
  288. package/dist/index.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BRIDGE_KEYS","Set","ALIGN_MAP","start","center","end","stretch","baseline","DISTRIBUTE_MAP","FIT_TO_RESIZE_MODE","cover","contain","fill","FONT_WEIGHT_MAP","regular","medium","semibold","bold","TEXT_STYLE_PRESETS","fontSize","fontWeight","textTransform","letterSpacing","INPUT_TYPE_MAP","text","keyboardType","secureTextEntry","autoCapitalize","autoCorrect","email","password","number","decimal","phone","url","search","stripBridgeKeys","props","out","k","has","extractMeta","raw","actions","_schemaActions","condition","_schemaIf","resolveSizeModeRN","value","axis","parentDirection","undefined","isMainAxis","flex","alignSelf","resolvePaddingRN","padding","top","right","bottom","left","paddingVertical","paddingHorizontal","paddingTop","paddingRight","paddingBottom","paddingLeft","resolveRadiusRN","radius","borderRadius","tl","borderTopLeftRadius","tr","borderTopRightRadius","br","borderBottomRightRadius","bl","borderBottomLeftRadius","resolveBorderRN","border","style","borderStyle","color","borderColor","widths","w","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","width","borderWidth","resolveShadowRN","shadow","shadowColor","shadowOffset","offsetX","height","offsetY","shadowRadius","blur","shadowOpacity","opacity","elevation","Math","round","resolveTransformRN","transforms","rotate","push","scale","translateX","translateY","length","transform","resolvePositionRN","position","zIndex","resolveAccessibilityProps","accessible","accessibilityLabel","accessibilityRole","testID","buildFrameStyle","frameType","type","align","alignItems","flexDirection","direction","distribute","justifyContent","gap","wrap","flexWrap","minWidth","maxWidth","minHeight","maxHeight","aspectRatio","Object","assign","backgroundColor","overflow","splitFrameStyle","OUTER_KEYS","outer","inner","v","entries","splitScrollStyle","CONTENT_KEYS","containerStyle","contentStyle","safeAreaEdges","safeArea","filter","map","edge","transformScreen","id","children","edges","hasSafeArea","vis","visible","content","scrollable","paddingStyle","scrollNode","keys","contentContainerStyle","showsVerticalScrollIndicator","showsHorizontalScrollIndicator","statusBar","statusBarStyle","node","if","transformFrame","p","isGrid","isScrollable","isPressable","pressable","access","fullStyle","sizingStyle","appearanceStyle","scrollOuter","scrollContent","finalize","gridStyle","columnGap","rowGap","gridView","numColumns","columns","horizontal","showScrollIndicator","innerNode","transformText","textStyle","preset","lineHeight","fontFamily","fontStyle","textAlign","decoration","textDecorationLine","textProps","truncate","numberOfLines","ellipsizeMode","adjustFontSize","adjustsFontSizeToFit","minFontSize","minimumFontScale","selectable","transformImage","imageProps","src","source","uri","placeholder","defaultSource","fallback","resizeMode","fit","background","decorative","accessibilityElementsHidden","alt","transformInput","inputTypeDefaults","inputType","label","helperText","errorText","returnKeyType","returnKey","multiline","minLines","maxLines","maxNumberOfLines","variant","size","leadingIcon","trailingIcon","transformList","listType","itemTemplate","flatlistNode","data","keyExtractor","savNode","transformIcon","name","set","buildNodeFromSchema","nodeId","schema","customComponents","visited","parentId","Error","add","resolvedName","outputId","childNodes","nodes","childId","resolveCustomComponent","componentId","componentKey","propValues","frameProps","key","def","wrapperStyle","componentVisited","componentRoot","rootNodeId","_propValues","wrapper","transformCraftToSDUI","craftJson"],"sourceRoot":"../../../src","sources":["transformer/index.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ import { SCHEMA_VERSION } from './schema';
4
+
5
+ /** In-memory cache so repeated renders don't re-fetch the same screen. */
6
+ const cache = new Map();
7
+ function cacheKey(serverUrl, projectKey, screenId) {
8
+ return `${serverUrl}|${projectKey}|${screenId}`;
9
+ }
10
+
11
+ /**
12
+ * Server envelope format.
13
+ * The server stores screens as { key, version, schema, publishedAt, ... }.
14
+ * We normalize this to the SDK's ScreenDefinition shape in `normalizeResponse`.
15
+ */
16
+
17
+ /**
18
+ * Accepts either the raw server envelope or a native ScreenDefinition and
19
+ * always returns a valid ScreenDefinition the renderer can consume.
20
+ */
21
+ function normalizeResponse(raw, screenId) {
22
+ if (raw === null || typeof raw !== 'object') {
23
+ throw new Error(`[Pushframe] Server returned non-object for screen "${screenId}"`);
24
+ }
25
+ const obj = raw;
26
+
27
+ // Native SDK format — already has `root` and `schemaVersion`
28
+ if ('root' in obj) {
29
+ return obj;
30
+ }
31
+
32
+ // Server envelope format — { key, schema, ... }
33
+ if ('schema' in obj) {
34
+ const envelope = obj;
35
+ return {
36
+ schemaVersion: SCHEMA_VERSION,
37
+ id: envelope.key ?? screenId,
38
+ root: envelope.schema
39
+ };
40
+ }
41
+ throw new Error(`[Pushframe] Unrecognized response shape for screen "${screenId}". ` + `Expected { root } or { key, schema } but got keys: ${Object.keys(obj).join(', ')}`);
42
+ }
43
+
44
+ /**
45
+ * Fetch a screen definition from the Pushframe server.
46
+ *
47
+ * URL: GET {serverUrl}/screens/{screenId}?projectKey={projectKey}
48
+ *
49
+ * Handles both the native SDK format ({ schemaVersion, id, root })
50
+ * and the server envelope format ({ key, version, schema, publishedAt }).
51
+ *
52
+ * Results are cached in memory for the lifetime of the JS bundle.
53
+ * Call `clearScreenCache()` to force a refetch (e.g. on logout or hard reload).
54
+ */
55
+ export async function fetchScreenDefinition(serverUrl, projectKey, screenId) {
56
+ const key = cacheKey(serverUrl, projectKey, screenId);
57
+ const cached = cache.get(key);
58
+ if (cached) return cached;
59
+ const base = serverUrl.replace(/\/$/, '');
60
+ const url = `${base}/screens/${encodeURIComponent(screenId)}?projectKey=${encodeURIComponent(projectKey)}`;
61
+ const res = await fetch(url, {
62
+ headers: {
63
+ Accept: 'application/json',
64
+ 'x-project-key': projectKey
65
+ }
66
+ });
67
+ if (!res.ok) {
68
+ throw new Error(`[Pushframe] Failed to fetch screen "${screenId}": HTTP ${res.status} ${res.statusText}`);
69
+ }
70
+ const definition = normalizeResponse(await res.json(), screenId);
71
+ cache.set(key, definition);
72
+ return definition;
73
+ }
74
+
75
+ /**
76
+ * Invalidate the entire in-memory screen cache.
77
+ * Useful after a forced refresh or when the project key changes.
78
+ */
79
+ export function clearScreenCache() {
80
+ cache.clear();
81
+ }
82
+ //# sourceMappingURL=transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SCHEMA_VERSION","cache","Map","cacheKey","serverUrl","projectKey","screenId","normalizeResponse","raw","Error","obj","envelope","schemaVersion","id","key","root","schema","Object","keys","join","fetchScreenDefinition","cached","get","base","replace","url","encodeURIComponent","res","fetch","headers","Accept","ok","status","statusText","definition","json","set","clearScreenCache","clear"],"sourceRoot":"../../src","sources":["transport.ts"],"mappings":";;AACA,SAASA,cAAc,QAAQ,UAAU;;AAEzC;AACA,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAA2B,CAAC;AAEjD,SAASC,QAAQA,CAACC,SAAiB,EAAEC,UAAkB,EAAEC,QAAgB,EAAU;EACjF,OAAO,GAAGF,SAAS,IAAIC,UAAU,IAAIC,QAAQ,EAAE;AACjD;;AAEA;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;AACA,SAASC,iBAAiBA,CAACC,GAAY,EAAEF,QAAgB,EAAoB;EAC3E,IAAIE,GAAG,KAAK,IAAI,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;IAC3C,MAAM,IAAIC,KAAK,CAAC,sDAAsDH,QAAQ,GAAG,CAAC;EACpF;EAEA,MAAMI,GAAG,GAAGF,GAA8B;;EAE1C;EACA,IAAI,MAAM,IAAIE,GAAG,EAAE;IACjB,OAAOA,GAAG;EACZ;;EAEA;EACA,IAAI,QAAQ,IAAIA,GAAG,EAAE;IACnB,MAAMC,QAAQ,GAAGD,GAAsC;IACvD,OAAO;MACLE,aAAa,EAAEZ,cAAc;MAC7Ba,EAAE,EAAEF,QAAQ,CAACG,GAAG,IAAIR,QAAQ;MAC5BS,IAAI,EAAEJ,QAAQ,CAACK;IACjB,CAAC;EACH;EAEA,MAAM,IAAIP,KAAK,CACb,uDAAuDH,QAAQ,KAAK,GAClE,sDAAsDW,MAAM,CAACC,IAAI,CAACR,GAAG,CAAC,CAACS,IAAI,CAAC,IAAI,CAAC,EACrF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,qBAAqBA,CACzChB,SAAiB,EACjBC,UAAkB,EAClBC,QAAgB,EACW;EAC3B,MAAMQ,GAAG,GAAGX,QAAQ,CAACC,SAAS,EAAEC,UAAU,EAAEC,QAAQ,CAAC;EACrD,MAAMe,MAAM,GAAGpB,KAAK,CAACqB,GAAG,CAACR,GAAG,CAAC;EAC7B,IAAIO,MAAM,EAAE,OAAOA,MAAM;EAEzB,MAAME,IAAI,GAAGnB,SAAS,CAACoB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;EACzC,MAAMC,GAAG,GAAG,GAAGF,IAAI,YAAYG,kBAAkB,CAACpB,QAAQ,CAAC,eAAeoB,kBAAkB,CAACrB,UAAU,CAAC,EAAE;EAE1G,MAAMsB,GAAG,GAAG,MAAMC,KAAK,CAACH,GAAG,EAAE;IAC3BI,OAAO,EAAE;MACPC,MAAM,EAAE,kBAAkB;MAC1B,eAAe,EAAEzB;IACnB;EACF,CAAC,CAAC;EAEF,IAAI,CAACsB,GAAG,CAACI,EAAE,EAAE;IACX,MAAM,IAAItB,KAAK,CACb,uCAAuCH,QAAQ,WAAWqB,GAAG,CAACK,MAAM,IAAIL,GAAG,CAACM,UAAU,EACxF,CAAC;EACH;EAEA,MAAMC,UAAU,GAAG3B,iBAAiB,CAAC,MAAMoB,GAAG,CAACQ,IAAI,CAAC,CAAC,EAAE7B,QAAQ,CAAC;EAChEL,KAAK,CAACmC,GAAG,CAACtB,GAAG,EAAEoB,UAAU,CAAC;EAC1B,OAAOA,UAAU;AACnB;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASG,gBAAgBA,CAAA,EAAS;EACvCpC,KAAK,CAACqC,KAAK,CAAC,CAAC;AACf","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ import type { ReactNode } from 'react';
2
+ import { ComponentRegistry } from './registry';
3
+ import type { PushframeComponent } from './registry';
4
+ import type { PushframeContext } from './bindings';
5
+ import type { ActionHandler } from './renderer';
6
+ export declare const DEFAULT_SERVER_URL = "http://localhost:3001";
7
+ interface PushframeContextValue {
8
+ /** Runtime data that screen definitions bind to via { "$bind": "..." }. */
9
+ context: PushframeContext;
10
+ /** Component registry used by all screens under this provider. */
11
+ registry: ComponentRegistry;
12
+ /** Identifies which Pushframe project's screens to fetch. */
13
+ projectKey: string;
14
+ /** Base URL of the Pushframe server. Defaults to http://localhost:3001. */
15
+ serverUrl: string;
16
+ /** Optional global action handler. */
17
+ onAction?: ActionHandler;
18
+ }
19
+ export declare function usePushframe(): PushframeContextValue;
20
+ export interface PushframeProviderProps {
21
+ /**
22
+ * The Pushframe project key. All screens fetched under this provider will
23
+ * be scoped to this project.
24
+ */
25
+ projectKey: string;
26
+ /**
27
+ * Base URL of the Pushframe server.
28
+ * @default "http://localhost:3001"
29
+ */
30
+ serverUrl?: string;
31
+ /**
32
+ * Runtime data (user info, feature flags, etc.) that screen definitions
33
+ * can bind to via { "$bind": "path.to.value" }.
34
+ */
35
+ context: PushframeContext;
36
+ /**
37
+ * Optional pre-configured registry. When omitted, the default registry
38
+ * (stack, scrollview, flatlist, text, button, image) is used.
39
+ * Takes precedence over `customComponents` when both are provided.
40
+ */
41
+ registry?: ComponentRegistry;
42
+ /**
43
+ * Custom components to add on top of the default registry.
44
+ * Map of type string → component, e.g. `{ 'my-card': MyCardComponent }`.
45
+ * These override any built-in component with the same type string.
46
+ * Ignored when `registry` is also provided.
47
+ */
48
+ customComponents?: Record<string, PushframeComponent>;
49
+ /**
50
+ * Called whenever an action is triggered from a rendered screen.
51
+ * The host app is responsible for handling navigate / custom actions.
52
+ */
53
+ onAction?: ActionHandler;
54
+ children: ReactNode;
55
+ }
56
+ export declare function PushframeProvider({ projectKey, serverUrl, context, registry, customComponents, onAction, children, }: PushframeProviderProps): import("react/jsx-runtime").JSX.Element;
57
+ export {};
58
+ //# sourceMappingURL=PushframeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PushframeProvider.d.ts","sourceRoot":"","sources":["../../src/PushframeProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAyB,MAAM,YAAY,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAM1D,UAAU,qBAAqB;IAC7B,2EAA2E;IAC3E,OAAO,EAAE,gBAAgB,CAAC;IAE1B,kEAAkE;IAClE,QAAQ,EAAE,iBAAiB,CAAC;IAE5B,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAC;IAEnB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAElB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAQD,wBAAgB,YAAY,IAAI,qBAAqB,CAMpD;AAMD,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,OAAO,EAAE,gBAAgB,CAAC;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAEtD;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IAEzB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,SAA8B,EAC9B,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,QAAQ,GACT,EAAE,sBAAsB,2CAmBxB"}
@@ -0,0 +1,36 @@
1
+ import React from 'react';
2
+ import type { ReactElement } from 'react';
3
+ import type { ScreenDefinition } from './schema';
4
+ import type { ActionHandler } from './renderer';
5
+ export interface PushframeScreenProps {
6
+ /**
7
+ * Fetch the screen definition from the server by ID.
8
+ * Requires `projectKey` and `serverUrl` to be set on the parent
9
+ * <PushframeProvider>.
10
+ *
11
+ * Mutually exclusive with `definition`.
12
+ */
13
+ screenId?: string;
14
+ /**
15
+ * Use a locally-provided screen definition (static / offline mode).
16
+ * Mutually exclusive with `screenId`.
17
+ */
18
+ definition?: ScreenDefinition;
19
+ /**
20
+ * Optional per-screen action handler. Takes precedence over the global
21
+ * handler set on <PushframeProvider>.
22
+ */
23
+ onAction?: ActionHandler;
24
+ /**
25
+ * Rendered while the screen definition is being fetched from the server.
26
+ * Defaults to null (renders nothing).
27
+ */
28
+ fallback?: ReactElement | null;
29
+ /**
30
+ * Rendered when the fetch fails.
31
+ * Defaults to null (renders nothing, error is logged to console).
32
+ */
33
+ errorFallback?: ReactElement | null;
34
+ }
35
+ export declare function PushframeScreen({ screenId, definition: staticDefinition, onAction, fallback, errorFallback, }: PushframeScreenProps): React.ReactElement<any, string | React.JSXElementConstructor<any>> | null;
36
+ //# sourceMappingURL=PushframeScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PushframeScreen.d.ts","sourceRoot":"","sources":["../../src/PushframeScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD,MAAM,WAAW,oBAAoB;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAE/B;;;OAGG;IACH,aAAa,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CACrC;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EACR,QAAe,EACf,aAAoB,GACrB,EAAE,oBAAoB,6EAwDtB"}
@@ -0,0 +1,29 @@
1
+ import type { PropValue, PropsMap } from './schema';
2
+ /**
3
+ * Runtime context passed into the renderer.
4
+ * Any JSON-serialisable data structure is valid.
5
+ */
6
+ export type PushframeContext = Record<string, unknown>;
7
+ /**
8
+ * Resolve a dot-separated path against an object.
9
+ *
10
+ * e.g. resolvePath({ user: { firstName: "Alex" } }, "user.firstName") → "Alex"
11
+ *
12
+ * Returns undefined when any segment along the path is absent.
13
+ */
14
+ export declare function resolvePath(context: PushframeContext, path: string): unknown;
15
+ /**
16
+ * Recursively resolve all $bind references in a PropValue against the context.
17
+ *
18
+ * - Binding objects → resolved to the context value (or undefined if missing)
19
+ * - Arrays → each element resolved
20
+ * - Plain objects → each value resolved
21
+ * - Primitives → returned as-is
22
+ */
23
+ export declare function resolveValue(value: PropValue, context: PushframeContext): unknown;
24
+ /**
25
+ * Resolve all entries in a props map against the context.
26
+ * Returns a plain Record<string, unknown> ready to spread onto a component.
27
+ */
28
+ export declare function resolveProps(props: PropsMap | undefined, context: PushframeContext): Record<string, unknown>;
29
+ //# sourceMappingURL=bindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/bindings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAU5E;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAmBjF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,QAAQ,GAAG,SAAS,EAC3B,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOzB"}
@@ -0,0 +1,11 @@
1
+ import type { PushframeComponentProps } from '../registry';
2
+ export type ButtonVariant = 'primary' | 'secondary' | 'ghost';
3
+ export interface ButtonProps {
4
+ label?: string;
5
+ variant?: ButtonVariant;
6
+ disabled?: boolean;
7
+ loading?: boolean;
8
+ onPress?: () => void;
9
+ }
10
+ export declare function ButtonComponent({ props }: PushframeComponentProps<ButtonProps>): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=ButtonComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonComponent.d.ts","sourceRoot":"","sources":["../../../src/components/ButtonComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE,uBAAuB,CAAC,WAAW,CAAC,2CAkC9E"}
@@ -0,0 +1,28 @@
1
+ import type { PushframeComponentProps } from '../registry';
2
+ export interface FlatListProps {
3
+ /**
4
+ * Array of data items to render. Typically bound from context via
5
+ * { "$bind": "path.to.array" }. Each item is available as `item` and
6
+ * the index as `index` inside the item template (first child node).
7
+ */
8
+ data?: Record<string, unknown>[];
9
+ /**
10
+ * Name of the field on each item to use as the React key.
11
+ * @default "id"
12
+ */
13
+ keyExtractor?: string;
14
+ horizontal?: boolean;
15
+ numColumns?: number;
16
+ padding?: number;
17
+ paddingTop?: number;
18
+ paddingBottom?: number;
19
+ paddingLeft?: number;
20
+ paddingRight?: number;
21
+ backgroundColor?: string;
22
+ flex?: number;
23
+ showsScrollIndicator?: boolean;
24
+ /** Height of the separator between items (vertical lists only). */
25
+ itemSeparatorHeight?: number;
26
+ }
27
+ export declare function FlatListComponent({ props, rawChildren, renderChild, }: PushframeComponentProps<FlatListProps>): import("react/jsx-runtime").JSX.Element;
28
+ //# sourceMappingURL=FlatListComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlatListComponent.d.ts","sourceRoot":"","sources":["../../../src/components/FlatListComponent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACjC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,WAAW,GACZ,EAAE,uBAAuB,CAAC,aAAa,CAAC,2CAkDxC"}
@@ -0,0 +1,12 @@
1
+ import type { PushframeComponentProps } from '../registry';
2
+ export type ImageResizeMode = 'cover' | 'contain' | 'stretch' | 'center';
3
+ export interface ImageProps {
4
+ src?: string;
5
+ alt?: string;
6
+ width?: number;
7
+ height?: number;
8
+ resizeMode?: ImageResizeMode;
9
+ borderRadius?: number;
10
+ }
11
+ export declare function ImageComponent({ props }: PushframeComponentProps<ImageProps>): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=ImageComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageComponent.d.ts","sourceRoot":"","sources":["../../../src/components/ImageComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEzE,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,uBAAuB,CAAC,UAAU,CAAC,2CAsC5E"}
@@ -0,0 +1,48 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface PushFrameSlotProps {
3
+ /** ID of the screen/component to fetch from the delivery service. */
4
+ id: string;
5
+ /**
6
+ * Data context local to this slot. Merged with the Provider context;
7
+ * local keys win on conflict.
8
+ */
9
+ context?: Record<string, unknown>;
10
+ /**
11
+ * External loading signal from the host app. When true, loading UI is shown
12
+ * even if the schema has already been fetched.
13
+ */
14
+ isLoading?: boolean;
15
+ /**
16
+ * Loading UI shown while isLoading=true OR schema is being fetched.
17
+ * Falls back to Provider-level loadingComponent.
18
+ */
19
+ loadingComponent?: ReactNode;
20
+ /**
21
+ * Fallback UI shown on fetch error or unresolvable component type.
22
+ * Falls back to Provider-level fallbackComponent.
23
+ */
24
+ fallbackComponent?: ReactNode;
25
+ /**
26
+ * Slot-level action handler. Return true to stop the action from bubbling
27
+ * to the Provider-level onAction.
28
+ */
29
+ onAction?: (action: string, payload?: Record<string, unknown>) => boolean | void;
30
+ }
31
+ interface PushFrameComponentInternalProps extends PushFrameSlotProps {
32
+ /** Resource type — determines which delivery endpoint to hit. */
33
+ resourceType: 'screens' | 'components';
34
+ /** When true, wraps the rendered output with flex:1 (used by Screen). */
35
+ fullscreen?: boolean;
36
+ }
37
+ declare function PushFrameComponentInternal({ id, resourceType, context: slotContext, isLoading: externalLoading, loadingComponent: slotLoading, fallbackComponent: slotFallback, onAction: slotOnAction, fullscreen, }: PushFrameComponentInternalProps): import("react/jsx-runtime").JSX.Element | null;
38
+ /**
39
+ * Fetches a component schema from GET /components/:id[/:appVersion] on the
40
+ * delivery service and renders it inline using RecursiveRenderer.
41
+ *
42
+ * Context is merged: Provider context → slot context (local wins).
43
+ * Actions bubble: slot onAction → Provider onAction.
44
+ * Built-in actions (show-toast, show-bottom-sheet, etc.) are handled internally.
45
+ */
46
+ export declare function PushFrameComponent(props: PushFrameSlotProps): import("react/jsx-runtime").JSX.Element;
47
+ export { PushFrameComponentInternal };
48
+ //# sourceMappingURL=PushFrameComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PushFrameComponent.d.ts","sourceRoot":"","sources":["../../../src/components/PushFrameComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,OAAO,CAAC;AASrD,MAAM,WAAW,kBAAkB;IACjC,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAC;IACX;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,GAAG,IAAI,CAAC;CAClF;AA+BD,UAAU,+BAAgC,SAAQ,kBAAkB;IAClE,iEAAiE;IACjE,YAAY,EAAE,SAAS,GAAG,YAAY,CAAC;IACvC,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,iBAAS,0BAA0B,CAAC,EAClC,EAAE,EACF,YAAY,EACZ,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,eAAe,EAC1B,gBAAgB,EAAE,WAAW,EAC7B,iBAAiB,EAAE,YAAY,EAC/B,QAAQ,EAAE,YAAY,EACtB,UAAU,GACX,EAAE,+BAA+B,kDAoHjC;AAMD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,2CAE3D;AAGD,OAAO,EAAE,0BAA0B,EAAE,CAAC"}
@@ -0,0 +1,51 @@
1
+ import React from 'react';
2
+ import type { ReactNode } from 'react';
3
+ export interface PushFrameProviderProps {
4
+ /** Pushframe API key — sent as Authorization header on all fetches. */
5
+ apiKey: string;
6
+ /**
7
+ * Runtime data context. Screens/Components bind to this via {{expressions}}.
8
+ * Merged at the Provider level; slot-level context wins on conflict.
9
+ */
10
+ context?: Record<string, unknown>;
11
+ /**
12
+ * Base URL of the Pushframe delivery service.
13
+ * Defaults to the production endpoint: https://api.pushframe.io
14
+ */
15
+ baseUrl?: string;
16
+ /**
17
+ * Semver string appended to fetch paths for schema version targeting.
18
+ * e.g. "1.2.3" → GET /screens/home/1.2.3
19
+ * When not provided, "null" is sent as the appVersion in the URL.
20
+ */
21
+ appVersion?: string;
22
+ /**
23
+ * Developer-registered native components merged into the ComponentRegistry.
24
+ * Built-in types cannot be overridden — conflicting keys are warned and skipped.
25
+ */
26
+ components?: Record<string, React.ComponentType<unknown>>;
27
+ /** Default loading UI shown while schema is fetching or isLoading=true. */
28
+ loadingComponent?: ReactNode;
29
+ /** Default fallback UI shown on fetch error or unknown component type. */
30
+ fallbackComponent?: ReactNode;
31
+ /**
32
+ * Global action handler. Receives actions that are not handled as built-ins
33
+ * and were not stopped by a slot-level onAction.
34
+ */
35
+ onAction?: (action: string, payload?: Record<string, unknown>) => void;
36
+ /** Called whenever a fetch or render error occurs. */
37
+ onError?: (error: Error) => void;
38
+ children: ReactNode;
39
+ }
40
+ /**
41
+ * Root provider for the PushFrame SDK.
42
+ *
43
+ * Wrap your app (or a subtree) in this provider. All PushFrame.Screen and
44
+ * PushFrame.Component slots inside will fetch their schemas from the delivery
45
+ * service and render them using the shared ComponentRegistry and context.
46
+ *
47
+ * Also renders the ToastHost and BottomSheetHost overlay hosts at root level
48
+ * so any component in the tree can trigger them via built-in actions.
49
+ */
50
+ export declare function PushFrameProvider({ apiKey, context, baseUrl, appVersion, components, loadingComponent, fallbackComponent, onAction, onError, children, }: PushFrameProviderProps): import("react/jsx-runtime").JSX.Element;
51
+ //# sourceMappingURL=PushFrameProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PushFrameProvider.d.ts","sourceRoot":"","sources":["../../../src/components/PushFrameProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAqBvC,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACvE,sDAAsD;IACtD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAMD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,OAAY,EACZ,OAA0B,EAC1B,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,QAAQ,EACR,OAAO,EACP,QAAQ,GACT,EAAE,sBAAsB,2CA2FxB"}
@@ -0,0 +1,15 @@
1
+ import type { PushFrameSlotProps } from './PushFrameComponent';
2
+ /**
3
+ * Fetches a screen schema from GET /screens/:id[/:appVersion] on the delivery
4
+ * service and renders it with flex:1 sizing (full-page layout).
5
+ *
6
+ * Identical to PushFrame.Component in behaviour, but:
7
+ * - Fetches from /screens/:id instead of /components/:id
8
+ * - Applies flex:1 to its container so it fills the available space
9
+ *
10
+ * Context is merged: Provider context → slot context (local wins).
11
+ * Actions bubble: slot onAction → Provider onAction.
12
+ * Built-in actions (show-toast, show-bottom-sheet, etc.) are handled internally.
13
+ */
14
+ export declare function PushFrameScreen(props: PushFrameSlotProps): import("react/jsx-runtime").JSX.Element;
15
+ //# sourceMappingURL=PushFrameScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PushFrameScreen.d.ts","sourceRoot":"","sources":["../../../src/components/PushFrameScreen.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,kBAAkB,2CAMxD"}
@@ -0,0 +1,19 @@
1
+ import type { PushframeComponentProps } from '../registry';
2
+ export interface ScrollViewProps {
3
+ horizontal?: boolean;
4
+ padding?: number;
5
+ paddingTop?: number;
6
+ paddingBottom?: number;
7
+ paddingLeft?: number;
8
+ paddingRight?: number;
9
+ backgroundColor?: string;
10
+ flex?: number;
11
+ showsScrollIndicator?: boolean;
12
+ contentPadding?: number;
13
+ contentPaddingTop?: number;
14
+ contentPaddingBottom?: number;
15
+ contentPaddingLeft?: number;
16
+ contentPaddingRight?: number;
17
+ }
18
+ export declare function ScrollViewComponent({ props, children }: PushframeComponentProps<ScrollViewProps>): import("react/jsx-runtime").JSX.Element;
19
+ //# sourceMappingURL=ScrollViewComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScrollViewComponent.d.ts","sourceRoot":"","sources":["../../../src/components/ScrollViewComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,uBAAuB,CAAC,eAAe,CAAC,2CA2ChG"}
@@ -0,0 +1,16 @@
1
+ import type { PushframeComponentProps } from '../registry';
2
+ export interface StackProps {
3
+ direction?: 'vertical' | 'horizontal';
4
+ padding?: number;
5
+ paddingTop?: number;
6
+ paddingBottom?: number;
7
+ paddingLeft?: number;
8
+ paddingRight?: number;
9
+ gap?: number;
10
+ backgroundColor?: string;
11
+ flex?: number;
12
+ alignItems?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline';
13
+ justifyContent?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';
14
+ }
15
+ export declare function StackComponent({ props, children }: PushframeComponentProps<StackProps>): import("react/jsx-runtime").JSX.Element;
16
+ //# sourceMappingURL=StackComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StackComponent.d.ts","sourceRoot":"","sources":["../../../src/components/StackComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAC3E,cAAc,CAAC,EACX,YAAY,GACZ,UAAU,GACV,QAAQ,GACR,eAAe,GACf,cAAc,GACd,cAAc,CAAC;CACpB;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,uBAAuB,CAAC,UAAU,CAAC,2CAmCtF"}
@@ -0,0 +1,13 @@
1
+ import type { PushframeComponentProps } from '../registry';
2
+ export type TextSize = 'heading' | 'subheading' | 'body' | 'caption';
3
+ export type TextWeight = 'normal' | 'medium' | 'bold';
4
+ export interface TextProps {
5
+ content?: string;
6
+ size?: TextSize;
7
+ weight?: TextWeight;
8
+ color?: string;
9
+ align?: 'left' | 'center' | 'right';
10
+ numberOfLines?: number;
11
+ }
12
+ export declare function TextComponent({ props }: PushframeComponentProps<TextProps>): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=TextComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextComponent.d.ts","sourceRoot":"","sources":["../../../src/components/TextComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,YAAY,GAAG,MAAM,GAAG,SAAS,CAAC;AACrE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAeD,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE,uBAAuB,CAAC,SAAS,CAAC,2CAwB1E"}
@@ -0,0 +1,12 @@
1
+ import type { Condition } from './schema';
2
+ import type { PushframeContext } from './bindings';
3
+ /**
4
+ * Evaluate a condition against the current context.
5
+ *
6
+ * Returns true → node should render
7
+ * Returns false → node should be skipped
8
+ *
9
+ * When no condition is provided, always returns true.
10
+ */
11
+ export declare function evaluateCondition(condition: Condition | undefined, context: PushframeContext): boolean;
12
+ //# sourceMappingURL=conditions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditions.d.ts","sourceRoot":"","sources":["../../src/conditions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,SAAS,GAAG,SAAS,EAChC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CA8BT"}