@greensecurity/javascript-sdk 0.46.0-beta.10 → 0.46.0-beta.12

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 (183) hide show
  1. package/dist/commonjs/__tests__/apps/contract.test.js +288 -4
  2. package/dist/commonjs/__tests__/apps/contract.test.js.map +1 -1
  3. package/dist/commonjs/__tests__/apps/devpreview-routes.test.d.ts +2 -0
  4. package/dist/commonjs/__tests__/apps/devpreview-routes.test.d.ts.map +1 -0
  5. package/dist/commonjs/__tests__/apps/devpreview-routes.test.js +86 -0
  6. package/dist/commonjs/__tests__/apps/devpreview-routes.test.js.map +1 -0
  7. package/dist/commonjs/__tests__/apps/kit/example.test.js +84 -4
  8. package/dist/commonjs/__tests__/apps/kit/example.test.js.map +1 -1
  9. package/dist/commonjs/__tests__/apps/kit/pages.test.d.ts +2 -0
  10. package/dist/commonjs/__tests__/apps/kit/pages.test.d.ts.map +1 -0
  11. package/dist/commonjs/__tests__/apps/kit/pages.test.js +119 -0
  12. package/dist/commonjs/__tests__/apps/kit/pages.test.js.map +1 -0
  13. package/dist/commonjs/__tests__/apps/kit/render.test.js +24 -0
  14. package/dist/commonjs/__tests__/apps/kit/render.test.js.map +1 -1
  15. package/dist/commonjs/__tests__/apps/kit/store.test.d.ts +2 -0
  16. package/dist/commonjs/__tests__/apps/kit/store.test.d.ts.map +1 -0
  17. package/dist/commonjs/__tests__/apps/kit/store.test.js +123 -0
  18. package/dist/commonjs/__tests__/apps/kit/store.test.js.map +1 -0
  19. package/dist/commonjs/__tests__/apps/post-install-page.test.d.ts +2 -0
  20. package/dist/commonjs/__tests__/apps/post-install-page.test.d.ts.map +1 -0
  21. package/dist/commonjs/__tests__/apps/post-install-page.test.js +110 -0
  22. package/dist/commonjs/__tests__/apps/post-install-page.test.js.map +1 -0
  23. package/dist/commonjs/__tests__/apps/routes.test.d.ts +2 -0
  24. package/dist/commonjs/__tests__/apps/routes.test.d.ts.map +1 -0
  25. package/dist/commonjs/__tests__/apps/routes.test.js +238 -0
  26. package/dist/commonjs/__tests__/apps/routes.test.js.map +1 -0
  27. package/dist/commonjs/__tests__/vendors.test.js +1 -1
  28. package/dist/commonjs/__tests__/webhooks.test.js +1 -1
  29. package/dist/commonjs/__tests__/webhooks.test.js.map +1 -1
  30. package/dist/commonjs/__tests__/zones.test.js +22 -4
  31. package/dist/commonjs/__tests__/zones.test.js.map +1 -1
  32. package/dist/commonjs/apps/components.d.ts +321 -0
  33. package/dist/commonjs/apps/components.d.ts.map +1 -1
  34. package/dist/commonjs/apps/components.js +168 -2
  35. package/dist/commonjs/apps/components.js.map +1 -1
  36. package/dist/commonjs/apps/context.d.ts +24 -0
  37. package/dist/commonjs/apps/context.d.ts.map +1 -1
  38. package/dist/commonjs/apps/context.js.map +1 -1
  39. package/dist/commonjs/apps/devpreview.d.ts +20 -3
  40. package/dist/commonjs/apps/devpreview.d.ts.map +1 -1
  41. package/dist/commonjs/apps/devpreview.js +18 -7
  42. package/dist/commonjs/apps/devpreview.js.map +1 -1
  43. package/dist/commonjs/apps/hooks/index.d.ts +33 -2
  44. package/dist/commonjs/apps/hooks/index.d.ts.map +1 -1
  45. package/dist/commonjs/apps/hooks/index.js +41 -1
  46. package/dist/commonjs/apps/hooks/index.js.map +1 -1
  47. package/dist/commonjs/apps/hooks/store.d.ts +48 -0
  48. package/dist/commonjs/apps/hooks/store.d.ts.map +1 -0
  49. package/dist/commonjs/apps/hooks/store.js +87 -0
  50. package/dist/commonjs/apps/hooks/store.js.map +1 -0
  51. package/dist/commonjs/apps/manifest.d.ts +64 -3
  52. package/dist/commonjs/apps/manifest.d.ts.map +1 -1
  53. package/dist/commonjs/apps/manifest.js +128 -27
  54. package/dist/commonjs/apps/manifest.js.map +1 -1
  55. package/dist/commonjs/apps/protocol.d.ts +1 -1
  56. package/dist/commonjs/apps/protocol.d.ts.map +1 -1
  57. package/dist/commonjs/apps/route.d.ts +11 -1
  58. package/dist/commonjs/apps/route.d.ts.map +1 -1
  59. package/dist/commonjs/apps/route.js +13 -7
  60. package/dist/commonjs/apps/route.js.map +1 -1
  61. package/dist/commonjs/apps/routes.d.ts +65 -0
  62. package/dist/commonjs/apps/routes.d.ts.map +1 -0
  63. package/dist/commonjs/apps/routes.js +202 -0
  64. package/dist/commonjs/apps/routes.js.map +1 -0
  65. package/dist/commonjs/apps/surfaces.d.ts +20 -2
  66. package/dist/commonjs/apps/surfaces.d.ts.map +1 -1
  67. package/dist/commonjs/apps/surfaces.js +45 -7
  68. package/dist/commonjs/apps/surfaces.js.map +1 -1
  69. package/dist/commonjs/apps/testing/index.d.ts +17 -1
  70. package/dist/commonjs/apps/testing/index.d.ts.map +1 -1
  71. package/dist/commonjs/apps/testing/index.js +50 -1
  72. package/dist/commonjs/apps/testing/index.js.map +1 -1
  73. package/dist/commonjs/apps/ui/index.d.ts +13 -0
  74. package/dist/commonjs/apps/ui/index.d.ts.map +1 -1
  75. package/dist/commonjs/apps/ui/index.js +19 -2
  76. package/dist/commonjs/apps/ui/index.js.map +1 -1
  77. package/dist/commonjs/lib/config.d.ts +2 -2
  78. package/dist/commonjs/lib/config.js +2 -2
  79. package/dist/esm/__tests__/apps/contract.test.js +289 -5
  80. package/dist/esm/__tests__/apps/contract.test.js.map +1 -1
  81. package/dist/esm/__tests__/apps/devpreview-routes.test.d.ts +2 -0
  82. package/dist/esm/__tests__/apps/devpreview-routes.test.d.ts.map +1 -0
  83. package/dist/esm/__tests__/apps/devpreview-routes.test.js +84 -0
  84. package/dist/esm/__tests__/apps/devpreview-routes.test.js.map +1 -0
  85. package/dist/esm/__tests__/apps/kit/example.test.js +85 -5
  86. package/dist/esm/__tests__/apps/kit/example.test.js.map +1 -1
  87. package/dist/esm/__tests__/apps/kit/pages.test.d.ts +2 -0
  88. package/dist/esm/__tests__/apps/kit/pages.test.d.ts.map +1 -0
  89. package/dist/esm/__tests__/apps/kit/pages.test.js +117 -0
  90. package/dist/esm/__tests__/apps/kit/pages.test.js.map +1 -0
  91. package/dist/esm/__tests__/apps/kit/render.test.js +25 -1
  92. package/dist/esm/__tests__/apps/kit/render.test.js.map +1 -1
  93. package/dist/esm/__tests__/apps/kit/store.test.d.ts +2 -0
  94. package/dist/esm/__tests__/apps/kit/store.test.d.ts.map +1 -0
  95. package/dist/esm/__tests__/apps/kit/store.test.js +121 -0
  96. package/dist/esm/__tests__/apps/kit/store.test.js.map +1 -0
  97. package/dist/esm/__tests__/apps/post-install-page.test.d.ts +2 -0
  98. package/dist/esm/__tests__/apps/post-install-page.test.d.ts.map +1 -0
  99. package/dist/esm/__tests__/apps/post-install-page.test.js +108 -0
  100. package/dist/esm/__tests__/apps/post-install-page.test.js.map +1 -0
  101. package/dist/esm/__tests__/apps/routes.test.d.ts +2 -0
  102. package/dist/esm/__tests__/apps/routes.test.d.ts.map +1 -0
  103. package/dist/esm/__tests__/apps/routes.test.js +236 -0
  104. package/dist/esm/__tests__/apps/routes.test.js.map +1 -0
  105. package/dist/esm/__tests__/vendors.test.js +1 -1
  106. package/dist/esm/__tests__/webhooks.test.js +1 -1
  107. package/dist/esm/__tests__/webhooks.test.js.map +1 -1
  108. package/dist/esm/__tests__/zones.test.js +22 -4
  109. package/dist/esm/__tests__/zones.test.js.map +1 -1
  110. package/dist/esm/apps/components.d.ts +321 -0
  111. package/dist/esm/apps/components.d.ts.map +1 -1
  112. package/dist/esm/apps/components.js +163 -1
  113. package/dist/esm/apps/components.js.map +1 -1
  114. package/dist/esm/apps/context.d.ts +24 -0
  115. package/dist/esm/apps/context.d.ts.map +1 -1
  116. package/dist/esm/apps/context.js.map +1 -1
  117. package/dist/esm/apps/devpreview.d.ts +20 -3
  118. package/dist/esm/apps/devpreview.d.ts.map +1 -1
  119. package/dist/esm/apps/devpreview.js +19 -8
  120. package/dist/esm/apps/devpreview.js.map +1 -1
  121. package/dist/esm/apps/hooks/index.d.ts +33 -2
  122. package/dist/esm/apps/hooks/index.d.ts.map +1 -1
  123. package/dist/esm/apps/hooks/index.js +37 -1
  124. package/dist/esm/apps/hooks/index.js.map +1 -1
  125. package/dist/esm/apps/hooks/store.d.ts +48 -0
  126. package/dist/esm/apps/hooks/store.d.ts.map +1 -0
  127. package/dist/esm/apps/hooks/store.js +84 -0
  128. package/dist/esm/apps/hooks/store.js.map +1 -0
  129. package/dist/esm/apps/manifest.d.ts +64 -3
  130. package/dist/esm/apps/manifest.d.ts.map +1 -1
  131. package/dist/esm/apps/manifest.js +116 -26
  132. package/dist/esm/apps/manifest.js.map +1 -1
  133. package/dist/esm/apps/protocol.d.ts +1 -1
  134. package/dist/esm/apps/protocol.d.ts.map +1 -1
  135. package/dist/esm/apps/route.d.ts +11 -1
  136. package/dist/esm/apps/route.d.ts.map +1 -1
  137. package/dist/esm/apps/route.js +14 -8
  138. package/dist/esm/apps/route.js.map +1 -1
  139. package/dist/esm/apps/routes.d.ts +65 -0
  140. package/dist/esm/apps/routes.d.ts.map +1 -0
  141. package/dist/esm/apps/routes.js +194 -0
  142. package/dist/esm/apps/routes.js.map +1 -0
  143. package/dist/esm/apps/surfaces.d.ts +20 -2
  144. package/dist/esm/apps/surfaces.d.ts.map +1 -1
  145. package/dist/esm/apps/surfaces.js +39 -2
  146. package/dist/esm/apps/surfaces.js.map +1 -1
  147. package/dist/esm/apps/testing/index.d.ts +17 -1
  148. package/dist/esm/apps/testing/index.d.ts.map +1 -1
  149. package/dist/esm/apps/testing/index.js +49 -1
  150. package/dist/esm/apps/testing/index.js.map +1 -1
  151. package/dist/esm/apps/ui/index.d.ts +13 -0
  152. package/dist/esm/apps/ui/index.d.ts.map +1 -1
  153. package/dist/esm/apps/ui/index.js +17 -1
  154. package/dist/esm/apps/ui/index.js.map +1 -1
  155. package/dist/esm/lib/config.d.ts +2 -2
  156. package/dist/esm/lib/config.js +2 -2
  157. package/examples/apps/hello-green/src/store.ts +15 -0
  158. package/jsr.json +1 -1
  159. package/package.json +1 -1
  160. package/src/__tests__/apps/contract.test.ts +305 -4
  161. package/src/__tests__/apps/devpreview-routes.test.ts +103 -0
  162. package/src/__tests__/apps/kit/example.test.ts +94 -5
  163. package/src/__tests__/apps/kit/pages.test.ts +137 -0
  164. package/src/__tests__/apps/kit/render.test.ts +35 -1
  165. package/src/__tests__/apps/kit/store.test.ts +149 -0
  166. package/src/__tests__/apps/post-install-page.test.ts +126 -0
  167. package/src/__tests__/apps/routes.test.ts +318 -0
  168. package/src/__tests__/vendors.test.ts +1 -1
  169. package/src/__tests__/webhooks.test.ts +1 -1
  170. package/src/__tests__/zones.test.ts +22 -4
  171. package/src/apps/components.ts +183 -1
  172. package/src/apps/context.ts +25 -0
  173. package/src/apps/devpreview.ts +20 -7
  174. package/src/apps/hooks/index.ts +42 -2
  175. package/src/apps/hooks/store.ts +115 -0
  176. package/src/apps/manifest.ts +151 -27
  177. package/src/apps/protocol.ts +1 -1
  178. package/src/apps/route.ts +22 -10
  179. package/src/apps/routes.ts +230 -0
  180. package/src/apps/surfaces.ts +45 -12
  181. package/src/apps/testing/index.ts +48 -2
  182. package/src/apps/ui/index.ts +18 -1
  183. package/src/lib/config.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../src/apps/components.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../src/apps/components.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,18 @@ export interface ObjectContext {
6
6
  object: ObjectType;
7
7
  id: number;
8
8
  }
