chaipro 0.1.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.
- package/README.md +36 -0
- package/dist/IconPicker-I7VNLYZ4.js +5 -0
- package/dist/actions-DM00SIUk.d.cts +899 -0
- package/dist/actions-DM00SIUk.d.ts +899 -0
- package/dist/actions-registery-SEJTZE5Q.js +1 -0
- package/dist/active-in-another-tab-SONDAONP.js +1 -0
- package/dist/add-new-language-page-TI6DUYYX.js +1 -0
- package/dist/add-new-page-LBHXICXO.js +1 -0
- package/dist/ai-block-floating-prompt-input-ESY5GQLZ.js +1 -0
- package/dist/ai-panel-content-62I6FDQF.css +1 -0
- package/dist/ai-panel-content-UZJZ463W.js +1 -0
- package/dist/ai-panel-default-lang-2ZXZYQRT.js +6 -0
- package/dist/ai-panel-default-lang-ETFOFFEF.css +1 -0
- package/dist/ai-panel-for-image-LADQP6VY.js +1 -0
- package/dist/ai-panel-other-lang-WDLC3M2M.js +1 -0
- package/dist/ai-panel-page-chat-7ZISZWY4.js +4 -0
- package/dist/ai-panel-page-chat-N4YFJGAM.css +1 -0
- package/dist/ai-prompt-input-CPT5ETQ4.js +1 -0
- package/dist/ai-theme-generator-7PS4BX52.js +1 -0
- package/dist/ai-translation-prompt-3VE2ECGR.js +1 -0
- package/dist/blocks-CMvgDlxw.d.ts +72 -0
- package/dist/blocks-CP-Pngaz.d.cts +72 -0
- package/dist/build-config-CCERdThN.d.ts +80 -0
- package/dist/build-config-DrerOPd9.d.cts +80 -0
- package/dist/builder.cjs +243 -0
- package/dist/builder.css +1 -0
- package/dist/builder.d.cts +352 -0
- package/dist/builder.d.ts +352 -0
- package/dist/builder.js +1 -0
- package/dist/chaibuilder-instance-DNz3Q-dY.d.cts +579 -0
- package/dist/chaibuilder-instance-qroszVwI.d.ts +579 -0
- package/dist/change-password-modal-NJL7ZLTY.js +1 -0
- package/dist/chunk-2AFM6557.js +3 -0
- package/dist/chunk-2N4IJZOR.js +1 -0
- package/dist/chunk-2NYUIXUX.js +1 -0
- package/dist/chunk-2PJZUYIZ.js +1 -0
- package/dist/chunk-32HH35VD.js +1 -0
- package/dist/chunk-346H4FEX.js +1 -0
- package/dist/chunk-34HIOUTE.js +1 -0
- package/dist/chunk-374QEK4F.js +1 -0
- package/dist/chunk-3E72DJSP.js +1 -0
- package/dist/chunk-3IT7IIAV.js +1 -0
- package/dist/chunk-3UEPBBE4.js +11 -0
- package/dist/chunk-3XSKJBPH.js +1 -0
- package/dist/chunk-45ELAD2J.js +1 -0
- package/dist/chunk-4JBHWPMO.js +1 -0
- package/dist/chunk-4P25MV5E.js +1 -0
- package/dist/chunk-4PQNBY3V.js +1 -0
- package/dist/chunk-4VNLL2IA.js +1 -0
- package/dist/chunk-55SU3QPU.js +1 -0
- package/dist/chunk-5ZC65NB6.js +1 -0
- package/dist/chunk-6M7V7BOM.js +1 -0
- package/dist/chunk-6TXCHU4K.js +1 -0
- package/dist/chunk-777N6WHB.js +1 -0
- package/dist/chunk-7C4EQOAR.js +12 -0
- package/dist/chunk-7EXZXKW2.js +1 -0
- package/dist/chunk-7QWMLDCG.js +1 -0
- package/dist/chunk-AOJE5WI3.js +1 -0
- package/dist/chunk-ATLMLDBS.js +1 -0
- package/dist/chunk-AVGF3YLU.js +17 -0
- package/dist/chunk-BQSLQHLD.js +1 -0
- package/dist/chunk-BWORNCTE.js +1 -0
- package/dist/chunk-BYGD5CDT.js +1 -0
- package/dist/chunk-CA5PVX24.js +1 -0
- package/dist/chunk-CFNOB42V.js +1 -0
- package/dist/chunk-CJP3BQH2.js +1 -0
- package/dist/chunk-CRJENCPR.js +1 -0
- package/dist/chunk-D5SKCKSB.js +1 -0
- package/dist/chunk-DZ72OHTD.js +1 -0
- package/dist/chunk-EPGOG22Q.js +0 -0
- package/dist/chunk-ERCY63ZW.js +1 -0
- package/dist/chunk-ESCX7KEH.js +1 -0
- package/dist/chunk-F2V4N3LT.js +156 -0
- package/dist/chunk-F7YMHPEA.js +1 -0
- package/dist/chunk-FERH2TPR.js +1 -0
- package/dist/chunk-FLSV2QGU.js +1 -0
- package/dist/chunk-FOKGOT6B.js +1 -0
- package/dist/chunk-GJOOCKUE.js +1 -0
- package/dist/chunk-HA7LF3RV.js +1 -0
- package/dist/chunk-HAKJOMCL.js +1 -0
- package/dist/chunk-HEKCKC7N.js +1 -0
- package/dist/chunk-HELRVKD2.js +3 -0
- package/dist/chunk-I7ODKVVX.js +1 -0
- package/dist/chunk-IAKCX2WB.js +1 -0
- package/dist/chunk-IB2C3TWH.js +1 -0
- package/dist/chunk-IH562KSP.js +1 -0
- package/dist/chunk-IP4JBQOX.js +1 -0
- package/dist/chunk-ITX7QWN6.js +1 -0
- package/dist/chunk-IUACZ3E6.js +6 -0
- package/dist/chunk-J7Q62EP7.js +1 -0
- package/dist/chunk-JBB5IJFA.js +1 -0
- package/dist/chunk-JPJRO4NU.js +1 -0
- package/dist/chunk-JUIS55JT.js +1 -0
- package/dist/chunk-JYBTQ3YX.js +5 -0
- package/dist/chunk-K5YWQY4U.js +1 -0
- package/dist/chunk-K6RHR4HT.js +1 -0
- package/dist/chunk-LNV5MRGV.js +1 -0
- package/dist/chunk-LRJREWRD.js +1 -0
- package/dist/chunk-LWYDGDPW.js +1 -0
- package/dist/chunk-MDMGXS5B.js +1 -0
- package/dist/chunk-MEROMQQX.js +1 -0
- package/dist/chunk-N7Z4RFFI.js +1 -0
- package/dist/chunk-NSQEQYEM.js +1 -0
- package/dist/chunk-OD3K76M6.js +1 -0
- package/dist/chunk-ODSL3KXG.js +1 -0
- package/dist/chunk-OJJDRACB.js +1 -0
- package/dist/chunk-ONSZ462E.js +1 -0
- package/dist/chunk-OQZ4EPOM.js +1 -0
- package/dist/chunk-OR7KKUYT.js +1 -0
- package/dist/chunk-OSGXFZTA.js +1 -0
- package/dist/chunk-PM3JNOZH.js +1 -0
- package/dist/chunk-PQHFT4TE.js +1 -0
- package/dist/chunk-QGVCH2NI.js +1 -0
- package/dist/chunk-QIGSSVEY.js +1 -0
- package/dist/chunk-R5ZTCDFD.js +1 -0
- package/dist/chunk-RBDZDQZR.js +1 -0
- package/dist/chunk-ROQRBSK6.js +1 -0
- package/dist/chunk-SSENH35Y.js +1 -0
- package/dist/chunk-SYPALJAE.js +1 -0
- package/dist/chunk-T2YYNX6Z.js +1 -0
- package/dist/chunk-T32TW3XV.js +1 -0
- package/dist/chunk-T56KQBE2.js +1 -0
- package/dist/chunk-TEL5ACJE.js +1 -0
- package/dist/chunk-TGJQC6VC.js +1 -0
- package/dist/chunk-TQ34DGOT.js +1 -0
- package/dist/chunk-TVF77C53.js +1 -0
- package/dist/chunk-UIDBBTCZ.js +3 -0
- package/dist/chunk-VKSRWZCO.js +1 -0
- package/dist/chunk-VL5WBPVV.js +1 -0
- package/dist/chunk-VUWHFLT7.js +22 -0
- package/dist/chunk-WEVKAJMV.js +1 -0
- package/dist/chunk-WHPIYGCY.js +1 -0
- package/dist/chunk-WNESLH23.js +1 -0
- package/dist/chunk-WOT6VMZA.js +1 -0
- package/dist/chunk-WSQ5SQBD.js +1 -0
- package/dist/chunk-XY4UJKHE.js +1 -0
- package/dist/chunk-Y2BHO7OO.js +1 -0
- package/dist/chunk-YDOQEFOK.js +1 -0
- package/dist/chunk-YEFMD4DS.js +1 -0
- package/dist/chunk-YQ5QQCRD.js +1 -0
- package/dist/chunk-YQPOFRXU.js +1 -0
- package/dist/chunk-YTPQSO7V.js +801 -0
- package/dist/chunk-ZAU65LBG.js +1 -0
- package/dist/chunk-ZRFCEMYU.js +1 -0
- package/dist/chunk-ZU2B5YT6.js +1 -0
- package/dist/chunk-ZXKKBKGV.js +1 -0
- package/dist/code-display-7346IUCO.js +1 -0
- package/dist/code-editor-UBGTTX2L.js +1 -0
- package/dist/components/ui/accordion.cjs +1 -0
- package/dist/components/ui/accordion.d.cts +9 -0
- package/dist/components/ui/accordion.d.ts +9 -0
- package/dist/components/ui/accordion.js +1 -0
- package/dist/components/ui/alert-dialog.cjs +1 -0
- package/dist/components/ui/alert-dialog.d.cts +23 -0
- package/dist/components/ui/alert-dialog.d.ts +23 -0
- package/dist/components/ui/alert-dialog.js +1 -0
- package/dist/components/ui/alert.cjs +1 -0
- package/dist/components/ui/alert.d.cts +11 -0
- package/dist/components/ui/alert.d.ts +11 -0
- package/dist/components/ui/alert.js +1 -0
- package/dist/components/ui/avatar.cjs +1 -0
- package/dist/components/ui/avatar.d.cts +8 -0
- package/dist/components/ui/avatar.d.ts +8 -0
- package/dist/components/ui/avatar.js +1 -0
- package/dist/components/ui/badge.cjs +1 -0
- package/dist/components/ui/badge.d.cts +13 -0
- package/dist/components/ui/badge.d.ts +13 -0
- package/dist/components/ui/badge.js +1 -0
- package/dist/components/ui/button.cjs +1 -0
- package/dist/components/ui/button.d.cts +15 -0
- package/dist/components/ui/button.d.ts +15 -0
- package/dist/components/ui/button.js +1 -0
- package/dist/components/ui/card.cjs +1 -0
- package/dist/components/ui/card.d.cts +10 -0
- package/dist/components/ui/card.d.ts +10 -0
- package/dist/components/ui/card.js +1 -0
- package/dist/components/ui/checkbox.cjs +1 -0
- package/dist/components/ui/checkbox.d.cts +6 -0
- package/dist/components/ui/checkbox.d.ts +6 -0
- package/dist/components/ui/checkbox.js +1 -0
- package/dist/components/ui/command.cjs +1 -0
- package/dist/components/ui/command.d.cts +83 -0
- package/dist/components/ui/command.d.ts +83 -0
- package/dist/components/ui/command.js +1 -0
- package/dist/components/ui/context-menu.cjs +1 -0
- package/dist/components/ui/context-menu.d.cts +30 -0
- package/dist/components/ui/context-menu.d.ts +30 -0
- package/dist/components/ui/context-menu.js +1 -0
- package/dist/components/ui/dialog.cjs +1 -0
- package/dist/components/ui/dialog.d.cts +22 -0
- package/dist/components/ui/dialog.d.ts +22 -0
- package/dist/components/ui/dialog.js +1 -0
- package/dist/components/ui/dropdown-menu.cjs +1 -0
- package/dist/components/ui/dropdown-menu.d.cts +30 -0
- package/dist/components/ui/dropdown-menu.d.ts +30 -0
- package/dist/components/ui/dropdown-menu.js +1 -0
- package/dist/components/ui/hover-card.cjs +1 -0
- package/dist/components/ui/hover-card.d.cts +8 -0
- package/dist/components/ui/hover-card.d.ts +8 -0
- package/dist/components/ui/hover-card.js +1 -0
- package/dist/components/ui/input.cjs +1 -0
- package/dist/components/ui/input.d.cts +5 -0
- package/dist/components/ui/input.d.ts +5 -0
- package/dist/components/ui/input.js +1 -0
- package/dist/components/ui/label.cjs +1 -0
- package/dist/components/ui/label.d.cts +8 -0
- package/dist/components/ui/label.d.ts +8 -0
- package/dist/components/ui/label.js +1 -0
- package/dist/components/ui/loader.cjs +1 -0
- package/dist/components/ui/loader.d.cts +12 -0
- package/dist/components/ui/loader.d.ts +12 -0
- package/dist/components/ui/loader.js +1 -0
- package/dist/components/ui/navigation-menu.cjs +1 -0
- package/dist/components/ui/navigation-menu.d.cts +15 -0
- package/dist/components/ui/navigation-menu.d.ts +15 -0
- package/dist/components/ui/navigation-menu.js +1 -0
- package/dist/components/ui/popover.cjs +1 -0
- package/dist/components/ui/popover.d.cts +9 -0
- package/dist/components/ui/popover.d.ts +9 -0
- package/dist/components/ui/popover.js +1 -0
- package/dist/components/ui/progress.cjs +1 -0
- package/dist/components/ui/progress.d.cts +8 -0
- package/dist/components/ui/progress.d.ts +8 -0
- package/dist/components/ui/progress.js +1 -0
- package/dist/components/ui/scroll-area.cjs +1 -0
- package/dist/components/ui/scroll-area.d.cts +7 -0
- package/dist/components/ui/scroll-area.d.ts +7 -0
- package/dist/components/ui/scroll-area.js +1 -0
- package/dist/components/ui/select.cjs +1 -0
- package/dist/components/ui/select.d.cts +15 -0
- package/dist/components/ui/select.d.ts +15 -0
- package/dist/components/ui/select.js +1 -0
- package/dist/components/ui/separator.cjs +1 -0
- package/dist/components/ui/separator.d.cts +6 -0
- package/dist/components/ui/separator.d.ts +6 -0
- package/dist/components/ui/separator.js +1 -0
- package/dist/components/ui/sheet.cjs +1 -0
- package/dist/components/ui/sheet.d.cts +29 -0
- package/dist/components/ui/sheet.d.ts +29 -0
- package/dist/components/ui/sheet.js +1 -0
- package/dist/components/ui/skeleton.cjs +1 -0
- package/dist/components/ui/skeleton.d.cts +5 -0
- package/dist/components/ui/skeleton.d.ts +5 -0
- package/dist/components/ui/skeleton.js +1 -0
- package/dist/components/ui/slider.cjs +1 -0
- package/dist/components/ui/slider.d.cts +6 -0
- package/dist/components/ui/slider.d.ts +6 -0
- package/dist/components/ui/slider.js +1 -0
- package/dist/components/ui/switch.cjs +1 -0
- package/dist/components/ui/switch.d.cts +9 -0
- package/dist/components/ui/switch.d.ts +9 -0
- package/dist/components/ui/switch.js +1 -0
- package/dist/components/ui/tabs.cjs +1 -0
- package/dist/components/ui/tabs.d.cts +9 -0
- package/dist/components/ui/tabs.d.ts +9 -0
- package/dist/components/ui/tabs.js +1 -0
- package/dist/components/ui/textarea.cjs +1 -0
- package/dist/components/ui/textarea.d.cts +5 -0
- package/dist/components/ui/textarea.d.ts +5 -0
- package/dist/components/ui/textarea.js +1 -0
- package/dist/components/ui/toggle.cjs +1 -0
- package/dist/components/ui/toggle.d.cts +15 -0
- package/dist/components/ui/toggle.d.ts +15 -0
- package/dist/components/ui/toggle.js +1 -0
- package/dist/components/ui/tooltip.cjs +1 -0
- package/dist/components/ui/tooltip.d.cts +9 -0
- package/dist/components/ui/tooltip.d.ts +9 -0
- package/dist/components/ui/tooltip.js +1 -0
- package/dist/config-registry-RSJCAKY5.js +1 -0
- package/dist/continue-editing-in-this-client-QBMOFRLL.js +1 -0
- package/dist/core-BNe4bA6z.d.cts +5455 -0
- package/dist/core-BNe4bA6z.d.ts +5455 -0
- package/dist/css-import-modal-NMFRQGCY.js +13 -0
- package/dist/db/better-sqlite3.cjs +1 -0
- package/dist/db/better-sqlite3.d.cts +16 -0
- package/dist/db/better-sqlite3.d.ts +16 -0
- package/dist/db/better-sqlite3.js +1 -0
- package/dist/db/d1.cjs +1 -0
- package/dist/db/d1.d.cts +17 -0
- package/dist/db/d1.d.ts +17 -0
- package/dist/db/d1.js +1 -0
- package/dist/db/libsql.cjs +1 -0
- package/dist/db/libsql.d.cts +23 -0
- package/dist/db/libsql.d.ts +23 -0
- package/dist/db/libsql.js +1 -0
- package/dist/db/node-pg.cjs +1 -0
- package/dist/db/node-pg.d.cts +21 -0
- package/dist/db/node-pg.d.ts +21 -0
- package/dist/db/node-pg.js +1 -0
- package/dist/db/postgres.cjs +1 -0
- package/dist/db/postgres.d.cts +28 -0
- package/dist/db/postgres.d.ts +28 -0
- package/dist/db/postgres.js +1 -0
- package/dist/delete-page-CGR6VXZC.css +1 -0
- package/dist/delete-page-FQYTEMBN.js +1 -0
- package/dist/digital-asset-manager-PIZMJEMX.js +1 -0
- package/dist/digital-asset-manager-PSTDGMY2.css +1 -0
- package/dist/dispatch-action-3IV56BNY.js +1 -0
- package/dist/duplicate-page-HPPMQRL3.js +1 -0
- package/dist/dynamic-page-selector-LFHJQLYY.js +1 -0
- package/dist/dynamic-page-selector-SXJQAIGL.css +1 -0
- package/dist/edit-url-panel-Q3NJCV55.js +1 -0
- package/dist/get-blocks-styles-SLZ5NDUF.js +1 -0
- package/dist/get-page-styles-Q4FWW5LX.js +1 -0
- package/dist/image-editor-PLXDYVKE.css +1 -0
- package/dist/image-editor-RSEHWRGV.js +1 -0
- package/dist/json-diff-viewer-FQYK2FUX.js +8 -0
- package/dist/lang-panel-57UGEL6B.css +1 -0
- package/dist/lang-panel-HH5LEOF4.js +1 -0
- package/dist/license-overlay-4Q525E53.js +1 -0
- package/dist/log-ai-request-LHPKU2C5.js +1 -0
- package/dist/manage-design-tokens-264H25A2.js +1 -0
- package/dist/manage-design-tokens-modal-OIWIZ53K.js +1 -0
- package/dist/mark-as-template-7TCCEMGC.js +1 -0
- package/dist/nested-path-selector-content-N4XN7QUS.js +1 -0
- package/dist/nextjs/render-client.cjs +1 -0
- package/dist/nextjs/render-client.css +1 -0
- package/dist/nextjs/render-client.d.cts +14 -0
- package/dist/nextjs/render-client.d.ts +14 -0
- package/dist/nextjs/render-client.js +1 -0
- package/dist/nextjs/render.cjs +829 -0
- package/dist/nextjs/render.d.cts +78 -0
- package/dist/nextjs/render.d.ts +78 -0
- package/dist/nextjs/render.js +1 -0
- package/dist/nextjs/server.cjs +807 -0
- package/dist/nextjs/server.d.cts +329 -0
- package/dist/nextjs/server.d.ts +329 -0
- package/dist/nextjs/server.js +1 -0
- package/dist/nextjs.cjs +1 -0
- package/dist/nextjs.d.cts +17 -0
- package/dist/nextjs.d.ts +17 -0
- package/dist/nextjs.js +1 -0
- package/dist/no-language-page-content-NQIROTIL.js +1 -0
- package/dist/no-language-page-dialog-CWG5PI7N.js +1 -0
- package/dist/page-creator-2L6L6EFV.js +1 -0
- package/dist/page-lock-7HMG34UJ.js +1 -0
- package/dist/page-locked-dialog-ACMWVAZX.js +1 -0
- package/dist/page-manager-new-SCZFNGKO.js +1 -0
- package/dist/page-manager-new-VWRASZTI.css +1 -0
- package/dist/page-manager-search-and-filter-7CHPYAPV.js +1 -0
- package/dist/page-manager-sheet-KZZBKQ6M.js +1 -0
- package/dist/page-manager-sheet-U5YEB5CS.css +1 -0
- package/dist/page-revisions-content-DHPEQ4CA.js +1 -0
- package/dist/page-revisions-trigger-XGC4HOTL.js +1 -0
- package/dist/pages-DlMX1Lj2.d.cts +21 -0
- package/dist/pages-Dol4CXrN.d.ts +21 -0
- package/dist/payload/builder.cjs +243 -0
- package/dist/payload/builder.css +1 -0
- package/dist/payload/builder.d.cts +13 -0
- package/dist/payload/builder.d.ts +13 -0
- package/dist/payload/builder.js +1 -0
- package/dist/payload.cjs +807 -0
- package/dist/payload.d.cts +603 -0
- package/dist/payload.d.ts +603 -0
- package/dist/payload.js +1 -0
- package/dist/preview-banner-SDDZGGRW.js +1 -0
- package/dist/publish-pages-content-3AZ45DYH.js +1 -0
- package/dist/registry.cjs +11 -0
- package/dist/registry.d.cts +74 -0
- package/dist/registry.d.ts +74 -0
- package/dist/registry.js +1 -0
- package/dist/relations-DDBTFCMR.js +1 -0
- package/dist/revalidate-G2DEOH4Z.js +1 -0
- package/dist/rte-widget-modal-7RXFEYHK.js +1 -0
- package/dist/save-to-lib-65EGTZE5.js +1 -0
- package/dist/schema-IVNMPI4V.js +1 -0
- package/dist/schema.sqlite-CYBLikNv.d.cts +5852 -0
- package/dist/schema.sqlite-CYBLikNv.d.ts +5852 -0
- package/dist/seo-panel-WQ47FNP4.css +1 -0
- package/dist/seo-panel-Z6OBXHQ4.js +2 -0
- package/dist/server-config-b29G6_aQ.d.cts +116 -0
- package/dist/server-config-oPlt3V1X.d.ts +116 -0
- package/dist/state-RAP56WXS.js +1 -0
- package/dist/take-over-request-EB464ZGU.js +1 -0
- package/dist/translation-warning-modal-EES6I2QV.js +1 -0
- package/dist/types.cjs +1 -0
- package/dist/types.d.cts +38 -0
- package/dist/types.d.ts +38 -0
- package/dist/types.js +1 -0
- package/dist/unmark-as-template-6STMTBP5.js +1 -0
- package/dist/unpublish-page-CE3CJK5C.js +1 -0
- package/dist/unpublished-partials-modal-OZBWBCLN.js +1 -0
- package/dist/utils.cjs +1 -0
- package/dist/utils.d.cts +168 -0
- package/dist/utils.d.ts +168 -0
- package/dist/utils.js +1 -0
- package/dist/web-blocks.cjs +1 -0
- package/dist/web-blocks.d.cts +3 -0
- package/dist/web-blocks.d.ts +3 -0
- package/dist/web-blocks.js +1 -0
- package/dist/web-preview-EIWOXGPY.js +1 -0
- package/package.json +322 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{wa as B}from"./chunk-2NYUIXUX.js";import{b as N,c as w,d as S}from"./chunk-TVF77C53.js";import{a as k,b as P,d as j}from"./chunk-777N6WHB.js";import{a as I,c as R,d as E,e as L,f as O,h as v}from"./chunk-YQ5QQCRD.js";import{b}from"./chunk-3IT7IIAV.js";import{ChevronLeftIcon as V,ChevronRightIcon as A,IdCardIcon as H,LoopIcon as M}from"@radix-ui/react-icons";import{t as f}from"i18next";import{startsWith as d}from"lodash-es";import m from"react";import{jsx as t,jsxs as a}from"react/jsx-runtime";var z=({data:c,onSelect:u,dataType:r})=>{let[o,p]=m.useState([]),[i,y]=m.useState(c),h=e=>Array.isArray(e)?"array":typeof e=="object"&&e!==null?"object":"value",l=m.useCallback(e=>{let n=s=>r==="value"?s==="value"||s==="object":r==="array"?s==="array":s===r;e.type==="object"?(p(s=>[...s,e.key]),y(e.value)):n(e.type)&&u([...o,e.key].join("."),r)},[o,u,r]),C=m.useCallback(()=>{if(o.length>0){let e=o.slice(0,-1);p(e),y(e.reduce((n,s)=>n[s],c))}},[o,c]),D=m.useMemo(()=>i?Object.entries(i).map(([e,n])=>({key:e,value:n,type:h(n)})).filter(e=>!d(e.key,"@")&&e.key.includes("/")?!1:r==="value"?e.type==="value"||e.type==="object":r==="array"?e.type==="array"||e.type==="object":r==="object"?e.type==="object":!0):[],[i,r]);return a(I,{className:"fields-command",children:[t(R,{className:"border-none",placeholder:"Search..."}),a(E,{children:[t(L,{className:"flex h-24 items-center justify-center text-xs text-muted",children:f("No option found.")}),a(O,{children:[o.length>0&&a(v,{onSelect:C,className:"flex items-center gap-2 text-xs text-muted",children:[t(V,{className:"!h-3 !w-3"}),f("Back")]}),D.map(e=>a(v,{value:e.key,disabled:!1,onSelect:()=>l(e),className:"flex items-center justify-between text-xs",children:[a("span",{className:"flex items-center gap-x-2",children:[d(e.key,"@")?t(M,{className:"h-3 w-3"}):d(e.key,"#")?t(H,{className:"h-3 w-3"}):t("div",{className:"h-px w-3 rounded-full border-b border-b-foreground bg-transparent font-light opacity-10"}),d(e.key,"@")?f("Repeater Data"):d(e.key,"#")?e.key.replace("#",""):e.key]}),a("div",{className:"flex items-center gap-2",children:[r==="object"&&e.type==="object"&&t(b,{size:"sm",variant:"ghost",className:"h-6 px-2 hover:bg-primary hover:text-primary-foreground",onClick:n=>{n.stopPropagation(),u([...o,e.key].join("."),r)},children:f("Select")}),e.type==="object"&&t(A,{className:"h-3 w-3 opacity-50"})]})]},e.key))]})]})]})};function U({data:c,onSelect:u,dataType:r="value"}){let[o,p]=m.useState(!1),i=B("collections",[]),y=m.useMemo(()=>r==="array"?{...i.map(l=>l.id).reduce((l,C)=>({...l,["#"+C]:[]}),{}),...c}:c,[c,i,r]);return a(k,{open:o,onOpenChange:p,children:[a(N,{children:[t(w,{asChild:!0,children:t(P,{asChild:!0,children:t(b,{size:"xs",variant:"ghost",className:"text-muted-foreground",role:"combobox","aria-expanded":o,children:t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",children:t("path",{d:"M9.5 5H9C7.89543 5 7 5.89543 7 7V9C7 10 6.4 12 4 12C5 12 7 12.6 7 15V17.0002C7 18.1048 7.89543 19 9 19H9.5M14.5 5H15C16.1046 5 17 5.89543 17 7V9C17 10 17.6 12 20 12C19 12 17 12.6 17 15V17.0002C17 18.1048 16.1046 19 15 19H14.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})})})})}),t(S,{children:f("Add field")})]}),t(j,{className:"z-[1000]! relative w-60 p-0",align:"end",children:t(z,{data:y,onSelect:(h,l)=>{u(h,l),p(!1)},dataType:r})})]})}export{U as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as r}from"./chunk-LWYDGDPW.js";import*as e from"@radix-ui/react-tabs";import*as s from"react";import{jsx as o}from"react/jsx-runtime";var c=e.Root,n=s.forwardRef(({className:t,...i},a)=>o(e.List,{ref:a,className:r("bg-gray inline-flex h-max items-center justify-center rounded-md border bg-accent/50 p-0.5 text-muted-foreground dark:bg-secondary/50",t),...i}));n.displayName=e.List.displayName;var m=s.forwardRef(({className:t,...i},a)=>o(e.Trigger,{ref:a,className:r("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-sm px-1 py-1 text-xs text-foreground/80 transition-all hover:text-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:shadow-sm",t),...i}));m.displayName=e.Trigger.displayName;var f=s.forwardRef(({className:t,...i},a)=>o(e.Content,{ref:a,className:r("mt-1.5",t),...i}));f.displayName=e.Content.displayName;export{c as a,n as b,m as c,f as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as t}from"./chunk-LWYDGDPW.js";import*as e from"@radix-ui/react-hover-card";import*as o from"react";import{jsx as s}from"react/jsx-runtime";var p=e.Root,v=e.Trigger,m=o.forwardRef(({className:r,align:a="center",sideOffset:i=4,...d},n)=>s(e.Content,{ref:n,align:a,sideOffset:i,className:t("z-50 w-64 origin-[--radix-hover-card-content-transform-origin] rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r),...d}));m.displayName=e.Content.displayName;export{p as a,v as b,m as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as l}from"./chunk-2N4IJZOR.js";import{b as t}from"./chunk-3IT7IIAV.js";import{a as i}from"./chunk-LWYDGDPW.js";import{Cross1Icon as d,MagnifyingGlassIcon as g}from"@radix-ui/react-icons";import{useTranslation as h}from"react-i18next";import{jsx as e,jsxs as b}from"react/jsx-runtime";function f({value:o,setValue:a,placeholder:r,onKeyDown:u,autoFocus:c=!1,disabled:n=!1,className:m="",autoComplete:p="on"}){let{t:s}=h();return e("div",{className:"relative w-full",children:b("div",{className:"relative",children:[e(l,{placeholder:s(r||"Search blocks..."),value:o,onChange:v=>a(v.target.value),onKeyDown:u,autoFocus:c,disabled:n,name:"search-input",autoComplete:p,className:i("h-8 w-full pr-8",m)}),o?e(t,{variant:"ghost",size:"icon-sm",onClick:()=>a(""),disabled:n,className:"absolute right-1 top-1/2 -translate-y-1/2 p-0 hover:bg-transparent hover:text-destructive",children:e(d,{className:"h-2.5 w-2.5 text-muted-foreground"})}):e(t,{variant:"ghost",size:"icon-sm",className:"pointer-events-none absolute right-1 top-1/2 -translate-y-1/2 cursor-pointer p-0 hover:bg-transparent hover:text-destructive",children:e(g,{className:"h-2.5 w-2.5 text-muted-foreground hover:text-foreground"})})]})})}export{f as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as F}from"./chunk-CJP3BQH2.js";import{f as w}from"./chunk-PQHFT4TE.js";import{a as M}from"./chunk-YEFMD4DS.js";import{R as x,ra as W}from"./chunk-2NYUIXUX.js";import{a as _}from"./chunk-WEVKAJMV.js";import{b as v,e as K}from"./chunk-ZAU65LBG.js";var b=()=>{let e=v("currentUser"),n=v("onLogout");return{isLoggedIn:!!e,user:e,logout:n}};import{atom as G}from"jotai";import{groupBy as Ee,last as $,minBy as le,values as q}from"lodash-es";var g={LOCKED:"LOCKED",EDITING:"EDITING",CHECKING:"CHECKING",TAKE_OVER_REQUESTED:"TAKE_OVER_REQUESTED",ACTIVE_IN_ANOTHER_TAB:"ACTIVE_IN_ANOTHER_TAB",FORCE_TAKE_OVER:"FORCE_TAKE_OVER",CONNECTION_LOST:"CONNECTION_LOST"},u={FORCE_TAKE_OVER:"FORCE_TAKE_OVER",TAKE_OVER_REQUEST:"TAKE_OVER_REQUEST",TAKE_OVER_APPROVED:"TAKE_OVER_APPROVED",TAKE_OVER_REJECTED:"TAKE_OVER_REJECTED",FORCE_TAKE_OVER_REQUEST:"FORCE_TAKE_OVER_REQUEST",CONTINUE_EDITING_IN_THIS_CLIENT:"CONTINUE_EDITING_IN_THIS_CLIENT",CONTINUE_EDITING_IN_THIS_TAB_REQUEST:"CONTINUE_EDITING_IN_THIS_TAB_REQUEST",UPDATE_WEBSITE_DATA:"UPDATE_WEBSITE_DATA",UPDATE_PAGE_DATA:"UPDATE_PAGE_DATA",PUBLISH_CHANGES:"PUBLISH_CHANGES",UNPUBLISH_PAGE:"UNPUBLISH_PAGE"},j=["sync","join","leave"],J=[u.FORCE_TAKE_OVER,u.TAKE_OVER_REQUEST,u.TAKE_OVER_APPROVED,u.TAKE_OVER_REJECTED,u.FORCE_TAKE_OVER_REQUEST,u.CONTINUE_EDITING_IN_THIS_CLIENT,u.CONTINUE_EDITING_IN_THIS_TAB_REQUEST,u.UPDATE_WEBSITE_DATA,u.UPDATE_PAGE_DATA,u.PUBLISH_CHANGES,u.UNPUBLISH_PAGE],Y={hasYieldedToTakeover:!1},X=G({}),Q=G(null),z=G(g.CHECKING),Z=G({}),ee=e=>{let n={},t=Ee(q(e).map($).filter(Boolean),"pageId");return Object.entries(t).forEach(([s,r])=>{let o=r;o.sort((a,E)=>a.onlineAt===E.onlineAt?a.clientId.localeCompare(E.clientId):a.onlineAt-E.onlineAt),n[s]=o[0]}),n},B=(e,n)=>{let t=q(e).map($).filter(Boolean),s=t.filter(a=>a.pageId===n),r=s.length>0?s:t,o=le(r,"onlineAt");return o?o.onlineAt-100:+new Date-1e3*60*60*4},P=()=>{let{user:e}=b();return e==null?void 0:e.id},ne=()=>{let{data:e}=M();return`WEBSITE:${e==null?void 0:e.appKey}`},h=()=>{let{data:e}=w();return e==null?void 0:e.id};import{useAtom as U}from"jotai";import{nanoid as ye}from"nanoid";import{useCallback as N,useEffect as O,useMemo as Oe,useRef as d}from"react";import{useQueryClient as Te}from"@tanstack/react-query";import{useAtom as te}from"jotai";import{useCallback as se}from"react";import{useTranslation as ge}from"react-i18next";import{toast as re}from"sonner";var pe=(e,n,t)=>((e.includes("THEME")||(n==null?void 0:n.theme)!==void 0)&&(e.push("THEME"),t&&(n!=null&&n.theme)&&t(n.theme)),e),Ce=(e,n,t)=>((e.includes("DESIGN_TOKENS")||(n==null?void 0:n.designTokens)!==void 0)&&(e.push("DESIGN_TOKENS"),t&&n.designTokens&&t(n.designTokens)),e),Ie=(e,n,t,s)=>{let r=(e==null?void 0:e.appChanges)||[];return r=pe(r,n,t),r=Ce(r,n,s),e?{...e,...n,appChanges:r}:n},me=({queryClient:e,queryKey:n,data:t,setTheme:s,setDesignTokens:r})=>{e.setQueryData(n,o=>Ie(o,t,s,r))},Ae=(e,n,t,s,r)=>e.id===n?{...e,designTokens:t,links:s,partialBlocks:r,changes:[{type:"Page"}]}:e,_e=({queryClient:e,pageId:n,designTokens:t,linkPageIds:s,partialIds:r})=>{e.setQueryData([_.GET_WEBSITE_PAGES],o=>{if(!o||!Array.isArray(o))return o;let a=s.join(" | "),E=r.join(" | ");return o.map(c=>Ae(c,n,t,a,E))})},de=(e,n,t,s,r,o,a)=>{n.settings&&(me({queryClient:e,queryKey:[_.GET_WEBSITE_DRAFT_SETTINGS],data:n.settings,setTheme:o,setDesignTokens:a}),!t&&s&&(n.settings.theme!==void 0&&re.success(r("Theme Updated"),{description:r("{{userName}} updated the theme",{userName:s}),position:"bottom-left"}),n.settings.designTokens!==void 0&&re.success(r("Design Tokens Updated"),{description:r("{{userName}} updated the design tokens",{userName:s}),position:"bottom-left"})))},he=(e,n)=>{n.pageId&&n.designTokens&&n.linkPageIds&&n.partialIds&&_e({queryClient:e,pageId:n.pageId,designTokens:n.designTokens,linkPageIds:n.linkPageIds,partialIds:n.partialIds})},ie=(e,n)=>n.includes(e.id)?{...e,changes:[],online:!0}:e,Se=(e,n)=>{if(!e)return e;let s=(e.appChanges||[]).filter(r=>!n.includes(r));return{...e,appChanges:s}},fe=({queryClient:e,ids:n})=>{e.setQueryData([_.GET_WEBSITE_PAGES],t=>!t||!Array.isArray(t)?t:t.map(s=>ie(s,n))),e.setQueryData([_.GET_LANGUAGE_PAGES],t=>!t||!Array.isArray(t)?t:t.map(s=>ie(s,n))),(n.includes("THEME")||n.includes("DESIGN_TOKENS"))&&e.setQueryData([_.GET_WEBSITE_DRAFT_SETTINGS],t=>Se(t,n)),e.invalidateQueries({queryKey:[_.GET_CHANGES],refetchType:"all"})},oe=(e,n)=>e.id===n?{...e,online:!1}:e,Pe=({queryClient:e,pageId:n,primaryPage:t})=>{t?e.setQueryData([_.GET_LANGUAGE_PAGES,t],s=>!s||!Array.isArray(s)?s:s.map(r=>oe(r,n))):e.setQueryData([_.GET_WEBSITE_PAGES],s=>!s||!Array.isArray(s)?s:s.map(r=>oe(r,n))),e.invalidateQueries({queryKey:[_.GET_CHANGES],refetchType:"all"})},Ne=(e,n,t,s)=>{e&&n(t,{data:s})},Re=(e,n,t,s,r)=>{let{type:o,data:a,sync:E=!1,userName:c}=e;switch(o){case"UPDATE_WEBSITE_DATA":de(n,a,E,c,r,t,s);break;case"UPDATE_PAGE_DATA":he(n,a);break;case"PUBLISH_CHANGES":a.ids&&fe({queryClient:n,ids:a.ids,sync:E});break;case"UNPUBLISH_PAGE":a.pageId&&Pe({queryClient:n,pageId:a.pageId,primaryPage:a.primaryPage});break;default:console.log(r("Unknown sync type"),o)}return E},ae=()=>{let e=Te(),n=H(),[t,s]=te(F),[,r]=te(W),{t:o}=ge(),a=se(c=>{r(c)},[r]);return{handleQuerySync:se(c=>{let l=Re(c,e,s,a,o);Ne(l,n,c.type,c.data)},[e,n,s,a,o])}};var m=ye(24),V=null,y=10,Ue=1e3,ke=2,De=16e3,ce=()=>{let[e,n]=U(X);return{pageToUser:e,setPageToUser:n}},L=()=>{let[e,n]=U(z),t=[g.LOCKED,g.ACTIVE_IN_ANOTHER_TAB,g.CHECKING].includes(e),s=[g.EDITING].includes(e);return{pageStatus:e,setPageStatus:n,isLocked:t,isEditing:s}},ue=()=>{let[e,n]=U(Z);return{pageLockMeta:e,setPageLockMeta:n}},be=()=>{let e=h(),{pageToUser:n}=ce();return Oe(()=>n[e],[n,e])},k=()=>{let e=K(),{setPageStatus:n}=L(),[t]=U(Q);return O(()=>{if(clearTimeout(V),!e)return V=setTimeout(()=>{e||n(g.EDITING)},500),()=>clearTimeout(V)},[e,n]),t},Ge=()=>{let e=h(),n=P(),t=k(),{setPageToUser:s}=ce(),{setPageStatus:r,pageStatus:o}=L(),a=d(e);return a.current=e,N(E=>{let c=E||t;if(!c)return[];let l=c==null?void 0:c.presenceState(),S=ee(l);s(S);let i=S[a.current];if(!i)r(g.CHECKING);else if(!n)r(g.CHECKING);else if(i.userId===n&&i.clientId===m){if(o===g.TAKE_OVER_REQUESTED)return;Y.hasYieldedToTakeover=!1,r(g.EDITING)}else i.userId===n&&i.clientId!==m?r(g.ACTIVE_IN_ANOTHER_TAB):r(g.LOCKED)},[t,s,r,n,o])},H=()=>{let e=P(),n=h(),t=k(),{user:s}=b(),r=be(),{setPageLockMeta:o}=ue(),a=d(n);return a.current=n,N(async(E,c)=>{if(!t)return;let l=c||{};l.userId=e,l.userName=(s==null?void 0:s.name)||(s==null?void 0:s.email)||"Unknown user",l.pageId=a.current,l.senderClientId=m,l.receiverClientId=(c==null?void 0:c.requestingClientId)||(r==null?void 0:r.clientId),await t.send({event:E,payload:l,type:"broadcast"}),o({})},[t,e,r,o,s])},Le=()=>{let e=P(),n=h(),t=k(),{setPageStatus:s}=L(),{setPageLockMeta:r}=ue(),o=H(),a=d(n),{savePageAsync:E}=x(),{handleQuerySync:c}=ae();return a.current=n,N(l=>async({payload:S})=>{let i=S||{};if(l===u.UPDATE_WEBSITE_DATA||l===u.UPDATE_PAGE_DATA||l===u.PUBLISH_CHANGES||l===u.UNPUBLISH_PAGE){c({type:l,data:i==null?void 0:i.data,sync:!1,userName:i==null?void 0:i.userName});return}if(!(!(i!=null&&i.pageId)||(i==null?void 0:i.pageId)!==a.current||(i==null?void 0:i.receiverClientId)!==m))switch(r({}),l){case u.FORCE_TAKE_OVER_REQUEST:case u.CONTINUE_EDITING_IN_THIS_TAB_REQUEST:{try{await E(!0)}catch(C){console.error("Failed to save page before releasing lock:",C)}await(t==null?void 0:t.track({onlineAt:+new Date+1e4,pageId:a.current,userId:e,clientId:m})),await o(u.CONTINUE_EDITING_IN_THIS_CLIENT,{requestingClientId:i==null?void 0:i.senderClientId}),setTimeout(()=>r({type:l}),0);break}case u.TAKE_OVER_REQUEST:{r({requestingUserId:i==null?void 0:i.userId,requestingClientId:i==null?void 0:i.senderClientId}),s(g.TAKE_OVER_REQUESTED);break}case u.CONTINUE_EDITING_IN_THIS_CLIENT:{let C=(t==null?void 0:t.presenceState())||{},I=B(C,a.current);await(t==null?void 0:t.track({onlineAt:I,pageId:a.current,userId:e,clientId:m}));break}case u.TAKE_OVER_REJECTED:{r({type:u.TAKE_OVER_REJECTED});break}default:break}},[o,r,s,t,e,E])},En=()=>{let e=k(),n=P(),t=h();return N(async()=>{!e||!n||!t||await e.track({onlineAt:+new Date+1e4,pageId:t,userId:n,clientId:m})},[e,n,t])},ln=()=>{let e=k(),n=P(),t=h();return N(async()=>{if(!e||!n||!t)return;let s=B(e.presenceState(),t);await e.track({onlineAt:s,pageId:t,userId:n,clientId:m})},[e,n,t])},Tn=()=>{let e=K(),n=P(),t=h(),s=ne(),[r,o]=U(Q),{setPageStatus:a}=L(),E=Le(),c=Ge(),l=d(E),S=d(c),i=d(null),C=d(!1),I=d(0),A=d(r);O(()=>{l.current=E,S.current=c,A.current=r},[E,c,r]);let D=N(p=>{J.forEach(T=>{p.on("broadcast",{event:T},f=>{l.current(T)(f)})}),j.forEach(T=>{p.on("presence",{event:T},()=>{S.current(p)})})},[]),R=N(()=>{if(C.current||!e||!n||!s)return;if(I.current>=y){console.error(`Maximum reconnection attempts (${y}) reached. Stopping reconnection attempts.`),a(g.CONNECTION_LOST);return}C.current=!0,I.current+=1,console.log(`Attempting to reconnect realtime channel (attempt ${I.current}/${y})`),i.current&&(clearTimeout(i.current),i.current=null),A.current&&(e.removeChannel(A.current),o(null),A.current=null);let p=Math.min(Ue*Math.pow(ke,I.current-1),De);i.current=setTimeout(()=>{let T=e.channel(s,{config:{presence:{key:m}}});D(T),T.subscribe(async f=>{f==="SUBSCRIBED"?(console.log("Realtime connection established successfully"),o(T),A.current=T,I.current=0,C.current=!1):f==="CHANNEL_ERROR"||f==="TIMED_OUT"?(console.log(`Realtime connection failed: ${f}. Attempt ${I.current}/${y}`),I.current<y?setTimeout(()=>{C.current=!1,R()},500):(console.error("Maximum reconnection attempts reached"),C.current=!1,a(g.CONNECTION_LOST))):f==="CLOSED"&&(console.log("Realtime connection closed"),C.current=!1)})},p)},[e,n,s,o,D,a]);O(()=>{if(!e||!n||!s||r&&r.topic===s)return;I.current=0,C.current=!1;let p=e.channel(s,{config:{presence:{key:m}}});return D(p),p.subscribe(async T=>{T==="SUBSCRIBED"?(console.log("Realtime connection established successfully"),o(p),A.current=p,I.current=0):T==="CHANNEL_ERROR"||T==="TIMED_OUT"?(console.log(`Realtime connection failed: ${T}. Will attempt to reconnect...`),C.current||R()):T==="CLOSED"&&console.log("Realtime connection closed")}),()=>{i.current&&(clearTimeout(i.current),i.current=null),C.current=!1,I.current=0,A.current===p&&(A.current=null),o(null),e.removeChannel(p)}},[e,n,s,o,R,D]),O(()=>{let p=()=>{if(document.visibilityState==="visible"){if(console.log("Tab became visible, checking realtime connection..."),!e||!n||!s){console.log("Required dependencies not available, skipping reconnection");return}if(C.current){console.log("Reconnection already in progress, skipping visibility change reconnect");return}if(A.current){let T=A.current.state;T!=="joined"&&(console.log(`Channel state is ${T}, reconnecting...`),R())}else console.log("No active channel found, reconnecting..."),R()}};return document.addEventListener("visibilitychange",p),()=>{document.removeEventListener("visibilitychange",p)}},[e,n,s,R]),O(()=>(r&&t&&n&&r.track({pageId:t,userId:n,clientId:m,onlineAt:+new Date}),()=>{r&&t&&r.untrack()}),[r,t,n])};export{ae as a,b,g as c,u as d,Y as e,P as f,ce as g,L as h,ue as i,be as j,H as k,En as l,ln as m,Tn as n};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var a={ab:"Abkhazian",aa:"Afar",af:"Afrikaans",ak:"Akan",sq:"Albanian",am:"Amharic",ar:"Arabic",an:"Aragonese",hy:"Armenian",as:"Assamese",av:"Avaric",ae:"Avestan",ay:"Aymara",az:"Azerbaijani",bm:"Bambara",ba:"Bashkir",eu:"Basque",be:"Belarusian",bn:"Bengali",bh:"Bihari",bi:"Bislama",bs:"Bosnian",br:"Breton",bg:"Bulgarian",my:"Burmese",ca:"Catalan",ch:"Chamorro",ce:"Chechen",ny:"Chichewa",zh:"Chinese","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cv:"Chuvash",kw:"Cornish",co:"Corsican",cr:"Cree",hr:"Croatian",cs:"Czech",da:"Danish",dv:"Maldivian",nl:"Dutch",dz:"Dzongkha",en:"English",eo:"Esperanto",et:"Estonian",ee:"Ewe",fo:"Faroese",fj:"Fijian",fi:"Finnish",fr:"French",ff:"Fula, Pular",gl:"Galician",gd:"Gaelic (Scottish)",gv:"Manx",ka:"Georgian",de:"German",el:"Greek",kl:"Kalaallisut",gn:"Guarani",gu:"Gujarati",ht:"Haitian Creole",ha:"Hausa",he:"Hebrew",hz:"Herero",hi:"Hindi",ho:"Hiri Motu",hu:"Hungarian",is:"Icelandic",io:"Ido",ig:"Igbo",id:"Indonesian",ia:"Interlingua",ie:"Interlingue",iu:"Inuktitut",ik:"Inupiak",ga:"Irish",it:"Italian",ja:"Japanese",jv:"Javanese",kn:"Kannada",kr:"Kanuri",ks:"Kashmiri",kk:"Kazakh",km:"Khmer",ki:"Kikuyu",rw:"Kinyarwanda",rn:"Kirundi",ky:"Kyrgyz",kv:"Komi",kg:"Kongo",ko:"Korean",ku:"Kurdish",kj:"Kwanyama",lo:"Lao",la:"Latin",lv:"Latvian",li:"Limburgish",ln:"Lingala",lt:"Lithuanian",lu:"Luga-Katanga",lg:"Luganda, Ganda",lb:"Luxembourgish",mk:"Macedonian",mg:"Malagasy",ms:"Malay",ml:"Malayalam",mt:"Maltese",mi:"Maori",mr:"Marathi",mh:"Marshallese",mo:"Moldavian",mn:"Mongolian",na:"Nauru",nv:"Navajo",ng:"Ndonga",nd:"Northern Ndebele",ne:"Nepali",no:"Norwegian",nb:"Norwegian bokm\xE5l",nn:"Norwegian nynorsk",ii:"Sichuan Yi",oc:"Occitan",oj:"Ojibwe",cu:"Old Church Slavonic",or:"Oriya",om:"Oromo",os:"Ossetian",pi:"P\u0101li",ps:"Pashto, Pushto",fa:"Persian (Farsi)",pl:"Polish",pt:"Portuguese",pa:"Punjabi (Eastern)",qu:"Quechua",rm:"Romansh",ro:"Romanian",ru:"Russian",se:"Sami",sm:"Samoan",sg:"Sango",sa:"Sanskrit",sr:"Serbian",sh:"Serbo-Croatian",st:"Sesotho",tn:"Setswana",sn:"Shona",sd:"Sindhi",si:"Sinhalese",ss:"Swati",sk:"Slovak",sl:"Slovenian",so:"Somali",nr:"Southern Ndebele",es:"Spanish",su:"Sundanese",sw:"Swahili (Kiswahili)",sv:"Swedish",tl:"Tagalog",ty:"Tahitian",tg:"Tajik",ta:"Tamil",tt:"Tatar",te:"Telugu",th:"Thai",bo:"Tibetan",ti:"Tigrinya",to:"Tonga",ts:"Tsonga",tr:"Turkish",tk:"Turkmen",tw:"Twi",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",ve:"Venda",vi:"Vietnamese",vo:"Volap\xFCk",wa:"Wallon",cy:"Welsh",wo:"Wolof",fy:"Western Frisian",xh:"Xhosa",yi:"Yiddish",yo:"Yoruba",za:"Zhuang, Chuang",zu:"Zulu"};export{a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Z as p,ia as m}from"./chunk-2NYUIXUX.js";import{f as a}from"./chunk-3UEPBBE4.js";import{compact as k,each as g,get as h,pick as _}from"lodash-es";import{useCallback as L}from"react";var u=(t,n)=>{let e=t.filter(r=>r._parent===n),s=e.flatMap(r=>u(t,r._id));return[...e,...s]},f=(t,n)=>{let e=n.find(r=>r._id===t);if(!e)return[];let s=u(n,t);return[e,...s]};var R=()=>{let t=p(),[n]=m();return L((e="")=>{let s=t!=null&&t._id?f(t._id,n):n;return s?k(s.map(r=>{var d;let i=a(r._type);if(!i)return null;let c=(d=i==null?void 0:i.i18nProps)!=null?d:[];if(c.length===0)return null;let B=e==="ALL"?Object.keys(r).filter(o=>c.find(C=>o.startsWith(C))):c.map(o=>e?`${o}-${e}`:o),l=_(r,["_id"]);return g(B,o=>{l[o]=h(r,o,h(r,o.replace(`-${e}`,"")))}),l})):[]},[t,n])};export{R as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as h}from"./chunk-2N4IJZOR.js";import{a as r}from"./chunk-T32TW3XV.js";var B=e=>{if(!e)return{base:e,extension:null};let n=e.lastIndexOf(".");if(n<=0)return{base:e,extension:null};let t=e.substring(n);return{base:e.substring(0,n),extension:t}},m=e=>{if(!e)return e;let{base:n}=B(e);return n};function w(e,n){let t=(e||"").split("/").filter(Boolean),l="",o=!0;if(n.slug==="/"){let s=t.pop()||"";if(r[s])o=!0;else{l=s;let i=t.pop()||"";o=!!r[i]}}else if(n.parent)t.length&&(l=t.pop()||"");else if(t.length){l=t.pop()||"";let s=t.pop()||"";o=!!r[s]}return{initSlug:l,prefix:o}}var b=e=>e&&m(e),F=(e,n)=>{let t=m(e||"");return!t||t==="/"?`/${n}`:`${t}/${n}`};import{useEffect as C,useState as f}from"react";import{jsx as a,jsxs as u}from"react/jsx-runtime";function A({value:e,onChange:n,placeholder:t,parentSlug:l,onValidationChange:o,disabled:s=!1,fullSlug:i}){let[S,g]=f(e),[p,d]=f(null);C(()=>{g(e)},[e]);let E=v=>{let c=v.target.value.replace(/\//g,"").replace(/\s+/g,"-").replace(/[^a-zA-Z0-9-_.]/g,"-").replace(/-+/g,"-").replace(/^-+/,"").toLowerCase(),x=(c.match(/\./g)||[]).length,P=x<=1;x>1?d("Invalid slug. Only one dot (.) is allowed in the slug"):d(null),o&&o(P),g(c),n(c)};return u("div",{children:[l&&a("div",{className:"mb-1 flex items-center",children:u("span",{className:"text-xs text-muted/70",children:["Parent: ",a("span",{className:"font-mono text-foreground/70",children:b(l)})]})}),u("div",{className:"relative",children:[a(h,{disabled:s,value:S,onChange:E,placeholder:t,className:p?"border-destructive":""}),p&&a("div",{className:"mt-1 text-xs text-destructive",children:p})]}),i&&i!=="undefined"&&a("div",{className:"mt-1 flex items-center",children:u("span",{className:"text-xs text-muted/70",children:["Complete Slug: ",a("span",{className:"font-mono text-foreground/70",children:i})]})})]})}export{m as a,w as b,F as c,A as d};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{Z as p,ka as m}from"./chunk-2NYUIXUX.js";import{a as l}from"./chunk-WHPIYGCY.js";import{b as d}from"./chunk-3IT7IIAV.js";var w=o=>o?o.replace(/```[\s\S]*?```/g,"").replace(/```[\s\S]*$/g,"").replace(/`[^`]*`/g,"").replace(/<\/?[a-zA-Z][^>]*>/g,"").replace(/<\/?[a-zA-Z][\s\S]*?>/g,"").replace(/\n{3,}/g,`
|
|
2
|
+
|
|
3
|
+
`).trim():"";import{Edit as x,FileText as g,Globe as b,X as v}from"lucide-react";import{useState as h}from"react";import{useTranslation as N}from"react-i18next";import{jsx as e,jsxs as r}from"react/jsx-runtime";var j=({onRemove:o,onManageContext:n,isLoading:i=!1})=>{let{t}=N(),s=p(),u=(s==null?void 0:s._type)||"Unknown",f=(s==null?void 0:s._name)||u,[a,c]=h(!1);return e("div",{className:"relative mx-auto w-[95%] pb-1",onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),children:r("div",{className:"relative -mb-1 pt-2",children:[e("div",{className:"relative transition-all duration-300 ease-out",style:{zIndex:3},children:r("div",{className:"bg-surface flex items-center justify-between rounded-t-lg border border-b-0 border-border px-3 py-1.5",children:[r("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[e("div",{className:"flex h-5 w-5 shrink-0 items-center justify-center rounded bg-primary text-[10px] font-semibold text-primary-foreground",children:"@"}),e("span",{className:"truncate text-[11px] text-foreground",children:s?f:t("Entire Page")})]}),s&&e(l,{content:t("Remove block from context"),side:"right",children:e(d,{variant:"ghost",size:"icon-xs",onClick:o,disabled:i,title:"Remove block from context",children:e(v,{className:"!h-3 !w-3"})})})]})}),e("div",{className:`absolute left-0 right-0 transition-all duration-300 ease-out ${a?"-top-6 scale-100":"top-px scale-[0.97]"}`,style:{zIndex:2},children:r("div",{className:"bg-surface flex items-center justify-between rounded-t-lg border border-border px-3 pb-1.5 pt-1 shadow-sm",children:[r("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[e("div",{className:"flex h-5 w-5 shrink-0 items-center justify-center rounded bg-secondary text-[10px] font-semibold text-foreground",children:e(g,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"})}),e("span",{className:"truncate text-[11px] text-foreground",children:t("Page context")})]}),e(l,{content:t("Edit page context"),side:"right",children:e(d,{variant:"ghost",size:"icon-xs",onClick:()=>n("page"),disabled:i,tabIndex:a?0:-1,"aria-hidden":!a,children:e(x,{className:"!h-3.5 !w-3.5"})})})]})}),e("div",{className:`absolute left-0 right-0 transition-all duration-300 ease-out ${a?"-top-14 scale-100":"-top-[6px] scale-[0.94]"}`,style:{zIndex:1},children:r("div",{className:"bg-surface flex items-center justify-between rounded-t-lg border border-border px-3 pb-1.5 pt-1 shadow-sm",children:[r("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[e("div",{className:"flex h-5 w-5 shrink-0 items-center justify-center rounded bg-secondary text-[10px] font-semibold text-foreground",children:e(b,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"})}),e("span",{className:"truncate text-[11px] text-foreground",children:t("Website context")})]}),e(l,{content:t("Edit website context"),side:"right",children:e(d,{variant:"ghost",size:"icon-xs",onClick:()=>n("site"),disabled:i,tabIndex:a?0:-1,"aria-hidden":!a,children:e(x,{className:"!h-3.5 !w-3.5"})})})]})})]})})};import{useCallback as y}from"react";var $=()=>{let o=m();return y((n,i,t)=>{o([n],{[i]:t})},[o])};export{w as a,j as b,$ as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-LWYDGDPW.js";import*as e from"@radix-ui/react-context-menu";import{CheckIcon as d,ChevronRightIcon as c,CircleIcon as l}from"@radix-ui/react-icons";import*as r from"react";import{jsx as i,jsxs as u}from"react/jsx-runtime";var N=e.Root,f=r.forwardRef(({className:t,...o},n)=>i(e.Trigger,{ref:n,className:a("outline-none focus:outline-none focus:ring-0 focus-visible:outline-none focus-visible:ring-0",t),...o}));f.displayName=e.Trigger.displayName;var I=e.Group,w=e.Portal,S=e.Sub,T=e.RadioGroup,p=r.forwardRef(({className:t,inset:o,children:n,...s},m)=>u(e.SubTrigger,{ref:m,className:a("flex cursor-default select-none items-center gap-1.5 rounded-sm px-2 py-1 text-xs outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-3.5 [&_svg]:shrink-0",o&&"pl-7",t),...s,children:[n,i(c,{className:"ml-auto h-3 w-3"})]}));p.displayName=e.SubTrigger.displayName;var x=r.forwardRef(({className:t,...o},n)=>i(e.SubContent,{ref:n,className:a("z-50 max-h-[--radix-context-menu-content-available-height] min-w-[7rem] overflow-y-auto overflow-x-hidden rounded-sm border border-foreground/10 bg-popover text-popover-foreground shadow-2xl shadow-foreground/10","origin-[--radix-context-menu-content-transform-origin] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...o}));x.displayName=e.SubContent.displayName;var C=r.forwardRef(({className:t,...o},n)=>i(e.Portal,{children:i(e.Content,{ref:n,className:a("z-50 max-h-[--radix-context-menu-content-available-height] min-w-[7rem] overflow-y-auto overflow-x-hidden rounded-sm border border-foreground/10 bg-popover text-popover-foreground shadow-2xl shadow-foreground/10","origin-[--radix-context-menu-content-transform-origin] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...o})}));C.displayName=e.Content.displayName;var v=r.forwardRef(({className:t,inset:o,...n},s)=>i(e.Item,{ref:s,className:a("relative flex cursor-pointer select-none items-center gap-1.5 px-2 py-1 text-xs font-light outline-none transition-colors duration-300 hover:bg-accent focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-3.5 [&>svg]:shrink-0",o&&"pl-8",t),...n}));v.displayName=e.Item.displayName;var M=r.forwardRef(({className:t,children:o,checked:n,...s},m)=>u(e.CheckboxItem,{ref:m,className:a("relative flex cursor-pointer select-none items-center gap-1.5 py-1 pl-6 pr-2 text-xs font-light outline-none transition-colors duration-300 hover:bg-accent focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-3.5 [&>svg]:shrink-0",t),checked:n,...s,children:[i("span",{className:"absolute left-1.5 flex h-3 w-3 items-center justify-center",children:i(e.ItemIndicator,{children:i(d,{className:"h-3 w-3"})})}),o]}));M.displayName=e.CheckboxItem.displayName;var g=r.forwardRef(({className:t,children:o,...n},s)=>u(e.RadioItem,{ref:s,className:a("relative flex cursor-default select-none items-center rounded-sm py-1 pl-7 pr-2 text-xs outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[i("span",{className:"absolute left-1.5 flex h-3 w-3 items-center justify-center",children:i(e.ItemIndicator,{children:i(l,{className:"h-1.5 w-1.5 fill-current"})})}),o]}));g.displayName=e.RadioItem.displayName;var R=r.forwardRef(({className:t,inset:o,...n},s)=>i(e.Label,{ref:s,className:a("border-none px-2 py-1 text-xs font-light text-foreground/50",o&&"pl-7",t),...n}));R.displayName=e.Label.displayName;var P=r.forwardRef(({className:t,...o},n)=>i(e.Separator,{ref:n,className:a("-mx-0.5 my-0.5 h-px border-b border-border",t),...o}));P.displayName=e.Separator.displayName;var b=({className:t,...o})=>i("span",{className:a("ml-auto text-xs tracking-widest opacity-60",t),...o});b.displayName="ContextMenuShortcut";export{N as a,f as b,I as c,w as d,S as e,T as f,p as g,x as h,C as i,v as j,M as k,g as l,R as m,P as n,b as o};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{atom as t}from"jotai";var i=t(null);export{i as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c}from"./chunk-MDMGXS5B.js";import{a,s as d}from"./chunk-YTPQSO7V.js";import{i as p,j as C}from"./chunk-OQZ4EPOM.js";var m=new Set([]);function f(t){return m.has(t)?"public":"authenticated"}var y=new Set(["AI_EDIT_BLOCK","AI_EDIT_LANG_PAGE","AI_GENERATE_IMAGE"]);function S(t){return y.has(t)}function u(t){return t instanceof a?{code:t.code,message:t.message,status:t.status,...t.metadata?{metadata:t.metadata}:{}}:t&&typeof t=="object"&&"code"in t&&"message"in t&&"status"in t&&typeof t.code=="string"&&typeof t.message=="string"&&typeof t.status=="number"?t:t instanceof Error?{code:"INTERNAL_ERROR",message:t.message,status:500}:{code:"INTERNAL_ERROR",message:"Something went wrong.",status:500}}function g(t){if(t instanceof a)return t;let i=u(t);return new a(i.message,i.code,i.status)}var A="CHECK_USER_ACCESS";function E(t){var i;return{role:t.role||"user",permissions:(i=t.permissions)!=null?i:null}}async function w(t,i,o,n){let s=c(A);if(!s)throw new a(`Action ${A} not found`,"ACTION_NOT_FOUND",404);s.setContext({appId:t,userId:i,action:o,delegatedScopes:n});let e=await s.run({});if(!e||e.access===!1)throw new a("User does not have access to this app","UNAUTHORIZED",401);return E(e)}function I(t,i,o){var s;let n=t.requiredPermission;return n?typeof n=="function"?(s=n(i,o))!=null?s:null:n:null}function T(t,i,o){var e,r;let n=I(t,i,o);if(!n)return;let s=(r=(e=o.userAccess)==null?void 0:e.permissions)!=null?r:null;if(!d(s,n))throw new a(`Missing permission: ${n}`,"FORBIDDEN",403)}async function P(t,i){var o;try{let n=c(t);if(!n)throw new a(`Action ${t} not found`,"ACTION_NOT_FOUND",404);let s=f(t),e;if(s==="authenticated"){let r=C(),l=(o=r.delegatedScopes)!=null?o:null,h=t===A?void 0:await w(r.appId,r.userId,t,l);e={appId:r.appId,userId:r.userId,action:t,delegatedScopes:l,...h?{userAccess:h}:{}}}else e={appId:p().appId,action:t};return n.setContext(e),T(n,i,e),await n.run(i)}catch(n){throw console.error(`[dispatchChaiAction] Error executing action "${t}":`,n),g(n)}}async function F(t,i){try{return{ok:!0,data:await P(t,i)}}catch(o){return{ok:!1,error:u(o)}}}export{S as a,u as b,g as c,P as d,F as e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./chunk-LWYDGDPW.js";import*as t from"@radix-ui/react-switch";import*as o from"react";import{jsx as i}from"react/jsx-runtime";var n=o.forwardRef(({className:a,thumbClassName:r,...s},c)=>i(t.Root,{className:e("peer inline-flex h-4 w-[25px] cursor-pointer items-center rounded-full bg-muted transition-colors focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary dark:data-[state=unchecked]:bg-background",a),ref:c,...s,children:i(t.Thumb,{className:e("pointer-events-none block h-3 w-3 rounded-full bg-secondary shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-3 data-[state=unchecked]:translate-x-0.5",r)})}));n.displayName=t.Root.displayName;export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as r}from"./chunk-LWYDGDPW.js";import{Loader as o}from"lucide-react";import{jsx as e}from"react/jsx-runtime";var c=({children:t=null,className:n=""})=>e("div",{className:r("fixed bottom-0 left-0 right-0 top-[40px] z-[20] flex w-screen flex-col items-center justify-center bg-gradient-to-b from-background/70 to-background/40 backdrop-blur transition-all",n),children:t}),a=({className:t=""})=>e(o,{className:r("h-5 w-5 animate-spin text-foreground/90",t)}),l=()=>e("div",{className:"bg-surface fixed inset-0 z-[20] flex w-screen flex-col items-center justify-center transition-all",children:e(a,{})});export{c as a,a as b,l as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var F={fontFamily:{"font-heading":"Arial","font-body":"Arial"},borderRadius:"10px",colors:[{group:"Body",items:{background:["#FFFFFF","#121212"],foreground:["#121212","#FFFFFF"]}},{group:"Primary",items:{primary:["#2563EB","#3B82F6"],"primary-foreground":["#FFFFFF","#FFFFFF"]}},{group:"Secondary",items:{secondary:["#F3F4F6","#374151"],"secondary-foreground":["#1F2937","#F9FAFB"]}},{group:"Border, Input & Ring",items:{border:["#E5E7EB","#374151"],input:["#E5E7EB","#374151"],ring:["#2563EB","#3B82F6"]}},{group:"Card",items:{card:["#FFFFFF","#1F2937"],"card-foreground":["#121212","#FFFFFF"]}},{group:"Popover",items:{popover:["#FFFFFF","#1F2937"],"popover-foreground":["#121212","#FFFFFF"]}},{group:"Muted",items:{muted:["#F3F4F6","#374151"],"muted-foreground":["#6B7280","#9CA3AF"]}},{group:"Accent",items:{accent:["#F3F4F6","#374151"],"accent-foreground":["#1F2937","#FFFFFF"]}},{group:"Destructive",items:{destructive:["#DC2626","#EF4444"],"destructive-foreground":["#FFFFFF","#FFFFFF"]}}]},r={fontFamily:{heading:"Arial",body:"Arial"},borderRadius:"0.5rem",colors:{background:["#FFFFFF","#242424"],foreground:["#0A0A0B","#FAFAFA"],primary:["#155DFC","#155DFC"],"primary-foreground":["#FAFAFA","#FFFFFF"],secondary:["#F4F4F5","#202020"],"secondary-foreground":["#18181B","#FAFAFA"],muted:["#F4F4F5","#929292"],"muted-foreground":["#71717A","#A3A3A3"],accent:["#F4F4F5","#333333"],"accent-foreground":["#18181B","#FAFAFA"],destructive:["#EF4444","#8c3434"],"destructive-foreground":["#FAFAFA","#FAFAFA"],border:["#E4E4E7","#333333"],input:["#E4E4E7","#333333"],ring:["#18181B","#1E90FF"],card:["#FFFFFF","#242424"],"card-foreground":["#0A0A0B","#FAFAFA"],popover:["#FFFFFF","#242424"],"popover-foreground":["#0A0A0B","#FAFAFA"]}};export{F as a,r as b};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{a as Oe}from"./chunk-QGVCH2NI.js";import{a as Q}from"./chunk-IAKCX2WB.js";import{E as we,a as ye}from"./chunk-LNV5MRGV.js";import{h as Ne}from"./chunk-GJOOCKUE.js";import{a as ve,c as be,f as q,g as K}from"./chunk-PQHFT4TE.js";import{a as he,b as G,e as fe}from"./chunk-YEFMD4DS.js";import{a as xe}from"./chunk-T2YYNX6Z.js";import{e as F}from"./chunk-AOJE5WI3.js";import{xa as ge}from"./chunk-2NYUIXUX.js";import{a as Be}from"./chunk-WHPIYGCY.js";import{a as I}from"./chunk-HA7LF3RV.js";import{a as L}from"./chunk-WEVKAJMV.js";import{a as Le}from"./chunk-55SU3QPU.js";import{d as $}from"./chunk-ZAU65LBG.js";import{a as Se,b as Te,c as Y,d as Z}from"./chunk-FERH2TPR.js";import{a as te}from"./chunk-ODSL3KXG.js";import{b as de,c as pe,d as ue}from"./chunk-TVF77C53.js";import{a as ie,b as ce}from"./chunk-777N6WHB.js";import{a as M,b as me,f as H,g as W,i as z}from"./chunk-RBDZDQZR.js";import{a as _e,b as Pe,i as Ce,j as ee,k as De,n as Je}from"./chunk-4VNLL2IA.js";import{b as v}from"./chunk-3IT7IIAV.js";import*as B from"react";import{jsx as J,jsxs as ke}from"react/jsx-runtime";var Qe=B.lazy(()=>import("./nested-path-selector-content-N4XN7QUS.js"));function _t({data:e,onSelect:t,dataType:o="value",disabled:i=!1}){let[n,s]=B.useState(!1);return ke(ie,{open:n,onOpenChange:s,children:[ke(de,{children:[J(pe,{asChild:!0,children:J(ce,{asChild:!0,children:J(v,{size:"icon-xs",variant:"ghost",role:"combobox","aria-expanded":n,disabled:i,children:J("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",children:J("path",{d:"M9.5 5H9C7.89543 5 7 5.89543 7 7V9C7 10 6.4 12 4 12C5 12 7 12.6 7 15V17.0002C7 18.1048 7.89543 19 9 19H9.5M14.5 5H15C16.1046 5 17 5.89543 17 7V9C17 10 17.6 12 20 12C19 12 17 12.6 17 15V17.0002C17 18.1048 16.1046 19 15 19H14.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})})})})}),J(ue,{children:"Add field"})]}),n&&J(B.Suspense,{children:J(Qe,{data:e,onSelect:t,dataType:o,open:n,setOpen:s})})]})}import{useQuery as Ue}from"@tanstack/react-query";var Et=()=>{let{data:e}=q(),{data:t}=K(),o=$(),i=F(),n=G(),s=ve();return Ue({queryKey:[L.GET_BUILDER_PAGE_DATA,t==null?void 0:t.id,s],staleTime:1/0,gcTime:0,placeholderData:r=>r,queryFn:async()=>i(o,{action:L.GET_BUILDER_PAGE_DATA,data:{pageType:e==null?void 0:e.pageType,lang:(t==null?void 0:t.lang)||n,dynamic:e==null?void 0:e.dynamic,pageProps:{slug:(t==null?void 0:t.slug)+(s?`/${s}`:""),searchParams:{},pageType:t==null?void 0:t.pageType,fallbackLang:n,lastSaved:t.lastSaved,pageId:e.id,primaryPageId:t.primaryPage||e.id,pageBaseSlug:t==null?void 0:t.slug,dynamic:e==null?void 0:e.dynamic,languagePageId:t.id,metadata:e.metadata||{}}}}),enabled:!!(e!=null&&e.pageType)&&!!t.id})};import{useQuery as Xe}from"@tanstack/react-query";var zt=()=>{let{data:e}=K(),t=$(),o=F(),i=G(),n=(e==null?void 0:e.lang)||i;return Xe({queryKey:[L.GET_SITE_GLOBAL_DATA,n],staleTime:1/0,gcTime:0,placeholderData:s=>s,queryFn:async()=>o(t,{action:L.GET_SITE_GLOBAL_DATA,data:{lang:n}}),enabled:!!n})};import{useAtomValue as Ye,useSetAtom as Re}from"jotai";import{compact as Ze,find as je,get as R,isEmpty as se,map as Ee}from"lodash-es";import{ChevronDown as Ae,Languages as oe,Plus as et}from"lucide-react";import tt,{lazy as Me,Suspense as He,useEffect as st,useMemo as Ve}from"react";import{useTranslation as ot}from"react-i18next";import{Fragment as Ie,jsx as c,jsxs as _}from"react/jsx-runtime";var at=Me(()=>import("./add-new-language-page-TI6DUYYX.js")),nt=Me(()=>import("./lang-panel-HH5LEOF4.js")),ps=({showAdd:e=!0,goToDefaultLang:t=!1})=>{let{fallbackLang:o,languages:i,selectedLang:n,setSelectedLang:s}=ge(),r=se(n)?o:n,[,h]=xe(),{isLocked:g}=Ne(),{t:u}=ot(),[b,w]=tt.useState(!1);st(()=>{let a=new URLSearchParams(window.location.search),f=a.get("lang");f&&(i.includes(f)?s(f):(a.delete("lang"),h(a),s("")))},[i,h,s]);let D=Re(Q),{data:l}=q(),{data:N}=he(),{data:S}=be(),{data:P}=fe(),y=Ve(()=>{let a=je(P,{key:l==null?void 0:l.pageType});return(a==null?void 0:a.hasSlug)===!1},[l==null?void 0:l.pageType,P]),k=Ve(()=>{let a=Ze(Ee(R(N,"languages"),f=>{let d=je(S,{lang:f});return{key:f,value:R(I,f,f),isLangPageAdded:!!d}})).filter(Boolean);return[{key:o,value:R(I,o),isLangPageAdded:!0},...a]},[o,S,N]),U=a=>{if(document.querySelector('[data-panel-id="seo"]')){let d=new CustomEvent("seo-language-switch-check",{detail:{fromLang:r,toLang:a,switchHandler:()=>j(a)}});window.dispatchEvent(d);return}j(a)},j=a=>{s(a);let f=new URLSearchParams(window.location.search);a===o?f.delete("lang"):f.set("lang",a),Oe(f,h)};return se(i)?null:g?_(v,{disabled:!0,variant:"ghost",size:"sm",className:"h-6 cursor-not-allowed opacity-70",children:[c(oe,{className:"!h-3.5 !w-3.5"}),R(I,r,r),c(Ae,{className:"h-3 w-3"})]}):t?c(v,{onClick:()=>j(o),variant:"link",size:"xs",children:u("Switch to default language")}):c(Ie,{children:_(_e,{children:[c(Pe,{asChild:!0,className:"focus:outline-none",children:_(v,{disabled:g,variant:"ghost",size:"sm",className:"h-6 text-[12px] font-light opacity-90 hover:opacity-100",children:[c(oe,{className:"!h-3.5 !w-3.5 !stroke-[1px]"}),R(I,r,r),c(Ae,{className:"!h-3.5 !w-3.5 !stroke-[1px]"})]})}),_(Ce,{align:"start",children:[Ee(k.filter(a=>a.isLangPageAdded||y),a=>_(De,{checked:a.key===r,onClick:()=>U(a.key),children:[c("span",{children:a.value}),a.key===o&&c("span",{className:"flex items-center gap-x-0.5 pl-1 text-[9px] leading-none text-primary",children:"Default"})]},a.value)),e&&!y&&c(Je,{}),e&&!y&&!se(k.filter(a=>!a.isLangPageAdded))&&c(Ie,{children:_(ee,{onClick:()=>{l&&D({edit:!1,primaryPage:l.id})},children:[c(et,{className:"!h-2.5 !w-2.5 !stroke-[1px]"}),u("Add language")]})}),e&&!y&&_(M,{open:b,onOpenChange:w,children:[c(me,{asChild:!0,children:_(ee,{onSelect:a=>a.preventDefault(),children:[c(oe,{className:"!h-2.5 !w-2.5 !stroke-[1px]"}),u("View languages")]})}),b&&_(H,{className:"max-w-sm p-3",children:[c(W,{children:c(z,{className:"text-sm",children:u("Manage Languages")})}),c(He,{fallback:c("div",{className:"p-4 text-center text-sm text-muted-foreground",children:u("Loading...")}),children:c(nt,{})})]})]})]})]})})};function rt(){let e=Ye(Q),t=Re(Q);return _("div",{className:"relative z-10 flex items-center justify-end gap-1",children:[c(we,{slotId:ye.TOPBAR_LEFT}),e&&c(He,{children:c(at,{isOpen:!0,id:e==null?void 0:e.id,edit:!!(e!=null&&e.id),primaryPage:e==null?void 0:e.primaryPage,preselectedLang:e==null?void 0:e.preselectedLang,onClose:()=>t(null)})})]})}import{pick as lt}from"lodash-es";import{ImageIcon as We,Trash2 as it,X as ze}from"lucide-react";import{lazy as ct,Suspense as dt,useState as pt}from"react";import{useTranslation as ut}from"react-i18next";import{jsx as m,jsxs as O}from"react/jsx-runtime";var mt=ct(()=>import("./digital-asset-manager-PIZMJEMX.js")),ws=({assetId:e,assetUrl:t,onChange:o,className:i="",placeholder:n="Select an image",disabled:s=!1})=>{let{t:r}=ut(),[h,g]=pt(!1),u=()=>{s||g(!0)},b=()=>{g(!1)},w=N=>{let S=Array.isArray(N)?N[0]:N;S!=null&&S.url&&o(lt(S,["url","id"])),g(!1)},D=()=>{o({url:"",id:""})},l=(t==null?void 0:t.startsWith("{{"))&&(t==null?void 0:t.endsWith("}}"));return O("div",{className:`w-full ${i}`,children:[t?O("div",{className:"relative overflow-hidden rounded-md border",children:[l?m("div",{className:"flex h-12 items-center bg-muted/10 px-4",children:m("p",{className:"text-xs text-foreground/80",children:t})}):m(Le,{onClick:u,src:t,alt:r("Selected image"),className:"h-auto max-h-[100px] w-full bg-muted/10 object-contain"}),O("div",{className:"absolute right-2 top-2 flex gap-2",children:[m(v,{type:"button",variant:"outline",size:"icon",className:"bg-surface h-8 w-8 rounded-full text-foreground",onClick:D,disabled:s,children:l?m(ze,{className:"h-4 w-4"}):m(it,{className:"h-4 w-4"})}),!l&&m(v,{type:"button",variant:"outline",size:"icon",className:"bg-surface h-8 w-8 rounded-full text-foreground",onClick:u,disabled:s,children:m(We,{className:"h-4 w-4"})})]})]}):m("div",{className:`flex cursor-pointer items-center justify-center rounded-md border border-dashed p-4 ${s?"cursor-not-allowed opacity-50":"duration-300 hover:border-foreground/20"}`,onClick:u,children:O("div",{className:"flex items-center gap-2",children:[m(We,{className:"h-5 w-5 text-muted-foreground"}),m("p",{className:"text-xs font-light text-muted-foreground",children:n})]})}),m(M,{open:h,onOpenChange:g,children:O(H,{className:"h-fit w-full max-w-7xl overflow-hidden p-0",children:[O(W,{className:"hidden border-b px-4 py-2",children:[m(z,{children:r("Select Image")}),m(v,{type:"button",variant:"ghost",size:"icon",className:"absolute right-4 top-2",onClick:b,children:m(ze,{className:"h-4 w-4"})})]}),m("div",{className:"h-full flex-1 p-4",children:m(dt,{children:m(mt,{close:b,onSelect:w,mode:"image",assetId:e})})})]})})]})};import{AlertTriangle as ft,Code as xt,Eye as vt,FileCode2 as bt}from"lucide-react";import{startTransition as Ge,useEffect as qe,useRef as Nt,useState as ne}from"react";import{ErrorBoundary as yt}from"react-error-boundary";import{get as gt}from"lodash-es";var ht=e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");var ae=e=>{if(!e.trim())return{isValid:!1,parsed:null,placeholders:[],error:{message:"JSON is empty"}};let t=/{{([^{}]+)}}/g,o=[],i=e,n;for(;(n=t.exec(e))!==null;){let s=n[0],r=n.index,h=r>0?e[r-1]:"",g=r+s.length<e.length?e[r+s.length]:"",u=h==='"'&&g==='"';if(!u)try{JSON.parse(e)}catch(w){let D=w,l=D.message.match(/position (\d+)/),N=l?parseInt(l[1]):void 0,S,P;if(N!==void 0){let y=e.substring(0,N).split(`
|
|
2
|
+
`);S=y.length,P=y[y.length-1].length+1}return{isValid:!1,parsed:null,placeholders:[],error:{message:D.message,line:S,column:P,position:N}}}let b=u?`__placeholder_${o.length}__`:`"__placeholder_${o.length}__"`;o.push({original:s,replaced:b,position:r}),i=i.replaceAll(s,b)}try{return{isValid:!0,parsed:JSON.parse(i),error:null,placeholders:o}}catch(s){let r=s,h=r.message.match(/position (\d+)/),g=h?parseInt(h[1]):void 0,u,b;if(g!==void 0){let w=i.substring(0,g).split(`
|
|
3
|
+
`);u=w.length,b=w[w.length-1].length+1}return{isValid:!1,parsed:null,placeholders:o,error:{message:r.message,line:u,column:b,position:g}}}},$e=(e,t)=>{let i=JSON.stringify(e,null,2);return t.forEach(({original:n},s)=>{let r=`"__placeholder_${s}__"`,h=`"${n}"`,g=new RegExp(ht(r),"g");i=i.replace(g,h)}),i},Fe=(e,t)=>{if(!e)return"";let o=JSON.stringify(e,null,2),i=/{{([^{}]+)}}/g,n;for(;(n=i.exec(o))!==null;){let s=n[1],r=gt(t,s,null);o=o.replace(n[0],r)}return o};import{jsx as p,jsxs as C}from"react/jsx-runtime";var As=({value:e,onChange:t,disabled:o=!1,readOnly:i=!1,placeholder:n="Enter JSON",rows:s=6,id:r="json-input",pageData:h={},hasJsonLdForSelectedLang:g,copyJsonLDFromDefaultPage:u,topRightComponent:b=null})=>{let[w,D]=ne("edit"),[l,N]=ne(null),[S,P]=ne(""),y=Nt(null),k=r==="jsonLD"&&!g&&!!u;qe(()=>{e.trim()===""&&t("{}")},[e,t]);let U=d=>{if(i)return;let x=d.target.value;t(x)},j=d=>{if(d.key==="Tab"){d.preventDefault();let x=d.currentTarget,T=x.selectionStart,E=x.selectionEnd;if(T!==E){let le=e.substring(T,E).split(`
|
|
4
|
+
`);if(d.shiftKey){let A=le.map(V=>V.startsWith(" ")?V.substring(2):V).join(`
|
|
5
|
+
`),X=e.substring(0,T)+A+e.substring(E);t(X),setTimeout(()=>{x.selectionStart=T,x.selectionEnd=T+A.length},0)}else{let A=le.map(V=>` ${V}`).join(`
|
|
6
|
+
`),X=e.substring(0,T)+A+e.substring(E);t(X),setTimeout(()=>{x.selectionStart=T,x.selectionEnd=T+A.length},0)}}else{let re=e.substring(0,T)+" "+e.substring(E);t(re),setTimeout(()=>{x.selectionStart=x.selectionEnd=T+2},0)}}};qe(()=>{let d=ae(e);d.isValid?Ge(()=>{if(N(null),d.parsed){let x=Fe(d.parsed,h);P(x)}else P("")}):Ge(()=>{N(d.error),P("")})},[e,h]);let a=()=>{let d=ae(e);if(d.isValid&&d.parsed){let x=$e(d.parsed,d.placeholders);t(x)}},f=()=>{l!=null&&l.position&&y.current&&(y.current.focus(),y.current.setSelectionRange(l.position,l.position+1))};return p(yt,{fallback:p("div",{children:"Some error"}),children:p("div",{className:"space-y-2",children:C(Se,{value:w,onValueChange:D,className:"w-full",children:[C("div",{className:"mb-2 flex items-center justify-between",children:[C(Te,{className:"w-max",children:[C(Y,{value:"edit",className:"px-3",children:[p(xt,{className:"h-4 w-4"}),p("span",{children:"Edit"})]}),C(Y,{value:"preview",className:"px-3",disabled:!e.trim()||l!==null,children:[p(vt,{className:"h-4 w-4"}),p("span",{children:"Preview"})]})]}),b]}),C(Z,{value:"edit",className:"relative mt-0",children:[!k&&w==="edit"&&p(Be,{content:"Format JSON",side:"right",showTooltip:!o&&!l,children:p(v,{type:"button",variant:"outline",size:"icon",onClick:a,className:"absolute right-1 top-1 h-6 w-6 p-1",disabled:!e.trim()||o||l!==null,children:p(bt,{})})}),k?p("div",{className:"flex h-40 items-center justify-center rounded-md bg-muted/10",children:C("div",{className:"rounded-m flex max-w-[400px] flex-col items-center gap-3 p-4",children:[p("div",{className:"max-w-xl text-center text-xs text-muted",children:"JSON-LD for is not added for selected language. JSON LD will be used from default language."}),p(v,{type:"button",variant:"default",size:"sm",onClick:u,children:"Copy & Edit from default language"})]})}):p(te,{ref:y,id:r,name:r,className:`${l?"border-destructive":""}`,onChange:U,onKeyDown:j,value:e,placeholder:n,rows:s,disabled:o,readOnly:i}),l&&C("div",{className:"mt-2 flex items-center gap-2 rounded-md bg-destructive/10 p-2 text-xs text-destructive",children:[p(ft,{className:"h-4 w-4"}),C("div",{className:"flex items-center gap-2 text-sm",children:[p("span",{children:`${l.message}`}),p(v,{type:"button",variant:"link",size:"sm",className:"h-auto p-0",onClick:f,children:"Show"})]})]})]}),p(Z,{value:"preview",className:"mt-0",children:p(te,{rows:s,value:S,readOnly:!0,className:"cursor-default bg-muted/10 font-mono font-light text-foreground/70"})})]})})})};export{_t as a,Et as b,zt as c,ps as d,rt as e,ws as f,As as g};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./chunk-LWYDGDPW.js";import{jsx as r}from"react/jsx-runtime";function m({className:t,...n}){return r("div",{className:e("animate-pulse rounded-md bg-primary/10",t),...n})}export{m as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{atom as t,useAtom as o}from"jotai";var e=t("outline");e.debugLabel="sidebarActivePanelAtom";var i=()=>o(e);export{i as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{s as p}from"./chunk-3UEPBBE4.js";import*as i from"culori";var n=e=>e?e%1===0?e:e.toFixed(4):"0",S=e=>`hsl(${n(e.h)} ${n(e.s*100)}% ${n(e.l*100)}%)`,F=(e,o="hsl",s="4")=>{try{let r=i.parse(e);if(!r)throw new Error("Invalid color input");switch(o){case"hsl":{let t=i.converter("hsl")(r);return s==="4"?S(t):`${n(t.h)} ${n(t.s*100)}% ${n(t.l*100)}%`}case"rgb":return i.formatRgb(r);case"oklch":{let t=i.converter("oklch")(r);return`oklch(${n(t.l)} ${n(t.c)} ${n(t.h)})`}case"hex":return i.formatHex(r);default:return e}}catch(r){return console.error(`Failed to convert color: ${e}`,r),e}},f=e=>F(e,"hex");var A=e=>{let o={fontFamily:{heading:"",body:""},borderRadius:"",colors:{}};try{let s=V(e);if(!s.isValid)return console.warn("CSS validation failed:",s.error),b();let r=m(e,":root"),t=m(e,".dark"),c=a(r,"--font-sans")||a(r,"--font-family")||a(r,"--font-heading")||a(r,"--font-body"),l=v(c);o.fontFamily={heading:l,body:l};let $=a(r,"--radius")||a(r,"--border-radius")||"0.5rem";o.borderRadius=k($),["background","foreground","primary","primary-foreground","secondary","secondary-foreground","muted","muted-foreground","accent","accent-foreground","destructive","destructive-foreground","border","input","ring","card","card-foreground","popover","popover-foreground"].forEach(u=>{let d=a(r,`--${u}`),g=a(t,`--${u}`);if(d||g){let h=d?y(d):"#000000",x=g?y(g):h;o.colors[u]=[h,x]}})}catch(s){return console.error("Error parsing CSS to ChaiThemeValues:",s),b()}return o},m=(e,o)=>{var r,t;let s=new RegExp(`${C(o)}\\s*{([^}]+)}`);return((t=(r=e.match(s))==null?void 0:r[1])==null?void 0:t.trim())||null},a=(e,o)=>{var t;if(!e)return null;let s=new RegExp(`${C(o)}\\s*:\\s*([^;]+)`),r=e.match(s);return((t=r==null?void 0:r[1])==null?void 0:t.trim())||null},y=e=>{if(!e||typeof e!="string")return"#000000";try{let o=e.replace(/var\([^)]+\)/g,"").trim();if(!o)return"#000000";if(/^[a-z]+$/i.test(o))return f(o)||"#000000";if(/^#?([0-9A-F]{3,4}|[0-9A-F]{6}|[0-9A-F]{8})$/i.test(o.replace(/#/g,""))){let r=o.startsWith("#")?o:`#${o}`;return r.length<=5?`#${r.slice(1).split("").map(t=>t+t).join("")}`.slice(0,7):r.length>7?r.slice(0,7):r}if(/^(rgb|hsl|oklch)a?\(/i.test(o))return f(o)||"#000000";let s=o.match(/^(\d+\.?\d*)\s+(\d+\.?\d*)%\s+(\d+\.?\d*)%$/);if(s){let[,r,t,c]=s,l=`hsl(${r} ${t}% ${c}%)`;return f(l)||"#000000"}if(/^[\d.]+[\s,]+[\d.]+[\s,]+[\d.]+(?:[\s,/]+[\d.]+)?$/.test(o)){let r=o.split(/[\s,]+/).filter(Boolean);if(r.length>=3){let c=r.some(l=>l.includes("%"))?`hsl(${r[0]} ${r[1]} ${r[2]})`:`rgb(${r[0]}, ${r[1]}, ${r[2]})`;return f(c)||"#000000"}}return f(o)||"#000000"}catch(o){return console.warn("Failed to process color:",e,o),"#000000"}},v=e=>{let o=p();if(!e)return"ui-sans-serif, system-ui, sans-serif";try{let r=e.replace(/["']/g,"").trim().split(",")[0].trim(),t=o.find(c=>c.family.toLowerCase()===r.toLowerCase());return(t==null?void 0:t.family)||"ui-sans-serif, system-ui, sans-serif"}catch(s){return console.warn("Error processing font family:",e,s),"ui-sans-serif, system-ui, sans-serif"}},k=e=>{if(!e)return"8px";try{let o=e.trim();if(o.endsWith("px"))return o;if(o.endsWith("rem")){let r=parseFloat(o.replace("rem",""));if(!isNaN(r))return`${Math.round(r*16)}px`}if(o.endsWith("em")){let r=parseFloat(o.replace("em",""));if(!isNaN(r))return`${Math.round(r*16)}px`}let s=parseFloat(o);return isNaN(s)?"8px":`${Math.round(s)}px`}catch(o){return console.warn("Error converting border radius to px:",e,o),"8px"}},b=()=>({fontFamily:{heading:"ui-sans-serif, system-ui, sans-serif",body:"ui-sans-serif, system-ui, sans-serif"},borderRadius:"8px",colors:{background:["#ffffff","#000000"],foreground:["#000000","#ffffff"],primary:["#3b82f6","#60a5fa"],"primary-foreground":["#ffffff","#1e293b"],secondary:["#f1f5f9","#334155"],"secondary-foreground":["#0f172a","#f8fafc"],muted:["#f8fafc","#1e293b"],"muted-foreground":["#64748b","#94a3b8"],accent:["#f1f5f9","#334155"],"accent-foreground":["#0f172a","#f8fafc"],destructive:["#ef4444","#f87171"],"destructive-foreground":["#ffffff","#1e293b"],border:["#e2e8f0","#475569"],input:["#e2e8f0","#475569"],ring:["#3b82f6","#60a5fa"],card:["#ffffff","#0f172a"],"card-foreground":["#000000","#f8fafc"],popover:["#ffffff","#0f172a"],"popover-foreground":["#000000","#f8fafc"]}}),C=e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),H=e=>["background","foreground","primary","primary-foreground"].every(r=>e.colors[r]&&Array.isArray(e.colors[r])&&(e.colors[r]||[]).length>=2)&&!!e.fontFamily.heading&&!!e.fontFamily.body&&!!e.borderRadius,V=e=>{if(!e||typeof e!="string")return{isValid:!1,error:"Please enter valid CSS content"};let o=e.trim();if(!o)return{isValid:!1,error:"Please enter CSS content"};try{if(!o.includes("{")||!o.includes("}"))return{isValid:!1,error:"Invalid CSS format. CSS should contain proper block structure with { }"};let s=(o.match(/{/g)||[]).length,r=(o.match(/}/g)||[]).length;return s!==r?{isValid:!1,error:"Invalid CSS format. Unmatched braces detected"}:!o.includes("--")||!o.includes(":")?{isValid:!1,error:"Invalid CSS format. CSS should contain variable definitions like --primary: #color"}:!o.includes(":root")&&!o.includes(".dark")?{isValid:!1,error:"CSS should contain at least :root or .dark selector with theme variables"}:{isValid:!0}}catch(s){return console.error("CSS validation error:",s),{isValid:!1,error:"Failed to parse CSS. Please check your syntax."}}};export{A as a,H as b,V as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useQueryClient as R}from"@tanstack/react-query";import{Loader as H}from"lucide-react";import{forwardRef as S,useCallback as k,useEffect as I,useImperativeHandle as A,useRef as M,useState as W}from"react";import{connect as x,WindowMessenger as E}from"penpal";var u=new WeakMap,L={timeout:3e4,debug:!1};function l(t,e){e.debug&&console.log(`[Parent IFrame] ${t}`)}function P(t,e,o,r={}){return{onCmsReady:()=>{l("CMS ready signal received",r)},hideCmsOverlay:()=>{l("Hiding CMS overlay",r),t(!1)},onCmsNavigate:n=>{l(`CMS navigated to: ${n}`,r),e==null||e(n)},onCmsAction:n=>{l(`CMS action: ${n.type} ${n.collection}`,r),o==null||o(n)}}}function p(t,e,o={}){let r={...L,...o.config};l("Starting connection...",r);let n=P(e,o.onNavigate,o.onAction,r),i=new E({remoteWindow:t.contentWindow}),d=x({messenger:i,methods:n,timeout:r.timeout}),s={connection:d,child:null,state:"connecting"};return u.set(t,s),d.promise.then(a=>{l("Connected successfully",r),s.child=a,s.state="connected"}).catch(a=>{console.error("[Parent IFrame] Connection failed:",a),s.state="error"}),d}async function v(t){let e=u.get(t);if(!e||e.state!=="connected"||!e.child)return!0;try{return await e.child.requestClose()}catch(o){return console.error("[Parent IFrame] Failed to request close from child:",o),!0}}function w(t){let e=u.get(t);e&&(e.connection.destroy(),u.delete(t))}function C(t,e){var r;if(e.length===0)return;console.log("handleCmsAction",e);let o=new Set;for(let n of e){if(n.actionType==="invalidate"&&((r=n.keys)!=null&&r.length))for(let i of n.keys)o.add(i);if((n.type==="create"||n.type==="update")&&n.data){let i=n.data.slug;i&&T(i)}}if(o.size>0)for(let n of o)t.invalidateQueries({queryKey:[n],refetchType:"all"})}function T(t){if(typeof window=="undefined")return;let e=new URL(window.location.href);e.searchParams.set("slug",t),window.history.replaceState({},"",e.toString())}import{jsx as h,jsxs as q}from"react/jsx-runtime";var G=S(function({src:e="/admin",className:o="",hidden:r=!1,deferInvalidation:n=!1,...i},d){var y;let s=M(null),a=M([]),f=R(),[b,g]=W(!0),F=k(()=>g(!1),[]);return A(d,()=>({requestClose:async()=>{let c=s.current;return c?v(c):!0}}),[]),I(()=>{g(!0)},[e]),I(()=>{let c=s.current;return c?(p(c,m=>{console.log("[ChaiIFrameWindow] setOverlayVisible called:",m)},{onAction:m=>{if(n){a.current.push(m);return}C(f,[m])},onNavigate:m=>{},config:{debug:!0}}),()=>{n&&a.current.length>0&&(C(f,a.current),a.current=[]),w(c)}):void 0},[f,n]),q("div",{className:`chai-iframe-container ${o} ${r?"hidden":""}`,children:[b&&h("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-surface text-[13px] text-gray-500",children:h(H,{className:"animate-spin h-6 w-6 text-primary"})}),h("iframe",{...i,ref:s,src:e,sandbox:(y=i.sandbox)!=null?y:"allow-same-origin allow-scripts allow-forms",onLoad:F,style:{width:"100%",height:"100%",border:"none",display:"block",...i.style}})]})});export{G as a};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{e as p}from"./chunk-K6RHR4HT.js";import E from"@tailwindcss/container-queries";import B from"@tailwindcss/forms";import I from"@tailwindcss/typography";import h from"autoprefixer";import{existsSync as y}from"fs";import{readFile as k}from"fs/promises";import{createRequire as T}from"module";import s from"path";import{fileURLToPath as b}from"url";import S from"postcss";var u={},d="virtual:chai-builder-tailwind-config",C=/[^<>"'`\s]*[^<>"'`\s:]/g,l,g=t=>s.dirname(T(t).resolve("tailwindcss/package.json")),v=()=>{for(let t=process.cwd();;t=s.dirname(t)){let i=s.join(t,"node_modules","tailwindcss","package.json");if(y(i))return s.dirname(i);if(t===s.dirname(t))break}throw new Error("Unable to locate tailwindcss in node_modules.")},w=()=>{if(l)return l;let t=[()=>s.dirname(b(u.resolve("tailwindcss/package.json"))),()=>g(u.url),()=>g(s.join(process.cwd(),"package.json")),v];for(let i of t)try{return l=i(),l}catch(e){continue}throw new Error("Unable to resolve Tailwind CSS from the current project. Ensure `tailwindcss` is installed.")},P=t=>{let i=w(),n={tailwindcss:"index.css","tailwindcss/index.css":"index.css","tailwindcss/theme":"theme.css","tailwindcss/theme.css":"theme.css","tailwindcss/preflight":"preflight.css","tailwindcss/preflight.css":"preflight.css","tailwindcss/utilities":"utilities.css","tailwindcss/utilities.css":"utilities.css"}[t];if(!n)throw new Error(`Unsupported Tailwind stylesheet import: ${t}`);return s.join(i,n)},R=async(t,i)=>{let e=t.startsWith("tailwindcss")?P(t):s.resolve(i,t);return{path:e,base:s.dirname(e),content:await k(e,"utf8")}},x=(t,i=[])=>{let e=new Set(i);for(let n of t){let o=n.match(C)||[];for(let r of o)e.add(r)}return Array.from(e)},j=async({compile:t,includeBaseStyles:i,config:e,candidates:n})=>{let o=i?`@config "${d}";
|
|
2
|
+
@import "tailwindcss";`:`@config "${d}";
|
|
3
|
+
@import "tailwindcss/theme";
|
|
4
|
+
@import "tailwindcss/utilities";`;return(await t(o,{base:w(),loadModule:async(a,c,m)=>{if(a===d&&m==="config")return{path:a,base:c,module:e};throw new Error(`Unsupported Tailwind ${m} import: ${a}`)},loadStylesheet:R})).build(n)},f=async({markupStrings:t,safelist:i=[],includeBaseStyles:e=!1,config:n})=>{var c;let o=await import("tailwindcss");if(typeof o.compile=="function")return j({compile:o.compile,includeBaseStyles:e,config:n,candidates:x(t,i)});let r=[e?"@tailwind base;":"","@tailwind components;","@tailwind utilities;"].filter(Boolean).join(`
|
|
5
|
+
`);return(await S([(c=o.default)==null?void 0:c.call(o,{...n,safelist:i,content:[{raw:`<div>${t.join(" ")}</div>`,extension:"html"}]}),h()]).process(r,{from:void 0})).css};var J=async t=>{let i=JSON.stringify(t,null,2).replace(/#styles:([^"]*)/g,(e,n)=>n.replace(/#styles:,/g,"").replace(/#styles:/g,"").replace(/^,/g,""));return f({markupStrings:[i],includeBaseStyles:!1,config:{darkMode:"class",theme:{extend:{...p(),keyframes:{"accordion-down":{from:{height:"0"},to:{height:"var(--radix-accordion-content-height)"}},"accordion-up":{from:{height:"var(--radix-accordion-content-height)"},to:{height:"0"}}},animation:{"accordion-down":"accordion-down 0.2s ease-out","accordion-up":"accordion-up 0.2s ease-out"}}},plugins:[B,I,E],corePlugins:{preflight:!1}}})};export{f as a,J as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as n}from"./chunk-YEFMD4DS.js";import{filter as s}from"lodash-es";import{useMemo as o}from"react";import{useTranslation as m}from"react-i18next";var i=()=>{let{t:r}=m(),{data:a}=n(),e=o(()=>s(a,t=>t.hasSlug===!1),[a]);return(e==null?void 0:e.length)===1?r("Create {{name}}",{name:e[0].name}):r("Create Partial Block")},p=(r="pages")=>{let{t:a}=m(),{data:e}=n(),t=o(()=>s(e,c=>c.hasSlug===!1),[e]);return r==="pages"?a("Search Pages"):(t==null?void 0:t.length)===1?a("Search {{name}}",{name:t[0].name}):a("Search Partials")},f=()=>{let{t:r}=m(),{data:a}=n(),e=o(()=>s(a,t=>t.hasSlug===!1),[a]);return(e==null?void 0:e.length)===1?r("{{name}}s",{name:e[0].name}):r("Partials")};export{i as a,p as b,f as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as a,d as p,o as c}from"./chunk-VUWHFLT7.js";import{a as s}from"./chunk-ITX7QWN6.js";import{a as n}from"./chunk-3UEPBBE4.js";import l from"tailwindcss/plugin";var m=l(function({addBase:r,theme:o}){r({"h1,h2,h3,h4,h5,h6":{fontFamily:o("fontFamily.heading")},body:{fontFamily:o("fontFamily.body"),color:o("colors.foreground"),backgroundColor:o("colors.background")}})});import{each as f,isString as h,keys as g}from"lodash-es";var u=(r,o)=>r.map(e=>{let i=g(e).filter(t=>h(e[t])&&e[t].startsWith(n));return f(i,t=>{e[t]=`${n},${c(e[t],o)}`}),e});var d=a;function x(r){let o=/(asset:\/\/|https:\/\/asset\.localhost\/)(?:localhost\/)?[^"']+/g;return r.replace(o,e=>{let i=decodeURIComponent(e),t=i.indexOf("public");return t!==-1?i.substring(t+6):i})}var C=r=>{if(!r)return[];try{return JSON.parse(x(r)).filter(e=>!e._type.startsWith("@chai"))}catch(o){return[{_type:"Paragraph",_id:"error",content:"Invalid JSON. Please check the JSON string."}]}};var T=(r=s)=>({container:{center:!0,padding:"1rem",screens:{"2xl":"1400px"}},...p(r)});function B(r){return r.replace("%3A",":").replace("%2E",".").replace(/^www\./,"")}export{m as a,u as b,d as c,C as d,T as e,B as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{D as f}from"./chunk-2NYUIXUX.js";var L={TOPBAR_LEFT:"topbar-left",TOPBAR_CENTER:"topbar-center",TOPBAR_RIGHT:"topbar-right",MEDIA_MANAGER:"media-manager",TOP_BAR:"top-bar",BEFORE_OUTLINE:"before-outline",AFTER_BLOCK_OPTIONS:"after-block-options",AFTER_BODY_BLOCK_OPTIONS:"after-body-block-options",AFTER_BUILDER:"after-builder",AFTER_PAGE_MORE_OPTIONS:"after-page-more-options",SEO_PANEL:{TRIGGER:"after-seo-panel-tabs-triggers",CONTENT:"after-seo-panel-tabs-content"},BLOCK_STYLING_ELEMENTS:"block-styling-elements"};var i={},Y=(e,t)=>{i[e]={id:e,component:t,type:"widget"}},j=(e,t)=>{i[e]={id:e,component:t,type:"field"}},W=(e,t)=>{i[e]={id:e,component:t,type:"template"}},J=e=>Object.values(i).filter(t=>t.type===e).reduce((t,o)=>(t[o.id]=o.component,t),{});import{has as O,set as E,values as _}from"lodash-es";import{useMemo as B}from"react";var g={},Z=(e,t)=>{O(g,e)&&console.warn(`Add block tab with id ${e} already registered`),E(g,e,{id:e,...t})},ee=()=>B(()=>_(g),[]);import{useAtom as h}from"jotai";import{atomWithStorage as A}from"jotai/utils";var a={},F=(e,t)=>{a[e]&&console.warn(`Flag ${e} already exists`),a[e]={key:e,value:!1,...t}},ne=e=>{Object.entries(e).forEach(([t,o])=>{a[t]&&console.warn(`Flag ${t} already exists`),F(t,o)})},ie=()=>a,b=A("chai-feature-flags",[]),k=e=>{let[t]=h(b);return t.includes(e)},ae=e=>{let[t,o]=h(b);return()=>{t.includes(e)?o(t.filter(l=>l!==e)):o([...t,e])}},se=({flagKey:e,children:t})=>k(e)?t:null;import{values as I}from"lodash-es";var m={},ce=(e,t)=>{m[e]={...t,id:e}},ge=e=>m[e],me=()=>I(m);var S=async e=>e,ye=e=>{S=e},ue=async e=>await S(e);import{useMemo as P}from"react";var C=null,he=e=>{C=e},be=()=>P(()=>C,[]),Se=()=>{C=null};import{filter as v,has as N,set as M,values as H}from"lodash-es";import{useMemo as w}from"react";var y={},Ee=(e,t)=>{N(y,e)&&console.warn(`Panel ${e} already registered. Overriding...`),M(y,e,{id:e,...t})},_e=e=>w(()=>v(H(y),t=>t.position===e),[e]);import{Suspense as $,useMemo as D}from"react";import{ErrorBoundary as G}from"react-error-boundary";import{Fragment as U,jsx as r}from"react/jsx-runtime";var s={},ve=(e,t)=>{s[e]||(s[e]=[]),s[e].push(t)},z=e=>D(()=>{var t;return(t=s[e])!=null?t:[]},[e]),K=e=>e&&typeof e=="object"&&"$$typeof"in e,Ne=({slotId:e,context:t={},multiple:o=!0,defaultComponent:p,fallback:l=null})=>{let n=z(e);if(n.length===0)return p?r(p,{...t}):null;let u=o?n:[n[n.length-1]],R=u.some(c=>K(c)),T=r(U,{children:u.map((c,d)=>r(G,{fallback:null,onError:x=>{console.error(`[ChaiBuilder] Error in slot "${e}" component #${d}:`,x)},children:r(c,{...t})},`${e}-${d}`))});return R?r($,{fallback:l,children:T}):T};var $e=e=>{f.addRule(e)};export{L as a,i as b,Y as c,j as d,W as e,J as f,g,Z as h,ee as i,F as j,ne as k,ie as l,k as m,ae as n,se as o,ce as p,ge as q,me as r,ye as s,ue as t,C as u,he as v,be as w,Se as x,y,Ee as z,_e as A,s as B,ve as C,z as D,Ne as E,$e as F};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as W}from"./chunk-55SU3QPU.js";import{a as ut}from"./chunk-ODSL3KXG.js";import{a as st,b as pt,i as at,j as it}from"./chunk-4VNLL2IA.js";import{a as lt,b as mt,c as ct}from"./chunk-FLSV2QGU.js";import{b as B}from"./chunk-3IT7IIAV.js";import{b as rt}from"./chunk-IP4JBQOX.js";import{a as v}from"./chunk-LWYDGDPW.js";import{Check as wt,CornerDownLeftIcon as Lt,ImageIcon as St,MicIcon as Nt,PaperclipIcon as At,PlusIcon as Rt,SquareIcon as Ht,XIcon as gt}from"lucide-react";import{nanoid as Mt}from"nanoid";import{Children as Et,createContext as $,Fragment as Ft,startTransition as Dt,useCallback as G,useContext as J,useEffect as S,useMemo as E,useRef as F,useState as O}from"react";import{useTranslation as zt}from"react-i18next";import{cva as dt}from"class-variance-authority";import{jsx as U}from"react/jsx-runtime";function ft({className:t,...e}){return U("div",{"data-slot":"input-group",role:"group",className:v("group/input-group shadow-xs relative flex w-full items-center rounded-md border border-input outline-none transition-[color,box-shadow] dark:bg-input/30","h-9 has-[>textarea]:h-auto","has-[>[data-align=inline-start]]:[&>input]:pl-2","has-[>[data-align=inline-end]]:[&>input]:pr-2","has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3","has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3","has-[[data-slot=input-group-control]:focus-visible]:ring-1 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/20","has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40",t),...e})}var Ct=dt("text-muted-foreground flex h-auto cursor-text select-none items-center justify-center gap-2 py-1.5 text-sm font-medium group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]","inline-end":"order-last pr-3 has-[>button]:mr-[-0.4rem] has-[>kbd]:mr-[-0.35rem]","block-start":"[.border-b]:pb-3 order-first w-full justify-start px-3 pt-3 group-has-[>input]/input-group:pt-2.5","block-end":"[.border-t]:pt-3 order-last w-full justify-start px-3 pb-3 group-has-[>input]/input-group:pb-2.5"}},defaultVariants:{align:"inline-start"}});function K({className:t,align:e="inline-start",...p}){return U("div",{role:"group","data-slot":"input-group-addon","data-align":e,className:v(Ct({align:e}),t),onClick:l=>{var a,g;l.target.closest("button")||(g=(a=l.currentTarget.parentElement)==null?void 0:a.querySelector("input"))==null||g.focus()},...p})}var Tt=dt("flex items-center gap-2 text-sm shadow-none",{variants:{size:{xs:"h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-2 has-[>svg]:px-2 [&>svg:not([class*='size-'])]:size-3.5",sm:"h-8 gap-1.5 rounded-md px-2.5 has-[>svg]:px-2.5","icon-xs":"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0","icon-sm":"size-8 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});function q({className:t,type:e="button",variant:p="ghost",size:l="xs",...a}){return U(B,{type:e,"data-size":l,variant:p,className:v(Tt({size:l}),t),...a})}function Pt({className:t,...e}){return U(ut,{"data-slot":"input-group-control",className:v("flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent",t),...e})}import{Fragment as Ot,jsx as o,jsxs as y}from"react/jsx-runtime";var kt=$(null),_t=$(null);var vt=()=>J(kt);var Bt=()=>J(_t);var It=$(null),j=()=>{let t=Bt(),e=J(It),p=t!=null?t:e;if(!p)throw new Error("usePromptInputAttachments must be used within a PromptInput or PromptInputProvider");return p};function ye({data:t,className:e,...p}){var w;let l=j(),a=t.filename||"",P=((w=t.mediaType)!=null&&w.startsWith("image/")&&t.url?"image":"file")==="image",d=a||(P?"Image":"Attachment");return y(Ut,{children:[o(mt,{asChild:!0,className:"max-w-36",children:y("div",{className:v("group relative flex h-6 cursor-default select-none items-center gap-1.5 rounded-md border border-border px-1 text-sm font-medium transition-all hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",e),...p,children:[y("div",{className:"relative size-4 shrink-0",children:[o("div",{className:"bg-surface absolute inset-0 flex size-4 items-center justify-center overflow-hidden rounded transition-opacity group-hover:opacity-0",children:P?o(W,{alt:a||"attachment",className:"size-4 object-cover",height:16,src:t.url,width:16}):o("div",{className:"flex size-4 items-center justify-center text-muted-foreground",children:o(At,{className:"size-3"})})}),y(B,{"aria-label":"Remove attachment",className:"absolute inset-0 size-4 cursor-pointer rounded p-0 opacity-0 transition-opacity group-hover:pointer-events-auto group-hover:opacity-100 [&>svg]:size-2.5",onClick:C=>{C.stopPropagation(),l.remove(t.id)},type:"button",variant:"ghost",children:[o(gt,{}),o("span",{className:"sr-only",children:"Remove"})]})]}),o("span",{className:"flex-1 truncate",children:d})]},t.id)}),o(Gt,{className:"w-auto p-2",children:y("div",{className:"w-auto space-y-3",children:[P&&o("div",{className:"flex max-h-96 w-96 items-center justify-center overflow-hidden rounded-md border",children:o(W,{alt:a||"attachment preview",className:"max-h-full max-w-full object-contain",height:384,src:t.url,width:448})}),o("div",{className:"flex items-center gap-2.5",children:y("div",{className:"min-w-0 max-w-lg flex-1 space-y-1 px-0.5",children:[o("h4",{className:"truncate text-sm font-semibold leading-none",children:a||(P?"Image":"Attachment")}),t.mediaType&&o("p",{className:"truncate font-mono text-xs text-muted-foreground",children:t.mediaType})]})})]})})]})}function Ce({children:t,className:e,...p}){let l=j();return l.files.length?o("div",{className:v("flex flex-wrap items-center gap-2 p-3",e),...p,children:l.files.map(a=>o(Ft,{children:t(a)},a.id))}):null}var Te=({label:t="Add photos or files",accept:e,...p})=>{let l=j();return y(it,{...p,onSelect:a=>{a.preventDefault(),l.openFileDialog(e)},children:[p.children||o(St,{className:"mr-2 size-4"}),t]})},we=({className:t,accept:e,multiple:p,globalDrop:l,maxFiles:a,maxFileSize:g,maxCombinedSize:P,onError:d,onSubmit:w,children:C,...H})=>{let s=vt(),r=!!s,c=F(null),T=F(null),L=F(null);S(()=>{var m;let n=(m=T.current)==null?void 0:m.closest("form");n instanceof HTMLFormElement&&(L.current=n)},[]);let[N,b]=O([]),I=r&&s?s.attachments.files:N,M=G(n=>{var m;n&&c.current?c.current.accept=n:c.current&&(c.current.accept=e||""),(m=c.current)==null||m.click()},[e]),Q=G(n=>!e||e.trim()===""?!0:e.split(",").map(u=>u.trim()).some(u=>u.endsWith("/*")?n.type.startsWith(u.slice(0,-1)):n.type===u),[e]),Y=G(n=>{let m=Array.from(n),u=m.filter(x=>Q(x));if(m.length&&u.length===0){d==null||d({code:"accept",message:"No files match the accepted types."});return}let i=x=>g?x.size<=g:!0,f=u.filter(i);if(u.length>0&&f.length===0){d==null||d({code:"max_file_size",message:"All files exceed the maximum size."});return}let h=I.reduce((x,_)=>x+(_.size||0),0),R=f;if(P){let x=[],_=!1;for(let V of f)if(h+V.size<=P)x.push(V),h+=V.size;else{_=!0;break}_&&(d==null||d({code:"max_combined_size",message:`Combined file size exceeds the limit. Max allowed size is ${Math.round(P/1024/1024)}MB`})),R=x}let k=typeof a=="number"?Math.max(0,a-I.length):void 0,nt=typeof k=="number"?R.slice(0,k):R;if(typeof k=="number"&&R.length>k&&(d==null||d({code:"max_files",message:"Too many files. Some were not added."})),nt.length===0)return;let ot=[];for(let x of nt)ot.push({id:Mt(),type:"file",url:URL.createObjectURL(x),mediaType:x.type,filename:x.name,size:x.size});b(x=>x.concat(ot))},[Q,a,g,P,d,I]),A=E(()=>r&&s?n=>s.attachments.add(n):Y,[r,s,Y]),Z=E(()=>r&&s?n=>s.attachments.remove(n):n=>b(m=>{let u=m.find(i=>i.id===n);return u!=null&&u.url&&URL.revokeObjectURL(u.url),m.filter(i=>i.id!==n)}),[r,s,b]),D=E(()=>r&&s?()=>s.attachments.clear():()=>b(n=>{for(let m of n)m.url&&URL.revokeObjectURL(m.url);return[]}),[r,s,b]),tt=E(()=>r&&s?()=>s.attachments.openFileDialog():M,[r,s,M]);S(()=>{!r||!s||s.__registerFileInput(c,()=>{var n;return(n=c.current)==null?void 0:n.click()})},[r,s]),S(()=>{c.current&&I.length===0&&(c.current.value="")},[I]),S(()=>{let n=L.current;if(!n)return;let m=i=>{var f,h;(h=(f=i.dataTransfer)==null?void 0:f.types)!=null&&h.includes("Files")&&i.preventDefault()},u=i=>{var f,h,R;(h=(f=i.dataTransfer)==null?void 0:f.types)!=null&&h.includes("Files")&&i.preventDefault(),(R=i.dataTransfer)!=null&&R.files&&i.dataTransfer.files.length>0&&A(i.dataTransfer.files)};return n.addEventListener("dragover",m),n.addEventListener("drop",u),()=>{n.removeEventListener("dragover",m),n.removeEventListener("drop",u)}},[A]),S(()=>{if(!l)return;let n=u=>{var i,f;(f=(i=u.dataTransfer)==null?void 0:i.types)!=null&&f.includes("Files")&&u.preventDefault()},m=u=>{var i,f,h;(f=(i=u.dataTransfer)==null?void 0:i.types)!=null&&f.includes("Files")&&u.preventDefault(),(h=u.dataTransfer)!=null&&h.files&&u.dataTransfer.files.length>0&&A(u.dataTransfer.files)};return document.addEventListener("dragover",n),document.addEventListener("drop",m),()=>{document.removeEventListener("dragover",n),document.removeEventListener("drop",m)}},[A,l]);let z=F(void 0);S(()=>{z.current=()=>{var n;if(!r)for(let m of I)(n=m.url)!=null&&n.startsWith("blob:")&&URL.revokeObjectURL(m.url)}},[I,r]),S(()=>()=>{var n;(n=z.current)==null||n.call(z)},[r]);let ht=n=>{n.currentTarget.files&&A(n.currentTarget.files)},xt=async n=>{let u=await(await fetch(n)).blob();return new Promise((i,f)=>{let h=new FileReader;h.onloadend=()=>i(h.result),h.onerror=f,h.readAsDataURL(u)})},bt=E(()=>({files:I.map(n=>({...n,id:n.id})),add:A,remove:Z,clear:D,openFileDialog:tt,fileInputRef:c}),[I,A,Z,D,tt]),yt=n=>{n.preventDefault();let m=n.currentTarget,u=r&&s?s.textInput.value:new FormData(m).get("message")||"";r||m.reset(),Promise.all(I.map(async({...i})=>i.url&&i.url.startsWith("blob:")?{...i,url:await xt(i.url)}:i)).then(i=>{try{let f=w({text:u,files:i},n);f instanceof Promise?f.then(()=>{D(),r&&s&&s.textInput.clear()}).catch(()=>{}):(D(),r&&s&&s.textInput.clear())}catch(f){}})},et=y(Ot,{children:[o("span",{"aria-hidden":"true",className:"hidden",ref:T}),o("input",{accept:e,"aria-label":"Upload files",className:"hidden",multiple:p,onChange:ht,ref:c,title:"Upload files",type:"file"}),o("form",{className:v("w-full",t),onSubmit:yt,...H,children:o(ft,{className:"overflow-hidden",children:C})})]});return r?et:o(It.Provider,{value:bt,children:et})};var Le=({onChange:t,className:e,placeholder:p="What would you like to know?",...l})=>{let a=vt(),g=j(),[P,d]=O(!1),w=s=>{if(s.key==="Enter"){if(P||s.nativeEvent.isComposing||s.shiftKey)return;s.preventDefault();let r=s.currentTarget.form,c=r==null?void 0:r.querySelector('button[type="submit"]');if(c!=null&&c.disabled)return;r==null||r.requestSubmit()}if(s.key==="Backspace"&&s.currentTarget.value===""&&g.files.length>0){s.preventDefault();let r=g.files.at(-1);r&&g.remove(r.id)}},C=s=>{var T;let r=(T=s.clipboardData)==null?void 0:T.items;if(!r)return;let c=[];for(let L of r)if(L.kind==="file"){let N=L.getAsFile();N&&c.push(N)}c.length>0&&(s.preventDefault(),g.add(c))},H=a?{value:a.textInput.value,onChange:s=>{a.textInput.setInput(s.currentTarget.value),t==null||t(s)}}:{onChange:t};return o(Pt,{className:v("field-sizing-content max-h-48 min-h-16",e),name:"message",onCompositionEnd:()=>d(!1),onCompositionStart:()=>d(!0),onKeyDown:w,onPaste:C,placeholder:p,...l,...H})},Se=({className:t,...e})=>o(K,{align:"block-end",className:v("order-first flex-wrap gap-1",t),...e}),Ne=({className:t,...e})=>o(K,{align:"block-end",className:v("justify-between gap-1",t),...e}),Ae=({className:t,...e})=>o("div",{className:v("flex items-center gap-1",t),...e}),X=({variant:t="ghost",className:e,size:p,...l})=>{let a=p!=null?p:Et.count(l.children)>1?"sm":"icon-sm";return o(q,{className:v(e),size:a,type:"button",variant:t,...l})},Re=t=>o(st,{...t}),He=({className:t,children:e,...p})=>o(pt,{asChild:!0,children:o(X,{className:t,...p,children:e!=null?e:o(Rt,{className:"size-4"})})}),Me=({className:t,...e})=>o(at,{align:"start",className:v(t),...e});var Ee=({className:t,variant:e="default",size:p="icon-sm",status:l,children:a,...g})=>{let P=o(Lt,{className:"size-4"});return l==="submitted"?P=o(rt,{className:"h-4 w-4"}):l==="streaming"?P=o(Ht,{className:"size-4"}):l==="error"&&(P=o(gt,{className:"size-4"})),o(q,{"aria-label":"Submit",className:v(t),size:p,type:"submit",variant:e,...g,children:a!=null?a:P})},Fe=({className:t,textareaRef:e,onTranscriptionChange:p,...l})=>{let{t:a}=zt(),[g,P]=O(!1),[d,w]=O(null),C=F(null);S(()=>{if(typeof window!="undefined"&&("SpeechRecognition"in window||"webkitSpeechRecognition"in window)){let s=window.SpeechRecognition||window.webkitSpeechRecognition,r=new s;r.continuous=!0,r.interimResults=!0,r.lang="en-US",r.onstart=()=>{P(!0)},r.onend=()=>{P(!1)},r.onresult=c=>{var L,N;let T="";for(let b=c.resultIndex;b<c.results.length;b++){let I=c.results[b];I.isFinal&&(T+=(N=(L=I[0])==null?void 0:L.transcript)!=null?N:"")}if(T&&(e!=null&&e.current)){let b=e.current,I=b.value,M=I+(I?" ":"")+T;b.value=M,b.dispatchEvent(new Event("input",{bubbles:!0})),p==null||p(M)}},r.onerror=c=>{console.error("Speech recognition error:",c.error),P(!1)},C.current=r,Dt(()=>w(r))}return()=>{C.current&&C.current.stop()}},[e,p]);let H=G(()=>{d&&(g?d.stop():d.start())},[d,g]);return y("div",{className:"relative",children:[g&&y("div",{className:"absolute -top-0 left-0 z-10 flex items-center gap-x-1 rounded-md border-b bg-background p-1 shadow-xl",children:[y("div",{className:"flex items-center gap-x-0.5 pl-1",children:[o("div",{className:"h-2 w-0.5 animate-[pulse_0.8s_ease-in-out_infinite] rounded-full bg-primary"}),o("div",{className:"h-2.5 w-0.5 animate-[pulse_0.8s_ease-in-out_infinite_0.1s] rounded-full bg-primary"}),o("div",{className:"h-1.5 w-0.5 animate-[pulse_0.8s_ease-in-out_infinite_0.2s] rounded-full bg-primary"}),o("div",{className:"h-3 w-0.5 animate-[pulse_0.8s_ease-in-out_infinite_0.3s] rounded-full bg-primary"}),o("div",{className:"h-2 w-0.5 animate-[pulse_0.8s_ease-in-out_infinite_0.4s] rounded-full bg-primary"}),o("div",{className:"h-2.5 w-0.5 animate-[pulse_0.8s_ease-in-out_infinite_0.5s] rounded-full bg-primary"})]}),o(X,{onClick:H,className:"ml-2 h-4 w-4 p-0",variant:"default",size:"icon-xs",title:a("Done recording"),children:o(wt,{className:"!h-3.5 !w-3.5"})})]}),o(X,{className:v("relative h-6 w-6 p-0 transition-all duration-200",g&&"bg-primary text-primary-foreground",t),disabled:!d,onClick:H,"aria-label":l["aria-label"]||a("Start voice input"),title:l.title||a("Start voice input"),...l,children:o(Nt,{className:"!h-3.5 !w-3.5"})})]})};var Ut=({openDelay:t=0,closeDelay:e=0,...p})=>o(lt,{closeDelay:e,openDelay:t,...p});var Gt=({align:t="start",...e})=>o(ct,{align:t,...e});export{ye as a,Ce as b,Te as c,we as d,Le as e,Se as f,Ne as g,Ae as h,X as i,Re as j,He as k,Me as l,Ee as m,Fe as n};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{clsx as e}from"cnfast";import{twMerge as t}from"cnfast";function s(...r){return t(e(r))}export{s as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{N as c}from"./chunk-YTPQSO7V.js";import{get as a}from"lodash-es";var e=class i{constructor(){this.actions={}}static getInstance(){return i.instance||(i.instance=new i),i.instance}register(t,n){this.actions[t]=n}registerActions(t){for(let[n,o]of Object.entries(t))this.register(n,o)}getAction(t){return a(this.actions,t)}getAllActions(){return this.actions}};var r=e.getInstance(),u=r,y=i=>{let t=r.getAction(i);if(t)return t;let n=c(i);if(n)return n},A=r;export{e as a,u as b,y as c,A as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{atom as o}from"jotai";var t=o("");export{t as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as t}from"./chunk-LWYDGDPW.js";import*as r from"@radix-ui/react-scroll-area";import*as c from"react";import{jsx as l,jsxs as f}from"react/jsx-runtime";var S=c.forwardRef(({className:o,children:e,...a},i)=>f(r.Root,{ref:i,className:t("relative overflow-hidden",o),...a,children:[l(r.Viewport,{className:"h-full w-full rounded-[inherit]",children:e}),l(m,{}),l(r.Corner,{})]}));S.displayName=r.Root.displayName;var m=c.forwardRef(({className:o,orientation:e="vertical",...a},i)=>l(r.ScrollAreaScrollbar,{ref:i,orientation:e,className:t("flex touch-none select-none transition-colors",e==="vertical"&&"h-full w-1.5 border-l border-l-transparent p-[1px]",e==="horizontal"&&"h-1.5 flex-col border-t border-t-transparent p-[1px]",o),...a,children:l(r.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-muted-foreground/25 hover:bg-muted-foreground/40"})}));m.displayName=r.ScrollAreaScrollbar.displayName;export{S as a,m as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as o}from"./chunk-LWYDGDPW.js";import*as e from"@radix-ui/react-checkbox";import{CheckIcon as s}from"@radix-ui/react-icons";import*as i from"react";import{jsx as r}from"react/jsx-runtime";var m=i.forwardRef(({className:t,...c},a)=>r(e.Root,{ref:a,className:o("peer h-4 w-4 shrink-0 cursor-pointer rounded-sm border border-border hover:border-foreground/50 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",t),...c,children:r(e.Indicator,{className:o("flex items-center justify-center text-current"),children:r(s,{className:"h-4 w-4"})})}));m.displayName=e.Root.displayName;export{m as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useAtom as E}from"jotai";import{atomWithStorage as A}from"jotai/utils";import{useCallback as g}from"react";import{includes as S,filter as O,flatMap as p,find as C,isEmpty as c,union as F,uniq as M}from"lodash-es";var T=A("expandedPagesState",[]),P=r=>p(r,t=>[t,...t.children?P(t.children):[]]),b=(r,t)=>{let n=(s,i=[])=>{for(let e of s){let d=[...i,e.id];if(e.id===t)return d;if(e.children&&e.children.length>0){let l=n(e.children,d);if(l)return l}}return null};return n(r)||[]},y=(r,t)=>{if(!t)return[];let n=P(r),s=C(n,i=>i.id===t);if(s){if(s.parent)return[...y(r,s.parent),t];let i=b(r,t);if(!c(i))return i}return[t]},k=r=>{let t=new Set,n=(s,i=[])=>{s.forEach(e=>{let d=[...i,e.id];e.shouldExpandOnSearch&&d.forEach(l=>t.add(l)),e.children&&!c(e.children)&&n(e.children,d)})};return n(r),Array.from(t)},W=r=>{let[t,n]=E(T),s=r?S(t,r):!1,i=g(()=>{n(a=>s?O(a,o=>o!==r):[...a,r])},[n,s,r]),e=g((a,o)=>{if(!o||c(a))return;let h=P(a),f=y(h,o);if(!Array.isArray(f)||c(f))return;let u=f.slice(0,-1);c(u)||n(x=>M([...x,...u]))},[n]),d=g(a=>{if(c(a))return;let o=k(a);c(o)||n(h=>F(h,o))},[n]),l=g(a=>{if(c(a))return;let o=p(a,h=>{let f=u=>[u.id,...u.children?p(u.children,f):[]];return f(h)});n(o)},[n]),m=g(()=>{n([])},[n]);return{isExpanded:s,toggleExpanded:i,updateForSelectedPage:e,expandedPages:t,expandPagesOnSearch:d,setExpandedPages:n,expandAll:l,collapseAll:m}};export{W as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./chunk-LWYDGDPW.js";import*as r from"react";import{jsx as s}from"react/jsx-runtime";var n=r.forwardRef(({className:o,...t},a)=>s("textarea",{className:e("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-xs text-foreground shadow-sm placeholder:text-muted-foreground/70 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",o),ref:a,...t}));n.displayName="Textarea";export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./chunk-LWYDGDPW.js";import*as a from"react";import{jsx as r}from"react/jsx-runtime";var o=a.forwardRef(({className:s,value:t=0,...i},l)=>r("div",{ref:l,className:e("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",s),...i,children:r("div",{className:"h-full bg-primary transition-all duration-300",style:{width:`${Math.min(100,Math.max(0,t))}%`}})}));o.displayName="Progress";export{o as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{atom as e}from"jotai";var i=e(null);export{i as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{AsyncLocalStorage as S}from"async_hooks";import"server-only";import{AsyncLocalStorage as f}from"async_hooks";import"server-only";var l=0,d=new f;function q(e){l=e}function i(){return l}function a(e,t){return d.run(e,t)}function b(){var e;return(e=d.getStore())!=null?e:l}function R(e){return b()>=e}var n=new S,h=()=>({appId:null,userId:null,draftMode:!1,fallbackLang:"en",lang:null,initialized:!1,siteUrl:null,licenseCheck:null,delegatedScopes:null,cacheKeys:new Map,traceId:null,traceStart:0,traceLabel:null,traceDetail:null,traceDepth:0});function I(e,t){var r,o,s,c,p,g;e.appId=t.appId,e.userId=(r=t.userId)!=null?r:null,e.draftMode=(o=t.draft)!=null?o:!1,e.siteUrl=(s=t.siteUrl)!=null?s:null,e.lang=(c=t.lang)!=null?c:"en",e.fallbackLang="en",e.licenseCheck=(p=t.licenseCheck)!=null?p:null,e.delegatedScopes=(g=t.delegatedScopes)!=null?g:null,e.initialized=!0,e.cacheKeys.clear(),e.traceId=null,e.traceStart=0,e.traceLabel=null,e.traceDetail=null,e.traceDepth=0}var u=()=>{let e=n.getStore();if(e)return e;throw new Error("ChaiBuilder method called outside of a request context")},T=()=>n.getStore();function z(e,t){let r=n.getStore();return r!=null&&r.initialized&&r.appId===e.appId?a(i(),t):n.run(h(),()=>(I(u(),e),a(i(),t)))}function k(e,t){return e?n.run(e,t):t()}var U=e=>n.run(h(),e),C=()=>{let e=u();if(!e.initialized||!e.appId)throw new Error("Please initialize ChaiBuilder with an API key");return e},D=()=>{let e=u();if(!e.initialized||!e.appId)throw new Error("Please initialize ChaiBuilder with an API key");if(!e.userId)throw new Error("Please initialize ChaiBuilder with initWithUser() for this operation");return e},W=C,M=D;export{q as a,b,R as c,u as d,T as e,z as f,k as g,U as h,C as i,D as j,W as k,M as l};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as r}from"./chunk-3UEPBBE4.js";import{get as c,has as a}from"lodash-es";var p=(t,e)=>{if(!t)return!0;let o=r(t);return o&&o.canAcceptBlock?o.canAcceptBlock(e):!1},l=t=>{let e=r(t);return e?a(e,"canAcceptBlock"):!1},s=(t,e)=>{let o=r(e);return o&&o.canBeNested?o.canBeNested(t):!0},u=t=>{let e=r(t);return e&&e.canDuplicate?e.canDuplicate():!0},g=t=>{let e=r(t);return e&&e.canDelete?e.canDelete():!0};var d=(t,e)=>{let o=t==null?void 0:t.pageTypes;return!Array.isArray(o)||o.length===0?!0:o.includes(e)};export{p as a,l as b,s as c,u as d,g as e,d as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as h}from"./chunk-WOT6VMZA.js";var M={};h(M,{aiAddonPurchases:()=>L,aiCreditAddons:()=>P,aiLogs:()=>W,appApiKeys:()=>x,appAssets:()=>E,appDomains:()=>I,appFormSubmissions:()=>R,appPages:()=>D,appPagesMetadata:()=>J,appPagesOnline:()=>H,appPagesRevisions:()=>j,appTrash:()=>O,appUserAddons:()=>q,appUserPlans:()=>K,appUsers:()=>B,apps:()=>d,appsOnline:()=>C,clientUsers:()=>U,clients:()=>s,invitedUsers:()=>z,libraries:()=>c,libraryItems:()=>V,libraryTemplates:()=>F,roles:()=>S,webhookEvents:()=>v});import{sql as w}from"drizzle-orm";import{bigint as f,boolean as r,date as _,doublePrecision as T,foreignKey as o,index as p,json as g,jsonb as a,numeric as u,pgSchema as k,pgTable as A,primaryKey as b,text as e,timestamp as l,unique as N,uuid as n,varchar as m}from"drizzle-orm/pg-core";var y=process.env.CHAIBUILDER_POSTGRESS_SCHEMA,i=y?k(y).table:A,x=i("app_api_keys",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),apiKey:e().default(""),app:n(),status:e().default("ACTIVE")},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_api_keys_app_fkey"})]),z=i("invited_users",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),email:e(),client:n(),status:e().default("invited"),app:n()},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"invited_users_app_fkey"}),o({columns:[t.client],foreignColumns:[s.id],name:"invited_users_client_fkey"})]),d=i("apps",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:e(),user:e(),settings:a().default({}),theme:a().default({}),fallbackLang:e().default("en"),languages:a().default([]),changes:a(),deletedAt:l({withTimezone:!0,mode:"string"}),client:n(),designTokens:a().default({}),ai:a().default({}),configData:a().default({}),consentConfig:a().default({})},t=>[o({columns:[t.client],foreignColumns:[s.id],name:"apps_client_fkey"})]),C=i("apps_online",{id:n().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:e(),user:e(),settings:a().default({}),theme:a().default({}),fallbackLang:e().default("en"),languages:a().default([]),changes:a(),apiKey:e(),deletedAt:l({withTimezone:!0,mode:"string"}),client:n(),designTokens:a().default({}),ai:a().default({}),configData:a().default({}),consentConfig:a().default({})},t=>[o({columns:[t.client],foreignColumns:[s.id],name:"apps_online_client_fkey"})]),c=i("libraries",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:e(),app:n(),type:e(),status:e().default("active").notNull(),client:n()},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"libraries_app_fkey"})]),v=i("webhook_events",{id:f({mode:"number"}).primaryKey().generatedByDefaultAsIdentity({name:"webhook_events_id_seq",startWith:1,increment:1,minValue:1,cache:1}),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),provider:e(),eventType:e(),payload:a(),userId:e(),clientId:n()},t=>[o({columns:[t.clientId],foreignColumns:[s.id],name:"webhook_events_clientId_fkey"})]),K=i("app_user_plans",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:e(),planId:e().default("FREE"),nextBilledAt:l({mode:"string"}).notNull(),subscriptionId:e(),client:n(),scheduledForCancellation:r().default(!1)},t=>[o({columns:[t.client],foreignColumns:[s.id],name:"app_user_plans_client_fkey"})]),s=i("clients",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:e(),status:e().default("active"),billingStartDate:_(),startDate:_(),settings:a().default({}),loginHtml:e(),features:a().default({}),paymentConfig:a().default({}),theme:e(),helpHtml:e(),madeWithBadge:e(),superAdmins:a().default([]),ai:a().default({models:[]}),plansAndAddOns:a().default({plans:[],addOns:[],provider:"DODO",paymentEnv:"sandbox"}),rolesAndPermissions:a().default({admin:{permissions:{"*":!0}},editor:{permissions:{"*":!1}},designer:{permissions:{"*":!1}}}),coreFeatures:a().default({ai:!0,email:!1,api_access:!1,multi_user:!1,export_code:!0,import_html:!0,multilingual:!1,revision_and_restore:!1}),envs:a().default({payment:{live:{client:"",server:""},sandbox:{client:"",server:""}}})}),R=i("app_form_submissions",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),app:n(),formData:g(),additionalData:g(),formName:e().default(""),pageUrl:e()},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_form_submissions_app_fkey"})]),I=i("app_domains",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),app:n(),hosting:e().default("vercel"),hostingProjectId:e().default("env"),subdomain:e(),domain:e(),domainConfigured:r().default(!1)},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_domains_app_fkey"})]),B=i("app_users",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:e(),app:n(),role:e(),permissions:a(),status:e().default("active").notNull()},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_users_app_fkey"})]),S=i("roles",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:e().notNull(),label:e(),permissions:a().default([]).notNull(),isSystem:r().default(!1).notNull()},t=>[N("roles_name_unique").on(t.name)]),D=i("app_pages",{createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:e().notNull(),lang:e().default("").notNull(),seo:a().default({}),app:n().notNull(),id:n().defaultRandom().primaryKey().notNull(),name:e().notNull(),primaryPage:n(),blocks:a().default([]),currentEditor:e(),changes:a(),online:r().default(!1),parent:n(),pageType:e(),lastSaved:l({withTimezone:!0,mode:"string"}),dynamic:r().default(!1),libRefId:n(),dynamicSlugCustom:e().default(""),metadata:a().default({}),jsonld:a().default({}),globalJsonLds:a().default([]),links:e(),partialBlocks:e(),designTokens:a(),ai:a().default({}),deletedAt:l({withTimezone:!0,mode:"string"}),deletedBy:e(),createdBy:e(),tracking:a().default({})},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_pages_app_fkey"}),o({columns:[t.parent],foreignColumns:[t.id],name:"app_pages_parent_fkey"}),p("idx_app_pages_app_slug").on(t.app,t.slug)]),P=i("ai_credit_addons",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:e().notNull(),client:n(),creditsTotal:u().notNull(),creditsUsed:u().default("0").notNull(),purchaseId:e(),status:e().default("active").notNull()},t=>[p("ai_credit_addons_status_idx").using("btree",t.status.asc().nullsLast().op("text_ops")),p("ai_credit_addons_user_idx").using("btree",t.user.asc().nullsLast().op("text_ops")),o({columns:[t.client],foreignColumns:[s.id],name:"ai_credit_addons_client_fkey"})]),L=i("ai_addon_purchases",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:e().notNull(),client:n(),addonId:e(),credits:u().notNull(),amount:u(),currency:e().default("USD"),paymentProvider:e(),paymentId:e(),status:e().default("pending").notNull(),metadata:a().default({})},t=>[p("ai_addon_purchases_user_idx").using("btree",t.user.asc().nullsLast().op("text_ops")),o({columns:[t.client],foreignColumns:[s.id],name:"ai_addon_purchases_client_fkey"})]),E=i("app_assets",{id:n().defaultRandom().primaryKey().notNull(),app:n(),name:e(),url:e(),size:e(),folderId:e(),thumbnailUrl:e(),duration:u(),format:e(),width:u(),height:u(),createdBy:e(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),type:e(),updatedAt:l({withTimezone:!0,mode:"string"}),description:a().default({}),deletedAt:l({withTimezone:!0,mode:"string"}),deletedBy:e()},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_assets_app_fkey"})]),U=i("client_users",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:e(),client:n(),data:a().default({})},t=>[o({columns:[t.client],foreignColumns:[s.id],name:"client_users_client_fkey"}),N("client_users_user_client_unique").on(t.user,t.client)]),q=i("app_user_addons",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow(),addonId:e().notNull(),client:n(),user:e(),status:e().default("active")},t=>[o({columns:[t.client],foreignColumns:[s.id],name:"app_user_addons_client_fkey"})]),O=i("app_trash",{id:n().defaultRandom().primaryKey().notNull(),deletedAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),deletedBy:e(),entityType:e().notNull(),entityId:e(),metadata:a().default({}),app:n()},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"trash_app_fkey"})]),j=i("app_pages_revisions",{createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:e().notNull(),lang:e().default("").notNull(),seo:a().default({}),app:n().notNull(),id:n().notNull(),name:e().notNull(),primaryPage:n(),blocks:a().default([]),currentEditor:e(),changes:a(),partialBlocks:e(),links:e(),online:r().default(!0),pageType:e(),parent:n(),lastSaved:l({withTimezone:!0,mode:"string"}),dynamic:r().default(!1),uid:n().defaultRandom().primaryKey().notNull(),type:e(),libRefId:n(),dynamicSlugCustom:e().default(""),metadata:a().default({}),jsonld:a().default({}),globalJsonLds:a().default([]),designTokens:a(),ai:a().default({}),createdBy:e(),deletedBy:e(),deletedAt:l({withTimezone:!0,mode:"string"}),tracking:a().default({})},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_pages_revisions_app_fkey"})]),F=i("library_templates",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:e(),name:e(),description:e(),pageId:n(),pageType:e(),library:n(),preview:e(),deletedAt:l({withTimezone:!0,mode:"string"}),createdBy:e(),deletedBy:e()},t=>[o({columns:[t.library],foreignColumns:[c.id],name:"library_templates_library_fkey"})]),H=i("app_pages_online",{createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:e().notNull(),lang:e().default("").notNull(),seo:a().default({}),app:n().notNull(),id:n().primaryKey().notNull(),name:e().notNull(),primaryPage:n(),blocks:a().default([]),currentEditor:e(),changes:a(),partialBlocks:e(),links:e(),online:r().default(!0),pageType:e(),parent:n(),lastSaved:l({withTimezone:!0,mode:"string"}),dynamic:r().default(!1),libRefId:n(),dynamicSlugCustom:e().default(""),metadata:a().default({}),jsonld:a().default({}),globalJsonLds:a().default([]),designTokens:a(),ai:a().default({}),createdBy:e().default(""),deletedAt:l({withTimezone:!0,mode:"string"}),deletedBy:e(),tracking:a().default({})},t=>[o({columns:[t.app],foreignColumns:[d.id],name:"app_pages_online_app_fkey"}),p("idx_app_pages_online_app_slug").on(t.app,t.slug)]),V=i("library_items",{id:n().defaultRandom().primaryKey().notNull(),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),library:n(),name:e(),description:e(),blocks:a().default([]),preview:e(),group:e().default("general"),user:e(),html:e(),deletedAt:l({withTimezone:!0,mode:"string"}),deletedBy:e(),createdBy:e()},t=>[o({columns:[t.library],foreignColumns:[c.id],name:"library_items_library_fkey"})]),W=i("ai_logs",{id:f({mode:"number"}).primaryKey().generatedByDefaultAsIdentity({name:"ai_logs_id_seq",startWith:1,increment:1,minValue:1,cache:1}),createdAt:l({withTimezone:!0,mode:"string"}).defaultNow().notNull(),model:e(),totalDuration:u(),error:e(),totalTokens:u(),tokenUsage:a(),user:e(),client:n(),cost:T().default(w`'0'`),prompt:e(),app:n(),creditSource:e().default("monthly"),addonId:n()},t=>[p("ai_logs_addon_id_idx").using("btree",t.addonId.asc().nullsLast().op("uuid_ops")),p("ai_logs_credit_source_idx").using("btree",t.creditSource.asc().nullsLast().op("text_ops")),o({columns:[t.app],foreignColumns:[d.id],name:"ai_logs_app_fkey"}),o({columns:[t.client],foreignColumns:[s.id],name:"ai_logs_client_fkey"})]),J=i("app_pages_metadata",{id:f({mode:"number"}).generatedByDefaultAsIdentity({name:"app_pages_metadata_id_seq",startWith:1,increment:1,minValue:1,cache:1}),createdAt:l("created_at",{withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:m().notNull(),pageId:n().defaultRandom(),publishedAt:l({withTimezone:!0,mode:"string"}),pageType:m(),pageBlocks:m(),dataBindings:m(),pageContent:m(),dataProviders:m(),app:n().defaultRandom().notNull()},t=>[b({columns:[t.slug,t.app],name:"app_pages_metadata_pkey"})]);export{x as a,z as b,d as c,C as d,c as e,v as f,K as g,s as h,R as i,I as j,B as k,S as l,D as m,P as n,L as o,E as p,U as q,q as r,O as s,j as t,F as u,H as v,V as w,W as x,J as y,M as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function a(n){if(!n)throw new Error("Empty AI response");let t=n.trim(),e=t.match(/```json\s*([\s\S]*?)\s*```/i);if(e)t=e[1];else{let r=t.match(/```\s*([\s\S]*?)\s*```/i);r&&(t=r[1])}if(t=t.replace(/^--START--/gi,"").replace(/--END--$/gi,"").trim(),!t)throw new Error("Empty AI response");try{return JSON.parse(t)}catch(r){throw new Error("Invalid JSON response from AI")}}function o(n){let t=n instanceof Error?n.message:String(n),e=t.toLowerCase();return e.includes("failed to fetch")||e.includes("networkerror")?"Unable to connect to the AI service. Please check your internet connection and try again.":e.includes("timeout")||e.includes("timed out")?"The request took too long to complete. Please try again with a simpler request.":e.includes("rate limit")||e.includes("too many requests")||e.includes("429")?"You've made too many requests. Please wait a moment before trying again.":e.includes("unauthorized")||e.includes("401")||e.includes("authentication")?"Your session has expired. Please refresh the page and try again.":e.includes("500")||e.includes("internal server error")?"The AI service is temporarily unavailable. Please try again in a few moments.":e.includes("503")||e.includes("service unavailable")?"The AI service is currently under maintenance. Please try again later.":e.includes("too long")||e.includes("token limit")||e.includes("context length")?"The content is too long for the AI to process. Please try with a smaller selection.":e.includes("quota")||e.includes("limit exceeded")||e.includes("credits")?"Your AI usage limit has been reached. Please upgrade your plan or wait for the limit to reset.":e.includes("invalid")||e.includes("parse")||e.includes("json")?"Received an unexpected response from the AI. Please try again.":e.includes("aborted")||e.includes("cancelled")?"The request was cancelled.":t.length<100?`Something went wrong: ${t}`:"Sorry, something went wrong. Please try again."}var i=n=>{if(!n||typeof n!="string")return!1;if(/^data:([a-zA-Z0-9]+\/[a-zA-Z0-9-.+]+)?;base64,([A-Za-z0-9+/=]+)$/.test(n))return!0;if(!/^[A-Za-z0-9+/=]+$/.test(n)||n.length%4!==0)return!1;try{return atob(n),!0}catch(r){return!1}},l=({clean:n=!1}={})=>{try{let t="AI_AUTO_MODE",e=document.cookie.match(new RegExp("(^| )"+t+"=([^;]+)")),r=e?decodeURIComponent(e[2]):null;if(!r)return null;let s=JSON.parse(r);return n&&(document.cookie=`${t}=; path=/; max-age=0;`),s}catch(t){return null}};export{a,o as b,i as c,l as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as x,d as R,e as w}from"./chunk-YEFMD4DS.js";import{a as h}from"./chunk-T2YYNX6Z.js";import{e as L}from"./chunk-AOJE5WI3.js";import{xa as y}from"./chunk-2NYUIXUX.js";import{a as P}from"./chunk-WEVKAJMV.js";import{b as U,d as A}from"./chunk-ZAU65LBG.js";import{useQuery as j}from"@tanstack/react-query";import{atom as ot,useAtom as it}from"jotai";import{useCallback as O,useEffect as b,useRef as ct,useState as v}from"react";import{atom as W,useAtom as at}from"jotai";import{find as F}from"lodash-es";import{useCallback as Y,useMemo as S}from"react";import{useQuery as tt}from"@tanstack/react-query";import{reverse as et,sortBy as nt}from"lodash-es";var _=e=>{let a=A(),[n]=h(),t=e!=null?e:n.get("page"),c=L(),{languages:s}=y();return tt({queryKey:[P.GET_LANGUAGE_PAGES,t],staleTime:1/0,gcTime:0,placeholderData:[],queryFn:async()=>{if(!t)return null;let r=await c(a,{action:P.GET_LANGUAGE_PAGES,data:{id:t}});return et(nt(r,"primaryPage"))},enabled:!!t&&!!(s!=null&&s.length)})};var st=W({lastSaved:void 0}),xt=()=>at(st),_t=()=>{let[e]=h(),a=e.get("page"),{data:n,isFetching:t}=_();return{data:S(()=>{let s=n==null?void 0:n.find(r=>r.id===a);return s?{...s}:{}},[n,a]),isFetching:t}},D=()=>{let[e]=h(),a=e.get("page"),{data:n,isFetching:t}=x();return{data:S(()=>{let s=n==null?void 0:n.find(r=>r.id===a);return s?{...s}:{}},[n,a]),isFetching:t}},rt=()=>{var g;let[e]=h(),a=(g=e.get("lang"))!=null?g:"",n=e.get("page"),{data:t,isFetching:c}=R(a),{data:s}=x(),{data:r}=w();return{data:S(()=>{let i=s==null?void 0:s.find(p=>p.id===n),o=F(r,{key:i==null?void 0:i.pageType});if((o==null?void 0:o.hasSlug)===!1||a=="")return i?{...i}:{};let d=t?Object.values(t).find(p=>p.lang===a&&p.primaryPage===n):void 0;return d?{...d}:{}},[t,s,a,n,r]),isFetching:c}},kt=W({});var $=(e,a)=>{if(!a)return e;let n=e.endsWith("/")?"":"/",t=a.startsWith("/")?a.slice(1):a;return e+n+t},Ft=()=>{let{selectedLang:e,fallbackLang:a}=y(),{data:n}=rt(),{data:t}=D(),{data:c}=w(),s=k(),r=U("getLiveUrl",i=>i),m=Y(i=>{var o;return(o=F(c,{key:i}))==null?void 0:o.hasSlug},[c]),g=e===a?"":e;return S(()=>{let i=!m(t==null?void 0:t.pageType),o=n==null?void 0:n.slug,u=r(i?`/_partial/${g!==""?g+"/":""}${t==null?void 0:t.id}`:o||"/");return n!=null&&n.dynamic&&s?$(u,s):u},[r,n,t,m,g,s])},Ct=()=>{let{selectedLang:e,fallbackLang:a}=y(),n=U("getPreviewUrl",o=>o),{data:t}=D(),{data:c}=_(),{data:s}=w(),r=k(),m=S(()=>{var o;return(o=c==null?void 0:c.find(u=>(u==null?void 0:u.lang)===e))==null?void 0:o.slug},[e,c]),g=Y(o=>{var u;return(u=F(s,{key:o}))==null?void 0:u.hasSlug},[s]),i=e===a?"":e;return S(()=>{if(typeof n!="function")return"";let o=!g(t==null?void 0:t.pageType),u=n(o?`/_partial/${i!==""?i+"/":""}${t==null?void 0:t.id}`:m||"");return u&&(t!=null&&t.dynamic)&&r?$(u,r):u},[n,m,t==null?void 0:t.pageType,g,t==null?void 0:t.id,i,r,t==null?void 0:t.dynamic])};function C(e,a){return e||a}function K(){return typeof window=="undefined"?null:new URLSearchParams(window.location.search).get("slug")}function I(e){if(typeof window=="undefined")return;let a=new URL(window.location.href);e?a.searchParams.set("slug",e):a.searchParams.delete("slug"),window.history.replaceState({},"",a.toString())}var ut=ot(null),B=()=>it(ut),k=()=>{let[e]=B();return(e==null?void 0:e.slug)||""};function lt(e,a){let[n,t]=v(e);return b(()=>{let c=setTimeout(()=>t(e),a);return()=>clearTimeout(c)},[e,a]),n}var gt=({query:e,slug:a,enabled:n=!0})=>{let{selectedLang:t,fallbackLang:c}=y(),{data:s}=D(),r=s==null?void 0:s.pageType,m=A(),g=L(),i=C(t,c),{data:o,isFetching:u}=j({queryKey:[P.GET_DYNAMIC_PAGES,e,a,r,i],staleTime:3600*1e3,placeholderData:[],queryFn:async()=>await g(m,{action:P.GET_DYNAMIC_PAGES,data:{query:e,slug:a,pageType:r,lang:i}})||[],enabled:!!r&&n});return{allLangPages:o,data:o,isFetching:u}},Bt=()=>{var Q;let{selectedLang:e,fallbackLang:a}=y(),[n,t]=B(),c=A(),s=L(),{data:r}=D(),m=r==null?void 0:r.pageType,g=r==null?void 0:r.dynamic,[i,o]=v(""),u=lt(i,500),[d,p]=v(()=>K()),[V,T]=v(!1),E=(Q=n==null?void 0:n.slug)!=null?Q:null,M=C(e,a),{allLangPages:f,data:z,isFetching:H}=gt({query:u}),q=ct(e);b(()=>{q.current!==e&&(q.current=e,E&&(p(E),t(null),T(!1)))},[e,E,t]);let{data:G,isSuccess:N}=j({queryKey:[P.GET_DYNAMIC_PAGES,"active",d,M,m],enabled:!!m&&!!g&&(!!d||!!f&&f.length>0&&!E),queryFn:async()=>{if(d){let l=await s(c,{action:P.GET_DYNAMIC_PAGES,data:{query:"",slug:d,lang:M,pageType:m}});return(l==null?void 0:l[0])||null}return(f==null?void 0:f[0])||null}});b(()=>{N&&(G?(t(G),p(null),I(G.slug),T(!1)):d&&(T(!0),p(null)))},[N,G,d,t]),b(()=>{if(!n||!f)return;let l=f.find(Z=>Z.id===n.id);l&&l.name!==n.name&&t(l)},[f,n,t]);let J=O(l=>{t(l),T(!1),I((l==null?void 0:l.slug)||null)},[t]),X=O(l=>o(l),[]);return{isFetching:H,dynamicPage:n,searchQuery:i,selectedLang:e,dynamicPages:z,allLangPages:f,isLangMissing:V,updateDynamicPage:J,updateSearchQuery:X}};export{k as a,Bt as b,_ as c,xt as d,_t as e,D as f,rt as g,Ft as h,Ct as i};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function n(t,a,o=!1){let e=t.toString()?`?${t.toString()}`:"/";o?window.history.replaceState(null,"",e):window.history.pushState({},"",e),a(t),window.dispatchEvent(new PopStateEvent("popstate"))}export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as f}from"./chunk-45ELAD2J.js";import{g as p}from"./chunk-DZ72OHTD.js";import{z as c}from"./chunk-OSGXFZTA.js";import{c as l}from"./chunk-OQZ4EPOM.js";import{drizzle as y}from"drizzle-orm/postgres-js";import P from"postgres";function d(e){var n;let[r,...t]=e;return Array.isArray(r)&&"raw"in r?r.reduce((s,a,u)=>{var i;return s+a+((i=t[u])!=null?i:"")},""):String((n=e[0])!=null?n:"query")}function h(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.values=="function"}function b(e,r,t){return e.then(()=>p(Math.round(performance.now()-t),r()),()=>p(Math.round(performance.now()-t),r())),e}function m(e,r,t){return h(e)?b(e,r,t):e&&typeof e.then=="function"?e.then(n=>(p(Math.round(performance.now()-t),r()),n),n=>{throw p(Math.round(performance.now()-t),r()),n}):e}function w(e){return new Proxy(e,{apply(r,t,n){if(!l(1))return Reflect.apply(r,t,n);let o=performance.now(),s=Reflect.apply(r,t,n);return m(s,()=>d(n),o)},get(r,t,n){let o=Reflect.get(r,t,n);return typeof o=="function"&&t==="unsafe"?(...s)=>{if(!l(1))return o.apply(r,s);let a=performance.now(),u=o.apply(r,s);return m(u,()=>{var i;return String((i=s[0])!=null?i:"unsafe query")},a)}:typeof o=="function"?o.bind(r):o}})}function g(e,r,t){return y(w(e),{schema:r,logger:t})}function z(e,r,t){var a,u,i;let n;try{n=new URL(e.replace(/^postgres:/,"postgresql:"))}catch(S){n=new URL("postgresql://localhost")}let o=n.port==="6543"||n.searchParams.get("pgbouncer")==="true",s=n.hostname.includes("supabase");return{max:(a=r==null?void 0:r.max)!=null?a:o?5:1,idle_timeout:(u=r==null?void 0:r.idle_timeout)!=null?u:o&&s?5:20,connect_timeout:(i=r==null?void 0:r.connect_timeout)!=null?i:10,prepare:!1,...s?{ssl:"require"}:{},...t?{connection:{search_path:t}}:{}}}function q(e,r,t){return P(e,z(e,r,t))}function D(e){if(+("url"in e)+ +("sql"in e)+ +("drizzle"in e)!==1)throw new Error("ChaiBuilder: createPostgresDB expects exactly one of `url`, `sql`, or `drizzle`.")}function O(e){if(D(e),"drizzle"in e)return{drizzle:e.drizzle,schema:c,dialect:"pg"};if("sql"in e)return{drizzle:g(e.sql,c,f),schema:c,dialect:"pg"};let r=q(e.url,e.pool,e.schema);return{drizzle:g(r,c,f),schema:c,dialect:"pg",teardown:()=>{r.end()}}}export{g as a,q as b,O as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{atom as f,useAtom as g}from"jotai";import{get as r}from"lodash-es";import{useCallback as B,useEffect as F,useMemo as x,useRef as h}from"react";var y=f({}),$=e=>{let[t,o]=g(y),s=x(()=>(e==null?void 0:e.getBlocksList)||(()=>[]),[e]),c=r(t,`${e==null?void 0:e.id}.blocks`,null),n=r(t,`${e==null?void 0:e.id}.loading`,"idle"),d=r(t,`${e==null?void 0:e.id}.error`,!1),a=h("idle");F(()=>{(async()=>{if(e&&!(n==="complete"||a.current==="loading")){a.current="loading",o(i=>({...i,[e==null?void 0:e.id]:{loading:"loading",blocks:[],error:!1}}));try{let i=await s(e);a.current="idle",o(l=>({...l,[e==null?void 0:e.id]:{loading:"complete",blocks:i||[],error:!1}}))}catch(i){a.current="idle",o(l=>({...l,[e==null?void 0:e.id]:{loading:"complete",blocks:[],error:!0}}))}}})()},[e,c,n,a,o,s]);let u=B(i=>{o(l=>({...l,[i]:{loading:"idle",blocks:[],error:!1}}))},[o]);return{data:c||[],isLoading:n==="loading",isError:d,resetLibrary:u}};import S from"compressorjs";import{toast as I}from"sonner";var m=.5*1024*1024,k=10*1024*1024;function p(e){let t=isNaN(e)?0:typeof e=="number"?e:parseInt(e);return!t||t<0?"0 B":t<1024?`${t.toFixed(2)} B`:t<1024*1024?`${(t/1024).toFixed(2)} KB`:`${(t/(1024*1024)).toFixed(2)} MB`}function q(e){return new Promise((t,o)=>{if(e.size<=m){t(e);return}new S(e,{quality:.9,maxWidth:2048,maxHeight:2048,convertSize:m,success(s){t(s)},error(s){I.error(`Failed to compress image. Image size is ${p(e.size)}, which exceeds the maximum allowed size of ${p(k)}.`),o(s)}})})}export{y as a,$ as b,p as c,q as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as l}from"./chunk-LWYDGDPW.js";import*as e from"@radix-ui/react-dialog";import{Cross1Icon as d}from"@radix-ui/react-icons";import*as s from"react";import{jsx as i,jsxs as r}from"react/jsx-runtime";var y=e.Root,R=e.Trigger,c=e.Portal,N=e.Close,n=s.forwardRef(({className:t,...a},o)=>i(e.Overlay,{ref:o,className:l("fixed inset-0 z-50 bg-muted/30 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 dark:bg-accent/5",t),...a}));n.displayName=e.Overlay.displayName;var f=s.forwardRef(({className:t,children:a,...o},m)=>r(c,{children:[i(n,{}),r(e.Content,{ref:m,className:l("bg-surface fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 overflow-hidden border border-border p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...o,children:[a,r(e.Close,{className:"ring-offset-surface absolute right-4 top-4 rounded-sm text-foreground opacity-70 transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[i(d,{className:"h-4 w-4"}),i("span",{className:"sr-only",children:"Close"})]})]})]}));f.displayName=e.Content.displayName;var g=({className:t,...a})=>i("div",{className:l("flex flex-col space-y-1.5 text-center sm:text-left",t),...a});g.displayName="DialogHeader";var p=({className:t,...a})=>i("div",{className:l("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});p.displayName="DialogFooter";var D=s.forwardRef(({className:t,...a},o)=>i(e.Title,{ref:o,className:l("text-lg font-semibold leading-none tracking-tight text-foreground",t),...a}));D.displayName=e.Title.displayName;var v=s.forwardRef(({className:t,...a},o)=>i(e.Description,{ref:o,className:l("text-sm font-light text-muted-foreground",t),...a}));v.displayName=e.Description.displayName;export{y as a,R as b,c,N as d,n as e,f,g,p as h,D as i,v as j};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as i}from"./chunk-AOJE5WI3.js";import{a as r}from"./chunk-WEVKAJMV.js";import{d as m}from"./chunk-ZAU65LBG.js";import{useQuery as o}from"@tanstack/react-query";import{isEmpty as u}from"lodash-es";var I=e=>{let n=m(),s=i();return o({queryKey:[r.GET_CHAI_USER,e],queryFn:async()=>{let t=await s(n,{action:r.GET_CHAI_USER,data:{userId:e}}),a=(t==null?void 0:t.data)||{};return{id:a.id,name:a.name||a.email,email:a.email,avatar:a.avatar}},enabled:!u(e),staleTime:"static"})};export{I as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-LWYDGDPW.js";import{cva as o}from"class-variance-authority";import*as s from"react";import{jsx as i}from"react/jsx-runtime";var n=o("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-surface text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),d=s.forwardRef(({className:e,variant:t,...r},l)=>i("div",{ref:l,role:"alert",className:a(n({variant:t}),e),...r}));d.displayName="Alert";var c=s.forwardRef(({className:e,...t},r)=>i("h5",{ref:r,className:a("mb-1 font-medium leading-none tracking-tight",e),...t}));c.displayName="AlertTitle";var f=s.forwardRef(({className:e,...t},r)=>i("div",{ref:r,className:a("text-sm [&_p]:leading-relaxed",e),...t}));f.displayName="AlertDescription";export{d as a,c as b,f as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as w}from"./chunk-ZU2B5YT6.js";import{E as P,a as g}from"./chunk-LNV5MRGV.js";import{e as d}from"./chunk-YEFMD4DS.js";import{H as m}from"./chunk-2NYUIXUX.js";import{b as u}from"./chunk-ZAU65LBG.js";import{a as D,b as f,i as M,j as a}from"./chunk-4VNLL2IA.js";import{a as s}from"./chunk-CRJENCPR.js";import{find as b}from"lodash-es";import{Archive as S,CopyPlusIcon as k,Pencil as x,Power as E,Trash as R}from"lucide-react";import{useMemo as _}from"react";import{useTranslation as v}from"react-i18next";import{Fragment as h,jsx as n,jsxs as r}from"react/jsx-runtime";var V=({page:e,setDuplicatePage:I,setAddEditPage:N,setUnpublishPage:C,setDeletePage:A,children:T,isLanguagePage:y})=>{let{t:i}=v(),{hasPermission:t}=m(),p=u("flags",{}),{data:l}=d(),c=_(()=>b(l,{key:e.pageType}),[l,e.pageType]);return!t(s["pages:update"])&&!t(s["pages:delete"])&&!t(s["pages:unpublish"])||!e?null:r(D,{children:[n(f,{asChild:!0,onClick:o=>o.stopPropagation(),children:T}),r(M,{align:"start",className:"text-sm",children:[t(s["pages:create"])&&!y&&r(a,{className:"flex cursor-pointer items-center gap-2",onClick:o=>{o.stopPropagation(),I(e)},children:[n(k,{className:"size-3"}),"Duplicate page"]}),t(s["pages:update"])&&r(a,{className:"flex cursor-pointer items-center gap-2",onClick:o=>{o.stopPropagation(),N({...e,global:!(c!=null&&c.hasSlug)})},children:[n(x,{className:"size-3"}),"Edit"]}),(e==null?void 0:e.online)&&t(s["pages:unpublish"])&&r(a,{className:"flex cursor-pointer items-center gap-2",onClick:o=>{o.stopPropagation(),C(e)},children:[n(E,{className:"size-3"}),i("Unpublish")]}),t(s["pages:delete"])&&n(a,{className:"flex cursor-pointer items-center gap-2",onClick:o=>{o.stopPropagation(),A(e)},children:p!=null&&p.trash?r(h,{children:[n(S,{className:"size-3"}),i(w().sidebarButton)]}):r(h,{children:[n(R,{className:"size-3"}),i("Delete")]})}),n(P,{slotId:g.AFTER_PAGE_MORE_OPTIONS,context:{page:e}})]})]})};export{V as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useEffect as t,useState as n}from"react";function o(){let[r,e]=n(new URLSearchParams(window.location.search));return t(()=>{let a=()=>{e(new URLSearchParams(window.location.search))};return window.addEventListener("popstate",a),()=>{window.removeEventListener("popstate",a)}},[]),[r,e]}export{o as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var a={ab:"Abkhazian",aa:"Afar",af:"Afrikaans",ak:"Akan",sq:"Albanian",am:"Amharic",ar:"Arabic",an:"Aragonese",hy:"Armenian",as:"Assamese",av:"Avaric",ae:"Avestan",ay:"Aymara",az:"Azerbaijani",bm:"Bambara",ba:"Bashkir",eu:"Basque",be:"Belarusian",bn:"Bengali",bh:"Bihari",bi:"Bislama",bs:"Bosnian",br:"Breton",bg:"Bulgarian",my:"Burmese",ca:"Catalan",ch:"Chamorro",ce:"Chechen",ny:"Chichewa",zh:"Chinese","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cv:"Chuvash",kw:"Cornish",co:"Corsican",cr:"Cree",hr:"Croatian",cs:"Czech",da:"Danish",dv:"Maldivian",nl:"Dutch",dz:"Dzongkha",en:"English",eo:"Esperanto",et:"Estonian",ee:"Ewe",fo:"Faroese",fj:"Fijian",fi:"Finnish",fr:"French",ff:"Fula, Pular",gl:"Galician",gd:"Gaelic (Scottish)",gv:"Manx",ka:"Georgian",de:"German",el:"Greek",kl:"Kalaallisut",gn:"Guarani",gu:"Gujarati",ht:"Haitian Creole",ha:"Hausa",he:"Hebrew",hz:"Herero",hi:"Hindi",ho:"Hiri Motu",hu:"Hungarian",is:"Icelandic",io:"Ido",ig:"Igbo",id:"Indonesian",ia:"Interlingua",ie:"Interlingue",iu:"Inuktitut",ik:"Inupiak",ga:"Irish",it:"Italian",ja:"Japanese",jv:"Javanese",kn:"Kannada",kr:"Kanuri",ks:"Kashmiri",kk:"Kazakh",km:"Khmer",ki:"Kikuyu",rw:"Kinyarwanda",rn:"Kirundi",ky:"Kyrgyz",kv:"Komi",kg:"Kongo",ko:"Korean",ku:"Kurdish",kj:"Kwanyama",lo:"Lao",la:"Latin",lv:"Latvian",li:"Limburgish",ln:"Lingala",lt:"Lithuanian",lu:"Luga-Katanga",lg:"Luganda, Ganda",lb:"Luxembourgish",mk:"Macedonian",mg:"Malagasy",ms:"Malay",ml:"Malayalam",mt:"Maltese",mi:"Maori",mr:"Marathi",mh:"Marshallese",mo:"Moldavian",mn:"Mongolian",na:"Nauru",nv:"Navajo",ng:"Ndonga",nd:"Northern Ndebele",ne:"Nepali",no:"Norwegian",nb:"Norwegian bokm\xE5l",nn:"Norwegian nynorsk",ii:"Sichuan Yi",oc:"Occitan",oj:"Ojibwe",cu:"Old Church Slavonic",or:"Oriya",om:"Oromo",os:"Ossetian",pi:"P\u0101li",ps:"Pashto, Pushto",fa:"Persian (Farsi)",pl:"Polish",pt:"Portuguese",pa:"Punjabi (Eastern)",qu:"Quechua",rm:"Romansh",ro:"Romanian",ru:"Russian",se:"Sami",sm:"Samoan",sg:"Sango",sa:"Sanskrit",sr:"Serbian",sh:"Serbo-Croatian",st:"Sesotho",tn:"Setswana",sn:"Shona",sd:"Sindhi",si:"Sinhalese",ss:"Swati",sk:"Slovak",sl:"Slovenian",so:"Somali",nr:"Southern Ndebele",es:"Spanish",su:"Sundanese",sw:"Swahili (Kiswahili)",sv:"Swedish",tl:"Tagalog",ty:"Tahitian",tg:"Tajik",ta:"Tamil",tt:"Tatar",te:"Telugu",th:"Thai",bo:"Tibetan",ti:"Tigrinya",to:"Tonga",ts:"Tsonga",tr:"Turkish",tk:"Turkmen",tw:"Twi",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",ve:"Venda",vi:"Vietnamese",vo:"Volap\xFCk",wa:"Wallon",cy:"Welsh",wo:"Wolof",fy:"Western Frisian",xh:"Xhosa",yi:"Yiddish",yo:"Yoruba",za:"Zhuang, Chuang",zu:"Zulu"};export{a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-3UEPBBE4.js";var n=s=>{if(s=s.replace(a,""),!s)return{baseClasses:"",classes:""};let e=s.split(/,(?![^\[]*\])/);if(e.length===1)return{baseClasses:"",classes:e[0].trim()};let[t,...l]=e;return{baseClasses:t.trim(),classes:l.join(",").trim().replace(/ +(?= )/g,"")}};export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as r}from"./chunk-LWYDGDPW.js";import{cva as a}from"class-variance-authority";import{jsx as i}from"react/jsx-runtime";var n=a("inline-flex leading-tight items-center gap-1 text-[11px] cursor-pointer rounded-md border px-2.5 py-0.5 transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground",active:"text-primary-foreground border-primary bg-primary px-2 py-px font-light",inactive:"text-foreground border-border bg-secondary hover:bg-accent px-2 py-px font-light"}},defaultVariants:{variant:"default"}});function p({className:e,variant:t,...o}){return i("div",{className:r(n({variant:t}),e),...o})}export{n as a,p as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{isString as c,last as s,startsWith as l}from"lodash-es";var i=(e,o)=>{let t=null;for(let n of Object.keys(e))c(e[n])&&l(n,"content")&&(t||(t={...e}),t[n]=`${e[n].trim()}${o?" ":""}`);return t!=null?t:e},r=e=>{let o=s(e);return e.map(t=>i(t,t!==o))};export{i as a,r as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as h}from"./chunk-UIDBBTCZ.js";import{d as u,n as g}from"./chunk-DZ72OHTD.js";import{c as n}from"./chunk-OQZ4EPOM.js";import{consola as I}from"consola";function y(r,i){var o;let e=r.slug.endsWith("/")?r.slug.slice(0,-1):r.slug,a=i.replace(/^\/+/,""),s=(o=r.dynamicSlugCustom)!=null?o:"";return`${e}/${a}${s}`}var c=I.withTag("ChaiDebug");async function D(r,{pageType:i,itemSlug:e,lang:a}){var f;if(!(e!=null&&e.trim()))return{paths:[],tags:[]};let s=await h(r),o="revalidateCollectionItem",d=performance.now();n(1)&&u(o,`pageType="${i}" itemSlug="${e}" lang="${a||"none"}"`);let p=await s.getBaseSlugs(i,a?{lang:a}:void 0);if(p.length===0)return n(1)&&(c.warn(`[${o}] no dynamic template for pageType="${i}"`+(a?` lang="${a}"`:"")),g(`${o} (skipped: no bases)`,Math.round(performance.now()-d))),{paths:[],tags:[]};let m=p.map(t=>y(t,e)),C=s.context.appId,l=new Set([`page-type-data-${C}-${i}`]);for(let t of p)l.add(`page-${(f=t.primaryPageId)!=null?f:t.pageId}`);n(1)&&(c.info("paths:",m),c.info("tags:",[...l]));let{revalidatePath:$,revalidateTag:v}=await import("next/cache");return await Promise.all([...m.map(t=>$(t)),...[...l].map(t=>v(t,"max"))]),n(1)&&g(o,Math.round(performance.now()-d)),{paths:m,tags:[...l]}}export{D as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as i}from"./chunk-LWYDGDPW.js";import*as o from"@radix-ui/react-tooltip";import*as r from"react";import{jsx as e}from"react/jsx-runtime";var s=o.Provider,f=o.Root,T=o.Trigger,m=r.forwardRef(({className:a,sideOffset:d=4,alignOffset:n=0,...t},l)=>e(o.Portal,{children:e(o.Content,{ref:l,alignOffset:n,sideOffset:d,className:i("z-50 origin-[--radix-tooltip-content-transform-origin] overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-xs text-popover-foreground shadow-xl animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),side:t.side||"top",children:t.children})}));m.displayName=o.Content.displayName;export{s as a,f as b,T as c,m as d};
|