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,166 @@
1
+ import chalk from "chalk";
2
+ import { Command } from "commander";
3
+ import { setDefaultResultOrder } from "dns";
4
+ import { config as importDotEnv } from "dotenv";
5
+ import { AdminBundler, adminLog } from "../compiler/bundler.admin.js";
6
+ import { FrontendBundler, frontendLog } from "../compiler/bundler.frontend.js";
7
+ import { ServerlessDevServer, serverlessLog } from "../compiler/serverless.dev.js";
8
+ import { graphqlLog } from "../graphql/graphql-codegen.js";
9
+ import { BuildInfoWriter } from "../project/eddev-build-file.js";
10
+ import { Project, projectLog } from "../project/project.js";
11
+ import { describeBlockManifest } from "../types/block-type.js";
12
+ import { describeViewManifest } from "../types/view-type.js";
13
+ import { configureCliMode } from "./cli-mode.js";
14
+ import { CLIWorker } from "./cli-worker.js";
15
+ import { bootCLIUI } from "./display/boot-cli-app.js";
16
+ import { VERSION } from "./version.js";
17
+ importDotEnv();
18
+ const program = new Command()
19
+ .version(VERSION)
20
+ .name("eddev")
21
+ .description("⚡️ ED. Stack\nSee https://eddev.ed.studio for docs.");
22
+ const init = (verbose) => {
23
+ console.log(`\n<⚡️ ED. Stack v${VERSION}>\n`);
24
+ };
25
+ program
26
+ .command("dev")
27
+ .description("Build in dev mode")
28
+ .option("-s, --serverless", 'Build in "serverless" mode', false)
29
+ .option("-m, --mode <mode>", 'Defaults to all modes, but use "frontend", "admin" or "graphql" to run in just one mode', undefined)
30
+ .option("--verbose", "Show extra debugging info", false)
31
+ .action(async (options) => {
32
+ process.env.NODE_ENV = "development";
33
+ serverlessLog.info(chalk.yellowBright(`⚡️ ED. Stack v${VERSION}`));
34
+ const tasks = {
35
+ admin: !options.mode || options.mode.includes("admin"),
36
+ frontend: !options.mode || options.mode.includes("frontend"),
37
+ serverless: !options.mode || options.mode.includes("serverless"),
38
+ graphql: !options.mode || options.mode.includes("graphql"),
39
+ };
40
+ // https://github.com/node-fetch/node-fetch/issues/1624#issuecomment-1407717012
41
+ setDefaultResultOrder("ipv4first");
42
+ configureCliMode({
43
+ interactive: true,
44
+ readonly: false,
45
+ exitOnValidationError: true,
46
+ detailed: false,
47
+ verbose: options.verbose,
48
+ watch: true,
49
+ rootDir: process.cwd(),
50
+ });
51
+ bootCLIUI({
52
+ getProject: () => project,
53
+ logs: {
54
+ project: projectLog,
55
+ adminBundle: tasks.admin ? adminLog : undefined,
56
+ frontendBundle: tasks.frontend ? frontendLog : undefined,
57
+ serverless: tasks.serverless ? serverlessLog : undefined,
58
+ graphql: tasks.graphql ? graphqlLog : undefined,
59
+ },
60
+ });
61
+ // Load the project info
62
+ const project = await Project.create({
63
+ rootDir: process.cwd(),
64
+ reportPluginCompatibility: true,
65
+ });
66
+ const infoWriter = new BuildInfoWriter(project);
67
+ infoWriter.watch();
68
+ infoWriter.write();
69
+ // Boot up admin in a worker
70
+ if (tasks.admin) {
71
+ new CLIWorker({
72
+ log: adminLog,
73
+ mode: "admin",
74
+ verbose: options.verbose,
75
+ });
76
+ }
77
+ // Boot up frontend in a worker
78
+ if (tasks.frontend) {
79
+ new CLIWorker({
80
+ log: frontendLog,
81
+ mode: "frontend",
82
+ verbose: options.verbose,
83
+ });
84
+ }
85
+ // Load the compiler
86
+ if (tasks.serverless) {
87
+ console.log = (...args) => {
88
+ serverlessLog.log(...args);
89
+ };
90
+ console.error = (...args) => {
91
+ serverlessLog.error(...args);
92
+ };
93
+ console.warn = (...args) => {
94
+ serverlessLog.warn(...args);
95
+ };
96
+ console.info = (...args) => {
97
+ serverlessLog.info(...args);
98
+ };
99
+ new ServerlessDevServer(project, {
100
+ mode: "development",
101
+ });
102
+ }
103
+ // GraphQL codegen
104
+ if (tasks.graphql) {
105
+ new CLIWorker({
106
+ log: graphqlLog,
107
+ mode: "graphql",
108
+ verbose: options.verbose,
109
+ });
110
+ }
111
+ });
112
+ program
113
+ .command("build")
114
+ .description("Build in production mode")
115
+ .option("-s, --serverless", 'Build in "serverless" mode', false)
116
+ .option("--verbose", "Show extra debugging info", false)
117
+ .action(async (options) => {
118
+ init(options.verbose);
119
+ configureCliMode({
120
+ interactive: false,
121
+ readonly: false,
122
+ exitOnValidationError: true,
123
+ detailed: true,
124
+ verbose: options.verbose,
125
+ watch: false,
126
+ rootDir: process.cwd(),
127
+ });
128
+ // Load the project info
129
+ const project = await Project.create({
130
+ rootDir: process.cwd(),
131
+ });
132
+ // Load the compiler
133
+ new AdminBundler(project, {
134
+ mode: "development",
135
+ });
136
+ new FrontendBundler(project, {
137
+ mode: "production",
138
+ });
139
+ });
140
+ program
141
+ .command("info")
142
+ .description("Return info about this project")
143
+ .option("--verbose", "Show extra debugging info", false)
144
+ .action(async (options) => {
145
+ init(options.verbose);
146
+ configureCliMode({
147
+ interactive: false,
148
+ readonly: true,
149
+ exitOnValidationError: false,
150
+ detailed: true,
151
+ verbose: options.verbose,
152
+ watch: false,
153
+ rootDir: process.cwd(),
154
+ });
155
+ // Load the project
156
+ const project = await Project.create({
157
+ rootDir: process.cwd(),
158
+ });
159
+ // Load the blocks
160
+ const blocks = await project.blocks.get();
161
+ console.log(describeBlockManifest(blocks));
162
+ // Load the views
163
+ const views = await project.views.get();
164
+ console.log(describeViewManifest(views));
165
+ });
166
+ program.parse(process.argv);
@@ -0,0 +1,16 @@
1
+ import type { graphqlLog } from "../../graphql/graphql-codegen.js";
2
+ import type { Project, projectLog } from "../../project/project.js";
3
+ import type { adminLog } from "../../compiler/bundler.admin.js";
4
+ import type { frontendLog } from "../../compiler/bundler.frontend.js";
5
+ import { serverlessLog } from "../../compiler/serverless.dev.js";
6
+ export type CLIDisplayProps = {
7
+ getProject: () => Project;
8
+ logs: {
9
+ project?: typeof projectLog;
10
+ graphql?: typeof graphqlLog;
11
+ frontendBundle?: typeof frontendLog;
12
+ serverless?: typeof serverlessLog;
13
+ adminBundle?: typeof adminLog;
14
+ };
15
+ };
16
+ export declare function CLIApp(props: CLIDisplayProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,117 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Box, Static, Text, useInput } from "ink";
3
+ import Spinner from "ink-spinner";
4
+ import { VERSION } from "../version.js";
5
+ import { LogEntries, LogItem } from "./components/LogEntries.js";
6
+ import { useStatefulLogs } from "./hooks/useStatefulLog.js";
7
+ import { statusColor, statusIcon } from "./util/colors.js";
8
+ import { serverlessLog } from "../../compiler/serverless.dev.js";
9
+ import { useEffect, useState } from "react";
10
+ import TextInput from "./components/TextInput.js";
11
+ import { findTools } from "./tools/cli-tools.js";
12
+ import { TOOLS } from "./tools/cli-tool-list.js";
13
+ function useRedraw() {
14
+ const [_, setTick] = useState(0);
15
+ return () => setTick((tick) => tick + 1);
16
+ }
17
+ export function CLIApp(props) {
18
+ const redraw = useRedraw();
19
+ const [showingMenu, setShowingMenu] = useState(false);
20
+ const [activeScreen, setActiveScreen] = useState("main");
21
+ const activeTool = TOOLS[activeScreen];
22
+ const ToolComponent = activeTool?.component;
23
+ useInput((input, key) => {
24
+ if (key.escape) {
25
+ setTimeout(() => {
26
+ if (activeScreen !== "main") {
27
+ setShowingMenu(true);
28
+ setActiveScreen("main");
29
+ }
30
+ else {
31
+ setShowingMenu((showing) => !showing);
32
+ }
33
+ }, 1);
34
+ }
35
+ else if (activeScreen === "main" && !showingMenu) {
36
+ if (input === "c" || input === "k") {
37
+ process.stdout.write("\u001b[3J\u001b[1J");
38
+ console.clear();
39
+ props.logs.serverless?.resetLog();
40
+ redraw();
41
+ }
42
+ else if (input === "q") {
43
+ process.exit(0);
44
+ }
45
+ }
46
+ });
47
+ const logs = useStatefulLogs({
48
+ projectLog: props.logs.project,
49
+ graphqlLog: props.logs.graphql,
50
+ frontendLog: props.logs.frontendBundle,
51
+ adminLog: props.logs.adminBundle,
52
+ serverlessLog: props.logs.serverless,
53
+ });
54
+ const mainLog = logs.serverlessLog || logs.frontendLog || logs.adminLog || logs.graphqlLog || logs.projectLog;
55
+ const logList = Object.entries(logs).filter(([key, log]) => log !== mainLog);
56
+ return (_jsxs(_Fragment, { children: [_jsx(Static, { items: mainLog ? mainLog.entries : [], children: (item, i) => {
57
+ return _jsx(LogItem, { item: item }, item.id);
58
+ } }), showingMenu ? (_jsx(MainMenu, { onSelect: (tool) => {
59
+ setActiveScreen(tool);
60
+ setShowingMenu(false);
61
+ } })) : activeScreen === "main" ? (_jsxs(_Fragment, { children: [_jsx(Box, { width: "100%", flexDirection: "column", children: _jsx(Panel, { label: "Dev Server", color: "#F53AF4", icon: "\u2730", info: `eddev@${VERSION}`, children: _jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: "#88DEFF", children: "Frontend:" }), _jsx(Text, { color: "#D98D73", children: serverlessLog.state?.serverlessUrl })] }), _jsxs(Box, { gap: 1, children: [_jsx(Text, { color: "#88DEFF", children: "WordPress Origin:" }), _jsx(Text, { color: "#D98D73", children: serverlessLog.state?.wordpressUrl })] }), _jsx(Text, { color: "#88DEFF", children: "Service Status:" }), _jsx(Box, { width: "100%", flexWrap: "wrap", paddingLeft: 1, children: logList.map(([key, log]) => (_jsx(Box, { children: _jsx(LogStatus, { log: log }) }, key))) })] }) }) }), _jsx(Box, { flexDirection: "column", children: logList.map(([key, log]) => {
62
+ return _jsx(MiniLog, { log: log }, key);
63
+ }) })] })) : (_jsx(Panel, { label: activeTool.name, color: "yellow", icon: "!", children: _jsx(ToolComponent, { project: props.getProject(), close: () => {
64
+ setActiveScreen("main");
65
+ setShowingMenu(false);
66
+ } }) }))] }));
67
+ }
68
+ function MainMenu(props) {
69
+ const [focusIndex, setFocusIndex] = useState(0);
70
+ const [search, setSearch] = useState("");
71
+ // let matches = Object.entries(TOOLS)
72
+ // if (search) {
73
+ // matches = matches.filter(([key, tool]) => tool.name.toLowerCase().includes(search.toLowerCase()))
74
+ // }
75
+ const matches = findTools(search);
76
+ useInput((input, key) => {
77
+ if (key.downArrow) {
78
+ setFocusIndex((index) => (index + 1) % matches.length);
79
+ }
80
+ else if (key.upArrow) {
81
+ setFocusIndex((index) => (index - 1 + matches.length) % matches.length);
82
+ }
83
+ else if (key.return) {
84
+ const match = matches[focusIndex];
85
+ if (match) {
86
+ props.onSelect(match.tool.id);
87
+ }
88
+ }
89
+ });
90
+ return (_jsx(Panel, { label: "Main Menu", icon: "\u25C8", color: "yellow", info: "[ESC] to close", children: _jsxs(Box, { width: "100%", flexDirection: "column", paddingX: 1, paddingY: 0, children: [_jsxs(Box, { gap: 1, flexDirection: "row", children: [_jsx(Text, { color: "whiteBright", children: "What would you like to do?" }), _jsx(Text, { color: "gray", children: "[ESC] to close" })] }), _jsxs(Box, { paddingBottom: 1, children: [_jsx(Text, { color: "white", children: "> " }), _jsx(TextInput, { value: search, onChange: (value) => {
91
+ setSearch(value);
92
+ setFocusIndex(0);
93
+ }, showCursor: true, focus: true, placeholder: "Search..." })] }), matches.length === 0 ? _jsx(Text, { color: "redBright", children: "😓 No results" }) : null, matches.map((item, index) => {
94
+ const focused = focusIndex === index;
95
+ return (_jsxs(Box, { children: [_jsx(Box, { width: 3, children: _jsx(Text, { children: focused ? "👉" : "" }) }), _jsxs(Box, { children: [_jsx(Text, { color: focused ? "yellow" : "white", children: item.tool.name }), _jsx(Text, { children: String(item.score) })] })] }, item.tool.id));
96
+ })] }) }));
97
+ }
98
+ function MiniLog({ log, border }) {
99
+ const color = statusColor(log.status);
100
+ const shouldShow = log.status !== "success";
101
+ const [active, setActive] = useState(shouldShow);
102
+ useEffect(() => {
103
+ const timer = setTimeout(() => {
104
+ setActive(shouldShow);
105
+ }, 1000);
106
+ return () => clearTimeout(timer);
107
+ }, [shouldShow]);
108
+ if (!active && !shouldShow)
109
+ return null;
110
+ return (_jsx(Panel, { label: log.label, time: log.status !== "working" ? log.time : 0, color: color, icon: log.status === "working" ? _jsx(Spinner, {}) : statusIcon(log.status), children: _jsx(LogEntries, { entries: log.entries }) }));
111
+ }
112
+ function LogStatus({ log }) {
113
+ return (_jsxs(Text, { color: statusColor(log.status), children: [log.status === "working" ? _jsx(Spinner, {}) : statusIcon(log.status), " ", log.label, " ", log.time > 0 ? _jsx(Text, { dimColor: true, children: log.time + "ms" }) : null] }));
114
+ }
115
+ function Panel(props) {
116
+ return (_jsxs(Box, { flexGrow: 1, flexShrink: 1, flexBasis: "100%", flexDirection: "column", children: [_jsxs(Box, { gap: 1, children: [_jsxs(Text, { color: props.color, children: ["╭ ", props.icon, " ", props.label, " ", props.time > 0 ? _jsx(Text, { dimColor: true, children: props.time + "ms" }) : null] }), props.info && (_jsx(_Fragment, { children: _jsx(Text, { color: props.color, dimColor: true, children: props.info }) }))] }), _jsx(Box, { borderStyle: "round", borderColor: props.color, paddingLeft: 1, borderTop: false, borderRight: false, children: props.children })] }));
117
+ }
@@ -0,0 +1,2 @@
1
+ import { CLIDisplayProps } from "./CLIApp.js";
2
+ export declare function bootCLIUI(props: CLIDisplayProps): void;
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { render } from "ink";
3
+ import { CLIApp } from "./CLIApp.js";
4
+ export function bootCLIUI(props) {
5
+ console.clear();
6
+ render(_jsx(CLIApp, { ...props }), {
7
+ exitOnCtrlC: true,
8
+ patchConsole: true,
9
+ });
10
+ }
@@ -1,4 +1,4 @@
1
1
  import { PropsWithChildren } from "react";