9
+ /**
10
+ * The app page a view is rendered on (`environment.surfaceId` is `"page"`). Paths are in the app's
11
+ * own space, without the host's `/{portal}/apps/{appId}/pages` prefix.
12
+ */
13
+ export interface PageRoute {
14
+ /** The declared route path from `ui_extensions.routes`, e.g. `/reports/:id`. */
15
+ path: string;
16
+ /** The concrete path being shown, e.g. `/reports/7`. */
17
+ pathname: string;
18
+ /** Param values by name (`{ id: "7" }`), percent-decoded. Always strings. */
19
+ params: Record<string, string>;
20
+ }
9
21
  export interface AppUserToken {
10
22
  /** `gsu_…`. Acts as the viewer, limited to the app's manifest permissions ∩ the viewer's role. */
11
23
  accessToken: string;
@@ -48,12 +60,24 @@ export interface ExtensionContext {
48
60
  portal: Portal;
49
61
  platform: "web" | "ios" | "android";
50
62
  objectContext?: ObjectContext;
63
+ /**
64
+ * The query string of the page's address. On an app page anyone can set these by sharing a
65
+ * link, so treat them as untrusted user input. Empty on drawer, inline and settings views.
66
+ */
51
67
  queryParams: Record<string, string>;
68
+ /**
69
+ * The `envParams` of the `HostApi.navigate` call, made by this app, that led to this view.
70
+ * Only this app can set them, they never appear in an address, and each navigation delivers
71
+ * them to one view once. Empty when the view did not open from a navigation.
72
+ */
73
+ navParams: Record<string, string>;
52
74
  constants: AppConstants;
53
75
  /** Base URL for `@greensecurity/javascript-sdk`, e.g. `https://www.greensecurityllc.com/api`. */
54
76
  apiBaseUrl: string;
55
77
  /** Set while the view is served by `apps-cli dev` instead of the published bundle. */
56
78
  devSessionId?: string;
79
+ /** Set on app pages only: which of the app's routes is shown, and its params. */
80
+ route?: PageRoute;
57
81
  };
58
82
  /** Injected by the host and replaced through `SandboxExports.updateContext` before expiry. */
59
83
  auth: AppTokens;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/apps/context.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEnE,eAAO,MAAM,gBAAgB,EAAG,CAAU,CAAC;AAE3C,0GAA0G;AAC1G,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,YAAY;IAC3B,kGAAkG;IAClG,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,2FAA2F;IAC3F,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,oBAAoB,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,OAAO,gBAAgB,CAAC;IACzC,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,GAAG,EAAE;YAAE,UAAU,EAAE,MAAM,EAAE,CAAC;YAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;KACnD,CAAC;IACF,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,WAAW,EAAE;QACX,SAAS,EAAE,SAAS,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,SAAS,EAAE,YAAY,CAAC;QACxB,iGAAiG;QACjG,UAAU,EAAE,MAAM,CAAC;QACnB,sFAAsF;QACtF,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,8FAA8F;IAC9F,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,uEAAuE;AACvE,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAEjG"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/apps/context.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEnE,eAAO,MAAM,gBAAgB,EAAG,CAAU,CAAC;AAE3C,0GAA0G;AAC1G,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,kGAAkG;IAClG,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,2FAA2F;IAC3F,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,oBAAoB,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,OAAO,gBAAgB,CAAC;IACzC,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,GAAG,EAAE;YAAE,UAAU,EAAE,MAAM,EAAE,CAAC;YAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;KACnD,CAAC;IACF,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,WAAW,EAAE;QACX,SAAS,EAAE,SAAS,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B;;;WAGG;QACH,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC;;;;WAIG;QACH,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAClC,SAAS,EAAE,YAAY,CAAC;QACxB,iGAAiG;QACjG,UAAU,EAAE,MAAM,CAAC;QACnB,sFAAsF;QACtF,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iFAAiF;QACjF,KAAK,CAAC,EAAE,SAAS,CAAC;KACnB,CAAC;IACF,8FAA8F;IAC9F,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,uEAAuE;AACvE,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAEjG"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/apps/context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAU,CAAC;AA6D3C,uEAAuE;AACvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAM,CAAC;AAE9C,MAAM,UAAU,iBAAiB,CAAC,KAA4B,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;IACtF,OAAO,KAAK,CAAC,SAAS,GAAG,GAAG,IAAI,uBAAuB,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/apps/context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAU,CAAC;AAsF3C,uEAAuE;AACvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAM,CAAC;AAE9C,MAAM,UAAU,iBAAiB,CAAC,KAA4B,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;IACtF,OAAO,KAAK,CAAC,SAAS,GAAG,GAAG,IAAI,uBAAuB,CAAC;AAC1D,CAAC"}
@@ -8,7 +8,9 @@ export * from "./devsession.js";
8
8
  */
9
9
  export declare const DEV_CSP_SOURCE_PATTERN: string;
10
10
  /**
11
- * `green-app.dev.json`. It may override constants, CSP sources and views while iterating.
11
+ * `green-app.dev.json`. It may override constants, CSP sources, views and routes (app pages) while
12
+ * iterating, so a new view or page can be previewed before it is published. Views and routes are
13
+ * UI placements and grant nothing, and a dev session is shown only to its developer.
12
14
  * Permissions and the bundle cannot be overridden: permissions are granted to the app's role on
13
15
  * `upload`, and the bundle comes from the dev server.
14
16
  */
@@ -22,6 +24,20 @@ export declare const devManifestSchema: z.ZodObject<{
22
24
  }>;
23
25
  component: z.ZodString;
24
26
  }, z.core.$strict>>>;
