@fuma-content/studio 1.0.0 → 1.0.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.
- package/build/client/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/build/client/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/build/client/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/build/client/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/build/client/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/build/client/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/build/client/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/build/client/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/build/client/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/build/client/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/build/client/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/build/client/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/build/client/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/build/client/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/build/client/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/build/client/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/build/client/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/build/client/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/build/client/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/build/client/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/build/client/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/build/client/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/build/client/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/build/client/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/build/client/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/build/client/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/build/client/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/build/client/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/build/client/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/build/client/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/build/client/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/build/client/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/build/client/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/build/client/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/build/client/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/build/client/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/build/client/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/build/client/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/build/client/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/build/client/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/build/client/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/build/client/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/build/client/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/build/client/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/build/client/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/build/client/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/build/client/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/build/client/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/build/client/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/build/client/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/build/client/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/build/client/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/build/client/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/build/client/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/build/client/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/build/client/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/build/client/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/build/client/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/build/client/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/build/client/assets/QueryClientProvider-DqiXnN2L.js +1 -0
- package/build/client/assets/actions-DkbV2Z0p.js +1 -0
- package/build/client/assets/actions-DpkI7OTF.js +1 -0
- package/build/client/assets/badge-CZkdLoIP.js +1 -0
- package/build/client/assets/button-Bm94vje1.js +41 -0
- package/build/client/assets/client-BWBqEatf.js +1 -0
- package/build/client/assets/client-Crg-pMcu.js +1 -0
- package/build/client/assets/client-DVneG3Rq.css +1 -0
- package/build/client/assets/client-OSVRoCKH.js +569 -0
- package/build/client/assets/dropdown-menu-EF-sTINr.js +1 -0
- package/build/client/assets/entry.rsc-D51PwnQL.js +1 -0
- package/build/client/assets/index-BdrDVoE8.js +1 -0
- package/build/client/assets/index-BpILsqFO.js +1 -0
- package/build/client/assets/index-Bx93mXy1.js +11 -0
- package/build/client/assets/index-CQRgqbuL.js +1 -0
- package/build/client/assets/index-DOs5iMXj.js +1 -0
- package/build/client/assets/index-DTzAH5JX.js +1 -0
- package/build/client/assets/layout-CnpYRqF0.js +1 -0
- package/build/client/assets/mdx-BNErtsK6.js +1 -0
- package/build/client/assets/page-DOzl4Kpa.js +1 -0
- package/build/client/assets/page-uNpJU_rv.js +1 -0
- package/build/client/assets/query-z9oLNeTD.js +1 -0
- package/build/client/assets/react-B8--K7an.js +10 -0
- package/build/client/assets/root-B_CXTQpA.js +1 -0
- package/build/client/assets/root-D3NoAGI1.js +1 -0
- package/build/client/assets/root-z8crlXSh.css +1 -0
- package/build/client/assets/route-DVneG3Rq.css +1 -0
- package/build/client/assets/router-a9jyj9wf.js +10 -0
- package/build/client/assets/separator-tWFpvpUX.js +1 -0
- package/build/client/assets/sidebar-BBYit8gY.js +12 -0
- package/build/client/assets/site-header-DQkKe-WA.js +1 -0
- package/build/client/assets/spinner-BdPhtfsc.js +1 -0
- package/build/client/assets/tooltip-Dvh-iHDG.js +16 -0
- package/build/client/assets/use-sync-ZgcwUdu_.js +9 -0
- package/build/client/assets/yaml-Cloe7OVn.js +32 -0
- package/build/server/__ssr_build/__vite_rsc_assets_manifest.js +268 -0
- package/build/server/__ssr_build/assets/QueryClientProvider-DlvBH3OQ.js +30 -0
- package/build/server/__ssr_build/assets/actions-B50-3n-a.js +63 -0
- package/build/server/__ssr_build/assets/actions-BFtCTvOL.js +21 -0
- package/{src/components/ui/badge.tsx → build/server/__ssr_build/assets/badge-DYFvBSp8.js} +23 -28
- package/build/server/__ssr_build/assets/button-C_-b_vqm.js +4098 -0
- package/build/server/__ssr_build/assets/client--HXec13w.js +130 -0
- package/build/server/__ssr_build/assets/client-BqW9rGyi.js +116885 -0
- package/build/server/__ssr_build/assets/client-CU90j0R8.js +154 -0
- package/build/server/__ssr_build/assets/dropdown-menu-D2YyT3lP.js +1312 -0
- package/build/server/__ssr_build/assets/entry.rsc-Cg_DxYkh.js +12 -0
- package/build/server/__ssr_build/assets/index-B-gno69w.js +58 -0
- package/build/server/__ssr_build/assets/index-DBc0nhEL.js +288 -0
- package/build/server/__ssr_build/assets/index-Dtw6X3NW.js +1092 -0
- package/build/server/__ssr_build/assets/index-DvVNShHF.js +86 -0
- package/build/server/__ssr_build/assets/index-PpqpVA51.js +612 -0
- package/build/server/__ssr_build/assets/layout-CPnSx9PI.js +454 -0
- package/build/server/__ssr_build/assets/mdx-bmeV1kyx.js +44 -0
- package/build/server/__ssr_build/assets/page-BwoghW3K.js +38 -0
- package/build/server/__ssr_build/assets/page-HxttullC.js +89 -0
- package/build/server/__ssr_build/assets/query-C1_xUNXy.js +1975 -0
- package/build/server/__ssr_build/assets/root-CS7F-km4.js +16 -0
- package/build/server/__ssr_build/assets/root-D-Y-rGw5.js +73 -0
- package/build/server/__ssr_build/assets/separator-8UA_ceSq.js +49 -0
- package/build/server/__ssr_build/assets/sidebar-BzNOZeBO.js +13194 -0
- package/build/server/__ssr_build/assets/site-header-CXHKSzqk.js +13 -0
- package/build/server/__ssr_build/assets/spinner-BXcLlTNs.js +1291 -0
- package/build/server/__ssr_build/assets/tooltip-DZ4WdJt-.js +9553 -0
- package/build/server/__ssr_build/assets/use-sync-TRS0zL-Y.js +3404 -0
- package/build/server/__ssr_build/assets/yaml-BEdFfhvc.js +63 -0
- package/build/server/__ssr_build/index.js +36076 -0
- package/build/server/__vite_rsc_assets_manifest.js +268 -0
- package/build/server/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/build/server/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/build/server/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/build/server/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/build/server/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/build/server/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/build/server/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/build/server/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/build/server/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/build/server/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/build/server/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/build/server/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/build/server/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/build/server/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/build/server/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/build/server/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/build/server/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/build/server/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/build/server/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/build/server/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/build/server/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/build/server/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/build/server/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/build/server/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/build/server/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/build/server/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/build/server/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/build/server/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/build/server/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/build/server/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/build/server/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/build/server/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/build/server/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/build/server/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/build/server/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/build/server/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/build/server/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/build/server/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/build/server/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/build/server/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/build/server/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/build/server/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/build/server/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/build/server/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/build/server/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/build/server/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/build/server/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/build/server/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/build/server/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/build/server/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/build/server/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/build/server/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/build/server/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/build/server/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/build/server/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/build/server/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/build/server/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/build/server/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/build/server/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/build/server/assets/actions-C92yn6jE.js +61 -0
- package/build/server/assets/actions-CWWFIcb1.js +46 -0
- package/build/server/assets/actions-DZdN0IBq.js +73 -0
- package/build/server/assets/client-BdxXy6rH.js +13 -0
- package/build/server/assets/client-DLzFPnCR.js +13 -0
- package/build/server/assets/config-Cb909uq6.js +257 -0
- package/build/server/assets/index-X49ifkk3.js +9 -0
- package/build/server/assets/jsx-runtime.react-server-D3We4JeM.js +324 -0
- package/build/server/assets/layout-CRw_6FCt.js +2071 -0
- package/build/server/assets/page-BcrsPZbM.js +9 -0
- package/build/server/assets/page-zlF_Ew1s.js +72 -0
- package/build/server/assets/root-CVOXO6T9.js +23 -0
- package/build/server/assets/root-dGb6ch_9.js +38 -0
- package/build/server/assets/root-z8crlXSh.css +1 -0
- package/build/server/assets/route-DVneG3Rq.css +1 -0
- package/build/server/assets/route-Ds0B4hTo.js +44 -0
- package/build/server/assets/route-DvwlfKZg.js +21 -0
- package/build/server/assets/route-o-6k10r9.js +70774 -0
- package/build/server/index.js +17032 -0
- package/dist/bin/cli.d.mts +1 -0
- package/dist/bin/cli.mjs +71 -0
- package/dist/bin.mjs +14 -40
- package/dist/package.mjs +1 -1
- package/package.json +33 -32
- package/dist/index.d.mts +0 -52
- package/dist/index.mjs +0 -67
- package/dist/mdx/actions.mjs +0 -32
- package/dist/mdx/client.mjs +0 -167
- package/dist/src/components/code-editor/mdx.lazy.mjs +0 -19
- package/dist/src/components/code-editor/mdx.mjs +0 -44
- package/dist/src/components/code-editor/yaml.lazy.mjs +0 -22
- package/dist/src/components/code-editor/yaml.mjs +0 -63
- package/dist/src/components/editor/editor-base-kit.mjs +0 -41
- package/dist/src/components/editor/editor-kit.mjs +0 -73
- package/dist/src/components/editor/md.mjs +0 -42
- package/dist/src/components/editor/plugins/ai-kit.mjs +0 -68
- package/dist/src/components/editor/plugins/align-base-kit.mjs +0 -28
- package/dist/src/components/editor/plugins/align-kit.mjs +0 -30
- package/dist/src/components/editor/plugins/autoformat-kit.mjs +0 -214
- package/dist/src/components/editor/plugins/basic-blocks-base-kit.mjs +0 -22
- package/dist/src/components/editor/plugins/basic-blocks-kit.mjs +0 -51
- package/dist/src/components/editor/plugins/basic-marks-base-kit.mjs +0 -20
- package/dist/src/components/editor/plugins/basic-marks-kit.mjs +0 -28
- package/dist/src/components/editor/plugins/block-menu-kit.mjs +0 -11
- package/dist/src/components/editor/plugins/block-placeholder-kit.mjs +0 -14
- package/dist/src/components/editor/plugins/block-selection-kit.mjs +0 -48
- package/dist/src/components/editor/plugins/callout-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/callout-kit.mjs +0 -10
- package/dist/src/components/editor/plugins/code-block-base-kit.mjs +0 -16
- package/dist/src/components/editor/plugins/code-block-kit.mjs +0 -19
- package/dist/src/components/editor/plugins/column-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/column-kit.mjs +0 -10
- package/dist/src/components/editor/plugins/comment-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/comment-kit.mjs +0 -53
- package/dist/src/components/editor/plugins/copilot-kit.mjs +0 -49
- package/dist/src/components/editor/plugins/cursor-overlay-kit.mjs +0 -11
- package/dist/src/components/editor/plugins/date-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/date-kit.mjs +0 -10
- package/dist/src/components/editor/plugins/discussion-kit.mjs +0 -94
- package/dist/src/components/editor/plugins/dnd-kit.mjs +0 -31
- package/dist/src/components/editor/plugins/emoji-kit.mjs +0 -11
- package/dist/src/components/editor/plugins/exit-break-kit.mjs +0 -12
- package/dist/src/components/editor/plugins/fixed-toolbar-kit.mjs +0 -15
- package/dist/src/components/editor/plugins/floating-toolbar-kit.mjs +0 -15
- package/dist/src/components/editor/plugins/font-base-kit.mjs +0 -14
- package/dist/src/components/editor/plugins/font-kit.mjs +0 -19
- package/dist/src/components/editor/plugins/indent-base-kit.mjs +0 -17
- package/dist/src/components/editor/plugins/indent-kit.mjs +0 -20
- package/dist/src/components/editor/plugins/line-height-base-kit.mjs +0 -20
- package/dist/src/components/editor/plugins/line-height-kit.mjs +0 -22
- package/dist/src/components/editor/plugins/link-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/link-kit.mjs +0 -15
- package/dist/src/components/editor/plugins/list-base-kit.mjs +0 -19
- package/dist/src/components/editor/plugins/list-kit.mjs +0 -22
- package/dist/src/components/editor/plugins/markdown-kit.mjs +0 -17
- package/dist/src/components/editor/plugins/math-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/math-kit.mjs +0 -10
- package/dist/src/components/editor/plugins/media-base-kit.mjs +0 -23
- package/dist/src/components/editor/plugins/media-kit.mjs +0 -37
- package/dist/src/components/editor/plugins/slash-kit.mjs +0 -11
- package/dist/src/components/editor/plugins/suggestion-base-kit.mjs +0 -8
- package/dist/src/components/editor/plugins/suggestion-kit.mjs +0 -50
- package/dist/src/components/editor/plugins/table-base-kit.mjs +0 -13
- package/dist/src/components/editor/plugins/table-kit.mjs +0 -15
- package/dist/src/components/editor/transforms.mjs +0 -125
- package/dist/src/components/editor/ui/ai-chat-editor.mjs +0 -21
- package/dist/src/components/editor/ui/ai-menu.mjs +0 -488
- package/dist/src/components/editor/ui/ai-node.mjs +0 -24
- package/dist/src/components/editor/ui/ai-toolbar-button.mjs +0 -23
- package/dist/src/components/editor/ui/align-toolbar-button.mjs +0 -71
- package/dist/src/components/editor/ui/block-context-menu.mjs +0 -130
- package/dist/src/components/editor/ui/block-discussion.mjs +0 -200
- package/dist/src/components/editor/ui/block-draggable.mjs +0 -265
- package/dist/src/components/editor/ui/block-list-static.mjs +0 -48
- package/dist/src/components/editor/ui/block-list.mjs +0 -47
- package/dist/src/components/editor/ui/block-selection.mjs +0 -28
- package/dist/src/components/editor/ui/block-suggestion.mjs +0 -319
- package/dist/src/components/editor/ui/blockquote-node-static.mjs +0 -14
- package/dist/src/components/editor/ui/blockquote-node.mjs +0 -16
- package/dist/src/components/editor/ui/callout-node-static.mjs +0 -29
- package/dist/src/components/editor/ui/callout-node.mjs +0 -50
- package/dist/src/components/editor/ui/caption.mjs +0 -39
- package/dist/src/components/editor/ui/code-block-node-static.mjs +0 -30
- package/dist/src/components/editor/ui/code-block-node.mjs +0 -121
- package/dist/src/components/editor/ui/code-node-static.mjs +0 -15
- package/dist/src/components/editor/ui/code-node.mjs +0 -17
- package/dist/src/components/editor/ui/column-node-static.mjs +0 -32
- package/dist/src/components/editor/ui/column-node.mjs +0 -229
- package/dist/src/components/editor/ui/comment-node-static.mjs +0 -14
- package/dist/src/components/editor/ui/comment-node.mjs +0 -33
- package/dist/src/components/editor/ui/comment-toolbar-button.mjs +0 -23
- package/dist/src/components/editor/ui/comment.mjs +0 -422
- package/dist/src/components/editor/ui/cursor-overlay.mjs +0 -36
- package/dist/src/components/editor/ui/date-node-static.mjs +0 -32
- package/dist/src/components/editor/ui/date-node.mjs +0 -60
- package/dist/src/components/editor/ui/editor-static.mjs +0 -31
- package/dist/src/components/editor/ui/editor.mjs +0 -60
- package/dist/src/components/editor/ui/emoji-node.mjs +0 -46
- package/dist/src/components/editor/ui/emoji-toolbar-button.mjs +0 -415
- package/dist/src/components/editor/ui/equation-node-static.mjs +0 -65
- package/dist/src/components/editor/ui/equation-node.mjs +0 -159
- package/dist/src/components/editor/ui/equation-toolbar-button.mjs +0 -23
- package/dist/src/components/editor/ui/fixed-toolbar-buttons.mjs +0 -109
- package/dist/src/components/editor/ui/fixed-toolbar.mjs +0 -16
- package/dist/src/components/editor/ui/floating-toolbar-buttons.mjs +0 -54
- package/dist/src/components/editor/ui/floating-toolbar.mjs +0 -51
- package/dist/src/components/editor/ui/font-color-toolbar-button.mjs +0 -637
- package/dist/src/components/editor/ui/font-size-toolbar-button.mjs +0 -83
- package/dist/src/components/editor/ui/ghost-text.mjs +0 -22
- package/dist/src/components/editor/ui/heading-node-static.mjs +0 -60
- package/dist/src/components/editor/ui/heading-node.mjs +0 -62
- package/dist/src/components/editor/ui/highlight-node-static.mjs +0 -15
- package/dist/src/components/editor/ui/highlight-node.mjs +0 -17
- package/dist/src/components/editor/ui/history-toolbar-button.mjs +0 -35
- package/dist/src/components/editor/ui/hr-node-static.mjs +0 -18
- package/dist/src/components/editor/ui/hr-node.mjs +0 -23
- package/dist/src/components/editor/ui/indent-toolbar-button.mjs +0 -29
- package/dist/src/components/editor/ui/inline-combobox.mjs +0 -148
- package/dist/src/components/editor/ui/insert-toolbar-button.mjs +0 -199
- package/dist/src/components/editor/ui/kbd-node-static.mjs +0 -15
- package/dist/src/components/editor/ui/kbd-node.mjs +0 -17
- package/dist/src/components/editor/ui/line-height-toolbar-button.mjs +0 -56
- package/dist/src/components/editor/ui/link-node-static.mjs +0 -20
- package/dist/src/components/editor/ui/link-node.mjs +0 -28
- package/dist/src/components/editor/ui/link-toolbar-button.mjs +0 -21
- package/dist/src/components/editor/ui/link-toolbar.mjs +0 -141
- package/dist/src/components/editor/ui/list-toolbar-button.mjs +0 -131
- package/dist/src/components/editor/ui/mark-toolbar-button.mjs +0 -20
- package/dist/src/components/editor/ui/media-image-node-static.mjs +0 -32
- package/dist/src/components/editor/ui/media-image-node.mjs +0 -64
- package/dist/src/components/editor/ui/media-placeholder-node.mjs +0 -184
- package/dist/src/components/editor/ui/media-preview-dialog.mjs +0 -113
- package/dist/src/components/editor/ui/media-toolbar-button.mjs +0 -156
- package/dist/src/components/editor/ui/media-toolbar.mjs +0 -80
- package/dist/src/components/editor/ui/media-upload-toast.mjs +0 -39
- package/dist/src/components/editor/ui/media-video-node-static.mjs +0 -27
- package/dist/src/components/editor/ui/mode-toolbar-button.mjs +0 -112
- package/dist/src/components/editor/ui/paragraph-node-static.mjs +0 -15
- package/dist/src/components/editor/ui/paragraph-node.mjs +0 -17
- package/dist/src/components/editor/ui/resize-handle.mjs +0 -43
- package/dist/src/components/editor/ui/slash-node.mjs +0 -228
- package/dist/src/components/editor/ui/suggestion-node-static.mjs +0 -24
- package/dist/src/components/editor/ui/suggestion-node.mjs +0 -111
- package/dist/src/components/editor/ui/suggestion-toolbar-button.mjs +0 -24
- package/dist/src/components/editor/ui/table-icons.mjs +0 -1310
- package/dist/src/components/editor/ui/table-node-static.mjs +0 -68
- package/dist/src/components/editor/ui/table-node.mjs +0 -375
- package/dist/src/components/editor/ui/table-toolbar-button.mjs +0 -190
- package/dist/src/components/editor/ui/turn-into-toolbar-button.mjs +0 -168
- package/dist/src/components/editor/use-chat.mjs +0 -80
- package/dist/src/components/json-schema-editor/client.mjs +0 -46
- package/dist/src/components/json-schema-editor/components/inputs.mjs +0 -438
- package/dist/src/components/json-schema-editor/get-default-values.mjs +0 -23
- package/dist/src/components/json-schema-editor/schema.mjs +0 -131
- package/dist/src/components/json-schema-editor/utils/merge-schema.mjs +0 -134
- package/dist/src/components/json-schema-editor/utils/schema-to-string.mjs +0 -53
- package/dist/src/components/ui/alert-dialog.mjs +0 -90
- package/dist/src/components/ui/avatar.mjs +0 -32
- package/dist/src/components/ui/button.mjs +0 -48
- package/dist/src/components/ui/calendar.mjs +0 -108
- package/dist/src/components/ui/checkbox.mjs +0 -23
- package/dist/src/components/ui/combobox.mjs +0 -53
- package/dist/src/components/ui/command.mjs +0 -42
- package/dist/src/components/ui/context-menu.mjs +0 -67
- package/dist/src/components/ui/dialog.mjs +0 -9
- package/dist/src/components/ui/dropdown-menu.mjs +0 -122
- package/dist/src/components/ui/input-group.mjs +0 -31
- package/dist/src/components/ui/input.mjs +0 -15
- package/dist/src/components/ui/label.mjs +0 -19
- package/dist/src/components/ui/popover.mjs +0 -37
- package/dist/src/components/ui/select.mjs +0 -80
- package/dist/src/components/ui/separator.mjs +0 -19
- package/dist/src/components/ui/spinner.mjs +0 -16
- package/dist/src/components/ui/tabs.mjs +0 -39
- package/dist/src/components/ui/textarea.mjs +0 -14
- package/dist/src/components/ui/toolbar.mjs +0 -183
- package/dist/src/components/ui/tooltip.mjs +0 -38
- package/dist/src/hooks/editor/use-is-creator.mjs +0 -19
- package/dist/src/hooks/use-upload-file.mjs +0 -73
- package/dist/src/lib/config.mjs +0 -34
- package/dist/src/lib/data/store.d.mts +0 -15
- package/dist/src/lib/lowlight.mjs +0 -7
- package/dist/src/lib/utils/deep-equal.mjs +0 -18
- package/dist/src/lib/utils/remove-undefined.mjs +0 -18
- package/dist/src/lib/utils.mjs +0 -10
- package/next.config.ts +0 -23
- package/postcss.config.mjs +0 -7
- package/src/app/(dashboard)/collection/[name]/[...slug]/page.client.tsx +0 -26
- package/src/app/(dashboard)/collection/[name]/[...slug]/page.tsx +0 -18
- package/src/app/(dashboard)/collection/[name]/page.client.tsx +0 -82
- package/src/app/(dashboard)/collection/[name]/page.tsx +0 -11
- package/src/app/(dashboard)/layout.tsx +0 -34
- package/src/app/(dashboard)/page.tsx +0 -38
- package/src/app/api/ai/command/prompts.ts +0 -313
- package/src/app/api/ai/command/route.ts +0 -203
- package/src/app/api/ai/command/utils.ts +0 -242
- package/src/app/api/ai/copilot/route.ts +0 -33
- package/src/app/api/uploadthing/route.ts +0 -5
- package/src/app/codeblock/LICENSE +0 -21
- package/src/app/codeblock/styles.css +0 -289
- package/src/app/favicon.ico +0 -0
- package/src/app/globals.css +0 -223
- package/src/app/layout.client.tsx +0 -15
- package/src/app/layout.tsx +0 -30
- package/src/components/app-sidebar.tsx +0 -162
- package/src/components/code-editor/mdx.lazy.tsx +0 -18
- package/src/components/code-editor/mdx.tsx +0 -48
- package/src/components/code-editor/yaml.lazy.tsx +0 -20
- package/src/components/code-editor/yaml.tsx +0 -71
- package/src/components/collection/actions.tsx +0 -41
- package/src/components/collection/client.tsx +0 -63
- package/src/components/collection/context.tsx +0 -24
- package/src/components/collection/document/actions.tsx +0 -83
- package/src/components/editor/editor-base-kit.tsx +0 -37
- package/src/components/editor/editor-kit.tsx +0 -87
- package/src/components/editor/md.tsx +0 -60
- package/src/components/editor/plugins/ai-kit.tsx +0 -102
- package/src/components/editor/plugins/align-base-kit.tsx +0 -16
- package/src/components/editor/plugins/align-kit.tsx +0 -18
- package/src/components/editor/plugins/autoformat-kit.tsx +0 -236
- package/src/components/editor/plugins/basic-blocks-base-kit.tsx +0 -34
- package/src/components/editor/plugins/basic-blocks-kit.tsx +0 -87
- package/src/components/editor/plugins/basic-marks-base-kit.tsx +0 -26
- package/src/components/editor/plugins/basic-marks-kit.tsx +0 -40
- package/src/components/editor/plugins/basic-nodes-kit.tsx +0 -6
- package/src/components/editor/plugins/block-menu-kit.tsx +0 -14
- package/src/components/editor/plugins/block-placeholder-kit.tsx +0 -17
- package/src/components/editor/plugins/block-selection-kit.tsx +0 -54
- package/src/components/editor/plugins/callout-base-kit.tsx +0 -5
- package/src/components/editor/plugins/callout-kit.tsx +0 -7
- package/src/components/editor/plugins/code-block-base-kit.tsx +0 -16
- package/src/components/editor/plugins/code-block-kit.tsx +0 -19
- package/src/components/editor/plugins/column-base-kit.tsx +0 -11
- package/src/components/editor/plugins/column-kit.tsx +0 -10
- package/src/components/editor/plugins/comment-base-kit.tsx +0 -5
- package/src/components/editor/plugins/comment-kit.tsx +0 -92
- package/src/components/editor/plugins/copilot-kit.tsx +0 -70
- package/src/components/editor/plugins/cursor-overlay-kit.tsx +0 -13
- package/src/components/editor/plugins/date-base-kit.tsx +0 -5
- package/src/components/editor/plugins/date-kit.tsx +0 -7
- package/src/components/editor/plugins/discussion-kit.tsx +0 -142
- package/src/components/editor/plugins/dnd-kit.tsx +0 -25
- package/src/components/editor/plugins/emoji-kit.tsx +0 -13
- package/src/components/editor/plugins/exit-break-kit.tsx +0 -12
- package/src/components/editor/plugins/fixed-toolbar-kit.tsx +0 -19
- package/src/components/editor/plugins/floating-toolbar-kit.tsx +0 -19
- package/src/components/editor/plugins/font-base-kit.tsx +0 -20
- package/src/components/editor/plugins/font-kit.tsx +0 -29
- package/src/components/editor/plugins/indent-base-kit.tsx +0 -13
- package/src/components/editor/plugins/indent-kit.tsx +0 -22
- package/src/components/editor/plugins/line-height-base-kit.tsx +0 -14
- package/src/components/editor/plugins/line-height-kit.tsx +0 -16
- package/src/components/editor/plugins/link-base-kit.tsx +0 -5
- package/src/components/editor/plugins/link-kit.tsx +0 -15
- package/src/components/editor/plugins/list-base-kit.tsx +0 -17
- package/src/components/editor/plugins/list-kit.tsx +0 -26
- package/src/components/editor/plugins/markdown-kit.tsx +0 -13
- package/src/components/editor/plugins/math-base-kit.tsx +0 -11
- package/src/components/editor/plugins/math-kit.tsx +0 -10
- package/src/components/editor/plugins/media-base-kit.tsx +0 -25
- package/src/components/editor/plugins/media-kit.tsx +0 -28
- package/src/components/editor/plugins/slash-kit.tsx +0 -18
- package/src/components/editor/plugins/suggestion-base-kit.tsx +0 -5
- package/src/components/editor/plugins/suggestion-kit.tsx +0 -83
- package/src/components/editor/plugins/table-base-kit.tsx +0 -20
- package/src/components/editor/plugins/table-kit.tsx +0 -22
- package/src/components/editor/settings-dialog.tsx +0 -418
- package/src/components/editor/transforms.ts +0 -193
- package/src/components/editor/types.ts +0 -149
- package/src/components/editor/ui/ai-chat-editor.tsx +0 -20
- package/src/components/editor/ui/ai-menu.tsx +0 -663
- package/src/components/editor/ui/ai-node.tsx +0 -40
- package/src/components/editor/ui/ai-toolbar-button.tsx +0 -23
- package/src/components/editor/ui/align-toolbar-button.tsx +0 -78
- package/src/components/editor/ui/block-context-menu.tsx +0 -154
- package/src/components/editor/ui/block-discussion.tsx +0 -318
- package/src/components/editor/ui/block-draggable.tsx +0 -464
- package/src/components/editor/ui/block-list-static.tsx +0 -75
- package/src/components/editor/ui/block-list.tsx +0 -72
- package/src/components/editor/ui/block-selection.tsx +0 -37
- package/src/components/editor/ui/block-suggestion.tsx +0 -438
- package/src/components/editor/ui/blockquote-node-static.tsx +0 -5
- package/src/components/editor/ui/blockquote-node.tsx +0 -7
- package/src/components/editor/ui/callout-node-static.tsx +0 -30
- package/src/components/editor/ui/callout-node.tsx +0 -64
- package/src/components/editor/ui/caption.tsx +0 -55
- package/src/components/editor/ui/code-block-node-static.tsx +0 -33
- package/src/components/editor/ui/code-block-node.tsx +0 -161
- package/src/components/editor/ui/code-node-static.tsx +0 -15
- package/src/components/editor/ui/code-node.tsx +0 -17
- package/src/components/editor/ui/column-node-static.tsx +0 -27
- package/src/components/editor/ui/column-node.tsx +0 -285
- package/src/components/editor/ui/comment-node-static.tsx +0 -12
- package/src/components/editor/ui/comment-node.tsx +0 -43
- package/src/components/editor/ui/comment-toolbar-button.tsx +0 -24
- package/src/components/editor/ui/comment.tsx +0 -577
- package/src/components/editor/ui/cursor-overlay.tsx +0 -66
- package/src/components/editor/ui/date-node-static.tsx +0 -45
- package/src/components/editor/ui/date-node.tsx +0 -86
- package/src/components/editor/ui/editor-static.tsx +0 -47
- package/src/components/editor/ui/editor.tsx +0 -120
- package/src/components/editor/ui/emoji-node.tsx +0 -65
- package/src/components/editor/ui/emoji-toolbar-button.tsx +0 -582
- package/src/components/editor/ui/equation-node-static.tsx +0 -94
- package/src/components/editor/ui/equation-node.tsx +0 -218
- package/src/components/editor/ui/equation-toolbar-button.tsx +0 -24
- package/src/components/editor/ui/fixed-toolbar-buttons.tsx +0 -135
- package/src/components/editor/ui/fixed-toolbar.tsx +0 -17
- package/src/components/editor/ui/floating-toolbar-buttons.tsx +0 -72
- package/src/components/editor/ui/floating-toolbar.tsx +0 -76
- package/src/components/editor/ui/font-color-toolbar-button.tsx +0 -804
- package/src/components/editor/ui/font-size-toolbar-button.tsx +0 -102
- package/src/components/editor/ui/ghost-text.tsx +0 -27
- package/src/components/editor/ui/heading-node-static.tsx +0 -54
- package/src/components/editor/ui/heading-node.tsx +0 -54
- package/src/components/editor/ui/highlight-node-static.tsx +0 -11
- package/src/components/editor/ui/highlight-node.tsx +0 -13
- package/src/components/editor/ui/history-toolbar-button.tsx +0 -41
- package/src/components/editor/ui/hr-node-static.tsx +0 -16
- package/src/components/editor/ui/hr-node.tsx +0 -28
- package/src/components/editor/ui/indent-toolbar-button.tsx +0 -27
- package/src/components/editor/ui/inline-combobox.tsx +0 -251
- package/src/components/editor/ui/insert-toolbar-button.tsx +0 -242
- package/src/components/editor/ui/kbd-node-static.tsx +0 -15
- package/src/components/editor/ui/kbd-node.tsx +0 -17
- package/src/components/editor/ui/line-height-toolbar-button.tsx +0 -66
- package/src/components/editor/ui/link-node-static.tsx +0 -21
- package/src/components/editor/ui/link-node.tsx +0 -37
- package/src/components/editor/ui/link-toolbar-button.tsx +0 -18
- package/src/components/editor/ui/link-toolbar.tsx +0 -196
- package/src/components/editor/ui/list-toolbar-button.tsx +0 -195
- package/src/components/editor/ui/mark-toolbar-button.tsx +0 -20
- package/src/components/editor/ui/media-image-node-static.tsx +0 -33
- package/src/components/editor/ui/media-image-node.tsx +0 -75
- package/src/components/editor/ui/media-placeholder-node.tsx +0 -235
- package/src/components/editor/ui/media-preview-dialog.tsx +0 -145
- package/src/components/editor/ui/media-toolbar-button.tsx +0 -202
- package/src/components/editor/ui/media-toolbar.tsx +0 -100
- package/src/components/editor/ui/media-upload-toast.tsx +0 -59
- package/src/components/editor/ui/media-video-node-static.tsx +0 -23
- package/src/components/editor/ui/mode-toolbar-button.tsx +0 -121
- package/src/components/editor/ui/paragraph-node-static.tsx +0 -13
- package/src/components/editor/ui/paragraph-node.tsx +0 -15
- package/src/components/editor/ui/resize-handle.tsx +0 -79
- package/src/components/editor/ui/slash-node.tsx +0 -274
- package/src/components/editor/ui/suggestion-node-static.tsx +0 -30
- package/src/components/editor/ui/suggestion-node.tsx +0 -157
- package/src/components/editor/ui/suggestion-toolbar-button.tsx +0 -25
- package/src/components/editor/ui/table-icons.tsx +0 -685
- package/src/components/editor/ui/table-node-static.tsx +0 -86
- package/src/components/editor/ui/table-node.tsx +0 -569
- package/src/components/editor/ui/table-toolbar-button.tsx +0 -260
- package/src/components/editor/ui/turn-into-toolbar-button.tsx +0 -176
- package/src/components/editor/use-chat.ts +0 -120
- package/src/components/icons/logo.tsx +0 -37
- package/src/components/json-schema-editor/client.tsx +0 -55
- package/src/components/json-schema-editor/components/inputs.tsx +0 -612
- package/src/components/json-schema-editor/get-default-values.ts +0 -29
- package/src/components/json-schema-editor/schema.tsx +0 -206
- package/src/components/json-schema-editor/utils/merge-schema.ts +0 -167
- package/src/components/json-schema-editor/utils/schema-to-string.ts +0 -87
- package/src/components/nav-user.tsx +0 -102
- package/src/components/site-header.tsx +0 -13
- package/src/components/ui/alert-dialog.tsx +0 -182
- package/src/components/ui/avatar.tsx +0 -96
- package/src/components/ui/button.tsx +0 -65
- package/src/components/ui/calendar.tsx +0 -186
- package/src/components/ui/checkbox.tsx +0 -29
- package/src/components/ui/combobox.tsx +0 -267
- package/src/components/ui/command.tsx +0 -180
- package/src/components/ui/context-menu.tsx +0 -161
- package/src/components/ui/dialog.tsx +0 -142
- package/src/components/ui/drawer.tsx +0 -120
- package/src/components/ui/dropdown-menu.tsx +0 -239
- package/src/components/ui/field.tsx +0 -224
- package/src/components/ui/input-group.tsx +0 -144
- package/src/components/ui/input.tsx +0 -19
- package/src/components/ui/label.tsx +0 -18
- package/src/components/ui/popover.tsx +0 -76
- package/src/components/ui/select.tsx +0 -182
- package/src/components/ui/separator.tsx +0 -28
- package/src/components/ui/sheet.tsx +0 -130
- package/src/components/ui/sidebar.tsx +0 -608
- package/src/components/ui/sonner.tsx +0 -45
- package/src/components/ui/spinner.tsx +0 -15
- package/src/components/ui/table.tsx +0 -89
- package/src/components/ui/tabs.tsx +0 -60
- package/src/components/ui/textarea.tsx +0 -18
- package/src/components/ui/toggle-group.tsx +0 -86
- package/src/components/ui/toggle.tsx +0 -45
- package/src/components/ui/toolbar.tsx +0 -365
- package/src/components/ui/tooltip.tsx +0 -57
- package/src/hooks/editor/use-is-creator.ts +0 -21
- package/src/hooks/use-mobile.ts +0 -19
- package/src/hooks/use-mounted.ts +0 -11
- package/src/hooks/use-upload-file.ts +0 -121
- package/src/lib/ai/markdown-joiner-transform.ts +0 -235
- package/src/lib/config.ts +0 -42
- package/src/lib/data/actions.ts +0 -46
- package/src/lib/data/boundary.client.tsx +0 -22
- package/src/lib/data/boundary.tsx +0 -22
- package/src/lib/data/query.ts +0 -9
- package/src/lib/data/store.ts +0 -52
- package/src/lib/lowlight.ts +0 -3
- package/src/lib/uploadthing.ts +0 -19
- package/src/lib/utils/deep-equal.ts +0 -37
- package/src/lib/utils/remove-undefined.ts +0 -21
- package/src/lib/utils/urls.ts +0 -6
- package/src/lib/utils.ts +0 -6
- package/tsconfig.build.json +0 -24
- package/tsconfig.json +0 -37
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
package/dist/bin/cli.mjs
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import url from "node:url";
|
|
3
|
+
import os from "node:os";
|
|
4
|
+
import { createRequestHandler } from "@react-router/express";
|
|
5
|
+
import { createRequestListener } from "@mjackson/node-fetch-server";
|
|
6
|
+
import express from "express";
|
|
7
|
+
|
|
8
|
+
//#region src/bin/cli.ts
|
|
9
|
+
/**
|
|
10
|
+
* cloned from https://github.com/remix-run/react-router/blob/main/packages/react-router-serve/cli.ts as it is not exported from their package
|
|
11
|
+
*/
|
|
12
|
+
Object.assign(process.env, { NODE_ENV: process.env.NODE_ENV ?? "production" });
|
|
13
|
+
run();
|
|
14
|
+
function isRSCServerBuild(build) {
|
|
15
|
+
return Boolean(typeof build === "object" && build && "default" in build && typeof build.default === "object" && build.default && "fetch" in build.default && typeof build.default.fetch === "function");
|
|
16
|
+
}
|
|
17
|
+
function parseNumber(raw) {
|
|
18
|
+
if (raw === void 0) return void 0;
|
|
19
|
+
let maybe = Number(raw);
|
|
20
|
+
if (Number.isNaN(maybe)) return void 0;
|
|
21
|
+
return maybe;
|
|
22
|
+
}
|
|
23
|
+
async function run() {
|
|
24
|
+
let port = parseNumber(process.env.PORT) ?? 3e3;
|
|
25
|
+
let buildPathArg = process.argv[2];
|
|
26
|
+
if (!buildPathArg) {
|
|
27
|
+
console.error(`
|
|
28
|
+
Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);
|
|
29
|
+
process.exit(1);
|
|
30
|
+
}
|
|
31
|
+
let buildPath = path.resolve(buildPathArg);
|
|
32
|
+
let buildModule = await import(url.pathToFileURL(buildPath).href);
|
|
33
|
+
let build;
|
|
34
|
+
if (isRSCServerBuild(buildModule)) {
|
|
35
|
+
const config = {
|
|
36
|
+
publicPath: "/",
|
|
37
|
+
assetsBuildDirectory: "../client",
|
|
38
|
+
...buildModule.unstable_reactRouterServeConfig || {}
|
|
39
|
+
};
|
|
40
|
+
build = {
|
|
41
|
+
fetch: buildModule.default.fetch,
|
|
42
|
+
publicPath: config.publicPath,
|
|
43
|
+
assetsBuildDirectory: path.resolve(path.dirname(buildPath), config.assetsBuildDirectory)
|
|
44
|
+
};
|
|
45
|
+
} else build = buildModule;
|
|
46
|
+
let onListen = () => {
|
|
47
|
+
let address = process.env.HOST || Object.values(os.networkInterfaces()).flat().find((ip) => String(ip?.family).includes("4") && !ip?.internal)?.address;
|
|
48
|
+
if (!address) console.log(`[react-router-serve] http://localhost:${port}`);
|
|
49
|
+
else console.log(`[react-router-serve] http://localhost:${port} (http://${address}:${port})`);
|
|
50
|
+
};
|
|
51
|
+
let app = express();
|
|
52
|
+
app.disable("x-powered-by");
|
|
53
|
+
app.use(path.posix.join(build.publicPath, "assets"), express.static(path.join(build.assetsBuildDirectory, "assets"), {
|
|
54
|
+
immutable: true,
|
|
55
|
+
maxAge: "1y"
|
|
56
|
+
}));
|
|
57
|
+
app.use(build.publicPath, express.static(build.assetsBuildDirectory));
|
|
58
|
+
app.use(express.static("public", { maxAge: "1h" }));
|
|
59
|
+
if (build.fetch) app.all("/{*splat}", createRequestListener(build.fetch));
|
|
60
|
+
else app.all("/{*splat}", createRequestHandler({
|
|
61
|
+
build: buildModule,
|
|
62
|
+
mode: process.env.NODE_ENV
|
|
63
|
+
}));
|
|
64
|
+
let server = process.env.HOST ? app.listen(port, process.env.HOST, onListen) : app.listen(port, onListen);
|
|
65
|
+
["SIGTERM", "SIGINT"].forEach((signal) => {
|
|
66
|
+
process.once(signal, () => server?.close(console.error));
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
//#endregion
|
|
71
|
+
export { };
|
package/dist/bin.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env -S node --no-warnings
|
|
2
2
|
import { name, version } from "./package.mjs";
|
|
3
|
-
import path from "node:path";
|
|
4
3
|
import open from "open";
|
|
4
|
+
import path from "node:path";
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
6
6
|
import { program } from "commander";
|
|
7
7
|
import { x } from "tinyexec";
|
|
8
|
-
import { confirm, intro, isCancel, log, outro
|
|
8
|
+
import { confirm, intro, isCancel, log, outro } from "@clack/prompts";
|
|
9
9
|
|
|
10
|
-
//#region
|
|
10
|
+
//#region src/bin.ts
|
|
11
11
|
const __filename = fileURLToPath(import.meta.url);
|
|
12
12
|
const __dirname = path.dirname(__filename);
|
|
13
13
|
program.name(name).version(version).description("The Studio app of Fuma Content").option("-p, --port <number>", "Specify port number", (value) => parseInt(value, 10), 3050).option("-b, --bind <address>", "Specify address to bind", "localhost").parse(process.argv);
|
|
@@ -16,10 +16,9 @@ main();
|
|
|
16
16
|
async function main() {
|
|
17
17
|
const isCI = process.env.CI === "1";
|
|
18
18
|
const { bind: HOST, port: PORT } = options;
|
|
19
|
-
const
|
|
20
|
-
const
|
|
19
|
+
const serveBinPath = path.join(__dirname, "./bin/cli.mjs");
|
|
20
|
+
const rootDir = path.join(__dirname, "../");
|
|
21
21
|
const studioConfig = path.resolve("content.config.ts");
|
|
22
|
-
const studioDist = path.resolve(".studio");
|
|
23
22
|
intro(`Fuma Content ${version}`);
|
|
24
23
|
log.info(`Config Path: ${studioConfig}`);
|
|
25
24
|
const env = {
|
|
@@ -28,61 +27,36 @@ async function main() {
|
|
|
28
27
|
PORT: String(PORT),
|
|
29
28
|
STUDIO_PARENT_DIR: process.cwd(),
|
|
30
29
|
STUDIO_VERSION: version,
|
|
31
|
-
STUDIO_DIST: studioDist,
|
|
32
30
|
STUDIO_CONFIG: studioConfig,
|
|
33
31
|
CI: "1",
|
|
34
32
|
DISABLE_ANALYTICS: "true"
|
|
35
33
|
};
|
|
36
|
-
{
|
|
37
|
-
const spin = spinner();
|
|
38
|
-
spin.start("Building App (powered by Next.js)");
|
|
39
|
-
const storedLogs = [];
|
|
40
|
-
try {
|
|
41
|
-
const buildResult = x("node", [nextBinPath, "build"], {
|
|
42
|
-
nodeOptions: {
|
|
43
|
-
stdio: [
|
|
44
|
-
"ignore",
|
|
45
|
-
"pipe",
|
|
46
|
-
"pipe"
|
|
47
|
-
],
|
|
48
|
-
env,
|
|
49
|
-
cwd: appDir
|
|
50
|
-
},
|
|
51
|
-
throwOnError: true
|
|
52
|
-
});
|
|
53
|
-
for await (const line of buildResult) {
|
|
54
|
-
spin.message(`Building App: ${line.trim()}`);
|
|
55
|
-
storedLogs.push(line);
|
|
56
|
-
}
|
|
57
|
-
} catch (e) {
|
|
58
|
-
spin.error(storedLogs.join("\n"));
|
|
59
|
-
process.exit();
|
|
60
|
-
}
|
|
61
|
-
spin.stop("Compiled to .studio directory");
|
|
62
|
-
}
|
|
63
|
-
const serverProcess = x("node", [nextBinPath, "start"], { nodeOptions: {
|
|
34
|
+
const serverProcess = x("node", [serveBinPath, "build/server/index.js"], { nodeOptions: {
|
|
64
35
|
stdio: [
|
|
65
36
|
"ignore",
|
|
66
37
|
"pipe",
|
|
67
38
|
"pipe"
|
|
68
39
|
],
|
|
69
40
|
env,
|
|
70
|
-
cwd:
|
|
41
|
+
cwd: rootDir
|
|
71
42
|
} });
|
|
72
43
|
process.on("exit", () => {
|
|
73
44
|
outro(`Stopping server on port ${PORT}...`);
|
|
74
45
|
serverProcess.kill("SIGTERM");
|
|
75
46
|
});
|
|
76
47
|
for await (const message of serverProcess) {
|
|
77
|
-
|
|
78
|
-
|
|
48
|
+
if (message.includes(`[react-router-serve]`) && !isCI) {
|
|
49
|
+
const url$1 = `http://${HOST}:${PORT}`;
|
|
50
|
+
log.success(`Started studio at ${url$1}`);
|
|
79
51
|
const shouldOpen = await confirm({ message: "Do you want to open on browser?" });
|
|
80
52
|
if (isCancel(shouldOpen)) process.exit();
|
|
81
53
|
if (shouldOpen) {
|
|
82
|
-
log.message(`Opening browser at
|
|
83
|
-
open(
|
|
54
|
+
log.message(`Opening browser at ${url$1}`, { spacing: 0 });
|
|
55
|
+
open(url$1);
|
|
84
56
|
}
|
|
57
|
+
continue;
|
|
85
58
|
}
|
|
59
|
+
log.message(message, { spacing: 0 });
|
|
86
60
|
}
|
|
87
61
|
}
|
|
88
62
|
|
package/dist/package.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fuma-content/studio",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "The studio integration of Fuma Content",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Contentlayer",
|
|
@@ -15,28 +15,20 @@
|
|
|
15
15
|
},
|
|
16
16
|
"files": [
|
|
17
17
|
"dist",
|
|
18
|
-
"
|
|
19
|
-
"postcss.config.mjs",
|
|
20
|
-
"src",
|
|
21
|
-
"tsconfig.build.json",
|
|
22
|
-
"tsconfig.json"
|
|
18
|
+
"build"
|
|
23
19
|
],
|
|
24
|
-
"
|
|
25
|
-
".": {
|
|
26
|
-
"types": "./dist/index.d.mts",
|
|
27
|
-
"import": "./dist/index.mjs"
|
|
28
|
-
}
|
|
29
|
-
},
|
|
20
|
+
"type": "module",
|
|
30
21
|
"publishConfig": {
|
|
31
22
|
"access": "public"
|
|
32
23
|
},
|
|
33
24
|
"dependencies": {
|
|
34
|
-
"@ai-sdk/gateway": "^3.0.
|
|
35
|
-
"@ai-sdk/react": "3.0.
|
|
25
|
+
"@ai-sdk/gateway": "^3.0.27",
|
|
26
|
+
"@ai-sdk/react": "3.0.62",
|
|
36
27
|
"@base-ui/react": "^1.1.0",
|
|
37
28
|
"@base-ui/utils": "^0.2.4",
|
|
38
|
-
"@clack/prompts": "^1.0.0
|
|
29
|
+
"@clack/prompts": "^1.0.0",
|
|
39
30
|
"@emoji-mart/data": "1.2.1",
|
|
31
|
+
"@mjackson/node-fetch-server": "^0.7.0",
|
|
40
32
|
"@monaco-editor/react": "^4.7.0",
|
|
41
33
|
"@platejs/ai": "^52.1.0",
|
|
42
34
|
"@platejs/autoformat": "^52.0.11",
|
|
@@ -63,35 +55,39 @@
|
|
|
63
55
|
"@platejs/slash-command": "^52.0.15",
|
|
64
56
|
"@platejs/suggestion": "^52.0.11",
|
|
65
57
|
"@platejs/table": "^52.0.11",
|
|
58
|
+
"@react-router/express": "^7.13.0",
|
|
59
|
+
"@react-router/node": "^7.13.0",
|
|
66
60
|
"@standard-schema/spec": "^1.1.0",
|
|
67
|
-
"@tanstack/query-db-collection": "^1.0.
|
|
68
|
-
"@tanstack/react-db": "^0.1.
|
|
69
|
-
"@tanstack/react-query": "^5.90.
|
|
61
|
+
"@tanstack/query-db-collection": "^1.0.21",
|
|
62
|
+
"@tanstack/react-db": "^0.1.68",
|
|
63
|
+
"@tanstack/react-query": "^5.90.20",
|
|
70
64
|
"@uploadthing/react": "7.3.3",
|
|
71
|
-
"ai": "6.0.
|
|
65
|
+
"ai": "6.0.60",
|
|
72
66
|
"ajv": "^8.17.1",
|
|
73
67
|
"class-variance-authority": "^0.7.1",
|
|
74
68
|
"clsx": "^2.1.1",
|
|
75
69
|
"cmdk": "^1.1.1",
|
|
76
70
|
"commander": "^14.0.2",
|
|
77
71
|
"date-fns": "^4.1.0",
|
|
72
|
+
"express": "^5.2.1",
|
|
78
73
|
"gray-matter": "^4.0.3",
|
|
79
74
|
"highlight.js": "^11.11.1",
|
|
75
|
+
"isbot": "^5.1.34",
|
|
80
76
|
"js-yaml": "^4.1.1",
|
|
81
77
|
"lodash.debounce": "^4.0.8",
|
|
82
78
|
"lowlight": "^3.3.0",
|
|
83
|
-
"lucide-react": "^0.
|
|
84
|
-
"next": "16.1.3",
|
|
79
|
+
"lucide-react": "^0.563.0",
|
|
85
80
|
"next-themes": "^0.4.6",
|
|
86
81
|
"open": "^11.0.0",
|
|
87
82
|
"platejs": "^52.0.17",
|
|
88
83
|
"radix-ui": "^1.4.3",
|
|
89
|
-
"react": "19.2.
|
|
84
|
+
"react": "19.2.4",
|
|
90
85
|
"react-day-picker": "^9.13.0",
|
|
91
86
|
"react-dnd": "^16.0.1",
|
|
92
87
|
"react-dnd-html5-backend": "^16.0.1",
|
|
93
|
-
"react-dom": "19.2.
|
|
88
|
+
"react-dom": "19.2.4",
|
|
94
89
|
"react-hook-form": "^7.71.1",
|
|
90
|
+
"react-router": "^7.13.0",
|
|
95
91
|
"react-textarea-autosize": "^8.5.9",
|
|
96
92
|
"remark-gfm": "^4.0.1",
|
|
97
93
|
"remark-math": "^6.0.0",
|
|
@@ -100,14 +96,17 @@
|
|
|
100
96
|
"tinyexec": "^1.0.2",
|
|
101
97
|
"uploadthing": "7.7.4",
|
|
102
98
|
"vaul": "^1.1.2",
|
|
103
|
-
"zod": "^4.3.
|
|
99
|
+
"zod": "^4.3.6"
|
|
104
100
|
},
|
|
105
101
|
"devDependencies": {
|
|
106
|
-
"@
|
|
102
|
+
"@react-router/dev": "^7.13.0",
|
|
103
|
+
"@tailwindcss/vite": "^4.1.18",
|
|
104
|
+
"@types/express": "^5.0.6",
|
|
107
105
|
"@types/lodash.debounce": "^4.0.9",
|
|
108
|
-
"@types/node": "^25.0
|
|
109
|
-
"@types/react": "^19.2.
|
|
106
|
+
"@types/node": "^25.1.0",
|
|
107
|
+
"@types/react": "^19.2.10",
|
|
110
108
|
"@types/react-dom": "^19",
|
|
109
|
+
"@vitejs/plugin-rsc": "^0.5.17",
|
|
111
110
|
"babel-plugin-react-compiler": "1.0.0",
|
|
112
111
|
"dedent": "^1.7.1",
|
|
113
112
|
"json-schema-typed": "^8.0.2",
|
|
@@ -116,16 +115,18 @@
|
|
|
116
115
|
"tsdown": "^0.18.3",
|
|
117
116
|
"tw-animate-css": "^1.4.0",
|
|
118
117
|
"typescript": "^5",
|
|
119
|
-
"
|
|
118
|
+
"vite": "^7.3.1",
|
|
119
|
+
"vite-tsconfig-paths": "^6.0.5",
|
|
120
|
+
"fuma-content": "^1.1.1"
|
|
120
121
|
},
|
|
121
122
|
"peerDependencies": {
|
|
122
|
-
"fuma-content": "^1.1.
|
|
123
|
+
"fuma-content": "^1.1.1"
|
|
123
124
|
},
|
|
124
125
|
"scripts": {
|
|
125
126
|
"dev": "tsdown --watch",
|
|
126
|
-
"dev:app": "
|
|
127
|
-
"build": "tsdown",
|
|
128
|
-
"preview
|
|
127
|
+
"dev:app": "react-router dev",
|
|
128
|
+
"build": "tsdown && react-router build",
|
|
129
|
+
"preview": "react-router-serve build/server/index.js",
|
|
129
130
|
"types:check": "tsc --noEmit"
|
|
130
131
|
}
|
|
131
132
|
}
|
package/dist/index.d.mts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { DocumentItem } from "./src/lib/data/store.mjs";
|
|
2
|
-
import * as fuma_content_collections0 from "fuma-content/collections";
|
|
3
|
-
import { Collection } from "fuma-content/collections";
|
|
4
|
-
import { FC } from "react";
|
|
5
|
-
|
|
6
|
-
//#region lib/index.d.ts
|
|
7
|
-
type Awaitable<T> = T | Promise<T>;
|
|
8
|
-
interface StudioDocument {
|
|
9
|
-
id: string;
|
|
10
|
-
name: string;
|
|
11
|
-
}
|
|
12
|
-
interface MDXStudioDocument extends StudioDocument {
|
|
13
|
-
type: "mdx";
|
|
14
|
-
filePath: string;
|
|
15
|
-
}
|
|
16
|
-
interface CreateDocumentDialogContext {
|
|
17
|
-
collectionId: string;
|
|
18
|
-
useDialog: () => {
|
|
19
|
-
open: boolean;
|
|
20
|
-
setOpen: (v: boolean) => void;
|
|
21
|
-
onCreate: (item: DocumentItem) => void;
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
interface StudioHook<Doc extends StudioDocument = StudioDocument> {
|
|
25
|
-
init?: () => Awaitable<void>;
|
|
26
|
-
getDocuments: () => Awaitable<Doc[]>;
|
|
27
|
-
getDocument: (id: string) => Awaitable<Doc | undefined>;
|
|
28
|
-
pages?: {
|
|
29
|
-
edit?: FC<{
|
|
30
|
-
document: Doc;
|
|
31
|
-
collection: Collection;
|
|
32
|
-
}>;
|
|
33
|
-
};
|
|
34
|
-
/**
|
|
35
|
-
* the properties inside should be exported from a file with "use client".
|
|
36
|
-
*/
|
|
37
|
-
client?: () => Awaitable<ClientContext>;
|
|
38
|
-
actions?: {
|
|
39
|
-
deleteDocument?: (options: {
|
|
40
|
-
collection: Collection;
|
|
41
|
-
document: Doc;
|
|
42
|
-
}) => Awaitable<void>;
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
interface ClientContext {
|
|
46
|
-
dialogs?: {
|
|
47
|
-
createDocument?: FC<CreateDocumentDialogContext>;
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
declare const studioHook: fuma_content_collections0.CollectionHook<StudioHook<StudioDocument>, StudioHook<StudioDocument> | undefined>;
|
|
51
|
-
//#endregion
|
|
52
|
-
export { ClientContext, CreateDocumentDialogContext, MDXStudioDocument, StudioDocument, StudioHook, studioHook };
|
package/dist/index.mjs
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { getJSONSchema } from "fuma-content";
|
|
2
|
-
import { defineCollectionHook } from "fuma-content/collections";
|
|
3
|
-
import fs from "node:fs/promises";
|
|
4
|
-
import path from "node:path";
|
|
5
|
-
import grayMatter from "gray-matter";
|
|
6
|
-
import { MDXCollection } from "fuma-content/collections/mdx";
|
|
7
|
-
import { jsx } from "react/jsx-runtime";
|
|
8
|
-
|
|
9
|
-
//#region lib/index.tsx
|
|
10
|
-
const studioHook = defineCollectionHook((collection, options) => {
|
|
11
|
-
if (options) return options;
|
|
12
|
-
if (collection instanceof MDXCollection) return mdx(collection);
|
|
13
|
-
return {
|
|
14
|
-
getDocuments() {
|
|
15
|
-
return [];
|
|
16
|
-
},
|
|
17
|
-
getDocument() {}
|
|
18
|
-
};
|
|
19
|
-
});
|
|
20
|
-
function mdx(collection) {
|
|
21
|
-
async function read(doc) {
|
|
22
|
-
try {
|
|
23
|
-
return (await fs.readFile(doc.filePath)).toString();
|
|
24
|
-
} catch {
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return {
|
|
29
|
-
async getDocuments() {
|
|
30
|
-
return (await collection.getFiles()).map((file) => {
|
|
31
|
-
return {
|
|
32
|
-
type: "mdx",
|
|
33
|
-
id: file,
|
|
34
|
-
name: file,
|
|
35
|
-
filePath: path.join(collection.dir, file)
|
|
36
|
-
};
|
|
37
|
-
});
|
|
38
|
-
},
|
|
39
|
-
async getDocument(id) {
|
|
40
|
-
return (await this.getDocuments()).find((doc) => doc.id === id);
|
|
41
|
-
},
|
|
42
|
-
pages: { async edit({ document }) {
|
|
43
|
-
const { MDXDocUpdateEditor } = await import("./mdx/client.mjs");
|
|
44
|
-
const parsed = grayMatter(await read(document) ?? "");
|
|
45
|
-
const jsonSchema = collection.frontmatterSchema ? JSON.parse(JSON.stringify(getJSONSchema(collection.frontmatterSchema))) : void 0;
|
|
46
|
-
return /* @__PURE__ */ jsx(MDXDocUpdateEditor, {
|
|
47
|
-
documentId: document.id,
|
|
48
|
-
collectionId: collection.name,
|
|
49
|
-
jsonSchema,
|
|
50
|
-
frontmatter: parsed.data,
|
|
51
|
-
content: parsed.content
|
|
52
|
-
});
|
|
53
|
-
} },
|
|
54
|
-
async client() {
|
|
55
|
-
const { clientContext } = await import("./mdx/client.mjs");
|
|
56
|
-
return clientContext;
|
|
57
|
-
},
|
|
58
|
-
actions: { async deleteDocument(options) {
|
|
59
|
-
try {
|
|
60
|
-
await fs.rm(options.document.filePath);
|
|
61
|
-
} catch {}
|
|
62
|
-
} }
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
//#endregion
|
|
67
|
-
export { studioHook };
|
package/dist/mdx/actions.mjs
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
|
|
3
|
-
import { studioHook } from "../index.mjs";
|
|
4
|
-
import { requireCollection, requireDocument } from "../src/lib/config.mjs";
|
|
5
|
-
import fs from "node:fs/promises";
|
|
6
|
-
import path from "node:path";
|
|
7
|
-
import { MDXCollection } from "fuma-content/collections/mdx";
|
|
8
|
-
|
|
9
|
-
//#region lib/mdx/actions.ts
|
|
10
|
-
async function saveMDXDocument(collectionId, documentId, value) {
|
|
11
|
-
const { document: doc } = await requireDocument(collectionId, documentId);
|
|
12
|
-
if ("type" in doc && doc.type === "mdx") await fs.writeFile(doc.filePath, value);
|
|
13
|
-
}
|
|
14
|
-
async function createMDXDocument(collectionId, name, content) {
|
|
15
|
-
const collection = await requireCollection(collectionId);
|
|
16
|
-
if (!(collection instanceof MDXCollection)) throw new Error("Invalid collection ID");
|
|
17
|
-
const filePath = path.join(collection.dir, `${name}.mdx`);
|
|
18
|
-
const relativeFilePath = path.relative(collection.dir, filePath);
|
|
19
|
-
if (relativeFilePath.startsWith(`..${path.sep}`)) throw new Error(`invalid collection name: ${name}`);
|
|
20
|
-
if (await fs.access(filePath, fs.constants.R_OK).then(() => true).catch(() => false)) throw new Error(`document ${name} already exists`);
|
|
21
|
-
await fs.mkdir(path.dirname(filePath), { recursive: true });
|
|
22
|
-
await fs.writeFile(filePath, content);
|
|
23
|
-
return {
|
|
24
|
-
collectionId,
|
|
25
|
-
id: relativeFilePath,
|
|
26
|
-
name: relativeFilePath,
|
|
27
|
-
permissions: { delete: collection.pluginHook(studioHook).actions?.deleteDocument !== void 0 }
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
//#endregion
|
|
32
|
-
export { createMDXDocument, saveMDXDocument };
|
package/dist/mdx/client.mjs
DELETED
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import { Button } from "../src/components/ui/button.mjs";
|
|
4
|
-
import { Input } from "../src/components/ui/input.mjs";
|
|
5
|
-
import { MDXEditor, MDXEditorContainer, MDXEditorView } from "../src/components/editor/md.mjs";
|
|
6
|
-
import { Label } from "../src/components/ui/label.mjs";
|
|
7
|
-
import { JSONSchemaEditorContent, JSONSchemaEditorProvider } from "../src/components/json-schema-editor/client.mjs";
|
|
8
|
-
import { Tabs, TabsContent, TabsList, TabsTrigger } from "../src/components/ui/tabs.mjs";
|
|
9
|
-
import { YamlEditorLazy } from "../src/components/code-editor/yaml.lazy.mjs";
|
|
10
|
-
import { Spinner } from "../src/components/ui/spinner.mjs";
|
|
11
|
-
import { MDXCodeEditorLazy } from "../src/components/code-editor/mdx.lazy.mjs";
|
|
12
|
-
import { createMDXDocument, saveMDXDocument } from "./actions.mjs";
|
|
13
|
-
import { removeUndefined } from "../src/lib/utils/remove-undefined.mjs";
|
|
14
|
-
import grayMatter from "gray-matter";
|
|
15
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
16
|
-
import { useRef, useState, useTransition } from "react";
|
|
17
|
-
import { CheckIcon, CircleIcon } from "lucide-react";
|
|
18
|
-
import { useForm } from "react-hook-form";
|
|
19
|
-
|
|
20
|
-
//#region lib/mdx/client.tsx
|
|
21
|
-
const clientContext = { dialogs: { createDocument({ collectionId, useDialog }) {
|
|
22
|
-
const { setOpen, onCreate } = useDialog();
|
|
23
|
-
const form = useForm({ defaultValues: { name: "" } });
|
|
24
|
-
return /* @__PURE__ */ jsxs("form", {
|
|
25
|
-
className: "flex flex-col gap-2",
|
|
26
|
-
onSubmit: form.handleSubmit(async (values) => {
|
|
27
|
-
onCreate(await createMDXDocument(collectionId, values.name, ""));
|
|
28
|
-
setOpen(false);
|
|
29
|
-
}),
|
|
30
|
-
children: [
|
|
31
|
-
/* @__PURE__ */ jsx(Label, {
|
|
32
|
-
htmlFor: "name",
|
|
33
|
-
children: "Name"
|
|
34
|
-
}),
|
|
35
|
-
/* @__PURE__ */ jsx(Input, {
|
|
36
|
-
id: "name",
|
|
37
|
-
...form.register("name"),
|
|
38
|
-
placeholder: "hello-world"
|
|
39
|
-
}),
|
|
40
|
-
/* @__PURE__ */ jsx(Button, {
|
|
41
|
-
type: "submit",
|
|
42
|
-
className: "mt-4",
|
|
43
|
-
children: "Create"
|
|
44
|
-
})
|
|
45
|
-
]
|
|
46
|
-
});
|
|
47
|
-
} } };
|
|
48
|
-
function MDXDocUpdateEditor({ collectionId, documentId, ...rest }) {
|
|
49
|
-
return /* @__PURE__ */ jsx(MDXDocEditor, {
|
|
50
|
-
...rest,
|
|
51
|
-
onSync: (content) => {
|
|
52
|
-
return saveMDXDocument(collectionId, documentId, content);
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Combined MDX editor with frontmatter form using JSON Schema
|
|
58
|
-
*/
|
|
59
|
-
function MDXDocEditor({ jsonSchema, content: defaultContent, frontmatter: defaultFrontmatter = {}, onSync: onSyncCallback }) {
|
|
60
|
-
const [isPending, startTransition] = useTransition();
|
|
61
|
-
const [status, setStatus] = useState("sync");
|
|
62
|
-
const timerRef = useRef(null);
|
|
63
|
-
const currentValue = useRef({
|
|
64
|
-
frontmatter: defaultFrontmatter,
|
|
65
|
-
content: defaultContent
|
|
66
|
-
});
|
|
67
|
-
const onSync = (syncAction) => {
|
|
68
|
-
if (isPending) return;
|
|
69
|
-
setStatus("updated");
|
|
70
|
-
if (timerRef.current) window.clearTimeout(timerRef.current);
|
|
71
|
-
timerRef.current = window.setTimeout(() => {
|
|
72
|
-
startTransition(async () => {
|
|
73
|
-
syncAction?.();
|
|
74
|
-
const { frontmatter, content } = currentValue.current;
|
|
75
|
-
await onSyncCallback(grayMatter.stringify(content, removeUndefined(frontmatter, true)));
|
|
76
|
-
setStatus("sync");
|
|
77
|
-
});
|
|
78
|
-
}, 500);
|
|
79
|
-
};
|
|
80
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
81
|
-
/* @__PURE__ */ jsxs(Tabs, {
|
|
82
|
-
defaultValue: jsonSchema ? "visual" : "code",
|
|
83
|
-
children: [
|
|
84
|
-
/* @__PURE__ */ jsxs(TabsList, { children: [/* @__PURE__ */ jsx(TabsTrigger, {
|
|
85
|
-
value: "visual",
|
|
86
|
-
children: "Visual Editor"
|
|
87
|
-
}), /* @__PURE__ */ jsx(TabsTrigger, {
|
|
88
|
-
value: "code",
|
|
89
|
-
children: "Code Editor"
|
|
90
|
-
})] }),
|
|
91
|
-
jsonSchema && /* @__PURE__ */ jsx(TabsContent, {
|
|
92
|
-
value: "visual",
|
|
93
|
-
className: "-mt-6",
|
|
94
|
-
children: /* @__PURE__ */ jsx(JSONSchemaEditorProvider, {
|
|
95
|
-
schema: jsonSchema,
|
|
96
|
-
defaultValue: defaultFrontmatter,
|
|
97
|
-
onValueChange: (value) => {
|
|
98
|
-
onSync(() => {
|
|
99
|
-
currentValue.current.frontmatter = value;
|
|
100
|
-
});
|
|
101
|
-
},
|
|
102
|
-
writeOnly: true,
|
|
103
|
-
readOnly: false,
|
|
104
|
-
children: /* @__PURE__ */ jsx(JSONSchemaEditorContent, {})
|
|
105
|
-
})
|
|
106
|
-
}),
|
|
107
|
-
/* @__PURE__ */ jsx(TabsContent, {
|
|
108
|
-
value: "code",
|
|
109
|
-
children: /* @__PURE__ */ jsx(YamlEditorLazy, {
|
|
110
|
-
defaultValue: defaultFrontmatter,
|
|
111
|
-
onValueChange: (value) => {
|
|
112
|
-
onSync(() => {
|
|
113
|
-
currentValue.current.frontmatter = value;
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
})
|
|
117
|
-
})
|
|
118
|
-
]
|
|
119
|
-
}),
|
|
120
|
-
/* @__PURE__ */ jsxs(Tabs, {
|
|
121
|
-
defaultValue: "visual",
|
|
122
|
-
className: "flex-1",
|
|
123
|
-
children: [
|
|
124
|
-
/* @__PURE__ */ jsxs(TabsList, { children: [/* @__PURE__ */ jsx(TabsTrigger, {
|
|
125
|
-
value: "visual",
|
|
126
|
-
children: "Visual Editor"
|
|
127
|
-
}), /* @__PURE__ */ jsx(TabsTrigger, {
|
|
128
|
-
value: "code",
|
|
129
|
-
children: "Code Editor"
|
|
130
|
-
})] }),
|
|
131
|
-
/* @__PURE__ */ jsx(TabsContent, {
|
|
132
|
-
value: "visual",
|
|
133
|
-
children: /* @__PURE__ */ jsx(MDXEditor, {
|
|
134
|
-
defaultValue: defaultContent,
|
|
135
|
-
onUpdate: (options) => {
|
|
136
|
-
onSync(() => {
|
|
137
|
-
currentValue.current.content = options.getMarkdown();
|
|
138
|
-
});
|
|
139
|
-
},
|
|
140
|
-
children: /* @__PURE__ */ jsx(MDXEditorContainer, {
|
|
141
|
-
className: "[--toolbar-offset:--spacing(12)]",
|
|
142
|
-
children: /* @__PURE__ */ jsx(MDXEditorView, {})
|
|
143
|
-
})
|
|
144
|
-
})
|
|
145
|
-
}),
|
|
146
|
-
/* @__PURE__ */ jsx(TabsContent, {
|
|
147
|
-
value: "code",
|
|
148
|
-
className: "size-full",
|
|
149
|
-
children: /* @__PURE__ */ jsx(MDXCodeEditorLazy, {
|
|
150
|
-
defaultValue: defaultContent,
|
|
151
|
-
onValueChange: () => null
|
|
152
|
-
})
|
|
153
|
-
})
|
|
154
|
-
]
|
|
155
|
-
}),
|
|
156
|
-
/* @__PURE__ */ jsx("div", {
|
|
157
|
-
className: "sticky bottom-2 rounded-full bg-popover text-xs text-popover-foreground inline-flex items-center gap-1 px-3 py-1.5 border shadow-lg z-20 mx-auto",
|
|
158
|
-
children: isPending ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Spinner, { className: "text-primary" }), /* @__PURE__ */ jsx("span", {
|
|
159
|
-
className: "text-muted-foreground",
|
|
160
|
-
children: "Saving"
|
|
161
|
-
})] }) : status === "sync" ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(CheckIcon, { className: "size-4 text-green-400" }), /* @__PURE__ */ jsx("span", { children: "In Sync" })] }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(CircleIcon, { className: "size-4 fill-current stroke-transparent text-orange-400" }), /* @__PURE__ */ jsx("p", { children: "Updated" })] })
|
|
162
|
-
})
|
|
163
|
-
] });
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
//#endregion
|
|
167
|
-
export { MDXDocUpdateEditor, clientContext };
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
-
import { Suspense, lazy } from "react";
|
|
5
|
-
|
|
6
|
-
//#region src/components/code-editor/mdx.lazy.tsx
|
|
7
|
-
const Editor = lazy(() => import("./mdx.mjs").then((mod) => ({ default: mod.MDXCodeEditor })));
|
|
8
|
-
function MDXCodeEditorLazy(props) {
|
|
9
|
-
return /* @__PURE__ */ jsx(Suspense, {
|
|
10
|
-
fallback: /* @__PURE__ */ jsx("div", {
|
|
11
|
-
className: "p-2 text-sm font-mono flex items-center justify-center text-muted-foreground h-full bg-secondary border rounded-lg",
|
|
12
|
-
children: "Loading editor..."
|
|
13
|
-
}),
|
|
14
|
-
children: /* @__PURE__ */ jsx(Editor, { ...props })
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
//#endregion
|
|
19
|
-
export { MDXCodeEditorLazy };
|