eddev 2.0.0-beta.14 → 2.0.0-beta.140

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 (441) hide show
  1. package/css/editor-styles.css +4 -0
  2. package/dist/app/entry/HydrationOverlay.d.ts +2 -0
  3. package/dist/app/entry/HydrationOverlay.d.ts.map +1 -0
  4. package/dist/app/entry/HydrationOverlay.js +2 -0
  5. package/dist/app/entry/MetaTags.d.ts +8 -0
  6. package/dist/app/entry/MetaTags.d.ts.map +1 -0
  7. package/dist/app/entry/MetaTags.js +30 -0
  8. package/dist/app/entry/boot-admin.d.ts +1 -0
  9. package/dist/app/entry/boot-admin.d.ts.map +1 -0
  10. package/dist/app/entry/boot-admin.js +8 -3
  11. package/dist/app/entry/hydration-script.d.ts +2 -0
  12. package/dist/app/entry/hydration-script.d.ts.map +1 -0
  13. package/dist/app/entry/hydration-script.js +18 -0
  14. package/dist/app/entry/spa-root.d.ts +1 -0
  15. package/dist/app/entry/spa-root.d.ts.map +1 -0
  16. package/dist/app/entry/spa-root.js +3 -5
  17. package/dist/app/entry/ssr-root-client.d.ts +4 -1
  18. package/dist/app/entry/ssr-root-client.d.ts.map +1 -0
  19. package/dist/app/entry/ssr-root-client.js +18 -6
  20. package/dist/app/entry/ssr-root.d.ts +4 -4
  21. package/dist/app/entry/ssr-root.d.ts.map +1 -0
  22. package/dist/app/entry/ssr-root.js +19 -19
  23. package/dist/app/lib/admin/defineField.d.ts +1 -0
  24. package/dist/app/lib/admin/defineField.d.ts.map +1 -0
  25. package/dist/app/lib/admin/defineWidget.d.ts +1 -0
  26. package/dist/app/lib/admin/defineWidget.d.ts.map +1 -0
  27. package/dist/app/lib/admin/index.d.ts +1 -0
  28. package/dist/app/lib/admin/index.d.ts.map +1 -0
  29. package/dist/app/lib/admin/installFieldTypes.d.ts +1 -0
  30. package/dist/app/lib/admin/installFieldTypes.d.ts.map +1 -0
  31. package/dist/app/lib/admin/installFieldTypes.js +2 -0
  32. package/dist/app/lib/admin/runWidgets.d.ts +1 -0
  33. package/dist/app/lib/admin/runWidgets.d.ts.map +1 -0
  34. package/dist/app/lib/admin/runWidgets.js +7 -2
  35. package/dist/app/lib/blocks/ContentBlocks.d.ts +7 -4
  36. package/dist/app/lib/blocks/ContentBlocks.d.ts.map +1 -0
  37. package/dist/app/lib/blocks/ContentBlocks.js +4 -3
  38. package/dist/app/lib/blocks/EditableText.d.ts +15 -1
  39. package/dist/app/lib/blocks/EditableText.d.ts.map +1 -0
  40. package/dist/app/lib/blocks/EditableText.js +10 -3
  41. package/dist/app/lib/blocks/InnerBlocks.d.ts +20 -5
  42. package/dist/app/lib/blocks/InnerBlocks.d.ts.map +1 -0
  43. package/dist/app/lib/blocks/InnerBlocks.js +72 -25
  44. package/dist/app/lib/blocks/block-utils.d.ts +2 -1
  45. package/dist/app/lib/blocks/block-utils.d.ts.map +1 -0
  46. package/dist/app/lib/blocks/block-utils.js +1 -1
  47. package/dist/app/lib/blocks/defineBlock.d.ts +4 -0
  48. package/dist/app/lib/blocks/defineBlock.d.ts.map +1 -0
  49. package/dist/app/lib/blocks/defineBlock.js +9 -0
  50. package/dist/app/lib/blocks/editor/EditorHighlights.d.ts +8 -0
  51. package/dist/app/lib/blocks/editor/EditorHighlights.d.ts.map +1 -0
  52. package/dist/app/lib/blocks/editor/EditorHighlights.js +164 -0
  53. package/dist/app/lib/blocks/editor/EditorSupport.d.ts +1 -0
  54. package/dist/app/lib/blocks/editor/EditorSupport.d.ts.map +1 -0
  55. package/dist/app/lib/blocks/editor/EditorSupport.js +15 -10
  56. package/dist/app/lib/blocks/editor/ErrorBoundaryEditor.d.ts +2 -1
  57. package/dist/app/lib/blocks/editor/ErrorBoundaryEditor.d.ts.map +1 -0
  58. package/dist/app/lib/blocks/editor/block-templates.d.ts +7 -0
  59. package/dist/app/lib/blocks/editor/block-templates.d.ts.map +1 -0
  60. package/dist/app/lib/blocks/editor/block-templates.js +64 -0
  61. package/dist/app/lib/blocks/editor/blocks-by-tag.d.ts +1 -0
  62. package/dist/app/lib/blocks/editor/blocks-by-tag.d.ts.map +1 -0
  63. package/dist/app/lib/blocks/editor/controls.d.ts +1 -0
  64. package/dist/app/lib/blocks/editor/controls.d.ts.map +1 -0
  65. package/dist/app/lib/blocks/editor/create-block.d.ts +10 -0
  66. package/dist/app/lib/blocks/editor/create-block.d.ts.map +1 -0
  67. package/dist/app/lib/blocks/editor/create-block.js +13 -0
  68. package/dist/app/lib/blocks/editor/editor-config.d.ts +70 -6
  69. package/dist/app/lib/blocks/editor/editor-config.d.ts.map +1 -0
  70. package/dist/app/lib/blocks/editor/editor-config.js +29 -62
  71. package/dist/app/lib/blocks/editor/installGutenbergHooks.d.ts +4 -0
  72. package/dist/app/lib/blocks/editor/installGutenbergHooks.d.ts.map +1 -0
  73. package/dist/app/lib/blocks/editor/installGutenbergHooks.js +92 -14
  74. package/dist/app/lib/blocks/editor/root-blocks.d.ts +7 -0
  75. package/dist/app/lib/blocks/editor/root-blocks.d.ts.map +1 -0
  76. package/dist/app/lib/blocks/editor/root-blocks.js +30 -0
  77. package/dist/app/lib/blocks/editor/usePostEditor.d.ts +12 -1
  78. package/dist/app/lib/blocks/editor/usePostEditor.d.ts.map +1 -0
  79. package/dist/app/lib/blocks/editor/usePostEditor.js +28 -13
  80. package/dist/app/lib/blocks/index.d.ts +6 -4
  81. package/dist/app/lib/blocks/index.d.ts.map +1 -0
  82. package/dist/app/lib/blocks/index.js +5 -4
  83. package/dist/app/lib/blocks/inline-editing.d.ts +10 -0
  84. package/dist/app/lib/blocks/inline-editing.d.ts.map +1 -0
  85. package/dist/app/lib/blocks/inline-editing.js +13 -3
  86. package/dist/app/lib/devtools/components/BreakpointIndicator.d.ts +1 -0
  87. package/dist/app/lib/devtools/components/BreakpointIndicator.d.ts.map +1 -0
  88. package/dist/app/lib/devtools/components/BreakpointIndicator.js +2 -2
  89. package/dist/app/lib/devtools/components/DevUI.d.ts +1 -0
  90. package/dist/app/lib/devtools/components/DevUI.d.ts.map +1 -0
  91. package/dist/app/lib/devtools/components/DevUI.js +3 -2
  92. package/dist/app/lib/devtools/components/GridIndicator.d.ts +2 -0
  93. package/dist/app/lib/devtools/components/GridIndicator.d.ts.map +1 -0
  94. package/dist/app/lib/devtools/components/GridIndicator.js +29 -0
  95. package/dist/app/lib/devtools/dev-tools-store.d.ts +1 -0
  96. package/dist/app/lib/devtools/dev-tools-store.d.ts.map +1 -0
  97. package/dist/app/lib/devtools/hooks/usePersistState.d.ts +2 -1
  98. package/dist/app/lib/devtools/hooks/usePersistState.d.ts.map +1 -0
  99. package/dist/app/lib/devtools/hooks/usePersistState.js +11 -2
  100. package/dist/app/lib/devtools/hooks/useTailwind.d.ts +1376 -331
  101. package/dist/app/lib/devtools/hooks/useTailwind.d.ts.map +1 -0
  102. package/dist/app/lib/devtools/index.d.ts +1 -0
  103. package/dist/app/lib/devtools/index.d.ts.map +1 -0
  104. package/dist/app/lib/devtools/loader.d.ts +1 -0
  105. package/dist/app/lib/devtools/loader.d.ts.map +1 -0
  106. package/dist/app/lib/devtools/loader.js +7 -6
  107. package/dist/app/lib/devtools/tailwind.config.d.ts +1 -0
  108. package/dist/app/lib/devtools/tailwind.config.d.ts.map +1 -0
  109. package/dist/app/lib/devtools/useQueryDebug.d.ts +8 -1
  110. package/dist/app/lib/devtools/useQueryDebug.d.ts.map +1 -0
  111. package/dist/app/lib/devtools/useQueryDebug.js +5 -8
  112. package/dist/app/lib/dynamic/dynamic.d.ts +2 -1
  113. package/dist/app/lib/dynamic/dynamic.d.ts.map +1 -0
  114. package/dist/app/lib/dynamic/dynamic.js +5 -1
  115. package/dist/app/lib/dynamic/index.d.ts +1 -0
  116. package/dist/app/lib/dynamic/index.d.ts.map +1 -0
  117. package/dist/app/lib/hooks/index.d.ts +2 -2
  118. package/dist/app/lib/hooks/index.d.ts.map +1 -0
  119. package/dist/app/lib/hooks/index.js +1 -2
  120. package/dist/app/lib/hooks/queryUtils.d.ts +38 -2
  121. package/dist/app/lib/hooks/queryUtils.d.ts.map +1 -0
  122. package/dist/app/lib/hooks/queryUtils.js +73 -24
  123. package/dist/app/lib/hooks/useAppData.d.ts +1 -0
  124. package/dist/app/lib/hooks/useAppData.d.ts.map +1 -0
  125. package/dist/app/lib/hooks/useAppData.js +12 -1
  126. package/dist/app/lib/hooks/useRPC.d.ts +1 -4
  127. package/dist/app/lib/hooks/useRPC.d.ts.map +1 -0
  128. package/dist/app/lib/hooks/useRPC.js +1 -8
  129. package/dist/app/lib/integrations/gravityforms/index.d.ts +3 -0
  130. package/dist/app/lib/integrations/gravityforms/index.d.ts.map +1 -0
  131. package/dist/app/lib/integrations/gravityforms/index.js +2 -0
  132. package/dist/app/lib/integrations/gravityforms/types.d.ts +141 -0
  133. package/dist/app/lib/integrations/gravityforms/types.d.ts.map +1 -0
  134. package/dist/app/lib/integrations/gravityforms/types.js +1 -0
  135. package/dist/app/lib/integrations/gravityforms/useGravityForm.d.ts +31 -0
  136. package/dist/app/lib/integrations/gravityforms/useGravityForm.d.ts.map +1 -0
  137. package/dist/app/lib/integrations/gravityforms/useGravityForm.js +285 -0
  138. package/dist/app/lib/internal/finalize-rpc.d.ts +18 -0
  139. package/dist/app/lib/internal/finalize-rpc.d.ts.map +1 -0
  140. package/dist/app/lib/internal/finalize-rpc.js +3 -0
  141. package/dist/app/lib/internal/index.d.ts +2 -0
  142. package/dist/app/lib/internal/index.d.ts.map +1 -0
  143. package/dist/app/lib/internal/index.js +1 -0
  144. package/dist/app/lib/internal/internal-store.d.ts +1 -0
  145. package/dist/app/lib/internal/internal-store.d.ts.map +1 -0
  146. package/dist/app/lib/internal/read-admin-manifest.d.ts +1 -0
  147. package/dist/app/lib/internal/read-admin-manifest.d.ts.map +1 -0
  148. package/dist/app/lib/internal/read-block-manifest.d.ts +1 -0
  149. package/dist/app/lib/internal/read-block-manifest.d.ts.map +1 -0
  150. package/dist/app/lib/internal/read-view-manifest.d.ts +1 -0
  151. package/dist/app/lib/internal/read-view-manifest.d.ts.map +1 -0
  152. package/dist/app/lib/legacy-stitches/createStitches.d.ts +510 -1
  153. package/dist/app/lib/legacy-stitches/createStitches.d.ts.map +1 -0
  154. package/dist/app/lib/legacy-stitches/createStitches.js +1 -1
  155. package/dist/app/lib/legacy-stitches/index.d.ts +1 -0
  156. package/dist/app/lib/legacy-stitches/index.d.ts.map +1 -0
  157. package/dist/app/lib/routing/components/BackButton.d.ts +50 -0
  158. package/dist/app/lib/routing/components/BackButton.d.ts.map +1 -0
  159. package/dist/app/lib/routing/components/BackButton.js +47 -0
  160. package/dist/app/lib/routing/components/BrowserRouter.d.ts +6 -1
  161. package/dist/app/lib/routing/components/BrowserRouter.d.ts.map +1 -0
  162. package/dist/app/lib/routing/components/BrowserRouter.js +96 -17
  163. package/dist/app/lib/routing/components/ClientOnly.d.ts +2 -1
  164. package/dist/app/lib/routing/components/ClientOnly.d.ts.map +1 -0
  165. package/dist/app/lib/routing/components/ClientOnly.js +1 -1
  166. package/dist/app/lib/routing/components/Link.d.ts +2 -0
  167. package/dist/app/lib/routing/components/Link.d.ts.map +1 -0
  168. package/dist/app/lib/routing/components/Link.js +11 -9
  169. package/dist/app/lib/routing/components/RouteRenderer.d.ts +1 -0
  170. package/dist/app/lib/routing/components/RouteRenderer.d.ts.map +1 -0
  171. package/dist/app/lib/routing/components/RouteRenderer.js +4 -3
  172. package/dist/app/lib/routing/components/SSRRouter.d.ts +1 -0
  173. package/dist/app/lib/routing/components/SSRRouter.d.ts.map +1 -0
  174. package/dist/app/lib/routing/components/SSRRouter.js +1 -2
  175. package/dist/app/lib/routing/components/ScrollRestoration.d.ts +1 -0
  176. package/dist/app/lib/routing/components/ScrollRestoration.d.ts.map +1 -0
  177. package/dist/app/lib/routing/components/ScrollRestoration.js +4 -1
  178. package/dist/app/lib/routing/context.d.ts +6 -1
  179. package/dist/app/lib/routing/context.d.ts.map +1 -0
  180. package/dist/app/lib/routing/context.js +12 -0
  181. package/dist/app/lib/routing/hooks/useIsSSR.d.ts +1 -0
  182. package/dist/app/lib/routing/hooks/useIsSSR.d.ts.map +1 -0
  183. package/dist/app/lib/routing/hooks/useRestorableState.d.ts +3 -1
  184. package/dist/app/lib/routing/hooks/useRestorableState.d.ts.map +1 -0
  185. package/dist/app/lib/routing/hooks/useRestorableState.js +2 -1
  186. package/dist/app/lib/routing/hooks/useRoute.d.ts +17 -1
  187. package/dist/app/lib/routing/hooks/useRoute.d.ts.map +1 -0
  188. package/dist/app/lib/routing/hooks/useRoute.js +21 -0
  189. package/dist/app/lib/routing/hooks/useRouteMeta.d.ts +6 -0
  190. package/dist/app/lib/routing/hooks/useRouteMeta.d.ts.map +1 -0
  191. package/dist/app/lib/routing/hooks/useRouteMeta.js +9 -0
  192. package/dist/app/lib/routing/hooks/useRouteTransition.d.ts +1 -0
  193. package/dist/app/lib/routing/hooks/useRouteTransition.d.ts.map +1 -0
  194. package/dist/app/lib/routing/hooks/useRouter.d.ts +1 -0
  195. package/dist/app/lib/routing/hooks/useRouter.d.ts.map +1 -0
  196. package/dist/app/lib/routing/hooks/useRouterEvents.d.ts +1 -0
  197. package/dist/app/lib/routing/hooks/useRouterEvents.d.ts.map +1 -0
  198. package/dist/app/lib/routing/hooks/useRouterState.d.ts +1 -0
  199. package/dist/app/lib/routing/hooks/useRouterState.d.ts.map +1 -0
  200. package/dist/app/lib/routing/hooks/useSearchParams.d.ts +76 -4
  201. package/dist/app/lib/routing/hooks/useSearchParams.d.ts.map +1 -0
  202. package/dist/app/lib/routing/hooks/useSearchParams.js +70 -11
  203. package/dist/app/lib/routing/index.d.ts +2 -0
  204. package/dist/app/lib/routing/index.d.ts.map +1 -0
  205. package/dist/app/lib/routing/index.js +1 -0
  206. package/dist/app/lib/routing/loader.d.ts +1 -0
  207. package/dist/app/lib/routing/loader.d.ts.map +1 -0
  208. package/dist/app/lib/routing/loader.js +19 -10
  209. package/dist/app/lib/routing/types.d.ts +49 -8
  210. package/dist/app/lib/routing/types.d.ts.map +1 -0
  211. package/dist/app/lib/routing/utils.d.ts +6 -2
  212. package/dist/app/lib/routing/utils.d.ts.map +1 -0
  213. package/dist/app/lib/routing/utils.js +36 -3
  214. package/dist/app/lib/{hooks → runtime}/apiConfig.d.ts +7 -2
  215. package/dist/app/lib/runtime/apiConfig.d.ts.map +1 -0
  216. package/dist/app/lib/runtime/apiConfig.js +6 -0
  217. package/dist/app/lib/runtime/errorHandling.d.ts +40 -0
  218. package/dist/app/lib/runtime/errorHandling.d.ts.map +1 -0
  219. package/dist/app/lib/runtime/errorHandling.js +6 -0
  220. package/dist/app/lib/runtime/index.d.ts +3 -0
  221. package/dist/app/lib/runtime/index.d.ts.map +1 -0
  222. package/dist/app/lib/runtime/index.js +2 -0
  223. package/dist/app/lib/views/defineView.d.ts +2 -1
  224. package/dist/app/lib/views/defineView.d.ts.map +1 -0
  225. package/dist/app/lib/views/index.d.ts +1 -0
  226. package/dist/app/lib/views/index.d.ts.map +1 -0
  227. package/dist/app/server/index.d.ts +2 -0
  228. package/dist/app/server/index.d.ts.map +1 -0
  229. package/dist/app/server/index.js +1 -0
  230. package/dist/app/server/proxy-wp-admin.d.ts +2 -2
  231. package/dist/app/server/proxy-wp-admin.d.ts.map +1 -0
  232. package/dist/app/server/proxy-wp-admin.js +43 -14
  233. package/dist/app/server/render-ssr-page.d.ts +27 -2
  234. package/dist/app/server/render-ssr-page.d.ts.map +1 -0
  235. package/dist/app/server/render-ssr-page.js +212 -12
  236. package/dist/app/server/rpc.d.ts +49 -0
  237. package/dist/app/server/rpc.d.ts.map +1 -0
  238. package/dist/app/server/rpc.js +18 -0
  239. package/dist/app/server/server-context.d.ts +45 -4
  240. package/dist/app/server/server-context.d.ts.map +1 -0
  241. package/dist/app/server/server-context.js +329 -33
  242. package/dist/app/server/utils/headers.d.ts +1 -0
  243. package/dist/app/server/utils/headers.d.ts.map +1 -0
  244. package/dist/app/server/utils/replace-host.d.ts +2 -1
  245. package/dist/app/server/utils/replace-host.d.ts.map +1 -0
  246. package/dist/app/server/utils/replace-host.js +10 -2
  247. package/dist/app/server/utils/swr-cache.d.ts +5 -0
  248. package/dist/app/server/utils/swr-cache.d.ts.map +1 -0
  249. package/dist/app/server/utils/swr-cache.js +31 -0
  250. package/dist/app/utils/APIProvider.d.ts +3 -0
  251. package/dist/app/utils/APIProvider.d.ts.map +1 -0
  252. package/dist/app/utils/APIProvider.js +5 -0
  253. package/dist/app/utils/BlockErrorBoundary.d.ts +20 -0
  254. package/dist/app/utils/BlockErrorBoundary.d.ts.map +1 -0
  255. package/dist/app/utils/BlockErrorBoundary.js +38 -0
  256. package/dist/app/utils/ErrorMessage.d.ts +6 -0
  257. package/dist/app/utils/ErrorMessage.d.ts.map +1 -0
  258. package/dist/app/utils/ErrorMessage.js +14 -0
  259. package/dist/app/utils/RouteErrorBoundary.d.ts +19 -0
  260. package/dist/app/utils/RouteErrorBoundary.d.ts.map +1 -0
  261. package/dist/app/utils/RouteErrorBoundary.js +38 -0
  262. package/dist/app/utils/asset-capture.d.ts +3 -0
  263. package/dist/app/utils/asset-capture.d.ts.map +1 -0
  264. package/dist/app/utils/asset-capture.js +5 -0
  265. package/dist/app/utils/hydration-debugger.d.ts +14 -0
  266. package/dist/app/utils/hydration-debugger.d.ts.map +1 -0
  267. package/dist/app/utils/hydration-debugger.js +11 -0
  268. package/dist/app/utils/query-client.d.ts +3 -0
  269. package/dist/app/utils/query-client.d.ts.map +1 -0
  270. package/dist/app/utils/query-client.js +5 -1
  271. package/dist/app/utils/query-monitor.d.ts +27 -0
  272. package/dist/app/utils/query-monitor.d.ts.map +1 -0
  273. package/dist/app/utils/query-monitor.js +7 -0
  274. package/dist/app/utils/trpc-client.d.ts +3 -0
  275. package/dist/app/utils/trpc-client.d.ts.map +1 -0
  276. package/dist/app/utils/trpc-client.js +39 -0
  277. package/dist/app/utils/wp.d.ts +11 -10
  278. package/dist/app/utils/wp.d.ts.map +1 -0
  279. package/dist/node/cli/cli-mode.d.ts +1 -0
  280. package/dist/node/cli/cli-mode.d.ts.map +1 -0
  281. package/dist/node/cli/cli-worker.d.ts +1 -0
  282. package/dist/node/cli/cli-worker.d.ts.map +1 -0
  283. package/dist/node/cli/cli-worker.js +11 -5
  284. package/dist/node/cli/cli.d.ts +1 -0
  285. package/dist/node/cli/cli.d.ts.map +1 -0
  286. package/dist/node/cli/cli.js +85 -11
  287. package/dist/node/cli/display/CLIApp.d.ts +1 -0
  288. package/dist/node/cli/display/CLIApp.d.ts.map +1 -0
  289. package/dist/node/cli/display/CLIApp.js +3 -6
  290. package/dist/node/cli/display/boot-cli-app.d.ts +1 -0
  291. package/dist/node/cli/display/boot-cli-app.d.ts.map +1 -0
  292. package/dist/node/cli/display/boot-cli-app.js +1 -1
  293. package/dist/node/cli/display/components/Fullscreen.d.ts +1 -0
  294. package/dist/node/cli/display/components/Fullscreen.d.ts.map +1 -0
  295. package/dist/node/cli/display/components/LogEntries.d.ts +1 -0
  296. package/dist/node/cli/display/components/LogEntries.d.ts.map +1 -0
  297. package/dist/node/cli/display/components/MenuItem.d.ts +1 -0
  298. package/dist/node/cli/display/components/MenuItem.d.ts.map +1 -0
  299. package/dist/node/cli/display/components/TextInput.d.ts +1 -0
  300. package/dist/node/cli/display/components/TextInput.d.ts.map +1 -0
  301. package/dist/node/cli/display/hooks/useManifest.d.ts +1 -0
  302. package/dist/node/cli/display/hooks/useManifest.d.ts.map +1 -0
  303. package/dist/node/cli/display/hooks/useStatefulLog.d.ts +1 -0
  304. package/dist/node/cli/display/hooks/useStatefulLog.d.ts.map +1 -0
  305. package/dist/node/cli/display/tools/BlockList.d.ts +1 -0
  306. package/dist/node/cli/display/tools/BlockList.d.ts.map +1 -0
  307. package/dist/node/cli/display/tools/CreateBlock.d.ts +1 -0
  308. package/dist/node/cli/display/tools/CreateBlock.d.ts.map +1 -0
  309. package/dist/node/cli/display/tools/cli-tool-list.d.ts +1 -0
  310. package/dist/node/cli/display/tools/cli-tool-list.d.ts.map +1 -0
  311. package/dist/node/cli/display/tools/cli-tools.d.ts +2 -1
  312. package/dist/node/cli/display/tools/cli-tools.d.ts.map +1 -0
  313. package/dist/node/cli/display/util/colors.d.ts +1 -0
  314. package/dist/node/cli/display/util/colors.d.ts.map +1 -0
  315. package/dist/node/cli/version.d.ts +2 -1
  316. package/dist/node/cli/version.d.ts.map +1 -0
  317. package/dist/node/cli/version.js +1 -1
  318. package/dist/node/compiler/build-vinxi.d.ts +1 -0
  319. package/dist/node/compiler/build-vinxi.d.ts.map +1 -0
  320. package/dist/node/compiler/build-vinxi.js +2 -1
  321. package/dist/node/compiler/bundler.admin.d.ts +2 -1
  322. package/dist/node/compiler/bundler.admin.d.ts.map +1 -0
  323. package/dist/node/compiler/bundler.admin.js +1 -1
  324. package/dist/node/compiler/bundler.frontend.d.ts +1 -0
  325. package/dist/node/compiler/bundler.frontend.d.ts.map +1 -0
  326. package/dist/node/compiler/bundler.frontend.js +1 -1
  327. package/dist/node/compiler/dev-server.d.ts +1 -0
  328. package/dist/node/compiler/dev-server.d.ts.map +1 -0
  329. package/dist/node/compiler/dev-server.js +11 -0
  330. package/dist/node/compiler/get-vite-config.d.ts +12 -1
  331. package/dist/node/compiler/get-vite-config.d.ts.map +1 -0
  332. package/dist/node/compiler/get-vite-config.js +170 -41
  333. package/dist/node/compiler/vinxi-app.d.ts +13 -0
  334. package/dist/node/compiler/vinxi-app.d.ts.map +1 -0
  335. package/dist/node/compiler/vinxi-app.js +140 -32
  336. package/dist/node/compiler/vinxi-codegen.d.ts +1 -0
  337. package/dist/node/compiler/vinxi-codegen.d.ts.map +1 -0
  338. package/dist/node/compiler/vinxi-codegen.js +367 -111
  339. package/dist/node/graphql/graphql-codegen.d.ts +12 -1
  340. package/dist/node/graphql/graphql-codegen.d.ts.map +1 -0
  341. package/dist/node/graphql/graphql-codegen.js +216 -34
  342. package/dist/node/graphql/graphql-schema-loader.d.ts +3 -1
  343. package/dist/node/graphql/graphql-schema-loader.d.ts.map +1 -0
  344. package/dist/node/graphql/graphql-schema-loader.js +5 -16
  345. package/dist/node/graphql/plugins/gql-plugin-files.d.ts +2 -0
  346. package/dist/node/graphql/plugins/gql-plugin-files.d.ts.map +1 -0
  347. package/dist/node/graphql/plugins/gql-plugin-files.js +1 -0
  348. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.d.ts +1 -0
  349. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.d.ts.map +1 -0
  350. package/dist/node/graphql/plugins/gql-plugin-queries.d.ts +1 -0
  351. package/dist/node/graphql/plugins/gql-plugin-queries.d.ts.map +1 -0
  352. package/dist/node/graphql/plugins/gql-plugin-queries.js +1 -1
  353. package/dist/node/graphql/query-files-loader.d.ts +4 -0
  354. package/dist/node/graphql/query-files-loader.d.ts.map +1 -0
  355. package/dist/node/graphql/query-files-loader.js +5 -0
  356. package/dist/node/graphql/wp-info-query.d.ts +1 -0
  357. package/dist/node/graphql/wp-info-query.d.ts.map +1 -0
  358. package/dist/node/project/config.d.ts +160 -73
  359. package/dist/node/project/config.d.ts.map +1 -0
  360. package/dist/node/project/config.js +69 -20
  361. package/dist/node/project/eddev-build-file.d.ts +1 -0
  362. package/dist/node/project/eddev-build-file.d.ts.map +1 -0
  363. package/dist/node/project/eddev-build-file.js +2 -2
  364. package/dist/node/project/env.d.ts +5 -0
  365. package/dist/node/project/env.d.ts.map +1 -0
  366. package/dist/node/project/env.js +1 -0
  367. package/dist/node/project/favicons.d.ts +1 -1
  368. package/dist/node/project/favicons.d.ts.map +1 -0
  369. package/dist/node/project/favicons.js +1 -1
  370. package/dist/node/project/manifest/block-manifest.d.ts +1 -0
  371. package/dist/node/project/manifest/block-manifest.d.ts.map +1 -0
  372. package/dist/node/project/manifest/block-manifest.js +3 -1
  373. package/dist/node/project/manifest/field-manifest.d.ts +1 -0
  374. package/dist/node/project/manifest/field-manifest.d.ts.map +1 -0
  375. package/dist/node/project/manifest/manifest.d.ts +2 -0
  376. package/dist/node/project/manifest/manifest.d.ts.map +1 -0
  377. package/dist/node/project/manifest/manifest.js +14 -10
  378. package/dist/node/project/manifest/routes-manifest.d.ts +21 -0
  379. package/dist/node/project/manifest/routes-manifest.d.ts.map +1 -0
  380. package/dist/node/project/manifest/routes-manifest.js +74 -0
  381. package/dist/node/project/manifest/view-manifest.d.ts +1 -0
  382. package/dist/node/project/manifest/view-manifest.d.ts.map +1 -0
  383. package/dist/node/project/manifest/view-manifest.js +1 -1
  384. package/dist/node/project/manifest/widget-manifest.d.ts +1 -0
  385. package/dist/node/project/manifest/widget-manifest.d.ts.map +1 -0
  386. package/dist/node/project/project.d.ts +12 -1
  387. package/dist/node/project/project.d.ts.map +1 -0
  388. package/dist/node/project/project.js +61 -7
  389. package/dist/node/project/wp-info.d.ts +2 -0
  390. package/dist/node/project/wp-info.d.ts.map +1 -0
  391. package/dist/node/project/wp-info.js +13 -1
  392. package/dist/node/storybook/index.d.ts +3 -0
  393. package/dist/node/storybook/index.d.ts.map +1 -0
  394. package/dist/node/storybook/index.js +13 -0
  395. package/dist/node/types/block-type.d.ts +22 -16
  396. package/dist/node/types/block-type.d.ts.map +1 -0
  397. package/dist/node/types/block-type.js +1 -0
  398. package/dist/node/types/view-type.d.ts +8 -7
  399. package/dist/node/types/view-type.d.ts.map +1 -0
  400. package/dist/node/utils/fetch-wp.d.ts +2 -0
  401. package/dist/node/utils/fetch-wp.d.ts.map +1 -0
  402. package/dist/node/utils/fetch-wp.js +27 -0
  403. package/dist/node/utils/format-zod-error.d.ts +1 -0
  404. package/dist/node/utils/format-zod-error.d.ts.map +1 -0
  405. package/dist/node/utils/fs-codegen.d.ts +3 -0
  406. package/dist/node/utils/fs-codegen.d.ts.map +1 -0
  407. package/dist/node/utils/fs-codegen.js +2 -1
  408. package/dist/node/utils/fs.d.ts +5 -0
  409. package/dist/node/utils/fs.d.ts.map +1 -0
  410. package/dist/node/utils/get-repo-info.d.ts +1 -0
  411. package/dist/node/utils/get-repo-info.d.ts.map +1 -0
  412. package/dist/node/utils/helpers.d.ts +1 -0
  413. package/dist/node/utils/helpers.d.ts.map +1 -0
  414. package/dist/node/utils/highlight-code.d.ts +1 -0
  415. package/dist/node/utils/highlight-code.d.ts.map +1 -0
  416. package/dist/node/utils/is-deploying.d.ts +1 -0
  417. package/dist/node/utils/is-deploying.d.ts.map +1 -0
  418. package/dist/node/utils/is-deploying.js +1 -1
  419. package/dist/node/utils/report-builder.d.ts +7 -6
  420. package/dist/node/utils/report-builder.d.ts.map +1 -0
  421. package/dist/node/utils/self-signed-cert.d.ts +3 -0
  422. package/dist/node/utils/self-signed-cert.d.ts.map +1 -0
  423. package/dist/node/utils/self-signed-cert.js +10 -2
  424. package/dist/node/utils/stateful-log.d.ts +1 -0
  425. package/dist/node/utils/stateful-log.d.ts.map +1 -0
  426. package/dist/node/utils/stateful-log.js +2 -0
  427. package/dist/node/utils/ts-export-extractor.d.ts +1 -0
  428. package/dist/node/utils/ts-export-extractor.d.ts.map +1 -0
  429. package/dist/node/utils/watch-file-tree.d.ts +18 -3
  430. package/dist/node/utils/watch-file-tree.d.ts.map +1 -0
  431. package/dist/node/utils/watch-file-tree.js +12 -5
  432. package/package.json +36 -24
  433. package/tsconfig.app.json +10 -5
  434. package/tsconfig.node.json +3 -2
  435. package/types.app.d.ts +2 -0
  436. package/types.meta.d.ts +116 -0
  437. package/dist/app/lib/blocks/ErrorBoundaryFrontend.d.ts +0 -15
  438. package/dist/app/lib/blocks/ErrorBoundaryFrontend.js +0 -35
  439. package/dist/app/lib/hooks/apiConfig.js +0 -4
  440. package/dist/app/lib/hooks/usePageLoad.d.ts +0 -6
  441. package/dist/app/lib/hooks/usePageLoad.js +0 -5
