eddev 2.0.0-beta.2 → 2.0.0-beta.200

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 (522) 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 +2 -0
  9. package/dist/app/entry/boot-admin.d.ts.map +1 -0
  10. package/dist/app/entry/boot-admin.js +12 -0
  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 +2 -0
  15. package/dist/app/entry/spa-root.d.ts.map +1 -0
  16. package/dist/app/entry/spa-root.js +7 -0
  17. package/dist/app/entry/ssr-root-client.d.ts +7 -0
  18. package/dist/app/entry/ssr-root-client.d.ts.map +1 -0
  19. package/dist/app/entry/ssr-root-client.js +21 -0
  20. package/dist/app/entry/ssr-root.d.ts +11 -0
  21. package/dist/app/entry/ssr-root.d.ts.map +1 -0
  22. package/dist/app/entry/ssr-root.js +22 -0
  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 +3 -2
  28. package/dist/app/lib/admin/index.d.ts.map +1 -0
  29. package/dist/app/lib/admin/index.js +2 -2
  30. package/dist/app/lib/admin/installFieldTypes.d.ts +1 -0
  31. package/dist/app/lib/admin/installFieldTypes.d.ts.map +1 -0
  32. package/dist/app/lib/admin/installFieldTypes.js +3 -1
  33. package/dist/app/lib/admin/runWidgets.d.ts +1 -0
  34. package/dist/app/lib/admin/runWidgets.d.ts.map +1 -0
  35. package/dist/app/lib/admin/runWidgets.js +8 -3
  36. package/dist/app/lib/blocks/ContentBlocks.d.ts +7 -4
  37. package/dist/app/lib/blocks/ContentBlocks.d.ts.map +1 -0
  38. package/dist/app/lib/blocks/ContentBlocks.js +19 -6
  39. package/dist/app/lib/blocks/EditableText.d.ts +31 -6
  40. package/dist/app/lib/blocks/EditableText.d.ts.map +1 -0
  41. package/dist/app/lib/blocks/EditableText.js +36 -7
  42. package/dist/app/lib/blocks/InnerBlocks.d.ts +23 -8
  43. package/dist/app/lib/blocks/InnerBlocks.d.ts.map +1 -0
  44. package/dist/app/lib/blocks/InnerBlocks.js +76 -28
  45. package/dist/app/lib/blocks/SlotBlocks.d.ts +8 -0
  46. package/dist/app/lib/blocks/SlotBlocks.d.ts.map +1 -0
  47. package/dist/app/lib/blocks/SlotBlocks.js +46 -0
  48. package/dist/app/lib/blocks/block-utils.d.ts +3 -2
  49. package/dist/app/lib/blocks/block-utils.d.ts.map +1 -0
  50. package/dist/app/lib/blocks/block-utils.js +4 -2
  51. package/dist/app/lib/blocks/builtin-blocks.d.ts +2 -0
  52. package/dist/app/lib/blocks/builtin-blocks.d.ts.map +1 -0
  53. package/dist/app/lib/blocks/builtin-blocks.js +55 -0
  54. package/dist/app/lib/blocks/defineBlock.d.ts +4 -0
  55. package/dist/app/lib/blocks/defineBlock.d.ts.map +1 -0
  56. package/dist/app/lib/blocks/defineBlock.js +9 -0
  57. package/dist/app/lib/blocks/editor/EditorHighlights.d.ts +8 -0
  58. package/dist/app/lib/blocks/editor/EditorHighlights.d.ts.map +1 -0
  59. package/dist/app/lib/blocks/editor/EditorHighlights.js +164 -0
  60. package/dist/app/lib/blocks/editor/EditorSupport.d.ts +1 -0
  61. package/dist/app/lib/blocks/editor/EditorSupport.d.ts.map +1 -0
  62. package/dist/app/lib/blocks/editor/EditorSupport.js +19 -12
  63. package/dist/app/lib/blocks/editor/ErrorBoundaryEditor.d.ts +1 -0
  64. package/dist/app/lib/blocks/editor/ErrorBoundaryEditor.d.ts.map +1 -0
  65. package/dist/app/lib/blocks/editor/block-templates.d.ts +8 -1
  66. package/dist/app/lib/blocks/editor/block-templates.d.ts.map +1 -0
  67. package/dist/app/lib/blocks/editor/block-templates.js +71 -2
  68. package/dist/app/lib/blocks/editor/blocks-by-tag.d.ts +1 -0
  69. package/dist/app/lib/blocks/editor/blocks-by-tag.d.ts.map +1 -0
  70. package/dist/app/lib/blocks/editor/controls.d.ts +1 -0
  71. package/dist/app/lib/blocks/editor/controls.d.ts.map +1 -0
  72. package/dist/app/lib/blocks/editor/create-block.d.ts +10 -0
  73. package/dist/app/lib/blocks/editor/create-block.d.ts.map +1 -0
  74. package/dist/app/lib/blocks/editor/create-block.js +13 -0
  75. package/dist/app/lib/blocks/editor/editor-config.d.ts +78 -9
  76. package/dist/app/lib/blocks/editor/editor-config.d.ts.map +1 -0
  77. package/dist/app/lib/blocks/editor/editor-config.js +29 -62
  78. package/dist/app/lib/blocks/editor/installGutenbergHooks.d.ts +4 -0
  79. package/dist/app/lib/blocks/editor/installGutenbergHooks.d.ts.map +1 -0
  80. package/dist/app/lib/blocks/editor/installGutenbergHooks.js +130 -25
  81. package/dist/app/lib/blocks/editor/root-blocks.d.ts +7 -0
  82. package/dist/app/lib/blocks/editor/root-blocks.d.ts.map +1 -0
  83. package/dist/app/lib/blocks/editor/root-blocks.js +30 -0
  84. package/dist/app/lib/blocks/editor/usePostEditor.d.ts +13 -2
  85. package/dist/app/lib/blocks/editor/usePostEditor.d.ts.map +1 -0
  86. package/dist/app/lib/blocks/editor/usePostEditor.js +28 -13
  87. package/dist/app/lib/blocks/index.d.ts +12 -9
  88. package/dist/app/lib/blocks/index.d.ts.map +1 -0
  89. package/dist/app/lib/blocks/index.js +11 -9
  90. package/dist/app/lib/blocks/inline-editing.d.ts +11 -1
  91. package/dist/app/lib/blocks/inline-editing.d.ts.map +1 -0
  92. package/dist/app/lib/blocks/inline-editing.js +15 -5
  93. package/dist/app/lib/devtools/components/BreakpointIndicator.d.ts +1 -0
  94. package/dist/app/lib/devtools/components/BreakpointIndicator.d.ts.map +1 -0
  95. package/dist/app/lib/devtools/components/BreakpointIndicator.js +7 -5
  96. package/dist/app/lib/devtools/components/DevUI.d.ts +1 -0
  97. package/dist/app/lib/devtools/components/DevUI.d.ts.map +1 -0
  98. package/dist/app/lib/devtools/components/DevUI.js +4 -3
  99. package/dist/app/lib/devtools/components/GridIndicator.d.ts +2 -0
  100. package/dist/app/lib/devtools/components/GridIndicator.d.ts.map +1 -0
  101. package/dist/app/lib/devtools/components/GridIndicator.js +29 -0
  102. package/dist/app/lib/devtools/dev-tools-store.d.ts +10 -0
  103. package/dist/app/lib/devtools/dev-tools-store.d.ts.map +1 -0
  104. package/dist/app/lib/devtools/dev-tools-store.js +8 -0
  105. package/dist/app/lib/devtools/hooks/usePersistState.d.ts +2 -1
  106. package/dist/app/lib/devtools/hooks/usePersistState.d.ts.map +1 -0
  107. package/dist/app/lib/devtools/hooks/usePersistState.js +11 -2
  108. package/dist/app/lib/devtools/hooks/useTailwind.d.ts +2311 -1267
  109. package/dist/app/lib/devtools/hooks/useTailwind.d.ts.map +1 -0
  110. package/dist/app/lib/devtools/hooks/useTailwind.js +6 -3
  111. package/dist/app/lib/devtools/index.d.ts +2 -0
  112. package/dist/app/lib/devtools/index.d.ts.map +1 -0
  113. package/dist/app/lib/devtools/index.js +1 -1
  114. package/dist/app/lib/devtools/loader.d.ts +1 -0
  115. package/dist/app/lib/devtools/loader.d.ts.map +1 -0
  116. package/dist/app/lib/devtools/loader.js +8 -7
  117. package/dist/app/lib/devtools/tailwind.config.d.ts +1 -0
  118. package/dist/app/lib/devtools/tailwind.config.d.ts.map +1 -0
  119. package/dist/app/lib/devtools/useQueryDebug.d.ts +8 -1
  120. package/dist/app/lib/devtools/useQueryDebug.d.ts.map +1 -0
  121. package/dist/app/lib/devtools/useQueryDebug.js +5 -8
  122. package/dist/app/lib/dynamic/dynamic.d.ts +2 -1
  123. package/dist/app/lib/dynamic/dynamic.d.ts.map +1 -0
  124. package/dist/app/lib/dynamic/dynamic.js +5 -1
  125. package/dist/app/lib/dynamic/index.d.ts +2 -1
  126. package/dist/app/lib/dynamic/index.d.ts.map +1 -0
  127. package/dist/app/lib/dynamic/index.js +1 -1
  128. package/dist/app/lib/hooks/index.d.ts +5 -5
  129. package/dist/app/lib/hooks/index.d.ts.map +1 -0
  130. package/dist/app/lib/hooks/index.js +4 -5
  131. package/dist/app/lib/hooks/{queryUtils.d.ts → query-hooks.d.ts} +46 -4
  132. package/dist/app/lib/hooks/query-hooks.d.ts.map +1 -0
  133. package/dist/app/lib/hooks/{queryUtils.js → query-hooks.js} +99 -40
  134. package/dist/app/lib/hooks/useAppData.d.ts +1 -0
  135. package/dist/app/lib/hooks/useAppData.d.ts.map +1 -0
  136. package/dist/app/lib/hooks/useAppData.js +12 -1
  137. package/dist/app/lib/hooks/useRPC.d.ts +1 -4
  138. package/dist/app/lib/hooks/useRPC.d.ts.map +1 -0
  139. package/dist/app/lib/hooks/useRPC.js +0 -8
  140. package/dist/app/lib/integrations/gravityforms/index.d.ts +3 -0
  141. package/dist/app/lib/integrations/gravityforms/index.d.ts.map +1 -0
  142. package/dist/app/lib/integrations/gravityforms/index.js +2 -0
  143. package/dist/app/lib/integrations/gravityforms/types.d.ts +145 -0
  144. package/dist/app/lib/integrations/gravityforms/types.d.ts.map +1 -0
  145. package/dist/app/lib/integrations/gravityforms/types.js +1 -0
  146. package/dist/app/lib/integrations/gravityforms/useGravityForm.d.ts +31 -0
  147. package/dist/app/lib/integrations/gravityforms/useGravityForm.d.ts.map +1 -0
  148. package/dist/app/lib/integrations/gravityforms/useGravityForm.js +295 -0
  149. package/dist/app/lib/internal/finalize-rpc.d.ts +18 -0
  150. package/dist/app/lib/internal/finalize-rpc.d.ts.map +1 -0
  151. package/dist/app/lib/internal/finalize-rpc.js +3 -0
  152. package/dist/app/lib/internal/index.d.ts +6 -4
  153. package/dist/app/lib/internal/index.d.ts.map +1 -0
  154. package/dist/app/lib/internal/index.js +5 -4
  155. package/dist/app/lib/internal/internal-store.d.ts +1 -2
  156. package/dist/app/lib/internal/internal-store.d.ts.map +1 -0
  157. package/dist/app/lib/internal/internal-store.js +1 -3
  158. package/dist/app/lib/internal/read-admin-manifest.d.ts +2 -1
  159. package/dist/app/lib/internal/read-admin-manifest.d.ts.map +1 -0
  160. package/dist/app/lib/internal/read-block-manifest.d.ts +1 -0
  161. package/dist/app/lib/internal/read-block-manifest.d.ts.map +1 -0
  162. package/dist/app/lib/internal/read-view-manifest.d.ts +1 -0
  163. package/dist/app/lib/internal/read-view-manifest.d.ts.map +1 -0
  164. package/dist/app/lib/legacy-stitches/createStitches.d.ts +22 -21
  165. package/dist/app/lib/legacy-stitches/createStitches.d.ts.map +1 -0
  166. package/dist/app/lib/legacy-stitches/createStitches.js +1 -1
  167. package/dist/app/lib/legacy-stitches/index.d.ts +2 -1
  168. package/dist/app/lib/legacy-stitches/index.d.ts.map +1 -0
  169. package/dist/app/lib/legacy-stitches/index.js +1 -1
  170. package/dist/app/lib/routing/components/BackButton.d.ts +50 -0
  171. package/dist/app/lib/routing/components/BackButton.d.ts.map +1 -0
  172. package/dist/app/lib/routing/components/BackButton.js +47 -0
  173. package/dist/app/lib/routing/components/BrowserRouter.d.ts +10 -1
  174. package/dist/app/lib/routing/components/BrowserRouter.d.ts.map +1 -0
  175. package/dist/app/lib/routing/components/BrowserRouter.js +138 -23
  176. package/dist/app/lib/routing/components/ClientOnly.d.ts +1 -0
  177. package/dist/app/lib/routing/components/ClientOnly.d.ts.map +1 -0
  178. package/dist/app/lib/routing/components/ClientOnly.js +2 -2
  179. package/dist/app/lib/routing/components/Link.d.ts +19 -2
  180. package/dist/app/lib/routing/components/Link.d.ts.map +1 -0
  181. package/dist/app/lib/routing/components/Link.js +47 -27
  182. package/dist/app/lib/routing/components/NativeLinkHandler.d.ts +10 -0
  183. package/dist/app/lib/routing/components/NativeLinkHandler.d.ts.map +1 -0
  184. package/dist/app/lib/routing/components/NativeLinkHandler.js +23 -0
  185. package/dist/app/lib/routing/components/RouteRenderer.d.ts +2 -1
  186. package/dist/app/lib/routing/components/RouteRenderer.d.ts.map +1 -0
  187. package/dist/app/lib/routing/components/RouteRenderer.js +20 -6
  188. package/dist/app/lib/routing/components/SSRRouter.d.ts +5 -2
  189. package/dist/app/lib/routing/components/SSRRouter.d.ts.map +1 -0
  190. package/dist/app/lib/routing/components/SSRRouter.js +7 -6
  191. package/dist/app/lib/routing/components/ScrollRestoration.d.ts +1 -0
  192. package/dist/app/lib/routing/components/ScrollRestoration.d.ts.map +1 -0
  193. package/dist/app/lib/routing/components/ScrollRestoration.js +5 -2
  194. package/dist/app/lib/routing/context.d.ts +9 -5
  195. package/dist/app/lib/routing/context.d.ts.map +1 -0
  196. package/dist/app/lib/routing/context.js +13 -96
  197. package/dist/app/lib/routing/hooks/useIsSSR.d.ts +1 -0
  198. package/dist/app/lib/routing/hooks/useIsSSR.d.ts.map +1 -0
  199. package/dist/app/lib/routing/hooks/useRestorableState.d.ts +3 -1
  200. package/dist/app/lib/routing/hooks/useRestorableState.d.ts.map +1 -0
  201. package/dist/app/lib/routing/hooks/useRestorableState.js +2 -1
  202. package/dist/app/lib/routing/hooks/useRoute.d.ts +17 -1
  203. package/dist/app/lib/routing/hooks/useRoute.d.ts.map +1 -0
  204. package/dist/app/lib/routing/hooks/useRoute.js +22 -1
  205. package/dist/app/lib/routing/hooks/useRouteMeta.d.ts +6 -0
  206. package/dist/app/lib/routing/hooks/useRouteMeta.d.ts.map +1 -0
  207. package/dist/app/lib/routing/hooks/useRouteMeta.js +9 -0
  208. package/dist/app/lib/routing/hooks/useRouteTransition.d.ts +2 -1
  209. package/dist/app/lib/routing/hooks/useRouteTransition.d.ts.map +1 -0
  210. package/dist/app/lib/routing/hooks/useRouteTransition.js +1 -1
  211. package/dist/app/lib/routing/hooks/useRouter.d.ts +2 -1
  212. package/dist/app/lib/routing/hooks/useRouter.d.ts.map +1 -0
  213. package/dist/app/lib/routing/hooks/useRouter.js +1 -1
  214. package/dist/app/lib/routing/hooks/useRouterEvents.d.ts +2 -1
  215. package/dist/app/lib/routing/hooks/useRouterEvents.d.ts.map +1 -0
  216. package/dist/app/lib/routing/hooks/useRouterEvents.js +1 -1
  217. package/dist/app/lib/routing/hooks/useRouterState.d.ts +2 -1
  218. package/dist/app/lib/routing/hooks/useRouterState.d.ts.map +1 -0
  219. package/dist/app/lib/routing/hooks/useRouterState.js +1 -1
  220. package/dist/app/lib/routing/hooks/useSearchParams.d.ts +78 -6
  221. package/dist/app/lib/routing/hooks/useSearchParams.d.ts.map +1 -0
  222. package/dist/app/lib/routing/hooks/useSearchParams.js +77 -17
  223. package/dist/app/lib/routing/index.d.ts +16 -13
  224. package/dist/app/lib/routing/index.d.ts.map +1 -0
  225. package/dist/app/lib/routing/index.js +15 -13
  226. package/dist/app/lib/routing/loader.d.ts +3 -2
  227. package/dist/app/lib/routing/loader.d.ts.map +1 -0
  228. package/dist/app/lib/routing/loader.js +26 -15
  229. package/dist/app/lib/routing/types.d.ts +62 -14
  230. package/dist/app/lib/routing/types.d.ts.map +1 -0
  231. package/dist/app/lib/routing/utils.d.ts +7 -2
  232. package/dist/app/lib/routing/utils.d.ts.map +1 -0
  233. package/dist/app/lib/routing/utils.js +41 -4
  234. package/dist/app/lib/{hooks → runtime}/apiConfig.d.ts +11 -2
  235. package/dist/app/lib/runtime/apiConfig.d.ts.map +1 -0
  236. package/dist/app/lib/runtime/apiConfig.js +6 -0
  237. package/dist/app/lib/runtime/errorHandling.d.ts +40 -0
  238. package/dist/app/lib/runtime/errorHandling.d.ts.map +1 -0
  239. package/dist/app/lib/runtime/errorHandling.js +6 -0
  240. package/dist/app/lib/runtime/index.d.ts +3 -0
  241. package/dist/app/lib/runtime/index.d.ts.map +1 -0
  242. package/dist/app/lib/runtime/index.js +2 -0
  243. package/dist/app/lib/views/defineView.d.ts +2 -1
  244. package/dist/app/lib/views/defineView.d.ts.map +1 -0
  245. package/dist/app/lib/views/index.d.ts +2 -1
  246. package/dist/app/lib/views/index.d.ts.map +1 -0
  247. package/dist/app/lib/views/index.js +1 -1
  248. package/dist/app/server/index.d.ts +6 -0
  249. package/dist/app/server/index.d.ts.map +1 -0
  250. package/dist/app/server/index.js +5 -0
  251. package/dist/app/server/proxy-wp-admin.d.ts +3 -0
  252. package/dist/app/server/proxy-wp-admin.d.ts.map +1 -0
  253. package/dist/app/server/proxy-wp-admin.js +138 -0
  254. package/dist/app/server/render-ai-page.d.ts +13 -0
  255. package/dist/app/server/render-ai-page.d.ts.map +1 -0
  256. package/dist/app/server/render-ai-page.js +100 -0
  257. package/dist/app/server/render-ssr-page.d.ts +31 -0
  258. package/dist/app/server/render-ssr-page.d.ts.map +1 -0
  259. package/dist/app/server/render-ssr-page.js +237 -0
  260. package/dist/app/server/rpc.d.ts +52 -0
  261. package/dist/app/server/rpc.d.ts.map +1 -0
  262. package/dist/app/server/rpc.js +18 -0
  263. package/dist/app/server/server-context.d.ts +75 -0
  264. package/dist/app/server/server-context.d.ts.map +1 -0
  265. package/dist/app/server/server-context.js +417 -0
  266. package/dist/app/server/server-custom-config.d.ts +3 -0
  267. package/dist/app/server/server-custom-config.d.ts.map +1 -0
  268. package/dist/app/server/server-custom-config.js +1 -0
  269. package/dist/app/server/utils/content-security.d.ts +26 -0
  270. package/dist/app/server/utils/content-security.d.ts.map +1 -0
  271. package/dist/app/server/utils/content-security.js +124 -0
  272. package/dist/app/server/utils/headers.d.ts +2 -0
  273. package/dist/app/server/utils/headers.d.ts.map +1 -0
  274. package/dist/app/server/utils/headers.js +17 -0
  275. package/dist/app/server/utils/replace-host.d.ts +7 -4
  276. package/dist/app/server/utils/replace-host.d.ts.map +1 -0
  277. package/dist/app/server/utils/replace-host.js +66 -11
  278. package/dist/app/server/utils/swr-cache.d.ts +5 -0
  279. package/dist/app/server/utils/swr-cache.d.ts.map +1 -0
  280. package/dist/app/server/utils/swr-cache.js +31 -0
  281. package/dist/app/utils/APIProvider.d.ts +3 -0
  282. package/dist/app/utils/APIProvider.d.ts.map +1 -0
  283. package/dist/app/utils/APIProvider.js +5 -0
  284. package/dist/app/utils/BlockErrorBoundary.d.ts +20 -0
  285. package/dist/app/utils/BlockErrorBoundary.d.ts.map +1 -0
  286. package/dist/app/utils/BlockErrorBoundary.js +38 -0
  287. package/dist/app/utils/ErrorMessage.d.ts +6 -0
  288. package/dist/app/utils/ErrorMessage.d.ts.map +1 -0
  289. package/dist/app/utils/ErrorMessage.js +14 -0
  290. package/dist/app/utils/RouteErrorBoundary.d.ts +20 -0
  291. package/dist/app/utils/RouteErrorBoundary.d.ts.map +1 -0
  292. package/dist/app/utils/RouteErrorBoundary.js +41 -0
  293. package/dist/app/utils/asset-capture.d.ts +3 -0
  294. package/dist/app/utils/asset-capture.d.ts.map +1 -0
  295. package/dist/app/utils/asset-capture.js +5 -0
  296. package/dist/app/utils/hydration-debugger.d.ts +14 -0
  297. package/dist/app/utils/hydration-debugger.d.ts.map +1 -0
  298. package/dist/app/utils/hydration-debugger.js +11 -0
  299. package/dist/app/utils/query-client.d.ts +3 -0
  300. package/dist/app/utils/query-client.d.ts.map +1 -0
  301. package/dist/app/utils/query-client.js +5 -1
  302. package/dist/app/utils/query-monitor.d.ts +27 -0
  303. package/dist/app/utils/query-monitor.d.ts.map +1 -0
  304. package/dist/app/utils/query-monitor.js +7 -0
  305. package/dist/app/utils/trpc-client.d.ts +3 -0
  306. package/dist/app/utils/trpc-client.d.ts.map +1 -0
  307. package/dist/app/utils/trpc-client.js +39 -0
  308. package/dist/app/utils/wp.d.ts +11 -10
  309. package/dist/app/utils/wp.d.ts.map +1 -0
  310. package/dist/node/cli/cli-mode.d.ts +1 -0
  311. package/dist/node/cli/cli-mode.d.ts.map +1 -0
  312. package/dist/node/cli/cli-worker.d.ts +2 -1
  313. package/dist/node/cli/cli-worker.d.ts.map +1 -0
  314. package/dist/node/cli/cli-worker.js +12 -3
  315. package/dist/node/cli/cli.d.ts +1 -0
  316. package/dist/node/cli/cli.d.ts.map +1 -0
  317. package/dist/node/cli/cli.js +195 -11
  318. package/dist/node/cli/display/CLIApp.d.ts +2 -1
  319. package/dist/node/cli/display/CLIApp.d.ts.map +1 -0
  320. package/dist/node/cli/display/CLIApp.js +4 -7
  321. package/dist/node/cli/display/boot-cli-app.d.ts +1 -0
  322. package/dist/node/cli/display/boot-cli-app.d.ts.map +1 -0
  323. package/dist/node/cli/display/boot-cli-app.js +1 -1
  324. package/dist/node/cli/display/components/Fullscreen.d.ts +1 -0
  325. package/dist/node/cli/display/components/Fullscreen.d.ts.map +1 -0
  326. package/dist/node/cli/display/components/LogEntries.d.ts +2 -1
  327. package/dist/node/cli/display/components/LogEntries.d.ts.map +1 -0
  328. package/dist/node/cli/display/components/MenuItem.d.ts +1 -0
  329. package/dist/node/cli/display/components/MenuItem.d.ts.map +1 -0
  330. package/dist/node/cli/display/components/TextInput.d.ts +1 -0
  331. package/dist/node/cli/display/components/TextInput.d.ts.map +1 -0
  332. package/dist/node/cli/display/hooks/useManifest.d.ts +1 -0
  333. package/dist/node/cli/display/hooks/useManifest.d.ts.map +1 -0
  334. package/dist/node/cli/display/hooks/useStatefulLog.d.ts +2 -1
  335. package/dist/node/cli/display/hooks/useStatefulLog.d.ts.map +1 -0
  336. package/dist/node/cli/display/tools/BlockList.d.ts +1 -0
  337. package/dist/node/cli/display/tools/BlockList.d.ts.map +1 -0
  338. package/dist/node/cli/display/tools/CreateBlock.d.ts +2 -1
  339. package/dist/node/cli/display/tools/CreateBlock.d.ts.map +1 -0
  340. package/dist/node/cli/display/tools/cli-tool-list.d.ts +1 -0
  341. package/dist/node/cli/display/tools/cli-tool-list.d.ts.map +1 -0
  342. package/dist/node/cli/display/tools/cli-tools.d.ts +2 -11
  343. package/dist/node/cli/display/tools/cli-tools.d.ts.map +1 -0
  344. package/dist/node/cli/display/tools/cli-tools.js +9 -9
  345. package/dist/node/cli/display/util/colors.d.ts +3 -2
  346. package/dist/node/cli/display/util/colors.d.ts.map +1 -0
  347. package/dist/node/cli/version.d.ts +2 -1
  348. package/dist/node/cli/version.d.ts.map +1 -0
  349. package/dist/node/cli/version.js +1 -1
  350. package/dist/node/compiler/build-vinxi.d.ts +9 -0
  351. package/dist/node/compiler/build-vinxi.d.ts.map +1 -0
  352. package/dist/node/compiler/build-vinxi.js +38 -0
  353. package/dist/node/compiler/bundler.admin.d.ts +3 -2
  354. package/dist/node/compiler/bundler.admin.d.ts.map +1 -0
  355. package/dist/node/compiler/bundler.admin.js +4 -4
  356. package/dist/node/compiler/bundler.frontend.d.ts +3 -1
  357. package/dist/node/compiler/bundler.frontend.d.ts.map +1 -0
  358. package/dist/node/compiler/bundler.frontend.js +29 -15
  359. package/dist/node/compiler/dev-server.d.ts +19 -0
  360. package/dist/node/compiler/dev-server.d.ts.map +1 -0
  361. package/dist/node/compiler/dev-server.js +113 -0
  362. package/dist/node/compiler/get-vite-config.d.ts +30 -0
  363. package/dist/node/compiler/get-vite-config.d.ts.map +1 -0
  364. package/dist/node/compiler/get-vite-config.js +332 -0
  365. package/dist/node/compiler/vinxi-app.d.ts +23 -0
  366. package/dist/node/compiler/vinxi-app.d.ts.map +1 -0
  367. package/dist/node/compiler/vinxi-app.js +230 -0
  368. package/dist/node/compiler/vinxi-codegen.d.ts +13 -0
  369. package/dist/node/compiler/vinxi-codegen.d.ts.map +1 -0
  370. package/dist/node/compiler/vinxi-codegen.js +731 -0
  371. package/dist/node/graphql/graphql-codegen.d.ts +13 -2
  372. package/dist/node/graphql/graphql-codegen.d.ts.map +1 -0
  373. package/dist/node/graphql/graphql-codegen.js +242 -40
  374. package/dist/node/graphql/graphql-schema-loader.d.ts +3 -1
  375. package/dist/node/graphql/graphql-schema-loader.d.ts.map +1 -0
  376. package/dist/node/graphql/graphql-schema-loader.js +5 -19
  377. package/dist/node/graphql/plugins/gql-plugin-files.d.ts +3 -1
  378. package/dist/node/graphql/plugins/gql-plugin-files.d.ts.map +1 -0
  379. package/dist/node/graphql/plugins/gql-plugin-files.js +3 -2
  380. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.d.ts +1 -0
  381. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.d.ts.map +1 -0
  382. package/dist/node/graphql/plugins/gql-plugin-queries.d.ts +1 -0
  383. package/dist/node/graphql/plugins/gql-plugin-queries.d.ts.map +1 -0
  384. package/dist/node/graphql/plugins/gql-plugin-queries.js +2 -2
  385. package/dist/node/graphql/query-files-loader.d.ts +4 -0
  386. package/dist/node/graphql/query-files-loader.d.ts.map +1 -0
  387. package/dist/node/graphql/query-files-loader.js +5 -0
  388. package/dist/node/graphql/wp-info-query.d.ts +1 -0
  389. package/dist/node/graphql/wp-info-query.d.ts.map +1 -0
  390. package/dist/node/project/config.d.ts +207 -73
  391. package/dist/node/project/config.d.ts.map +1 -0
  392. package/dist/node/project/config.js +95 -21
  393. package/dist/node/project/eddev-build-file.d.ts +1 -0
  394. package/dist/node/project/eddev-build-file.d.ts.map +1 -0
  395. package/dist/node/project/eddev-build-file.js +4 -2
  396. package/dist/node/project/env.d.ts +6 -1
  397. package/dist/node/project/env.d.ts.map +1 -0
  398. package/dist/node/project/env.js +2 -1
  399. package/dist/node/project/favicons.d.ts +1 -0
  400. package/dist/node/project/favicons.d.ts.map +1 -0
  401. package/dist/node/project/manifest/block-manifest.d.ts +1 -0
  402. package/dist/node/project/manifest/block-manifest.d.ts.map +1 -0
  403. package/dist/node/project/manifest/block-manifest.js +8 -4
  404. package/dist/node/project/manifest/field-manifest.d.ts +1 -0
  405. package/dist/node/project/manifest/field-manifest.d.ts.map +1 -0
  406. package/dist/node/project/manifest/manifest.d.ts +3 -1
  407. package/dist/node/project/manifest/manifest.d.ts.map +1 -0
  408. package/dist/node/project/manifest/manifest.js +15 -11
  409. package/dist/node/project/manifest/routes-manifest.d.ts +21 -0
  410. package/dist/node/project/manifest/routes-manifest.d.ts.map +1 -0
  411. package/dist/node/project/manifest/routes-manifest.js +74 -0
  412. package/dist/node/project/manifest/view-manifest.d.ts +1 -0
  413. package/dist/node/project/manifest/view-manifest.d.ts.map +1 -0
  414. package/dist/node/project/manifest/view-manifest.js +2 -2
  415. package/dist/node/project/manifest/widget-manifest.d.ts +1 -0
  416. package/dist/node/project/manifest/widget-manifest.d.ts.map +1 -0
  417. package/dist/node/project/project.d.ts +15 -2
  418. package/dist/node/project/project.d.ts.map +1 -0
  419. package/dist/node/project/project.js +73 -21
  420. package/dist/node/project/wp-info.d.ts +3 -0
  421. package/dist/node/project/wp-info.d.ts.map +1 -0
  422. package/dist/node/project/wp-info.js +13 -3
  423. package/dist/node/storybook/index.d.ts +3 -0
  424. package/dist/node/storybook/index.d.ts.map +1 -0
  425. package/dist/node/storybook/index.js +13 -0
  426. package/dist/node/types/block-type.d.ts +57 -25
  427. package/dist/node/types/block-type.d.ts.map +1 -0
  428. package/dist/node/types/block-type.js +4 -1
  429. package/dist/node/types/view-type.d.ts +8 -7
  430. package/dist/node/types/view-type.d.ts.map +1 -0
  431. package/dist/node/types/view-type.js +3 -4
  432. package/dist/node/utils/fetch-wp.d.ts +2 -0
  433. package/dist/node/utils/fetch-wp.d.ts.map +1 -0
  434. package/dist/node/utils/fetch-wp.js +28 -0
  435. package/dist/node/utils/{formatZodError.d.ts → format-zod-error.d.ts} +1 -0
  436. package/dist/node/utils/format-zod-error.d.ts.map +1 -0
  437. package/dist/node/utils/fs-codegen.d.ts +44 -0
  438. package/dist/node/utils/fs-codegen.d.ts.map +1 -0
  439. package/dist/node/utils/fs-codegen.js +105 -0
  440. package/dist/node/utils/fs.d.ts +5 -0
  441. package/dist/node/utils/fs.d.ts.map +1 -0
  442. package/dist/node/utils/fs.js +2 -0
  443. package/dist/node/utils/{getRepoInfo.d.ts → get-repo-info.d.ts} +1 -0
  444. package/dist/node/utils/get-repo-info.d.ts.map +1 -0
  445. package/dist/node/utils/helpers.d.ts +1 -0
  446. package/dist/node/utils/helpers.d.ts.map +1 -0
  447. package/dist/node/utils/{highlightCode.d.ts → highlight-code.d.ts} +1 -0
  448. package/dist/node/utils/highlight-code.d.ts.map +1 -0
  449. package/dist/node/utils/{isDeploying.d.ts → is-deploying.d.ts} +1 -0
  450. package/dist/node/utils/is-deploying.d.ts.map +1 -0
  451. package/dist/node/utils/{isDeploying.js → is-deploying.js} +1 -1
  452. package/dist/node/utils/report-builder.d.ts +7 -6
  453. package/dist/node/utils/report-builder.d.ts.map +1 -0
  454. package/dist/node/utils/self-signed-cert.d.ts +9 -0
  455. package/dist/node/utils/self-signed-cert.d.ts.map +1 -0
  456. package/dist/node/utils/{selfSignedCert.js → self-signed-cert.js} +29 -5
  457. package/dist/node/utils/{statefulLog.d.ts → stateful-log.d.ts} +1 -0
  458. package/dist/node/utils/stateful-log.d.ts.map +1 -0
  459. package/dist/node/utils/{statefulLog.js → stateful-log.js} +3 -1
  460. package/dist/node/utils/{export-extractor.d.ts → ts-export-extractor.d.ts} +1 -0
  461. package/dist/node/utils/ts-export-extractor.d.ts.map +1 -0
  462. package/dist/node/utils/watch-file-tree.d.ts +26 -0
  463. package/dist/node/utils/watch-file-tree.d.ts.map +1 -0
  464. package/dist/node/utils/{watchFileTree.js → watch-file-tree.js} +12 -5
  465. package/package.json +62 -47
  466. package/tsconfig.app.json +8 -3
  467. package/tsconfig.node.json +1 -0
  468. package/types.app.d.ts +4 -2
  469. package/types.app.internal.d.ts +2 -2
  470. package/types.meta.d.ts +449 -136
  471. package/types.node.d.ts +3 -3
  472. package/dist/app/entry/Root.d.ts +0 -1
  473. package/dist/app/entry/Root.js +0 -9
  474. package/dist/app/entry/main.admin.d.ts +0 -3
  475. package/dist/app/entry/main.admin.js +0 -10
  476. package/dist/app/entry/main.frontend.spa.d.ts +0 -3
  477. package/dist/app/entry/main.frontend.spa.js +0 -13
  478. package/dist/app/entry/main.frontend.ssr.d.ts +0 -21
  479. package/dist/app/entry/main.frontend.ssr.js +0 -79
  480. package/dist/app/entry/main.serverless.dev.d.ts +0 -4
  481. package/dist/app/entry/main.serverless.dev.js +0 -21
  482. package/dist/app/lib/blocks/ErrorBoundaryFrontend.d.ts +0 -15
  483. package/dist/app/lib/blocks/ErrorBoundaryFrontend.js +0 -35
  484. package/dist/app/lib/hooks/apiConfig.js +0 -4
  485. package/dist/app/lib/hooks/usePageLoad.d.ts +0 -6
  486. package/dist/app/lib/hooks/usePageLoad.js +0 -5
  487. package/dist/app/server/create-api-builtin-hono.d.ts +0 -8
  488. package/dist/app/server/create-api-builtin-hono.js +0 -80
  489. package/dist/app/server/create-ssr-hono.d.ts +0 -18
  490. package/dist/app/server/create-ssr-hono.js +0 -104
  491. package/dist/app/server/utils/index.html.d.ts +0 -2
  492. package/dist/app/server/utils/index.html.js +0 -14
  493. package/dist/node/compiler/index.html.d.ts +0 -2
  494. package/dist/node/compiler/index.html.js +0 -15
  495. package/dist/node/compiler/serverless.dev.d.ts +0 -16
  496. package/dist/node/compiler/serverless.dev.js +0 -215
  497. package/dist/node/compiler/vite/get-vite-config.d.ts +0 -13
  498. package/dist/node/compiler/vite/get-vite-config.js +0 -315
  499. package/dist/node/compiler/vite/plugin-admin.d.ts +0 -4
  500. package/dist/node/compiler/vite/plugin-admin.js +0 -67
  501. package/dist/node/compiler/vite/plugin-blocks.d.ts +0 -4
  502. package/dist/node/compiler/vite/plugin-blocks.js +0 -73
  503. package/dist/node/compiler/vite/plugin-entry.d.ts +0 -6
  504. package/dist/node/compiler/vite/plugin-entry.js +0 -16
  505. package/dist/node/compiler/vite/plugin-resolved-tailwind.d.ts +0 -4
  506. package/dist/node/compiler/vite/plugin-resolved-tailwind.js +0 -29
  507. package/dist/node/compiler/vite/plugin-theme.d.ts +0 -4
  508. package/dist/node/compiler/vite/plugin-theme.js +0 -40
  509. package/dist/node/compiler/vite/plugin-views.d.ts +0 -4
  510. package/dist/node/compiler/vite/plugin-views.js +0 -51
  511. package/dist/node/utils/console.d.ts +0 -21
  512. package/dist/node/utils/console.js +0 -28
  513. package/dist/node/utils/selfSignedCert.d.ts +0 -4
  514. package/dist/node/utils/unsafe-fetch.d.ts +0 -2
  515. package/dist/node/utils/unsafe-fetch.js +0 -19
  516. package/dist/node/utils/watchFileTree.d.ts +0 -11
  517. package/tsup.config.ts +0 -40
  518. package/types.manifests.d.ts +0 -22
  519. /package/dist/node/utils/{formatZodError.js → format-zod-error.js} +0 -0
  520. /package/dist/node/utils/{getRepoInfo.js → get-repo-info.js} +0 -0
  521. /package/dist/node/utils/{highlightCode.js → highlight-code.js} +0 -0
  522. /package/dist/node/utils/{export-extractor.js → ts-export-extractor.js} +0 -0
