camox 0.43.0 → 0.45.0

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 (412) hide show
  1. package/bin/camox.mjs +9 -1
  2. package/dist/components/AuthGate.js +0 -6
  3. package/dist/components/DeviceSelector.js +96 -0
  4. package/dist/components/PlatformLabel.js +20 -24
  5. package/dist/core/components/lexical/HighlightNode.js +1 -1
  6. package/dist/core/components/lexical/InlineContentEditable.js +15 -19
  7. package/dist/core/components/lexical/InlineLexicalEditor.js +54 -74
  8. package/dist/core/components/lexical/InlineStylesPlugin.js +57 -41
  9. package/dist/core/components/lexical/MaxLengthPlugin.js +59 -0
  10. package/dist/core/components/lexical/SelectionBroadcaster.js +55 -56
  11. package/dist/core/components/lexical/SidebarLexicalEditor.js +327 -234
  12. package/dist/core/components/lexical/SummaryToggleGuard.js +42 -0
  13. package/dist/core/components/lexical/TextLinkPopover.js +169 -180
  14. package/dist/core/createApp.d.ts +254 -299
  15. package/dist/core/createApp.js +123 -29
  16. package/dist/core/createBlock.d.ts +5 -5
  17. package/dist/core/createBlock.js +399 -152
  18. package/dist/core/createCollection.d.ts +55 -0
  19. package/dist/core/createCollection.js +93 -0
  20. package/dist/core/createLayout.d.ts +197 -61
  21. package/dist/core/createLayout.js +114 -56
  22. package/dist/core/defineDocument.d.ts +3 -5
  23. package/dist/core/derivedRoutes.js +49 -1
  24. package/dist/core/dom.d.ts +13 -4
  25. package/dist/core/dom.js +44 -1
  26. package/dist/core/editing/BlockEditingRuntime.d.ts +16 -0
  27. package/dist/core/editing/BlockEditingRuntime.js +6 -15
  28. package/dist/core/editing/CompleteBlockEditingRuntime.js +28 -23
  29. package/dist/core/editing/createEditableBlock.d.ts +820 -565
  30. package/dist/core/editing/createEditableBlock.js +2153 -971
  31. package/dist/core/editing/referenceWrites.js +51 -0
  32. package/dist/core/editing/useLatestRecord.js +90 -0
  33. package/dist/core/hooks/useArtifactHost.js +139 -0
  34. package/dist/core/hooks/useFieldSelection.js +43 -18
  35. package/dist/core/hooks/useIsEditable.js +12 -10
  36. package/dist/core/hooks/useOverlayMessage.js +15 -19
  37. package/dist/core/lib/artifact.d.ts +21 -0
  38. package/dist/core/lib/artifact.js +154 -0
  39. package/dist/core/lib/artifactColors.js +123 -0
  40. package/dist/core/lib/artifactData.d.ts +1 -0
  41. package/dist/core/lib/artifactData.js +131 -0
  42. package/dist/core/lib/artifactHost.js +205 -0
  43. package/dist/core/lib/artifactRuntime.js +36 -0
  44. package/dist/core/lib/artifactTheme.js +57 -0
  45. package/dist/core/lib/contentType.d.ts +304 -103
  46. package/dist/core/lib/contentType.js +207 -168
  47. package/dist/core/lib/fieldTypes.js +4 -0
  48. package/dist/core/lib/iconTypes.d.ts +13 -0
  49. package/dist/core/lib/icons.d.ts +6 -0
  50. package/dist/core/lib/icons.js +126 -0
  51. package/dist/core/lib/imagePlaceholder.js +177 -0
  52. package/dist/core/lib/imageTransform.js +1 -1
  53. package/dist/core/lib/lexicalReact.d.ts +3 -1
  54. package/dist/core/lib/lexicalState.js +7 -7
  55. package/dist/core/lib/modifierFormats.js +1 -1
  56. package/dist/core/lib/previewPaused.js +9 -0
  57. package/dist/core/lib/recordScope.js +316 -0
  58. package/dist/core/lib/reference.d.ts +81 -0
  59. package/dist/core/lib/reference.js +29 -0
  60. package/dist/core/lib/textLinks.js +7 -5
  61. package/dist/core/lib/textStyles.d.ts +6 -8
  62. package/dist/core/lib/textStyles.js +5 -5
  63. package/dist/core/notFound.d.ts +7 -0
  64. package/dist/core/notFound.js +11 -0
  65. package/dist/core/pageDestinations.js +6 -3
  66. package/dist/core/recordItem.js +34 -0
  67. package/dist/core/requestContext.d.ts +26 -0
  68. package/dist/core/requestContext.js +20 -0
  69. package/dist/features/canvas/CamoxCanvas.js +1734 -0
  70. package/dist/features/canvas/CanvasBlockFrame.js +353 -0
  71. package/dist/features/canvas/CanvasBlockHeader.js +55 -0
  72. package/dist/features/canvas/CanvasLoadingScreen.js +35 -0
  73. package/dist/features/canvas/CanvasOverlays.js +254 -0
  74. package/dist/features/canvas/CanvasPageEdge.js +87 -0
  75. package/dist/features/canvas/CanvasPageFrame.js +335 -0
  76. package/dist/features/canvas/CanvasPageHeader.js +125 -0
  77. package/dist/features/canvas/CanvasPreviewPageSlot.js +103 -0
  78. package/dist/features/canvas/CanvasShelfMarker.js +255 -0
  79. package/dist/features/canvas/DerivedPagePathInput.js +238 -0
  80. package/dist/features/canvas/canvasCamera.js +229 -0
  81. package/dist/features/canvas/canvasFlight.js +104 -0
  82. package/dist/features/canvas/canvasFrameCapture.js +364 -0
  83. package/dist/features/canvas/canvasFrameDocument.js +317 -0
  84. package/dist/features/canvas/canvasFrameMode.js +53 -0
  85. package/dist/features/canvas/canvasInsertionSeams.js +44 -0
  86. package/dist/features/canvas/canvasItems.js +120 -0
  87. package/dist/features/canvas/canvasOverlayGeometry.js +240 -0
  88. package/dist/features/canvas/canvasPages.js +79 -0
  89. package/dist/features/canvas/canvasScreenSpace.js +26 -0
  90. package/dist/features/canvas/canvasSelection.js +18 -0
  91. package/dist/features/canvas/canvasStore.js +149 -0
  92. package/dist/features/canvas/canvasThumbnails.js +304 -0
  93. package/dist/features/canvas/canvasZoom.js +10 -0
  94. package/dist/features/canvas/sidebar/CanvasInspector.js +202 -0
  95. package/dist/features/canvas/sidebar/CanvasNavigator.js +226 -0
  96. package/dist/features/canvas/sidebar/CanvasSidebar.js +60 -0
  97. package/dist/features/canvas/sidebar/CanvasSidebarFrame.js +48 -0
  98. package/dist/features/canvas/sidebar/CanvasSidebarSkeleton.js +39 -0
  99. package/dist/features/canvas/sidebar/CatalogBlockInspector.js +189 -0
  100. package/dist/features/canvas/sidebar/CuratedPageInspector.js +69 -0
  101. package/dist/features/canvas/sidebar/DerivedPageInspector.js +37 -0
  102. package/dist/features/canvas/sidebar/LayoutPageBlocks.js +78 -0
  103. package/dist/features/canvas/sidebar/LayoutPageOverview.js +71 -0
  104. package/dist/features/canvas/sidebar/PageInspector.js +157 -0
  105. package/dist/features/canvas/sidebar/PageInspectorSkeleton.js +90 -0
  106. package/dist/features/canvas/sidebar/PageOverview.js +27 -0
  107. package/dist/features/canvas/sidebar/SingletonPageInspector.js +31 -0
  108. package/dist/features/canvas/useCanvasCamera.js +803 -0
  109. package/dist/features/canvas/useCanvasFrame.js +149 -0
  110. package/dist/features/canvas/useCanvasFrameInput.js +97 -0
  111. package/dist/features/canvas/useCanvasNearness.js +57 -0
  112. package/dist/features/canvas/useDiscoveredPreviewPaths.js +62 -0
  113. package/dist/features/content/CamoxContent.d.ts +2 -5
  114. package/dist/features/content/CamoxContent.js +174 -271
  115. package/dist/features/content/CollectionItemSheetContext.js +106 -0
  116. package/dist/features/content/ContentAssets.js +315 -0
  117. package/dist/features/content/ContentCollection.js +663 -0
  118. package/dist/features/content/collection-form.js +58 -0
  119. package/dist/features/content/components/AssetCard.js +101 -69
  120. package/dist/features/content/components/AssetCardSkeleton.js +4 -8
  121. package/dist/features/content/components/ContentSidebar.js +129 -18
  122. package/dist/features/content/components/ContentSidebarGroup.js +37 -0
  123. package/dist/features/content/components/DeleteCollectionItemButton.js +202 -0
  124. package/dist/features/content/components/MissingFromLocale.js +282 -0
  125. package/dist/features/content/components/UploadDropZone.js +27 -31
  126. package/dist/features/content/components/UploadProgressDrawer.js +90 -98
  127. package/dist/features/navigation/navigation.d.ts +66 -20
  128. package/dist/features/navigation/navigation.js +257 -90
  129. package/dist/features/og/defaultFonts.js +8 -8
  130. package/dist/features/og/geist-variable-ttf-base64.js +1 -1
  131. package/dist/features/og/imageResponse.d.ts +8 -0
  132. package/dist/features/og/imageResponse.js +26 -0
  133. package/dist/features/page/CuratedPageContent.js +167 -0
  134. package/dist/features/page/DerivedPageContent.js +26 -30
  135. package/dist/features/page/SharedLayoutContent.js +25 -27
  136. package/dist/features/preview/CamoxPreview.d.ts +23 -61
  137. package/dist/features/preview/CamoxPreview.js +811 -507
  138. package/dist/features/preview/EditablePageContent.js +1 -1
  139. package/dist/features/preview/EditablePageExperience.js +16 -22
  140. package/dist/features/preview/components/AddBlockDialog.js +270 -0
  141. package/dist/features/preview/components/AssetFieldEditor.js +173 -154
  142. package/dist/features/preview/components/AssetLightbox.js +194 -136
  143. package/dist/features/preview/components/AssetPickerModal.js +153 -170
  144. package/dist/features/preview/components/BlockActionsPopover.js +150 -149
  145. package/dist/features/preview/components/BlockErrorBoundary.js +8 -12
  146. package/dist/features/preview/components/BlockThumbnail.js +176 -100
  147. package/dist/features/preview/components/CanvasPreview.js +243 -0
  148. package/dist/features/preview/components/CreatePageModal.js +128 -137
  149. package/dist/features/preview/components/DebouncedFieldEditor.js +29 -33
  150. package/dist/features/preview/components/DerivedLayoutDialog.js +46 -29
  151. package/dist/features/preview/components/DrillRow.js +150 -0
  152. package/dist/features/preview/components/FieldOverlayStyles.js +33 -10
  153. package/dist/features/preview/components/FieldToolbar.js +166 -116
  154. package/dist/features/preview/components/Frame.js +108 -20
  155. package/dist/features/preview/components/IconFieldEditor.js +227 -0
  156. package/dist/features/preview/components/ItemFieldsEditor.js +238 -205
  157. package/dist/features/preview/components/LinkFieldEditor.js +135 -139
  158. package/dist/features/preview/components/Metadata.js +22 -30
  159. package/dist/features/preview/components/MobilePreviewDrawer.js +89 -108
  160. package/dist/features/preview/components/MultipleAssetFieldEditor.js +334 -246
  161. package/dist/features/preview/components/OverlayTracker.js +10 -42
  162. package/dist/features/preview/components/Overlays.js +81 -69
  163. package/dist/features/preview/components/PageInfo.js +1748 -0
  164. package/dist/features/preview/components/PageInfoSkeleton.js +51 -0
  165. package/dist/features/preview/components/PageLocationFieldset.js +112 -116
  166. package/dist/features/preview/components/PageNavigatorHeader.js +24 -0
  167. package/dist/features/preview/components/PageNicknameField.js +22 -26
  168. package/dist/features/preview/components/PagePicker.js +145 -147
  169. package/dist/features/preview/components/PageTree.js +525 -532
  170. package/dist/features/preview/components/PreviewActivation.js +28 -32
  171. package/dist/features/preview/components/PreviewPanel.js +620 -319
  172. package/dist/features/preview/components/PreviewToolbar.js +111 -340
  173. package/dist/features/preview/components/RecordCard.js +80 -0
  174. package/dist/features/preview/components/RecordCombobox.js +178 -0
  175. package/dist/features/preview/components/ReferenceFieldEditor.js +149 -0
  176. package/dist/features/preview/components/ReferenceListFieldEditor.js +432 -0
  177. package/dist/features/preview/components/RemovedBlockPlaceholder.js +95 -0
  178. package/dist/features/preview/components/RepeatableItemsList.js +125 -138
  179. package/dist/features/preview/components/SelectionEditor.js +993 -0
  180. package/dist/features/preview/components/ShikiMarkdown.js +14 -18
  181. package/dist/features/preview/components/SidebarSection.js +52 -64
  182. package/dist/features/preview/components/StudioEditingFallback.js +56 -0
  183. package/dist/features/preview/components/UnlinkAssetButton.js +104 -107
  184. package/dist/features/preview/components/blockGridNavigation.js +15 -0
  185. package/dist/features/preview/components/contentFieldSchema.js +8 -0
  186. package/dist/features/preview/components/useFieldWriter.js +200 -0
  187. package/dist/features/preview/components/useRecordView.js +383 -0
  188. package/dist/features/preview/components/useRepeatableItemActions.js +35 -37
  189. package/dist/features/preview/components/useUpdateBlockPosition.js +37 -37
  190. package/dist/features/preview/editingFrame.js +197 -0
  191. package/dist/features/preview/overlayHighlights.js +27 -0
  192. package/dist/features/preview/overlayMessages.js +72 -1
  193. package/dist/features/preview/pageRecord.js +189 -0
  194. package/dist/features/preview/previewConstants.js +6 -2
  195. package/dist/features/preview/previewPageFrame.js +95 -0
  196. package/dist/features/preview/previewPreparation.js +7 -0
  197. package/dist/features/preview/previewSelection.js +33 -59
  198. package/dist/features/preview/previewStore.js +225 -123
  199. package/dist/features/preview/referencePickerFocus.js +29 -0
  200. package/dist/features/preview/repeatableItemTargets.js +56 -0
  201. package/dist/features/preview/selectionReveal.js +21 -0
  202. package/dist/features/preview/usePreviewViewportActions.js +114 -0
  203. package/dist/features/preview/viewportContinuity.js +109 -0
  204. package/dist/features/provider/AuthenticatedCamoxProvider.js +69 -44
  205. package/dist/features/provider/CamoxProvider.d.ts +3 -6
  206. package/dist/features/provider/CamoxProvider.js +38 -50
  207. package/dist/features/provider/CoreCamoxProvider.js +71 -23
  208. package/dist/features/provider/LocalhostPreviewProvider.js +73 -73
  209. package/dist/features/provider/PreviewSignInPage.js +54 -0
  210. package/dist/features/provider/components/CamoxAppContext.js +11 -11
  211. package/dist/features/provider/components/CommandPalette.js +87 -143
  212. package/dist/features/provider/useAdminShortcuts.js +7 -11
  213. package/dist/features/routes/pageRuntime.d.ts +44 -4
  214. package/dist/features/routes/pageRuntime.js +244 -137
  215. package/dist/features/runtime/RuntimeChrome.js +117 -115
  216. package/dist/features/runtime/alternates.js +64 -0
  217. package/dist/features/runtime/analytics.d.ts +7 -0
  218. package/dist/features/runtime/analytics.js +66 -0
  219. package/dist/features/runtime/artifactSources.js +87 -0
  220. package/dist/features/runtime/editingFallback.js +20 -0
  221. package/dist/features/runtime/linkPrefetch.js +97 -0
  222. package/dist/features/runtime/livePages.js +62 -0
  223. package/dist/features/runtime/llmsTxt.js +40 -0
  224. package/dist/features/runtime/loopbackFetch.js +18 -0
  225. package/dist/features/runtime/navigationAccessibility.js +51 -0
  226. package/dist/features/runtime/navigationTarget.js +23 -2
  227. package/dist/features/runtime/pageApp.js +216 -141
  228. package/dist/features/runtime/pageBlockTypes.js +20 -0
  229. package/dist/features/runtime/pageClient.d.ts +2 -4
  230. package/dist/features/runtime/pageClient.js +18 -3
  231. package/dist/features/runtime/pageNavigation.js +254 -32
  232. package/dist/features/runtime/pageServer.d.ts +2 -4
  233. package/dist/features/runtime/pageServer.js +8 -1
  234. package/dist/features/runtime/pageViewport.js +7 -0
  235. package/dist/features/runtime/runtime.d.ts +60 -23
  236. package/dist/features/runtime/runtime.js +779 -166
  237. package/dist/features/runtime/runtimeChromeLoader.js +58 -0
  238. package/dist/features/runtime/runtimeRoutes.d.ts +19 -0
  239. package/dist/features/runtime/runtimeRoutes.js +25 -0
  240. package/dist/features/runtime/scrollRestoration.js +133 -0
  241. package/dist/features/runtime/studioApp.d.ts +4 -3
  242. package/dist/features/runtime/studioApp.js +5 -9
  243. package/dist/features/runtime/studioClient.d.ts +2 -4
  244. package/dist/features/runtime/studioClient.js +12 -3
  245. package/dist/features/runtime/studioServer.d.ts +2 -4
  246. package/dist/features/runtime/studioServer.js +6 -1
  247. package/dist/features/runtime/worker.d.ts +6 -0
  248. package/dist/features/runtime/worker.js +23 -0
  249. package/dist/features/runtime/workerRequest.js +44 -0
  250. package/dist/features/studio/CamoxStudio.d.ts +2 -6
  251. package/dist/features/studio/CamoxStudio.js +34 -49
  252. package/dist/features/studio/FollowAgentProvider.js +338 -0
  253. package/dist/features/studio/components/ChatSidebar.js +356 -0
  254. package/dist/features/studio/components/DraftsControl.js +676 -0
  255. package/dist/features/studio/components/FaviconDialog.js +318 -0
  256. package/dist/features/studio/components/LocalePicker.js +785 -0
  257. package/dist/features/studio/components/Navbar.js +123 -103
  258. package/dist/features/studio/components/ProjectMenu.js +239 -260
  259. package/dist/features/studio/components/RenameDraftDialog.js +206 -0
  260. package/dist/features/studio/components/ReviewDraftSheet.js +1472 -0
  261. package/dist/features/studio/components/ThreadComposer.js +157 -0
  262. package/dist/features/studio/components/ThreadMarkdown.js +113 -0
  263. package/dist/features/studio/components/ThreadMessages.js +270 -0
  264. package/dist/features/studio/components/UserButton.js +34 -23
  265. package/dist/features/studio/draftLabel.js +33 -0
  266. package/dist/features/studio/draftNotice.js +13 -0
  267. package/dist/features/studio/followAgent.js +250 -0
  268. package/dist/features/studio/followAgentContext.js +7 -0
  269. package/dist/features/studio/localeOptions.js +118 -0
  270. package/dist/features/studio/localeSwitch.js +19 -0
  271. package/dist/features/studio/routes.js +48 -1
  272. package/dist/features/studio/studioStore.js +64 -1
  273. package/dist/features/studio/useTheme.js +24 -27
  274. package/dist/features/vite/artifactRuntimeMinification.js +36 -0
  275. package/dist/features/vite/auth.js +1 -50
  276. package/dist/features/vite/blockBoilerplate.js +6 -5
  277. package/dist/features/vite/blockChunks.js +31 -0
  278. package/dist/features/vite/bundlerLogs.js +17 -0
  279. package/dist/features/vite/definitionsSync.js +158 -226
  280. package/dist/features/vite/devAuthentication.js +4 -16
  281. package/dist/features/vite/devSignIn.js +87 -0
  282. package/dist/features/vite/iconGeneration.js +16 -0
  283. package/dist/features/vite/layoutGeneration.js +11 -1
  284. package/dist/features/vite/publishSeededContent.js +30 -0
  285. package/dist/features/vite/routeGeneration.js +6 -7
  286. package/dist/features/vite/runtimeDev.js +80 -99
  287. package/dist/features/vite/vite.d.ts +53 -31
  288. package/dist/features/vite/vite.js +230 -116
  289. package/dist/features/vite/workerBuild.js +39 -0
  290. package/dist/hooks/use-debounced-field.js +116 -47
  291. package/dist/hooks/use-file-upload.js +114 -67
  292. package/dist/hooks/use-marquee-selection.js +32 -36
  293. package/dist/hooks/use-page-destinations.js +69 -37
  294. package/dist/lib/api-client-server.d.ts +5 -0
  295. package/dist/lib/api-client-server.js +10 -4
  296. package/dist/lib/api-client.d.ts +6 -0
  297. package/dist/lib/api-client.js +51 -16
  298. package/dist/lib/api-socket.js +17 -0
  299. package/dist/lib/auth-page-styles.js +39 -0
  300. package/dist/lib/auth.js +139 -60
  301. package/dist/lib/collection-cache.js +23 -0
  302. package/dist/lib/draft-scope.d.ts +4 -0
  303. package/dist/lib/draft-scope.js +222 -0
  304. package/dist/lib/html.js +12 -0
  305. package/dist/lib/link-pages.js +154 -0
  306. package/dist/lib/locale-path.d.ts +22 -0
  307. package/dist/lib/locale-path.js +57 -0
  308. package/dist/lib/normalized-data.js +252 -152
  309. package/dist/lib/preview-handoff.js +13 -0
  310. package/dist/lib/queries.d.ts +11 -0
  311. package/dist/lib/queries.js +71 -131
  312. package/dist/lib/studio-reads.d.ts +14 -0
  313. package/dist/lib/studio-reads.js +574 -0
  314. package/dist/lib/use-project-room.js +50 -47
  315. package/dist/lib/use-thread.js +310 -0
  316. package/dist/lib/utils.js +25 -29
  317. package/dist/lib/view-locale-context.js +22 -0
  318. package/dist/lib/view-locale.js +46 -0
  319. package/dist/package.js +5 -0
  320. package/dist/studio-overlays.css +41 -147
  321. package/dist/studio.css +2 -2
  322. package/package.json +70 -72
  323. package/skills/camox/SKILL.md +16 -5
  324. package/skills/camox/references/artifacts.md +179 -0
  325. package/skills/camox/references/block-definitions.md +98 -55
  326. package/skills/camox/references/cli-common.md +18 -6
  327. package/skills/camox/references/cli-content.md +92 -58
  328. package/skills/camox/references/cli-publishing.md +26 -0
  329. package/skills/camox/references/dom-integrations.md +27 -0
  330. package/skills/camox/references/field-styling.md +7 -7
  331. package/skills/camox/references/layout-definitions.md +16 -14
  332. package/skills/camox/references/localization.md +56 -0
  333. package/skills/camox/references/routed-layouts.md +133 -15
  334. package/skills/camox-expand/SKILL.md +69 -0
  335. package/skills/camox-expand/references/jobs.md +39 -0
  336. package/skills/camoxify/SKILL.md +38 -2
  337. package/dist/core/components/AddBlockControlBar.js +0 -78
  338. package/dist/core/hooks/useRequireDraftSource.js +0 -23
  339. package/dist/features/metadata/sitemap.d.ts +0 -8
  340. package/dist/features/metadata/sitemap.js +0 -17
  341. package/dist/features/og/imageResponse.node.d.ts +0 -12
  342. package/dist/features/og/imageResponse.node.js +0 -49
  343. package/dist/features/og/imageResponse.workerd.d.ts +0 -12
  344. package/dist/features/og/imageResponse.workerd.js +0 -40
  345. package/dist/features/page/PublishedPageContent.js +0 -205
  346. package/dist/features/page/PublishedPageExperience.js +0 -23
  347. package/dist/features/preview/DerivedPreview.js +0 -134
  348. package/dist/features/preview/commentsEnabled.js +0 -8
  349. package/dist/features/preview/components/AddBlockSidebar.js +0 -381
  350. package/dist/features/preview/components/AttachedComments.js +0 -194
  351. package/dist/features/preview/components/CommentHeader.js +0 -122
  352. package/dist/features/preview/components/CommentSidebar.js +0 -29
  353. package/dist/features/preview/components/CommentTargetQuote.js +0 -166
  354. package/dist/features/preview/components/DerivedLayoutSidebar.d.ts +0 -5
  355. package/dist/features/preview/components/DerivedLayoutSidebar.js +0 -179
  356. package/dist/features/preview/components/DerivedPageInfoSidebar.js +0 -69
  357. package/dist/features/preview/components/LeftSidebar.js +0 -68
  358. package/dist/features/preview/components/PageEditorSidebar.js +0 -563
  359. package/dist/features/preview/components/PageInfoSidebar.js +0 -1551
  360. package/dist/features/preview/components/PageNavigatorSidebar.js +0 -78
  361. package/dist/features/preview/components/PageStatusBadge.js +0 -97
  362. package/dist/features/preview/components/PeekedBlock.js +0 -217
  363. package/dist/features/preview/components/PreviewComments.js +0 -56
  364. package/dist/features/preview/components/PreviewToolbarSpacer.js +0 -43
  365. package/dist/features/preview/components/PublicationRow.js +0 -422
  366. package/dist/features/preview/components/PublishDialog.js +0 -194
  367. package/dist/features/preview/components/RightSidebar.js +0 -59
  368. package/dist/features/preview/previewCommentsStore.js +0 -115
  369. package/dist/features/preview/publication.js +0 -81
  370. package/dist/features/runtime/SharedChromeContext.js +0 -7
  371. package/dist/features/studio/components/EnvironmentMenu.js +0 -413
  372. package/dist/features/vite/appGeneration.js +0 -89
  373. package/dist/lib/view-queries.js +0 -28
  374. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/Matches.d.ts +0 -114
  375. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/RouterProvider.d.ts +0 -25
  376. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/config.d.ts +0 -1
  377. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/defer.d.ts +0 -1
  378. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/fileRoute.d.ts +0 -20
  379. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/global.d.ts +0 -8
  380. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/hash-scroll.d.ts +0 -1
  381. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/index.d.ts +0 -18
  382. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/link.d.ts +0 -161
  383. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/load-matches.d.ts +0 -6
  384. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/location.d.ts +0 -54
  385. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/lru-cache.d.ts +0 -8
  386. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/manifest.d.ts +0 -32
  387. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/new-process-route-tree.d.ts +0 -115
  388. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/not-found.d.ts +0 -1
  389. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/redirect.d.ts +0 -49
  390. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/rewrite.d.ts +0 -1
  391. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/root.d.ts +0 -6
  392. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/route.d.ts +0 -343
  393. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/routeInfo.d.ts +0 -48
  394. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/router.d.ts +0 -695
  395. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/scroll-restoration.d.ts +0 -1
  396. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/searchMiddleware.d.ts +0 -1
  397. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/searchParams.d.ts +0 -5
  398. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/RawStream.d.ts +0 -38
  399. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/seroval-plugins.d.ts +0 -1
  400. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/transformer.d.ts +0 -65
  401. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/stores.d.ts +0 -69
  402. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/structuralSharing.d.ts +0 -1
  403. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/typePrimitives.d.ts +0 -1
  404. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/useLoaderData.d.ts +0 -1
  405. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/useLoaderDeps.d.ts +0 -1
  406. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/useNavigate.d.ts +0 -10
  407. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/useParams.d.ts +0 -1
  408. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/useRouteContext.d.ts +0 -1
  409. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/useSearch.d.ts +0 -1
  410. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/utils.d.ts +0 -28
  411. package/dist/node_modules/.pnpm/@tanstack_router-core@1.168.14/node_modules/@tanstack/router-core/dist/esm/validators.d.ts +0 -49
  412. package/skills/camox/references/cli-environments.md +0 -37
