eddev 0.3.38 → 2.0.0-beta.10

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 (559) hide show
  1. package/bin/eddev.js +1 -3
  2. package/css/devtools.css +15 -0
  3. package/css/editor-styles.css +94 -0
  4. package/dist/app/entry/boot-admin.d.ts +1 -0
  5. package/dist/app/entry/boot-admin.js +8 -0
  6. package/dist/app/entry/spa-root.d.ts +1 -0
  7. package/dist/app/entry/spa-root.js +9 -0
  8. package/dist/app/entry/ssr-root-client.d.ts +4 -0
  9. package/dist/app/entry/ssr-root-client.js +9 -0
  10. package/dist/app/entry/ssr-root.d.ts +9 -0
  11. package/dist/app/entry/ssr-root.js +21 -0
  12. package/{admin → dist/app/lib/admin}/defineField.d.ts +2 -2
  13. package/dist/app/lib/admin/defineField.js +3 -0
  14. package/{admin → dist/app/lib/admin}/defineWidget.d.ts +1 -1
  15. package/dist/app/lib/admin/defineWidget.js +6 -0
  16. package/dist/app/lib/admin/index.d.ts +2 -0
  17. package/dist/app/lib/admin/index.js +2 -0
  18. package/dist/app/lib/admin/installFieldTypes.js +92 -0
  19. package/dist/app/lib/admin/runWidgets.js +38 -0
  20. package/dist/app/lib/blocks/ContentBlocks.d.ts +83 -0
  21. package/dist/app/lib/blocks/ContentBlocks.js +92 -0
  22. package/dist/app/lib/blocks/EditableText.d.ts +41 -0
  23. package/dist/app/lib/blocks/EditableText.js +50 -0
  24. package/{blocks → dist/app/lib/blocks}/ErrorBoundaryFrontend.d.ts +2 -2
  25. package/dist/app/lib/blocks/ErrorBoundaryFrontend.js +35 -0
  26. package/dist/app/lib/blocks/InnerBlocks.d.ts +42 -0
  27. package/dist/app/lib/blocks/InnerBlocks.js +55 -0
  28. package/dist/app/lib/blocks/block-utils.d.ts +24 -0
  29. package/dist/app/lib/blocks/block-utils.js +41 -0
  30. package/dist/app/lib/blocks/defineBlock.d.ts +2 -0
  31. package/dist/app/lib/blocks/defineBlock.js +3 -0
  32. package/dist/app/lib/blocks/editor/EditorSupport.d.ts +5 -0
  33. package/dist/app/lib/blocks/editor/EditorSupport.js +19 -0
  34. package/{blocks → dist/app/lib/blocks/editor}/ErrorBoundaryEditor.d.ts +1 -1
  35. package/dist/app/lib/blocks/editor/ErrorBoundaryEditor.js +28 -0
  36. package/dist/app/lib/blocks/editor/block-templates.d.ts +3 -0
  37. package/dist/app/lib/blocks/editor/block-templates.js +9 -0
  38. package/dist/app/lib/blocks/editor/blocks-by-tag.d.ts +7 -0
  39. package/dist/app/lib/blocks/editor/blocks-by-tag.js +42 -0
  40. package/dist/app/lib/blocks/editor/controls.d.ts +10 -0
  41. package/dist/app/lib/blocks/editor/controls.js +20 -0
  42. package/dist/app/lib/blocks/editor/editor-config.d.ts +58 -0
  43. package/dist/app/lib/blocks/editor/editor-config.js +191 -0
  44. package/dist/app/lib/blocks/editor/installGutenbergHooks.d.ts +2 -0
  45. package/dist/app/lib/blocks/editor/installGutenbergHooks.js +131 -0
  46. package/dist/app/lib/blocks/editor/usePostEditor.d.ts +27 -0
  47. package/dist/app/lib/blocks/editor/usePostEditor.js +79 -0
  48. package/dist/app/lib/blocks/index.d.ts +9 -0
  49. package/dist/app/lib/blocks/index.js +9 -0
  50. package/dist/app/lib/blocks/inline-editing.d.ts +54 -0
  51. package/dist/app/lib/blocks/inline-editing.js +114 -0
  52. package/dist/app/lib/devtools/components/BreakpointIndicator.js +81 -0
  53. package/{dev-ui → dist/app/lib/devtools}/components/DevUI.d.ts +1 -0
  54. package/dist/app/lib/devtools/components/DevUI.js +6 -0
  55. package/dist/app/lib/devtools/dev-tools-store.d.ts +9 -0
  56. package/dist/app/lib/devtools/dev-tools-store.js +8 -0
  57. package/dist/app/lib/devtools/hooks/usePersistState.js +31 -0
  58. package/dist/app/lib/devtools/hooks/useTailwind.d.ts +4183 -0
  59. package/dist/app/lib/devtools/hooks/useTailwind.js +9 -0
  60. package/dist/app/lib/devtools/index.d.ts +1 -0
  61. package/dist/app/lib/devtools/index.js +1 -0
  62. package/dist/app/lib/devtools/loader.js +23 -0
  63. package/dist/app/lib/devtools/tailwind.config.d.ts +23 -0
  64. package/dist/app/lib/devtools/tailwind.config.js +24 -0
  65. package/{hooks → dist/app/lib/devtools}/useQueryDebug.d.ts +1 -1
  66. package/dist/app/lib/devtools/useQueryDebug.js +13 -0
  67. package/dist/app/lib/dynamic/dynamic.d.ts +8 -0
  68. package/dist/app/lib/dynamic/dynamic.js +25 -0
  69. package/dist/app/lib/dynamic/index.d.ts +1 -0
  70. package/dist/app/lib/dynamic/index.js +1 -0
  71. package/dist/app/lib/hooks/apiConfig.d.ts +18 -0
  72. package/dist/app/lib/hooks/apiConfig.js +4 -0
  73. package/{hooks → dist/app/lib/hooks}/index.d.ts +2 -0
  74. package/dist/app/lib/hooks/index.js +5 -0
  75. package/dist/app/lib/hooks/queryUtils.d.ts +49 -0
  76. package/dist/app/lib/hooks/queryUtils.js +180 -0
  77. package/dist/app/lib/hooks/useAppData.d.ts +4 -0
  78. package/dist/app/lib/hooks/useAppData.js +11 -0
  79. package/{hooks → dist/app/lib/hooks}/usePageLoad.d.ts +1 -1
  80. package/dist/app/lib/hooks/usePageLoad.js +5 -0
  81. package/dist/app/lib/hooks/useRPC.d.ts +9 -0
  82. package/dist/app/lib/hooks/useRPC.js +9 -0
  83. package/dist/app/lib/internal/index.d.ts +4 -0
  84. package/dist/app/lib/internal/index.js +4 -0
  85. package/dist/app/lib/internal/internal-store.d.ts +9 -0
  86. package/dist/app/lib/internal/internal-store.js +7 -0
  87. package/dist/app/lib/internal/read-admin-manifest.d.ts +19 -0
  88. package/dist/app/lib/internal/read-admin-manifest.js +17 -0
  89. package/dist/app/lib/internal/read-block-manifest.d.ts +15 -0
  90. package/dist/app/lib/internal/read-block-manifest.js +16 -0
  91. package/dist/app/lib/internal/read-view-manifest.d.ts +12 -0
  92. package/dist/app/lib/internal/read-view-manifest.js +3 -0
  93. package/dist/app/lib/legacy-stitches/createStitches.d.ts +615 -0
  94. package/dist/app/lib/legacy-stitches/createStitches.js +439 -0
  95. package/dist/app/lib/legacy-stitches/index.js +1 -0
  96. package/{components → dist/app/lib/routing/components}/BrowserRouter.d.ts +2 -4
  97. package/dist/app/lib/routing/components/BrowserRouter.js +351 -0
  98. package/dist/app/lib/routing/components/ClientOnly.d.ts +12 -0
  99. package/dist/app/lib/routing/components/ClientOnly.js +14 -0
  100. package/dist/app/lib/routing/components/Link.d.ts +26 -0
  101. package/dist/app/lib/routing/components/Link.js +93 -0
  102. package/dist/app/lib/routing/components/RouteRenderer.d.ts +9 -0
  103. package/dist/app/lib/routing/components/RouteRenderer.js +28 -0
  104. package/dist/app/lib/routing/components/SSRRouter.d.ts +9 -0
  105. package/dist/app/lib/routing/components/SSRRouter.js +14 -0
  106. package/dist/app/lib/routing/components/ScrollRestoration.d.ts +15 -0
  107. package/dist/app/lib/routing/components/ScrollRestoration.js +32 -0
  108. package/dist/app/lib/routing/context.d.ts +5 -0
  109. package/dist/app/lib/routing/context.js +129 -0
  110. package/dist/app/lib/routing/hooks/useIsSSR.d.ts +8 -0
  111. package/dist/app/lib/routing/hooks/useIsSSR.js +22 -0
  112. package/dist/app/lib/routing/hooks/useRestorableState.d.ts +5 -0
  113. package/dist/app/lib/routing/hooks/useRestorableState.js +17 -0
  114. package/dist/app/lib/routing/hooks/useRoute.d.ts +2 -0
  115. package/dist/app/lib/routing/hooks/useRoute.js +5 -0
  116. package/dist/app/lib/routing/hooks/useRouteTransition.d.ts +4 -0
  117. package/dist/app/lib/routing/hooks/useRouteTransition.js +12 -0
  118. package/dist/app/lib/routing/hooks/useRouter.d.ts +2 -0
  119. package/dist/app/lib/routing/hooks/useRouter.js +11 -0
  120. package/dist/app/lib/routing/hooks/useRouterEvents.d.ts +2 -0
  121. package/dist/app/lib/routing/hooks/useRouterEvents.js +10 -0
  122. package/dist/app/lib/routing/hooks/useRouterState.d.ts +2 -0
  123. package/dist/app/lib/routing/hooks/useRouterState.js +8 -0
  124. package/dist/app/lib/routing/hooks/useSearchParams.d.ts +10 -0
  125. package/dist/app/lib/routing/hooks/useSearchParams.js +30 -0
  126. package/dist/app/lib/routing/index.d.ts +13 -0
  127. package/dist/app/lib/routing/index.js +13 -0
  128. package/dist/app/lib/routing/loader.d.ts +30 -0
  129. package/dist/app/lib/routing/loader.js +108 -0
  130. package/dist/app/lib/routing/types.d.ts +138 -0
  131. package/dist/app/lib/routing/utils.d.ts +15 -0
  132. package/dist/app/lib/routing/utils.js +94 -0
  133. package/dist/app/lib/views/defineView.d.ts +4 -0
  134. package/dist/app/lib/views/defineView.js +3 -0
  135. package/dist/app/lib/views/index.js +1 -0
  136. package/dist/app/server/index.d.ts +3 -0
  137. package/dist/app/server/index.js +3 -0
  138. package/dist/app/server/proxy-wp-admin.d.ts +3 -0
  139. package/dist/app/server/proxy-wp-admin.js +106 -0
  140. package/dist/app/server/render-ssr-page.d.ts +2 -0
  141. package/dist/app/server/render-ssr-page.js +22 -0
  142. package/dist/app/server/server-context.d.ts +34 -0
  143. package/dist/app/server/server-context.js +116 -0
  144. package/dist/app/server/utils/headers.d.ts +5 -0
  145. package/dist/app/server/utils/headers.js +28 -0
  146. package/dist/app/server/utils/index.html.d.ts +2 -0
  147. package/dist/app/server/utils/index.html.js +14 -0
  148. package/dist/app/server/utils/replace-host.d.ts +10 -0
  149. package/dist/app/server/utils/replace-host.js +61 -0
  150. package/dist/app/utils/query-client.d.ts +2 -0
  151. package/dist/app/utils/query-client.js +16 -0
  152. package/dist/app/utils/wp.d.ts +26 -0
  153. package/dist/node/cli/cli-mode.d.ts +10 -0
  154. package/dist/node/cli/cli-mode.js +12 -0
  155. package/dist/node/cli/cli-worker.d.ts +13 -0
  156. package/dist/node/cli/cli-worker.js +117 -0
  157. package/dist/node/cli/cli.js +197 -0
  158. package/dist/node/cli/display/CLIApp.d.ts +16 -0
  159. package/dist/node/cli/display/CLIApp.js +117 -0
  160. package/dist/node/cli/display/boot-cli-app.d.ts +2 -0
  161. package/dist/node/cli/display/boot-cli-app.js +10 -0
  162. package/{cli → dist/node/cli}/display/components/Fullscreen.d.ts +1 -1
  163. package/dist/node/cli/display/components/Fullscreen.js +24 -0
  164. package/dist/node/cli/display/components/LogEntries.d.ts +13 -0
  165. package/dist/node/cli/display/components/LogEntries.js +87 -0
  166. package/dist/node/cli/display/components/MenuItem.d.ts +6 -0
  167. package/dist/node/cli/display/components/MenuItem.js +11 -0
  168. package/dist/node/cli/display/components/TextInput.d.ts +44 -0
  169. package/dist/node/cli/display/components/TextInput.js +105 -0
  170. package/dist/node/cli/display/hooks/useManifest.d.ts +2 -0
  171. package/dist/node/cli/display/hooks/useManifest.js +8 -0
  172. package/dist/node/cli/display/hooks/useStatefulLog.d.ts +11 -0
  173. package/dist/node/cli/display/hooks/useStatefulLog.js +51 -0
  174. package/dist/node/cli/display/tools/BlockList.d.ts +2 -0
  175. package/dist/node/cli/display/tools/BlockList.js +10 -0
  176. package/dist/node/cli/display/tools/CreateBlock.d.ts +2 -0
  177. package/dist/node/cli/display/tools/CreateBlock.js +8 -0
  178. package/dist/node/cli/display/tools/cli-tool-list.d.ts +2 -0
  179. package/dist/node/cli/display/tools/cli-tool-list.js +23 -0
  180. package/dist/node/cli/display/tools/cli-tools.d.ts +26 -0
  181. package/dist/node/cli/display/tools/cli-tools.js +15 -0
  182. package/dist/node/cli/display/util/colors.d.ts +4 -0
  183. package/dist/node/cli/display/util/colors.js +63 -0
  184. package/dist/node/cli/version.d.ts +1 -0
  185. package/dist/node/cli/version.js +1 -0
  186. package/dist/node/compiler/build-vinxi.d.ts +8 -0
  187. package/dist/node/compiler/build-vinxi.js +37 -0
  188. package/dist/node/compiler/bundler.admin.d.ts +13 -0
  189. package/dist/node/compiler/bundler.admin.js +37 -0
  190. package/dist/node/compiler/bundler.frontend.d.ts +13 -0
  191. package/dist/node/compiler/bundler.frontend.js +37 -0
  192. package/dist/node/compiler/dev-server.d.ts +18 -0
  193. package/dist/node/compiler/dev-server.js +97 -0
  194. package/dist/node/compiler/get-vite-config.d.ts +19 -0
  195. package/dist/node/compiler/get-vite-config.js +184 -0
  196. package/dist/node/compiler/vinxi-app.d.ts +10 -0
  197. package/dist/node/compiler/vinxi-app.js +121 -0
  198. package/dist/node/compiler/vinxi-codegen.d.ts +12 -0
  199. package/dist/node/compiler/vinxi-codegen.js +408 -0
  200. package/dist/node/graphql/graphql-codegen.d.ts +30 -0
  201. package/dist/node/graphql/graphql-codegen.js +503 -0
  202. package/dist/node/graphql/graphql-schema-loader.d.ts +17 -0
  203. package/dist/node/graphql/graphql-schema-loader.js +91 -0
  204. package/dist/node/graphql/plugins/gql-plugin-files.d.ts +14 -0
  205. package/dist/node/graphql/plugins/gql-plugin-files.js +66 -0
  206. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.d.ts +8 -0
  207. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.js +10 -0
  208. package/dist/node/graphql/plugins/gql-plugin-queries.d.ts +8 -0
  209. package/dist/node/graphql/plugins/gql-plugin-queries.js +263 -0
  210. package/dist/node/graphql/query-files-loader.d.ts +26 -0
  211. package/dist/node/graphql/query-files-loader.js +54 -0
  212. package/dist/node/graphql/wp-info-query.d.ts +1 -0
  213. package/dist/node/graphql/wp-info-query.js +29 -0
  214. package/{config/config-schema.d.ts → dist/node/project/config.d.ts} +54 -38
  215. package/dist/node/project/config.js +138 -0
  216. package/dist/node/project/eddev-build-file.d.ts +10 -0
  217. package/dist/node/project/eddev-build-file.js +79 -0
  218. package/dist/node/project/env.d.ts +39 -0
  219. package/dist/node/project/env.js +77 -0
  220. package/dist/node/project/favicons.js +1 -0
  221. package/dist/node/project/manifest/block-manifest.d.ts +19 -0
  222. package/dist/node/project/manifest/block-manifest.js +206 -0
  223. package/dist/node/project/manifest/field-manifest.d.ts +17 -0
  224. package/dist/node/project/manifest/field-manifest.js +42 -0
  225. package/dist/node/project/manifest/manifest.d.ts +30 -0
  226. package/dist/node/project/manifest/manifest.js +105 -0
  227. package/dist/node/project/manifest/view-manifest.d.ts +19 -0
  228. package/dist/node/project/manifest/view-manifest.js +152 -0
  229. package/dist/node/project/manifest/widget-manifest.d.ts +17 -0
  230. package/dist/node/project/manifest/widget-manifest.js +42 -0
  231. package/dist/node/project/project.d.ts +58 -0
  232. package/dist/node/project/project.js +113 -0
  233. package/dist/node/project/wp-info.d.ts +32 -0
  234. package/dist/node/project/wp-info.js +32 -0
  235. package/dist/node/types/block-type.d.ts +92 -0
  236. package/dist/node/types/block-type.js +82 -0
  237. package/dist/node/types/view-type.d.ts +31 -0
  238. package/dist/node/types/view-type.js +53 -0
  239. package/dist/node/utils/format-zod-error.d.ts +3 -0
  240. package/dist/node/utils/format-zod-error.js +33 -0
  241. package/dist/node/utils/fs-codegen.d.ts +40 -0
  242. package/dist/node/utils/fs-codegen.js +97 -0
  243. package/dist/node/utils/fs.d.ts +106 -0
  244. package/dist/node/utils/fs.js +58 -0
  245. package/dist/node/utils/get-repo-info.d.ts +7 -0
  246. package/dist/node/utils/get-repo-info.js +21 -0
  247. package/dist/node/utils/helpers.d.ts +2 -0
  248. package/dist/node/utils/helpers.js +14 -0
  249. package/dist/node/utils/highlight-code.d.ts +10 -0
  250. package/dist/node/utils/highlight-code.js +30 -0
  251. package/dist/node/utils/is-deploying.d.ts +4 -0
  252. package/dist/node/utils/is-deploying.js +6 -0
  253. package/dist/node/utils/report-builder.d.ts +9 -0
  254. package/dist/node/utils/report-builder.js +51 -0
  255. package/dist/node/utils/self-signed-cert.d.ts +4 -0
  256. package/dist/node/utils/self-signed-cert.js +35 -0
  257. package/dist/node/utils/stateful-log.d.ts +65 -0
  258. package/dist/node/utils/stateful-log.js +223 -0
  259. package/dist/node/utils/ts-export-extractor.d.ts +9 -0
  260. package/dist/node/utils/ts-export-extractor.js +71 -0
  261. package/dist/node/utils/watch-file-tree.d.ts +11 -0
  262. package/dist/node/utils/watch-file-tree.js +58 -0
  263. package/package.json +121 -102
  264. package/stitches-archive/config.d.ts +210 -0
  265. package/stitches-archive/css-util.d.ts +119 -0
  266. package/stitches-archive/css.d.ts +9797 -0
  267. package/stitches-archive/index.d.mts +144 -0
  268. package/stitches-archive/index.d.ts +82 -0
  269. package/stitches-archive/index.mjs +2 -0
  270. package/stitches-archive/stitches.d.ts +288 -0
  271. package/stitches-archive/styled-component.d.ts +163 -0
  272. package/stitches-archive/theme.d.ts +43 -0
  273. package/stitches-archive/util.d.ts +32 -0
  274. package/tsconfig.app.json +20 -0
  275. package/tsconfig.json +2 -104
  276. package/tsconfig.node.json +20 -0
  277. package/types.app.d.ts +22 -0
  278. package/types.app.internal.d.ts +13 -0
  279. package/types.env.d.ts +16 -0
  280. package/types.meta.d.ts +319 -0
  281. package/types.node.d.ts +3 -0
  282. package/admin/components/FileWell.d.ts +0 -8
  283. package/admin/components/FileWell.js +0 -189
  284. package/admin/components/ImageWell.d.ts +0 -9
  285. package/admin/components/ImageWell.js +0 -209
  286. package/admin/defineField.js +0 -7
  287. package/admin/defineWidget.js +0 -10
  288. package/admin/index.d.ts +0 -4
  289. package/admin/index.js +0 -16
  290. package/admin/installFieldTypes.js +0 -71
  291. package/admin/runWidgets.js +0 -55
  292. package/admin/selectMedia.d.ts +0 -31
  293. package/admin/selectMedia.js +0 -9
  294. package/blocks/ContentBlocks.d.ts +0 -40
  295. package/blocks/ContentBlocks.js +0 -125
  296. package/blocks/ErrorBoundaryEditor.js +0 -64
  297. package/blocks/ErrorBoundaryFrontend.js +0 -69
  298. package/blocks/InspectorControls.d.ts +0 -2
  299. package/blocks/InspectorControls.js +0 -13
  300. package/blocks/blockAttributes.d.ts +0 -20
  301. package/blocks/blockAttributes.js +0 -81
  302. package/blocks/defineBlock.d.ts +0 -2
  303. package/blocks/defineBlock.js +0 -7
  304. package/blocks/index.d.ts +0 -5
  305. package/blocks/index.js +0 -23
  306. package/blocks/inlineEditing.d.ts +0 -32
  307. package/blocks/inlineEditing.js +0 -141
  308. package/blocks/installGutenbergHooks.d.ts +0 -2
  309. package/blocks/installGutenbergHooks.js +0 -211
  310. package/build/babel/plugin-name-defined-components.d.ts +0 -7
  311. package/build/babel/plugin-name-defined-components.js +0 -47
  312. package/build/build-favicon.d.ts +0 -1
  313. package/build/build-favicon.js +0 -71
  314. package/build/clean.d.ts +0 -1
  315. package/build/clean.js +0 -60
  316. package/build/create-codegen-worker.d.ts +0 -3
  317. package/build/create-codegen-worker.js +0 -71
  318. package/build/create-serverless-dev-worker.d.ts +0 -3
  319. package/build/create-serverless-dev-worker.js +0 -99
  320. package/build/create-webpack-worker.d.ts +0 -3
  321. package/build/create-webpack-worker.js +0 -64
  322. package/build/file-tree.d.ts +0 -5
  323. package/build/file-tree.js +0 -45
  324. package/build/get-webpack-config.d.ts +0 -3
  325. package/build/get-webpack-config.js +0 -426
  326. package/build/graphql-codegen/graphql-codegen-blocks.d.ts +0 -1
  327. package/build/graphql-codegen/graphql-codegen-blocks.js +0 -7
  328. package/build/graphql-codegen/graphql-codegen-files.js +0 -64
  329. package/build/graphql-codegen/graphql-codegen-no-duplicates.js +0 -13
  330. package/build/graphql-codegen/graphql-codegen-queries.d.ts +0 -1
  331. package/build/graphql-codegen/graphql-codegen-queries.js +0 -248
  332. package/build/manifests/manifest-blocks.d.ts +0 -12
  333. package/build/manifests/manifest-blocks.js +0 -61
  334. package/build/manifests/manifest-fields.d.ts +0 -12
  335. package/build/manifests/manifest-fields.js +0 -42
  336. package/build/manifests/manifest-views.d.ts +0 -12
  337. package/build/manifests/manifest-views.js +0 -49
  338. package/build/manifests/manifest-widgets.d.ts +0 -12
  339. package/build/manifests/manifest-widgets.js +0 -42
  340. package/build/manifests/manifest.d.ts +0 -11
  341. package/build/manifests/manifest.js +0 -100
  342. package/build/reporter.d.ts +0 -12
  343. package/build/reporter.js +0 -102
  344. package/build/serverless/create-next-app.d.ts +0 -9
  345. package/build/serverless/create-next-app.js +0 -536
  346. package/build/state/codegen-state.d.ts +0 -32
  347. package/build/state/codegen-state.js +0 -2
  348. package/build/state/compiler-state.d.ts +0 -49
  349. package/build/state/compiler-state.js +0 -2
  350. package/build/state/serverless-state.d.ts +0 -26
  351. package/build/state/serverless-state.js +0 -2
  352. package/build/workers/codegen-worker-script.d.ts +0 -2
  353. package/build/workers/codegen-worker-script.js +0 -624
  354. package/build/workers/serverless-worker-dev-script.d.ts +0 -1
  355. package/build/workers/serverless-worker-dev-script.js +0 -21
  356. package/build/workers/webpack-worker-script.d.ts +0 -2
  357. package/build/workers/webpack-worker-script.js +0 -171
  358. package/cli/build.dev.d.ts +0 -7
  359. package/cli/build.dev.js +0 -136
  360. package/cli/build.prod.d.ts +0 -5
  361. package/cli/build.prod.js +0 -107
  362. package/cli/cli.js +0 -90
  363. package/cli/display/components/BundleDisplay.d.ts +0 -5
  364. package/cli/display/components/BundleDisplay.js +0 -56
  365. package/cli/display/components/CodegenDisplay.d.ts +0 -5
  366. package/cli/display/components/CodegenDisplay.js +0 -62
  367. package/cli/display/components/DevCLIDisplay.d.ts +0 -12
  368. package/cli/display/components/DevCLIDisplay.js +0 -42
  369. package/cli/display/components/Fullscreen.js +0 -39
  370. package/cli/display/components/ServerlessDisplay.d.ts +0 -8
  371. package/cli/display/components/ServerlessDisplay.js +0 -68
  372. package/cli/display/components/StatusIcon.d.ts +0 -5
  373. package/cli/display/components/StatusIcon.js +0 -9
  374. package/cli/preinstall.d.ts +0 -1
  375. package/cli/preinstall.js +0 -19
  376. package/cli/setup.d.ts +0 -1
  377. package/cli/setup.js +0 -90
  378. package/components/AdminBar.d.ts +0 -1
  379. package/components/AdminBar.js +0 -9
  380. package/components/BrowserRouter.js +0 -155
  381. package/components/InlinePage.d.ts +0 -11
  382. package/components/InlinePage.js +0 -70
  383. package/components/NextRouter.d.ts +0 -9
  384. package/components/NextRouter.js +0 -45
  385. package/components/index.d.ts +0 -2
  386. package/components/index.js +0 -14
  387. package/config/config-schema.js +0 -38
  388. package/config/create-schema-file.d.ts +0 -1
  389. package/config/create-schema-file.js +0 -20
  390. package/config/get-config.d.ts +0 -78
  391. package/config/get-config.js +0 -32
  392. package/config/index.d.ts +0 -2
  393. package/config/index.js +0 -14
  394. package/config/parse-config.d.ts +0 -51
  395. package/config/parse-config.js +0 -8
  396. package/config/print-zod-errors.d.ts +0 -2
  397. package/config/print-zod-errors.js +0 -14
  398. package/dev-ui/components/BreakpointColumnHeader.d.ts +0 -10
  399. package/dev-ui/components/BreakpointColumnHeader.js +0 -47
  400. package/dev-ui/components/BreakpointIndicator.js +0 -139
  401. package/dev-ui/components/DevUI.js +0 -28
  402. package/dev-ui/components/Launcher.d.ts +0 -98
  403. package/dev-ui/components/Launcher.js +0 -94
  404. package/dev-ui/components/PanelWrapper.d.ts +0 -8
  405. package/dev-ui/components/PanelWrapper.js +0 -37
  406. package/dev-ui/components/ResponsiveLerpControl.d.ts +0 -7
  407. package/dev-ui/components/ResponsiveLerpControl.js +0 -176
  408. package/dev-ui/components/ResponsiveScaleEditor.d.ts +0 -25
  409. package/dev-ui/components/ResponsiveScaleEditor.js +0 -238
  410. package/dev-ui/components/atoms/Button.d.ts +0 -47
  411. package/dev-ui/components/atoms/Button.js +0 -67
  412. package/dev-ui/components/atoms/Dropdown.d.ts +0 -13
  413. package/dev-ui/components/atoms/Dropdown.js +0 -50
  414. package/dev-ui/components/atoms/NumberField.d.ts +0 -11
  415. package/dev-ui/components/atoms/NumberField.js +0 -111
  416. package/dev-ui/components/atoms/Spacer.d.ts +0 -42
  417. package/dev-ui/components/atoms/Spacer.js +0 -8
  418. package/dev-ui/components/atoms/Text.d.ts +0 -45
  419. package/dev-ui/components/atoms/Text.js +0 -39
  420. package/dev-ui/components/atoms/ToggleButton.d.ts +0 -8
  421. package/dev-ui/components/atoms/ToggleButton.js +0 -41
  422. package/dev-ui/components/atoms/Tooltip.d.ts +0 -9
  423. package/dev-ui/components/atoms/Tooltip.js +0 -66
  424. package/dev-ui/components/panels/AppDataDebugger.d.ts +0 -1
  425. package/dev-ui/components/panels/AppDataDebugger.js +0 -29
  426. package/dev-ui/components/panels/ColorEditor.d.ts +0 -1
  427. package/dev-ui/components/panels/ColorEditor.js +0 -128
  428. package/dev-ui/components/panels/PageDataDebugger.d.ts +0 -1
  429. package/dev-ui/components/panels/PageDataDebugger.js +0 -30
  430. package/dev-ui/components/panels/QueryDebugger.d.ts +0 -1
  431. package/dev-ui/components/panels/QueryDebugger.js +0 -46
  432. package/dev-ui/components/panels/SpacingEditor.d.ts +0 -1
  433. package/dev-ui/components/panels/SpacingEditor.js +0 -88
  434. package/dev-ui/components/panels/TypographyEditor.d.ts +0 -1
  435. package/dev-ui/components/panels/TypographyEditor.js +0 -97
  436. package/dev-ui/hooks/useBreakpoint.d.ts +0 -11
  437. package/dev-ui/hooks/useBreakpoint.js +0 -59
  438. package/dev-ui/hooks/usePersistState.js +0 -36
  439. package/dev-ui/hooks/useStylesheet.d.ts +0 -4
  440. package/dev-ui/hooks/useStylesheet.js +0 -31
  441. package/dev-ui/icons.d.ts +0 -15
  442. package/dev-ui/icons.js +0 -30
  443. package/dev-ui/index.d.ts +0 -1
  444. package/dev-ui/index.js +0 -13
  445. package/dev-ui/loader.js +0 -44
  446. package/dev-ui/panels.d.ts +0 -11
  447. package/dev-ui/panels.js +0 -47
  448. package/dev-ui/theme.d.ts +0 -151
  449. package/dev-ui/theme.js +0 -50
  450. package/dynamic/dynamic-component.d.ts +0 -10
  451. package/dynamic/dynamic-component.js +0 -8
  452. package/dynamic/index.d.ts +0 -1
  453. package/dynamic/index.js +0 -13
  454. package/entry/Root.d.ts +0 -3
  455. package/entry/Root.js +0 -56
  456. package/entry/entry.admin.dev.d.ts +0 -1
  457. package/entry/entry.admin.dev.js +0 -26
  458. package/entry/entry.admin.prod.d.ts +0 -1
  459. package/entry/entry.admin.prod.js +0 -16
  460. package/entry/entry.monolith.dev.d.ts +0 -6
  461. package/entry/entry.monolith.dev.js +0 -19
  462. package/entry/entry.monolith.prod.d.ts +0 -6
  463. package/entry/entry.monolith.prod.js +0 -18
  464. package/entry/entry.publicPath.js +0 -6
  465. package/gravityforms/index.d.ts +0 -2
  466. package/gravityforms/index.js +0 -14
  467. package/gravityforms/types.d.ts +0 -140
  468. package/gravityforms/types.js +0 -2
  469. package/gravityforms/useGravityForm.d.ts +0 -30
  470. package/gravityforms/useGravityForm.js +0 -292
  471. package/hooks/index.js +0 -15
  472. package/hooks/queryUtils.d.ts +0 -63
  473. package/hooks/queryUtils.js +0 -281
  474. package/hooks/useAppData.d.ts +0 -10
  475. package/hooks/useAppData.js +0 -37
  476. package/hooks/usePageLoad.js +0 -11
  477. package/hooks/useQuery.d.ts +0 -1
  478. package/hooks/useQuery.js +0 -10
  479. package/hooks/useQueryDebug.js +0 -21
  480. package/hooks/useRPC.d.ts +0 -12
  481. package/hooks/useRPC.js +0 -20
  482. package/index.d.ts +0 -1
  483. package/index.js +0 -5
  484. package/routing/index.d.ts +0 -1
  485. package/routing/index.js +0 -13
  486. package/routing/remoteProps.d.ts +0 -22
  487. package/routing/remoteProps.js +0 -103
  488. package/routing/routing.d.ts +0 -96
  489. package/routing/routing.js +0 -442
  490. package/routing/updateEditLink.d.ts +0 -1
  491. package/routing/updateEditLink.js +0 -12
  492. package/routing/updateHeadTags.d.ts +0 -2
  493. package/routing/updateHeadTags.js +0 -11
  494. package/serverless/define-api.d.ts +0 -2
  495. package/serverless/define-api.js +0 -66
  496. package/serverless/define-rpc-router.d.ts +0 -6
  497. package/serverless/define-rpc-router.js +0 -35
  498. package/serverless/error-codes.d.ts +0 -2
  499. package/serverless/error-codes.js +0 -14
  500. package/serverless/index.d.ts +0 -5
  501. package/serverless/index.js +0 -18
  502. package/serverless/rpc-provider.d.ts +0 -1
  503. package/serverless/rpc-provider.js +0 -5
  504. package/serverless-template/README.md +0 -34
  505. package/serverless-template/_utils/PageMeta.tsx +0 -44
  506. package/serverless-template/_utils/ed-config.ts +0 -5
  507. package/serverless-template/_utils/fetch-wordpress-props.ts +0 -62
  508. package/serverless-template/_utils/fetch-wp.ts +0 -34
  509. package/serverless-template/_utils/swr.ts +0 -43
  510. package/serverless-template/global.d.ts +0 -15
  511. package/serverless-template/next-env.d.ts +0 -3
  512. package/serverless-template/next.config.js +0 -119
  513. package/serverless-template/null.ts +0 -1
  514. package/serverless-template/package.json +0 -21
  515. package/serverless-template/pages/404.tsx +0 -12
  516. package/serverless-template/pages/[...slug].tsx +0 -35
  517. package/serverless-template/pages/_app.tsx +0 -55
  518. package/serverless-template/pages/_document.tsx +0 -65
  519. package/serverless-template/pages/api/rest/[...method].ts +0 -59
  520. package/serverless-template/pages/api/robots.ts +0 -49
  521. package/serverless-template/pages/api/sitemap/[...sitemap].ts +0 -56
  522. package/serverless-template/pages/api/trpc/[...trpc].ts +0 -41
  523. package/serverless-template/pages/index.tsx +0 -15
  524. package/serverless-template/tsconfig.json +0 -39
  525. package/style/createStitches.d.ts +0 -1058
  526. package/style/createStitches.js +0 -443
  527. package/style/index.js +0 -13
  528. package/utils/Observable.d.ts +0 -11
  529. package/utils/Observable.js +0 -34
  530. package/utils/getRepoName.d.ts +0 -4
  531. package/utils/getRepoName.js +0 -30
  532. package/utils/merge-refs.d.ts +0 -2
  533. package/utils/merge-refs.js +0 -17
  534. package/utils/promptIfRepoNameIncorrect.d.ts +0 -1
  535. package/utils/promptIfRepoNameIncorrect.js +0 -72
  536. package/utils/refreshOverlayInterop.d.ts +0 -4
  537. package/utils/refreshOverlayInterop.js +0 -12
  538. package/utils/reportErrorStack.d.ts +0 -7
  539. package/utils/reportErrorStack.js +0 -13
  540. package/utils/serverlessAppContext.d.ts +0 -3
  541. package/utils/serverlessAppContext.js +0 -6
  542. package/utils/updateEnvFile.d.ts +0 -1
  543. package/utils/updateEnvFile.js +0 -76
  544. package/utils/useObservable.d.ts +0 -2
  545. package/utils/useObservable.js +0 -12
  546. package/views/defineView.d.ts +0 -2
  547. package/views/defineView.js +0 -7
  548. package/views/index.js +0 -13
  549. /package/{admin → dist/app/lib/admin}/installFieldTypes.d.ts +0 -0
  550. /package/{admin → dist/app/lib/admin}/runWidgets.d.ts +0 -0
  551. /package/{dev-ui → dist/app/lib/devtools}/components/BreakpointIndicator.d.ts +0 -0
  552. /package/{dev-ui → dist/app/lib/devtools}/hooks/usePersistState.d.ts +0 -0
  553. /package/{dev-ui → dist/app/lib/devtools}/loader.d.ts +0 -0
  554. /package/{style → dist/app/lib/legacy-stitches}/index.d.ts +0 -0
  555. /package/{build/graphql-codegen/graphql-codegen-files.d.ts → dist/app/lib/routing/types.js} +0 -0
  556. /package/{views → dist/app/lib/views}/index.d.ts +0 -0
  557. /package/{build/graphql-codegen/graphql-codegen-no-duplicates.d.ts → dist/app/utils/wp.js} +0 -0
  558. /package/{cli → dist/node/cli}/cli.d.ts +0 -0
  559. /package/{entry/entry.publicPath.d.ts → dist/node/project/favicons.d.ts} +0 -0