@@ -0,0 +1,731 @@
1
+ import { code, imp } from "ts-poet";
2
+ import { FSCodegen } from "../utils/fs-codegen.js";
3
+ import { camelCase, pascalCase } from "change-case-all";
4
+ import { ProjectEnvUtils } from "../project/env.js";
5
+ export function getVinxiFolder(opts) {
6
+ return (opts.mode === "development" ? "dev" : "prod") + (opts.serverless ? "" : "-spa");
7
+ }
8
+ export async function runVinxiCodegen(opts) {
9
+ const codegen = createVinxiCodegen(opts);
10
+ await codegen.run();
11
+ codegen.stop();
12
+ }
13
+ export function createVinxiCodegen(opts) {
14
+ const project = opts.project;
15
+ const folder = ".eddev/" + getVinxiFolder(opts);
16
+ const codegen = new FSCodegen(opts.project, {
17
+ outDir: folder,
18
+ });
19
+ if (opts.serverless) {
20
+ codegen.registerFile({
21
+ name: "context.ts",
22
+ generate: async () => {
23
+ const args = {
24
+ dev: opts.mode === "development",
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 === "remote" },
31
+ { prefix: "/wp-content/plugins", replace: project.config?.serverless.plugins === "remote" },
32
+ ],
33
+ },
34
+ rpcBases: (await project.serverRoutes.get()).bases ?? [],
35
+ config: project.config,
36
+ };
37
+ return code /* tsx */ `
38
+ import { ServerContext } from "eddev/server"
39
+ import { getManifest } from "vinxi/manifest"
40
+ import { apiConfig } from 'eddev/hooks'
41
+
42
+ ServerContext.setRuntime({
43
+ getManifest
44
+ })
45
+
46
+ export const serverContext = new ServerContext({${Object.entries(args)
47
+ .map(([key, value]) => `${key}: ${JSON.stringify(value)}`)
48
+ .join(",\n")}
49
+ })
50
+
51
+ apiConfig.apiKey = ${JSON.stringify(ProjectEnvUtils.getSafe("SITE_API_KEY") ?? "")}
52
+ `.toString();
53
+ },
54
+ });
55
+ }
56
+ if (opts.serverless) {
57
+ codegen.registerFile({
58
+ name: "react-shim.js",
59
+ generate: code /* tsx */ `
60
+ import React from "react"
61
+ import ReactDOM from "react-dom/client"
62
+ Object.assign(React, window.React)
63
+ Object.assign(ReactDOM, window.ReactDOM)
64
+ `,
65
+ });
66
+ }
67
+ if (opts.serverless) {
68
+ // codegen.registerFile({
69
+ // name: "manifest/extra-routes.ts",
70
+ // generate: code/* tsx */ `
71
+ // import { createRouter, eventHandler, getRouterParam, getQuery, getWebRequest, getRequestHeaders } from "vinxi/http"
72
+ // import { serverContext } from "./context.js"
73
+ // export const routes = [
74
+ // {
75
+ // pattern: '/test1',
76
+ // handler: () => import('../../../test.ts')
77
+ // }
78
+ // ]
79
+ // export default eventHandler((event) => {
80
+ // routes
81
+ // })
82
+ // `,
83
+ // })
84
+ }
85
+ codegen.registerFile({
86
+ name: "entry.admin.tsx",
87
+ generate: () => {
88
+ return code /* tsx */ `
89
+ ${opts.serverless ? `import "./react-shim.js"` : ""}
90
+ ${opts.serverless ? `import "vinxi/client"` : ""}
91
+ import "../../${project.cssEntryFile}"
92
+ import "./manifest/admin"
93
+ import "./manifest/blocks"
94
+ import "./manifest/styles"
95
+ import bootAdmin from "eddev/_internal/boot-admin.js"
96
+
97
+ bootAdmin()
98
+ `;
99
+ },
100
+ });
101
+ codegen.registerFile({
102
+ name: "entry.client.tsx",
103
+ generate: () => {
104
+ if (opts.serverless) {
105
+ /**
106
+ * Client entry for SSR mode
107
+ */
108
+ return code /* tsx */ `
109
+ /// <reference types="vinxi/types/client" />
110
+ /**
111
+ * SSR-mode frontend entry.
112
+ * Hydrates the main app, including the html/head/body elements.
113
+ * Also ensures that the assets used during SSR are loaded.
114
+ */
115
+ import "vinxi/client"
116
+ import "../../${project.cssEntryFile}"
117
+ import "./manifest/blocks"
118
+ import "./manifest/views"
119
+
120
+ import * as React from "react"
121
+ import { Root, hydrateRoot } from "react-dom/client"
122
+ import { SSRClientRoot } from "eddev/_internal/ssr-root-client.js"
123
+ import { getManifest } from "vinxi/manifest"
124
+ import { createAssets } from "@vinxi/react"
125
+ import { devToolsStore } from 'eddev/devtools'
126
+
127
+ // Set up a dynamic entry which will load the configured tailwind manifest
128
+ devToolsStore.loadTailwindConfig = () => import('./manifest/tailwind-config.js')
129
+
130
+ // Create the asset renderer, which will ensure scripts/styles are mounted correctly
131
+ function getAssets() {
132
+ const Assets = createAssets(getManifest("client").handler, getManifest("client"))
133
+ return <React.Suspense><Assets /></React.Suspense>
134
+ }
135
+
136
+ window.$reactRoot =
137
+ window.$reactRoot ||
138
+ hydrateRoot(
139
+ document.getElementById('root')!,
140
+ <React.Suspense><SSRClientRoot assets={getAssets()} metaTags={window._PAGE_DATA?.meta?.head} /></React.Suspense>,
141
+ {
142
+ identifierPrefix: "ed",
143
+ }
144
+ )
145
+
146
+ if (import.meta.hot) {
147
+ import.meta.hot.accept((mod) => {
148
+ if (mod) {
149
+ const app = <React.Suspense><SSRClientRoot assets={getAssets()} metaTags={window._PAGE_DATA?.meta?.head} /></React.Suspense>
150
+ window.$reactRoot?.render(app)
151
+ }
152
+ })
153
+ }
154
+
155
+ declare global {
156
+ interface Window {
157
+ $reactRoot?: Root
158
+ _PAGE_DATA: any
159
+ }
160
+ }
161
+
162
+ `;
163
+ }
164
+ else {
165
+ return code /* tsx */ `
166
+ /**
167
+ * SPA-mode frontend entry.
168
+ * Renders the main app into the empty <div id='root'> element, and expects window._PAGE_DATA to be set.
169
+ */
170
+ import "./manifest/blocks"
171
+ import "./manifest/views"
172
+ import "../../${project.cssEntryFile}"
173
+ import { devToolsStore } from 'eddev/devtools'
174
+ import { createRoot } from "react-dom/client"
175
+ import { SPARoot } from "eddev/_internal/spa-root.js"
176
+ import * as React from "react"
177
+
178
+ devToolsStore.loadTailwindConfig = () => import('./manifest/tailwind-config')
179
+
180
+ createRoot(document.getElementById("root")!).render(<React.Suspense><SPARoot /></React.Suspense>)
181
+ `;
182
+ }
183
+ },
184
+ });
185
+ if (opts.serverless) {
186
+ codegen.registerFile({
187
+ name: "handler.bypass.ts",
188
+ generate: code /* tsx */ `
189
+ /// <reference types="vinxi/types/server" />
190
+ import { createRouter, eventHandler, getCookie, setCookie } from "vinxi/http"
191
+
192
+ const BYPASS_TOKEN = process.env.VERCEL_BYPASS_TOKEN
193
+ const COOKIE_NAME = "__prerender_bypass"
194
+
195
+ const router = createRouter()
196
+ .get(
197
+ "/enable",
198
+ eventHandler(async (event) => {
199
+ if (!BYPASS_TOKEN) return false
200
+
201
+ setCookie(event, COOKIE_NAME, BYPASS_TOKEN, {
202
+ expires: new Date(Date.now() + 1000 * 60 * 60 * 24),
203
+ })
204
+
205
+ return true
206
+ }),
207
+ )
208
+ .get(
209
+ "/disable",
210
+ eventHandler(async (event) => {
211
+ setCookie(event, COOKIE_NAME, "")
212
+
213
+ return true
214
+ }),
215
+ )
216
+ .get(
217
+ "/check",
218
+ eventHandler(async (event) => {
219
+ const cookie = getCookie(event, COOKIE_NAME)
220
+
221
+ if (cookie === BYPASS_TOKEN) {
222
+ return true
223
+ }
224
+
225
+ return false
226
+ }),
227
+ )
228
+ export default router.handler
229
+ `,
230
+ });
231
+ // codegen.registerFile({
232
+ // name: "handler.data-api.ts",
233
+ // generate: code/* tsx */ `
234
+ // /// <reference types="vinxi/types/server" />
235
+ // import { createRouter, eventHandler, getRouterParam, getQuery, getWebRequest, getRequestHeaders, getRequestURL } from "vinxi/http"
236
+ // import { serverContext } from "./context.js"
237
+ // const router = createRouter()
238
+ // .get(
239
+ // "/route/",
240
+ // eventHandler(async (event) => {
241
+ // const id = "/"
242
+ // const url = getRequestURL(event);
243
+ // return await serverContext.fetchRouteData({
244
+ // pathname: id,
245
+ // newOrigin: url.origin,
246
+ // })
247
+ // }),
248
+ // )
249
+ // .get(
250
+ // "/route/**:name",
251
+ // eventHandler(async (event) => {
252
+ // const id = "/" + getRouterParam(event, "name")
253
+ // const url = getRequestURL(event);
254
+ // return await serverContext.fetchRouteData({
255
+ // pathname: id,
256
+ // newOrigin: url.origin,
257
+ // })
258
+ // }),
259
+ // )
260
+ // .get(
261
+ // "/query/**:name",
262
+ // eventHandler(async (event) => {
263
+ // const id = "/" + getRouterParam(event, "name")
264
+ // const paramString = getQuery(event).params
265
+ // const params = typeof paramString === "string" && paramString.length ? JSON.parse(paramString) : {}
266
+ // return await serverContext.fetchNamedQuery({
267
+ // name: id,
268
+ // params: params,
269
+ // headers: getRequestHeaders(event),
270
+ // })
271
+ // }),
272
+ // )
273
+ // .post(
274
+ // "/mutation/**:name",
275
+ // eventHandler(async (event) => {
276
+ // const id = "/" + getRouterParam(event, "name")
277
+ // const body = await getWebRequest(event).json()
278
+ // return await serverContext.fetchMutation({
279
+ // name: id,
280
+ // body,
281
+ // headers: getRequestHeaders(event),
282
+ // })
283
+ // }),
284
+ // )
285
+ // export default router.handler
286
+ // `,
287
+ // })
288
+ }
289
+ if (opts.serverless) {
290
+ codegen.registerFile({
291
+ name: "handler.ssr-page.ts",
292
+ generate: code /* tsx */ `
293
+ /// <reference types="vinxi/types/server" />
294
+ import "../../${project.cssEntryFile}"
295
+ import "./manifest/blocks.js"
296
+ import "./manifest/styles.js"
297
+ import "./manifest/views.js"
298
+ import "./context.js"
299
+ import { proxyWpAdmin, renderPage, renderPageForIndexing, ServerContext } from "eddev/server"
300
+ import {
301
+ createRouter,
302
+ eventHandler,
303
+ getQuery,
304
+ getRequestHeaders,
305
+ getRequestURL,
306
+ getRouterParam,
307
+ getWebRequest,
308
+ } from "vinxi/http"
309
+ import { handleRPC } from "./rpc.js"
310
+ import { serverContext } from "./context.js"
311
+ import { getManifest } from "vinxi/manifest"
312
+ import { inspect } from "node:util"
313
+ import { withTrailingSlash } from 'ufo'
314
+
315
+ const router = createRouter()
316
+ .get(
317
+ "/_data/route/",
318
+ eventHandler(async (event) => {
319
+ const id = "/"
320
+ const url = getRequestURL(event)
321
+
322
+ return await serverContext.fetchRouteData({ pathname: id, newOrigin: url.origin })
323
+ }),
324
+ )
325
+ .get(
326
+ "/_data/route/**:name",
327
+ eventHandler(async (event) => {
328
+ const id = "/" + getRouterParam(event, "name")
329
+ const url = getRequestURL(event)
330
+
331
+ return await serverContext.fetchRouteData({ pathname: id, newOrigin: url.origin })
332
+ }),
333
+ )
334
+ .get(
335
+ "/_data/query/**:name",
336
+ eventHandler(async (event) => {
337
+ const id = "/" + getRouterParam(event, "name")
338
+ const paramString = getQuery(event).params
339
+
340
+ let params = {}
341
+ try {
342
+ params = typeof paramString === "string" && paramString.length ? JSON.parse(paramString) : {}
343
+ } catch (e) {
344
+ throw new Error("Invalid query parameters")
345
+ }
346
+
347
+ return await serverContext.fetchNamedQuery({ name: id, params: params, headers: getRequestHeaders(event) })
348
+ }),
349
+ )
350
+ .get(
351
+ "/_data/manifest/**:input",
352
+ eventHandler(async (event) => {
353
+ const manifest = getManifest("client")
354
+ const id = getRouterParam(event, "input")
355
+ const input = manifest.inputs[id === 'handler' ? manifest.handler : id]
356
+ const result = {
357
+ ...input,
358
+ id,
359
+ assets: await input.assets(),
360
+ }
361
+ const code = inspect(result, { depth: 10 })
362
+ return new Response(code, { headers: { "Content-Type": "text/plain" } })
363
+ }),
364
+ )
365
+ .post(
366
+ "/_data/mutation/**:name",
367
+ eventHandler(async (event) => {
368
+ const id = "/" + getRouterParam(event, "name")
369
+ const body = await getWebRequest(event).json()
370
+ return await serverContext.fetchMutation({ name: id, body, headers: getRequestHeaders(event) })
371
+ }),
372
+ )
373
+ .post(
374
+ "/_data/submit-gf",
375
+ eventHandler(async (event) => {
376
+ const req = getWebRequest(event)
377
+ const headers = new Headers(req.headers)
378
+ headers.delete("content-length")
379
+ headers.delete("host")
380
+ headers.delete("connection")
381
+ headers.delete("pragma")
382
+ return await serverContext.fetchOrigin("/wp-json/ed/v1/gf/submit/", {
383
+ method: "POST",
384
+ headers: headers,
385
+ body: await req.blob(),
386
+ })
387
+ }),
388
+ )
389
+
390
+ const aiRouter = createRouter()
391
+ .get(
392
+ "/_ai/page",
393
+ eventHandler(async (event) => {
394
+ const id = "/"
395
+ const url = getRequestURL(event)
396
+ const page = await renderPageForIndexing({ pathname: id, newOrigin: url.origin, hostname: url.hostname })
397
+ return new Response(page.contents, {
398
+ headers: {
399
+ "Content-Type": "text/html; charset=utf-8",
400
+ "Cache-Control": "no-store",
401
+ },
402
+ })
403
+ }),
404
+ )
405
+ .get(
406
+ "/_ai/page/**:name",
407
+ eventHandler(async (event) => {
408
+ const id = "/" + getRouterParam(event, "name")
409
+ const url = getRequestURL(event)
410
+
411
+ const page = await renderPageForIndexing({ pathname: id, newOrigin: url.origin, hostname: url.hostname })
412
+ return new Response(page.contents, {
413
+ headers: {
414
+ "Content-Type": "text/html; charset=utf-8",
415
+ "Cache-Control": "no-store",
416
+ },
417
+ })
418
+ }),
419
+ )
420
+
421
+ export default eventHandler({
422
+ handler: async (event) => {
423
+ const serverContext = ServerContext.main
424
+ const url = getRequestURL(event)
425
+
426
+ // RPC
427
+ const isRPC = serverContext.rpcBases.some((base) => url.pathname.startsWith(base))
428
+ if (isRPC) {
429
+ return handleRPC(event)
430
+ }
431
+
432
+ // Data API
433
+ if (url.pathname.startsWith("/_data/")) {
434
+ return router.handler(event)
435
+ }
436
+
437
+ // LLM indexing route
438
+ if (url.pathname.startsWith("/_ai/")) {
439
+ return aiRouter.handler(event)
440
+ }
441
+
442
+ // Outdated build assets
443
+ if (url.pathname.match(/^\\/(_build|_admin)/)) {
444
+ return new Response("", { status: 404 })
445
+ }
446
+
447
+ // Proxy WordPress
448
+ if (url.pathname.includes(".") || url.pathname.startsWith("/graphql") || url.pathname.startsWith("/wp-")) {
449
+ return proxyWpAdmin(event)
450
+ }
451
+
452
+ // Enforce trailing slashes
453
+ if (!url.pathname.endsWith("/")) {
454
+ url.pathname = withTrailingSlash(url.pathname)
455
+ return Response.redirect(url, 301)
456
+ }
457
+
458
+ // SSR
459
+ return renderPage({ pathname: url.pathname, newOrigin: url.origin, hostname: url.hostname })
460
+ },
461
+ })
462
+ `,
463
+ });
464
+ }
465
+ if (opts.serverless) {
466
+ // codegen.registerFile({
467
+ // name: "handler.wp-proxy.ts",
468
+ // generate: code/* tsx */ `
469
+ // /// <reference types="vinxi/types/server" />
470
+ // import { proxyWpAdmin } from "eddev/server"
471
+ // import { eventHandler } from "vinxi/http"
472
+ // import "./context.js"
473
+ // export default eventHandler(async (event) => {
474
+ // return proxyWpAdmin(event)
475
+ // })
476
+ // `,
477
+ // })
478
+ }
479
+ codegen.registerFile({
480
+ name: "manifest/blocks.ts",
481
+ generate: async () => {
482
+ const blockManifest = await project.blocks.get();
483
+ let blockImports = [];
484
+ let blockEntries = [];
485
+ for (const [name, block] of Object.entries(blockManifest.blocks)) {
486
+ if (name.match(/^_[a-z]+$/i))
487
+ continue;
488
+ const importSource = JSON.stringify("../../../" + block.fileName);
489
+ const jsName = pascalCase(name);
490
+ if (block.dynamic) {
491
+ const importStatement = `dynamic(() => import(${importSource}), ${JSON.stringify(block.fileName)})`;
492
+ blockEntries.push(JSON.stringify(block.acfName) + ": " + importStatement);
493
+ }
494
+ else {
495
+ blockImports.push(`import ${jsName} from ${importSource}`);
496
+ blockEntries.push(JSON.stringify(block.acfName) + ": " + jsName);
497
+ }
498
+ }
499
+ return code /* ts */ `
500
+ import { blockManifestReader } from 'eddev/_internal'
501
+ import { dynamic } from 'eddev/dynamic'
502
+ import core from '../../../blocks/_core'
503
+ ${blockImports.join("\n")}
504
+
505
+ const manifest = {
506
+ ${blockEntries.join(",\n")},
507
+ ...core
508
+ }
509
+
510
+ const info = {
511
+ ${Object.entries(blockManifest.blocks)
512
+ .filter(([name]) => !name.match(/^_[a-z]+$/i))
513
+ .map(([name, block]) => {
514
+ return (JSON.stringify(block.acfName) +
515
+ ": " +
516
+ JSON.stringify({
517
+ slug: block.slug,
518
+ tags: block.tags,
519
+ flags: block.flags ?? {},
520
+ }));
521
+ })
522
+ .join(",\n")}
523
+ }
524
+
525
+ blockManifestReader.set(manifest, info)
526
+
527
+ export default manifest
528
+
529
+ if (import.meta.hot) {
530
+ import.meta.hot.accept()
531
+ }
532
+ `;
533
+ },
534
+ subscribe: project.blocks.subscribe,
535
+ });
536
+ codegen.registerFile({
537
+ name: "manifest/admin.ts",
538
+ generate: async () => {
539
+ const fieldManifest = await project.fields.get();
540
+ const widgetManifest = await project.widgets.get();
541
+ return code /* ts */ `
542
+ import { adminManifestReader } from 'eddev/_internal'
543
+ import editorConfig from '../../../blocks/_editor'
544
+
545
+ const fields = {${Object.entries(fieldManifest.fields)
546
+ .map(([name, field]) => {
547
+ const importStatement = `() => import(${JSON.stringify("../../../" + field.fileName)}).then(m => m.default)`;
548
+ return JSON.stringify(field.slug) + ": " + importStatement;
549
+ })
550
+ .join(",\n")}}
551
+ const widgets = {${Object.entries(widgetManifest.widgets)
552
+ .map(([name, widget]) => {
553
+ const importStatement = `() => import(${JSON.stringify("../../../" + widget.fileName)}).then(m => m.default)`;
554
+ return JSON.stringify(widget.slug) + ": " + importStatement;
555
+ })
556
+ .join(",\n")}}
557
+
558
+ const manifest = {
559
+ fields,
560
+ widgets,
561
+ editorConfig
562
+ }
563
+
564
+ adminManifestReader.set(manifest)
565
+
566
+ export default manifest
567
+
568
+ export { editorConfig }
569
+
570
+ if (import.meta.hot) {
571
+ import.meta.hot.accept()
572
+ }
573
+ `;
574
+ },
575
+ subscribe: (callback) => {
576
+ const unsub = [project.fields.subscribe(callback), project.widgets.subscribe(callback)];
577
+ return () => unsub.forEach((u) => u());
578
+ },
579
+ });
580
+ codegen.registerFile({
581
+ name: "manifest/views.ts",
582
+ generate: async () => {
583
+ const viewManifest = await project.views.get();
584
+ return code /* ts */ `
585
+ import { viewManifestReader } from 'eddev/_internal'
586
+ import { dynamic } from 'eddev/dynamic'
587
+ const manifest = {${Object.entries(viewManifest.views).map(([name, view]) => {
588
+ const src = "../../../" + view.fileName;
589
+ let importStatement;
590
+ if (name.startsWith("_")) {
591
+ importStatement = imp(name + "=" + src);
592
+ }
593
+ else {
594
+ importStatement = code `dynamic(() => import(${JSON.stringify(src)}), ${JSON.stringify(view.fileName)})`;
595
+ }
596
+ return code `${JSON.stringify(view.slug)}: ${importStatement},\n`;
597
+ })}}
598
+
599
+ viewManifestReader.value = manifest
600
+
601
+ export default manifest
602
+
603
+ if (import.meta.hot) {
604
+ import.meta.hot.accept()
605
+ }
606
+ `;
607
+ },
608
+ subscribe: project.views.subscribe,
609
+ });
610
+ codegen.registerFile({
611
+ name: "manifest/styles.ts",
612
+ generate: async () => {
613
+ return code /* ts */ `
614
+ export const getCssText = undefined
615
+ export const editorGlobalStyles = () => {}
616
+ `;
617
+ },
618
+ });
619
+ codegen.registerFile({
620
+ name: "manifest/tailwind-config.ts",
621
+ generate: async () => {
622
+ return code /* ts */ `
623
+ import tw from "../../../tailwind.config.ts"
624
+ import resolveConfig from 'tailwindcss/resolveConfig'
625
+ import { devToolsStore } from 'eddev/devtools'
626
+
627
+ const value = resolveConfig(tw)
628
+ devToolsStore.tailwindConfig = value
629
+
630
+ if (import.meta.hot) {
631
+ import.meta.hot.accept()
632
+ }
633
+ `;
634
+ },
635
+ });
636
+ if (opts.serverless) {
637
+ codegen.registerFile({
638
+ name: "manifest/routes.ts",
639
+ generate: async () => {
640
+ const routeManifest = await project.serverRoutes.get();
641
+ return code /* ts */ `
642
+ import { instantiateRouter } from "eddev/server"
643
+ ${routeManifest.contextFileName
644
+ ? code /*ts*/ `
645
+ import createContext from "../../../${routeManifest.contextFileName}"
646
+ `
647
+ : code /*ts*/ `
648
+ const createContext = () => ({})
649
+ `}
650
+
651
+ const router = instantiateRouter({${Object.entries(routeManifest.routes).map(([name, route]) => {
652
+ const src = "../../../" + route.fileName;
653
+ const importStatement = imp(camelCase(name) + "=" + src);
654
+ return code `${JSON.stringify(route.prefix)}: ${importStatement},\n`;
655
+ })}})
656
+
657
+ export { createContext, router }
658
+ `;
659
+ },
660
+ subscribe: project.serverRoutes.subscribe,
661
+ });
662
+ codegen.registerFile({
663
+ name: "rpc.ts",
664
+ generate: code /* tsx */ `
665
+ /// <reference types="vinxi/types/server" />
666
+ import "./context.js"
667
+ import { fetchRequestHandler } from "@trpc/server/adapters/fetch"
668
+ import { parseURL, stringifyParsedURL } from "ufo"
669
+ import { EventHandlerRequest, getWebRequest, H3Event, setResponseHeaders } from "vinxi/http"
670
+ import { createContext, router } from "./manifest/routes.ts"
671
+ import { ServerContext } from "eddev/server"
672
+
673
+ export function handleRPC(event: H3Event<EventHandlerRequest>) {
674
+ const serverContext = ServerContext.main
675
+
676
+ // Handle CORS
677
+ setResponseHeaders(event, serverContext.getCorsHeaders(event.headers.get("origin") ?? event.headers.get("referer") ?? ""))
678
+ if (event.method === "OPTIONS") {
679
+ event.node.res.statusCode = 204
680
+ event.node.res.statusMessage = "No Content."
681
+ return "OK"
682
+ }
683
+
684
+ // Update URLs with dots, which tRPC prefers
685
+ const originalReq = getWebRequest(event)
686
+ const parsed = parseURL(originalReq.url)
687
+ parsed.pathname = "/" + parsed.pathname.replace(/(^\\/|\\/$)/g, "").replace(/\\//g, ".")
688
+ const req = new Request(stringifyParsedURL(parsed), originalReq)
689
+
690
+ // Handle any early results which are Responses
691
+ function processEarlyResult(value: any): Response | undefined {
692
+ if (value instanceof Response) {
693
+ return value
694
+ }
695
+ }
696
+
697
+ return new Promise(async (resolve) => {
698
+ let sent = false
699
+ const defaultResponse = await fetchRequestHandler({
700
+ endpoint: "/",
701
+ req: req,
702
+ router: router,
703
+ createContext: async (opts) => {
704
+ return {
705
+ ...(await createContext(opts)),
706
+ searchParams: opts.info.url?.searchParams,
707
+ server: serverContext,
708
+ }
709
+ },
710
+ onError: (err) => console.error(err),
711
+ batching: { enabled: false },
712
+ // If a Response object is returned by a route, it will be sent as the response
713
+ responseMeta(opts) {
714
+ const value = opts?.data?.[0]?.["result"]?.["data"]
715
+ const response = processEarlyResult(value)
716
+ if (response) {
717
+ sent = true
718
+ resolve(response)
719
+ }
720
+ return {}
721
+ },
722
+ })
723
+ if (sent) return
724
+ resolve(defaultResponse)
725
+ })
726
+ }
727
+ `,
728
+ });
729
+ }
730
+ return codegen;
731
+ }