@oktis-works/admin 0.19.1 → 0.23.1
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/dist/client/_astro/{ActivityWidget.9T9D1Dwq.js → ActivityWidget.Dzoi-bq3.js} +1 -1
- package/dist/client/_astro/{AdminBar.uZX_VBFr.js → AdminBar.eT1ch_B6.js} +1 -1
- package/dist/client/_astro/{ApiKeysManager.BeZosAcl.js → ApiKeysManager.kbTE1CPk.js} +1 -1
- package/dist/client/_astro/{AtGlanceWidget.B6FKmL7A.js → AtGlanceWidget.w23IIv06.js} +1 -1
- package/dist/client/_astro/{BaseLayout.Cp-O10m_.css → BaseLayout.Rpr86VwM.css} +1 -1
- package/dist/client/_astro/{CommentsManager.9iktJziN.js → CommentsManager.BN7i1RHa.js} +1 -1
- package/dist/client/_astro/ContentEditor.BlsJ2bwD.js +1 -0
- package/dist/client/_astro/ContentTypeWorkspace.BPVuQgzA.js +1 -0
- package/dist/client/_astro/{DashboardHome.CBTZuAbN.js → DashboardHome.DXzu_IXZ.js} +1 -1
- package/dist/client/_astro/{DashboardLayout.astro_astro_type_script_index_0_lang.ohczxyNy.js → DashboardLayout.astro_astro_type_script_index_0_lang.DmNSzErX.js} +1 -1
- package/dist/client/_astro/FieldGroupEditor.DsqphEgt.js +69 -0
- package/dist/client/_astro/{FieldGroupList.DwHwSB-m.js → FieldGroupList.pW2Um9om.js} +1 -1
- package/dist/client/_astro/FieldRenderer.AYtSBfHZ.js +3 -0
- package/dist/client/_astro/{Footer.ZmhGZsX_.js → Footer.5Lcn2VXz.js} +1 -1
- package/dist/client/_astro/GeneralSettings.B-H8Rzy7.js +1 -0
- package/dist/client/_astro/{LogsManager.VmsL1Y_c.js → LogsManager.Crd8q2te.js} +1 -1
- package/dist/client/_astro/{MediaLibrary.BPA5KcoT.js → MediaLibrary.Cv6Ry3u9.js} +1 -1
- package/dist/client/_astro/{MenuManager.-kATOHiC.js → MenuManager.D25ika09.js} +1 -1
- package/dist/client/_astro/{Modal.6YIPt-vQ.js → Modal.572hmVvb.js} +1 -1
- package/dist/client/_astro/{PluginManager.ezr27PG_.js → PluginManager.DLfgQFPF.js} +1 -1
- package/dist/client/_astro/{PostTypesManager.D4rhu5qf.js → PostTypesManager.C3RbmOZT.js} +1 -1
- package/dist/client/_astro/{QuickDraftWidget.tEoK6vHH.js → QuickDraftWidget.BtSGzhKq.js} +1 -1
- package/dist/client/_astro/{ReadingSettings.BhxqtNjo.js → ReadingSettings.ZFDaeo5U.js} +1 -1
- package/dist/client/_astro/{ResourceHubs.Bjng1UYH.js → ResourceHubs.Cx9fbCv1.js} +1 -1
- package/dist/client/_astro/{TaxonomiesManager.C12F1EN1.js → TaxonomiesManager.BLsvmjaL.js} +1 -1
- package/dist/client/_astro/TaxonomyTermsManager.C_xEh8Ab.js +1 -0
- package/dist/client/_astro/ThemeCustomizer.yx8rEKcL.js +577 -0
- package/dist/client/_astro/{ThemeManager.D28v1eyx.js → ThemeManager.BpS3m7Qc.js} +2 -2
- package/dist/client/_astro/{UserCreateForm.Bh_H8pJN.js → UserCreateForm.BYwgAqKk.js} +1 -1
- package/dist/client/_astro/{UsersManager.Ds7__cY5.js → UsersManager.DODMr48D.js} +1 -1
- package/dist/client/_astro/{WebhooksManager.2IVxZFIV.js → WebhooksManager.DmWIW272.js} +1 -1
- package/dist/client/_astro/ar.BCtMLfbL.js +1 -0
- package/dist/client/_astro/clone.oDfZEkVn.js +1 -0
- package/dist/client/_astro/es-ES.BfYd3kCv.js +1 -0
- package/dist/client/_astro/he.pQFPO6hc.js +1 -0
- package/dist/client/_astro/i18n.A82w5XQu.js +1 -0
- package/dist/client/_astro/it.ZpeUogpB.js +1 -0
- package/dist/client/_astro/ja.Ch5X4gaR.js +1 -0
- package/dist/client/_astro/pl.DDgkAPXr.js +1 -0
- package/dist/client/_astro/pt-BR.zZcF2v3X.js +1 -0
- package/dist/client/_astro/ru.CAjJz8Cj.js +1 -0
- package/dist/client/_astro/sw.CehAEkRN.js +1 -0
- package/dist/client/_astro/tr.Sf1XkPHa.js +1 -0
- package/dist/client/_astro/uk.-2u2eOOq.js +1 -0
- package/dist/client/_astro/yo.os9m69tq.js +1 -0
- package/dist/client/_astro/zh-CN.Bt1lpQQu.js +1 -0
- package/dist/server/chunks/{404_CtVqPqLh.mjs → 404_BjHJCErQ.mjs} +1 -1
- package/dist/server/chunks/{BaseLayout_CH8MQ3No.mjs → BaseLayout_DrIrAANk.mjs} +1 -1
- package/dist/server/chunks/{ContentEditor_6J53ebJ2.mjs → ContentEditor_BhXk6xd0.mjs} +42 -7
- package/dist/server/chunks/{DashboardLayout_DGbCn1gh.mjs → DashboardLayout_DxMWAFCu.mjs} +12 -12
- package/dist/server/chunks/{FbIcon_7YixzwO3.mjs → FbIcon_D0f6QiFJ.mjs} +1 -1
- package/dist/server/chunks/{FieldRenderer_DowQgtDc.mjs → FieldRenderer_CD8prpXz.mjs} +173 -131
- package/dist/server/chunks/{FloatingPanel_BtB-nNBT.mjs → FloatingPanel_DI2CdUZK.mjs} +1 -1
- package/dist/server/chunks/{MediaLibrary_DuxnoiMa.mjs → MediaLibrary_BY9b_CPa.mjs} +3 -3
- package/dist/server/chunks/{Modal_CkrRnNzN.mjs → Modal_BmuvdwoB.mjs} +2 -2
- package/dist/server/chunks/{PageHeader_CRpzf5xU.mjs → PageHeader_CBOioOjo.mjs} +1 -1
- package/dist/server/chunks/{TimezoneSelect_Cj-oxeeA.mjs → TimezoneSelect_D6o-2_7b.mjs} +2 -2
- package/dist/server/chunks/{_id__DfQqu18v.mjs → _id__BeIHLdfs.mjs} +79 -67
- package/dist/server/chunks/{_slug__CPv34VnT.mjs → _slug__Dsz2U4cu.mjs} +2 -2
- package/dist/server/chunks/{access_B-f0fZwc.mjs → access_ClmMoH40.mjs} +8 -8
- package/dist/server/chunks/{api-keys_BSvI1g4B.mjs → api-keys_DLbrSM4U.mjs} +6 -6
- package/dist/server/chunks/{ar_DObFFdrO.mjs → ar_Cgz1nkYN.mjs} +30 -3
- package/dist/server/chunks/clone_FT3Zf-Bf.mjs +59 -0
- package/dist/server/chunks/{comments_D3X5nFKK.mjs → comments_Cg1jrxti.mjs} +3 -3
- package/dist/server/chunks/{custom-fields_Cue8nhbd.mjs → custom-fields_CVJsfyk6.mjs} +5 -5
- package/dist/server/chunks/customize_BW-P44BY.mjs +1549 -0
- package/dist/server/chunks/{edit_5CwEtymP.mjs → edit_DdmQd4K3.mjs} +3 -3
- package/dist/server/chunks/{es-ES_D6jd6T7H.mjs → es-ES_Bw0g3h9x.mjs} +30 -3
- package/dist/server/chunks/{he_DwGJwonL.mjs → he_BcJYW2q8.mjs} +30 -3
- package/dist/server/chunks/{i18n_RELfVLel.mjs → i18n_C-sgJSi1.mjs} +34 -19
- package/dist/server/chunks/{index_BzgdFBMP.mjs → index_BSQio-Py.mjs} +4 -4
- package/dist/server/chunks/{index_C594fLur.mjs → index_BktteRMy.mjs} +6 -17
- package/dist/server/chunks/{index_CJVbaexl.mjs → index_Bv2fgBnE.mjs} +6 -6
- package/dist/server/chunks/{index_DW0-epn4.mjs → index_Bw0pBVRv.mjs} +4 -4
- package/dist/server/chunks/{index_CvbZ6goO.mjs → index_DxNPNwIw.mjs} +5 -5
- package/dist/server/chunks/{it_CMLpQyoj.mjs → it_CgOxhoxy.mjs} +30 -3
- package/dist/server/chunks/{ja_CYRz0pHv.mjs → ja_0swn1wUm.mjs} +30 -3
- package/dist/server/chunks/{login_BAhzxnXF.mjs → login_BCRPUCQz.mjs} +1 -1
- package/dist/server/chunks/{logs_iVt0OMQv.mjs → logs_DlzM1kpI.mjs} +5 -5
- package/dist/server/chunks/{menus_zRwS15d7.mjs → menus_pMKatAHX.mjs} +4 -4
- package/dist/server/chunks/{new_DKOOAiqy.mjs → new_B3cNZZO2.mjs} +3 -3
- package/dist/server/chunks/{new_CWejzb4K.mjs → new_C9JrPY2y.mjs} +5 -5
- package/dist/server/chunks/{pl_BuXVPvU1.mjs → pl_eLBKfEwP.mjs} +30 -3
- package/dist/server/chunks/{plugins_BpPZxAK2.mjs → plugins_BTPNe18c.mjs} +3 -3
- package/dist/server/chunks/{post-types_C_JULYq5.mjs → post-types_DIYWDXCR.mjs} +7 -7
- package/dist/server/chunks/{pt-BR_B2PJHiOg.mjs → pt-BR_AVNE88MZ.mjs} +16 -1
- package/dist/server/chunks/{reading_fhgI8X3-.mjs → reading_BBV5Dsg0.mjs} +4 -4
- package/dist/server/chunks/{ru_C56ltukG.mjs → ru_Dt3fMzac.mjs} +30 -3
- package/dist/server/chunks/{sw_Dhw0GAgD.mjs → sw_oPyQwKSK.mjs} +30 -3
- package/dist/server/chunks/{taxonomies_Bb8DwbNZ.mjs → taxonomies_G6ROt7Dn.mjs} +5 -5
- package/dist/server/chunks/{taxonomy_BXM2ubYg.mjs → taxonomy_B59mViQc.mjs} +5 -4
- package/dist/server/chunks/{themes_BPlBocEN.mjs → themes_CygkZJbP.mjs} +7 -5
- package/dist/server/chunks/{tr_zELRy7A-.mjs → tr_DG1ipiJ0.mjs} +30 -3
- package/dist/server/chunks/{uk_DVOqp1x6.mjs → uk_DCWgX6k4.mjs} +30 -3
- package/dist/server/chunks/{upload_BWA1htvi.mjs → upload_BOPk3diJ.mjs} +4 -4
- package/dist/server/chunks/{webhooks_CzjbYgHf.mjs → webhooks_BiHf1cMk.mjs} +5 -5
- package/dist/server/chunks/{yo_BqgZcoxs.mjs → yo_DsFzhH21.mjs} +30 -3
- package/dist/server/chunks/{zh-CN_Dz2D1XUc.mjs → zh-CN_OaG8XYVK.mjs} +30 -3
- package/dist/server/entry.mjs +28 -28
- package/dist/server/virtual_astro_middleware.mjs +3 -3
- package/package.json +1 -1
- package/dist/client/_astro/ContentEditor.BqDPU74P.js +0 -1
- package/dist/client/_astro/ContentEditor.DVKohXM-.js +0 -3
- package/dist/client/_astro/ContentTypeWorkspace.DqoBUPpT.js +0 -1
- package/dist/client/_astro/FieldGroupEditor.DBT985JP.js +0 -69
- package/dist/client/_astro/FieldRenderer.BxkMD5Kl.js +0 -1
- package/dist/client/_astro/GeneralSettings.B1f0Zpzs.js +0 -1
- package/dist/client/_astro/TaxonomyTermsManager.2V-JSC-7.js +0 -1
- package/dist/client/_astro/ThemeCustomizer.CGY-3Jl4.js +0 -49
- package/dist/client/_astro/ar.BeEmOTlL.js +0 -1
- package/dist/client/_astro/es-ES.C0DI0CK6.js +0 -1
- package/dist/client/_astro/he.RF4swhtn.js +0 -1
- package/dist/client/_astro/i18n.DnYRsWBJ.js +0 -1
- package/dist/client/_astro/it.DhCR9YsW.js +0 -1
- package/dist/client/_astro/ja.DPrxHQvU.js +0 -1
- package/dist/client/_astro/pl.6VCoPa7y.js +0 -1
- package/dist/client/_astro/pt-BR.CeCNYyhv.js +0 -1
- package/dist/client/_astro/ru.Cv0Z6X2y.js +0 -1
- package/dist/client/_astro/sw.BBMIgY-Y.js +0 -1
- package/dist/client/_astro/tr.BWEmWhCE.js +0 -1
- package/dist/client/_astro/uk.DDXJXOmn.js +0 -1
- package/dist/client/_astro/yo.DNoEBLJd.js +0 -1
- package/dist/client/_astro/zh-CN.CVKBB6Ky.js +0 -1
- package/dist/server/chunks/customize_CSP8B-As.mjs +0 -233
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={appName:`OkCMS`,admin:`Admin`,nav:{dashboard:`Dashibodi`,content:`Maudhui`,media:`Media`,users:`Watumiaji`,menus:`Menyu`,settings:`Mipangilio`,plugins:`Programu-jalizi`,themes:`Mandhari`,customize:`Kipekee`},actions:{logout:`Ondoka`,newPost:`Kipya cha Post`,uploadMedia:`Pakua Media`,addUser:`Ongeza Mtumiaji`,openSettings:`Mipangilio`}},t={title:`Dashibodi`,stats:{totalContent:`Jumla ya Maudhui`,published:`Yametolewa`,drafts:`Draft`,mediaFiles:`Faili za Media`,users:`Watumiaji`},recent:{title:`Maudhui ya Hivi Karibuni`,viewAll:`Ona Yote`,empty:`Hakuna maudhui bado — unda la kwanza!`,columns:{title:`Kichwa`,type:`Aina`,status:`Hali`,updated:`Yasasishwa`}},widgets:{atGlance:`Kwa mtazamo`,posts:`Machapisho`,postsDesc:`Zilizochapishwa / Rasimu / Tupio`,pages:`Kurasa`,pagesDesc:`Zilizochapishwa / Rasimu / Tupio`,media:`Midia`,mediaDesc:`Faili kwenye maktaba`,users:`Watumiaji`,usersDesc:`Jumla / Hai / Haifanyi`,version:`Toleo`,storage:`Hifadhi`,quickDraft:{title:`Rasimu ya haraka`,heading:`Kichwa`,headingPlaceholder:`Toa kichwa kwa rasimu yako`,content:`Maudhui`,contentPlaceholder:`Una kufikiria nini?`,save:`Hifadhi rasimu`,yourDrafts:`Rasimu zako`,noDrafts:`Bado hakuna rasimu.`},activity:{title:`Shughuli`,empty:`Bado hakuna shughuli.`}}},n={list:{title:`Maudhui`,description:`Tafuta, chuja, hariri na toa maudhui yako.`,columns:{title:`Kichwa`,type:`Aina`,status:`Hali`,updated:`Yasasishwa`},actions:{edit:`Hariri`,publish:`Toa`,unpublish:`Futa Utoaji`,delete:`Futa`},filters:{search:`Tafuta maudhui…`,allTypes:`Zote Aina`,allStatus:`Zote Hali`},buttons:{new:`+ Maudhui Mpya`,search:`Tafuta`},empty:`Hakuna maudhui yaliyopatikana.`,statuses:{draft:`Draft`,published:`Yametolewa`,archived:`Imehifadhiwa`},confirmDelete:`Futa "{title}"?`,toasts:{published:`Maudhui yametolewa ✓`,unpublished:`Utoaji umefutwa ✓`}},editor:{type:`Aina`,title:`Kichwa`,slug:`Slug`,excerpt:`Muhtasar`,featuredImage:`Picha ya Kuonekana (ID ya Media)`,status:`Hali`,statusOptions:{draft:`Draft`,published:`Yametolewa`,archived:`Imehifadhiwa`},layout:`Mtindo`,layoutAuto:`Kioto (mtindo wa mraba)`,customFields:`Vipengee Vya Kipekee`,inspectTypes:`Chunguza Aina Zinazopatikana`,save:`Hifadhi`,saved:`Maudhui yamehifadhiwa kwa mafanikio.`},taxonomy:{editTerm:`Hariri neno`}},r={title:`Menyu`,description:`Unda na udhibiti menyu za urambazaji za tovuti yako.`,hint:`Menyu ziko huru kutoka aina za maudhui na zinaweza kuonyeshwa na mandhari.`,new:`Menyu mpya`,create:`Unda menyu`,edit:`Hariri menyu`,name:`Jina`,slug:`Slug`,items:`Vipengee vya menyu (JSON)`,itemsHint:`Tumia safu ya JSON ya vitu vya menyu.`,invalidItems:`Vipengee vya menyu lazima viwe safu halali ya JSON.`,saved:`Menyu imehifadhiwa.`,deleted:`Menyu imefutwa.`,empty:`Hakuna menyu bado.`,confirmDelete:`Futa menyu "{name}"?`},i={title:`Maktaba ya Media`,description:"Pakua na udhibiti picha, video na nyaraka. Faili ziko kwenye `uploads/` na hudhuriwe umma.",upload:{dropzone:`Buruta faili hapa au`,select:`Chagua Faili`,uploading:`Inapakia…`,hint:`Picha, video, sauti na nyaraka · hadi 25MB kwa faili`},toolbar:{search:`Tafuta kwa jina au alt…`,allTypes:`Zote Aina`,searchBtn:`Tafuta`},mimeTypes:{png:`PNG`,jpeg:`JPEG`,gif:`GIF`,webp:`WebP`,svg:`SVG`,pdf:`PDF`,mp4:`MP4`,mp3:`MP3`},empty:`Hakuna faili bado. Pakua ya kwanza!`,details:{title:`Maelezo`,file:`Faili`,type:`Aina`,size:`Ukubwa`,url:`URL`,copy:`Nakili`,alt:`Maandishi ya Badala`,caption:`Kichwa cha Picha`,save:`Hifadhi Maelezo`,delete:`Futa`,close:`Funga`,confirmDelete:`Futa "{filename}"? Faili itafutwa kwenye diski.`,saved:`Maelezo yamehifadhiwa ✓`,copied:`URL imenakiliwa ✓`,copyError:`Haikuweza nakili URL`},toasts:{uploaded:`Faili {count} zimepakwa ✓`}},a={title:`Watumiaji`,description:`Simamia akaunti, nafasi na ufikiaji wa mradi.`,new:`Mtumiaji Mpya`,toolbar:{search:`Tafuta kwa jina au baruapepe…`,allStatus:`Zote Hali`,active:`Wawezeshaji`,inactive:`Hawawezeshaji`,newBtn:`+ Mtumiaji Mpya`,searchBtn:`Tafuta`},table:{name:`Jina`,email:`Baruapepe`,role:`Nafasi`,status:`Hali`,lastAccess:`Ufikiaji wa Mwisho`,actions:{manage:`Simamia`,delete:`Futa`}},empty:`Hakuna watumiaji waliopatikana.`,noRole:`Hakuna jukumu`,detail:{title:`Simamia Mtumiaji`,fields:{name:`Jina`,email:`Baruapepe`,status:`Hali`,role:`Nafasi`,password:`Nenosiri`},statusOptions:{active:`Mwezeshaji`,inactive:`Hawezeshaji`},rolePlaceholder:`— hakuna nafasi —`,meta:`Uliundwa {created} · ufikiaji wa mwisho {lastAccess}`,actions:{save:`Hifadhi`,resetPassword:`Weka Upya Nywila`,close:`Funga`},passwordPrompt:`Nywila mpya kwa {email} (angalau herufi 8):`,passwordError:`Nywila inahitaji angalau herufi 8`,toasts:{roleUpdated:`Nafasi ya {name} imesasishwa ✓`,passwordChanged:`Nywila ya {name} imebadilishwa ✓`,saved:`Mtumiwa {name} amehifadhiwa ✓`,deleted:`Mtumiwa {name} amefutwa ✓`},confirmDelete:`Futa mtumiaji {email}?`}},o={general:{title:`Jumla`,description:`Maelezo ya msingi yanayoonyeshwa kwenye tovuti.`,back:`← Mipangilio Yote`,fields:{siteTitle:`Kichwa cha Tovuti`,siteTitlePlaceholder:`Tovuti Yangu`,siteDescription:`Maelezo`,siteDescriptionPlaceholder:`Tovuti mpya ya OkCMS`,language:`Lugha`,timezone:`Eneo la Muda`,timezonePlaceholder:`Africa/Nairobi`},saved:`Mipangilio yamehifadhiwa ✓`,loading:`Inapakia…`,save:`Hifadhi`},postTypes:{title:`Aina za Maudhui`,description:`Unda aina za maudhui za kipekee (CPT) isipokuwa Post na Kurasa.`,form:{title:`Unda Aina ya Maudhui`,slug:`Slug (moja kwa moja, mfano: portfolio)`,slugHint:`Herufi ndogo, namba na underscores tu`,singular:`Jina la Mojamoja`,plural:`Jina la Wingi`,supports:`Inasaidia`,supportsOptions:{title:`Kichwa`,editor:`Editor`,thumbnail:`Picha ya Kuonekana`,excerpt:`Muhtasar`,revisions:`Mapitio`},hasArchive:`Ina Arshivi ya Umma (/slug)`,create:`Unda`},table:{slug:`Slug`,singular:`Mojamoja`,plural:`Wingi`,source:`Chanzo`,supports:`Inasaidia`,archive:`Arshivi`,actions:{remove:`Ondoa`}},sources:{admin:`Admin`,core:`Core`}},taxonomies:{title:`Taksonomia`,description:`Unda taksonomia za kipekee na uziunganishe na aina za maudhui.`,form:{title:`Unda Taksonomia`,name:`Jina (mfano: Janri)`,slug:`Slug (chaguo msingi, hutengenezwa kutoka kwenye jina)`,slugHint:`Herufi ndogo, namba na underscores tu`,hierarchical:`Ya mraba (inaruha neno za mzazi/mtoto)`,attachTo:`Unganisha kwa aina za maudhui`,create:`Unda`},table:{taxonomy:`Taksonomia`,hierarchical:`Ya mraba`,attachedTypes:`Aina za maudhui zilizounganishwa`,actions:{remove:`Ondoa`}}}},s={title:`Ukurasa haupatikani`,description:`Anwani imeenda au ukurasa umehamishwa. Angalia anwani au nenda kwenye moja ya sehemu hizi.`,requestedPath:`Ulijaribu kufungua`,suggestionsLabel:`Au nenda kwenye moja ya sehemu hizi`,goHome:`Rudi mwanzo`,goBack:`Rudi`},c={title:`Ingia`,subtitle:`Ingia kwenye akaunti yako`,email:`Baruapepe`,password:`Nywila`,submit:`Ingia`,failed:`Barua pepe au nenosiri si sahihi`},l={save:`Hifadhi`,cancel:`Ghairi`,delete:`Futa`,edit:`Hariri`,close:`Funga`,confirm:`Thibitisha`,loading:`Inapakia…`,yes:`Ndiyo`,no:`Hapana`,search:`Tafuta`,filter:`Chuja`,create:`Unda`,update:`Sasisha`,remove:`Ondoa`,viewAll:`Ona Zote`,back:`Rudi`,next:`Endelea`,previous:`Nyuma`,page:`Ukurasa`,of:`kati ya`,items:`vipengele`,item:`kipengele`,empty:`Hakuna {items} zilizopatikana.`,toast:{success:`✓`,error:`Hitilafu: {message}`},status:{active:`Mwezeshaji`,inactive:`Hawezeshaji`,draft:`Draft`,published:`Yametolewa`,archived:`Imehifadhiwa`,locked:`Imefungwa`},language:`Lugha`},u={justNow:`sasa hivi`,minAgo:`dakika zilizopita`,ago:`zilizopita`,published:`Imechapishwa`,updated:`Imesasishwa`,newUser:`Mtumiaji mpya: {name}`},d={mainMenu:`Menyu kuu`,notifications:`Arifa`,notificationsEmpty:`Hakuna shughuli ya karibu`,settings:`Mipangilio`,toggleSidebar:`Badilisha upande wa kando`,userMenu:`Menyu ya mtumiaji`},f={copyright:`© 2026 OkCMS. Haki zote zimehifadhiwa.`,links:`Viungo`,website:`Tovuti`,github:`GitHub`,docs:`Nyaraka`,community:`Jamii`,poweredBy:`Imeendeshwa na Oktis Works`},p={title:`Msaada`,label:`Msaada`,tabs:`Mada za msaada`,topics:{overview:{label:`Kwa mtazamo`,content:`<h4>Karibu kwenye Dashibodi ya OkCMS</h4><p>Dashibodi hii inakupa mwujuzi wa maudhui na shughuli za tovuti yako.</p><h4>Vifaa vinavyopatikana</h4><ul><li><strong>Kwa mtazamo:</strong> muhtasari wa machapisho, kurasa, midia na watumiaji</li><li><strong>Rasimu ya haraka:</strong> hifadhi rasimu kwa haraka kutoka dashibodi</li><li><strong>Shughuli:</strong> shughuli na masasisho ya hivi karibuni ya tovuti</li></ul>`},content:{label:`Usimamizi wa maudhui`,content:`<h4>Kusimamiza maudhui</h4><p>Tengeneza, hariri na chapisha maudhui kutoka sehemu ya Maudhui.</p><h4>Vitendo vya haraka</h4><ul><li>Bonyeza "Maudhui mapya" kutengeneza wigo kipya au ukurasa</li><li>Tumia vichujio kupata maudhui mahususi</li><li>Vitendo vya pamoja vinapatikana kwa vipengee vyengi</li></ul>`},media:{label:`Maktaba ya media`,content:`<h4>Kusimamiza midia</h4><p>Pakia na simamia picha, video na nyaraka.</p><h4>Vidokezo</h4><ul><li>Vuta na tone faili ili kupakia</li><li>Ongeza maandishi mbadala kwa ufikivu</li><li>Panga kwa folda (inakuja hivi karibuni)</li></ul>`}}},m={title:`Chaguo za skrini`,label:`Chaguo za skrini`,showOnScreen:`Onyesha kwenye skrini`},h={title:`Mandhari`,description:`Usimamie mandhari zilizosakinishwa.`,directoryHint:`Zinagunduliwa kwa njia ya kivio kutoka kwenye direkta ya themes/ ya mradi. Tumia CLI au sakinisha faili kuongeza mandhari.`,version:`Toleo`,active:`Inayofanya kazi`,status:{active:`Inayofanya kazi`,installed:`Imewekwa`,inactive:`Haifanyi kazi`},activate:`Anza`,deactivate:`Futa`,customize:`Kipekee`,install:`Sakinisha mandhari`,name:`Jina la mandhari`,manifest:`Manifesto (JSON)`,loadError:`Imwezekana kukupata mandhari.`,activateError:`Imwezekana kuanzisha mandhari.`,deactivateError:`Imwezekana kufuta mandhari.`,deactivateBlocked:`Angalau mandhari moja inapaswa kuwa hai.`,installError:`Imwezekana kuweka mandhari.`,reload:`Upya`,empty:`Hakuna mandhari zilizosakinishwa.`},g={layout:e,dashboard:t,content:n,menus:r,media:i,users:a,settings:o,notFound:s,login:c,common:l,activity:u,adminBar:d,footer:f,helpTabs:p,screenOptions:m,themes:h};export{u as activity,d as adminBar,l as common,n as content,t as dashboard,g as default,f as footer,p as helpTabs,e as layout,c as login,i as media,r as menus,s as notFound,m as screenOptions,o as settings,h as themes,a as users};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={appName:`OkCMS`,admin:`Admin`,nav:{dashboard:`Kontrol Paneli`,content:`İçerik`,media:`Medya`,users:`Kullanıcılar`,menus:`Menüler`,settings:`Ayarlar`,plugins:`Eklentiler`,themes:`Temalar`,customize:`Özelleştir`},actions:{logout:`Çıkış`,newPost:`Yeni Yazı`,uploadMedia:`Medya Yükle`,addUser:`Kullanıcı Ekle`,openSettings:`Ayarlar`}},t={title:`Kontrol Paneli`,stats:{totalContent:`Toplam İçerik`,published:`Yayınlandı`,drafts:`Taslaklar`,mediaFiles:`Medya Dosyaları`,users:`Kullanıcılar`},recent:{title:`Son İçerikler`,viewAll:`Tümünü Gör`,empty:`Henüz içerik yok — ilkini oluşturun!`,columns:{title:`Başlık`,type:`Tür`,status:`Durum`,updated:`Güncellendi`}},widgets:{atGlance:`Bir Bakışta`,posts:`Yazılar`,postsDesc:`Yayınlanmış / Taslaklar / Çöp`,pages:`Sayfalar`,pagesDesc:`Yayınlanmış / Taslaklar / Çöp`,media:`Medya`,mediaDesc:`Kütüphanedeki dosyalar`,users:`Kullanıcılar`,usersDesc:`Toplam / Aktif / Pasif`,version:`Sürüm`,storage:`Depolama`,quickDraft:{title:`Hızlı Taslak`,heading:`Başlık`,headingPlaceholder:`Taslağınıza bir başlık verin`,content:`İçerik`,contentPlaceholder:`Aklınızda ne var?`,save:`Taslağı Kaydet`,yourDrafts:`Taslaklarınız`,noDrafts:`Henüz taslak yok.`},activity:{title:`Etkinlik`,empty:`Henüz etkinlik yok.`}}},n={list:{title:`İçerik`,description:`İçerik arayın, filtreleyin, düzenleyin ve yayınlayın.`,columns:{title:`Başlık`,type:`Tür`,status:`Durum`,updated:`Güncellendi`},actions:{edit:`Düzenle`,publish:`Yayınla`,unpublish:`Yayını Kaldır`,delete:`Sil`},filters:{search:`İçerik ara…`,allTypes:`Tüm türler`,allStatus:`Tüm durumlar`},buttons:{new:`+ Yeni içerik`,search:`Ara`},empty:`İçerik bulunamadı.`,statuses:{draft:`Taslak`,published:`Yayınlandı`,archived:`Arşivlendi`},confirmDelete:`"{title}" silinsin mi?`,toasts:{published:`İçerik yayınlandı ✓`,unpublished:`Yayın kaldırıldı ✓`}},editor:{type:`Tür`,title:`Başlık`,slug:`Slug`,excerpt:`Özet`,featuredImage:`Öne Çıkan Görsel (medya ID)`,status:`Durum`,statusOptions:{draft:`Taslak`,published:`Yayınlandı`,archived:`Arşivlendi`},layout:`Düzen`,layoutAuto:`Otomatik (tema hiyerarşisi)`,customFields:`Özel Alanlar`,inspectTypes:`Mevcut türleri incele`,save:`Kaydet`,saved:`İçerik başarıyla kaydedildi.`},taxonomy:{editTerm:`Terimi düzenle`}},r={title:`Menüler`,description:`Sitenizde kullanılan gezinme menülerini oluşturun ve yönetin.`,hint:`Menüler içerik türlerinden bağımsızdır ve temanız tarafından görüntülenebilir.`,new:`Yeni menü`,create:`Menü oluştur`,edit:`Menüyü düzenle`,name:`Ad`,slug:`Slug`,items:`Menü öğeleri (JSON)`,itemsHint:`Menü öğesi nesnelerinden oluşan bir JSON dizisi kullanın.`,invalidItems:`Menü öğeleri geçerli bir JSON dizisi olmalıdır.`,saved:`Menü kaydedildi.`,deleted:`Menü silindi.`,empty:`Henüz menü yok.`,confirmDelete:`"{name}" menüsü silinsin mi?`},i={title:`Medya Kütüphanesi`,description:"Görseller, videolar ve belgeleri yükleyin ve yönetin. Dosyalar `uploads/` klasöründe saklanır ve genel olarak sunulur.",upload:{dropzone:`Dosyaları buraya sürükleyin veya`,select:`Dosya seç`,uploading:`Yükleniyor…`,hint:`Görseller, videolar, sesler ve belgeler · dosya başına 25MB'a kadar`},toolbar:{search:`İsim veya alt metinle ara…`,allTypes:`Tüm türler`,searchBtn:`Ara`},mimeTypes:{png:`PNG`,jpeg:`JPEG`,gif:`GIF`,webp:`WebP`,svg:`SVG`,pdf:`PDF`,mp4:`MP4`,mp3:`MP3`},empty:`Henüz dosya yok. İlk dosyayı yükleyin!`,details:{title:`Detaylar`,file:`Dosya`,type:`Tür`,size:`Boyut`,url:`URL`,copy:`Kopyala`,alt:`Alt metni`,caption:`Açıklama`,save:`Detayları kaydet`,delete:`Sil`,close:`Kapat`,confirmDelete:`"{filename}" silinsin mi? Dosya diskten silinecek.`,saved:`Detaylar kaydedildi ✓`,copied:`URL kopyalandı ✓`,copyError:`URL kopyalanamadı`},toasts:{uploaded:`{count} dosya yüklendi ✓`}},a={title:`Kullanıcılar`,description:`Hesapları, rolleri ve proje erişimini yönetin.`,new:`Yeni Kullanıcı`,toolbar:{search:`İsim veya email ile ara…`,allStatus:`Tüm durumlar`,active:`Aktif`,inactive:`Pasif`,newBtn:`+ Yeni kullanıcı`,searchBtn:`Ara`},table:{name:`İsim`,email:`Email`,role:`Rol`,status:`Durum`,lastAccess:`Son erişim`,actions:{manage:`Yönet`,delete:`Sil`}},empty:`Kullanıcı bulunamadı.`,noRole:`Rol yok`,detail:{title:`Kullanıcıyı yönet`,fields:{name:`İsim`,email:`Email`,status:`Durum`,role:`Rol`,password:`Şifre`},statusOptions:{active:`Aktif`,inactive:`Pasif`},rolePlaceholder:`— rol yok —`,meta:`Oluşturulma {created} · son erişim {lastAccess}`,actions:{save:`Kaydet`,resetPassword:`Parolayı sıfırla`,close:`Kapat`},passwordPrompt:`{email} için yeni parola (en az 8 karakter):`,passwordError:`Parola en az 8 karakter olmalıdır`,toasts:{roleUpdated:`{name} rolü güncellendi ✓`,passwordChanged:`{name} parolası değiştirildi ✓`,saved:`Kullanıcı {name} kaydedildi ✓`,deleted:`Kullanıcı {name} silindi ✓`},confirmDelete:`{email} kullanıcısını sil?`}},o={general:{title:`Genel`,description:`Sitede görüntülenen temel bilgiler.`,back:`← Tüm ayarlar`,fields:{siteTitle:`Site başlığı`,siteTitlePlaceholder:`Benim Sitem`,siteDescription:`Açıklama`,siteDescriptionPlaceholder:`OkCMS ile yeni bir site`,language:`Dil`,timezone:`Zaman dilimi`,timezonePlaceholder:`Europe/Istanbul`},saved:`Ayarlar kaydedildi ✓`,loading:`Yükleniyor…`,save:`Kaydet`},postTypes:{title:`İçerik Türleri`,description:`Yazılar ve Sayfalar dışında özel içerik türleri (CPT) oluşturun.`,form:{title:`İçerik türü oluştur`,slug:`Slug (tekil, örn.: portfolio)`,slugHint:`Sadece küçük harfler, rakamlar ve alt çizgi`,singular:`Tekil isim`,plural:`Çoğul isim`,supports:`Destekler`,supportsOptions:{title:`Başlık`,editor:`Editör`,thumbnail:`Öne çıkan görsel`,excerpt:`Özet`,revisions:`Revizyonlar`},hasArchive:`Genel arşiv sayfası var (/slug)`,create:`Oluştur`},table:{slug:`Slug`,singular:`Tekil`,plural:`Çoğul`,source:`Kaynak`,supports:`Destekler`,archive:`Arşiv`,actions:{remove:`Sil`}},sources:{admin:`Admin`,core:`Core`}},taxonomies:{title:`Taksonomiler`,description:`Özel taksonomiler oluşturun ve içerik türleriyle ilişkilendirin.`,form:{title:`Taksonomi oluştur`,name:`İsim (örn.: Tür)`,slug:`Slug (isteğe bağlı, isimden oluşturulur)`,slugHint:`Sadece küçük harfler, rakamlar ve alt çizgi`,hierarchical:`Hiyerarşik (ebeveyn/çocuk terimlerine izin verir)`,attachTo:`İçerik türlerine bağla`,create:`Oluştur`},table:{taxonomy:`Taksonomi`,hierarchical:`Hiyerarşik`,attachedTypes:`Bağlı içerik türleri`,actions:{remove:`Sil`}}}},s={title:`Sayfa bulunamadı`,description:`Adres eskimiş olabilir veya sayfa taşınmış olabilir. URL'yi kontrol et ya da şu bölümlerden birine git.`,requestedPath:`Şu adresi açmaya çalıştınız`,suggestionsLabel:`Ya da şu bölümlerden birine git`,goHome:`Ana sayfaya dön`,goBack:`Geri dön`},c={title:`Giriş`,subtitle:`Hesabınıza giriş yapın`,email:`Email`,password:`Parola`,submit:`Giriş`,failed:`E-posta veya şifre geçersiz`},l={save:`Kaydet`,cancel:`İptal`,delete:`Sil`,edit:`Düzenle`,close:`Kapat`,confirm:`Onayla`,loading:`Yükleniyor…`,yes:`Evet`,no:`Hayır`,search:`Ara`,filter:`Filtre`,create:`Oluştur`,update:`Güncelle`,remove:`Kaldır`,viewAll:`Tümünü gör`,back:`Geri`,next:`İleri`,previous:`Geri`,page:`Sayfa`,of:`/`,items:`öğe`,item:`öğe`,empty:`{items} bulunamadı.`,toast:{success:`✓`,error:`Hata: {message}`},status:{active:`Aktif`,inactive:`Pasif`,draft:`Taslak`,published:`Yayınlandı`,archived:`Arşivlendi`,locked:`Kilitli`},language:`Dil`},u={justNow:`az önce`,minAgo:`dakika önce`,ago:`önce`,published:`Yayınlandı`,updated:`Güncellendi`,newUser:`Yeni kullanıcı: {name}`},d={mainMenu:`Ana menü`,notifications:`Bildirimler`,notificationsEmpty:`Son aktivite yok`,settings:`Ayarlar`,toggleSidebar:`Kenar çubuğunu aç/kapat`,userMenu:`Kullanıcı menüsü`},f={copyright:`© 2026 OkCMS. Tüm hakları saklıdır.`,links:`Bağlantılar`,website:`Web sitesi`,github:`GitHub`,docs:`Dokümantasyon`,community:`Topluluk`,poweredBy:`Oktis Works ile güçlendirildi`},p={title:`Yardım`,label:`Yardım`,tabs:`Yardım konuları`,topics:{overview:{label:`Bir Bakışta`,content:`<h4>OkCMS Kontrol Paneline Hoş Geldiniz</h4><p>Bu kontrol paneli, sitenizin içeriğine ve etkinliğine genel bakış sunar.</p><h4>Kullanılabilir Widget'lar</h4><ul><li><strong>Bir Bakışta:</strong> yazılar, sayfalar, medya ve kullanıcılar özeti</li><li><strong>Hızlı Taslak:</strong> kontrol panelinden taslakları hızlıca kaydedin</li><li><strong>Etkinlik:</strong> son site etkinlikleri ve güncellemeleri</li></ul>`},content:{label:`İçerik yönetimi`,content:`<h4>İçeriği Yönetme</h4><p>İçerik bölümünden içerik oluşturun, düzenleyin ve yayınlayın.</p><h4>Hızlı İşlemler</h4><ul><li>Yeni bir yazı veya sayfa oluşturmak için "Yeni İçerik"e tıklayın</li><li>Belirli içerikleri bulmak için filtreleri kullanın</li><li>Birden fazla öğe için toplu işlemler mevcuttur</li></ul>`},media:{label:`Medya kitaplığı`,content:`<h4>Medya Yönetimi</h4><p>Resimleri, videoları ve belgeleri yükleyin ve yönetin.</p><h4>İpuçları</h4><ul><li>Yüklemek için dosyaları sürükleyip bırakın</li><li>Erişilebilirlik için alternatif metin ekleyin</li><li>Klasörlerle düzenleyin (yakında)</li></ul>`}}},m={title:`Ekran seçenekleri`,label:`Ekran seçenekleri`,showOnScreen:`Ekranda göster`},h={title:`Temalar`,description:`Kurulu temaları yönetin.`,directoryHint:`Projenin themes/ dizininden otomatik algılanır. Tema eklemek için CLI veya dosya dağıtımını kullanın.`,version:`Sürüm`,active:`Aktif`,status:{active:`Aktif`,installed:`Kurulu`,inactive:`Pasif`},activate:`Etkinleştir`,deactivate:`Devre Dışı Bırak`,customize:`Özelleştir`,install:`Tema Yükle`,name:`Tema Adı`,manifest:`Manifest (JSON)`,loadError:`Temalar yüklenemedi.`,activateError:`Tema etkinleştirilemedi.`,deactivateError:`Tema devre dışı bırakılamadı.`,deactivateBlocked:`En az bir tema aktif kalmalıdır.`,installError:`Tema yüklenemedi.`,reload:`Yenile`,empty:`Yüklü tema yok.`},g={layout:e,dashboard:t,content:n,menus:r,media:i,users:a,settings:o,notFound:s,login:c,common:l,activity:u,adminBar:d,footer:f,helpTabs:p,screenOptions:m,themes:h};export{u as activity,d as adminBar,l as common,n as content,t as dashboard,g as default,f as footer,p as helpTabs,e as layout,c as login,i as media,r as menus,s as notFound,m as screenOptions,o as settings,h as themes,a as users};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={appName:`OkCMS`,admin:`Admin`,nav:{dashboard:`Панель керування`,content:`Контент`,media:`Медіа`,users:`Користувачі`,menus:`Меню`,settings:`Налаштування`,plugins:`Плагіни`,themes:`Теми`,customize:`Налаштувати`},actions:{logout:`Вийти`,newPost:`Новий пост`,uploadMedia:`Завантажити медіа`,addUser:`Додати користувача`,openSettings:`Налаштування`}},t={title:`Панель керування`,stats:{totalContent:`Весь контент`,published:`Опубліковано`,drafts:`Чернетки`,mediaFiles:`Медіа файли`,users:`Користувачі`},recent:{title:`Останній контент`,viewAll:`Переглянути все`,empty:`Контенту ще немає — створіть перший!`,columns:{title:`Заголовок`,type:`Тип`,status:`Статус`,updated:`Оновлено`}},widgets:{atGlance:`Коротко`,posts:`Записи`,postsDesc:`Опубліковано / Чернетки / Кошик`,pages:`Сторінки`,pagesDesc:`Опубліковано / Чернетки / Кошик`,media:`Медіа`,mediaDesc:`Файли в бібліотеці`,users:`Користувачі`,usersDesc:`Усього / Активні / Неактивні`,version:`Версія`,storage:`Сховище`,quickDraft:{title:`Швидка чернетка`,heading:`Заголовок`,headingPlaceholder:`Дайте чернетці заголовок`,content:`Вміст`,contentPlaceholder:`Про що ви думаєте?`,save:`Зберегти чернетку`,yourDrafts:`Ваші чернетки`,noDrafts:`Чернеток ще немає.`},activity:{title:`Активність`,empty:`Активності ще немає.`}}},n={list:{title:`Контент`,description:`Пошук, фільтрація, редагування та публікація контенту.`,columns:{title:`Заголовок`,type:`Тип`,status:`Статус`,updated:`Оновлено`},actions:{edit:`Редагувати`,publish:`Опублікувати`,unpublish:`Зняти з публікації`,delete:`Видалити`},filters:{search:`Пошук контенту…`,allTypes:`Усі типи`,allStatus:`Усі статуси`},buttons:{new:`+ Новий контент`,search:`Пошук`},empty:`Контент не знайдено.`,statuses:{draft:`Чернетка`,published:`Опубліковано`,archived:`В архіві`},confirmDelete:`Видалити "{title}"?`,toasts:{published:`Контент опубліковано ✓`,unpublished:`Контент знято з публікації ✓`}},editor:{type:`Тип`,title:`Заголовок`,slug:`Слаг`,excerpt:`Уривок`,featuredImage:`Зображення (ID медіа)`,status:`Статус`,statusOptions:{draft:`Чернетка`,published:`Опубліковано`,archived:`В архіві`},layout:`Макет`,layoutAuto:`Авто (ієрархія теми)`,customFields:`Користувацькі поля`,inspectTypes:`Переглянути доступні типи`,save:`Зберегти`,saved:`Контент успішно збережено.`},taxonomy:{editTerm:`Редагувати термін`}},r={title:`Меню`,description:`Створюйте та керуйте навігаційними меню сайту.`,hint:`Меню незалежні від типів контенту і можуть відображатися темою.`,new:`Нове меню`,create:`Створити меню`,edit:`Редагувати меню`,name:`Назва`,slug:`Slug`,items:`Елементи меню (JSON)`,itemsHint:`Використовуйте JSON-масив об'єктів елементів меню.`,invalidItems:`Елементи меню мають бути коректним JSON-масивом.`,saved:`Меню збережено.`,deleted:`Меню видалено.`,empty:`Меню ще немає.`,confirmDelete:`Видалити меню "{name}"?`},i={title:`Медіатека`,description:"Завантаження та керування зображеннями, відео та документами. Файли зберігаються в `uploads/` та доступні публічно.",upload:{dropzone:`Перетягніть файли сюди або`,select:`Вибрати файли`,uploading:`Завантаження…`,hint:`Зображення, відео, аудіо та документи · до 25МБ на файл`},toolbar:{search:`Пошук за назвою або alt…`,allTypes:`Усі типи`,searchBtn:`Пошук`},mimeTypes:{png:`PNG`,jpeg:`JPEG`,gif:`GIF`,webp:`WebP`,svg:`SVG`,pdf:`PDF`,mp4:`MP4`,mp3:`MP3`},empty:`Файлів ще немає. Завантажте перший!`,details:{title:`Деталі`,file:`Файл`,type:`Тип`,size:`Розмір`,url:`URL`,copy:`Копіювати`,alt:`Alt текст`,caption:`Підпис`,save:`Зберегти деталі`,delete:`Видалити`,close:`Закрити`,confirmDelete:`Видалити "{filename}"? Файл буде видалено з диска.`,saved:`Деталі збережено ✓`,copied:`URL скопійовано ✓`,copyError:`Не вдалося скопіювати URL`},toasts:{uploaded:`{count} файл(ів) завантажено ✓`}},a={title:`Користувачі`,description:`Керування обліковими записами, ролями та доступом проекту.`,new:`Новий користувач`,toolbar:{search:`Пошук за іменем або email…`,allStatus:`Усі статуси`,active:`Активні`,inactive:`Неактивні`,newBtn:`+ Новий користувач`,searchBtn:`Пошук`},table:{name:`Ім'я`,email:`Email`,role:`Роль`,status:`Статус`,lastAccess:`Останній вхід`,actions:{manage:`Керувати`,delete:`Видалити`}},empty:`Користувачів не знайдено.`,noRole:`Без ролі`,detail:{title:`Керування користувачем`,fields:{name:`Ім'я`,email:`Email`,status:`Статус`,role:`Роль`,password:`Пароль`},statusOptions:{active:`Активний`,inactive:`Неактивний`},rolePlaceholder:`— без ролі —`,meta:`Створено {created} · останній вхід {lastAccess}`,actions:{save:`Зберегти`,resetPassword:`Скинути пароль`,close:`Закрити`},passwordPrompt:`Новий пароль для {email} (мінімум 8 символів):`,passwordError:`Пароль має містити мінімум 8 символів`,toasts:{roleUpdated:`Роль {name} оновлено ✓`,passwordChanged:`Пароль {name} змінено ✓`,saved:`Користувач {name} збережений ✓`,deleted:`Користувач {name} видалений ✓`},confirmDelete:`Видалити користувача {email}?`}},o={general:{title:`Загальні`,description:`Основна інформація, що відображається на сайті.`,back:`← Всі налаштування`,fields:{siteTitle:`Назва сайту`,siteTitlePlaceholder:`Мій сайт`,siteDescription:`Опис`,siteDescriptionPlaceholder:`Новий сайт на OkCMS`,language:`Мова`,timezone:`Часовий пояс`,timezonePlaceholder:`Europe/Kyiv`},saved:`Налаштування збережено ✓`,loading:`Завантаження…`,save:`Зберегти`},postTypes:{title:`Типи контенту`,description:`Створюйте користувацькі типи контенту (CPT) окрім Постів та Сторінок.`,form:{title:`Створити тип контенту`,slug:`Слаг (в однині, напр.: portfolio)`,slugHint:`Тільки малі літери, цифри та підкреслення`,singular:`Назва в однині`,plural:`Назва во множестві`,supports:`Підтримує`,supportsOptions:{title:`Заголовок`,editor:`Редактор`,thumbnail:`Мініатюра`,excerpt:`Уривок`,revisions:`Ревізії`},hasArchive:`Має публічний архів (/slug)`,create:`Створити`},table:{slug:`Слаг`,singular:`Однина`,plural:`Множина`,source:`Джерело`,supports:`Підтримує`,archive:`Архів`,actions:{remove:`Видалити`}},sources:{admin:`Admin`,core:`Core`}},taxonomies:{title:`Таксономії`,description:`Створюйте користувацькі таксономії та пов'язуйте їх з типами контенту.`,form:{title:`Створити таксономію`,name:`Назва (напр.: Жанр)`,slug:`Слаг (опціонально, генерується з назви)`,slugHint:`Тільки малі літери, цифри та підкреслення`,hierarchical:`Ієрархічна (дозволяє батьківські/дочірні терміни)`,attachTo:`Зв'язати з типами контенту`,create:`Створити`},table:{taxonomy:`Таксономія`,hierarchical:`Ієрархічна`,attachedTypes:`Зв'язані типи контенту`,actions:{remove:`Видалити`}}}},s={title:`Сторінку не знайдено`,description:`Адреса могла застаріти або сторінку було переміщено. Перевірте URL або відкрийте один із розділів.`,requestedPath:`Ви перейшли за адресою`,suggestionsLabel:`Або відкрийте один із розділів`,goHome:`На головну`,goBack:`Назад`},c={title:`Увійти`,subtitle:`Увійдіть у свій обліковий запис`,email:`Email`,password:`Пароль`,submit:`Увійти`,failed:`Невірний email або пароль`},l={save:`Зберегти`,cancel:`Скасувати`,delete:`Видалити`,edit:`Редагувати`,close:`Закрити`,confirm:`Підтвердити`,loading:`Завантаження…`,yes:`Так`,no:`Ні`,search:`Пошук`,filter:`Фільтр`,create:`Створити`,update:`Оновити`,remove:`Видалити`,viewAll:`Переглянути все`,back:`Назад`,next:`Далі`,previous:`Назад`,page:`Сторінка`,of:`з`,items:`елементів`,item:`елемент`,empty:`Не знайдено {items}.`,toast:{success:`✓`,error:`Помилка: {message}`},status:{active:`Активний`,inactive:`Неактивний`,draft:`Чернетка`,published:`Опубліковано`,archived:`В архіві`,locked:`Заблоковано`},language:`Мова`},u={justNow:`щойно`,minAgo:`хвилин тому`,ago:`тому`,published:`Опубліковано`,updated:`Оновлено`,newUser:`Новий користувач: {name}`},d={mainMenu:`Головне меню`,notifications:`Сповіщення`,notificationsEmpty:`Немає нещодавньої активності`,settings:`Налаштування`,toggleSidebar:`Перемкнути бічну панель`,userMenu:`Меню користувача`},f={copyright:`© 2026 OkCMS. Усі права захищено.`,links:`Посилання`,website:`Вебсайт`,github:`GitHub`,docs:`Документація`,community:`Спільнота`,poweredBy:`Працює на Oktis Works`},p={title:`Довідка`,label:`Довідка`,tabs:`Теми довідки`,topics:{overview:{label:`Коротко`,content:`<h4>Вітаємо в панелі OkCMS</h4><p>Ця панель дає огляд вмісту та активності вашого сайту.</p><h4>Доступні віджети</h4><ul><li><strong>Коротко:</strong> огляд записів, сторінок, медіа та користувачів</li><li><strong>Швидка чернетка:</strong> швидке збереження чернеток із панелі</li><li><strong>Активність:</strong> нещодавні події та оновлення сайту</li></ul>`},content:{label:`Керування вмістом`,content:`<h4>Керування вмістом</h4><p>Створюйте, редагуйте та публікуйте вміст у розділі «Вміст».</p><h4>Швидкі дії</h4><ul><li>Натисніть «Новий вміст», щоб створити запис або сторінку</li><li>Використовуйте фільтри для пошуку вмісту</li><li>Групові дії доступні для кількох елементів</li></ul>`},media:{label:`Медіатека`,content:`<h4>Робота з медіа</h4><p>Завантажуйте та керуйте зображеннями, відео й документами.</p><h4>Поради</h4><ul><li>Перетягуйте файли для завантаження</li><li>Додавайте alt-текст для доступності</li><li>Організовуйте папками (незабаром)</li></ul>`}}},m={title:`Параметри екрана`,label:`Параметри екрана`,showOnScreen:`Показати на екрані`},h={title:`Теми`,description:`Керування встановленими темами.`,directoryHint:`Виявлюються автоматично з директорії themes/ проєкту. Використовуйте CLI або розгортання файлів для додавання тем.`,version:`Версія`,active:`Активна`,status:{active:`Активна`,installed:`Встановлена`,inactive:`Неактивна`},activate:`Активувати`,deactivate:`Деактивувати`,customize:`Налаштувати`,install:`Встановити тему`,name:`Назва теми`,manifest:`Маніфест (JSON)`,loadError:`Не вдалося завантажити теми.`,activateError:`Не вдалося активувати тему.`,deactivateError:`Не вдалося деактивувати тему.`,deactivateBlocked:`Принаймні одна тема повинна залишатися активною.`,installError:`Не вдалося встановити тему.`,reload:`Перезавантажити`,empty:`Теми не встановлені.`},g={layout:e,dashboard:t,content:n,menus:r,media:i,users:a,settings:o,notFound:s,login:c,common:l,activity:u,adminBar:d,footer:f,helpTabs:p,screenOptions:m,themes:h};export{u as activity,d as adminBar,l as common,n as content,t as dashboard,g as default,f as footer,p as helpTabs,e as layout,c as login,i as media,r as menus,s as notFound,m as screenOptions,o as settings,h as themes,a as users};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={appName:`OkCMS`,admin:`Admin`,nav:{dashboard:`Dáìbó`,content:`Ọrọ̀`,media:`Mídia`,users:`Onítójú`,menus:`Àwọn Àkójọ`,settings:`Ẹ̀tọ́`,plugins:`Àfikún`,themes:`Àwọn àkòrí`,customize:`Ṣàlàyé`},actions:{logout:`Jadé`,newPost:`Post Tuntun`,uploadMedia:`Kó Mídia Soke`,addUser:`Kun Onítójú`,openSettings:`Ẹ̀tọ́`}},t={title:`Dáìbó`,stats:{totalContent:`Gbogbo Ọrọ̀`,published:`Tí a Gbé Dè`,drafts:`Àkọ́lé Àpẹrẹ`,mediaFiles:`Fáìlì Mídia`,users:`Onítójú`},recent:{title:`Ọrọ̀ Tuntun`,viewAll:`Wò Gbogbo`,empty:`Kò sí ọrọ̀ fúnra wá — dá kíni!`,columns:{title:`Orí`,type:`Eya`,status:`Ìwà`,updated:`Tí a Ṣàtúnṣe`}},widgets:{atGlance:`Ní ìkànna`,posts:`Àwọn ìkéde`,postsDesc:`Ti gbẹ̀sí / Àwọn àpèjúwe / Tubu`,pages:`Àwọn oju-ìwé`,pagesDesc:`Ti gbẹ̀sí / Àwọn àpèjúwe / Tubu`,media:`Àwọn fáìlì`,mediaDesc:`Àwọn fáìlì tó wà nínú ilé-ìwé`,users:`Àwọn olùmúlò`,usersDesc:`Lápapọ̀ / Ìṣìṣẹ́ / Kò ṣìṣẹ́`,version:`Ẹ̀yà`,storage:`Ìfipamọ́`,quickDraft:{title:`Àpèjúwe ṣeṣe`,heading:`Akọlé`,headingPlaceholder:`Fún àpèjúwe rẹ ní akọlé`,content:`Àkópò`,contentPlaceholder:`Kí ni oṣì rò?`,save:`Fipamọ́ àpèjúwe`,yourDrafts:`Àwọn àpèjúwe rẹ`,noDrafts:`Kò sí àpèjúwe kankan ṣẹ́yìn.`},activity:{title:`Iṣẹ́`,empty:`Kò sí iṣẹ́ kankan ṣẹ́yìn.`}}},n={list:{title:`Ọrọ̀`,description:`Wá, tọ́ka, kó, àti gbé ọrọ̀ rẹ́ dè.`,columns:{title:`Orí`,type:`Eya`,status:`Ìwà`,updated:`Tí a Ṣàtúnṣe`},actions:{edit:`Kó`,publish:`Gbé Dè`,unpublish:`Dágbà Gbé Dè`,delete:`Pa`},filters:{search:`Wá ọrọ̀…`,allTypes:`Gbogbo Eya`,allStatus:`Gbogbo Ìwà`},buttons:{new:`+ Ọrọ̀ Tuntun`,search:`Wá`},empty:`Kò sí ọrọ̀ tí a rí.`,statuses:{draft:`Àkọ́lé Àpẹrẹ`,published:`Tí a Gbé Dè`,archived:`Tí a Fìpamọ́`},confirmDelete:`Pa "{title}"?`,toasts:{published:`Ọrọ̀ tí a gbé dè ✓`,unpublished:`Gbé dè ti dagbà ✓`}},editor:{type:`Eya`,title:`Orí`,slug:`Slug`,excerpt:`Aponbepore`,featuredImage:`Àwọn Àwòrán (ID Media)`,status:`Ìwà`,statusOptions:{draft:`Àkọ́lé Àpẹrẹ`,published:`Tí a Gbé Dè`,archived:`Tí a Fìpamọ́`},layout:`Àkọ́nìṣọ́rọ̀`,layoutAuto:`Tóka Rara (ìbí ipa àwọn àwòrán)`,customFields:`Àkóso Àwọn Àpẹrẹ`,inspectTypes:`Wó Àwọn Eya Tí WòŃpàtí`,save:`Fifipamọ́`,saved:`Ọrọ̀ ti fifipamọ́ lóríire.`},taxonomy:{editTerm:`Ṣàtúnṣe ọ̀rọ̀`}},r={title:`Àwọn Àkójọ`,description:`Ṣẹ̀dá àti ṣàkóso àwọn àkójọ ìrìnàjò ojúlé rẹ.`,hint:`Àwọn àkójọ yàtọ̀ sí irú akoonu, ó sì lè jẹ́ afihàn nipasẹ akori.`,new:`Àkójọ tuntun`,create:`Ṣẹ̀dá àkójọ`,edit:`Ṣàtúnṣe àkójọ`,name:`Orúkọ`,slug:`Slug`,items:`Àwọn ohun àkójọ (JSON)`,itemsHint:`Lo àkójọpọ̀ JSON ti àwọn ohun àkójọ.`,invalidItems:`Àwọn ohun àkójọ gbọ́dọ̀ jẹ́ àkójọpọ̀ JSON tó tọ́.`,saved:`A ti fipamọ́ àkójọ.`,deleted:`A ti pa àkójọ rẹ́.`,empty:`Kò sí àkójọ sibẹ̀.`,confirmDelete:`Pa àkójọ "{name}" rẹ́?`},i={title:`Ìwé Mídia`,description:"Kó àwòrán, vídíò àti àkọ́lé soke. Fáìlì wà ní `uploads/` àti a dá wá lórí àgbáyé.",upload:{dropzone:`Tẹ́ fáilì síbẹ́ tẹ́ bá`,select:`Yan Fáìlì`,uploading:`Ń Kó Sókè…`,hint:`Àwòrán, vídíò, ohun tí a gbọ́ àti àkọ́lé · tẹ́lẹ́ 25MB fún fáìlì`},toolbar:{search:`Wá síi orúkọ tàbí alt…`,allTypes:`Gbogbo Eya`,searchBtn:`Wá`},mimeTypes:{png:`PNG`,jpeg:`JPEG`,gif:`GIF`,webp:`WebP`,svg:`SVG`,pdf:`PDF`,mp4:`MP4`,mp3:`MP3`},empty:`Kò sí fáìlì níbí. Kó kíni soke!`,details:{title:`Àlàyé`,file:`Fáìlì`,type:`Eya`,size:`Ìgbésí`,url:`URL`,copy:`Kópi`,alt:`Ọrọ̀ Tìyàtọ́`,caption:`Àkọ́lẹ́ Ọ̀fíìsì`,save:`Fífipamọ́ Àlàyé`,delete:`Pa`,close:`Dáná`,confirmDelete:`Pa "{filename}"? Fáìlì yóò pa láti dísìkì.`,saved:`Àlàyé ti fifipamọ́ ✓`,copied:`URL ti kópi ✓`,copyError:`Kò le kópi URL`},toasts:{uploaded:`Fáìlì {count} ti kó soke ✓`}},a={title:`Onítójú`,description:`Dábò akàùntí, àpẹrẹ àti ifibara sí àwọn àpẹrẹ.`,new:`Onítójú Tuntun`,toolbar:{search:`Wá síi orúkọ tàbí ìmẹ́èlì…`,allStatus:`Gbogbo Ìwà`,active:`Tí a Ṣe`,inactive:`Tí a Kò Ṣe`,newBtn:`+ Onítójú Tuntun`,searchBtn:`Wá`},table:{name:`Orúkọ`,email:`Ìmẹ́èlì`,role:`Àpẹrẹ`,status:`Ìwà`,lastAccess:`Fífi Sísọ̀rọ̀ Kẹrinlá`,actions:{manage:`Dábò`,delete:`Pa`}},empty:`Kò sí onítójú tí a rí.`,noRole:`Kò sí ipà`,detail:{title:`Dábò Onítójú`,fields:{name:`Orúkọ`,email:`Ìmẹ́èlì`,status:`Ìwà`,role:`Àpẹrẹ`,password:`Ọ̀rọ̀ àkànṣe`},statusOptions:{active:`Tí a Ṣe`,inactive:`Tí a Kò Ṣe`},rolePlaceholder:`— kò sí àpẹrẹ —`,meta:`Dá ní {created} · fífi sísọ̀rọ̀ kẹrinlá {lastAccess}`,actions:{save:`Fifipamọ́`,resetPassword:`Tún Ìbànújẹ Sori`,close:`Dáná`},passwordPrompt:`Ìbànújẹ tuntun fún {email} (kí tókan 8 ọ̀rọ̀):`,passwordError:`Ìbànújẹ gbọ́dọ̀ ní tókàn 8 ọ̀rọ̀`,toasts:{roleUpdated:`Àpẹrẹ {name} ti ṣàtúnṣe ✓`,passwordChanged:`Ìbànújẹ {name} ti yípadà ✓`,saved:`Onítójú {name} ti fífipamọ́ ✓`,deleted:`Onítójú {name} ti pa ✓`},confirmDelete:`Pa onítójú {email}?`}},o={general:{title:`Pátápátá`,description:`Àlàyé tó wàlàí tó wá lórí wẹ́bùsàìtì.`,back:`← Gbogbo Ẹ̀tọ́`,fields:{siteTitle:`Orí Ìwé`,siteTitlePlaceholder:`Ìwé Mi`,siteDescription:`Àpẹrẹ`,siteDescriptionPlaceholder:`Ìwé tuntun nípa OkCMS`,language:`Èdè`,timezone:`Àpẹrẹ Àkókó`,timezonePlaceholder:`Africa/Lagos`},saved:`Ẹ̀tọ́ ti fifipamọ́ ✓`,loading:`Ń Ṣàtúnṣe…`,save:`Fifipamọ́`},postTypes:{title:`Eya Ọrọ̀`,description:`Dá eya ọrọ̀ ti ọ̀rànìpẹ́ (CPT) mìì Post àti Kurasa.`,form:{title:`Dá Eya Ọrọ̀`,slug:`Slug (kan, àpilẹ̀kọ́: portfolio)`,slugHint:`Àwọn àlifábẹẹtì kekere, nọ́mbà àti underscore nikan`,singular:`Orúkọ Kan`,plural:`Orúkọ Pupọ̀`,supports:`Yóò Sì`,supportsOptions:{title:`Orí`,editor:`Edítà`,thumbnail:`Àwòrán Pàtàkì`,excerpt:`Apẹrẹ`,revisions:`Ìtàn`},hasArchive:`Ní Àkíwìrì Ìjoba (/slug)`,create:`Dá`},table:{slug:`Slug`,singular:`Kan`,plural:`Pupọ̀`,source:`Oríṣìírí`,supports:`Yóò Sì`,archive:`Àkíwìrì`,actions:{remove:`Fagbọ`}},sources:{admin:`Admin`,core:`Core`}},taxonomies:{title:`Takusonọ́mi`,description:`Dá takusonọ́mi tuntun àti fi hàn síi eya ọrọ̀.`,form:{title:`Dá Takusonọ́mi`,name:`Orúkọ (àpilẹ̀kọ́: Ẹ̀yà)`,slug:`Slug (ìyánjẹ́, dá láti orúkọ)`,slugHint:`Àwọn àlifábẹẹtì kekere, nọ́mbà àti underscores nikan`,hierarchical:`Ìbí tó wà lórí kí tóka (yóò fi nǹkan baba/ọmọ)`,attachTo:`Kún eya ọrọ̀`,create:`Dá`},table:{taxonomy:`Takusonọ́mi`,hierarchical:`Tó wà lórí kí tóka`,attachedTypes:`Eya ọrọ̀ tí a hàn`,actions:{remove:`Fagbọ`}}}},s={title:`Kò sí ojú-ìwé yìí`,description:`Adrésì lè ti parẹ tàbí ojú-ìwé ti yí padà. Ṣààyẹ̀ résì náà tàbí wọ ọ̀kan nínú ọ̀nà wọ̀nyí.`,requestedPath:`O gbìyànjú láti ṣí`,suggestionsLabel:`Tàbí wọ ọ̀kan nínú wọ̀nyí`,goHome:`Padà sí ìbẹ̀rẹ̀`,goBack:`Padà sẹ́yìn`},c={title:`Wá`,subtitle:`Wá sí àkàùntí rẹ`,email:`Ìmẹ́èlì`,password:`Ìbànújẹ`,submit:`Wá`,failed:`Ímèèlì tàbí ọ̀rọ̀ àkànṣe kò yé`},l={save:`Fifipamọ́`,cancel:`Fagbọ`,delete:`Pa`,edit:`Kó`,close:`Dáná`,confirm:`Yanṣe`,loading:`Ń Lò…`,yes:`Bẹ́ẹ́ni`,no:`Bẹ́ẹ́kọ́`,search:`Wá`,filter:`Yí Padà`,create:`Dá`,update:`Túnṣe`,remove:`Fagbọ`,viewAll:`Wò Gbogbo`,back:`Padà`,next:`Ọjọ́ Ọla`,previous:`Ìbí Tí a Ti`,page:`Ìwé`,of:`tí`,items:`àwọn ohun-ìnì`,item:`ohun-ìnì`,empty:`Kò sí {items} tí a rí.`,toast:{success:`✓`,error:`Àkúnya: {message}`},status:{active:`Tí a Ṣe`,inactive:`Tí a Kò Ṣe`,draft:`Àkọ́lé Àpẹrẹ`,published:`Tí a Gbé Dè`,archived:`Tí a Fìpamọ́`,locked:`Ti pa`},language:`Èdè`},u={justNow:`bayiyi`,minAgo:`ìṣẹ́jú kọjá`,ago:`kọjá`,published:`Ti gbẹ̀sí`,updated:`Ti ṣe àtúnṣe`,newUser:`Olùṣìṣẹ́ tuntun: {name}`},d={mainMenu:`Àkọ́sílẹ̀ pàtàkì`,notifications:`Ìròyìn`,notificationsEmpty:`Kò sí iṣẹ́ kankan`,settings:`Àwọn ìṣètò`,toggleSidebar:`Yí àwọn aládììsọ̀rọ̀`,userMenu:`Àkọ́sílẹ̀ olùmúlò`},f={copyright:`© 2026 OkCMS. Gbogbo ìjọba láti dabobo.`,links:`Àwọn ìbáṣepọ̀`,website:`Wẹ́bù`,github:`GitHub`,docs:`Àwọn ìwé-àkọsílẹ̀`,community:`Àwùjọ`,poweredBy:`Nípasẹ̀ Oktis Works`},p={title:`Ìrànlọ́wọ́`,label:`Ìrànlọ́wọ́`,tabs:`Àwọn ohun ìrànlọ́wọ́`,topics:{overview:{label:`Ní ìkànna`,content:`<h4>Káàbọ̀ sí Ìṣàkójọ OkCMS</h4><p>Ìṣàkójọ yìí fún ọ ní ìmọ̀ sí iṣẹ́ àwọn ọ̀rọ̀ àti iṣẹ́ orí ìwé rẹ.</p><h4>Àwọn oju iṣẹ́ tó wà</h4><ul><li><strong>Ní ìkànna:</strong> àkọpọ̀ àwọn ìkéde, oju-ìwé, fáìlì àti olùmúlò</li><li><strong>Àpèjúwe ṣeṣe:</strong> fi àpèjúwe ní kókó láti inú ìṣàkójọ</li><li><strong>Iṣẹ́:</strong> àwọn iṣẹ́ tuntun àti àtúnṣe orí ìwé</li></ul>`},content:{label:`Ìṣàkóso àkópò`,content:`<h4>Ìṣàkóso àkópò</h4><p>Ṣẹ̀dá, ṣàtúnṣe àti gbé àkópò sórò nínú apá Àkópò.</p><h4>Iṣẹ́ ìyara</h4><ul><li>Tẹ "Àkópò tuntun" láti ṣẹ̀dá ìkéde tàbí oju-ìwé tuntun</li><li>Lo àwọn àlàyé láti wá àkópò pàtó</li><li>Iṣẹ́ ọ̀pọ̀ wà fún ọ̀pọ̀ ohun</li></ul>`},media:{label:`Àwọn fáìlì`,content:`<h4>Ìṣàkóso àwọn fáìlì</h4><p>Gbé àti ṣàkóso àwọn ìwé àwòrán, fídìò àti ìwé.</p><h4>Ìmọ̀ràn</h4><ul><li>Da àwọn fáìlì sórò láti gbé wọn</li><li>Fi ìtumọ̀ òmíràn kúnwọ̀ fún àríyànjú</li><li>Ṣàtakọ̀ pẹ̀lú àwọn akópò (ó ń bọ̀)</li></ul>`}}},m={title:`Àwọn ìtọ́nisọ́nà ìtàbì`,label:`Àwọn ìtọ́nisọ́nà ìtàbì`,showOnScreen:`Fi hàn lórí ìtàbì`},h={title:`Àwọn àkòrí`,description:`Ba àwọn àkòrí tí a ti sàkóso.`,directoryHint:`A wulẹ̀ lórí ìtàn síi láti àgbègbè themes/ tí ìpinnu. Wá aṣájú CLI tàbí fífi faili sílẹ̀ láti fi àkòrí kún.`,version:`Ìdájọ́`,active:`Ṣíṣẹ́`,status:{active:`Ṣíṣẹ́`,installed:`Tí a ti sàkóso`,inactive:`Kò ṣíṣẹ́`},activate:`Bẹ́rẹ̀`,deactivate:`Pa`,customize:`Ṣàlàyé`,install:`Sàkóso àkòrí`,name:`Orúkọ àkòrí`,manifest:`Manifesto (JSON)`,loadError:`Kò ṣe lè gba àwọn àkòrí.`,activateError:`Kò ṣe lè bẹ́rẹ̀ àkòrí.`,deactivateError:`Kò ṣe lè fi àkòrí sílẹ̀.`,deactivateBlocked:`Àkòrí kànkàn kan yẹ kí ó lè wà ní ṣíṣẹ́.`,installError:`Kò ṣe lè ṣàkóso àkòrí.`,reload:`Tún ṣí`,empty:`Kò sí àkòrí tí a ti sàkóso.`},g={layout:e,dashboard:t,content:n,menus:r,media:i,users:a,settings:o,notFound:s,login:c,common:l,activity:u,adminBar:d,footer:f,helpTabs:p,screenOptions:m,themes:h};export{u as activity,d as adminBar,l as common,n as content,t as dashboard,g as default,f as footer,p as helpTabs,e as layout,c as login,i as media,r as menus,s as notFound,m as screenOptions,o as settings,h as themes,a as users};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={appName:`OkCMS`,admin:`管理后台`,nav:{dashboard:`仪表盘`,content:`内容`,media:`媒体库`,users:`用户`,menus:`菜单`,settings:`设置`,plugins:`插件`,themes:`主题`,customize:`自定义`},actions:{logout:`退出`,newPost:`新建文章`,uploadMedia:`上传媒体`,addUser:`添加用户`,openSettings:`设置`}},t={title:`仪表盘`,stats:{totalContent:`内容总数`,published:`已发布`,drafts:`草稿`,mediaFiles:`媒体文件`,users:`用户数`},recent:{title:`最近内容`,viewAll:`查看全部`,empty:`暂无内容 — 创建第一篇!`,columns:{title:`标题`,type:`类型`,status:`状态`,updated:`更新时间`}},widgets:{atGlance:`概览`,posts:`文章`,postsDesc:`已发布 / 草稿 / 回收站`,pages:`页面`,pagesDesc:`已发布 / 草稿 / 回收站`,media:`媒体`,mediaDesc:`库中的文件`,users:`用户`,usersDesc:`总计 / 活跃 / 未激活`,version:`版本`,storage:`存储`,quickDraft:{title:`快速草稿`,heading:`标题`,headingPlaceholder:`为草稿起个标题`,content:`内容`,contentPlaceholder:`你在想什么?`,save:`保存草稿`,yourDrafts:`你的草稿`,noDrafts:`暂无草稿。`},activity:{title:`活动`,empty:`暂无活动。`}}},n={list:{title:`内容管理`,description:`搜索、筛选、编辑和发布您的内容。`,columns:{title:`标题`,type:`类型`,status:`状态`,updated:`更新时间`},actions:{edit:`编辑`,publish:`发布`,unpublish:`取消发布`,delete:`删除`},filters:{search:`搜索内容…`,allTypes:`所有类型`,allStatus:`所有状态`},buttons:{new:`+ 新建内容`,search:`搜索`},empty:`未找到内容。`,statuses:{draft:`草稿`,published:`已发布`,archived:`已归档`},confirmDelete:`确定删除 "{title}"?`,toasts:{published:`内容已发布 ✓`,unpublished:`已取消发布 ✓`}},editor:{type:`类型`,title:`标题`,slug:`别名`,excerpt:`摘要`,featuredImage:`特色图片 (媒体ID)`,status:`状态`,statusOptions:{draft:`草稿`,published:`已发布`,archived:`已归档`},layout:`布局`,layoutAuto:`自动 (主题层级)`,customFields:`自定义字段`,inspectTypes:`查看可用类型`,save:`保存`,saved:`内容保存成功。`},taxonomy:{editTerm:`编辑术语`}},r={title:`菜单`,description:`创建和管理网站使用的导航菜单。`,hint:`菜单独立于内容类型,可由主题进行渲染。`,new:`新建菜单`,create:`创建菜单`,edit:`编辑菜单`,name:`名称`,slug:`别名`,items:`菜单项 (JSON)`,itemsHint:`使用菜单项对象组成的 JSON 数组。`,invalidItems:`菜单项必须是有效的 JSON 数组。`,saved:`菜单已保存。`,deleted:`菜单已删除。`,empty:`暂无菜单。`,confirmDelete:`删除菜单“{name}”?`},i={title:`媒体库`,description:"上传和管理图片、视频和文档。文件存储在 `uploads/` 并公开访问。",upload:{dropzone:`拖拽文件到这里或`,select:`选择文件`,uploading:`上传中…`,hint:`图片、视频、音频和文档 · 单文件最大 25MB`},toolbar:{search:`按名称或 alt 搜索…`,allTypes:`所有类型`,searchBtn:`搜索`},mimeTypes:{png:`PNG`,jpeg:`JPEG`,gif:`GIF`,webp:`WebP`,svg:`SVG`,pdf:`PDF`,mp4:`MP4`,mp3:`MP3`},empty:`暂无文件。上传第一个!`,details:{title:`详情`,file:`文件`,type:`类型`,size:`大小`,url:`链接`,copy:`复制`,alt:`替代文本`,caption:`说明`,save:`保存详情`,delete:`删除`,close:`关闭`,confirmDelete:`确定删除 "{filename}"? 文件将从磁盘移除。`,saved:`详情已保存 ✓`,copied:`链接已复制 ✓`,copyError:`无法复制链接`},toasts:{uploaded:`已上传 {count} 个文件 ✓`}},a={title:`用户管理`,description:`管理账户、角色和项目访问权限。`,new:`新用户`,toolbar:{search:`按姓名或邮箱搜索…`,allStatus:`所有状态`,active:`激活`,inactive:`未激活`,newBtn:`+ 新用户`,searchBtn:`搜索`},table:{name:`姓名`,email:`邮箱`,role:`角色`,status:`状态`,lastAccess:`最后访问`,actions:{manage:`管理`,delete:`删除`}},empty:`未找到用户。`,noRole:`无角色`,detail:{title:`管理用户`,fields:{name:`姓名`,email:`邮箱`,status:`状态`,role:`角色`,password:`密码`},statusOptions:{active:`激活`,inactive:`未激活`},rolePlaceholder:`— 无角色 —`,meta:`创建于 {created} · 最后访问 {lastAccess}`,actions:{save:`保存`,resetPassword:`重置密码`,close:`关闭`},passwordPrompt:`为 {email} 设置新密码 (最少 8 字符):`,passwordError:`密码至少需要 8 个字符`,toasts:{roleUpdated:`{name} 的角色已更新 ✓`,passwordChanged:`{name} 的密码已修改 ✓`,saved:`用户 {name} 已保存 ✓`,deleted:`用户 {name} 已删除 ✓`},confirmDelete:`确定删除用户 {email}?`}},o={general:{title:`常规`,description:`网站显示的基本信息。`,back:`← 所有设置`,fields:{siteTitle:`网站标题`,siteTitlePlaceholder:`我的网站`,siteDescription:`描述`,siteDescriptionPlaceholder:`基于 OkCMS 的新网站`,language:`语言`,timezone:`时区`,timezonePlaceholder:`Asia/Shanghai`},saved:`设置已保存 ✓`,loading:`加载中…`,save:`保存`},postTypes:{title:`内容类型`,description:`创建自定义内容类型 (CPT),除文章和页面外。`,form:{title:`创建内容类型`,slug:`别名 (单数,例:portfolio)`,slugHint:`仅限小写字母、数字和下划线`,singular:`单数名称`,plural:`复数名称`,supports:`支持功能`,supportsOptions:{title:`标题`,editor:`编辑器`,thumbnail:`特色图片`,excerpt:`摘要`,revisions:`版本控制`},hasArchive:`拥有公开归档页 (/slug)`,create:`创建`},table:{slug:`别名`,singular:`单数`,plural:`复数`,source:`来源`,supports:`支持功能`,archive:`归档`,actions:{remove:`移除`}},sources:{admin:`后台`,core:`核心`}},taxonomies:{title:`分类法`,description:`创建自定义分类法并关联到内容类型。`,form:{title:`创建分类法`,name:`名称 (例:类型)`,slug:`别名 (可选,从名称生成)`,slugHint:`仅限小写字母、数字和下划线`,hierarchical:`层级化 (允许父/子术语)`,attachTo:`关联到内容类型`,create:`创建`},table:{taxonomy:`分类法`,hierarchical:`层级化`,attachedTypes:`关联的内容类型`,actions:{remove:`移除`}}}},s={title:`页面未找到`,description:`地址可能已过期,或页面已被移动。请检查网址,或访问以下栏目之一。`,requestedPath:`您尝试打开的地址`,suggestionsLabel:`或访问以下栏目`,goHome:`返回首页`,goBack:`返回`},c={title:`登录`,subtitle:`登录您的账户`,email:`邮箱`,password:`密码`,submit:`登录`,failed:`邮箱或密码无效`},l={save:`保存`,cancel:`取消`,delete:`删除`,edit:`编辑`,close:`关闭`,confirm:`确认`,loading:`加载中…`,yes:`是`,no:`否`,search:`搜索`,filter:`筛选`,create:`创建`,update:`更新`,remove:`移除`,viewAll:`查看全部`,back:`返回`,next:`下一页`,previous:`上一页`,page:`页`,of:`/`,items:`项`,item:`项`,empty:`未找到 {items}。`,toast:{success:`✓`,error:`错误: {message}`},status:{active:`激活`,inactive:`未激活`,draft:`草稿`,published:`已发布`,archived:`已归档`,locked:`已锁定`},language:`语言`},u={justNow:`刚刚`,minAgo:`分钟前`,ago:`前`,published:`已发布`,updated:`已更新`,newUser:`新用户:{name}`},d={mainMenu:`主菜单`,notifications:`通知`,notificationsEmpty:`暂无最新活动`,settings:`设置`,toggleSidebar:`切换侧边栏`,userMenu:`用户菜单`},f={copyright:`© 2026 OkCMS。保留所有权利。`,links:`链接`,website:`网站`,github:`GitHub`,docs:`文档`,community:`社区`,poweredBy:`由 Oktis Works 驱动`},p={title:`帮助`,label:`帮助`,tabs:`帮助主题`,topics:{overview:{label:`概览`,content:`<h4>欢迎使用 OkCMS 控制台</h4><p>此控制台让您可以概览网站的内容和活动。</p><h4>可用小工具</h4><ul><li><strong>概览:</strong>文章、页面、媒体和用户的总览</li><li><strong>快速草稿:</strong>从控制台快速保存草稿</li><li><strong>活动:</strong>最近的网站活动和更新</li></ul>`},content:{label:`内容管理`,content:`<h4>管理内容</h4><p>在“内容”部分创建、编辑和发布内容。</p><h4>快捷操作</h4><ul><li>点击“新建内容”创建新文章或页面</li><li>使用筛选器查找特定内容</li><li>可对多个项目执行批量操作</li></ul>`},media:{label:`媒体库`,content:`<h4>管理媒体</h4><p>上传和管理图片、视频及文档。</p><h4>提示</h4><ul><li>拖放文件即可上传</li><li>添加替代文本以提升可访问性</li><li>用文件夹整理(即将推出)</li></ul>`}}},m={title:`屏幕选项`,label:`屏幕选项`,showOnScreen:`在屏幕上显示`},h={title:`主题`,description:`管理已安装的主题。`,directoryHint:`从项目的 themes/ 目录自动检测。使用 CLI 或部署文件来添加主题。`,version:`版本`,active:`激活`,status:{active:`激活`,installed:`已安装`,inactive:`未激活`},activate:`激活`,deactivate:`停用`,customize:`自定义`,install:`安装主题`,name:`主题名称`,manifest:`清单 (JSON)`,loadError:`无法加载主题。`,activateError:`无法激活主题。`,deactivateError:`无法停用主题。`,deactivateBlocked:`至少必须保留一个激活的主题。`,installError:`无法安装主题。`,reload:`重新加载`,empty:`没有已安装的主题。`},g={layout:e,dashboard:t,content:n,menus:r,media:i,users:a,settings:o,notFound:s,login:c,common:l,activity:u,adminBar:d,footer:f,helpTabs:p,screenOptions:m,themes:h};export{u as activity,d as adminBar,l as common,n as content,t as dashboard,g as default,f as footer,p as helpTabs,e as layout,c as login,i as media,r as menus,s as notFound,m as screenOptions,o as settings,h as themes,a as users};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as __exportAll } from "./rolldown-runtime_BMI-E3GI.mjs";
|
|
2
2
|
import { S as createAstro, d as maybeRenderHead, i as renderComponent, p as addAttribute, u as renderTemplate } from "./server_B5N27szj.mjs";
|
|
3
3
|
import { t as createComponent } from "./compiler_O7J1rlsi.mjs";
|
|
4
|
-
import { n as renderScript, t as $$BaseLayout } from "./
|
|
4
|
+
import { n as renderScript, t as $$BaseLayout } from "./BaseLayout_DrIrAANk.mjs";
|
|
5
5
|
//#region src/pages/404.astro
|
|
6
6
|
var _404_exports = /* @__PURE__ */ __exportAll({
|
|
7
7
|
default: () => $$404,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { n as useTranslation, r as apiClient } from "./
|
|
2
|
-
import { a as MetaBoxesSlot, n as emptyExtensionsState, o as PluginComponentHost, r as loadExtensions } from "./
|
|
3
|
-
import {
|
|
1
|
+
import { n as useTranslation, r as apiClient } from "./i18n_C-sgJSi1.mjs";
|
|
2
|
+
import { a as MetaBoxesSlot, n as emptyExtensionsState, o as PluginComponentHost, r as loadExtensions } from "./DashboardLayout_DxMWAFCu.mjs";
|
|
3
|
+
import { t as FieldRenderer } from "./FieldRenderer_CD8prpXz.mjs";
|
|
4
|
+
import { t as expandCloneFields } from "./clone_FT3Zf-Bf.mjs";
|
|
4
5
|
import { createComponent, escape, ssr, ssrAttribute, ssrHydrationKey } from "solid-js/web";
|
|
5
6
|
import { For, Show, createMemo, createSignal, onMount } from "solid-js";
|
|
6
|
-
//#region src/lib/sanitize.
|
|
7
|
+
//#region src/lib/sanitize.ts
|
|
7
8
|
/**
|
|
8
9
|
* Sanitizador de HTML em allowlist para pontos de injeção (innerHTML).
|
|
9
10
|
*
|
|
@@ -323,7 +324,21 @@ var _tmpl$2 = [
|
|
|
323
324
|
var _tmpl$3 = [
|
|
324
325
|
"<div",
|
|
325
326
|
" class=\"classic-editor__toolbar\" role=\"toolbar\"",
|
|
326
|
-
"><
|
|
327
|
+
"><select class=\"input\"",
|
|
328
|
+
" value><option value>",
|
|
329
|
+
"</option><option value=\"<h1>\">",
|
|
330
|
+
"</option><option value=\"<h2>\">",
|
|
331
|
+
"</option><option value=\"<h3>\">",
|
|
332
|
+
"</option><option value=\"<h4>\">",
|
|
333
|
+
"</option><option value=\"<blockquote>\">",
|
|
334
|
+
"</option><option value=\"<pre>\">",
|
|
335
|
+
"</option></select><span class=\"classic-editor__toolbar-divider\"></span><button type=\"button\"><strong>",
|
|
336
|
+
"</strong></button><button type=\"button\"><em>",
|
|
337
|
+
"</em></button><button type=\"button\"><u>",
|
|
338
|
+
"</u></button><span class=\"classic-editor__toolbar-divider\"></span><button type=\"button\">",
|
|
339
|
+
"</button><button type=\"button\">",
|
|
340
|
+
"</button><button type=\"button\">",
|
|
341
|
+
"</button></div>"
|
|
327
342
|
];
|
|
328
343
|
var _tmpl$4 = [
|
|
329
344
|
"<div",
|
|
@@ -413,6 +428,26 @@ var _tmpl$11 = [
|
|
|
413
428
|
">",
|
|
414
429
|
"</option>"
|
|
415
430
|
];
|
|
431
|
+
/**
|
|
432
|
+
* Normalizes content body: parses string (double-encoded) to object.
|
|
433
|
+
* Ensures `content` key exists for classic editor (falls back to `html`).
|
|
434
|
+
*/
|
|
435
|
+
function normalizeBody(value) {
|
|
436
|
+
if (value !== null && typeof value === "object" && !Array.isArray(value)) {
|
|
437
|
+
const body = value;
|
|
438
|
+
if (body["content"] === void 0 && typeof body["html"] === "string") body["content"] = body["html"];
|
|
439
|
+
return body;
|
|
440
|
+
}
|
|
441
|
+
if (typeof value === "string") try {
|
|
442
|
+
const parsed = JSON.parse(value);
|
|
443
|
+
if (parsed !== null && typeof parsed === "object" && !Array.isArray(parsed)) {
|
|
444
|
+
const body = parsed;
|
|
445
|
+
if (body["content"] === void 0 && typeof body["html"] === "string") body["content"] = body["html"];
|
|
446
|
+
return body;
|
|
447
|
+
}
|
|
448
|
+
} catch {}
|
|
449
|
+
return {};
|
|
450
|
+
}
|
|
416
451
|
function ContentEditor(props) {
|
|
417
452
|
const { t } = useTranslation();
|
|
418
453
|
const [types, setTypes] = createSignal([]);
|
|
@@ -495,7 +530,7 @@ function ContentEditor(props) {
|
|
|
495
530
|
status: existing.status,
|
|
496
531
|
layout: existing.layout
|
|
497
532
|
});
|
|
498
|
-
setData(existing.body
|
|
533
|
+
setData(normalizeBody(existing.body));
|
|
499
534
|
} catch (err) {
|
|
500
535
|
setErrors([err instanceof Error ? err.message : String(err)]);
|
|
501
536
|
}
|
|
@@ -559,7 +594,7 @@ function ContentEditor(props) {
|
|
|
559
594
|
})));
|
|
560
595
|
},
|
|
561
596
|
get children() {
|
|
562
|
-
return [ssr(_tmpl$3, ssrHydrationKey(), ssrAttribute("aria-label", escape(t("content.editor.toolbar"), true), false)), ssr(_tmpl$4, ssrHydrationKey(), ssrAttribute("data-placeholder", escape(t("content.editor.bodyPlaceholder"), true), false), sanitizeHtml(editorContent()))];
|
|
597
|
+
return [ssr(_tmpl$3, ssrHydrationKey(), ssrAttribute("aria-label", escape(t("content.editor.toolbar"), true), false), ssrAttribute("aria-label", escape(t("content.editor.format"), true), false), escape(t("content.editor.formatParagraph")), escape(t("content.editor.formatH1")), escape(t("content.editor.formatH2")), escape(t("content.editor.formatH3")), escape(t("content.editor.formatH4")), escape(t("content.editor.formatBlockquote")), escape(t("content.editor.formatCode")), escape(t("content.editor.bold")), escape(t("content.editor.italic")), escape(t("content.editor.underline")), escape(t("content.editor.bulletList")), escape(t("content.editor.numberedList")), escape(t("content.editor.link"))), ssr(_tmpl$4, ssrHydrationKey(), ssrAttribute("data-placeholder", escape(t("content.editor.bodyPlaceholder"), true), false), sanitizeHtml(editorContent()))];
|
|
563
598
|
}
|
|
564
599
|
});
|
|
565
600
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "./rolldown-runtime_BMI-E3GI.mjs";
|
|
2
2
|
import { S as createAstro, d as maybeRenderHead, i as renderComponent, p as addAttribute, s as renderSlot, u as renderTemplate } from "./server_B5N27szj.mjs";
|
|
3
3
|
import { t as createComponent$1 } from "./compiler_O7J1rlsi.mjs";
|
|
4
|
-
import { n as renderScript, t as $$BaseLayout } from "./
|
|
5
|
-
import { a as LOCALE_LABELS, i as LOCALE_FLAGS, n as useTranslation, o as SUPPORTED_LOCALES, r as apiClient } from "./
|
|
4
|
+
import { n as renderScript, t as $$BaseLayout } from "./BaseLayout_DrIrAANk.mjs";
|
|
5
|
+
import { a as LOCALE_LABELS, i as LOCALE_FLAGS, n as useTranslation, o as SUPPORTED_LOCALES, r as apiClient } from "./i18n_C-sgJSi1.mjs";
|
|
6
6
|
import { t as require_semver } from "./semver_WbqCUY_o.mjs";
|
|
7
7
|
import { Dynamic, createComponent, escape, memo, mergeProps, ssr, ssrAttribute, ssrHydrationKey, ssrStyle, ssrStyleProperty } from "solid-js/web";
|
|
8
8
|
import { For, For as For2, Match, Show, Show as Show2, Switch, createEffect, createMemo as createMemo$1, createSignal, createSignal as createSignal$1, onCleanup, onMount, onMount as onMount$1 } from "solid-js";
|
|
@@ -677,7 +677,7 @@ function PluginDashboardWidgetsSlot() {
|
|
|
677
677
|
});
|
|
678
678
|
}
|
|
679
679
|
//#endregion
|
|
680
|
-
//#region src/components/admin-bar/AdminBar.
|
|
680
|
+
//#region src/components/admin-bar/AdminBar.tsx
|
|
681
681
|
var _tmpl$$4 = ["<style", ">\n #admin-bar {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 46px;\n background: #0A0A0A;\n border-bottom: 1px solid #333;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 1rem;\n z-index: 2000;\n font-family: inherit;\n }\n #admin-bar * { box-sizing: border-box; }\n .admin-bar-left, .admin-bar-right {\n display: flex;\n align-items: center;\n gap: 1rem;\n }\n .admin-bar-brand {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n color: #FAF5E8;\n font-weight: 600;\n font-size: 1.125rem;\n text-decoration: none;\n padding: 0.375rem 0.75rem;\n border-radius: 0.375rem;\n transition: background 0.15s;\n }\n .admin-bar-brand:hover {\n background: rgba(255,255,255,0.08);\n }\n .admin-bar-brand img { height: 28px; width: auto; display: block; }\n .admin-bar-separator { width: 1px; height: 24px; background: #333; }\n .admin-bar-menu { display: flex; gap: 0.25rem; }\n .admin-bar-menu-item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.375rem 0.75rem;\n color: rgba(255,255,255,0.7);\n font-size: 0.8125rem;\n font-weight: 500;\n border-radius: 0.375rem;\n text-decoration: none;\n transition: all 0.15s;\n }\n .admin-bar-menu-item:hover {\n background: rgba(255,255,255,0.1);\n color: #fff;\n }\n .admin-bar-menu-item svg { width: 18px; height: 18px; }\n .admin-bar-right { gap: 0.75rem; }\n .notifications-btn {\n position: relative;\n background: none;\n border: none;\n color: rgba(255,255,255,0.7);\n padding: 0.375rem;\n border-radius: 0.375rem;\n cursor: pointer;\n transition: all 0.15s;\n }\n .notifications-btn:hover { background: rgba(255,255,255,0.1); color: #fff; }\n .notifications-badge {\n position: absolute;\n top: 2px;\n right: 2px;\n min-width: 16px;\n height: 16px;\n background: #EF4444;\n color: #fff;\n font-size: 0.625rem;\n font-weight: 600;\n border-radius: 9999px;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 4px;\n }\n .notifications-dropdown { position: relative; }\n .lang-dropdown {\n position: relative;\n display: flex;\n align-items: center;\n }\n .lang-dropdown > .notifications-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 0.4rem;\n min-height: 32px;\n line-height: 1;\n white-space: nowrap;\n }\n .notifications-panel {\n position: absolute;\n top: calc(100% + 0.5rem);\n right: 0;\n min-width: 280px;\n max-width: 90vw;\n background: #FFFFFF;\n border: 1px solid #DCDCDE;\n border-radius: 0.5rem;\n box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1);\n z-index: 2100;\n overflow: hidden;\n animation: slideIn 0.15s ease-out;\n }\n .notifications-header {\n padding: 0.75rem 1rem;\n font-size: 0.6875rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n color: #646970;\n border-bottom: 1px solid #DCDCDE;\n }\n .notifications-item {\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n padding: 0.625rem 1rem;\n border-bottom: 1px solid #F6F7F7;\n }\n .notifications-item:last-child { border-bottom: none; }\n .notifications-action {\n font-size: 0.8125rem;\n font-weight: 600;\n color: #2C3338;\n font-family: ui-monospace, SFMono-Regular, monospace;\n word-break: break-word;\n }\n .notifications-meta {\n display: flex;\n justify-content: space-between;\n gap: 0.75rem;\n font-size: 0.6875rem;\n color: #646970;\n }\n .notifications-empty { padding: 1rem; margin: 0; font-size: 0.8125rem; color: #646970; }\n .user-menu-trigger {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n background: none;\n border: none;\n color: #fff;\n padding: 0.375rem 0.75rem;\n border-radius: 0.375rem;\n cursor: pointer;\n font-size: 0.8125rem;\n font-weight: 500;\n transition: background 0.15s;\n }\n .user-menu-trigger:hover { background: rgba(255,255,255,0.1); }\n .user-avatar {\n width: 32px;\n height: 32px;\n border-radius: 50%;\n background: linear-gradient(135deg, #D8B45E 0%, #B99542 100%);\n display: flex;\n align-items: center;\n justify-content: center;\n font-weight: 600;\n font-size: 0.875rem;\n color: #0A0A0A;\n }\n .user-menu-dropdown {\n position: absolute;\n top: calc(100% + 0.5rem);\n right: 0;\n min-width: 200px;\n background: #FFFFFF;\n border: 1px solid #DCDCDE;\n border-radius: 0.5rem;\n box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1);\n z-index: 2100;\n overflow: hidden;\n animation: slideIn 0.15s ease-out;\n }\n @keyframes slideIn { from { opacity: 0; transform: translateY(-0.5rem); } to { opacity: 1; transform: translateY(0); } }\n .user-menu-header {\n padding: 1rem;\n border-bottom: 1px solid #DCDCDE;\n }\n .user-menu-name { font-weight: 600; color: #0A0A0A; font-size: 0.875rem; }\n .user-menu-email { color: #646970; font-size: 0.75rem; margin-top: 0.125rem; }\n .user-menu-divider { height: 1px; background: #DCDCDE; }\n .user-menu-item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n width: 100%;\n padding: 0.625rem 1rem;\n background: none;\n border: none;\n color: #2C3338;\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n transition: background 0.15s;\n }\n .user-menu-item:hover { background: #F6F7F7; }\n .user-menu-item svg { width: 18px; height: 18px; color: #646970; }\n .user-menu-item.danger { color: #EF4444; }\n .user-menu-item.danger:hover { background: #FEF2F2; }\n .lang-menu-dropdown {\n position: absolute;\n top: calc(100% + 0.5rem);\n right: 0;\n min-width: 192px;\n max-height: min(18rem, calc(100vh - 3.5rem));\n background: #FFFFFF;\n border: 1px solid #DCDCDE;\n border-radius: 0.5rem;\n box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1);\n z-index: 2100;\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-gutter: stable;\n animation: slideIn 0.15s ease-out;\n }\n @keyframes slideIn { from { opacity: 0; transform: translateY(-0.5rem); } to { opacity: 1; transform: translateY(0); } }\n .lang-menu-item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n width: 100%;\n padding: 0.625rem 1rem;\n background: none;\n border: none;\n color: #2C3338;\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n min-height: 36px;\n }\n .lang-menu-item:hover { background: #F6F7F7; }\n .lang-menu-item.active { background: #FAF5E8; color: #B99542; font-weight: 600; }\n .lang-menu-item .flag { font-size: 1rem; }\n @media (max-width: 782px) {\n .admin-bar-menu { display: none; }\n }\n </style>"];
|
|
682
682
|
var _tmpl$2$3 = [
|
|
683
683
|
"<span",
|
|
@@ -865,7 +865,7 @@ function AdminBar(props) {
|
|
|
865
865
|
})), ssrAttribute("aria-label", escape(t("adminBar.toggleSidebar"), true), false))];
|
|
866
866
|
}
|
|
867
867
|
//#endregion
|
|
868
|
-
//#region src/components/dashboard-widgets/AtGlanceWidget.
|
|
868
|
+
//#region src/components/dashboard-widgets/AtGlanceWidget.tsx
|
|
869
869
|
var _tmpl$$3 = [
|
|
870
870
|
"<div",
|
|
871
871
|
" class=\"",
|
|
@@ -978,7 +978,7 @@ function AtGlanceWidget() {
|
|
|
978
978
|
});
|
|
979
979
|
}
|
|
980
980
|
//#endregion
|
|
981
|
-
//#region src/components/dashboard-widgets/QuickDraftWidget.
|
|
981
|
+
//#region src/components/dashboard-widgets/QuickDraftWidget.tsx
|
|
982
982
|
var _tmpl$$2 = [
|
|
983
983
|
"<div",
|
|
984
984
|
" class=\"quick-draft-wrapper\"><div class=\"quick-draft-content-wrapper\">",
|
|
@@ -1065,7 +1065,7 @@ function QuickDraftWidget() {
|
|
|
1065
1065
|
});
|
|
1066
1066
|
}
|
|
1067
1067
|
//#endregion
|
|
1068
|
-
//#region src/components/dashboard-widgets/ActivityWidget.
|
|
1068
|
+
//#region src/components/dashboard-widgets/ActivityWidget.tsx
|
|
1069
1069
|
var _tmpl$$1 = [
|
|
1070
1070
|
"<div",
|
|
1071
1071
|
" class=\"activity-widget\" data-widget-panel=\"activity\" style=\"grid-column:span 2\"><div class=\"dashboard-widget-header\"><h3 class=\"dashboard-widget-title\">",
|
|
@@ -1177,7 +1177,7 @@ function ActivityWidget() {
|
|
|
1177
1177
|
}))) : ssr(_tmpl$6, ssrHydrationKey(), escape(t("dashboard.widgets.activity.empty")))));
|
|
1178
1178
|
}
|
|
1179
1179
|
//#endregion
|
|
1180
|
-
//#region src/components/Footer.
|
|
1180
|
+
//#region src/components/Footer.tsx
|
|
1181
1181
|
var _tmpl$ = [
|
|
1182
1182
|
"<footer",
|
|
1183
1183
|
" class=\"admin-footer\" role=\"contentinfo\"><div class=\"footer-content\"><div class=\"footer-left\"><p class=\"footer-version\"><span class=\"product-name\">OkCMS</span></p></div><nav class=\"footer-links\"",
|
|
@@ -1264,7 +1264,7 @@ var $$DashboardLayout = createComponent$1(($$result, $$props, $$slots) => {
|
|
|
1264
1264
|
"client:load": true,
|
|
1265
1265
|
"user": sessionUser ?? void 0,
|
|
1266
1266
|
"client:component-hydration": "load",
|
|
1267
|
-
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/admin-bar/AdminBar.
|
|
1267
|
+
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/admin-bar/AdminBar.tsx",
|
|
1268
1268
|
"client:component-export": "AdminBar"
|
|
1269
1269
|
})}${maybeRenderHead($$result)}<div class="layout"${addAttribute(sessionState, "data-session-state")}><div class="dashboard-body"><!-- Sidebar colapsavel — o estado (body.sidebar-collapsed) e aplicado pelo script abaixo --><aside class="sidebar"><div class="sidebar-header"><span class="sidebar-collapsed-brand"${addAttribute(t("layout.appName"), "title")}><img src="/logo.svg" width="28" height="28" alt=""></span></div><nav class="sidebar-nav"><a href="/"${addAttribute(["nav-item", { active: navActive.dashboard }], "class:list")}><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="7" height="7"></rect><rect x="14" y="3" width="7" height="7"></rect><rect x="14" y="14" width="7" height="7"></rect><rect x="3" y="14" width="7" height="7"></rect></svg><span class="nav-label" data-sidebar-i18n="layout.nav.dashboard">${t("layout.nav.dashboard")}</span></a><div data-post-types-menu></div><a href="/media"${addAttribute(["nav-item", { active: navActive.media }], "class:list")}><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle><polyline points="21 15 16 10 5 21"></polyline></svg><span class="nav-label" data-sidebar-i18n="layout.nav.media">${t("layout.nav.media")}</span></a><a href="/users"${addAttribute(["nav-item", { active: navActive.users }], "class:list")}><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg><span class="nav-label" data-sidebar-i18n="layout.nav.users">${t("layout.nav.users")}</span></a><a href="/menus"${addAttribute(["nav-item", { active: navActive.menus }], "class:list")}><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg><span class="nav-label" data-sidebar-i18n="layout.nav.menus">${t("layout.nav.menus")}</span></a><div${addAttribute(["nav-group", { open: navActive.settings }], "class:list")} data-nav-group="settings"><div class="nav-group-header"><a href="/settings"${addAttribute(["nav-item", { active: navActive.settings }], "class:list")}><svg class="settings-nav-icon" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.38a2 2 0 0 0-.73-2.73l-.15-.09a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 0-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="nav-label" data-sidebar-i18n="layout.nav.settings">${t("layout.nav.settings")}</span></a></div><!-- Submenu de configurações fica agrupado diretamente sob Settings. --><div class="nav-submenu">${settingsChildren.map((child) => renderTemplate`<a${addAttribute(child.href, "href")}${addAttribute(["nav-subitem", { active: child.active }], "class:list")}${addAttribute(child.key, "data-sidebar-i18n")}>${t(child.key)}</a>`)}</div></div><a href="/plugins"${addAttribute(["nav-item", { active: navActive.plugins }], "class:list")}><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="20" rx="2" ry="2"></rect><path d="M15 7h4a2 2 0 0 1 2 2v4"></path><path d="M9 17H5a2 2 0 0 1-2-2V9"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg><span class="nav-label" data-sidebar-i18n="layout.nav.plugins">${t("layout.nav.plugins")}</span></a><div${addAttribute(["nav-group", { open: navActive.themes || navActive.customize }], "class:list")} data-nav-group="themes"><a href="/themes"${addAttribute(["nav-item", { active: navActive.themes }], "class:list")} data-sidebar-i18n="layout.nav.themes"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"></path><path d="M2 12h20"></path></svg><span class="nav-label">${t("layout.nav.themes")}</span></a><div class="nav-submenu" data-nav-submenu="themes"><a href="/themes"${addAttribute(["nav-subitem", { active: navActive.themes }], "class:list")} data-sidebar-i18n="layout.nav.themes">${t("layout.nav.themes")}</a><a href="/customize"${addAttribute(["nav-subitem", { active: navActive.customize }], "class:list")} data-sidebar-i18n="layout.nav.customize">${t("layout.nav.customize")}</a><a href="/settings/reading"${addAttribute(["nav-subitem", { active: navActive.settings && navActive.settings === "reading" }], "class:list")} data-sidebar-i18n="layout.nav.settings_reading">${t("layout.nav.settings_reading")}</a></div></div><a href="/comments"${addAttribute(["nav-item", { active: navActive.comments }], "class:list")}><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg><span class="nav-label" data-sidebar-i18n="layout.nav.comments">${t("layout.nav.comments")}</span></a><!-- D1: slots de extensao — paginas de menu declaradas por plugins ativos -->${renderComponent($$result, "PluginExtensionsSlot", PluginExtensionsSlot, {
|
|
1270
1270
|
"client:load": true,
|
|
@@ -1274,17 +1274,17 @@ var $$DashboardLayout = createComponent$1(($$result, $$props, $$slots) => {
|
|
|
1274
1274
|
})}</nav></aside><main class="main-content"><div class="content-wrapper"><div class="content">${renderSlot($$result, $$slots["default"])}<!-- Dashboard Widgets (only on dashboard page) -->${pathname === "/" && renderTemplate`<div class="dashboard-widgets-area"><div class="dashboard-widgets-grid">${renderComponent($$result, "AtGlanceWidget", AtGlanceWidget, {
|
|
1275
1275
|
"client:load": true,
|
|
1276
1276
|
"client:component-hydration": "load",
|
|
1277
|
-
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/dashboard-widgets/AtGlanceWidget.
|
|
1277
|
+
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/dashboard-widgets/AtGlanceWidget.tsx",
|
|
1278
1278
|
"client:component-export": "AtGlanceWidget"
|
|
1279
1279
|
})}${renderComponent($$result, "QuickDraftWidget", QuickDraftWidget, {
|
|
1280
1280
|
"client:load": true,
|
|
1281
1281
|
"client:component-hydration": "load",
|
|
1282
|
-
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/dashboard-widgets/QuickDraftWidget.
|
|
1282
|
+
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/dashboard-widgets/QuickDraftWidget.tsx",
|
|
1283
1283
|
"client:component-export": "QuickDraftWidget"
|
|
1284
1284
|
})}${renderComponent($$result, "ActivityWidget", ActivityWidget, {
|
|
1285
1285
|
"client:load": true,
|
|
1286
1286
|
"client:component-hydration": "load",
|
|
1287
|
-
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/dashboard-widgets/ActivityWidget.
|
|
1287
|
+
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/dashboard-widgets/ActivityWidget.tsx",
|
|
1288
1288
|
"client:component-export": "ActivityWidget"
|
|
1289
1289
|
})}${renderComponent($$result, "PluginDashboardWidgetsSlot", PluginDashboardWidgetsSlot, {
|
|
1290
1290
|
"client:load": true,
|
|
@@ -1294,7 +1294,7 @@ var $$DashboardLayout = createComponent$1(($$result, $$props, $$slots) => {
|
|
|
1294
1294
|
})}</div></div>`}</div></div></main></div><!-- Footer global: faixa independente com a largura total da viewport. -->${renderComponent($$result, "Footer", Footer, {
|
|
1295
1295
|
"client:load": true,
|
|
1296
1296
|
"client:component-hydration": "load",
|
|
1297
|
-
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/Footer.
|
|
1297
|
+
"client:component-path": "/home/runner/work/cms/cms/apps/admin/src/components/Footer.tsx",
|
|
1298
1298
|
"client:component-export": "Footer"
|
|
1299
1299
|
})}</div>` })}${renderScript($$result, "/home/runner/work/cms/cms/apps/admin/src/layouts/DashboardLayout.astro?astro&type=script&index=0&lang.ts")}`;
|
|
1300
1300
|
}, "/home/runner/work/cms/cms/apps/admin/src/layouts/DashboardLayout.astro", void 0);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { escape, ssr, ssrAttribute, ssrHydrationKey } from "solid-js/web";
|
|
2
2
|
import { createMemo } from "solid-js";
|
|
3
3
|
import { icons } from "lucide";
|
|
4
|
-
//#region src/components/field-builder/primitives/FbIcon.
|
|
4
|
+
//#region src/components/field-builder/primitives/FbIcon.tsx
|
|
5
5
|
var _tmpl$ = [
|
|
6
6
|
"<span",
|
|
7
7
|
" aria-hidden=\"true\">",
|