@@ -1,5 +1,6 @@
1
- import { code } from "ts-poet";
1
+ import { code, imp } from "ts-poet";
2
2
  import { FSCodegen } from "../utils/fs-codegen.js";
3
+ import { camelCase } from "change-case-all";
3
4
  export function getVinxiFolder(opts) {
4
5
  return (opts.mode === "development" ? "dev" : "prod") + (opts.serverless ? "" : "-spa");
5
6
  }
@@ -17,22 +18,35 @@ export function createVinxiCodegen(opts) {
17
18
  if (opts.serverless) {
18
19
  codegen.registerFile({
19
20
  name: "context.ts",
20
- generate: code /* tsx */ `
21
- import { ServerContext } from "eddev/server"
22
-
23
- export const serverContext = new ServerContext(${JSON.stringify({
24
- dev: true,
25
- origin: project.origin,
26
- replaceUrls: {
27
- from: project.origin,
28
- to: opts.endpoint ?? "",
29
- prefixes: [
30
- { prefix: "/wp-content/uploads", replace: project.config?.serverless.uploads === "proxy" },
31
- { prefix: "/wp-content/plugins", replace: project.config?.serverless.plugins === "proxy" },
32
- ],
33
- },
34
- })})
35
- `.toString(),
21
+ generate: async () => {
22
+ const args = {
23
+ dev: opts.mode === "development",
24
+ origin: project.origin,
25
+ replaceUrls: {
26
+ from: project.origin,
27
+ to: opts.endpoint ?? "",
28
+ prefixes: [
29
+ { prefix: "/wp-content/uploads", replace: project.config?.serverless.uploads === "proxy" },
30
+ { prefix: "/wp-content/plugins", replace: project.config?.serverless.plugins === "proxy" },
31
+ ],
32
+ },
33
+ rpcBases: (await project.serverRoutes.get()).bases ?? [],
34
+ config: project.config,
35
+ };
36
+ return code /* tsx */ `
37
+ import { ServerContext } from "eddev/server"
38
+ import { getManifest } from "vinxi/manifest"
39
+
40
+ ServerContext.setRuntime({
41
+ getManifest
42
+ })
43
+
44
+ export const serverContext = new ServerContext({${Object.entries(args)
45
+ .map(([key, value]) => `${key}: ${JSON.stringify(value)}`)
46
+ .join(",\n")}
47
+ })
48
+ `.toString();
49
+ },
36
50
  });
37
51
  }
38
52
  if (opts.serverless) {
@@ -46,13 +60,31 @@ export function createVinxiCodegen(opts) {
46
60
  `,
47
61
  });
48
62
  }
63
+ if (opts.serverless) {
64
+ // codegen.registerFile({
65
+ // name: "manifest/extra-routes.ts",
66
+ // generate: code/* tsx */ `
67
+ // import { createRouter, eventHandler, getRouterParam, getQuery, getWebRequest, getRequestHeaders } from "vinxi/http"
68
+ // import { serverContext } from "./context.js"
69
+ // export const routes = [
70
+ // {
71
+ // pattern: '/test1',
72
+ // handler: () => import('../../../test.ts')
73
+ // }
74
+ // ]
75
+ // export default eventHandler((event) => {
76
+ // routes
77
+ // })
78
+ // `,
79
+ // })
80
+ }
49
81
  codegen.registerFile({
50
82
  name: "entry.admin.tsx",
51
83
  generate: () => {
52
84
  return code /* tsx */ `
53
85
  ${opts.serverless ? `import "./react-shim.js"` : ""}
54
86
  ${opts.serverless ? `import "vinxi/client"` : ""}
55
- import "../../views/index.css"
87
+ import "../../${project.cssEntryFile}"
56
88
  import "./manifest/admin"
57
89
  import "./manifest/blocks"
58
90
  import "./manifest/styles"
@@ -77,7 +109,7 @@ export function createVinxiCodegen(opts) {
77
109
  * Also ensures that the assets used during SSR are loaded.
78
110
  */
79
111
  import "vinxi/client"
80
- import "../../views/index.css"
112
+ import "../../${project.cssEntryFile}"
81
113
  import "./manifest/blocks"
82
114
  import "./manifest/views"
83
115
 
@@ -89,7 +121,7 @@ export function createVinxiCodegen(opts) {
89
121
  import { devToolsStore } from 'eddev/devtools'
90
122
 
91
123
  // Set up a dynamic entry which will load the configured tailwind manifest
92
- devToolsStore.loadTailwindConfig = () => import('./manifest/tailwind-config')
124
+ devToolsStore.loadTailwindConfig = () => import('./manifest/tailwind-config.js')
93
125
 
94
126
  // Create the asset renderer, which will ensure scripts/styles are mounted correctly
95
127
  function getAssets() {
@@ -100,15 +132,17 @@ export function createVinxiCodegen(opts) {
100
132
  window.$reactRoot =
101
133
  window.$reactRoot ||
102
134
  hydrateRoot(
103
- document,
104
- <SSRClientRoot assets={getAssets()} />,
135
+ document.getElementById('root')!,
136
+ <React.Suspense><SSRClientRoot assets={getAssets()} metaTags={window._PAGE_DATA?.meta?.head} /></React.Suspense>,
137
+ {
138
+ identifierPrefix: "ed",
139
+ }
105
140
  )
106
141
 
107
142
  if (import.meta.hot) {
108
143
  import.meta.hot.accept((mod) => {
109
144
  if (mod) {
110
- const Assets = createAssets(getManifest("client").handler, getManifest("client"))
111
- const app = <SSRClientRoot assets={getAssets()} />
145
+ const app = <React.Suspense><SSRClientRoot assets={getAssets()} metaTags={window._PAGE_DATA?.meta?.head} /></React.Suspense>
112
146
  window.$reactRoot?.render(app)
113
147
  }
114
148
  })
@@ -117,6 +151,7 @@ export function createVinxiCodegen(opts) {
117
151
  declare global {
118
152
  interface Window {
119
153
  $reactRoot?: Root
154
+ _PAGE_DATA: any
120
155
  }
121
156
  }
122
157
 
@@ -130,7 +165,7 @@ export function createVinxiCodegen(opts) {
130
165
  */
131
166
  import "./manifest/blocks"
132
167
  import "./manifest/views"
133
- import "../../views/index.css"
168
+ import "../../${project.cssEntryFile}"
134
169
  import { devToolsStore } from 'eddev/devtools'
135
170
  import { createRoot } from "react-dom/client"
136
171
  import { SPARoot } from "eddev/_internal/spa-root.js"
@@ -138,130 +173,258 @@ export function createVinxiCodegen(opts) {
138
173
 
139
174
  devToolsStore.loadTailwindConfig = () => import('./manifest/tailwind-config')
140
175
 
141
- createRoot(document.getElementById("root")!).render(<SPARoot />)
176
+ createRoot(document.getElementById("root")!).render(<React.Suspense><SPARoot /></React.Suspense>)
142
177
  `;
143
178
  }
144
179
  },
145
180
  });
146
181
  if (opts.serverless) {
147
182
  codegen.registerFile({
148
- name: "handler.data-api.ts",
183
+ name: "handler.bypass.ts",
149
184
  generate: code /* tsx */ `
150
185
  /// <reference types="vinxi/types/server" />
151
- import { createRouter, eventHandler, getRouterParam, getQuery, getWebRequest, getRequestHeaders } from "vinxi/http"
152
- import { serverContext } from "./context"
186
+ import { createRouter, eventHandler, getCookie, setCookie } from "vinxi/http"
187
+
188
+ const BYPASS_TOKEN = process.env.VERCEL_BYPASS_TOKEN
189
+ const COOKIE_NAME = "__prerender_bypass"
153
190
 
154
191
  const router = createRouter()
155
192
  .get(
156
- "/route/",
193
+ "/enable",
157
194
  eventHandler(async (event) => {
158
- const id = "/"
195
+ if (!BYPASS_TOKEN) return false
159
196
 
160
- return await serverContext.fetchRouteData({
161
- pathname: id,
162
- withAppData: false,
197
+ setCookie(event, COOKIE_NAME, BYPASS_TOKEN, {
198
+ expires: new Date(Date.now() + 1000 * 60 * 60 * 24),
163
199
  })
200
+
201
+ return true
202
+ }),
203
+ )
204
+ .get(
205
+ "/disable",
206
+ eventHandler(async (event) => {
207
+ setCookie(event, COOKIE_NAME, "")
208
+
209
+ return true
210
+ }),
211
+ )
212
+ .get(
213
+ "/check",
214
+ eventHandler(async (event) => {
215
+ const cookie = getCookie(event, COOKIE_NAME)
216
+
217
+ if (cookie === BYPASS_TOKEN) {
218
+ return true
219
+ }
220
+
221
+ return false
222
+ }),
223
+ )
224
+ export default router.handler
225
+ `,
226
+ });
227
+ // codegen.registerFile({
228
+ // name: "handler.data-api.ts",
229
+ // generate: code/* tsx */ `
230
+ // /// <reference types="vinxi/types/server" />
231
+ // import { createRouter, eventHandler, getRouterParam, getQuery, getWebRequest, getRequestHeaders, getRequestURL } from "vinxi/http"
232
+ // import { serverContext } from "./context.js"
233
+ // const router = createRouter()
234
+ // .get(
235
+ // "/route/",
236
+ // eventHandler(async (event) => {
237
+ // const id = "/"
238
+ // const url = getRequestURL(event);
239
+ // return await serverContext.fetchRouteData({
240
+ // pathname: id,
241
+ // newOrigin: url.origin,
242
+ // })
243
+ // }),
244
+ // )
245
+ // .get(
246
+ // "/route/**:name",
247
+ // eventHandler(async (event) => {
248
+ // const id = "/" + getRouterParam(event, "name")
249
+ // const url = getRequestURL(event);
250
+ // return await serverContext.fetchRouteData({
251
+ // pathname: id,
252
+ // newOrigin: url.origin,
253
+ // })
254
+ // }),
255
+ // )
256
+ // .get(
257
+ // "/query/**:name",
258
+ // eventHandler(async (event) => {
259
+ // const id = "/" + getRouterParam(event, "name")
260
+ // const paramString = getQuery(event).params
261
+ // const params = typeof paramString === "string" && paramString.length ? JSON.parse(paramString) : {}
262
+ // return await serverContext.fetchNamedQuery({
263
+ // name: id,
264
+ // params: params,
265
+ // headers: getRequestHeaders(event),
266
+ // })
267
+ // }),
268
+ // )
269
+ // .post(
270
+ // "/mutation/**:name",
271
+ // eventHandler(async (event) => {
272
+ // const id = "/" + getRouterParam(event, "name")
273
+ // const body = await getWebRequest(event).json()
274
+ // return await serverContext.fetchMutation({
275
+ // name: id,
276
+ // body,
277
+ // headers: getRequestHeaders(event),
278
+ // })
279
+ // }),
280
+ // )
281
+ // export default router.handler
282
+ // `,
283
+ // })
284
+ }
285
+ if (opts.serverless) {
286
+ codegen.registerFile({
287
+ name: "handler.ssr-page.ts",
288
+ generate: code /* tsx */ `
289
+ /// <reference types="vinxi/types/server" />
290
+ import "../../${project.cssEntryFile}"
291
+ import "./manifest/blocks.js"
292
+ import "./manifest/styles.js"
293
+ import "./manifest/views.js"
294
+ import "./context.js"
295
+ import { proxyWpAdmin, renderPage, ServerContext } from "eddev/server"
296
+ import {
297
+ createRouter,
298
+ eventHandler,
299
+ getQuery,
300
+ getRequestHeaders,
301
+ getRequestURL,
302
+ getRouterParam,
303
+ getWebRequest,
304
+ } from "vinxi/http"
305
+ import { handleRPC } from "./rpc.js"
306
+ import { serverContext } from "./context.js"
307
+ import { getManifest } from "vinxi/manifest"
308
+ import { inspect } from "node:util"
309
+ import { withTrailingSlash } from 'ufo'
310
+
311
+ const router = createRouter()
312
+ .get(
313
+ "/_data/route/",
314
+ eventHandler(async (event) => {
315
+ const id = "/"
316
+ const url = getRequestURL(event)
317
+
318
+ return await serverContext.fetchRouteData({ pathname: id, newOrigin: url.origin })
164
319
  }),
165
320
  )
166
321
  .get(
167
- "/route/**:name",
322
+ "/_data/route/**:name",
168
323
  eventHandler(async (event) => {
169
324
  const id = "/" + getRouterParam(event, "name")
325
+ const url = getRequestURL(event)
170
326
 
171
- return await serverContext.fetchRouteData({
172
- pathname: id,
173
- withAppData: false,
174
- })
327
+ return await serverContext.fetchRouteData({ pathname: id, newOrigin: url.origin })
175
328
  }),
176
329
  )
177
330
  .get(
178
- "/query/**:name",
331
+ "/_data/query/**:name",
179
332
  eventHandler(async (event) => {
180
333
  const id = "/" + getRouterParam(event, "name")
181
334
  const paramString = getQuery(event).params
182
335
 
183
336
  const params = typeof paramString === "string" && paramString.length ? JSON.parse(paramString) : {}
184
337
 
185
- return await serverContext.fetchNamedQuery({
186
- name: id,
187
- params: params,
188
- headers: getRequestHeaders(event),
189
- })
338
+ return await serverContext.fetchNamedQuery({ name: id, params: params, headers: getRequestHeaders(event) })
339
+ }),
340
+ )
341
+ .get(
342
+ "/_data/manifest/**:input",
343
+ eventHandler(async (event) => {
344
+ const manifest = getManifest("client")
345
+ const id = getRouterParam(event, "input")
346
+ const input = manifest.inputs[id === 'handler' ? manifest.handler : id]
347
+ const result = {
348
+ ...input,
349
+ id,
350
+ assets: await input.assets(),
351
+ }
352
+ const code = inspect(result, { depth: 10 })
353
+ return new Response(code, { headers: { "Content-Type": "text/plain" } })
190
354
  }),
191
355
  )
192
356
  .post(
193
- "/mutation/**:name",
357
+ "/_data/mutation/**:name",
194
358
  eventHandler(async (event) => {
195
359
  const id = "/" + getRouterParam(event, "name")
196
360
  const body = await getWebRequest(event).json()
197
- return await serverContext.fetchMutation({
198
- name: id,
199
- body,
200
- headers: {},
361
+ return await serverContext.fetchMutation({ name: id, body, headers: getRequestHeaders(event) })
362
+ }),
363
+ )
364
+ .post(
365
+ "/_data/submit-gf",
366
+ eventHandler(async (event) => {
367
+ const req = getWebRequest(event)
368
+ const headers = new Headers(req.headers)
369
+ headers.delete("content-length")
370
+ headers.delete("host")
371
+ headers.delete("connection")
372
+ headers.delete("pragma")
373
+ return await serverContext.fetchOrigin("/wp-json/ed/v1/gf/submit/", {
374
+ method: "POST",
375
+ headers: headers,
376
+ body: await req.blob(),
201
377
  })
202
378
  }),
203
379
  )
204
380
 
205
- export default router.handler
381
+ export default eventHandler({
382
+ handler: async (event) => {
383
+ const serverContext = ServerContext.main
384
+ const url = getRequestURL(event)
206
385
 
207
- `,
208
- });
209
- }
210
- if (opts.serverless) {
211
- codegen.registerFile({
212
- name: "handler.ssr-page.ts",
213
- generate: code /* tsx */ `
214
- /// <reference types="vinxi/types/server" />
215
- import "../../views/index.css"
216
- import "./manifest/blocks"
217
- import "./manifest/styles"
218
- import "./manifest/views"
219
-
220
- import { renderPageToSSRStream, proxyWpAdmin } from "eddev/server"
221
- import { eventHandler, setResponseHeader, setResponseStatus, getRequestURL } from "vinxi/http"
222
- import { serverContext } from "./context"
223
-
224
- export default eventHandler({
225
- handler: async (event) => {
226
- const url = getRequestURL(event)
227
-
228
- if (url.pathname.includes('.')) {
229
- return proxyWpAdmin(event, serverContext)
230
- }
386
+ // RPC
387
+ const isRPC = serverContext.rpcBases.some((base) => url.pathname.startsWith(base))
388
+ if (isRPC) {
389
+ return handleRPC(event)
390
+ }
231
391
 
232
- const response = await serverContext.fetchRouteData({
233
- pathname: url.pathname,
234
- withAppData: true,
235
- headers: {},
236
- query: {},
237
- })
238
- if (response.ok) {
239
- setResponseStatus(event, response.status)
240
- setResponseHeader(event, "Content-Type", "text/html; charset=utf-8")
241
- return renderPageToSSRStream(url.pathname, await response.json())
242
- } else {
243
- return response
244
- }
245
- },
246
- })
392
+ // Data API
393
+ if (url.pathname.startsWith("/_data/")) {
394
+ return router.handler(event)
395
+ }
396
+
397
+ // Proxy WordPress
398
+ if (url.pathname.includes(".") || url.pathname.startsWith("/graphql") || url.pathname.startsWith("/wp-")) {
399
+ return proxyWpAdmin(event)
400
+ }
401
+
402
+ // Enforce trailing slashes
403
+ if (!url.pathname.endsWith("/")) {
404
+ url.pathname = withTrailingSlash(url.pathname)
405
+ return Response.redirect(url, 301)
406
+ }
247
407
 
408
+ // SSR
409
+ return renderPage({ pathname: url.pathname, newOrigin: url.origin })
410
+ },
411
+ })
248
412
  `,
249
413
  });
250
414
  }
251
415
  if (opts.serverless) {
252
- codegen.registerFile({
253
- name: "handler.wp-proxy.ts",
254
- generate: code /* tsx */ `
255
- /// <reference types="vinxi/types/server" />
256
- import { proxyWpAdmin } from "eddev/server"
257
- import { eventHandler } from "vinxi/http"
258
- import { serverContext } from "./context"
259
-
260
- export default eventHandler(async (event) => {
261
- return proxyWpAdmin(event, serverContext)
262
- })
263
- `,
264
- });
416
+ // codegen.registerFile({
417
+ // name: "handler.wp-proxy.ts",
418
+ // generate: code/* tsx */ `
419
+ // /// <reference types="vinxi/types/server" />
420
+ // import { proxyWpAdmin } from "eddev/server"
421
+ // import { eventHandler } from "vinxi/http"
422
+ // import "./context.js"
423
+ // export default eventHandler(async (event) => {
424
+ // return proxyWpAdmin(event)
425
+ // })
426
+ // `,
427
+ // })
265
428
  }
266
429
  codegen.registerFile({
267
430
  name: "manifest/blocks.ts",
@@ -276,7 +439,7 @@ export function createVinxiCodegen(opts) {
276
439
  ${Object.entries(blockManifest.blocks)
277
440
  .filter(([name]) => !name.match(/^_[a-z]+$/i))
278
441
  .map(([name, block]) => {
279
- const importStatement = `dynamic(() => import(${JSON.stringify("../../../" + block.fileName)}))`;
442
+ const importStatement = `dynamic(() => import(${JSON.stringify("../../../" + block.fileName)}), ${JSON.stringify(block.fileName)})`;
280
443
  return JSON.stringify(block.acfName) + ": " + importStatement;
281
444
  })
282
445
  .join(",\n")},
@@ -360,12 +523,17 @@ export function createVinxiCodegen(opts) {
360
523
  return code /* ts */ `
361
524
  import { viewManifestReader } from 'eddev/_internal'
362
525
  import { dynamic } from 'eddev/dynamic'
363
- const manifest = {${Object.entries(viewManifest.views)
364
- .map(([name, view]) => {
365
- const importStatement = `dynamic(() => import(${JSON.stringify("../../../" + view.fileName)}))`;
366
- return JSON.stringify(view.slug) + ": " + importStatement;
367
- })
368
- .join(",\n")}}
526
+ const manifest = {${Object.entries(viewManifest.views).map(([name, view]) => {
527
+ const src = "../../../" + view.fileName;
528
+ let importStatement;
529
+ if (name.startsWith("_")) {
530
+ importStatement = imp(name + "=" + src);
531
+ }
532
+ else {
533
+ importStatement = code `dynamic(() => import(${JSON.stringify(src)}), ${JSON.stringify(view.fileName)})`;
534
+ }
535
+ return code `${JSON.stringify(view.slug)}: ${importStatement},\n`;
536
+ })}}
369
537
 
370
538
  viewManifestReader.value = manifest
371
539
 
@@ -391,7 +559,7 @@ export function createVinxiCodegen(opts) {
391
559
  name: "manifest/tailwind-config.ts",
392
560
  generate: async () => {
393
561
  return code /* ts */ `
394
- import tw from "../../../tailwind.config"
562
+ import tw from "../../../tailwind.config.ts"
395
563
  import resolveConfig from 'tailwindcss/resolveConfig'
396
564
  import { devToolsStore } from 'eddev/devtools'
397
565
 
@@ -404,5 +572,93 @@ export function createVinxiCodegen(opts) {
404
572
  `;
405
573
  },
406
574
  });
575
+ if (opts.serverless) {
576
+ codegen.registerFile({
577
+ name: "manifest/routes.ts",
578
+ generate: async () => {
579
+ const routeManifest = await project.serverRoutes.get();
580
+ return code /* ts */ `
581
+ import { instantiateRouter } from "eddev/server"
582
+ ${routeManifest.contextFileName
583
+ ? code /*ts*/ `
584
+ import createContext from "../../../${routeManifest.contextFileName}"
585
+ `
586
+ : code /*ts*/ `
587
+ const createContext = () => ({})
588
+ `}
589
+
590
+ const router = instantiateRouter({${Object.entries(routeManifest.routes).map(([name, route]) => {
591
+ const src = "../../../" + route.fileName;
592
+ const importStatement = imp(camelCase(name) + "=" + src);
593
+ return code `${JSON.stringify(route.prefix)}: ${importStatement},\n`;
594
+ })}})
595
+
596
+ export { createContext, router }
597
+ `;
598
+ },
599
+ subscribe: project.serverRoutes.subscribe,
600
+ });
601
+ codegen.registerFile({
602
+ name: "rpc.ts",
603
+ generate: code /* tsx */ `
604
+ /// <reference types="vinxi/types/server" />
605
+ import "./context.js"
606
+ import { fetchRequestHandler } from "@trpc/server/adapters/fetch"
607
+ import { parseURL, stringifyParsedURL } from "ufo"
608
+ import { EventHandlerRequest, getWebRequest, H3Event, setResponseHeaders } from "vinxi/http"
609
+ import { createContext, router } from "./manifest/routes.ts"
610
+ import { ServerContext } from "eddev/server"
611
+
612
+ export function handleRPC(event: H3Event<EventHandlerRequest>) {
613
+ const serverContext = ServerContext.main
614
+
615
+ // Handle CORS
616
+ setResponseHeaders(event, serverContext.getCorsHeaders(event.headers.get("origin") ?? event.headers.get("referer") ?? ""))
617
+ if (event.method === "OPTIONS") {
618
+ event.node.res.statusCode = 204
619
+ event.node.res.statusMessage = "No Content."
620
+ return "OK"
621
+ }
622
+
623
+ // Update URLs with dots, which tRPC prefers
624
+ const originalReq = getWebRequest(event)
625
+ const parsed = parseURL(originalReq.url)
626
+ parsed.pathname = "/" + parsed.pathname.replace(/(^\\/|\\/$)/g, "").replace(/\\//g, ".")
627
+ const req = new Request(stringifyParsedURL(parsed), originalReq)
628
+
629
+ // Handle any early results which are Responses
630
+ function processEarlyResult(value: any): Response | undefined {
631
+ if (value instanceof Response) {
632
+ return value
633
+ }
634
+ }
635
+
636
+ return new Promise(async (resolve) => {
637
+ let sent = false
638
+ const defaultResponse = await fetchRequestHandler({
639
+ endpoint: "/",
640
+ req: req,
641
+ router: router,
642
+ createContext,
643
+ onError: (err) => console.error(err),
644
+ batching: { enabled: false },
645
+ // If a Response object is returned by a route, it will be sent as the response
646
+ responseMeta(opts) {
647
+ const value = opts?.data?.[0]?.["result"]?.["data"]
648
+ const response = processEarlyResult(value)
649
+ if (response) {
650
+ sent = true
651
+ resolve(response)
652
+ }
653
+ return {}
654
+ },
655
+ })
656
+ if (sent) return
657
+ resolve(defaultResponse)
658
+ })
659
+ }
660
+ `,
661
+ });
662
+ }
407
663
  return codegen;
408
664
  }
@@ -1,7 +1,13 @@
1
1
  import { Project } from "../project/project.js";
2
2
  export declare const graphqlLog: import("../utils/stateful-log.js").StatefulLog<GraphQLGenerator>;
3
+ type GraphQLGeneratorOptions = {
4
+ watch?: boolean;
5
+ optimize?: boolean;
6
+ generate?: boolean;
7
+ };
3
8
  export declare class GraphQLGenerator {
4
9
  project: Project;
10
+ opts: GraphQLGeneratorOptions;
5
11
  private needsRegenerate;
6
12
  private needsReload;
7
13
  private regenerateReason;
@@ -9,22 +15,27 @@ export declare class GraphQLGenerator {
9
15
  private isGenerating;
10
16
  private schemaLoader;
11
17
  private fileLoader;
18
+ private optimizeWriter;
12
19
  private debouncer?;
13
20
  private retryTimer?;
14
- constructor(project: Project);
21
+ constructor(project: Project, opts: GraphQLGeneratorOptions);
15
22
  queueRegenerate(full: boolean, reason: string, info?: string | string[]): Promise<void>;
16
23
  start(): Promise<void>;
17
24
  private listen;
18
25
  scheduleRetry(): void;
19
26
  generate(): Promise<void>;
27
+ private getOptimizedQueries;
20
28
  /**
21
29
  * Validates a GraphQL manifest against a schema, ensuring there are no user errors.
22
30
  */
23
31
  private validateGraphQLFiles;
24
32
  private generateTS;
25
33
  generateUtilTypes(): Promise<unknown[]>;
34
+ generateAPITypes(): Promise<unknown[]>;
26
35
  /**
27
36
  * Saves the schema to a file, for use by the VSCode GraphQL extension
28
37
  */
29
38
  private writeSchemaFile;
30
39
  }
40
+ export {};
41
+ //# sourceMappingURL=graphql-codegen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql-codegen.d.ts","sourceRoot":"","sources":["../../../src/node/graphql/graphql-codegen.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAkB/C,eAAO,MAAM,UAAU,kEAAgE,CAAA;AA4CvF,KAAK,uBAAuB,GAAG;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,qBAAa,gBAAgB;IAiBlB,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,uBAAuB;IAjBtC,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,WAAW,CAAO;IAC1B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,oBAAoB,CAAiB;IAC7C,OAAO,CAAC,YAAY,CAAQ;IAE5B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,UAAU,CAAgC;IAElD,OAAO,CAAC,cAAc,CAAW;IAEjC,OAAO,CAAC,SAAS,CAAC,CAAgB;IAElC,OAAO,CAAC,UAAU,CAAC,CAAgB;gBAG1B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,uBAAuB;IA8DhC,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAkBvE,KAAK;YA8BG,MAAM;IA+CpB,aAAa;IAOP,QAAQ;IA6Md,OAAO,CAAC,mBAAmB;IAwE3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;YAoEd,UAAU;IAqDlB,iBAAiB;IAkFjB,gBAAgB;IAyCtB;;OAEG;YACW,eAAe;CAQ9B"}