@cedarjs/web 0.0.4

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 (263) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -0
  3. package/apollo/index.js +2 -0
  4. package/apollo/package.json +4 -0
  5. package/dist/apollo/fragmentRegistry.d.ts +43 -0
  6. package/dist/apollo/fragmentRegistry.d.ts.map +1 -0
  7. package/dist/apollo/fragmentRegistry.js +39 -0
  8. package/dist/apollo/index.d.ts +77 -0
  9. package/dist/apollo/index.d.ts.map +1 -0
  10. package/dist/apollo/index.js +198 -0
  11. package/dist/apollo/links.d.ts +27 -0
  12. package/dist/apollo/links.d.ts.map +1 -0
  13. package/dist/apollo/links.js +94 -0
  14. package/dist/apollo/sseLink.d.ts +29 -0
  15. package/dist/apollo/sseLink.d.ts.map +1 -0
  16. package/dist/apollo/sseLink.js +94 -0
  17. package/dist/apollo/suspense.d.ts +59 -0
  18. package/dist/apollo/suspense.d.ts.map +1 -0
  19. package/dist/apollo/suspense.js +113 -0
  20. package/dist/apollo/typeOverride.d.ts +21 -0
  21. package/dist/apollo/typeOverride.d.ts.map +1 -0
  22. package/dist/apollo/typeOverride.js +0 -0
  23. package/dist/apollo/useCache.d.ts +22 -0
  24. package/dist/apollo/useCache.d.ts.map +1 -0
  25. package/dist/apollo/useCache.js +25 -0
  26. package/dist/bins/cross-env.d.ts +3 -0
  27. package/dist/bins/cross-env.d.ts.map +1 -0
  28. package/dist/bins/msw.d.ts +3 -0
  29. package/dist/bins/msw.d.ts.map +1 -0
  30. package/dist/bins/redwood.d.ts +9 -0
  31. package/dist/bins/redwood.d.ts.map +1 -0
  32. package/dist/bins/rwfw.d.ts +3 -0
  33. package/dist/bins/rwfw.d.ts.map +1 -0
  34. package/dist/bins/storybook.d.ts +3 -0
  35. package/dist/bins/storybook.d.ts.map +1 -0
  36. package/dist/bins/tsc.d.ts +3 -0
  37. package/dist/bins/tsc.d.ts.map +1 -0
  38. package/dist/bundled/apollo-upload-client.d.ts +3 -0
  39. package/dist/bundled/apollo-upload-client.d.ts.map +1 -0
  40. package/dist/bundled/apollo-upload-client.js +4 -0
  41. package/dist/cjs/apollo/fragmentRegistry.d.ts +43 -0
  42. package/dist/cjs/apollo/fragmentRegistry.d.ts.map +1 -0
  43. package/dist/cjs/apollo/fragmentRegistry.js +75 -0
  44. package/dist/cjs/apollo/index.d.ts +77 -0
  45. package/dist/cjs/apollo/index.d.ts.map +1 -0
  46. package/dist/cjs/apollo/index.js +216 -0
  47. package/dist/cjs/apollo/links.d.ts +27 -0
  48. package/dist/cjs/apollo/links.d.ts.map +1 -0
  49. package/dist/cjs/apollo/links.js +122 -0
  50. package/dist/cjs/apollo/sseLink.d.ts +29 -0
  51. package/dist/cjs/apollo/sseLink.d.ts.map +1 -0
  52. package/dist/cjs/apollo/sseLink.js +120 -0
  53. package/dist/cjs/apollo/suspense.d.ts +59 -0
  54. package/dist/cjs/apollo/suspense.d.ts.map +1 -0
  55. package/dist/cjs/apollo/suspense.js +127 -0
  56. package/dist/cjs/apollo/typeOverride.d.ts +21 -0
  57. package/dist/cjs/apollo/typeOverride.d.ts.map +1 -0
  58. package/dist/cjs/apollo/typeOverride.js +16 -0
  59. package/dist/cjs/apollo/useCache.d.ts +22 -0
  60. package/dist/cjs/apollo/useCache.d.ts.map +1 -0
  61. package/dist/cjs/apollo/useCache.js +49 -0
  62. package/dist/cjs/bins/cross-env.d.ts +3 -0
  63. package/dist/cjs/bins/cross-env.d.ts.map +1 -0
  64. package/dist/cjs/bins/cross-env.js +30 -0
  65. package/dist/cjs/bins/msw.d.ts +3 -0
  66. package/dist/cjs/bins/msw.d.ts.map +1 -0
  67. package/dist/cjs/bins/msw.js +28 -0
  68. package/dist/cjs/bins/redwood.d.ts +9 -0
  69. package/dist/cjs/bins/redwood.d.ts.map +1 -0
  70. package/dist/cjs/bins/redwood.js +36 -0
  71. package/dist/cjs/bins/rwfw.d.ts +3 -0
  72. package/dist/cjs/bins/rwfw.d.ts.map +1 -0
  73. package/dist/cjs/bins/rwfw.js +36 -0
  74. package/dist/cjs/bins/storybook.d.ts +3 -0
  75. package/dist/cjs/bins/storybook.d.ts.map +1 -0
  76. package/dist/cjs/bins/storybook.js +49 -0
  77. package/dist/cjs/bins/tsc.d.ts +3 -0
  78. package/dist/cjs/bins/tsc.d.ts.map +1 -0
  79. package/dist/cjs/bins/tsc.js +30 -0
  80. package/dist/cjs/bundled/apollo-upload-client.d.ts +3 -0
  81. package/dist/cjs/bundled/apollo-upload-client.d.ts.map +1 -0
  82. package/dist/cjs/bundled/apollo-upload-client.js +2474 -0
  83. package/dist/cjs/components/DevFatalErrorPage.d.ts +21 -0
  84. package/dist/cjs/components/DevFatalErrorPage.d.ts.map +1 -0
  85. package/dist/cjs/components/DevFatalErrorPage.js +436 -0
  86. package/dist/cjs/components/FatalErrorBoundary.d.ts +24 -0
  87. package/dist/cjs/components/FatalErrorBoundary.d.ts.map +1 -0
  88. package/dist/cjs/components/FatalErrorBoundary.js +63 -0
  89. package/dist/cjs/components/FetchConfigProvider.d.ts +25 -0
  90. package/dist/cjs/components/FetchConfigProvider.d.ts.map +1 -0
  91. package/dist/cjs/components/FetchConfigProvider.js +80 -0
  92. package/dist/cjs/components/GraphQLHooksProvider.d.ts +45 -0
  93. package/dist/cjs/components/GraphQLHooksProvider.d.ts.map +1 -0
  94. package/dist/cjs/components/GraphQLHooksProvider.js +135 -0
  95. package/dist/cjs/components/MetaTags.d.ts +52 -0
  96. package/dist/cjs/components/MetaTags.d.ts.map +1 -0
  97. package/dist/cjs/components/MetaTags.js +69 -0
  98. package/dist/cjs/components/Metadata.d.ts +9 -0
  99. package/dist/cjs/components/Metadata.d.ts.map +1 -0
  100. package/dist/cjs/components/Metadata.js +95 -0
  101. package/dist/cjs/components/PortalHead.d.ts +4 -0
  102. package/dist/cjs/components/PortalHead.d.ts.map +1 -0
  103. package/dist/cjs/components/PortalHead.js +59 -0
  104. package/dist/cjs/components/RedwoodProvider.d.ts +9 -0
  105. package/dist/cjs/components/RedwoodProvider.d.ts.map +1 -0
  106. package/dist/cjs/components/RedwoodProvider.js +58 -0
  107. package/dist/cjs/components/ServerInject.d.ts +26 -0
  108. package/dist/cjs/components/ServerInject.d.ts.map +1 -0
  109. package/dist/cjs/components/ServerInject.js +75 -0
  110. package/dist/cjs/components/cell/CellCacheContext.d.ts +20 -0
  111. package/dist/cjs/components/cell/CellCacheContext.d.ts.map +1 -0
  112. package/dist/cjs/components/cell/CellCacheContext.js +53 -0
  113. package/dist/cjs/components/cell/CellErrorBoundary.d.ts +25 -0
  114. package/dist/cjs/components/cell/CellErrorBoundary.d.ts.map +1 -0
  115. package/dist/cjs/components/cell/CellErrorBoundary.js +66 -0
  116. package/dist/cjs/components/cell/cellTypes.d.ts +152 -0
  117. package/dist/cjs/components/cell/cellTypes.d.ts.map +1 -0
  118. package/dist/cjs/components/cell/cellTypes.js +16 -0
  119. package/dist/cjs/components/cell/createCell.d.ts +10 -0
  120. package/dist/cjs/components/cell/createCell.d.ts.map +1 -0
  121. package/dist/cjs/components/cell/createCell.js +165 -0
  122. package/dist/cjs/components/cell/createCell.test.js +351 -0
  123. package/dist/cjs/components/cell/createServerCell.d.ts +15 -0
  124. package/dist/cjs/components/cell/createServerCell.d.ts.map +1 -0
  125. package/dist/cjs/components/cell/createServerCell.js +91 -0
  126. package/dist/cjs/components/cell/createSuspendingCell.d.ts +11 -0
  127. package/dist/cjs/components/cell/createSuspendingCell.d.ts.map +1 -0
  128. package/dist/cjs/components/cell/createSuspendingCell.js +152 -0
  129. package/dist/cjs/components/cell/createSuspendingCell.test.js +115 -0
  130. package/dist/cjs/components/cell/isCellEmpty.d.ts +41 -0
  131. package/dist/cjs/components/cell/isCellEmpty.d.ts.map +1 -0
  132. package/dist/cjs/components/cell/isCellEmpty.js +35 -0
  133. package/dist/cjs/components/htmlTags.d.ts +52 -0
  134. package/dist/cjs/components/htmlTags.d.ts.map +1 -0
  135. package/dist/cjs/components/htmlTags.js +88 -0
  136. package/dist/cjs/config.d.ts +2 -0
  137. package/dist/cjs/config.d.ts.map +1 -0
  138. package/dist/cjs/config.js +6 -0
  139. package/dist/cjs/entry/index.js +39 -0
  140. package/dist/cjs/global.web-auto-imports.d.ts +30 -0
  141. package/dist/cjs/global.web-auto-imports.d.ts.map +1 -0
  142. package/dist/cjs/global.web-auto-imports.js +16 -0
  143. package/dist/cjs/graphql.d.ts +24 -0
  144. package/dist/cjs/graphql.d.ts.map +1 -0
  145. package/dist/cjs/graphql.js +36 -0
  146. package/dist/cjs/index.d.ts +20 -0
  147. package/dist/cjs/index.d.ts.map +1 -0
  148. package/dist/cjs/index.js +80 -0
  149. package/dist/cjs/package.json +1 -0
  150. package/dist/cjs/routeHooks.types.d.ts +12 -0
  151. package/dist/cjs/routeHooks.types.d.ts.map +1 -0
  152. package/dist/cjs/routeHooks.types.js +16 -0
  153. package/dist/cjs/server/MiddlewareRequest.d.ts +28 -0
  154. package/dist/cjs/server/MiddlewareRequest.d.ts.map +1 -0
  155. package/dist/cjs/server/MiddlewareRequest.js +71 -0
  156. package/dist/cjs/server/MiddlewareResponse.d.ts +44 -0
  157. package/dist/cjs/server/MiddlewareResponse.d.ts.map +1 -0
  158. package/dist/cjs/server/MiddlewareResponse.js +130 -0
  159. package/dist/cjs/server/middleware.d.ts +17 -0
  160. package/dist/cjs/server/middleware.d.ts.map +1 -0
  161. package/dist/cjs/server/middleware.js +24 -0
  162. package/dist/cjs/server/request.d.ts +2 -0
  163. package/dist/cjs/server/request.d.ts.map +1 -0
  164. package/dist/cjs/server/request.js +34 -0
  165. package/dist/cjs/streamUtils/useDocumentReady.d.ts +11 -0
  166. package/dist/cjs/streamUtils/useDocumentReady.d.ts.map +1 -0
  167. package/dist/cjs/streamUtils/useDocumentReady.js +41 -0
  168. package/dist/cjs/toast/index.d.ts +3 -0
  169. package/dist/cjs/toast/index.d.ts.map +1 -0
  170. package/dist/cjs/toast/index.js +41 -0
  171. package/dist/components/DevFatalErrorPage.d.ts +21 -0
  172. package/dist/components/DevFatalErrorPage.d.ts.map +1 -0
  173. package/dist/components/DevFatalErrorPage.js +402 -0
  174. package/dist/components/FatalErrorBoundary.d.ts +24 -0
  175. package/dist/components/FatalErrorBoundary.d.ts.map +1 -0
  176. package/dist/components/FatalErrorBoundary.js +29 -0
  177. package/dist/components/FetchConfigProvider.d.ts +25 -0
  178. package/dist/components/FetchConfigProvider.d.ts.map +1 -0
  179. package/dist/components/FetchConfigProvider.js +43 -0
  180. package/dist/components/GraphQLHooksProvider.d.ts +45 -0
  181. package/dist/components/GraphQLHooksProvider.d.ts.map +1 -0
  182. package/dist/components/GraphQLHooksProvider.js +94 -0
  183. package/dist/components/MetaTags.d.ts +52 -0
  184. package/dist/components/MetaTags.d.ts.map +1 -0
  185. package/dist/components/MetaTags.js +35 -0
  186. package/dist/components/Metadata.d.ts +9 -0
  187. package/dist/components/Metadata.d.ts.map +1 -0
  188. package/dist/components/Metadata.js +61 -0
  189. package/dist/components/PortalHead.d.ts +4 -0
  190. package/dist/components/PortalHead.d.ts.map +1 -0
  191. package/dist/components/PortalHead.js +29 -0
  192. package/dist/components/RedwoodProvider.d.ts +9 -0
  193. package/dist/components/RedwoodProvider.d.ts.map +1 -0
  194. package/dist/components/RedwoodProvider.js +24 -0
  195. package/dist/components/ServerInject.d.ts +26 -0
  196. package/dist/components/ServerInject.d.ts.map +1 -0
  197. package/dist/components/ServerInject.js +37 -0
  198. package/dist/components/cell/CellCacheContext.d.ts +20 -0
  199. package/dist/components/cell/CellCacheContext.d.ts.map +1 -0
  200. package/dist/components/cell/CellCacheContext.js +18 -0
  201. package/dist/components/cell/CellErrorBoundary.d.ts +25 -0
  202. package/dist/components/cell/CellErrorBoundary.d.ts.map +1 -0
  203. package/dist/components/cell/CellErrorBoundary.js +32 -0
  204. package/dist/components/cell/cellTypes.d.ts +152 -0
  205. package/dist/components/cell/cellTypes.d.ts.map +1 -0
  206. package/dist/components/cell/cellTypes.js +0 -0
  207. package/dist/components/cell/createCell.d.ts +10 -0
  208. package/dist/components/cell/createCell.d.ts.map +1 -0
  209. package/dist/components/cell/createCell.js +131 -0
  210. package/dist/components/cell/createCell.test.js +328 -0
  211. package/dist/components/cell/createServerCell.d.ts +15 -0
  212. package/dist/components/cell/createServerCell.d.ts.map +1 -0
  213. package/dist/components/cell/createServerCell.js +57 -0
  214. package/dist/components/cell/createSuspendingCell.d.ts +11 -0
  215. package/dist/components/cell/createSuspendingCell.d.ts.map +1 -0
  216. package/dist/components/cell/createSuspendingCell.js +118 -0
  217. package/dist/components/cell/createSuspendingCell.test.js +92 -0
  218. package/dist/components/cell/isCellEmpty.d.ts +41 -0
  219. package/dist/components/cell/isCellEmpty.d.ts.map +1 -0
  220. package/dist/components/cell/isCellEmpty.js +11 -0
  221. package/dist/components/htmlTags.d.ts +52 -0
  222. package/dist/components/htmlTags.d.ts.map +1 -0
  223. package/dist/components/htmlTags.js +53 -0
  224. package/dist/config.d.ts +2 -0
  225. package/dist/config.d.ts.map +1 -0
  226. package/dist/config.js +5 -0
  227. package/dist/entry/index.d.ts +1 -0
  228. package/dist/entry/index.js +16 -0
  229. package/dist/global.web-auto-imports.d.ts +30 -0
  230. package/dist/global.web-auto-imports.d.ts.map +1 -0
  231. package/dist/global.web-auto-imports.js +0 -0
  232. package/dist/graphql.d.ts +24 -0
  233. package/dist/graphql.d.ts.map +1 -0
  234. package/dist/graphql.js +12 -0
  235. package/dist/index.d.ts +20 -0
  236. package/dist/index.d.ts.map +1 -0
  237. package/dist/index.js +36 -0
  238. package/dist/package.json +1 -0
  239. package/dist/routeHooks.types.d.ts +12 -0
  240. package/dist/routeHooks.types.d.ts.map +1 -0
  241. package/dist/routeHooks.types.js +0 -0
  242. package/dist/server/MiddlewareRequest.d.ts +28 -0
  243. package/dist/server/MiddlewareRequest.d.ts.map +1 -0
  244. package/dist/server/MiddlewareRequest.js +46 -0
  245. package/dist/server/MiddlewareResponse.d.ts +44 -0
  246. package/dist/server/MiddlewareResponse.d.ts.map +1 -0
  247. package/dist/server/MiddlewareResponse.js +95 -0
  248. package/dist/server/middleware.d.ts +17 -0
  249. package/dist/server/middleware.d.ts.map +1 -0
  250. package/dist/server/middleware.js +2 -0
  251. package/dist/server/request.d.ts +2 -0
  252. package/dist/server/request.d.ts.map +1 -0
  253. package/dist/server/request.js +12 -0
  254. package/dist/streamUtils/useDocumentReady.d.ts +11 -0
  255. package/dist/streamUtils/useDocumentReady.d.ts.map +1 -0
  256. package/dist/streamUtils/useDocumentReady.js +17 -0
  257. package/dist/toast/index.d.ts +3 -0
  258. package/dist/toast/index.d.ts.map +1 -0
  259. package/dist/toast/index.js +5 -0
  260. package/package.json +193 -0
  261. package/src/entry/index.jsx +29 -0
  262. package/toast/index.js +2 -0
  263. package/toast/package.json +4 -0
