eddev 0.3.35 → 2.0.0-beta.2

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 (567) 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/Root.d.ts +1 -0
  5. package/dist/app/entry/Root.js +9 -0
  6. package/dist/app/entry/main.admin.d.ts +3 -0
  7. package/dist/app/entry/main.admin.js +10 -0
  8. package/dist/app/entry/main.frontend.spa.d.ts +3 -0
  9. package/dist/app/entry/main.frontend.spa.js +13 -0
  10. package/dist/app/entry/main.frontend.ssr.d.ts +21 -0
  11. package/dist/app/entry/main.frontend.ssr.js +79 -0
  12. package/dist/app/entry/main.serverless.dev.d.ts +4 -0
  13. package/dist/app/entry/main.serverless.dev.js +21 -0
  14. package/{admin → dist/app/lib/admin}/defineField.d.ts +2 -2
  15. package/dist/app/lib/admin/defineField.js +3 -0
  16. package/{admin → dist/app/lib/admin}/defineWidget.d.ts +1 -1
  17. package/dist/app/lib/admin/defineWidget.js +6 -0
  18. package/dist/app/lib/admin/index.d.ts +2 -0
  19. package/dist/app/lib/admin/index.js +2 -0
  20. package/dist/app/lib/admin/installFieldTypes.js +92 -0
  21. package/dist/app/lib/admin/runWidgets.js +38 -0
  22. package/dist/app/lib/blocks/ContentBlocks.d.ts +83 -0
  23. package/dist/app/lib/blocks/ContentBlocks.js +92 -0
  24. package/dist/app/lib/blocks/EditableText.d.ts +41 -0
  25. package/dist/app/lib/blocks/EditableText.js +50 -0
  26. package/{blocks → dist/app/lib/blocks}/ErrorBoundaryFrontend.d.ts +2 -2
  27. package/dist/app/lib/blocks/ErrorBoundaryFrontend.js +35 -0
  28. package/dist/app/lib/blocks/InnerBlocks.d.ts +42 -0
  29. package/dist/app/lib/blocks/InnerBlocks.js +55 -0
  30. package/dist/app/lib/blocks/block-utils.d.ts +24 -0
  31. package/dist/app/lib/blocks/block-utils.js +41 -0
  32. package/dist/app/lib/blocks/defineBlock.d.ts +2 -0
  33. package/dist/app/lib/blocks/defineBlock.js +3 -0
  34. package/dist/app/lib/blocks/editor/EditorSupport.d.ts +5 -0
  35. package/dist/app/lib/blocks/editor/EditorSupport.js +19 -0
  36. package/{blocks → dist/app/lib/blocks/editor}/ErrorBoundaryEditor.d.ts +1 -1
  37. package/dist/app/lib/blocks/editor/ErrorBoundaryEditor.js +28 -0
  38. package/dist/app/lib/blocks/editor/block-templates.d.ts +3 -0
  39. package/dist/app/lib/blocks/editor/block-templates.js +9 -0
  40. package/dist/app/lib/blocks/editor/blocks-by-tag.d.ts +7 -0
  41. package/dist/app/lib/blocks/editor/blocks-by-tag.js +42 -0
  42. package/dist/app/lib/blocks/editor/controls.d.ts +10 -0
  43. package/dist/app/lib/blocks/editor/controls.js +20 -0
  44. package/dist/app/lib/blocks/editor/editor-config.d.ts +58 -0
  45. package/dist/app/lib/blocks/editor/editor-config.js +191 -0
  46. package/dist/app/lib/blocks/editor/installGutenbergHooks.d.ts +2 -0
  47. package/dist/app/lib/blocks/editor/installGutenbergHooks.js +131 -0
  48. package/dist/app/lib/blocks/editor/usePostEditor.d.ts +27 -0
  49. package/dist/app/lib/blocks/editor/usePostEditor.js +79 -0
  50. package/dist/app/lib/blocks/index.d.ts +9 -0
  51. package/dist/app/lib/blocks/index.js +9 -0
  52. package/dist/app/lib/blocks/inline-editing.d.ts +54 -0
  53. package/dist/app/lib/blocks/inline-editing.js +114 -0
  54. package/dist/app/lib/devtools/components/BreakpointIndicator.js +79 -0
  55. package/{dev-ui → dist/app/lib/devtools}/components/DevUI.d.ts +1 -0
  56. package/dist/app/lib/devtools/components/DevUI.js +6 -0
  57. package/dist/app/lib/devtools/hooks/usePersistState.js +31 -0
  58. package/dist/app/lib/devtools/hooks/useTailwind.d.ts +4184 -0
  59. package/dist/app/lib/devtools/hooks/useTailwind.js +6 -0
  60. package/dist/app/lib/devtools/index.js +1 -0
  61. package/dist/app/lib/devtools/loader.js +23 -0
  62. package/dist/app/lib/devtools/tailwind.config.d.ts +23 -0
  63. package/dist/app/lib/devtools/tailwind.config.js +24 -0
  64. package/{hooks → dist/app/lib/devtools}/useQueryDebug.d.ts +1 -1
  65. package/dist/app/lib/devtools/useQueryDebug.js +13 -0
  66. package/dist/app/lib/dynamic/dynamic.d.ts +8 -0
  67. package/dist/app/lib/dynamic/dynamic.js +25 -0
  68. package/dist/app/lib/dynamic/index.d.ts +1 -0
  69. package/dist/app/lib/dynamic/index.js +1 -0
  70. package/dist/app/lib/hooks/apiConfig.d.ts +18 -0
  71. package/dist/app/lib/hooks/apiConfig.js +4 -0
  72. package/{hooks → dist/app/lib/hooks}/index.d.ts +2 -0
  73. package/dist/app/lib/hooks/index.js +5 -0
  74. package/dist/app/lib/hooks/queryUtils.d.ts +46 -0
  75. package/dist/app/lib/hooks/queryUtils.js +183 -0
  76. package/dist/app/lib/hooks/useAppData.d.ts +4 -0
  77. package/dist/app/lib/hooks/useAppData.js +11 -0
  78. package/{hooks → dist/app/lib/hooks}/usePageLoad.d.ts +1 -1
  79. package/dist/app/lib/hooks/usePageLoad.js +5 -0
  80. package/dist/app/lib/hooks/useRPC.d.ts +9 -0
  81. package/dist/app/lib/hooks/useRPC.js +9 -0
  82. package/dist/app/lib/internal/index.d.ts +4 -0
  83. package/dist/app/lib/internal/index.js +4 -0
  84. package/dist/app/lib/internal/internal-store.d.ts +11 -0
  85. package/dist/app/lib/internal/internal-store.js +9 -0
  86. package/dist/app/lib/internal/read-admin-manifest.d.ts +19 -0
  87. package/dist/app/lib/internal/read-admin-manifest.js +17 -0
  88. package/dist/app/lib/internal/read-block-manifest.d.ts +15 -0
  89. package/dist/app/lib/internal/read-block-manifest.js +16 -0
  90. package/dist/app/lib/internal/read-view-manifest.d.ts +12 -0
  91. package/dist/app/lib/internal/read-view-manifest.js +3 -0
  92. package/dist/app/lib/legacy-stitches/createStitches.d.ts +615 -0
  93. package/dist/app/lib/legacy-stitches/createStitches.js +439 -0
  94. package/dist/app/lib/legacy-stitches/index.js +1 -0
  95. package/{components → dist/app/lib/routing/components}/BrowserRouter.d.ts +2 -4
  96. package/dist/app/lib/routing/components/BrowserRouter.js +351 -0
  97. package/dist/app/lib/routing/components/ClientOnly.d.ts +12 -0
  98. package/dist/app/lib/routing/components/ClientOnly.js +14 -0
  99. package/dist/app/lib/routing/components/Link.d.ts +26 -0
  100. package/dist/app/lib/routing/components/Link.js +93 -0
  101. package/dist/app/lib/routing/components/RouteRenderer.d.ts +9 -0
  102. package/dist/app/lib/routing/components/RouteRenderer.js +28 -0
  103. package/dist/app/lib/routing/components/SSRRouter.d.ts +9 -0
  104. package/dist/app/lib/routing/components/SSRRouter.js +14 -0
  105. package/dist/app/lib/routing/components/ScrollRestoration.d.ts +15 -0
  106. package/dist/app/lib/routing/components/ScrollRestoration.js +32 -0
  107. package/dist/app/lib/routing/context.d.ts +5 -0
  108. package/dist/app/lib/routing/context.js +129 -0
  109. package/dist/app/lib/routing/hooks/useIsSSR.d.ts +8 -0
  110. package/dist/app/lib/routing/hooks/useIsSSR.js +22 -0
  111. package/dist/app/lib/routing/hooks/useRestorableState.d.ts +5 -0
  112. package/dist/app/lib/routing/hooks/useRestorableState.js +17 -0
  113. package/dist/app/lib/routing/hooks/useRoute.d.ts +2 -0
  114. package/dist/app/lib/routing/hooks/useRoute.js +5 -0
  115. package/dist/app/lib/routing/hooks/useRouteTransition.d.ts +4 -0
  116. package/dist/app/lib/routing/hooks/useRouteTransition.js +12 -0
  117. package/dist/app/lib/routing/hooks/useRouter.d.ts +2 -0
  118. package/dist/app/lib/routing/hooks/useRouter.js +11 -0
  119. package/dist/app/lib/routing/hooks/useRouterEvents.d.ts +2 -0
  120. package/dist/app/lib/routing/hooks/useRouterEvents.js +10 -0
  121. package/dist/app/lib/routing/hooks/useRouterState.d.ts +2 -0
  122. package/dist/app/lib/routing/hooks/useRouterState.js +8 -0
  123. package/dist/app/lib/routing/hooks/useSearchParams.d.ts +10 -0
  124. package/dist/app/lib/routing/hooks/useSearchParams.js +30 -0
  125. package/dist/app/lib/routing/index.d.ts +13 -0
  126. package/dist/app/lib/routing/index.js +13 -0
  127. package/dist/app/lib/routing/loader.d.ts +30 -0
  128. package/dist/app/lib/routing/loader.js +106 -0
  129. package/dist/app/lib/routing/types.d.ts +138 -0
  130. package/dist/app/lib/routing/utils.d.ts +15 -0
  131. package/dist/app/lib/routing/utils.js +94 -0
  132. package/dist/app/lib/views/defineView.d.ts +4 -0
  133. package/dist/app/lib/views/defineView.js +3 -0
  134. package/dist/app/lib/views/index.js +1 -0
  135. package/dist/app/server/create-api-builtin-hono.d.ts +8 -0
  136. package/dist/app/server/create-api-builtin-hono.js +80 -0
  137. package/dist/app/server/create-ssr-hono.d.ts +18 -0
  138. package/dist/app/server/create-ssr-hono.js +104 -0
  139. package/dist/app/server/utils/headers.d.ts +4 -0
  140. package/dist/app/server/utils/headers.js +11 -0
  141. package/dist/app/server/utils/index.html.d.ts +2 -0
  142. package/dist/app/server/utils/index.html.js +14 -0
  143. package/dist/app/server/utils/replace-host.d.ts +8 -0
  144. package/dist/app/server/utils/replace-host.js +14 -0
  145. package/dist/app/utils/query-client.d.ts +2 -0
  146. package/dist/app/utils/query-client.js +16 -0
  147. package/dist/app/utils/wp.d.ts +26 -0
  148. package/dist/node/cli/cli-mode.d.ts +10 -0
  149. package/dist/node/cli/cli-mode.js +12 -0
  150. package/dist/node/cli/cli-worker.d.ts +13 -0
  151. package/dist/node/cli/cli-worker.js +114 -0
  152. package/dist/node/cli/cli.js +166 -0
  153. package/dist/node/cli/display/CLIApp.d.ts +16 -0
  154. package/dist/node/cli/display/CLIApp.js +117 -0
  155. package/dist/node/cli/display/boot-cli-app.d.ts +2 -0
  156. package/dist/node/cli/display/boot-cli-app.js +10 -0
  157. package/{cli → dist/node/cli}/display/components/Fullscreen.d.ts +1 -1
  158. package/dist/node/cli/display/components/Fullscreen.js +24 -0
  159. package/dist/node/cli/display/components/LogEntries.d.ts +13 -0
  160. package/dist/node/cli/display/components/LogEntries.js +87 -0
  161. package/dist/node/cli/display/components/MenuItem.d.ts +6 -0
  162. package/dist/node/cli/display/components/MenuItem.js +11 -0
  163. package/dist/node/cli/display/components/TextInput.d.ts +44 -0
  164. package/dist/node/cli/display/components/TextInput.js +105 -0
  165. package/dist/node/cli/display/hooks/useManifest.d.ts +2 -0
  166. package/dist/node/cli/display/hooks/useManifest.js +8 -0
  167. package/dist/node/cli/display/hooks/useStatefulLog.d.ts +11 -0
  168. package/dist/node/cli/display/hooks/useStatefulLog.js +51 -0
  169. package/dist/node/cli/display/tools/BlockList.d.ts +2 -0
  170. package/dist/node/cli/display/tools/BlockList.js +10 -0
  171. package/dist/node/cli/display/tools/CreateBlock.d.ts +2 -0
  172. package/dist/node/cli/display/tools/CreateBlock.js +8 -0
  173. package/dist/node/cli/display/tools/cli-tool-list.d.ts +2 -0
  174. package/dist/node/cli/display/tools/cli-tool-list.js +23 -0
  175. package/dist/node/cli/display/tools/cli-tools.d.ts +26 -0
  176. package/dist/node/cli/display/tools/cli-tools.js +15 -0
  177. package/dist/node/cli/display/util/colors.d.ts +4 -0
  178. package/dist/node/cli/display/util/colors.js +63 -0
  179. package/dist/node/cli/version.d.ts +1 -0
  180. package/dist/node/cli/version.js +1 -0
  181. package/dist/node/compiler/bundler.admin.d.ts +13 -0
  182. package/dist/node/compiler/bundler.admin.js +37 -0
  183. package/dist/node/compiler/bundler.frontend.d.ts +13 -0
  184. package/dist/node/compiler/bundler.frontend.js +37 -0
  185. package/dist/node/compiler/index.html.d.ts +2 -0
  186. package/dist/node/compiler/index.html.js +15 -0
  187. package/dist/node/compiler/serverless.dev.d.ts +16 -0
  188. package/dist/node/compiler/serverless.dev.js +215 -0
  189. package/dist/node/compiler/vite/get-vite-config.d.ts +13 -0
  190. package/dist/node/compiler/vite/get-vite-config.js +315 -0
  191. package/dist/node/compiler/vite/plugin-admin.d.ts +4 -0
  192. package/dist/node/compiler/vite/plugin-admin.js +67 -0
  193. package/dist/node/compiler/vite/plugin-blocks.d.ts +4 -0
  194. package/dist/node/compiler/vite/plugin-blocks.js +73 -0
  195. package/dist/node/compiler/vite/plugin-entry.d.ts +6 -0
  196. package/dist/node/compiler/vite/plugin-entry.js +16 -0
  197. package/dist/node/compiler/vite/plugin-resolved-tailwind.d.ts +4 -0
  198. package/dist/node/compiler/vite/plugin-resolved-tailwind.js +29 -0
  199. package/dist/node/compiler/vite/plugin-theme.d.ts +4 -0
  200. package/dist/node/compiler/vite/plugin-theme.js +40 -0
  201. package/dist/node/compiler/vite/plugin-views.d.ts +4 -0
  202. package/dist/node/compiler/vite/plugin-views.js +51 -0
  203. package/dist/node/graphql/graphql-codegen.d.ts +30 -0
  204. package/dist/node/graphql/graphql-codegen.js +503 -0
  205. package/dist/node/graphql/graphql-schema-loader.d.ts +17 -0
  206. package/dist/node/graphql/graphql-schema-loader.js +94 -0
  207. package/dist/node/graphql/plugins/gql-plugin-files.d.ts +14 -0
  208. package/dist/node/graphql/plugins/gql-plugin-files.js +66 -0
  209. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.d.ts +8 -0
  210. package/dist/node/graphql/plugins/gql-plugin-no-duplicates.js +10 -0
  211. package/dist/node/graphql/plugins/gql-plugin-queries.d.ts +8 -0
  212. package/dist/node/graphql/plugins/gql-plugin-queries.js +263 -0
  213. package/dist/node/graphql/query-files-loader.d.ts +26 -0
  214. package/dist/node/graphql/query-files-loader.js +54 -0
  215. package/dist/node/graphql/wp-info-query.d.ts +1 -0
  216. package/dist/node/graphql/wp-info-query.js +29 -0
  217. package/{config/config-schema.d.ts → dist/node/project/config.d.ts} +54 -38
  218. package/dist/node/project/config.js +138 -0
  219. package/dist/node/project/eddev-build-file.d.ts +10 -0
  220. package/dist/node/project/eddev-build-file.js +79 -0
  221. package/dist/node/project/env.d.ts +39 -0
  222. package/dist/node/project/env.js +77 -0
  223. package/dist/node/project/favicons.d.ts +0 -0
  224. package/dist/node/project/favicons.js +1 -0
  225. package/dist/node/project/manifest/block-manifest.d.ts +19 -0
  226. package/dist/node/project/manifest/block-manifest.js +206 -0
  227. package/dist/node/project/manifest/field-manifest.d.ts +17 -0
  228. package/dist/node/project/manifest/field-manifest.js +42 -0
  229. package/dist/node/project/manifest/manifest.d.ts +30 -0
  230. package/dist/node/project/manifest/manifest.js +105 -0
  231. package/dist/node/project/manifest/view-manifest.d.ts +19 -0
  232. package/dist/node/project/manifest/view-manifest.js +152 -0
  233. package/dist/node/project/manifest/widget-manifest.d.ts +17 -0
  234. package/dist/node/project/manifest/widget-manifest.js +42 -0
  235. package/dist/node/project/project.d.ts +57 -0
  236. package/dist/node/project/project.js +115 -0
  237. package/dist/node/project/wp-info.d.ts +32 -0
  238. package/dist/node/project/wp-info.js +34 -0
  239. package/dist/node/types/block-type.d.ts +92 -0
  240. package/dist/node/types/block-type.js +82 -0
  241. package/dist/node/types/view-type.d.ts +31 -0
  242. package/dist/node/types/view-type.js +54 -0
  243. package/dist/node/utils/console.d.ts +21 -0
  244. package/dist/node/utils/console.js +28 -0
  245. package/dist/node/utils/export-extractor.d.ts +9 -0
  246. package/dist/node/utils/export-extractor.js +71 -0
  247. package/dist/node/utils/formatZodError.d.ts +3 -0
  248. package/dist/node/utils/formatZodError.js +33 -0
  249. package/dist/node/utils/fs.d.ts +106 -0
  250. package/dist/node/utils/fs.js +56 -0
  251. package/dist/node/utils/getRepoInfo.d.ts +7 -0
  252. package/dist/node/utils/getRepoInfo.js +21 -0
  253. package/dist/node/utils/helpers.d.ts +2 -0
  254. package/dist/node/utils/helpers.js +14 -0
  255. package/dist/node/utils/highlightCode.d.ts +10 -0
  256. package/dist/node/utils/highlightCode.js +30 -0
  257. package/dist/node/utils/isDeploying.d.ts +4 -0
  258. package/dist/node/utils/isDeploying.js +6 -0
  259. package/dist/node/utils/report-builder.d.ts +9 -0
  260. package/dist/node/utils/report-builder.js +51 -0
  261. package/dist/node/utils/selfSignedCert.d.ts +4 -0
  262. package/dist/node/utils/selfSignedCert.js +35 -0
  263. package/dist/node/utils/statefulLog.d.ts +65 -0
  264. package/dist/node/utils/statefulLog.js +223 -0
  265. package/dist/node/utils/unsafe-fetch.d.ts +2 -0
  266. package/dist/node/utils/unsafe-fetch.js +19 -0
  267. package/dist/node/utils/watchFileTree.d.ts +11 -0
  268. package/dist/node/utils/watchFileTree.js +58 -0
  269. package/package.json +123 -102
  270. package/stitches-archive/config.d.ts +210 -0
  271. package/stitches-archive/css-util.d.ts +119 -0
  272. package/stitches-archive/css.d.ts +9797 -0
  273. package/stitches-archive/index.d.mts +144 -0
  274. package/stitches-archive/index.d.ts +82 -0
  275. package/stitches-archive/index.mjs +2 -0
  276. package/stitches-archive/stitches.d.ts +288 -0
  277. package/stitches-archive/styled-component.d.ts +163 -0
  278. package/stitches-archive/theme.d.ts +43 -0
  279. package/stitches-archive/util.d.ts +32 -0
  280. package/tsconfig.app.json +20 -0
  281. package/tsconfig.json +2 -104
  282. package/tsconfig.node.json +20 -0
  283. package/tsup.config.ts +40 -0
  284. package/types.app.d.ts +22 -0
  285. package/types.app.internal.d.ts +13 -0
  286. package/types.env.d.ts +16 -0
  287. package/types.manifests.d.ts +22 -0
  288. package/types.meta.d.ts +319 -0
  289. package/types.node.d.ts +3 -0
  290. package/admin/components/FileWell.d.ts +0 -8
  291. package/admin/components/FileWell.js +0 -189
  292. package/admin/components/ImageWell.d.ts +0 -9
  293. package/admin/components/ImageWell.js +0 -209
  294. package/admin/defineField.js +0 -7
  295. package/admin/defineWidget.js +0 -10
  296. package/admin/index.d.ts +0 -4
  297. package/admin/index.js +0 -16
  298. package/admin/installFieldTypes.js +0 -71
  299. package/admin/runWidgets.js +0 -55
  300. package/admin/selectMedia.d.ts +0 -31
  301. package/admin/selectMedia.js +0 -9
  302. package/blocks/ContentBlocks.d.ts +0 -40
  303. package/blocks/ContentBlocks.js +0 -125
  304. package/blocks/ErrorBoundaryEditor.js +0 -64
  305. package/blocks/ErrorBoundaryFrontend.js +0 -69
  306. package/blocks/InspectorControls.d.ts +0 -2
  307. package/blocks/InspectorControls.js +0 -13
  308. package/blocks/blockAttributes.d.ts +0 -20
  309. package/blocks/blockAttributes.js +0 -81
  310. package/blocks/defineBlock.d.ts +0 -2
  311. package/blocks/defineBlock.js +0 -7
  312. package/blocks/index.d.ts +0 -5
  313. package/blocks/index.js +0 -23
  314. package/blocks/inlineEditing.d.ts +0 -32
  315. package/blocks/inlineEditing.js +0 -141
  316. package/blocks/installGutenbergHooks.d.ts +0 -2
  317. package/blocks/installGutenbergHooks.js +0 -211
  318. package/build/babel/plugin-name-defined-components.d.ts +0 -7
  319. package/build/babel/plugin-name-defined-components.js +0 -47
  320. package/build/build-favicon.d.ts +0 -1
  321. package/build/build-favicon.js +0 -71
  322. package/build/clean.d.ts +0 -1
  323. package/build/clean.js +0 -60
  324. package/build/create-codegen-worker.d.ts +0 -3
  325. package/build/create-codegen-worker.js +0 -71
  326. package/build/create-serverless-dev-worker.d.ts +0 -3
  327. package/build/create-serverless-dev-worker.js +0 -99
  328. package/build/create-webpack-worker.d.ts +0 -3
  329. package/build/create-webpack-worker.js +0 -64
  330. package/build/file-tree.d.ts +0 -5
  331. package/build/file-tree.js +0 -45
  332. package/build/get-webpack-config.d.ts +0 -3
  333. package/build/get-webpack-config.js +0 -426
  334. package/build/graphql-codegen/graphql-codegen-blocks.d.ts +0 -1
  335. package/build/graphql-codegen/graphql-codegen-blocks.js +0 -7
  336. package/build/graphql-codegen/graphql-codegen-files.js +0 -64
  337. package/build/graphql-codegen/graphql-codegen-no-duplicates.js +0 -13
  338. package/build/graphql-codegen/graphql-codegen-queries.d.ts +0 -1
  339. package/build/graphql-codegen/graphql-codegen-queries.js +0 -248
  340. package/build/manifests/manifest-blocks.d.ts +0 -12
  341. package/build/manifests/manifest-blocks.js +0 -61
  342. package/build/manifests/manifest-fields.d.ts +0 -12
  343. package/build/manifests/manifest-fields.js +0 -42
  344. package/build/manifests/manifest-views.d.ts +0 -12
  345. package/build/manifests/manifest-views.js +0 -49
  346. package/build/manifests/manifest-widgets.d.ts +0 -12
  347. package/build/manifests/manifest-widgets.js +0 -42
  348. package/build/manifests/manifest.d.ts +0 -11
  349. package/build/manifests/manifest.js +0 -100
  350. package/build/reporter.d.ts +0 -12
  351. package/build/reporter.js +0 -102
  352. package/build/serverless/create-next-app.d.ts +0 -9
  353. package/build/serverless/create-next-app.js +0 -536
  354. package/build/state/codegen-state.d.ts +0 -32
  355. package/build/state/codegen-state.js +0 -2
  356. package/build/state/compiler-state.d.ts +0 -49
  357. package/build/state/compiler-state.js +0 -2
  358. package/build/state/serverless-state.d.ts +0 -26
  359. package/build/state/serverless-state.js +0 -2
  360. package/build/workers/codegen-worker-script.d.ts +0 -2
  361. package/build/workers/codegen-worker-script.js +0 -624
  362. package/build/workers/serverless-worker-dev-script.d.ts +0 -1
  363. package/build/workers/serverless-worker-dev-script.js +0 -21
  364. package/build/workers/webpack-worker-script.d.ts +0 -2
  365. package/build/workers/webpack-worker-script.js +0 -171
  366. package/cli/build.dev.d.ts +0 -7
  367. package/cli/build.dev.js +0 -136
  368. package/cli/build.prod.d.ts +0 -5
  369. package/cli/build.prod.js +0 -107
  370. package/cli/cli.js +0 -90
  371. package/cli/display/components/BundleDisplay.d.ts +0 -5
  372. package/cli/display/components/BundleDisplay.js +0 -56
  373. package/cli/display/components/CodegenDisplay.d.ts +0 -5
  374. package/cli/display/components/CodegenDisplay.js +0 -62
  375. package/cli/display/components/DevCLIDisplay.d.ts +0 -12
  376. package/cli/display/components/DevCLIDisplay.js +0 -42
  377. package/cli/display/components/Fullscreen.js +0 -39
  378. package/cli/display/components/ServerlessDisplay.d.ts +0 -8
  379. package/cli/display/components/ServerlessDisplay.js +0 -68
  380. package/cli/display/components/StatusIcon.d.ts +0 -5
  381. package/cli/display/components/StatusIcon.js +0 -9
  382. package/cli/preinstall.d.ts +0 -1
  383. package/cli/preinstall.js +0 -19
  384. package/cli/setup.d.ts +0 -1
  385. package/cli/setup.js +0 -90
  386. package/components/AdminBar.d.ts +0 -1
  387. package/components/AdminBar.js +0 -9
  388. package/components/BrowserRouter.js +0 -155
  389. package/components/InlinePage.d.ts +0 -11
  390. package/components/InlinePage.js +0 -70
  391. package/components/NextRouter.d.ts +0 -9
  392. package/components/NextRouter.js +0 -45
  393. package/components/index.d.ts +0 -2
  394. package/components/index.js +0 -14
  395. package/config/config-schema.js +0 -38
  396. package/config/create-schema-file.d.ts +0 -1
  397. package/config/create-schema-file.js +0 -20
  398. package/config/get-config.d.ts +0 -78
  399. package/config/get-config.js +0 -32
  400. package/config/index.d.ts +0 -2
  401. package/config/index.js +0 -14
  402. package/config/parse-config.d.ts +0 -51
  403. package/config/parse-config.js +0 -8
  404. package/config/print-zod-errors.d.ts +0 -2
  405. package/config/print-zod-errors.js +0 -14
  406. package/dev-ui/components/BreakpointColumnHeader.d.ts +0 -10
  407. package/dev-ui/components/BreakpointColumnHeader.js +0 -47
  408. package/dev-ui/components/BreakpointIndicator.js +0 -139
  409. package/dev-ui/components/DevUI.js +0 -28
  410. package/dev-ui/components/Launcher.d.ts +0 -98
  411. package/dev-ui/components/Launcher.js +0 -94
  412. package/dev-ui/components/PanelWrapper.d.ts +0 -8
  413. package/dev-ui/components/PanelWrapper.js +0 -37
  414. package/dev-ui/components/ResponsiveLerpControl.d.ts +0 -7
  415. package/dev-ui/components/ResponsiveLerpControl.js +0 -176
  416. package/dev-ui/components/ResponsiveScaleEditor.d.ts +0 -25
  417. package/dev-ui/components/ResponsiveScaleEditor.js +0 -238
  418. package/dev-ui/components/atoms/Button.d.ts +0 -47
  419. package/dev-ui/components/atoms/Button.js +0 -67
  420. package/dev-ui/components/atoms/Dropdown.d.ts +0 -13
  421. package/dev-ui/components/atoms/Dropdown.js +0 -50
  422. package/dev-ui/components/atoms/NumberField.d.ts +0 -11
  423. package/dev-ui/components/atoms/NumberField.js +0 -111
  424. package/dev-ui/components/atoms/Spacer.d.ts +0 -42
  425. package/dev-ui/components/atoms/Spacer.js +0 -8
  426. package/dev-ui/components/atoms/Text.d.ts +0 -45
  427. package/dev-ui/components/atoms/Text.js +0 -39
  428. package/dev-ui/components/atoms/ToggleButton.d.ts +0 -8
  429. package/dev-ui/components/atoms/ToggleButton.js +0 -41
  430. package/dev-ui/components/atoms/Tooltip.d.ts +0 -9
  431. package/dev-ui/components/atoms/Tooltip.js +0 -66
  432. package/dev-ui/components/panels/AppDataDebugger.d.ts +0 -1
  433. package/dev-ui/components/panels/AppDataDebugger.js +0 -29
  434. package/dev-ui/components/panels/ColorEditor.d.ts +0 -1
  435. package/dev-ui/components/panels/ColorEditor.js +0 -128
  436. package/dev-ui/components/panels/PageDataDebugger.d.ts +0 -1
  437. package/dev-ui/components/panels/PageDataDebugger.js +0 -30
  438. package/dev-ui/components/panels/QueryDebugger.d.ts +0 -1
  439. package/dev-ui/components/panels/QueryDebugger.js +0 -46
  440. package/dev-ui/components/panels/SpacingEditor.d.ts +0 -1
  441. package/dev-ui/components/panels/SpacingEditor.js +0 -88
  442. package/dev-ui/components/panels/TypographyEditor.d.ts +0 -1
  443. package/dev-ui/components/panels/TypographyEditor.js +0 -97
  444. package/dev-ui/hooks/useBreakpoint.d.ts +0 -11
  445. package/dev-ui/hooks/useBreakpoint.js +0 -59
  446. package/dev-ui/hooks/usePersistState.js +0 -36
  447. package/dev-ui/hooks/useStylesheet.d.ts +0 -4
  448. package/dev-ui/hooks/useStylesheet.js +0 -31
  449. package/dev-ui/icons.d.ts +0 -15
  450. package/dev-ui/icons.js +0 -30
  451. package/dev-ui/index.d.ts +0 -1
  452. package/dev-ui/index.js +0 -13
  453. package/dev-ui/loader.js +0 -44
  454. package/dev-ui/panels.d.ts +0 -11
  455. package/dev-ui/panels.js +0 -47
  456. package/dev-ui/theme.d.ts +0 -151
  457. package/dev-ui/theme.js +0 -50
  458. package/dynamic/dynamic-component.d.ts +0 -10
  459. package/dynamic/dynamic-component.js +0 -8
  460. package/dynamic/index.d.ts +0 -1
  461. package/dynamic/index.js +0 -13
  462. package/entry/Root.d.ts +0 -3
  463. package/entry/Root.js +0 -56
  464. package/entry/entry.admin.dev.d.ts +0 -1
  465. package/entry/entry.admin.dev.js +0 -26
  466. package/entry/entry.admin.prod.d.ts +0 -1
  467. package/entry/entry.admin.prod.js +0 -16
  468. package/entry/entry.monolith.dev.d.ts +0 -6
  469. package/entry/entry.monolith.dev.js +0 -19
  470. package/entry/entry.monolith.prod.d.ts +0 -6
  471. package/entry/entry.monolith.prod.js +0 -18
  472. package/entry/entry.publicPath.js +0 -6
  473. package/gravityforms/index.d.ts +0 -2
  474. package/gravityforms/index.js +0 -14
  475. package/gravityforms/types.d.ts +0 -140
  476. package/gravityforms/types.js +0 -2
  477. package/gravityforms/useGravityForm.d.ts +0 -30
  478. package/gravityforms/useGravityForm.js +0 -292
  479. package/hooks/index.js +0 -15
  480. package/hooks/queryUtils.d.ts +0 -63
  481. package/hooks/queryUtils.js +0 -281
  482. package/hooks/useAppData.d.ts +0 -10
  483. package/hooks/useAppData.js +0 -37
  484. package/hooks/usePageLoad.js +0 -11
  485. package/hooks/useQuery.d.ts +0 -1
  486. package/hooks/useQuery.js +0 -10
  487. package/hooks/useQueryDebug.js +0 -21
  488. package/hooks/useRPC.d.ts +0 -12
  489. package/hooks/useRPC.js +0 -20
  490. package/index.d.ts +0 -1
  491. package/index.js +0 -5
  492. package/routing/index.d.ts +0 -1
  493. package/routing/index.js +0 -13
  494. package/routing/remoteProps.d.ts +0 -22
  495. package/routing/remoteProps.js +0 -103
  496. package/routing/routing.d.ts +0 -96
  497. package/routing/routing.js +0 -442
  498. package/routing/updateEditLink.d.ts +0 -1
  499. package/routing/updateEditLink.js +0 -12
  500. package/routing/updateHeadTags.d.ts +0 -2
  501. package/routing/updateHeadTags.js +0 -11
  502. package/serverless/define-api.d.ts +0 -2
  503. package/serverless/define-api.js +0 -66
  504. package/serverless/define-rpc-router.d.ts +0 -6
  505. package/serverless/define-rpc-router.js +0 -35
  506. package/serverless/error-codes.d.ts +0 -2
  507. package/serverless/error-codes.js +0 -14
  508. package/serverless/index.d.ts +0 -5
  509. package/serverless/index.js +0 -18
  510. package/serverless/rpc-provider.d.ts +0 -1
  511. package/serverless/rpc-provider.js +0 -5
  512. package/serverless-template/README.md +0 -34
  513. package/serverless-template/_utils/PageMeta.tsx +0 -44
  514. package/serverless-template/_utils/ed-config.ts +0 -5
  515. package/serverless-template/_utils/fetch-wordpress-props.ts +0 -62
  516. package/serverless-template/_utils/fetch-wp.ts +0 -34
  517. package/serverless-template/_utils/swr.ts +0 -43
  518. package/serverless-template/global.d.ts +0 -15
  519. package/serverless-template/next-env.d.ts +0 -3
  520. package/serverless-template/next.config.js +0 -119
  521. package/serverless-template/null.ts +0 -1
  522. package/serverless-template/package.json +0 -21
  523. package/serverless-template/pages/404.tsx +0 -12
  524. package/serverless-template/pages/[...slug].tsx +0 -35
  525. package/serverless-template/pages/_app.tsx +0 -55
  526. package/serverless-template/pages/_document.tsx +0 -65
  527. package/serverless-template/pages/api/rest/[...method].ts +0 -54
  528. package/serverless-template/pages/api/robots.ts +0 -49
  529. package/serverless-template/pages/api/sitemap/[...sitemap].ts +0 -56
  530. package/serverless-template/pages/api/trpc/[...trpc].ts +0 -41
  531. package/serverless-template/pages/index.tsx +0 -15
  532. package/serverless-template/tsconfig.json +0 -39
  533. package/style/createStitches.d.ts +0 -1058
  534. package/style/createStitches.js +0 -443
  535. package/style/index.js +0 -13
  536. package/utils/Observable.d.ts +0 -11
  537. package/utils/Observable.js +0 -34
  538. package/utils/getRepoName.d.ts +0 -4
  539. package/utils/getRepoName.js +0 -30
  540. package/utils/merge-refs.d.ts +0 -2
  541. package/utils/merge-refs.js +0 -17
  542. package/utils/promptIfRepoNameIncorrect.d.ts +0 -1
  543. package/utils/promptIfRepoNameIncorrect.js +0 -72
  544. package/utils/refreshOverlayInterop.d.ts +0 -4
  545. package/utils/refreshOverlayInterop.js +0 -12
  546. package/utils/reportErrorStack.d.ts +0 -7
  547. package/utils/reportErrorStack.js +0 -13
  548. package/utils/serverlessAppContext.d.ts +0 -3
  549. package/utils/serverlessAppContext.js +0 -6
  550. package/utils/updateEnvFile.d.ts +0 -1
  551. package/utils/updateEnvFile.js +0 -76
  552. package/utils/useObservable.d.ts +0 -2
  553. package/utils/useObservable.js +0 -12
  554. package/views/defineView.d.ts +0 -2
  555. package/views/defineView.js +0 -7
  556. package/views/index.js +0 -13
  557. /package/{admin → dist/app/lib/admin}/installFieldTypes.d.ts +0 -0
  558. /package/{admin → dist/app/lib/admin}/runWidgets.d.ts +0 -0
  559. /package/{dev-ui → dist/app/lib/devtools}/components/BreakpointIndicator.d.ts +0 -0
  560. /package/{dev-ui → dist/app/lib/devtools}/hooks/usePersistState.d.ts +0 -0
  561. /package/{entry/entry.publicPath.d.ts → dist/app/lib/devtools/index.d.ts} +0 -0
  562. /package/{dev-ui → dist/app/lib/devtools}/loader.d.ts +0 -0
  563. /package/{style → dist/app/lib/legacy-stitches}/index.d.ts +0 -0
  564. /package/{build/graphql-codegen/graphql-codegen-files.d.ts → dist/app/lib/routing/types.js} +0 -0
  565. /package/{views → dist/app/lib/views}/index.d.ts +0 -0
  566. /package/{build/graphql-codegen/graphql-codegen-no-duplicates.d.ts → dist/app/utils/wp.js} +0 -0
  567. /package/{cli → dist/node/cli}/cli.d.ts +0 -0