27
+ routes: z.ZodOptional<z.ZodArray<z.ZodObject<{
28
+ path: z.ZodString;
29
+ component: z.ZodString;
30
+ title: z.ZodString;
31
+ portals: z.ZodOptional<z.ZodArray<z.ZodEnum<{
32
+ facility: "facility";
33
+ system: "system";
34
+ company: "company";
35
+ vendor: "vendor";
36
+ }>>>;
37
+ navigation: z.ZodOptional<z.ZodObject<{
38
+ label: z.ZodOptional<z.ZodString>;
39
+ }, z.core.$strict>>;
40
+ }, z.core.$strict>>>;
25
41
  csp: z.ZodOptional<z.ZodObject<{
26
42
  connect_src: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodString]>>>;
27
43
  image_src: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodString]>>>;
@@ -30,8 +46,9 @@ export declare const devManifestSchema: z.ZodObject<{
30
46
  }, z.core.$strict>;
31
47
  export type DevManifest = z.infer<typeof devManifestSchema>;
32
48
  /**
33
- * Applies a dev manifest over the published one. Object fields merge; arrays (`views`, CSP
34
- * sources) replace, so a developer can drop a view locally without editing the base file.
49
+ * Applies a dev manifest over the published one. Object fields merge; arrays (`views`, `routes`,
50
+ * CSP sources) replace, so a developer can drop a view or a page locally without editing the base
51
+ * file.
35
52
  * Throws {@link DevManifestError} if the merged CSP sources exceed the header budget.
36
53
  */