@@ -0,0 +1,105 @@
1
+ import { getFileTree, watchFileTree } from "../../utils/watch-file-tree.js";
2
+ import { relative } from "path";
3
+ export function createManifestGenerator(args) {
4
+ let subscribers = new Set();
5
+ let files = [];
6
+ let cache = new Map();
7
+ let disposed = false;
8
+ let disposers = [];
9
+ let debouncer = 0;
10
+ disposers.push(() => {
11
+ clearTimeout(debouncer);
12
+ });
13
+ let value = null;
14
+ async function load() {
15
+ let resolvedFirst = false;
16
+ return new Promise(async (resolve) => {
17
+ files = [];
18
+ let events = [];
19
+ const update = async () => {
20
+ value = await generate(files);
21
+ clearTimeout(debouncer);
22
+ debouncer = setTimeout(() => {
23
+ if (!disposed)
24
+ subscribers.forEach((func) => func(value, events));
25
+ events = [];
26
+ }, 200);
27
+ if (!resolvedFirst) {
28
+ resolvedFirst = true;
29
+ resolve(value);
30
+ events = [];
31
+ }
32
+ };
33
+ if (args.watch) {
34
+ const disposer = await watchFileTree(args.pattern, (fileList, event) => {
35
+ files = fileList;
36
+ cache = new Map();
37
+ if (args.onFileChange)
38
+ fileList.forEach(args.onFileChange);
39
+ update();
40
+ if (event) {
41
+ events.push(event);
42
+ }
43
+ });
44
+ disposers.push(disposer);
45
+ }
46
+ else {
47
+ files = await getFileTree(args.pattern);
48
+ update();
49
+ }
50
+ });
51
+ }
52
+ async function generate(files) {
53
+ const entries = {};
54
+ await Promise.all(files.map(async (file) => {
55
+ const key = args.getKey(file);
56
+ if (key === null)
57
+ return;
58
+ const value = await args.loadValue(file, key);
59
+ entries[key] = {
60
+ key,
61
+ relativePath: relative(args.baseDir, file),
62
+ fullPath: file,
63
+ value,
64
+ };
65
+ }));
66
+ return args.generateManifest(entries);
67
+ }
68
+ let hasBooted = false;
69
+ return {
70
+ dispose() {
71
+ disposed = true;
72
+ disposers.forEach((disposer) => disposer());
73
+ },
74
+ subscribe(callback) {
75
+ if (!hasBooted) {
76
+ load();
77
+ hasBooted = true;
78
+ }
79
+ subscribers.add(callback);
80
+ if (value) {
81
+ setImmediate(() => callback(value));
82
+ }
83
+ return () => {
84
+ subscribers.delete(callback);
85
+ };
86
+ },
87
+ subscribeFuture(callback) {
88
+ subscribers.add(callback);
89
+ return () => {
90
+ subscribers.delete(callback);
91
+ };
92
+ },
93
+ get() {
94
+ return new Promise((resolve) => {
95
+ const disposer = this.subscribe((manifest) => {
96
+ resolve(manifest);
97
+ disposer();
98
+ });
99
+ });
100
+ },
101
+ getLast() {
102
+ return value;
103
+ },
104
+ };
105
+ }
@@ -0,0 +1,19 @@
1
+ import { ViewMetadata, ViewMetadataConstructor } from "../../types/view-type.js";
2
+ import { Project } from "../project.js";
3
+ export type ViewManifest = {
4
+ views: {
5
+ [K: string]: ViewMetadata;
6
+ };
7
+ validationMessages: {
8
+ viewKey: string;
9
+ message: string;
10
+ severity: "error" | "warning";
11
+ }[];
12
+ };
13
+ type ViewLoadResult = {
14
+ data: ViewMetadataConstructor | null;
15
+ error?: string;
16
+ };
17
+ export type ViewManifestGenerator = ReturnType<typeof loadViewManifest>;
18
+ export declare function loadViewManifest(project: Project): import("./manifest.js").ManifestGenerator<ViewLoadResult, ViewManifest>;
19
+ export {};
@@ -0,0 +1,152 @@
1
+ import { basename } from "node:path";
2
+ import { cliMode } from "../../cli/cli-mode.js";
3
+ import { ViewMetaSchema } from "../../types/view-type.js";
4
+ import { metaExtractor } from "../../utils/ts-export-extractor.js";
5
+ import { formatZodError } from "../../utils/format-zod-error.js";
6
+ import { fs } from "../../utils/fs.js";
7
+ import { createManifestGenerator } from "./manifest.js";
8
+ export function loadViewManifest(project) {
9
+ return createManifestGenerator({
10
+ baseDir: project.rootDir,
11
+ pattern: "views/**/*.tsx",
12
+ watch: cliMode.watch,
13
+ async generateManifest(entries) {
14
+ let result = {
15
+ views: {},
16
+ validationMessages: [],
17
+ };
18
+ Object.entries(entries)
19
+ .sort(([b1], [b2]) => {
20
+ return b1.localeCompare(b2);
21
+ })
22
+ .forEach(([key, entry]) => {
23
+ const { data, error: initialError } = entry.value;
24
+ // Add the view to the manifest, even though it might be broken.
25
+ // Any broken views will have warnings/errors attached.
26
+ result.views[key] = data;
27
+ // If there was an error loading the view, add it to the manifest
28
+ if (initialError) {
29
+ result.validationMessages.push({
30
+ viewKey: key,
31
+ message: initialError,
32
+ severity: "error",
33
+ });
34
+ return;
35
+ }
36
+ else {
37
+ // Validate the structure of the metadata
38
+ const parsed = ViewMetaSchema.safeParse(data);
39
+ if (parsed.success) {
40
+ // The view metadata matches our schema, and may have been transformed
41
+ result.views[key] = parsed.data;
42
+ }
43
+ else {
44
+ result.validationMessages.push({
45
+ viewKey: key,
46
+ message: "Metadata validation error:\n" + formatZodError(parsed.error),
47
+ severity: "warning",
48
+ });
49
+ }
50
+ }
51
+ });
52
+ return result;
53
+ },
54
+ getKey(path) {
55
+ // Strip the views folder name + extension
56
+ return path.replace(/\.tsx$/, "").replace(/^views\//, "");
57
+ },
58
+ onFileChange(path) {
59
+ metaExtractor.invalidate(path);
60
+ },
61
+ async loadValue(path, key) {
62
+ const contents = await fs.readFile(path, "utf8");
63
+ // Start with a default value
64
+ let metadata = {
65
+ fileName: path,
66
+ slug: key,
67
+ title: key,
68
+ cache: true,
69
+ };
70
+ let result = null;
71
+ /**
72
+ * If the project is configured to use legacy metadata, read the metadata from
73
+ * the comment header.
74
+ *
75
+ * Otherwise, we'll pull it as JSON straight from the .tsx file
76
+ */
77
+ if (project.config?.legacyMetadata) {
78
+ result = readViewDataAsComment(contents);
79
+ }
80
+ else {
81
+ result = readViewDataAsJSONExport(path, contents);
82
+ }
83
+ if (result) {
84
+ Object.assign(metadata, result);
85
+ }
86
+ // Compute the various names for this view
87
+ return {
88
+ data: metadata,
89
+ };
90
+ },
91
+ });
92
+ }
93
+ /**
94
+ * Rip the JSON metadata directly from the .tsx file
95
+ */
96
+ function readViewDataAsJSONExport(file, contents) {
97
+ const userData = metaExtractor.extract(file, contents);
98
+ if (!userData)
99
+ return null;
100
+ const result = {};
101
+ if (userData.templateName) {
102
+ const name = basename(file);
103
+ result.title = userData.templateName;
104
+ result.isCustomTemplate = true;
105
+ const inferredPostTypes = name
106
+ .match(/^single-(.+)\.tsx$/i)?.[1]
107
+ .split("-")
108
+ .map((_frag, i, arr) => {
109
+ return arr.slice(0, i + 1).join("-");
110
+ });
111
+ result.postType = Array.isArray(userData.postType)
112
+ ? userData.postType
113
+ : typeof userData.postType === "string"
114
+ ? [userData.postType]
115
+ : inferredPostTypes
116
+ ? inferredPostTypes
117
+ : ["page"];
118
+ }
119
+ result.cache = userData.cache;
120
+ return result;
121
+ }
122
+ /**
123
+ * Parse as a legacy comment header
124
+ */
125
+ function readViewDataAsComment(file) {
126
+ let meta = {};
127
+ // Ensure the comment header is set
128
+ if (!/^\/\*.+?\*\//s.test(file))
129
+ return null;
130
+ // Get the comment section
131
+ const commentSection = file.match(/^.+\*\//s);
132
+ if (!commentSection)
133
+ return null;
134
+ const lines = commentSection[0].split("\n");
135
+ lines.forEach((line, i) => {
136
+ const match = line.match(/\s*\*?\s*([^:]+):\s*(.+)\s*/);
137
+ if (!match)
138
+ return;
139
+ let key = match[1].replace(/\s/g, "").toLocaleLowerCase();
140
+ let value = match[2].trim();
141
+ switch (key) {
142
+ case "templatename":
143
+ meta.title = value;
144
+ meta.isCustomTemplate = true;
145
+ return;
146
+ case "cache":
147
+ meta.cache = value === "true";
148
+ return;
149
+ }
150
+ });
151
+ return meta;
152
+ }
@@ -0,0 +1,17 @@
1
+ import { Project } from "../project.js";
2
+ export type WidgetManifest = {
3
+ widgets: Record<string, WidgetInfo>;
4
+ validationMessages: {
5
+ fieldKey: string;
6
+ message: string;
7
+ severity: "error" | "warning";
8
+ }[];
9
+ };
10
+ type WidgetInfo = {
11
+ slug: string;
12
+ fileName: string;
13
+ error?: string;
14
+ };
15
+ export type WidgetManifestGenerator = ReturnType<typeof loadWidgetManifest>;
16
+ export declare function loadWidgetManifest(project: Project): import("./manifest.js").ManifestGenerator<WidgetInfo, WidgetManifest>;
17
+ export {};
@@ -0,0 +1,42 @@
1
+ import { cliMode } from "../../cli/cli-mode.js";
2
+ import { createManifestGenerator } from "./manifest.js";
3
+ export function loadWidgetManifest(project) {
4
+ return createManifestGenerator({
5
+ baseDir: project.rootDir,
6
+ pattern: "backend/widgets/*.tsx",
7
+ watch: cliMode.watch,
8
+ async generateManifest(entries) {
9
+ let result = {
10
+ widgets: {},
11
+ validationMessages: [],
12
+ };
13
+ Object.entries(entries)
14
+ .sort(([b1], [b2]) => {
15
+ return b1.localeCompare(b2);
16
+ })
17
+ .forEach(([key, entry]) => {
18
+ const { error: initialError } = entry.value;
19
+ result.widgets[key] = entry.value;
20
+ if (initialError) {
21
+ result.validationMessages.push({
22
+ fieldKey: key,
23
+ message: initialError,
24
+ severity: "error",
25
+ });
26
+ return;
27
+ }
28
+ });
29
+ return result;
30
+ },
31
+ getKey(path) {
32
+ // Strip the views folder name + extension
33
+ return path.replace(/\.tsx$/, "").replace(/^backend\/widgets\//, "");
34
+ },
35
+ async loadValue(fileName, key) {
36
+ return {
37
+ slug: key,
38
+ fileName,
39
+ };
40
+ },
41
+ });
42
+ }
@@ -0,0 +1,58 @@
1
+ import { EDConfig } from "./config.js";
2
+ import { BlockManifestGenerator } from "./manifest/block-manifest.js";
3
+ import { ViewManifestGenerator } from "./manifest/view-manifest.js";
4
+ import { FieldManifestGenerator } from "./manifest/field-manifest.js";
5
+ import { WidgetManifestGenerator } from "./manifest/widget-manifest.js";
6
+ export declare const projectLog: import("../utils/stateful-log.js").StatefulLog<Project>;
7
+ type ProjectArgs = {
8
+ rootDir: string;
9
+ reportPluginCompatibility?: boolean;
10
+ };
11
+ /**
12
+ * This class represents a single app project created using the stack.
13
+ * It has methods and properties that are useful for working with the project.
14
+ */
15
+ export declare class Project {
16
+ rootDir: string;
17
+ themeName: string;
18
+ publicUrl: string;
19
+ repoUrl: string;
20
+ configFile: string;
21
+ origin: string;
22
+ config?: EDConfig;
23
+ blocks: BlockManifestGenerator;
24
+ views: ViewManifestGenerator;
25
+ fields: FieldManifestGenerator;
26
+ widgets: WidgetManifestGenerator;
27
+ private wp;
28
+ reportPluginCompatibility: boolean;
29
+ private constructor();
30
+ private load;
31
+ reportProjectInfo(): string;
32
+ getWordpressInfo(): Promise<{
33
+ postTypes: {
34
+ name: string;
35
+ label: string;
36
+ hasArchive: boolean;
37
+ graphqlSingleName: string;
38
+ graphqlPluralName: string;
39
+ excludeFromSearch: boolean;
40
+ }[];
41
+ plugins: {
42
+ name: string;
43
+ slug: string;
44
+ version: string;
45
+ url: string;
46
+ }[];
47
+ coreBlocks: string[];
48
+ blockTags: string[];
49
+ scalarTypes: Record<string, string>;
50
+ postMetaTypes: {
51
+ key: string;
52
+ isScalar: boolean;
53
+ typeName: string;
54
+ }[];
55
+ }>;
56
+ static create(args: ProjectArgs): Promise<Project>;
57
+ }
58
+ export {};
@@ -0,0 +1,113 @@
1
+ import { relative, resolve } from "path";
2
+ import { undent } from "undent";
3
+ import { objFormat } from "obj-console";
4
+ import { getRepoInfo } from "../utils/get-repo-info.js";
5
+ import { isDeploying } from "../utils/is-deploying.js";
6
+ import { createConsole } from "../utils/stateful-log.js";
7
+ import { Configurator } from "./config.js";
8
+ import { loadBlockManifest } from "./manifest/block-manifest.js";
9
+ import { loadViewManifest } from "./manifest/view-manifest.js";
10
+ import { WPInfo } from "./wp-info.js";
11
+ import { ProjectEnvUtils } from "./env.js";
12
+ import { loadFieldManifest } from "./manifest/field-manifest.js";
13
+ import { loadWidgetManifest } from "./manifest/widget-manifest.js";
14
+ const console = createConsole("Project", "project");
15
+ export const projectLog = console;
16
+ /**
17
+ * This class represents a single app project created using the stack.
18
+ * It has methods and properties that are useful for working with the project.
19
+ */
20
+ export class Project {
21
+ rootDir = "";
22
+ themeName = "";
23
+ publicUrl = "";
24
+ repoUrl = "";
25
+ configFile = "";
26
+ origin = "";
27
+ config;
28
+ blocks;
29
+ views;
30
+ fields;
31
+ widgets;
32
+ wp;
33
+ reportPluginCompatibility = false;
34
+ constructor(opts) {
35
+ this.rootDir = opts.rootDir;
36
+ this.origin = ProjectEnvUtils.get("SITE_URL");
37
+ this.reportPluginCompatibility = opts.reportPluginCompatibility || false;
38
+ this.blocks = loadBlockManifest(this);
39
+ this.views = loadViewManifest(this);
40
+ this.fields = loadFieldManifest(this);
41
+ this.widgets = loadWidgetManifest(this);
42
+ this.wp = new WPInfo(ProjectEnvUtils.get("SITE_URL"));
43
+ }
44
+ async load() {
45
+ console.setWorking(true);
46
+ console.setState(this);
47
+ const repoInfo = await getRepoInfo(this.rootDir);
48
+ this.themeName = repoInfo.themeName;
49
+ this.publicUrl = `/wp-content/themes/${repoInfo.themeName}/`;
50
+ this.configFile = relative(process.cwd(), resolve(this.rootDir, "ed.config.json"));
51
+ this.repoUrl = repoInfo.repoURL?.replace("git@github.com:", "https://github.com/").replace(".git", "") || "";
52
+ this.reportProjectInfo();
53
+ /**
54
+ * Make sure the git repo name matches
55
+ */
56
+ if (repoInfo.repoName && repoInfo.repoName !== repoInfo.themeName && !isDeploying()) {
57
+ console.warn(undent `
58
+ Theme ↔ Repo Name Mismatch!
59
+ The folder ('${repoInfo.themeName}') and repo name ('${repoInfo.repoName}') should be the same.
60
+ The repo name is used for generating the public theme URL, used by assets.
61
+
62
+ You should rename the folder to match the repo name, or vice versa.
63
+ `);
64
+ // if (cliMode.interactive) {
65
+ // await clack.confirm({
66
+ // message: `Ignore and continue anyway?`,
67
+ // })
68
+ // } else {
69
+ // console.flush()
70
+ // process.exit(1)
71
+ // }
72
+ }
73
+ /**
74
+ * Load configuration
75
+ */
76
+ const configurator = await Configurator.create(this);
77
+ this.config = configurator.config;
78
+ /**
79
+ * Report plugins errors
80
+ **/
81
+ if (this.reportPluginCompatibility) {
82
+ const issues = await this.wp.getPluginIssues().catch(() => []);
83
+ if (issues.length) {
84
+ issues.forEach((issue) => console.warn(issue));
85
+ }
86
+ }
87
+ console.setWorking(false);
88
+ console.info(this.reportProjectInfo());
89
+ }
90
+ reportProjectInfo() {
91
+ return objFormat({
92
+ "Theme Name": this.themeName,
93
+ "Theme URL": this.publicUrl,
94
+ "Repo URL": this.repoUrl,
95
+ "Config File": this.configFile,
96
+ }, {
97
+ unfoldDepth: 2,
98
+ omitBrackets: true,
99
+ quote: "",
100
+ omitEolCommas: true,
101
+ padding: "",
102
+ }).trim();
103
+ }
104
+ async getWordpressInfo() {
105
+ const info = await this.wp.getInfo();
106
+ return info;
107
+ }
108
+ static async create(args) {
109
+ const project = new Project(args);
110
+ await project.load();
111
+ return project;
112
+ }
113
+ }
@@ -0,0 +1,32 @@
1
+ type WPInfoData = {
2
+ postTypes: {
3
+ name: string;
4
+ label: string;
5
+ hasArchive: boolean;
6
+ graphqlSingleName: string;
7
+ graphqlPluralName: string;
8
+ excludeFromSearch: boolean;
9
+ }[];
10
+ plugins: {
11
+ name: string;
12
+ slug: string;
13
+ version: string;
14
+ url: string;
15
+ }[];
16
+ coreBlocks: string[];
17
+ blockTags: string[];
18
+ scalarTypes: Record<string, string>;
19
+ postMetaTypes: {
20
+ key: string;
21
+ isScalar: boolean;
22
+ typeName: string;
23
+ }[];
24
+ };
25
+ export declare class WPInfo {
26
+ siteUrl: string;
27
+ private cached?;
28
+ constructor(siteUrl: string);
29
+ getInfo(force?: boolean): Promise<WPInfoData>;
30
+ getPluginIssues(): Promise<string[]>;
31
+ }
32
+ export {};
@@ -0,0 +1,32 @@
1
+ import { resolveURL } from "ufo";
2
+ export class WPInfo {
3
+ siteUrl;
4
+ cached;
5
+ constructor(siteUrl) {
6
+ this.siteUrl = siteUrl;
7
+ }
8
+ async getInfo(force = false) {
9
+ if (this.cached && !force)
10
+ return this.cached;
11
+ const url = resolveURL(this.siteUrl, "/wp-json/ed/v1/dev/site-info");
12
+ const response = await fetch(url);
13
+ const result = (await response.json());
14
+ this.cached = result;
15
+ return result;
16
+ }
17
+ async getPluginIssues() {
18
+ const info = await this.getInfo();
19
+ if (!info)
20
+ return [];
21
+ const issues = [];
22
+ info.plugins.forEach((plugin) => {
23
+ if (plugin.name.includes("Disable Comments")) {
24
+ issues.push(`The "Disable Comments" plugin is not needed, as comments are now disabled by default.`);
25
+ }
26
+ else if (plugin.name.includes("Better Admin Bar")) {
27
+ issues.push(`The "Better Admin Bar" plugin is not needed, as this functionality is handled by the stack.`);
28
+ }
29
+ });
30
+ return issues;
31
+ }
32
+ }
@@ -0,0 +1,92 @@
1
+ import { z } from "zod";
2
+ import { BlockManifest } from "../project/manifest/block-manifest.js";
3
+ export declare const BlockMetaSchema: z.ZodObject<{
4
+ acfName: z.ZodString;
5
+ fileName: z.ZodString;
6
+ slug: z.ZodString;
7
+ graphqlFieldName: z.ZodString;
8
+ title: z.ZodString;
9
+ description: z.ZodOptional<z.ZodString>;
10
+ category: z.ZodDefault<z.ZodString>;
11
+ icon: z.ZodOptional<z.ZodString>;
12
+ keywords: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
13
+ types: z.ZodArray<z.ZodString, "many">;
14
+ templates: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
15
+ mode: z.ZodDefault<z.ZodEnum<["preview", "edit", "both"]>>;
16
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
17
+ flags: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
18
+ childTags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
19
+ childBlocks: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
20
+ parent: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
21
+ ancestors: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
22
+ dynamic: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
23
+ cache: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
24
+ allowMultiple: z.ZodDefault<z.ZodBoolean>;
25
+ postMetaBlock: z.ZodOptional<z.ZodObject<{
26
+ fieldName: z.ZodString;
27
+ }, "strip", z.ZodTypeAny, {
28
+ fieldName: string;
29
+ }, {
30
+ fieldName: string;
31
+ }>>;
32
+ frontendMode: z.ZodDefault<z.ZodEnum<["hidden", "childrenOnly", "default"]>>;
33
+ inserter: z.ZodDefault<z.ZodBoolean>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ cache: boolean;
36
+ acfName: string;
37
+ fileName: string;
38
+ slug: string;
39
+ graphqlFieldName: string;
40
+ title: string;
41
+ category: string;
42
+ types: string[];
43
+ mode: "preview" | "edit" | "both";
44
+ tags: string[];
45
+ flags: Record<string, any>;
46
+ childTags: string[];
47
+ childBlocks: string[];
48
+ parent: string[];
49
+ ancestors: string[];
50
+ dynamic: boolean;
51
+ allowMultiple: boolean;
52
+ frontendMode: "hidden" | "childrenOnly" | "default";
53
+ inserter: boolean;
54
+ description?: string | undefined;
55
+ icon?: string | undefined;
56
+ keywords?: string[] | undefined;
57
+ templates?: string[] | null | undefined;
58
+ postMetaBlock?: {
59
+ fieldName: string;
60
+ } | undefined;
61
+ }, {
62
+ acfName: string;
63
+ fileName: string;
64
+ slug: string;
65
+ graphqlFieldName: string;
66
+ title: string;
67
+ types: string[];
68
+ cache?: boolean | undefined;
69
+ description?: string | undefined;
70
+ category?: string | undefined;
71
+ icon?: string | undefined;
72
+ keywords?: string[] | undefined;
73
+ templates?: string[] | null | undefined;
74
+ mode?: "preview" | "edit" | "both" | undefined;
75
+ tags?: string[] | undefined;
76
+ flags?: Record<string, any> | undefined;
77
+ childTags?: string[] | undefined;
78
+ childBlocks?: string[] | undefined;
79
+ parent?: string[] | undefined;
80
+ ancestors?: string[] | undefined;
81
+ dynamic?: boolean | undefined;
82
+ allowMultiple?: boolean | undefined;
83
+ postMetaBlock?: {
84
+ fieldName: string;
85
+ } | undefined;
86
+ frontendMode?: "hidden" | "childrenOnly" | "default" | undefined;
87
+ inserter?: boolean | undefined;
88
+ }>;
89
+ export type BlockMetadata = z.infer<typeof BlockMetaSchema>;
90
+ export type BlockMetadataConstructor = z.input<typeof BlockMetaSchema>;
91
+ export declare function describeBlock(block: BlockMetadata): string;
92
+ export declare function describeBlockManifest(manifest: BlockManifest): string;