@@ -0,0 +1,191 @@
1
+ import { proxy } from "valtio";
2
+ import { resolveAcfBlockName, transformBlockTemplate } from "./block-templates";
3
+ export const editorConfigStore = proxy({
4
+ config: null,
5
+ currentBlocksConfig: null,
6
+ });
7
+ export function configureEditorBlocks(config) {
8
+ const wp = window.wp;
9
+ let hideStyles = document.getElementById("title-hider");
10
+ hideStyles?.remove();
11
+ if (config.hideTitle) {
12
+ hideStyles = document.createElement("style");
13
+ hideStyles.id = "title-hider";
14
+ hideStyles.innerHTML = `
15
+ .edit-post-visual-editor__post-title-wrapper {
16
+ display: none !important;
17
+ }
18
+ `;
19
+ document.head.appendChild(hideStyles);
20
+ }
21
+ if (config.template) {
22
+ setTemplate(config.template);
23
+ if (config.headerTemplate || config.footerTemplate) {
24
+ console.error("You cannot use both a template and header/footer templates at the same time.");
25
+ return;
26
+ }
27
+ }
28
+ const currentBlocks = wp.data.select("core/block-editor").getBlocks();
29
+ const templateBlocks = currentBlocks.filter((block) => block.attributes.isFromTemplate);
30
+ let blocks = currentBlocks.filter((block) => !block.attributes.isFromTemplate);
31
+ let header = config.headerTemplate ? syncBlocks(transformTemplateToBlocks(config.headerTemplate)) : [];
32
+ let footer = config.footerTemplate ? syncBlocks(transformTemplateToBlocks(config.footerTemplate)) : [];
33
+ if (!blocks.length && config.defaultBlocks) {
34
+ blocks = transformTemplateToBlocks(config.defaultBlocks, false);
35
+ }
36
+ let newBlocks = [...header, ...blocks, ...footer];
37
+ // console.log("Configuring", newBlocks)
38
+ wp.data.dispatch("core/block-editor").resetBlocks(newBlocks);
39
+ function syncBlocks(blocks) {
40
+ return blocks.map((block) => {
41
+ const matched = templateBlocks.find((templateBlock) => templateBlock.name === block.name);
42
+ templateBlocks.splice(templateBlocks.indexOf(matched), 1);
43
+ if (matched) {
44
+ matched.attributes.lock = block.attributes.lock;
45
+ return matched;
46
+ }
47
+ return block;
48
+ });
49
+ }
50
+ }
51
+ export function transformTemplateToBlocks(template, locked = true) {
52
+ return template.map(([name, props, children]) => {
53
+ const attributes = {
54
+ data: {},
55
+ inline: {},
56
+ isFromTemplate: true,
57
+ lock: undefined,
58
+ };
59
+ if (props.locked === false) {
60
+ attributes.lock = { move: false, remove: false };
61
+ }
62
+ else if (locked || props.locked === true || props.locked === "all") {
63
+ attributes.lock = { move: true, remove: true };
64
+ }
65
+ else {
66
+ attributes.lock = props.lock;
67
+ }
68
+ Object.assign(attributes, props);
69
+ return {
70
+ clientId: "block-" + Math.random().toString(36),
71
+ name: resolveAcfBlockName(name),
72
+ attributes: attributes,
73
+ innerBlocks: children ? transformTemplateToBlocks(children, false) : [],
74
+ isValid: true,
75
+ validationIssues: [],
76
+ };
77
+ });
78
+ }
79
+ /**
80
+ * This call should be placed in blocks/_editor.tsx
81
+ */
82
+ export function defineEditorConfig(config) {
83
+ const wp = window.wp;
84
+ editorConfigStore.config = config;
85
+ if (!wp?.blockEditor)
86
+ return;
87
+ updateTemplateConfig();
88
+ }
89
+ export function getEditingPostInfo() {
90
+ const post = wp.data.select("core/editor").getCurrentPost();
91
+ const edits = wp.data.select("core/editor").getPostEdits();
92
+ const postInfo = {
93
+ ...post,
94
+ ...edits,
95
+ };
96
+ if (!postInfo.template)
97
+ postInfo.template = "default";
98
+ postInfo.template = postInfo.template.replace(/(^views\/|\.tsx?$)/g, "");
99
+ return postInfo;
100
+ }
101
+ export function updateTemplateConfig() {
102
+ const wp = window.wp;
103
+ const postInfo = getEditingPostInfo();
104
+ const editorConfig = editorConfigStore.config;
105
+ if (!editorConfig)
106
+ return;
107
+ const matched = editorConfig.matchers.find((matcher) => {
108
+ return matcher.match(postInfo);
109
+ });
110
+ if (matched) {
111
+ const config = typeof matched.config === "function" ? matched.config(postInfo) : matched.config;
112
+ editorConfigStore.currentBlocksConfig = config;
113
+ configureEditorBlocks(config);
114
+ }
115
+ else {
116
+ editorConfigStore.currentBlocksConfig = {};
117
+ configureEditorBlocks({});
118
+ }
119
+ }
120
+ export function watchEditorTemplate() {
121
+ let lastTemplate = "unknown";
122
+ wp.data.subscribe(() => {
123
+ setTimeout(() => {
124
+ const post = wp.data.select("core/editor").getCurrentPost();
125
+ let template = wp.data.select("core/editor").getPostEdits()?.template ?? post?.template ?? "";
126
+ if (template !== lastTemplate) {
127
+ lastTemplate = template;
128
+ updateTemplateConfig();
129
+ }
130
+ }, 10);
131
+ });
132
+ }
133
+ function setWrapperBlock(blockName, blocks) {
134
+ const wp = window.wp;
135
+ const dispatch = wp.data.dispatch("core/block-editor");
136
+ const blockWrapperName = blockName ? resolveAcfBlockName(blockName) : null;
137
+ const untemplatedBlocks = blocks.flatMap((block) => {
138
+ if (block.name === blockWrapperName || block.attributes.isFromTemplate) {
139
+ return block.innerBlocks.filter((innerBlock) => !innerBlock.attributes.isFromTemplate);
140
+ }
141
+ return block;
142
+ });
143
+ let newBlocks = [...untemplatedBlocks];
144
+ if (blockName) {
145
+ const rootId = "block-" + Math.random().toString(36);
146
+ const parent = {
147
+ clientId: rootId,
148
+ name: blockWrapperName,
149
+ validationIssues: [],
150
+ isValid: true,
151
+ attributes: { data: {}, inline: {}, isFromTemplate: true, lock: { move: true, remove: true } },
152
+ innerBlocks: [
153
+ {
154
+ clientId: rootId + "-inner",
155
+ name: "core/group",
156
+ validationIssues: [],
157
+ isValid: true,
158
+ attributes: { data: {}, inline: {}, isFromTemplate: true, lock: { move: true, remove: true } },
159
+ innerBlocks: untemplatedBlocks,
160
+ },
161
+ ],
162
+ };
163
+ wp.data.dispatch("core/block-editor").resetBlocks([parent]);
164
+ wp.data.dispatch("core/block-editor").updateSettings({
165
+ templateLock: "contentOnly",
166
+ });
167
+ wp.data.dispatch("core/block-editor").setBlockEditingMode(rootId, "disabled");
168
+ wp.data.dispatch("core/block-editor").setBlockEditingMode(rootId + "-inner", "default");
169
+ }
170
+ else {
171
+ wp.data.dispatch("core/block-editor").resetBlocks(newBlocks);
172
+ }
173
+ // wp.data.dispatch('core/block-editor').setBlockEditingMode(wp.data.select('core/block-editor').getBlocks()[0].clientId, '')
174
+ }
175
+ function setTemplate(template) {
176
+ const wp = window.wp;
177
+ // console.log("Setting template", template)
178
+ let currentBlocks = wp.data.select("core/block-editor").getBlocks();
179
+ wp.data.dispatch("core/block-editor").updateSettings({
180
+ templateLock: "all",
181
+ template: transformBlockTemplate(template),
182
+ });
183
+ if (currentBlocks?.length === 0) {
184
+ setTimeout(() => {
185
+ wp.data.dispatch("core/block-editor").resetBlocks(transformTemplateToBlocks(template));
186
+ wp.data.dispatch("core/block-editor").setTemplateValidity(true);
187
+ }, 1);
188
+ return;
189
+ }
190
+ wp.data.dispatch("core/block-editor").validateBlocksToTemplate(currentBlocks);
191
+ }
@@ -0,0 +1,2 @@
1
+ export declare function whenEditorIsReady(): Promise<void>;
2
+ export declare function installEDGutenbergHooks(): void;
@@ -0,0 +1,131 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect } from "react";
3
+ import { InlineEditingContextProvider } from "../inline-editing";
4
+ import { BlockContext, EditableBlock } from "./EditorSupport";
5
+ import { blocksByTag } from "./blocks-by-tag";
6
+ import { editorConfigStore, getEditingPostInfo, watchEditorTemplate } from "./editor-config";
7
+ import { useSnapshot } from "valtio";
8
+ import { getBlockMetadata } from "../block-utils";
9
+ function listenForHandleResize() {
10
+ let interval = setInterval(() => {
11
+ let viewportTarget = document.querySelector(".interface-interface-skeleton__content");
12
+ if (viewportTarget) {
13
+ const updateSize = () => {
14
+ document.documentElement.style.setProperty("--vw100", viewportTarget.clientWidth + "px");
15
+ };
16
+ const ro = new ResizeObserver(updateSize);
17
+ ro.observe(viewportTarget);
18
+ clearInterval(interval);
19
+ }
20
+ }, 100);
21
+ }
22
+ export function whenEditorIsReady() {
23
+ return new Promise((resolve) => {
24
+ const unsubscribe = wp.data.subscribe(() => {
25
+ // This will trigger after the initial render blocking, before the window load event
26
+ // This seems currently more reliable than using __unstableIsEditorReady
27
+ if (wp.data.select("core/editor").isCleanNewPost() || wp.data.select("core/block-editor").getBlockCount() > 0) {
28
+ unsubscribe();
29
+ resolve();
30
+ }
31
+ });
32
+ });
33
+ }
34
+ export function installEDGutenbergHooks() {
35
+ import("../../../../../css/editor-styles.css");
36
+ // Skip this if we're not in the block editor
37
+ if (!wp.blockEditor)
38
+ return;
39
+ const withClientIdClassName = wp.compose.createHigherOrderComponent((BlockListBlock) => {
40
+ return (props) => {
41
+ const generateClass = useSnapshot(editorConfigStore).currentBlocksConfig?.generateBlockClassName;
42
+ Object.assign(props, getBlockMetadata(props.name));
43
+ let className = generateClass ? generateClass(props, getEditingPostInfo()) : "";
44
+ return _jsx(BlockListBlock, { ...props, className: className });
45
+ };
46
+ }, "withClientIdClassName");
47
+ wp.hooks.addFilter("editor.BlockListBlock", "ed", withClientIdClassName);
48
+ listenForHandleResize();
49
+ // Remove unwanted formatting options
50
+ // https://developer.wordpress.org/block-editor/how-to-guides/format-api/
51
+ wp.richText.unregisterFormatType("core/image");
52
+ wp.richText.unregisterFormatType("core/language");
53
+ wp.richText.unregisterFormatType("core/keyboard");
54
+ wp.richText.unregisterFormatType("core/text-color");
55
+ whenEditorIsReady().then(() => watchEditorTemplate());
56
+ wp.hooks.addFilter("blocks.registerBlockType", "ed", (item, name) => {
57
+ // Hook into ACF blocks, customising the edit mode.
58
+ if (name.startsWith("acf/")) {
59
+ const edit = item.edit;
60
+ item.acf = {
61
+ ...(item.acf ?? {}),
62
+ mode: item.mode,
63
+ };
64
+ // Add an 'inline' object attribute, which will hold all inline contents
65
+ item.attributes.inline = { type: "object" };
66
+ item.attributes.isFromTemplate = { type: "boolean" };
67
+ item.supports.customClassName = false;
68
+ item.edit = function (props) {
69
+ const self = this;
70
+ useEffect(() => {
71
+ ;
72
+ wp.data.dispatch("core/block-editor").setTemplateValidity(true);
73
+ }, []);
74
+ const children = wp.data.useSelect((select) => {
75
+ const { getBlock, getBlockOrder } = select("core/block-editor");
76
+ const innerBlockIDs = getBlockOrder(props.clientId);
77
+ const children = innerBlockIDs.map((id) => {
78
+ return getBlock(id);
79
+ });
80
+ return children;
81
+ }, []);
82
+ return (_jsx(BlockContext.Provider, { value: { name, props }, children: _jsx(InlineEditingContextProvider, { values: props.attributes.inline || {}, innerBlocks: children, block: [name, props], index: -1, onChange: (attrs) => {
83
+ props.setAttributes({ ...props.attributes, inline: attrs });
84
+ }, insertBlocksAfter: props.insertBlocksAfter, children: edit.call(self, props) }) }));
85
+ };
86
+ }
87
+ // Find PHP-defined 'tags' for core blocks.
88
+ if ("ED_BLOCK_TAGS" in window && window.ED_BLOCK_TAGS) {
89
+ const tags = window.ED_BLOCK_TAGS[name];
90
+ if (tags) {
91
+ item.tags = tags;
92
+ }
93
+ }
94
+ // Ensure tags is always an array
95
+ if (typeof item.tags === "string") {
96
+ item.tags = [item.tags];
97
+ }
98
+ else if (!Array.isArray(item.tags)) {
99
+ item.tags = [];
100
+ }
101
+ blocksByTag.add(item.name, item.tags);
102
+ return {
103
+ ...item,
104
+ get parent() {
105
+ return blocksByTag.expand([
106
+ ...(item.parent ?? []),
107
+ ...(item.tags.includes("root") ? ["core/post-content"] : []),
108
+ ]);
109
+ },
110
+ get ancestor() {
111
+ return item.ancestor ? blocksByTag.expand(item.ancestor) : undefined;
112
+ },
113
+ get allowedBlocks() {
114
+ return item.allowedBlocks ? blocksByTag.expand(item.allowedBlocks) : undefined;
115
+ },
116
+ };
117
+ });
118
+ const acf = "acf" in window ? window.acf : {};
119
+ const parseJSX = acf.parseJSX;
120
+ acf.parseJSX = (html) => {
121
+ let payload;
122
+ try {
123
+ payload = JSON.parse(html);
124
+ }
125
+ catch (err) {
126
+ console.error(err);
127
+ throw new Error("eddev: Error parsing block data from: \n" + html);
128
+ }
129
+ return _jsx(EditableBlock, { payload: payload });
130
+ };
131
+ }
@@ -0,0 +1,27 @@
1
+ import { InlineValueStore } from "../inline-editing";
2
+ export declare function usePostEditor(): {
3
+ post: any;
4
+ updatePost(update: any): void;
5
+ meta: any;
6
+ updateMeta: Function;
7
+ };
8
+ /**
9
+ * Returns the current post title, allowing it to be updated.
10
+ *
11
+ * NOTE: This only works in the editor.
12
+ *
13
+ * For convenience, you can pass in a default title to use when not in the editor, which you can fetch via GraphQL
14
+ *
15
+ * @returns [title, setTitle]
16
+ */
17
+ export declare function usePostTitleEditor(title?: string): InlineValueStore<string>;
18
+ /**
19
+ * Returns a post meta value, allowing it to be updated.
20
+ *
21
+ * See ED()->registerPostMeta() for more information on how to define post meta.
22
+ *
23
+ * @param key The key specified
24
+ * @param value The value to use when not in the editor
25
+ * @returns [value, setValue]
26
+ */
27
+ export declare function usePostMetaEditor<K extends keyof PostMetaTypes>(key: K, value?: PostMetaTypes[K]): InlineValueStore<PostMetaTypes[K]>;
@@ -0,0 +1,79 @@
1
+ export function usePostEditor() {
2
+ const post = wp.data.useSelect((select) => {
3
+ const editor = select("core/editor");
4
+ const post = editor.getCurrentPost();
5
+ const edits = editor.getPostEdits();
6
+ return {
7
+ ...post,
8
+ ...edits,
9
+ };
10
+ }, []);
11
+ const [meta, updateMeta] = wp.coreData.useEntityProp("postType", post.type, "meta");
12
+ return {
13
+ post,
14
+ updatePost(update) {
15
+ wp.data.dispatch("core/editor").editPost(update);
16
+ },
17
+ meta,
18
+ updateMeta,
19
+ };
20
+ }
21
+ /**
22
+ * Returns the current post title, allowing it to be updated.
23
+ *
24
+ * NOTE: This only works in the editor.
25
+ *
26
+ * For convenience, you can pass in a default title to use when not in the editor, which you can fetch via GraphQL
27
+ *
28
+ * @returns [title, setTitle]
29
+ */
30
+ export function usePostTitleEditor(title = "") {
31
+ if (env.admin) {
32
+ const post = wp.data.useSelect((select) => {
33
+ const editor = select("core/editor");
34
+ const post = editor.getCurrentPost();
35
+ const edits = editor.getPostEdits();
36
+ return {
37
+ ...post,
38
+ ...edits,
39
+ };
40
+ }, []);
41
+ return [
42
+ post.title ?? "",
43
+ (title) => {
44
+ wp.data.dispatch("core/editor").editPost({ title });
45
+ },
46
+ ];
47
+ }
48
+ else {
49
+ return [title, () => { }];
50
+ }
51
+ }
52
+ /**
53
+ * Returns a post meta value, allowing it to be updated.
54
+ *
55
+ * See ED()->registerPostMeta() for more information on how to define post meta.
56
+ *
57
+ * @param key The key specified
58
+ * @param value The value to use when not in the editor
59
+ * @returns [value, setValue]
60
+ */
61
+ export function usePostMetaEditor(key, value) {
62
+ if (env.admin) {
63
+ const postType = wp.data.useSelect((select) => {
64
+ const editor = select("core/editor");
65
+ const post = editor.getCurrentPost();
66
+ return post.type;
67
+ }, []);
68
+ const [meta, setMeta] = wp.coreData.useEntityProp("postType", postType, "meta");
69
+ return [
70
+ meta?.[key] ?? value,
71
+ (newValue) => {
72
+ setMeta({ ...(meta ?? {}), [key]: newValue });
73
+ },
74
+ ];
75
+ }
76
+ else {
77
+ return [value, () => { }];
78
+ }
79
+ }
@@ -0,0 +1,9 @@
1
+ export * from "./ContentBlocks";
2
+ export * from "./EditableText";
3
+ export * from "./InnerBlocks";
4
+ export * from "./defineBlock";
5
+ export * from "./editor/controls";
6
+ export * from "./editor/usePostEditor";
7
+ export * from "./block-utils";
8
+ export { defineEditorConfig } from "./editor/editor-config";
9
+ export { useBlockContext, useInlineEditableValue, useInnerBlocks, useTemplate } from "./inline-editing";
@@ -0,0 +1,9 @@
1
+ export * from "./ContentBlocks";
2
+ export * from "./EditableText";
3
+ export * from "./InnerBlocks";
4
+ export * from "./defineBlock";
5
+ export * from "./editor/controls";
6
+ export * from "./editor/usePostEditor";
7
+ export * from "./block-utils";
8
+ export { defineEditorConfig } from "./editor/editor-config";
9
+ export { useBlockContext, useInlineEditableValue, useInnerBlocks, useTemplate } from "./inline-editing";
@@ -0,0 +1,54 @@
1
+ import { ContentBlock } from "./ContentBlocks";
2
+ import { PropsWithChildren } from "react";
3
+ type Attributes = Record<string, any>;
4
+ export type InlineValueStore<T> = [value: T, setValue: (value: T) => void];
5
+ type InlineEditingContext = {
6
+ values: Attributes;
7
+ innerBlocks: ContentBlock[];
8
+ parents: [string, Attributes][];
9
+ block: [string, Attributes];
10
+ index: number;
11
+ setValue(key: string, value: any): any;
12
+ getValue(key: string): any;
13
+ insertBlocksAfter?: (block: any) => void;
14
+ readonly?: boolean;
15
+ };
16
+ declare const InlineEditingContext: import("react").Context<InlineEditingContext | undefined>;
17
+ type ProviderProps = PropsWithChildren<{
18
+ values: Attributes;
19
+ innerBlocks: ContentBlock[];
20
+ block: [string, Attributes];
21
+ index: number;
22
+ onChange?: (attrs: Attributes) => void;
23
+ insertBlocksAfter?: (block: any) => void;
24
+ readonly?: boolean;
25
+ }>;
26
+ export declare function InlineEditingContextProvider(props: ProviderProps): import("react/jsx-runtime").JSX.Element;
27
+ export declare function ReadonlyInlineEditingProvider(props: PropsWithChildren<{}>): import("react/jsx-runtime").JSX.Element;
28
+ /**
29
+ * Allows for arbitrary storage of key/value pairs within the current block.
30
+ * This is used internally by EditableText, but can be used to store anything.
31
+ *
32
+ * @param key The unique item identifier
33
+ * @param defaultValue The default value (default is undefined)
34
+ * @returns a [value, setValue] tuple, similar to useState
35
+ */
36
+ export declare function useInlineEditableValue<T>(key: string, defaultValue?: T): InlineValueStore<T>;
37
+ /**
38
+ * Can be used as a drop-in version of useInlineEditableValue, but will pipe-through a store if one has been used
39
+ * @private
40
+ **/
41
+ export declare function useValueStore<T>(id: string | InlineValueStore<T>, defaultValue?: T): InlineValueStore<T>;
42
+ export declare function useBlockAppender(): ((block: any) => void) | undefined;
43
+ export declare function useInnerBlocks(): ContentBlock[];
44
+ export declare function useBlockParents(): [string, Attributes][];
45
+ export declare function useBlockContext(): InlineEditingContext | undefined;
46
+ /**
47
+ * Returns the current template name.
48
+ * - In the editor, this uses Gutenberg state.
49
+ * - On the frontend, this uses the actual WP template hierarchy.
50
+ *
51
+ * As such, there may be inconsistencies between the editor and the frontend.
52
+ */
53
+ export declare function useTemplate(): keyof ViewProps;
54
+ export {};
@@ -0,0 +1,114 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useContext } from "react";
3
+ import { usePostEditor } from "./editor/usePostEditor";
4
+ import { useRoute } from "../routing";
5
+ import { addBlockMetadata } from "./block-utils";
6
+ const InlineEditingContext = createContext(undefined);
7
+ export function InlineEditingContextProvider(props) {
8
+ const parentContext = useContext(InlineEditingContext);
9
+ addBlockMetadata(props.innerBlocks);
10
+ return (_jsx(InlineEditingContext.Provider, { value: {
11
+ values: props.values,
12
+ innerBlocks: props.innerBlocks,
13
+ block: props.block,
14
+ index: props.index,
15
+ parents: [...(parentContext?.block ? [parentContext?.block] : []), ...(parentContext?.parents || [])].filter(Boolean),
16
+ getValue(key) {
17
+ return props.values?.[key];
18
+ },
19
+ setValue(key, value) {
20
+ if (props.onChange) {
21
+ props.onChange({
22
+ ...(props.values || {}),
23
+ [key]: value,
24
+ });
25
+ }
26
+ },
27
+ insertBlocksAfter: props.insertBlocksAfter,
28
+ readonly: props.readonly || parentContext?.readonly,
29
+ }, children: props.children }));
30
+ }
31
+ export function ReadonlyInlineEditingProvider(props) {
32
+ const parentContext = useContext(InlineEditingContext);
33
+ return (_jsx(InlineEditingContext.Provider, { value: {
34
+ ...parentContext,
35
+ readonly: true,
36
+ }, children: props.children }));
37
+ }
38
+ /**
39
+ * Allows for arbitrary storage of key/value pairs within the current block.
40
+ * This is used internally by EditableText, but can be used to store anything.
41
+ *
42
+ * @param key The unique item identifier
43
+ * @param defaultValue The default value (default is undefined)
44
+ * @returns a [value, setValue] tuple, similar to useState
45
+ */
46
+ export function useInlineEditableValue(key, defaultValue) {
47
+ const attrs = useContext(InlineEditingContext);
48
+ return [
49
+ attrs?.getValue(key) ?? defaultValue,
50
+ (value) => {
51
+ attrs?.setValue(key, value);
52
+ },
53
+ ];
54
+ }
55
+ /**
56
+ * Can be used as a drop-in version of useInlineEditableValue, but will pipe-through a store if one has been used
57
+ * @private
58
+ **/
59
+ export function useValueStore(id, defaultValue) {
60
+ const attrs = useContext(InlineEditingContext);
61
+ if (typeof id === "string") {
62
+ return [
63
+ attrs?.getValue(id) ?? defaultValue,
64
+ (value) => {
65
+ attrs?.setValue(id, value);
66
+ },
67
+ ];
68
+ }
69
+ else if (Array.isArray(id)) {
70
+ return [id[0] ?? defaultValue, id[1]];
71
+ }
72
+ else {
73
+ throw new Error("Missing ID or store for inline value");
74
+ }
75
+ }
76
+ export function useBlockAppender() {
77
+ const ctx = useContext(InlineEditingContext);
78
+ return ctx?.insertBlocksAfter;
79
+ }
80
+ export function useInnerBlocks() {
81
+ const ctx = useContext(InlineEditingContext);
82
+ return ctx?.innerBlocks || [];
83
+ }
84
+ export function useBlockParents() {
85
+ const ctx = useContext(InlineEditingContext);
86
+ return ctx?.parents || [];
87
+ }
88
+ export function useBlockContext() {
89
+ return useContext(InlineEditingContext);
90
+ }
91
+ /**
92
+ * Returns the current template name.
93
+ * - In the editor, this uses Gutenberg state.
94
+ * - On the frontend, this uses the actual WP template hierarchy.
95
+ *
96
+ * As such, there may be inconsistencies between the editor and the frontend.
97
+ */
98
+ export function useTemplate() {
99
+ if (env.admin) {
100
+ const post = usePostEditor();
101
+ if (post.post?.template) {
102
+ return post.post?.template?.replace(/(views\/|\.tsx$)/g, "");
103
+ }
104
+ else if (post.post?.type === "page") {
105
+ return "page";
106
+ }
107
+ else {
108
+ return ("single-" + post.post?.type);
109
+ }
110
+ }
111
+ else {
112
+ return useRoute().view;
113
+ }
114
+ }