@@ -1,78 +0,0 @@
1
- import { c } from "react/compiler-runtime";
2
- import * as React from "react";
3
- import { jsx, jsxs } from "react/jsx-runtime";
4
-
5
- //#region src/core/components/AddBlockControlBar.tsx
6
- const AddBlockControlBar = (t0) => {
7
- const $ = c(15);
8
- if ($[0] !== "d9366ab3e4df81ff779951fd9bd4445144714dd2fedfe4b3b0ae1e49c65112b5") {
9
- for (let $i = 0; $i < 15; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
10
- $[0] = "d9366ab3e4df81ff779951fd9bd4445144714dd2fedfe4b3b0ae1e49c65112b5";
11
- }
12
- const { position, hidden, onClick, onMouseLeave } = t0;
13
- const [isExpanded, setIsExpanded] = React.useState(false);
14
- const t1 = hidden || void 0;
15
- let t2;
16
- let t3;
17
- if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
18
- t2 = () => setIsExpanded(true);
19
- t3 = () => setIsExpanded(false);
20
- $[1] = t2;
21
- $[2] = t3;
22
- } else {
23
- t2 = $[1];
24
- t3 = $[2];
25
- }
26
- const t4 = isExpanded || void 0;
27
- let t5;
28
- if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
29
- t5 = /* @__PURE__ */ jsx("span", {
30
- style: { lineHeight: 1 },
31
- children: "+"
32
- });
33
- $[3] = t5;
34
- } else t5 = $[3];
35
- let t6;
36
- if ($[4] !== isExpanded) {
37
- t6 = isExpanded && /* @__PURE__ */ jsx("span", { children: "Add block" });
38
- $[4] = isExpanded;
39
- $[5] = t6;
40
- } else t6 = $[5];
41
- let t7;
42
- if ($[6] !== onClick || $[7] !== t4 || $[8] !== t6) {
43
- t7 = /* @__PURE__ */ jsx("div", {
44
- className: "camox-add-block-hitarea",
45
- onMouseEnter: t2,
46
- onMouseLeave: t3,
47
- children: /* @__PURE__ */ jsxs("button", {
48
- className: "camox-add-block-button",
49
- "data-camox-expanded": t4,
50
- onClick,
51
- children: [t5, t6]
52
- })
53
- });
54
- $[6] = onClick;
55
- $[7] = t4;
56
- $[8] = t6;
57
- $[9] = t7;
58
- } else t7 = $[9];
59
- let t8;
60
- if ($[10] !== onMouseLeave || $[11] !== position || $[12] !== t1 || $[13] !== t7) {
61
- t8 = /* @__PURE__ */ jsx("div", {
62
- className: "camox-add-block",
63
- "data-camox-position": position,
64
- "data-camox-hidden": t1,
65
- onMouseLeave,
66
- children: t7
67
- });
68
- $[10] = onMouseLeave;
69
- $[11] = position;
70
- $[12] = t1;
71
- $[13] = t7;
72
- $[14] = t8;
73
- } else t8 = $[14];
74
- return t8;
75
- };
76
-
77
- //#endregion
78
- export { AddBlockControlBar };
@@ -1,23 +0,0 @@
1
- import { previewStore, selectPreviewSource } from "../../features/preview/previewStore.js";
2
- import { c } from "react/compiler-runtime";
3
-
4
- //#region src/core/hooks/useRequireDraftSource.ts
5
- /**
6
- * Ignore stale editor callbacks after switching to live preview.
7
- * Draft editing is guaranteed by the store's mode; this guard also covers
8
- * callbacks from hidden controls and edits that finish asynchronously.
9
- */
10
- function useRequireDraftSource() {
11
- const $ = c(1);
12
- if ($[0] !== "cb874573187dc3b9520288b70786314b287b85d7bd338855d2b28db5ee7c09c2") {
13
- for (let $i = 0; $i < 1; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
14
- $[0] = "cb874573187dc3b9520288b70786314b287b85d7bd338855d2b28db5ee7c09c2";
15
- }
16
- return _temp;
17
- }
18
- function _temp() {
19
- return selectPreviewSource(previewStore.getSnapshot()) === "draft";
20
- }
21
-
22
- //#endregion
23
- export { useRequireDraftSource };
@@ -1,8 +0,0 @@
1
- //#region src/features/metadata/sitemap.d.ts
2
- type SitemapEntry = {
3
- loc: string;
4
- lastmod: string;
5
- };
6
- declare function generateSitemap(origin: string): Promise<SitemapEntry[]>;
7
- //#endregion
8
- export { SitemapEntry, generateSitemap };
@@ -1,17 +0,0 @@
1
- import { createORPCClient } from "@orpc/client";
2
- import { RPCLink } from "@orpc/client/fetch";
3
-
4
- //#region src/features/metadata/sitemap.ts
5
- async function generateSitemap(origin) {
6
- const headers = { "x-environment-name": __CAMOX_ENVIRONMENT_NAME__ };
7
- return (await createORPCClient(new RPCLink({
8
- url: `${__CAMOX_API_URL__}/rpc`,
9
- headers
10
- })).pages.listBySlug({ projectSlug: __CAMOX_PROJECT_SLUG__ })).map((page) => ({
11
- loc: `${origin}${page.fullPath}`,
12
- lastmod: new Date(page.updatedAt).toISOString()
13
- }));
14
- }
15
-
16
- //#endregion
17
- export { generateSitemap };
@@ -1,12 +0,0 @@
1
- import { ReactNode } from "react";
2
- import { ImageResponse as ImageResponse$1 } from "@takumi-rs/image-response/wasm";
3
-
4
- //#region src/features/og/imageResponse.node.d.ts
5
- type WasmCtorOptions = ConstructorParameters<typeof ImageResponse$1>[1];
6
- /** Same shape as the wasm options minus the `renderer` field we inject ourselves. */
7
- type ImageResponseOptions = Omit<WasmCtorOptions, "renderer" | "module">;
8
- declare class ImageResponse extends ImageResponse$1 {
9
- constructor(component: ReactNode, options?: ImageResponseOptions);
10
- }
11
- //#endregion
12
- export { ImageResponse, ImageResponseOptions };
@@ -1,49 +0,0 @@
1
- import { DEFAULT_FONTS } from "./defaultFonts.js";
2
- import { ImageResponse as ImageResponse$1 } from "@takumi-rs/image-response/wasm";
3
- import wasmModule from "@takumi-rs/wasm/next";
4
- import { Renderer, initSync } from "@takumi-rs/wasm/no-bundler";
5
-
6
- //#region src/features/og/imageResponse.node.ts
7
- /**
8
- * Node / Bun / Nitro entry — resolves via the `default` exports condition.
9
- *
10
- * Uses the same wasm renderer as workerd (one engine across runtimes — easier
11
- * to reason about, identical output, avoids pulling in NAPI bindings on Node
12
- * deploys). The split between this file and `imageResponse.workerd.ts` isn't
13
- * about which engine to use any more — it's only about *how* the wasm module
14
- * gets loaded:
15
- *
16
- * - Here, we import the wasm module and `initSync` it ourselves before
17
- * constructing a `Renderer`. The static `?module` import lets Nitro emit
18
- * the asset into the deployment instead of relying on a runtime
19
- * `require.resolve` that dependency tracing cannot reliably discover.
20
- *
21
- * - In `imageResponse.workerd.ts` there's no filesystem; instead we pass a
22
- * `WebAssembly.Module` reference via `?module` import and let the
23
- * ImageResponse stream lazy-init the wasm.
24
- *
25
- * We use the BYO-renderer path of `@takumi-rs/image-response/wasm` so the
26
- * `module:` option isn't needed here — the renderer is already alive.
27
- */
28
- /**
29
- * Resolve and initialise the wasm module once at module load. `initSync`
30
- * compiles the wasm and wires up the JS bindings; subsequent `new Renderer()`
31
- * calls are cheap.
32
- */
33
- initSync({ module: wasmModule });
34
- /**
35
- * Module-scoped singleton — building the renderer compiles the wasm module
36
- * and loads Geist; not free, and there's no reason to do it per request.
37
- */
38
- const renderer = new Renderer({ fonts: DEFAULT_FONTS });
39
- var ImageResponse = class extends ImageResponse$1 {
40
- constructor(component, options) {
41
- super(component, {
42
- ...options,
43
- renderer
44
- });
45
- }
46
- };
47
-
48
- //#endregion
49
- export { ImageResponse };
@@ -1,12 +0,0 @@
1
- import { ReactNode } from "react";
2
- import { ImageResponse as ImageResponse$1 } from "@takumi-rs/image-response/wasm";
3
-
4
- //#region src/features/og/imageResponse.workerd.d.ts
5
- type WasmCtorOptions = ConstructorParameters<typeof ImageResponse$1>[1];
6
- /** Same shape as the wasm options minus the `module` field we inject ourselves. */
7
- type ImageResponseOptions = Omit<WasmCtorOptions, "module">;
8
- declare class ImageResponse extends ImageResponse$1 {
9
- constructor(component: ReactNode, options?: ImageResponseOptions);
10
- }
11
- //#endregion
12
- export { ImageResponse, ImageResponseOptions };
@@ -1,40 +0,0 @@
1
- import { DEFAULT_FONTS } from "./defaultFonts.js";
2
- import { ImageResponse as ImageResponse$1 } from "@takumi-rs/image-response/wasm";
3
- import wasmModule from "@takumi-rs/wasm/next";
4
-
5
- //#region src/features/og/imageResponse.workerd.ts
6
- /**
7
- * workerd / worker / deno entry — resolves via the matching exports condition.
8
- *
9
- * Uses the same wasm renderer as the node wrapper (single engine across
10
- * runtimes). The split between this file and `imageResponse.node.ts` is only
11
- * about how the wasm module gets loaded — see that file for the full
12
- * rationale.
13
- *
14
- * Here there's no filesystem: `@takumi-rs/wasm/next` resolves to the wasm
15
- * file with the `?module` query, which the Cloudflare Workers bundler
16
- * (Wrangler / `@cloudflare/vite-plugin` — matches `\.wasm(\?module)?$`) and
17
- * Next.js / Vercel both recognise as a `WebAssembly.Module` reference.
18
- * `@takumi-rs/image-response/wasm` then lazy-inits the wasm inside its
19
- * response stream.
20
- *
21
- * Geist is bundled in `./defaultFonts` to compensate for the wasm renderer
22
- * shipping with no embedded fonts.
23
- *
24
- * We wrap the wasm class so the SDK call site doesn't have to know which
25
- * runtime it's on: `new ImageResponse(jsx, { width, height })` works in
26
- * either case.
27
- */
28
- var ImageResponse = class extends ImageResponse$1 {
29
- constructor(component, options) {
30
- const merged = {
31
- ...options,
32
- module: wasmModule,
33
- fonts: options && "fonts" in options && options.fonts ? options.fonts : DEFAULT_FONTS
34
- };
35
- super(component, merged);
36
- }
37
- };
38
-
39
- //#endregion
40
- export { ImageResponse };
@@ -1,205 +0,0 @@
1
- import { useLocation } from "../navigation/navigation.js";
2
- import { useProjectSlug } from "../../lib/auth.js";
3
- import { getApiClient } from "../../lib/api-client.js";
4
- import { viewBlockQueries } from "../../lib/view-queries.js";
5
- import { NormalizedDataProvider, usePageBlocks } from "../../lib/normalized-data.js";
6
- import { BlockErrorBoundary } from "../preview/components/BlockErrorBoundary.js";
7
- import { useCamoxApp } from "../provider/components/CamoxAppContext.js";
8
- import { SharedLayoutContent } from "./SharedLayoutContent.js";
9
- import { c } from "react/compiler-runtime";
10
- import { useSuspenseQuery } from "@tanstack/react-query";
11
- import { jsx } from "react/jsx-runtime";
12
- import { queryKeys } from "@camox/api-contract/query-keys";
13
-
14
- //#region src/features/page/PublishedPageContent.tsx
15
- function pageStructureQueryFn(path, projectSlug, source) {
16
- return () => getApiClient().pages.getStructure({
17
- path,
18
- projectSlug,
19
- source
20
- });
21
- }
22
- function PublishedBlock(t0) {
23
- const $ = c(21);
24
- if ($[0] !== "d19cbe1f618268fc303b4603ba9a175ff1c94ca8d6fa7a8f779112900a3487f5") {
25
- for (let $i = 0; $i < 21; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
26
- $[0] = "d19cbe1f618268fc303b4603ba9a175ff1c94ca8d6fa7a8f779112900a3487f5";
27
- }
28
- const { blockId, mode, source } = t0;
29
- let t1;
30
- if ($[1] !== blockId || $[2] !== source) {
31
- t1 = viewBlockQueries.get(blockId, source);
32
- $[1] = blockId;
33
- $[2] = source;
34
- $[3] = t1;
35
- } else t1 = $[3];
36
- const { data } = useSuspenseQuery(t1);
37
- const camoxApp = useCamoxApp();
38
- let t2;
39
- if ($[4] !== camoxApp || $[5] !== data.block.type) {
40
- t2 = camoxApp.getBlockById(data.block.type);
41
- $[4] = camoxApp;
42
- $[5] = data.block.type;
43
- $[6] = t2;
44
- } else t2 = $[6];
45
- const blockDef = t2;
46
- if (!blockDef) return null;
47
- const t3 = data.files;
48
- const t4 = data.repeatableItems;
49
- const T0 = blockDef._internal.Component;
50
- const t5 = data.block.id;
51
- const t6 = data.block.type;
52
- const t7 = data.block.content;
53
- const t8 = data.block.settings;
54
- const t9 = String(data.block.position);
55
- let t10;
56
- if ($[7] !== data.block.id || $[8] !== data.block.type || $[9] !== t7 || $[10] !== t8 || $[11] !== t9) {
57
- t10 = {
58
- _id: t5,
59
- type: t6,
60
- content: t7,
61
- settings: t8,
62
- position: t9
63
- };
64
- $[7] = data.block.id;
65
- $[8] = data.block.type;
66
- $[9] = t7;
67
- $[10] = t8;
68
- $[11] = t9;
69
- $[12] = t10;
70
- } else t10 = $[12];
71
- let t11;
72
- if ($[13] !== blockDef._internal.Component || $[14] !== mode || $[15] !== t10) {
73
- t11 = /* @__PURE__ */ jsx(T0, {
74
- blockData: t10,
75
- mode,
76
- showAddBlockTop: false,
77
- showAddBlockBottom: false
78
- });
79
- $[13] = blockDef._internal.Component;
80
- $[14] = mode;
81
- $[15] = t10;
82
- $[16] = t11;
83
- } else t11 = $[16];
84
- let t12;
85
- if ($[17] !== data.files || $[18] !== data.repeatableItems || $[19] !== t11) {
86
- t12 = /* @__PURE__ */ jsx(NormalizedDataProvider, {
87
- files: t3,
88
- repeatableItems: t4,
89
- children: t11
90
- });
91
- $[17] = data.files;
92
- $[18] = data.repeatableItems;
93
- $[19] = t11;
94
- $[20] = t12;
95
- } else t12 = $[20];
96
- return t12;
97
- }
98
- function PublishedPageContent(t0) {
99
- const $ = c(30);
100
- if ($[0] !== "d19cbe1f618268fc303b4603ba9a175ff1c94ca8d6fa7a8f779112900a3487f5") {
101
- for (let $i = 0; $i < 30; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
102
- $[0] = "d19cbe1f618268fc303b4603ba9a175ff1c94ca8d6fa7a8f779112900a3487f5";
103
- }
104
- const { source } = t0;
105
- const { pathname } = useLocation();
106
- const projectSlug = useProjectSlug();
107
- const camoxApp = useCamoxApp();
108
- let t1;
109
- if ($[1] !== pathname || $[2] !== source) {
110
- t1 = queryKeys.pages.getByPath(pathname, source);
111
- $[1] = pathname;
112
- $[2] = source;
113
- $[3] = t1;
114
- } else t1 = $[3];
115
- let t2;
116
- if ($[4] !== pathname || $[5] !== projectSlug || $[6] !== source) {
117
- t2 = pageStructureQueryFn(pathname, projectSlug, source);
118
- $[4] = pathname;
119
- $[5] = projectSlug;
120
- $[6] = source;
121
- $[7] = t2;
122
- } else t2 = $[7];
123
- let t3;
124
- if ($[8] !== t1 || $[9] !== t2) {
125
- t3 = {
126
- queryKey: t1,
127
- queryFn: t2,
128
- staleTime: Infinity
129
- };
130
- $[8] = t1;
131
- $[9] = t2;
132
- $[10] = t3;
133
- } else t3 = $[10];
134
- const { data: pageData } = useSuspenseQuery(t3);
135
- const { pageBlocks, beforeBlocks, afterBlocks, layoutFiles, layoutItems } = usePageBlocks(pageData, source);
136
- let t4;
137
- if ($[11] !== camoxApp || $[12] !== pageData.layout) {
138
- t4 = pageData.layout ? camoxApp.getLayoutById(pageData.layout.layoutId) : void 0;
139
- $[11] = camoxApp;
140
- $[12] = pageData.layout;
141
- $[13] = t4;
142
- } else t4 = $[13];
143
- const layout = t4;
144
- let t5;
145
- if ($[14] !== pageBlocks || $[15] !== source) {
146
- let t6;
147
- if ($[17] !== source) {
148
- t6 = (block) => /* @__PURE__ */ jsx(BlockErrorBoundary, {
149
- blockId: block.id,
150
- blockType: block.type,
151
- children: /* @__PURE__ */ jsx(PublishedBlock, {
152
- blockId: block.id,
153
- mode: "site",
154
- source
155
- })
156
- }, block.id);
157
- $[17] = source;
158
- $[18] = t6;
159
- } else t6 = $[18];
160
- t5 = pageBlocks.map(t6);
161
- $[14] = pageBlocks;
162
- $[15] = source;
163
- $[16] = t5;
164
- } else t5 = $[16];
165
- const pageBlocksContent = t5;
166
- if (!layout) {
167
- let t6;
168
- if ($[19] !== pageBlocksContent) {
169
- t6 = /* @__PURE__ */ jsx("main", {
170
- className: "flex min-h-screen flex-col",
171
- children: pageBlocksContent
172
- });
173
- $[19] = pageBlocksContent;
174
- $[20] = t6;
175
- } else t6 = $[20];
176
- return t6;
177
- }
178
- let t6;
179
- if ($[21] !== afterBlocks || $[22] !== beforeBlocks) {
180
- t6 = [...beforeBlocks, ...afterBlocks];
181
- $[21] = afterBlocks;
182
- $[22] = beforeBlocks;
183
- $[23] = t6;
184
- } else t6 = $[23];
185
- let t7;
186
- if ($[24] !== layout || $[25] !== layoutFiles || $[26] !== layoutItems || $[27] !== pageBlocksContent || $[28] !== t6) {
187
- t7 = /* @__PURE__ */ jsx(SharedLayoutContent, {
188
- layout,
189
- blocks: t6,
190
- files: layoutFiles,
191
- repeatableItems: layoutItems,
192
- children: pageBlocksContent
193
- });
194
- $[24] = layout;
195
- $[25] = layoutFiles;
196
- $[26] = layoutItems;
197
- $[27] = pageBlocksContent;
198
- $[28] = t6;
199
- $[29] = t7;
200
- } else t7 = $[29];
201
- return t7;
202
- }
203
-
204
- //#endregion
205
- export { PublishedPageContent };
@@ -1,23 +0,0 @@
1
- import { PublishedPageContent } from "./PublishedPageContent.js";
2
- import { c } from "react/compiler-runtime";
3
- import { jsx } from "react/jsx-runtime";
4
-
5
- //#region src/features/page/PublishedPageExperience.tsx
6
- function PublishedPageExperience(t0) {
7
- const $ = c(3);
8
- if ($[0] !== "f8c4ab62f3391b7d7d7c339075d7595002caf53b46af25469e17c7fecd4d7d52") {
9
- for (let $i = 0; $i < 3; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
10
- $[0] = "f8c4ab62f3391b7d7d7c339075d7595002caf53b46af25469e17c7fecd4d7d52";
11
- }
12
- const { source } = t0;
13
- let t1;
14
- if ($[1] !== source) {
15
- t1 = /* @__PURE__ */ jsx(PublishedPageContent, { source });
16
- $[1] = source;
17
- $[2] = t1;
18
- } else t1 = $[2];
19
- return t1;
20
- }
21
-
22
- //#endregion
23
- export { PublishedPageExperience };
@@ -1,134 +0,0 @@
1
- import { useIsAuthenticated, useProjectSlug } from "../../lib/auth.js";
2
- import { getApiClient } from "../../lib/api-client.js";
3
- import { seedBlockCaches } from "../../lib/normalized-data.js";
4
- import { previewStore, selectPreviewSource } from "./previewStore.js";
5
- import { PreviewShell } from "./CamoxPreview.js";
6
- import { DerivedPageContent } from "../page/DerivedPageContent.js";
7
- import { c } from "react/compiler-runtime";
8
- import { useQueryClient, useSuspenseQuery } from "@tanstack/react-query";
9
- import { jsx } from "react/jsx-runtime";
10
- import { useSelector } from "@xstate/store-react";
11
- import { queryKeys } from "@camox/api-contract/query-keys";
12
-
13
- //#region src/features/preview/DerivedPreview.tsx
14
- function DerivedPreview(props) {
15
- const $ = c(5);
16
- if ($[0] !== "b948df7cf2e5c6cd498f94bb7b9f2055507563755e12fa92cc29001f25ecad40") {
17
- for (let $i = 0; $i < 5; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
18
- $[0] = "b948df7cf2e5c6cd498f94bb7b9f2055507563755e12fa92cc29001f25ecad40";
19
- }
20
- if (!useIsAuthenticated()) {
21
- let t0;
22
- if ($[1] !== props) {
23
- t0 = /* @__PURE__ */ jsx(DerivedPageContent, { ...props });
24
- $[1] = props;
25
- $[2] = t0;
26
- } else t0 = $[2];
27
- return t0;
28
- }
29
- let t0;
30
- if ($[3] !== props) {
31
- t0 = /* @__PURE__ */ jsx(AuthenticatedDerivedPreview, { ...props });
32
- $[3] = props;
33
- $[4] = t0;
34
- } else t0 = $[4];
35
- return t0;
36
- }
37
- function AuthenticatedDerivedPreview(t0) {
38
- const $ = c(26);
39
- if ($[0] !== "b948df7cf2e5c6cd498f94bb7b9f2055507563755e12fa92cc29001f25ecad40") {
40
- for (let $i = 0; $i < 26; $i += 1) $[$i] = Symbol.for("react.memo_cache_sentinel");
41
- $[0] = "b948df7cf2e5c6cd498f94bb7b9f2055507563755e12fa92cc29001f25ecad40";
42
- }
43
- const { camoxApp, derived, source } = t0;
44
- const previewSource = useSelector(previewStore, selectPreviewSource);
45
- const projectSlug = useProjectSlug();
46
- const queryClient = useQueryClient();
47
- let t1;
48
- if ($[1] !== derived.layout.id || $[2] !== previewSource || $[3] !== projectSlug) {
49
- t1 = [
50
- ...queryKeys.layouts.all,
51
- "get",
52
- projectSlug,
53
- derived.layout.id,
54
- previewSource
55
- ];
56
- $[1] = derived.layout.id;
57
- $[2] = previewSource;
58
- $[3] = projectSlug;
59
- $[4] = t1;
60
- } else t1 = $[4];
61
- let t2;
62
- if ($[5] !== derived.layoutId || $[6] !== previewSource || $[7] !== projectSlug || $[8] !== queryClient) {
63
- t2 = async () => {
64
- const result = await getApiClient().layouts.get({
65
- projectSlug,
66
- layoutId: derived.layoutId,
67
- source: previewSource
68
- });
69
- seedBlockCaches(queryClient, result, previewSource);
70
- return result.layout;
71
- };
72
- $[5] = derived.layoutId;
73
- $[6] = previewSource;
74
- $[7] = projectSlug;
75
- $[8] = queryClient;
76
- $[9] = t2;
77
- } else t2 = $[9];
78
- const t3 = previewSource === source ? derived.layout : void 0;
79
- let t4;
80
- if ($[10] !== t1 || $[11] !== t2 || $[12] !== t3) {
81
- t4 = {
82
- queryKey: t1,
83
- queryFn: t2,
84
- initialData: t3,
85
- staleTime: 0
86
- };
87
- $[10] = t1;
88
- $[11] = t2;
89
- $[12] = t3;
90
- $[13] = t4;
91
- } else t4 = $[13];
92
- const { data: layout } = useSuspenseQuery(t4);
93
- const t5 = layout.livePublishedCheckpointId != null;
94
- let t6;
95
- if ($[14] !== derived || $[15] !== layout) {
96
- t6 = {
97
- ...derived,
98
- layout
99
- };
100
- $[14] = derived;
101
- $[15] = layout;
102
- $[16] = t6;
103
- } else t6 = $[16];
104
- let t7;
105
- if ($[17] !== camoxApp || $[18] !== previewSource || $[19] !== t6) {
106
- t7 = /* @__PURE__ */ jsx(DerivedPageContent, {
107
- camoxApp,
108
- derived: t6,
109
- source: previewSource
110
- });
111
- $[17] = camoxApp;
112
- $[18] = previewSource;
113
- $[19] = t6;
114
- $[20] = t7;
115
- } else t7 = $[20];
116
- let t8;
117
- if ($[21] !== derived.layoutId || $[22] !== layout || $[23] !== t5 || $[24] !== t7) {
118
- t8 = /* @__PURE__ */ jsx(PreviewShell, {
119
- hasLiveVersion: t5,
120
- derivedLayoutId: derived.layoutId,
121
- derivedLayout: layout,
122
- children: t7
123
- });
124
- $[21] = derived.layoutId;
125
- $[22] = layout;
126
- $[23] = t5;
127
- $[24] = t7;
128
- $[25] = t8;
129
- } else t8 = $[25];
130
- return t8;
131
- }
132
-
133
- //#endregion
134
- export { DerivedPreview };
@@ -1,8 +0,0 @@
1
- //#region src/features/preview/commentsEnabled.ts
2
- /** Opt-in prototype flag, replaced by the Camox Vite plugin in both client and SSR builds. */
3
- function areCommentsEnabled() {
4
- return typeof __CAMOX_ENABLE_COMMENTS__ !== "undefined" && __CAMOX_ENABLE_COMMENTS__;
5
- }
6
-
7
- //#endregion
8
- export { areCommentsEnabled };