37
54
  export declare function mergeDevManifest(base: AppManifestV2, dev: DevManifest): AppManifestV2;
@@ -1 +1 @@
1
- {"version":3,"file":"devpreview.d.ts","sourceRoot":"","sources":["../../../src/apps/devpreview.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAWL,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AAKvB,cAAc,iBAAiB,CAAC;AAGhC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAGV,CAAC;AAO1B;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;kBAiB1B,CAAC;AAEL,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,WAAW,GAAG,aAAa,CAuCrF;AAED,8FAA8F;AAC9F,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,SAAkB,IAAI,sBAAsB;CAC7C"}
1
+ {"version":3,"file":"devpreview.d.ts","sourceRoot":"","sources":["../../../src/apps/devpreview.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAcL,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AAKvB,cAAc,iBAAiB,CAAC;AAGhC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAGV,CAAC;AAO1B;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAmB1B,CAAC;AAEL,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,WAAW,GAAG,aAAa,CA4CrF;AAED,8FAA8F;AAC9F,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,SAAkB,IAAI,sBAAsB;CAC7C"}
@@ -7,7 +7,7 @@
7
7
  * the bootstrap checks the signature and then the bundle's hash against the signed value.
8
8
  */
9
9
  import * as z from "zod/v4";
10
- import { addCspBudgetIssue, addDuplicateViewportIssues, CSP_SOURCES_MAX_TOTAL_CHARS, cspSourcesTotalChars, appConstantsSchema, appViewSchema, CSP_PATH_CHAR, CSP_SOURCE_MAX_CHARS, CSP_SOURCE_PATTERN, CSP_SOURCES_MAX_PER_DIRECTIVE, } from "./manifest.js";
10
+ import { addCspBudgetIssue, addDuplicateViewportIssues, addRouteIssues, APP_ROUTES_MAX, appRouteSchema, CSP_SOURCES_MAX_TOTAL_CHARS, cspSourcesTotalChars, appConstantsSchema, appViewSchema, CSP_PATH_CHAR, CSP_SOURCE_MAX_CHARS, CSP_SOURCE_PATTERN, CSP_SOURCES_MAX_PER_DIRECTIVE, } from "./manifest.js";
11
11
  import { IPV4_OCTET_PATTERN, PORT_PATTERN } from "./url.js";
12
12
  // The zod-free half of the dev-preview contract lives in `devsession.ts` so the sandbox
13
13
  // bootstrap can import it without bundling zod; re-exported here unchanged.
@@ -25,7 +25,9 @@ const devCspSourceSchema = z.union([
25
25
  z.string().max(CSP_SOURCE_MAX_CHARS).regex(new RegExp(DEV_CSP_SOURCE_PATTERN)),
26
26
  ]);
27
27
  /**
28
- * `green-app.dev.json`. It may override constants, CSP sources and views while iterating.
28
+ * `green-app.dev.json`. It may override constants, CSP sources, views and routes (app pages) while
29
+ * iterating, so a new view or page can be previewed before it is published. Views and routes are
30
+ * UI placements and grant nothing, and a dev session is shown only to its developer.
29
31
  * Permissions and the bundle cannot be overridden: permissions are granted to the app's role on
30
32
  * `upload`, and the bundle comes from the dev server.
31
33
  */
@@ -35,21 +37,24 @@ export const devManifestSchema = z
35
37
  constants: appConstantsSchema.optional(),
36
38
  ui_extensions: z.strictObject({
37
39
  views: z.array(appViewSchema).max(200).optional(),
40
+ routes: z.array(appRouteSchema).max(APP_ROUTES_MAX).optional(),
38
41
  csp: z.strictObject({
39
42
  connect_src: z.array(devCspSourceSchema).max(CSP_SOURCES_MAX_PER_DIRECTIVE).optional(),
40
43
  image_src: z.array(devCspSourceSchema).max(CSP_SOURCES_MAX_PER_DIRECTIVE).optional(),
41
44
  }).optional(),
42
45
  }).optional(),
43
46
  })