2
- declare type Props = PropsWithChildren<{}>;
2
+ type Props = PropsWithChildren<{}>;
3
3
  export declare function Fullscreen(props: Props): import("react/jsx-runtime").JSX.Element;
4
4
  export {};
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Box } from "ink";
3
+ import { useEffect, useState } from "react";
4
+ export function Fullscreen(props) {
5
+ const [size, setSize] = useState({
6
+ columns: process.stdout.columns,
7
+ rows: process.stdout.rows,
8
+ });
9
+ useEffect(() => {
10
+ function onResize() {
11
+ setSize({
12
+ columns: process.stdout.columns,
13
+ rows: process.stdout.rows + 10,
14
+ });
15
+ }
16
+ process.stdout.on("resize", onResize);
17
+ // process.stdout.write("\x1b[?1049h")
18
+ return () => {
19
+ process.stdout.off("resize", onResize);
20
+ // process.stdout.write("\x1b[?1049l")
21
+ };
22
+ }, []);
23
+ return (_jsx(Box, { width: size.columns, minHeight: size.rows, children: props.children }));
24
+ }
@@ -0,0 +1,13 @@
1
+ import type { LogEntry, LogGroup, LogGroupOrEntry } from "../../../utils/statefulLog.js";
2
+ export declare function LogEntries(props: {
3
+ entries: LogGroupOrEntry[];
4
+ }): import("react/jsx-runtime").JSX.Element;
5
+ export declare function LogItem({ item }: {
6
+ item: LogGroupOrEntry;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ export declare function LogGroup(props: {
9
+ group: LogGroup;
10
+ }): import("react/jsx-runtime").JSX.Element;
11
+ export declare function LogEntry(props: {
12
+ entry: LogEntry;
13
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,87 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Box, Text } from "ink";
3
+ import { statusColor, statusIcon } from "../util/colors.js";
4
+ import { inspect } from "util";
5
+ import chalk from "chalk";
6
+ export function LogEntries(props) {
7
+ return (_jsx(Box, { flexDirection: "column", children: props.entries.map((entry, index) => {
8
+ if (entry.type === "group") {
9
+ return _jsx(LogGroup, { group: { ...entry } }, index);
10
+ }
11
+ else {
12
+ return _jsx(LogEntry, { entry: entry }, index);
13
+ }
14
+ }) }));
15
+ }
16
+ export function LogItem({ item }) {
17
+ if (item.type === "group") {
18
+ return _jsx(LogGroup, { group: item });
19
+ }
20
+ else {
21
+ return _jsx(LogEntry, { entry: item });
22
+ }
23
+ }
24
+ export function LogGroup(props) {
25
+ const color = statusColor(props.group.kind);
26
+ return (_jsxs(_Fragment, { children: [_jsxs(Text, { color: color, children: [_jsx(Text, { children: statusIcon(props.group.kind) }), " ", props.group.label, ":"] }), _jsx(Box, { flexDirection: "column", paddingLeft: 1, borderStyle: "round", borderColor: color, borderTop: false, borderRight: false, width: "100%", children: _jsx(LogEntries, { entries: props.group.entries }) })] }));
27
+ }
28
+ function formatError(error) {
29
+ let type = error.name;
30
+ let message = error.message;
31
+ let stack = error.stack;
32
+ let output = "";
33
+ if (error.name)
34
+ output += chalk.red(type) + ": ";
35
+ if (error.message)
36
+ output += message + "\n";
37
+ if (error.stack)
38
+ output += chalk.dim(stack);
39
+ return output;
40
+ }
41
+ const rawValue = (value) => {
42
+ if (value instanceof Error || (value && typeof value === "object" && value.__is_error)) {
43
+ return formatError(value);
44
+ }
45
+ else if (typeof value === "object") {
46
+ return inspect(value, false, 4, true);
47
+ }
48
+ return String(value);
49
+ };
50
+ const paths = [
51
+ { find: "file://" + encodeURI(process.cwd().replace(/\/?$/, "/")), replace: "./" },
52
+ { find: "file://" + encodeURI(process.cwd().replace(/\/[^\/]+\/?$/, "/")), replace: "../" },
53
+ { find: process.cwd().replace(/\/?$/, "/"), replace: "./" },
54
+ ];
55
+ const shortenErrors = (value) => {
56
+ for (let path of paths) {
57
+ value = value.replaceAll(path.find, path.replace);
58
+ }
59
+ return value;
60
+ };
61
+ const stringify = (value) => {
62
+ return shortenErrors(rawValue(value));
63
+ };
64
+ export function LogEntry(props) {
65
+ let tag = "";
66
+ let icon = statusIcon(props.entry.kind);
67
+ let iconFG = statusColor(props.entry.kind);
68
+ let textFG = "whiteBright";
69
+ let tagBG = "blue";
70
+ let tagFG = "whiteBright";
71
+ if (props.entry.kind === "verbose") {
72
+ textFG = "gray";
73
+ }
74
+ else if (props.entry.kind === "error") {
75
+ tag = "ERROR";
76
+ tagBG = "red";
77
+ tagFG = "black";
78
+ }
79
+ if (tag) {
80
+ const first = props.entry.items[0];
81
+ const rest = props.entry.items.slice(1);
82
+ return (_jsxs(_Fragment, { children: [_jsxs(Text, { color: "black", backgroundColor: tagBG, children: [_jsxs(Text, { children: [" ", icon, " "] }), tag, " ", _jsx(Text, { children: stringify(first) })] }), rest ? (_jsx(Box, { borderStyle: "round", borderRight: false, borderTop: false, borderColor: tagBG, paddingLeft: 1, children: _jsx(Text, { children: rest.map(stringify).join(" ") }) })) : null] }));
83
+ }
84
+ else {
85
+ return (_jsxs(Box, { children: [_jsx(Box, { width: 2, flexShrink: 0, flexGrow: 0, flexBasis: 2, children: _jsx(Text, { color: iconFG, children: icon }) }), _jsx(Text, { color: textFG, children: props.entry.items.map(stringify).join(" ") })] }));
86
+ }
87
+ }
@@ -0,0 +1,6 @@
1
+ type Props = {
2
+ label: string;
3
+ onSelect: () => void;
4
+ };
5
+ export declare function MenuItem(props: Props): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text, useFocus, useInput } from "ink";
3
+ export function MenuItem(props) {
4
+ const { isFocused } = useFocus();
5
+ useInput((input, key) => {
6
+ if (key.return) {
7
+ props.onSelect();
8
+ }
9
+ });
10
+ return (_jsxs(Box, { children: [_jsx(Box, { width: 3, children: _jsx(Text, { children: isFocused ? "👉" : "" }) }), _jsx(Box, { children: _jsx(Text, { color: isFocused ? "yellow" : "white", children: props.label }) })] }));
11
+ }
@@ -0,0 +1,44 @@
1
+ export type Props = {
2
+ /**
3
+ * Text to display when `value` is empty.
4
+ */
5
+ readonly placeholder?: string;
6
+ /**
7
+ * Listen to user's input. Useful in case there are multiple input components
8
+ * at the same time and input must be "routed" to a specific component.
9
+ */
10
+ readonly focus?: boolean;
11
+ /**
12
+ * Replace all chars and mask the value. Useful for password inputs.
13
+ */
14
+ readonly mask?: string;
15
+ /**
16
+ * Whether to show cursor and allow navigation inside text input with arrow keys.
17
+ */
18
+ readonly showCursor?: boolean;
19
+ /**
20
+ * Highlight pasted text
21
+ */
22
+ readonly highlightPastedText?: boolean;
23
+ /**
24
+ * Value to display in a text input.
25
+ */
26
+ readonly value: string;
27
+ /**
28
+ * Function to call when value updates.
29
+ */
30
+ readonly onChange: (value: string) => void;
31
+ /**
32
+ * Function to call when `Enter` is pressed, where first argument is a value of the input.
33
+ */
34
+ readonly onSubmit?: (value: string) => void;
35
+ };
36
+ declare function TextInput({ value: originalValue, placeholder, focus, mask, highlightPastedText, showCursor, onChange, onSubmit, }: Props): import("react/jsx-runtime").JSX.Element;
37
+ export default TextInput;
38
+ type UncontrolledProps = {
39
+ /**
40
+ * Initial value.
41
+ */
42
+ readonly initialValue?: string;
43
+ } & Omit<Props, "value" | "onChange">;
44
+ export declare function UncontrolledTextInput({ initialValue, ...props }: UncontrolledProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,105 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState, useEffect } from "react";
3
+ import { Text, useInput } from "ink";
4
+ import chalk from "chalk";
5
+ function TextInput({ value: originalValue, placeholder = "", focus = true, mask, highlightPastedText = false, showCursor = true, onChange, onSubmit, }) {
6
+ const [state, setState] = useState({
7
+ cursorOffset: (originalValue || "").length,
8
+ cursorWidth: 0,
9
+ });
10
+ const { cursorOffset, cursorWidth } = state;
11
+ useEffect(() => {
12
+ setState((previousState) => {
13
+ if (!focus || !showCursor) {
14
+ return previousState;
15
+ }
16
+ const newValue = originalValue || "";
17
+ if (previousState.cursorOffset > newValue.length - 1) {
18
+ return {
19
+ cursorOffset: newValue.length,
20
+ cursorWidth: 0,
21
+ };
22
+ }
23
+ return previousState;
24
+ });
25
+ }, [originalValue, focus, showCursor]);
26
+ const cursorActualWidth = highlightPastedText ? cursorWidth : 0;
27
+ const value = mask ? mask.repeat(originalValue.length) : originalValue;
28
+ let renderedValue = value;
29
+ let renderedPlaceholder = placeholder ? chalk.grey(placeholder) : undefined;
30
+ // Fake mouse cursor, because it's too inconvenient to deal with actual cursor and ansi escapes
31
+ if (showCursor && focus) {
32
+ renderedPlaceholder =
33
+ placeholder.length > 0 ? chalk.inverse(placeholder[0]) + chalk.grey(placeholder.slice(1)) : chalk.inverse(" ");
34
+ renderedValue = value.length > 0 ? "" : chalk.inverse(" ");
35
+ let i = 0;
36
+ for (const char of value) {
37
+ renderedValue += i >= cursorOffset - cursorActualWidth && i <= cursorOffset ? chalk.inverse(char) : char;
38
+ i++;
39
+ }
40
+ if (value.length > 0 && cursorOffset === value.length) {
41
+ renderedValue += chalk.inverse(" ");
42
+ }
43
+ }
44
+ useInput((input, key) => {
45
+ if (key.upArrow || key.downArrow || (key.ctrl && input === "c") || key.tab || (key.shift && key.tab)) {
46
+ return;
47
+ }
48
+ if (key.return) {
49
+ if (onSubmit) {
50
+ onSubmit(originalValue);
51
+ }
52
+ return;
53
+ }
54
+ let nextCursorOffset = cursorOffset;
55
+ let nextValue = originalValue;
56
+ let nextCursorWidth = 0;
57
+ if (key.leftArrow) {
58
+ if (showCursor) {
59
+ nextCursorOffset--;
60
+ }
61
+ }
62
+ else if (key.rightArrow) {
63
+ if (showCursor) {
64
+ nextCursorOffset++;
65
+ }
66
+ }
67
+ else if ((key.backspace || key.delete) && (key.meta || key.ctrl)) {
68
+ nextValue = "";
69
+ nextCursorOffset = 0;
70
+ }
71
+ else if (key.backspace || key.delete) {
72
+ if (cursorOffset > 0) {
73
+ nextValue = originalValue.slice(0, cursorOffset - 1) + originalValue.slice(cursorOffset, originalValue.length);
74
+ nextCursorOffset--;
75
+ }
76
+ }
77
+ else {
78
+ nextValue =
79
+ originalValue.slice(0, cursorOffset) + input + originalValue.slice(cursorOffset, originalValue.length);
80
+ nextCursorOffset += input.length;
81
+ if (input.length > 1) {
82
+ nextCursorWidth = input.length;
83
+ }
84
+ }
85
+ if (cursorOffset < 0) {
86
+ nextCursorOffset = 0;
87
+ }
88
+ if (cursorOffset > originalValue.length) {
89
+ nextCursorOffset = originalValue.length;
90
+ }
91
+ setState({
92
+ cursorOffset: nextCursorOffset,
93
+ cursorWidth: nextCursorWidth,
94
+ });
95
+ if (nextValue !== originalValue) {
96
+ onChange(nextValue);
97
+ }
98
+ }, { isActive: focus });
99
+ return _jsx(Text, { children: placeholder ? (value.length > 0 ? renderedValue : renderedPlaceholder) : renderedValue });
100
+ }
101
+ export default TextInput;
102
+ export function UncontrolledTextInput({ initialValue = "", ...props }) {
103
+ const [value, setValue] = useState(initialValue);
104
+ return _jsx(TextInput, { ...props, value: value, onChange: setValue });
105
+ }
@@ -0,0 +1,2 @@
1
+ import { ManifestGenerator } from "../../../project/manifest/manifest.js";
2
+ export declare function useManifest<T>(manifest: ManifestGenerator<any, T>): T | null;
@@ -0,0 +1,8 @@
1
+ import { useEffect, useState } from "react";
2
+ export function useManifest(manifest) {
3
+ const [value, setValue] = useState(null);
4
+ useEffect(() => {
5
+ return manifest.subscribe(setValue);
6
+ }, [manifest]);
7
+ return value;
8
+ }
@@ -0,0 +1,11 @@
1
+ import { StatefulLog } from "../../../utils/statefulLog.js";
2
+ export type LogInfo<T extends StatefulLog<any> | undefined> = {
3
+ label: string;
4
+ value: Exclude<T, undefined>["state"];
5
+ status: Exclude<T, undefined>["status"];
6
+ time: number;
7
+ entries: Exclude<T, undefined>["entries"];
8
+ };
9
+ export declare function useStatefulLogs<T extends {
10
+ [K in keyof T]: StatefulLog<any> | undefined;
11
+ }>(logs: T): { [K in keyof T]: LogInfo<T[K]>; };