@@ -0,0 +1,28 @@
1
+ import { Request as WhatWgRequest } from '@whatwg-node/fetch';
2
+ import type { ServerAuthState } from '@cedarjs/auth/dist/AuthProvider/ServerAuthProvider.js';
3
+ import { CookieJar } from '@cedarjs/cookie-jar';
4
+ declare class AuthStateJar {
5
+ private _data;
6
+ private _initialState;
7
+ constructor(initialState: ServerAuthState);
8
+ /**
9
+ * Always returns the server auth state, even if its set to null,
10
+ * it'll fall back to the initial state (created when mwReq is initialized)
11
+ */
12
+ get(): ServerAuthState;
13
+ set(value: ServerAuthState | null): void;
14
+ clear(): void;
15
+ }
16
+ export declare class MiddlewareRequest extends WhatWgRequest {
17
+ cookies: CookieJar;
18
+ serverAuthState: AuthStateJar;
19
+ constructor(input: Request);
20
+ }
21
+ /**
22
+ * Converts a Web API Request object to a MiddlewareRequest object.
23
+ * Also ensures that serverAuthState is fresh for each request
24
+ * (assuming that it is a new instance for each request)
25
+ */
26
+ export declare const createMiddlewareRequest: (req: Request) => MiddlewareRequest;
27
+ export {};
28
+ //# sourceMappingURL=MiddlewareRequest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MiddlewareRequest.d.ts","sourceRoot":"","sources":["../../src/server/MiddlewareRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,cAAM,YAAY;IAChB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,aAAa,CAAiB;gBAE1B,YAAY,EAAE,eAAe;IAKzC;;;OAGG;IACH,GAAG;IAIH,GAAG,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAIjC,KAAK;CAGN;AAED,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,OAAO,EAAE,SAAS,CAAA;IAClB,eAAe,EAAE,YAAY,CAAA;gBAEjB,KAAK,EAAE,OAAO;CAY3B;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAAS,OAAO,sBAGnD,CAAA"}
@@ -0,0 +1,46 @@
1
+ import { Request as WhatWgRequest } from "@whatwg-node/fetch";
2
+ import { middlewareDefaultAuthProviderState } from "@cedarjs/auth/dist/AuthProvider/AuthProviderState.js";
3
+ import { CookieJar } from "@cedarjs/cookie-jar";
4
+ class AuthStateJar {
5
+ _data;
6
+ _initialState;
7
+ constructor(initialState) {
8
+ this._data = initialState;
9
+ this._initialState = initialState;
10
+ }
11
+ /**
12
+ * Always returns the server auth state, even if its set to null,
13
+ * it'll fall back to the initial state (created when mwReq is initialized)
14
+ */
15
+ get() {
16
+ return this._data || this._initialState;
17
+ }
18
+ set(value) {
19
+ this._data = value;
20
+ }
21
+ clear() {
22
+ this._data = null;
23
+ }
24
+ }
25
+ class MiddlewareRequest extends WhatWgRequest {
26
+ cookies;
27
+ serverAuthState;
28
+ constructor(input) {
29
+ super(input);
30
+ const defaultServerAuthState = {
31
+ ...middlewareDefaultAuthProviderState,
32
+ cookieHeader: input.headers.get("Cookie"),
33
+ roles: []
34
+ };
35
+ this.cookies = new CookieJar(input.headers.get("Cookie"));
36
+ this.serverAuthState = new AuthStateJar(defaultServerAuthState);
37
+ }
38
+ }
39
+ const createMiddlewareRequest = (req) => {
40
+ const middlewareRequest = new MiddlewareRequest(req);
41
+ return middlewareRequest;
42
+ };
43
+ export {
44
+ MiddlewareRequest,
45
+ createMiddlewareRequest
46
+ };
@@ -0,0 +1,44 @@
1
+ import { CookieJar } from '@cedarjs/cookie-jar';
2
+ export declare class MiddlewareShortCircuit extends Error {
3
+ mwResponse: MiddlewareResponse;
4
+ constructor(body?: BodyInit | null, responseInit?: ResponseInit);
5
+ }
6
+ /**
7
+ * This is actually a Response builder class
8
+ * After setting all the required properties, we can call `build` to get a Web
9
+ * API Response object
10
+ */
11
+ export declare class MiddlewareResponse {
12
+ cookies: CookieJar;
13
+ headers: Headers;
14
+ body: BodyInit | null | undefined;
15
+ status: number;
16
+ statusText: string | undefined;
17
+ constructor(body?: BodyInit | null, init?: ResponseInit);
18
+ static fromResponse: (res: Response) => MiddlewareResponse;
19
+ /**
20
+ *
21
+ * Short circuit the middleware chain and return early.
22
+ * This will skip all the remaining middleware and return the response immediately.
23
+ *
24
+ * @returns MiddlewareResponse
25
+ */
26
+ shortCircuit: (body?: BodyInit | null, init?: ResponseInit) => never;
27
+ /**
28
+ * Skip the current middleware and move to the next one.
29
+ * Careful: It creates a new Response, so any middleware that modifies the
30
+ * response before the current one will be lost.
31
+ * @returns MiddlewareResponse
32
+ */
33
+ static next: () => MiddlewareResponse;
34
+ /**
35
+ * Return a MiddlewareResponse object that will redirect the client to the
36
+ * specified location
37
+ *
38
+ * @returns MiddlewareResponse
39
+ */
40
+ static redirect: (location: string, type?: "permanent" | "temporary") => MiddlewareResponse;
41
+ isRedirect: () => boolean;
42
+ toResponse: () => Response;
43
+ }
44
+ //# sourceMappingURL=MiddlewareResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MiddlewareResponse.d.ts","sourceRoot":"","sources":["../../src/server/MiddlewareResponse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,UAAU,EAAE,kBAAkB,CAAA;gBAElB,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,YAAY,CAAC,EAAE,YAAY;CAKhE;AAED;;;;GAIG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,YAAkB;IACzB,OAAO,UAAgB;IACvB,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAA;IACjC,MAAM,SAAM;IACZ,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;gBAElB,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY;IAOvD,MAAM,CAAC,YAAY,QAAS,QAAQ,wBAMnC;IAED;;;;;;OAMG;IACH,YAAY,UAAW,QAAQ,GAAG,IAAI,SAAS,YAAY,WAgB1D;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAI,2BAEV;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,aACH,MAAM,SACV,WAAW,GAAG,WAAW,wBAOhC;IAED,UAAU,gBAET;IAED,UAAU,iBAaT;CACF"}
@@ -0,0 +1,95 @@
1
+ import { Response as PonyResponse } from "@whatwg-node/fetch";
2
+ import cookie from "cookie";
3
+ import { CookieJar } from "@cedarjs/cookie-jar";
4
+ class MiddlewareShortCircuit extends Error {
5
+ mwResponse;
6
+ constructor(body, responseInit) {
7
+ super("Short circuit. Skipping all middleware, and returning early");
8
+ this.name = "MiddlewareShortCircuit";
9
+ this.mwResponse = new MiddlewareResponse(body, responseInit);
10
+ }
11
+ }
12
+ class MiddlewareResponse {
13
+ cookies = new CookieJar();
14
+ headers = new Headers();
15
+ body;
16
+ status = 200;
17
+ statusText;
18
+ constructor(body, init) {
19
+ this.body = body;
20
+ this.headers = new Headers(init?.headers);
21
+ this.status = init?.status || 200;
22
+ this.statusText = init?.statusText;
23
+ }
24
+ static fromResponse = (res) => {
25
+ return new MiddlewareResponse(res.body, {
26
+ headers: res.headers,
27
+ status: res.status,
28
+ statusText: res.statusText
29
+ });
30
+ };
31
+ /**
32
+ *
33
+ * Short circuit the middleware chain and return early.
34
+ * This will skip all the remaining middleware and return the response immediately.
35
+ *
36
+ * @returns MiddlewareResponse
37
+ */
38
+ shortCircuit = (body, init) => {
39
+ for (const [ckName, ckParams] of this.cookies) {
40
+ this.headers.append(
41
+ "Set-Cookie",
42
+ cookie.serialize(ckName, ckParams.value, ckParams.options)
43
+ );
44
+ }
45
+ throw new MiddlewareShortCircuit(
46
+ body || this.body,
47
+ init || {
48
+ headers: this.headers,
49
+ status: this.status,
50
+ statusText: this.statusText
51
+ }
52
+ );
53
+ };
54
+ /**
55
+ * Skip the current middleware and move to the next one.
56
+ * Careful: It creates a new Response, so any middleware that modifies the
57
+ * response before the current one will be lost.
58
+ * @returns MiddlewareResponse
59
+ */
60
+ static next = () => {
61
+ return new MiddlewareResponse();
62
+ };
63
+ /**
64
+ * Return a MiddlewareResponse object that will redirect the client to the
65
+ * specified location
66
+ *
67
+ * @returns MiddlewareResponse
68
+ */
69
+ static redirect = (location, type = "temporary") => {
70
+ const res = new MiddlewareResponse();
71
+ res.headers.set("Location", location);
72
+ res.status = type === "permanent" ? 301 : 302;
73
+ return res;
74
+ };
75
+ isRedirect = () => {
76
+ return this.status === 301 || this.status === 302;
77
+ };
78
+ toResponse = () => {
79
+ for (const [ckName, ckParams] of this.cookies) {
80
+ this.headers.append(
81
+ "Set-Cookie",
82
+ cookie.serialize(ckName, ckParams.value, ckParams.options)
83
+ );
84
+ }
85
+ return new PonyResponse(this.body, {
86
+ headers: this.headers,
87
+ status: this.status,
88
+ statusText: this.statusText
89
+ });
90
+ };
91
+ }
92
+ export {
93
+ MiddlewareResponse,
94
+ MiddlewareShortCircuit
95
+ };
@@ -0,0 +1,17 @@
1
+ import type { ViteDevServer } from 'vite';
2
+ import type { RWRouteManifestItem } from '@cedarjs/internal/dist/routes.js';
3
+ import type { MiddlewareRequest } from './MiddlewareRequest.js';
4
+ import type { MiddlewareResponse } from './MiddlewareResponse.js';
5
+ export * from './MiddlewareRequest.js';
6
+ export * from './MiddlewareResponse.js';
7
+ export type MiddlewareInvokeOptions = {
8
+ route?: RWRouteManifestItem;
9
+ cssPaths?: string[];
10
+ params?: Record<string, unknown>;
11
+ viteDevServer?: ViteDevServer;
12
+ };
13
+ export type Middleware = (req: MiddlewareRequest, res: MiddlewareResponse, options?: MiddlewareInvokeOptions) => Promise<MiddlewareResponse> | MiddlewareResponse | void;
14
+ export interface MiddlewareClass {
15
+ invoke: Middleware;
16
+ }
17
+ //# sourceMappingURL=middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/server/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAIzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AAE3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,cAAc,wBAAwB,CAAA;AACtC,cAAc,yBAAyB,CAAA;AAEvC,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,CAAC,EAAE,mBAAmB,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,aAAa,CAAC,EAAE,aAAa,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,CACvB,GAAG,EAAE,iBAAiB,EACtB,GAAG,EAAE,kBAAkB,EACvB,OAAO,CAAC,EAAE,uBAAuB,KAC9B,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,IAAI,CAAA;AAE5D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,UAAU,CAAA;CACnB"}
@@ -0,0 +1,2 @@
1
+ export * from "./MiddlewareRequest.js";
2
+ export * from "./MiddlewareResponse.js";
@@ -0,0 +1,2 @@
1
+ export { getRequestCookies, getRequestHeaders, getLocation, getAuthState, } from '@cedarjs/server-store';
2
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/server/request.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,YAAY,GACb,MAAM,uBAAuB,CAAA"}
@@ -0,0 +1,12 @@
1
+ import {
2
+ getRequestCookies,
3
+ getRequestHeaders,
4
+ getLocation,
5
+ getAuthState
6
+ } from "@cedarjs/server-store";
7
+ export {
8
+ getAuthState,
9
+ getLocation,
10
+ getRequestCookies,
11
+ getRequestHeaders
12
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ *
3
+ * Use this hook to run a function when the document is ready.
4
+ *
5
+ * Useful to run things on ~first~ hard render only. Note that this will not fire on soft renders
6
+ *
7
+ * @param callback Any function you want to run, when document is ready
8
+ * @returns
9
+ */
10
+ export declare const useDocumentReady: (callback: () => void) => void;
11
+ //# sourceMappingURL=useDocumentReady.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDocumentReady.d.ts","sourceRoot":"","sources":["../../src/streamUtils/useDocumentReady.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,aAAc,MAAM,IAAI,SAepD,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { useEffect } from "react";
2
+ const useDocumentReady = (callback) => {
3
+ return useEffect(() => {
4
+ const handler = (_e) => {
5
+ if (document.readyState === "complete") {
6
+ callback();
7
+ }
8
+ };
9
+ document.addEventListener("readystatechange", handler);
10
+ return () => {
11
+ document.removeEventListener("readystatechange", handler);
12
+ };
13
+ }, [callback]);
14
+ };
15
+ export {
16
+ useDocumentReady
17
+ };
@@ -0,0 +1,3 @@
1
+ export { default as toast } from 'react-hot-toast';
2
+ export * from 'react-hot-toast';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAClD,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { default as default2 } from "react-hot-toast";
2
+ export * from "react-hot-toast";
3
+ export {
4
+ default2 as toast
5
+ };
package/package.json ADDED
@@ -0,0 +1,193 @@
1
+ {
2
+ "name": "@cedarjs/web",
3
+ "version": "0.0.4",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "git+https://github.com/cedarjs/cedar.git",
7
+ "directory": "packages/web"
8
+ },
9
+ "license": "MIT",
10
+ "type": "module",
11
+ "exports": {
12
+ ".": {
13
+ "import": {
14
+ "types": "./dist/index.d.ts",
15
+ "default": "./dist/index.js"
16
+ },
17
+ "require": {
18
+ "types": "./dist/cjs/index.d.ts",
19
+ "default": "./dist/cjs/index.js"
20
+ }
21
+ },
22
+ "./serverInject": {
23
+ "import": {
24
+ "types": "./dist/components/ServerInject.d.ts",
25
+ "default": "./dist/components/ServerInject.js"
26
+ },
27
+ "require": {
28
+ "types": "./dist/cjs/components/ServerInject.d.ts",
29
+ "default": "./dist/cjs/components/ServerInject.js"
30
+ }
31
+ },
32
+ "./request": {
33
+ "import": {
34
+ "types": "./dist/server/request.d.ts",
35
+ "default": "./dist/server/request.js"
36
+ },
37
+ "require": {
38
+ "types": "./dist/cjs/server/request.d.ts",
39
+ "default": "./dist/cjs/server/request.js"
40
+ }
41
+ },
42
+ "./middleware": {
43
+ "import": {
44
+ "types": "./dist/server/middleware.d.ts",
45
+ "default": "./dist/server/middleware.js"
46
+ },
47
+ "require": {
48
+ "types": "./dist/cjs/server/middleware.d.ts",
49
+ "default": "./dist/cjs/server/middleware.js"
50
+ }
51
+ },
52
+ "./dist/server/middleware": {
53
+ "import": {
54
+ "types": "./dist/server/middleware.d.ts",
55
+ "default": "./dist/server/middleware.js"
56
+ },
57
+ "require": {
58
+ "types": "./dist/cjs/server/middleware.d.ts",
59
+ "default": "./dist/cjs/server/middleware.js"
60
+ }
61
+ },
62
+ "./dist/components/*": {
63
+ "require": "./dist/cjs/components/*.js",
64
+ "import": "./dist/components/*.js"
65
+ },
66
+ "./htmlTags": {
67
+ "require": "./dist/cjs/components/htmlTags.js",
68
+ "import": "./dist/components/htmlTags.js"
69
+ },
70
+ "./Metadata": {
71
+ "require": "./dist/cjs/components/Metadata.js",
72
+ "import": "./dist/components/Metadata.js"
73
+ },
74
+ "./dist/apollo/suspense": {
75
+ "require": "./dist/cjs/apollo/suspense.js",
76
+ "import": "./dist/apollo/suspense.js"
77
+ },
78
+ "./dist/apollo/sseLink": {
79
+ "require": "./dist/cjs/apollo/sseLink.js",
80
+ "import": "./dist/apollo/sseLink.js"
81
+ },
82
+ "./dist/graphql.js": {
83
+ "require": "./dist/cjs/graphql.js",
84
+ "import": "./dist/graphql.js"
85
+ },
86
+ "./webpackEntry": {
87
+ "default": "./dist/entry/index.js"
88
+ },
89
+ "./toast": {
90
+ "import": {
91
+ "types": "./dist/toast/index.d.ts",
92
+ "default": "./dist/toast/index.js"
93
+ },
94
+ "require": {
95
+ "types": "./dist/cjs/toast/index.d.ts",
96
+ "default": "./dist/cjs/toast/index.js"
97
+ }
98
+ },
99
+ "./apollo": {
100
+ "import": {
101
+ "types": "./dist/apollo/index.d.ts",
102
+ "default": "./dist/apollo/index.js"
103
+ },
104
+ "require": {
105
+ "types": "./dist/cjs/apollo/index.d.ts",
106
+ "default": "./dist/cjs/apollo/index.js"
107
+ }
108
+ },
109
+ "./forceEsmApollo": {
110
+ "require": "./dist/apollo/index.js",
111
+ "import": "./dist/apollo/index.js"
112
+ }
113
+ },
114
+ "main": "./dist/index.js",
115
+ "types": "dist/index.d.ts",
116
+ "bin": {
117
+ "cross-env": "./dist/cjs/bins/cross-env.js",
118
+ "msw": "./dist/cjs/bins/msw.js",
119
+ "redwood": "./dist/cjs/bins/redwood.js",
120
+ "rw": "./dist/cjs/bins/redwood.js",
121
+ "rwfw": "./dist/cjs/bins/rwfw.js",
122
+ "storybook": "./dist/cjs/bins/storybook.js",
123
+ "tsc": "./dist/cjs/bins/tsc.js"
124
+ },
125
+ "files": [
126
+ "dist",
127
+ "apollo",
128
+ "toast",
129
+ "src/entry"
130
+ ],
131
+ "scripts": {
132
+ "build": "tsx ./build.ts && yarn build:types",
133
+ "build:pack": "yarn pack -o cedar-web.tgz",
134
+ "build:types": "tsc --build --verbose ./tsconfig.build.json ./tsconfig.cjs.json",
135
+ "build:watch": "nodemon --watch src --ext \"js,jsx,ts,tsx\" --ignore dist --exec \"yarn build\"",
136
+ "check:attw": "tsx ./attw.ts",
137
+ "check:package": "concurrently npm:check:attw yarn:publint",
138
+ "prepublishOnly": "NODE_ENV=production yarn build",
139
+ "test": "vitest run",
140
+ "test:types": "tstyche",
141
+ "test:watch": "vitest watch"
142
+ },
143
+ "dependencies": {
144
+ "@apollo/client": "3.11.1",
145
+ "@babel/runtime-corejs3": "7.26.10",
146
+ "@cedarjs/auth": "0.0.4",
147
+ "@cedarjs/server-store": "0.0.4",
148
+ "@whatwg-node/fetch": "0.9.21",
149
+ "apollo-upload-client": "18.0.1",
150
+ "cookie": "0.7.2",
151
+ "core-js": "3.42.0",
152
+ "graphql": "16.9.0",
153
+ "graphql-sse": "2.5.3",
154
+ "graphql-tag": "2.12.6",
155
+ "react-helmet-async": "2.0.5",
156
+ "react-hot-toast": "2.4.1",
157
+ "stacktracey": "2.1.8",
158
+ "ts-toolbelt": "9.6.0"
159
+ },
160
+ "devDependencies": {
161
+ "@apollo/client-react-streaming": "0.10.0",
162
+ "@arethetypeswrong/cli": "0.16.4",
163
+ "@babel/cli": "7.26.4",
164
+ "@babel/core": "^7.26.10",
165
+ "@babel/plugin-transform-runtime": "7.26.10",
166
+ "@babel/runtime": "7.25.7",
167
+ "@cedarjs/framework-tools": "0.0.4",
168
+ "@cedarjs/internal": "0.0.4",
169
+ "@rollup/plugin-babel": "6.0.4",
170
+ "@testing-library/jest-dom": "6.5.0",
171
+ "@testing-library/react": "14.3.1",
172
+ "@types/apollo-upload-client": "^18",
173
+ "@types/react": "^18.2.55",
174
+ "@types/react-dom": "^18.2.19",
175
+ "concurrently": "8.2.2",
176
+ "nodemon": "3.1.9",
177
+ "publint": "0.3.11",
178
+ "react": "18.3.1",
179
+ "react-dom": "18.3.1",
180
+ "tstyche": "3.0.0",
181
+ "tsx": "4.19.3",
182
+ "typescript": "5.6.2",
183
+ "vitest": "2.1.9"
184
+ },
185
+ "peerDependencies": {
186
+ "react": "18.3.1",
187
+ "react-dom": "18.3.1"
188
+ },
189
+ "publishConfig": {
190
+ "access": "public"
191
+ },
192
+ "gitHead": "5b4f77f985bd86ee31ee7338312627accf0cb85b"
193
+ }
@@ -0,0 +1,29 @@
1
+ import React from 'react'
2
+
3
+ import { hydrateRoot, createRoot } from 'react-dom/client'
4
+
5
+ import App from '~redwood-app-root'
6
+ import Routes from '~redwood-app-routes'
7
+ /**
8
+ * When `#redwood-app` isn't empty then it's very likely that you're using
9
+ * prerendering. So React attaches event listeners to the existing markup
10
+ * rather than replacing it.
11
+ * https://react.dev/reference/react-dom/client/hydrateRoot
12
+ */
13
+ const redwoodAppElement = document.getElementById('redwood-app')
14
+
15
+ if (redwoodAppElement.children?.length > 0) {
16
+ hydrateRoot(
17
+ redwoodAppElement,
18
+ <App>
19
+ <Routes />
20
+ </App>,
21
+ )
22
+ } else {
23
+ const root = createRoot(redwoodAppElement)
24
+ root.render(
25
+ <App>
26
+ <Routes />
27
+ </App>,
28
+ )
29
+ }
package/toast/index.js ADDED
@@ -0,0 +1,2 @@
1
+ /* eslint-env es6, commonjs */
2
+ module.exports = require('../dist/toast')
@@ -0,0 +1,4 @@
1
+ {
2
+ "main": "./index.js",
3
+ "types": "../dist/toast/index.d.ts"
4
+ }