44
- // Same invariant as published manifests: dev views replace the published list, so a duplicate
45
- // here would make view resolution order-dependent.
47
+ // Same invariants as published manifests: dev views and routes replace the published lists, so a
48
+ // duplicate here would make view resolution or route matching order-dependent.
46
49
  .superRefine((dev, ctx) => {
47
50
  addDuplicateViewportIssues(dev.ui_extensions?.views, ctx, ["ui_extensions", "views"]);
51
+ addRouteIssues(dev.ui_extensions?.routes, ctx, ["ui_extensions", "routes"]);
48
52
  addCspBudgetIssue(dev.ui_extensions?.csp, ctx, ["ui_extensions", "csp"]);
49
53
  });
50
54
  /**
51
- * Applies a dev manifest over the published one. Object fields merge; arrays (`views`, CSP
52
- * sources) replace, so a developer can drop a view locally without editing the base file.
55
+ * Applies a dev manifest over the published one. Object fields merge; arrays (`views`, `routes`,
56
+ * CSP sources) replace, so a developer can drop a view or a page locally without editing the base
57
+ * file.
53
58
  * Throws {@link DevManifestError} if the merged CSP sources exceed the header budget.
54
59
  */
55
60
  export function mergeDevManifest(base, dev) {
@@ -61,14 +66,20 @@ export function mergeDevManifest(base, dev) {
61
66
  }
62
67
  if (base.ui_extensions === undefined && dev.ui_extensions === undefined)
63
68
  return merged;
64
- // A preview renders views, and every rendered view needs a version (`ExtensionContext.app.version`).
65
- // A dev file cannot supply one, so a versionless (v1) base cannot be previewed with views.
69
+ // A preview renders views and pages, and every rendered one needs a version
70
+ // (`ExtensionContext.app.version`). A dev file cannot supply one, so a versionless (v1) base
71
+ // cannot be previewed with views or routes.
66
72
  if (devUi.views !== undefined && devUi.views.length > 0 && base.version === undefined) {
67
73
  throw new DevManifestError("the base manifest needs a version before its views can be previewed");
68
74
  }
75
+ if (devUi.routes !== undefined && devUi.routes.length > 0 && base.version === undefined) {
76
+ throw new DevManifestError("the base manifest needs a version before its routes can be previewed");
77
+ }
69
78
  const ui = { ...baseUi };
70
79
  if (devUi.views !== undefined)
71
80
  ui.views = devUi.views;
81
+ if (devUi.routes !== undefined)
82
+ ui.routes = devUi.routes;
72
83
  if (devUi.csp !== undefined) {
73
84
  ui.csp = {
74
85
  ...(baseUi.csp ?? { purpose: "Local development" }),
@@ -1 +1 @@
1
- {"version":3,"file":"devpreview.js","sourceRoot":"","sources":["../../../src/apps/devpreview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devpreview.js","sourceRoot":"","sources":["../../../src/apps/devpreview.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,35 @@
1
- import type { ExtensionContext } from "../context.js";
1
+ import type { ExtensionContext, PageRoute } from "../context.js";
2
2
  import { type HostApi, type ToastType } from "../protocol.js";
3
3
  import { type RouteDescriptor } from "../route.js";
4
+ export { createAppStore, type AppStore, type AppStoreListener, type AppStoreUpdate } from "./store.js";
4
5
  /** The context of the view being rendered. A new object after each host `updateContext`. */
5
6
  export declare function useExtensionContext(): ExtensionContext;
7
+ /**
8
+ * The app page being shown, on views rendered as one of the app's `ui_extensions.routes`
9
+ * (`environment.route`): the declared `path` (`/reports/:id`), the concrete `pathname`
10
+ * (`/reports/7`) and the decoded `params` (`{ id: "7" }`, always strings). `undefined` on every
11
+ * other view. Re-renders with the new route when the host moves to another path of the same page
12
+ * (an `updateContext`), so read params here rather than once on mount.
13
+ *
14
+ * ```tsx
15
+ * const route = usePageRoute();
16
+ * const id = Number(route?.params["id"]);
17
+ * ```
18
+ */
19
+ export declare function usePageRoute(): PageRoute | undefined;
20
+ /**
21
+ * The `envParams` this app passed to the `navigate` call that opened this view
22
+ * (`environment.navParams`). Only this app can set them, and they never appear in an address, so
23
+ * they are the place for navigation data the view relies on. The page's URL query
24
+ * (`environment.queryParams`) is different: anyone can put anything in a link, so treat it as
25
+ * untrusted input. Empty (`{}`) when the view did not open from a navigation.
26
+ *
27
+ * ```tsx
28
+ * // VendorPanel: navigate({ type: "appPage", path: "/reports", envParams: { vendorId: "42" } })
29
+ * const { vendorId } = useNavParams();
30
+ * ```
31
+ */
32
+ export declare function useNavParams(): Readonly<Record<string, string>>;
6
33
  /** The host API proxy for the view being rendered. Every method is async. */
7
34
  export declare function useHostApi(): HostApi;
8
35
  export interface ShowToastOptions {
@@ -15,7 +42,11 @@ export interface ShowToastOptions {
15
42
  * longer messages are rejected here rather than truncated by the host.
16
43
  */
17
44
  export declare function showToast(message: string, opts?: ShowToastOptions): Promise<void>;
18
- /** Asks the host to navigate. Apps name a destination; the host owns its routes. */
45
+ /**
46
+ * Asks the host to navigate. Apps name a destination; the host owns its routes. To open one of
47
+ * the app's own pages, pass a concrete path in the app's space:
48
+ * `navigate({ type: "appPage", path: "/reports/7" })` (not `/reports/:id`).
49
+ */
19
50
  export declare function navigate(to: RouteDescriptor, opts?: {
20
51
  host?: HostApi;
21
52
  }): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/apps/hooks/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAoB,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAatE,4FAA4F;AAC5F,wBAAgB,mBAAmB,IAAI,gBAAgB,CAEtD;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAQD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,kGAAkG;IAClG,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBrF;AAED,oFAAoF;AACpF,wBAAgB,QAAQ,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAO1F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/apps/hooks/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAoB,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAGtE,OAAO,EAAE,cAAc,EAAE,KAAK,QAAQ,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAYvG,4FAA4F;AAC5F,wBAAgB,mBAAmB,IAAI,gBAAgB,CAEtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,SAAS,GAAG,SAAS,CAEpD;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE/D;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAQD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,kGAAkG;IAClG,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBrF;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAO1F"}
@@ -8,6 +8,7 @@ import { useContext } from "react";
8
8
  import { TOAST_MAX_LENGTH } from "../protocol.js";
9
9
  import { isRouteDescriptor } from "../route.js";
10
10
  import { AppSessionContext, currentSession } from "../runtime/session.js";
11
+ export { createAppStore } from "./store.js";
11
12
  const TOAST_TYPES = ["success", "caution", "pending"];
12
13
  function useSessionValue(hook) {
13
14
  const value = useContext(AppSessionContext);
@@ -20,6 +21,37 @@ function useSessionValue(hook) {
20
21
  export function useExtensionContext() {
21
22
  return useSessionValue("useExtensionContext").context;
22
23
  }
24
+ /**
25
+ * The app page being shown, on views rendered as one of the app's `ui_extensions.routes`
26
+ * (`environment.route`): the declared `path` (`/reports/:id`), the concrete `pathname`
27
+ * (`/reports/7`) and the decoded `params` (`{ id: "7" }`, always strings). `undefined` on every
28
+ * other view. Re-renders with the new route when the host moves to another path of the same page
29
+ * (an `updateContext`), so read params here rather than once on mount.
30
+ *
31
+ * ```tsx
32
+ * const route = usePageRoute();
33
+ * const id = Number(route?.params["id"]);
34
+ * ```
35
+ */
36
+ export function usePageRoute() {
37
+ return useSessionValue("usePageRoute").context.environment.route;
38
+ }
39
+ const NO_PARAMS = Object.freeze({});
40
+ /**
41
+ * The `envParams` this app passed to the `navigate` call that opened this view
42
+ * (`environment.navParams`). Only this app can set them, and they never appear in an address, so
43
+ * they are the place for navigation data the view relies on. The page's URL query
44
+ * (`environment.queryParams`) is different: anyone can put anything in a link, so treat it as
45
+ * untrusted input. Empty (`{}`) when the view did not open from a navigation.
46
+ *
47
+ * ```tsx
48
+ * // VendorPanel: navigate({ type: "appPage", path: "/reports", envParams: { vendorId: "42" } })
49
+ * const { vendorId } = useNavParams();
50
+ * ```
51
+ */
52
+ export function useNavParams() {
53
+ return useSessionValue("useNavParams").context.environment.navParams ?? NO_PARAMS;
54
+ }
23
55
  /** The host API proxy for the view being rendered. Every method is async. */
24
56
  export function useHostApi() {
25
57
  return useSessionValue("useHostApi").host;
@@ -52,7 +84,11 @@ export function showToast(message, opts = {}) {
52
84
  return Promise.reject(error);
53
85
  }
54
86
  }
55
- /** Asks the host to navigate. Apps name a destination; the host owns its routes. */
87
+ /**
88
+ * Asks the host to navigate. Apps name a destination; the host owns its routes. To open one of
89
+ * the app's own pages, pass a concrete path in the app's space:
90
+ * `navigate({ type: "appPage", path: "/reports/7" })` (not `/reports/:id`).
91
+ */
56
92
  export function navigate(to, opts = {}) {
57
93
  if (!isRouteDescriptor(to))
58
94
  return Promise.reject(new TypeError("navigate() needs a valid RouteDescriptor"));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/apps/hooks/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/apps/hooks/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ export type AppStoreListener<T> = (state: T, previous: T) => void;
2
+ /** Fields to change, or a function of the current state that returns them. */
3
+ export type AppStoreUpdate<T> = Partial<T> | ((state: T) => Partial<T>);
4
+ export interface AppStore<T extends object> {
5
+ /** The current state. The same object until a `setState` changes a field. */
6
+ getState(): T;
7
+ /**
8
+ * Shallow-merges `update` into the state, like React's class `setState`: fields left out keep
9
+ * their values. A new state object is made, and listeners run, only when a field changes
10
+ * (`Object.is`), so setting a field to its current value re-renders nothing.
11
+ */
12
+ setState(update: AppStoreUpdate<T>): void;
13
+ /** Calls `listener` after each change, with the new and the previous state. Returns the unsubscribe. */
14
+ subscribe(listener: AppStoreListener<T>): () => void;
15
+ /**
16
+ * Reads the store in a component and re-renders it when the value changes. Without a selector
17
+ * the component re-renders on every change; with one, only when the selected value changes
18
+ * (`Object.is`), so select a field (or derive a primitive) rather than build a new object.
19
+ * The subscription ends when the component unmounts.
20
+ */
21
+ useStore(): T;
22
+ useStore<S>(selector: (state: T) => S): S;
23
+ }
24
+ /**
25
+ * Creates a store that every view of this app can read and update. Create it once, at module
26
+ * level, in a file the views import:
27
+ *
28
+ * ```ts
29
+ * // src/store.ts
30
+ * export const notes = createAppStore({ saved: 0 });
31
+ * // in a view
32
+ * const saved = notes.useStore((s) => s.saved);
33
+ * notes.setState((s) => ({ saved: s.saved + 1 }));
34
+ * ```
35
+ *
36
+ * What it guarantees, and what it does not:
37
+ * - Shared by every view of this app that is open in the same browser tab (web) or the same app
38
+ * session (iOS, Android): a ContextView, its FocusView, the settings page and the app's pages
39
+ * all see one state, and an update in one re-renders the others.
40
+ * - In memory only. Nothing is written to storage or sent anywhere.
41
+ * - Lost whenever the sandbox restarts: after a crash, a rebuild in a dev preview, sign-out, a
42
+ * reload of the web page, or a restart of the mobile app. Each restart begins again from
43
+ * `initial`. Keep anything that must last in your own backend or the Secret Store.
44
+ * - Never shared with other apps: each app has its own sandbox.
45
+ * - Not shared across devices, browser tabs or users.
46
+ */
47
+ export declare function createAppStore<T extends object>(initial: T): AppStore<T>;
48
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/apps/hooks/store.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC;AAElE,8EAA8E;AAC9E,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAExE,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,MAAM;IACxC,6EAA6E;IAC7E,QAAQ,IAAI,CAAC,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC1C,wGAAwG;IACxG,SAAS,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;IACrD;;;;;OAKG;IACH,QAAQ,IAAI,CAAC,CAAC;IACd,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CA4BxE"}
@@ -0,0 +1,84 @@
1
+ /*
2
+ * Hand-written (not generated by Speakeasy). Third-party app developer kit (C10); see
3
+ * docs/third-party-apps/plan.md.
4
+ *
5
+ * State shared by the views of one app. The host runs one sandbox (one worker) per app and mounts
6
+ * every view of that app into it, each as its own React root. React context therefore stops at a
7
+ * view's edge, but module state does not: a store created at module level is the same object in
8
+ * every view.
9
+ */
10
+ import { useCallback, useRef, useSyncExternalStore } from "react";
11
+ /**
12
+ * Creates a store that every view of this app can read and update. Create it once, at module
13
+ * level, in a file the views import:
14
+ *
15
+ * ```ts
16
+ * // src/store.ts
17
+ * export const notes = createAppStore({ saved: 0 });
18
+ * // in a view
19
+ * const saved = notes.useStore((s) => s.saved);
20
+ * notes.setState((s) => ({ saved: s.saved + 1 }));
21
+ * ```
22
+ *
23
+ * What it guarantees, and what it does not:
24
+ * - Shared by every view of this app that is open in the same browser tab (web) or the same app
25
+ * session (iOS, Android): a ContextView, its FocusView, the settings page and the app's pages
26
+ * all see one state, and an update in one re-renders the others.
27
+ * - In memory only. Nothing is written to storage or sent anywhere.
28
+ * - Lost whenever the sandbox restarts: after a crash, a rebuild in a dev preview, sign-out, a
29
+ * reload of the web page, or a restart of the mobile app. Each restart begins again from
30
+ * `initial`. Keep anything that must last in your own backend or the Secret Store.
31
+ * - Never shared with other apps: each app has its own sandbox.
32
+ * - Not shared across devices, browser tabs or users.
33
+ */
34
+ export function createAppStore(initial) {
35
+ let state = initial;
36
+ const listeners = new Set();
37
+ const store = {
38
+ getState: () => state,
39
+ setState(update) {
40
+ const patch = typeof update === "function" ? update(state) : update;
41
+ const keys = Object.keys(patch);
42
+ if (!keys.some((key) => !Object.is(state[key], patch[key])))
43
+ return;
44
+ const previous = state;
45
+ state = { ...state, ...patch };
46
+ for (const listener of [...listeners])
47
+ listener(state, previous);
48
+ },
49
+ subscribe(listener) {
50
+ listeners.add(listener);
51
+ return () => {
52
+ listeners.delete(listener);
53
+ };
54
+ },
55
+ useStore: function useStore(selector) {
56
+ return useStoreValue(store, selector);
57
+ },
58
+ };
59
+ return store;
60
+ }
61
+ /**
62
+ * `useSyncExternalStore` over `store`. `store.subscribe` is read at render time, so it is the
63
+ * store's own function (or whatever replaced it), and the subscription follows it.
64
+ */
65
+ function useStoreValue(store, selector) {
66
+ // The last selection, so a selector that derives a new object from an unchanged state still
67
+ // gives React the same snapshot (React requires a stable snapshot between changes).
68
+ const cache = useRef(null);
69
+ const subscribe = store.subscribe;
70
+ const onStoreChange = useCallback((notify) => subscribe(() => notify()), [subscribe]);
71
+ const getSnapshot = () => {
72
+ const current = store.getState();
73
+ const cached = cache.current;
74
+ if (cached && cached.state === current && cached.selector === selector)
75
+ return cached.value;
76
+ const value = selector ? selector(current) : current;
77
+ // A changed state whose selection is equal keeps the previous value, so the view skips a render.
78
+ const stable = cached && Object.is(cached.value, value) ? cached.value : value;
79
+ cache.current = { state: current, selector, value: stable };
80
+ return stable;
81
+ };
82
+ return useSyncExternalStore(onStoreChange, getSnapshot, getSnapshot);
83
+ }
84
+ //# sourceMappingURL=store.js.map