@oktis-works/admin 0.23.2 → 0.23.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/client/_astro/{ActivityWidget.Dzoi-bq3.js → ActivityWidget.C8vh6xAH.js} +1 -1
  2. package/dist/client/_astro/{AdminBar.eT1ch_B6.js → AdminBar.D4zIDpRx.js} +1 -1
  3. package/dist/client/_astro/{ApiKeysManager.kbTE1CPk.js → ApiKeysManager.Bkuipo9h.js} +1 -1
  4. package/dist/client/_astro/{AtGlanceWidget.w23IIv06.js → AtGlanceWidget.BwnpX_nn.js} +1 -1
  5. package/dist/client/_astro/{CommentsManager.BN7i1RHa.js → CommentsManager.B7eut49M.js} +1 -1
  6. package/dist/client/_astro/ContentEditor.CTopdn_8.js +1 -0
  7. package/dist/client/_astro/ContentTypeWorkspace.xXST4b7L.js +1 -0
  8. package/dist/client/_astro/{DashboardHome.DXzu_IXZ.js → DashboardHome.DD8QG8ZW.js} +1 -1
  9. package/dist/client/_astro/{DashboardLayout.astro_astro_type_script_index_0_lang.DmNSzErX.js → DashboardLayout.astro_astro_type_script_index_0_lang.DPDlXZ5o.js} +1 -1
  10. package/dist/client/_astro/{FieldGroupEditor.DsqphEgt.js → FieldGroupEditor.BBEN5r2U.js} +3 -3
  11. package/dist/client/_astro/{FieldGroupList.pW2Um9om.js → FieldGroupList.BatiQHnf.js} +1 -1
  12. package/dist/client/_astro/FieldRenderer.BeF5CSJf.js +3 -0
  13. package/dist/client/_astro/{Footer.5Lcn2VXz.js → Footer.BdwB3qmM.js} +1 -1
  14. package/dist/client/_astro/{GeneralSettings.B-H8Rzy7.js → GeneralSettings.BCfrxm6Z.js} +1 -1
  15. package/dist/client/_astro/{LogsManager.Crd8q2te.js → LogsManager.Bs5CSVoj.js} +1 -1
  16. package/dist/client/_astro/{MediaLibrary.Cv6Ry3u9.js → MediaLibrary.CHn5f4-T.js} +1 -1
  17. package/dist/client/_astro/{MenuManager.D25ika09.js → MenuManager.C6SrDqdC.js} +1 -1
  18. package/dist/client/_astro/{Modal.572hmVvb.js → Modal.DdoTYkUe.js} +1 -1
  19. package/dist/client/_astro/PluginManager.BLpO1lc5.js +112 -0
  20. package/dist/client/_astro/PluginPageHost.CuXn-tn7.js +1 -0
  21. package/dist/client/_astro/{PostTypesManager.C3RbmOZT.js → PostTypesManager.B6XdeNQH.js} +1 -1
  22. package/dist/client/_astro/{QuickDraftWidget.BtSGzhKq.js → QuickDraftWidget.COnmqwEP.js} +1 -1
  23. package/dist/client/_astro/{ReadingSettings.ZFDaeo5U.js → ReadingSettings.dAD5fTqQ.js} +1 -1
  24. package/dist/client/_astro/{ResourceHubs.Cx9fbCv1.js → ResourceHubs.B6txFjmO.js} +1 -1
  25. package/dist/client/_astro/{TaxonomiesManager.BLsvmjaL.js → TaxonomiesManager.CUiXA1--.js} +1 -1
  26. package/dist/client/_astro/{TaxonomyTermsManager.C_xEh8Ab.js → TaxonomyTermsManager.egxIFsFi.js} +1 -1
  27. package/dist/client/_astro/{ThemeCustomizer.BrDHVXLk.js → ThemeCustomizer.Bh3Gj0ud.js} +1 -1
  28. package/dist/client/_astro/{ThemeManager.BpS3m7Qc.js → ThemeManager.UG7ieOYF.js} +1 -1
  29. package/dist/client/_astro/{UserCreateForm.BYwgAqKk.js → UserCreateForm.CTbVVXjg.js} +1 -1
  30. package/dist/client/_astro/{UsersManager.DODMr48D.js → UsersManager.Dk2kJsYG.js} +1 -1
  31. package/dist/client/_astro/{WebhooksManager.DmWIW272.js → WebhooksManager.DTMl6Bm7.js} +1 -1
  32. package/dist/client/_astro/{api.53l1ob4Z.js → api.fpBzBw4U.js} +1 -1
  33. package/dist/client/_astro/extensions.DZ7iomLj.js +1 -0
  34. package/dist/client/_astro/i18n.DQYU1D_P.js +1 -0
  35. package/dist/client/_astro/{login.astro_astro_type_script_index_0_lang.BLf2Iun3.js → login.astro_astro_type_script_index_0_lang.DA827d72.js} +1 -1
  36. package/dist/client/_astro/{pt-BR.zZcF2v3X.js → pt-BR.C041vzOT.js} +1 -1
  37. package/dist/client/_astro/slots.CSARb9TW.js +1 -0
  38. package/dist/client/_astro/store.CjNcmZUB.js +1 -0
  39. package/dist/server/chunks/{404_BAOD9OCa.mjs → 404_vQwudBEj.mjs} +1 -1
  40. package/dist/server/chunks/{BaseLayout_BE8O-LS4.mjs → BaseLayout_CJGULIpb.mjs} +3 -3
  41. package/dist/server/chunks/{ContentEditor_DPy3I4HM.mjs → ContentEditor_D3hp0Gyo.mjs} +49 -11
  42. package/dist/server/chunks/{DashboardLayout_D6zphdT0.mjs → DashboardLayout_DvfGK5S9.mjs} +20 -17
  43. package/dist/server/chunks/{FieldRenderer_D4dcZjgt.mjs → FieldRenderer_hN7BJpMp.mjs} +6 -6
  44. package/dist/server/chunks/{MediaLibrary_DGmYSSZH.mjs → MediaLibrary_BP42MRyJ.mjs} +2 -2
  45. package/dist/server/chunks/{Modal_BmuvdwoB.mjs → Modal_Ch2TxBxO.mjs} +1 -1
  46. package/dist/server/chunks/_.._DuD24v6o.mjs +76 -0
  47. package/dist/server/chunks/{_id__XEnJ5nS2.mjs → _id__DK_jXL1Q.mjs} +4 -4
  48. package/dist/server/chunks/{access_B5npG273.mjs → access_pGLFLBaE.mjs} +3 -3
  49. package/dist/server/chunks/{api-keys_Bs6zIXYm.mjs → api-keys_BPiWCywt.mjs} +3 -3
  50. package/dist/server/chunks/{comments_zJrnFEjl.mjs → comments_HtxLK4Vu.mjs} +2 -2
  51. package/dist/server/chunks/{custom-fields_C5EBkR02.mjs → custom-fields_CLqVsj2N.mjs} +2 -2
  52. package/dist/server/chunks/{customize_CKqMX14y.mjs → customize_C8xbYnPi.mjs} +3 -3
  53. package/dist/server/chunks/{edit_QKBYgFkJ.mjs → edit_CHln4Kd_.mjs} +2 -2
  54. package/dist/server/chunks/{i18n_C-sgJSi1.mjs → i18n_BlAR9yiz.mjs} +23 -2
  55. package/dist/server/chunks/{index_BM_-WBYo.mjs → index_BiKJEUK6.mjs} +2 -2
  56. package/dist/server/chunks/{index_BletZ9T6.mjs → index_CNk9hfS_.mjs} +3 -3
  57. package/dist/server/chunks/{index_CDwohy44.mjs → index_COr5MHJ7.mjs} +2 -2
  58. package/dist/server/chunks/{index_DenKi4a3.mjs → index_DK_fTf2_.mjs} +2 -2
  59. package/dist/server/chunks/{index_Btvmuytk.mjs → index_T7SwCQJ9.mjs} +2 -2
  60. package/dist/server/chunks/{login_CtIWLqC2.mjs → login_4_AiN3uA.mjs} +1 -1
  61. package/dist/server/chunks/{logs_DlTldv5b.mjs → logs_BnmhxL0Y.mjs} +2 -2
  62. package/dist/server/chunks/{menus_z2d_K44p.mjs → menus_CnlArgBT.mjs} +2 -2
  63. package/dist/server/chunks/{new_CYvLScge.mjs → new_BLx19-Ni.mjs} +2 -2
  64. package/dist/server/chunks/{new_Cxp8Mdw4.mjs → new_CtlziJrk.mjs} +2 -2
  65. package/dist/server/chunks/{plugins_4g6EEkCb.mjs → plugins_CgMxXTGS.mjs} +13 -5
  66. package/dist/server/chunks/{post-types_7cW4BLBV.mjs → post-types_cQc2Msvm.mjs} +2 -2
  67. package/dist/server/chunks/{pt-BR_AVNE88MZ.mjs → pt-BR_B8bZo1Id.mjs} +7 -1
  68. package/dist/server/chunks/{reading_2DqfBhj_.mjs → reading_0A4laJFd.mjs} +2 -2
  69. package/dist/server/chunks/{taxonomies_D7mMKpNX.mjs → taxonomies_CiAk4uQu.mjs} +2 -2
  70. package/dist/server/chunks/{taxonomy_64ggDTF9.mjs → taxonomy_C1yrRsga.mjs} +3 -3
  71. package/dist/server/chunks/{themes_Dscq-5uk.mjs → themes_C8eP1zzS.mjs} +2 -2
  72. package/dist/server/chunks/{upload_B-DdqpaQ.mjs → upload_BNO83SEC.mjs} +2 -2
  73. package/dist/server/chunks/{webhooks_D05B4_Rs.mjs → webhooks_BQe0fs4j.mjs} +2 -2
  74. package/dist/server/entry.mjs +43 -43
  75. package/dist/server/virtual_astro_middleware.mjs +1 -1
  76. package/package.json +3 -3
  77. package/dist/client/_astro/ContentEditor.BlsJ2bwD.js +0 -1
  78. package/dist/client/_astro/ContentTypeWorkspace.BPVuQgzA.js +0 -1
  79. package/dist/client/_astro/FieldRenderer.AYtSBfHZ.js +0 -3
  80. package/dist/client/_astro/PluginManager.DLfgQFPF.js +0 -112
  81. package/dist/client/_astro/extensions.DzQcQsO9.js +0 -1
  82. package/dist/client/_astro/i18n.A82w5XQu.js +0 -1
  83. package/dist/client/_astro/preload-helper.oCYlU9a4.js +0 -1
  84. package/dist/client/_astro/store.DLCqLxBR.js +0 -1
  85. package/dist/server/chunks/_slug__BkXrukGe.mjs +0 -34
@@ -1,112 +0,0 @@
1
- import{S as e,h as t,l as n,p as r,r as i}from"./solid.Ck4Vtfe4.js";import{_ as a,i as o,l as s,o as c,s as l,u}from"./web.DD6VKaIp.js";import{n as d}from"./i18n.A82w5XQu.js";import{n as f}from"./api.53l1ob4Z.js";var p=a(`<div class=plugin-manager><p class=page-hint></p><!$><!/><!$><!/><!$><!/><style>
2
- .page-hint {
3
- margin: 0 0 1.25rem;
4
- color: var(--color-muted);
5
- font-size: 0.8125rem;
6
- }
7
- .badge-enabled {
8
- display: inline-block;
9
- margin-left: 0.5rem;
10
- padding: 0.125rem 0.375rem;
11
- font-size: 0.625rem;
12
- font-weight: 600;
13
- text-transform: uppercase;
14
- background: var(--color-success-soft);
15
- color: var(--color-success);
16
- border-radius: var(--radius-full);
17
- }
18
- .enabled-badge {
19
- color: var(--color-success);
20
- font-weight: 500;
21
- }
22
- .disabled-badge {
23
- color: var(--color-muted);
24
- font-weight: 500;
25
- }
26
- .plugins-table-container {
27
- overflow-x: auto;
28
- }
29
- .table {
30
- width: 100%;
31
- border-collapse: collapse;
32
- }
33
- .table th,
34
- .table td {
35
- padding: 0.75rem 1rem;
36
- text-align: left;
37
- border-bottom: 1px solid var(--color-border);
38
- }
39
- .table th {
40
- font-weight: 600;
41
- color: var(--color-text);
42
- background: var(--color-surface);
43
- }
44
- .plugin-row:hover {
45
- background: var(--color-background);
46
- }
47
- .plugin-name {
48
- display: flex;
49
- flex-direction: column;
50
- gap: 0.25rem;
51
- }
52
- .plugin-name strong {
53
- font-weight: 500;
54
- }
55
- .plugin-description {
56
- font-size: 0.75rem;
57
- color: var(--color-muted);
58
- }
59
- .status-badge {
60
- display: inline-flex;
61
- align-items: center;
62
- padding: 0.25rem 0.5rem;
63
- border-radius: var(--radius-full);
64
- font-size: 0.6875rem;
65
- font-weight: 600;
66
- text-transform: uppercase;
67
- }
68
- .status-active {
69
- background: var(--color-success-soft);
70
- color: var(--color-success);
71
- }
72
- .status-installed {
73
- background: var(--color-primary-soft);
74
- color: var(--color-primary);
75
- }
76
- .status-inactive {
77
- background: var(--color-muted-soft);
78
- color: var(--color-muted);
79
- }
80
- .status-quarantined {
81
- background: var(--color-warning-soft);
82
- color: var(--color-warning);
83
- }
84
- .status-missing {
85
- background: var(--color-error-soft);
86
- color: var(--color-error);
87
- }
88
- .status-load-failed {
89
- background: var(--color-error-soft);
90
- color: var(--color-error);
91
- }
92
- .empty-state {
93
- padding: 2rem;
94
- text-align: center;
95
- color: var(--color-muted);
96
- }
97
- .alert {
98
- padding: 0.75rem 1rem;
99
- border-radius: var(--radius-md);
100
- margin-bottom: 1rem;
101
- }
102
- .alert-error {
103
- background: var(--color-error-soft);
104
- color: var(--color-error);
105
- border: 1px solid var(--color-error);
106
- }
107
- .skeleton {
108
- padding: 2rem;
109
- text-align: center;
110
- color: var(--color-muted);
111
- }
112
- `),m=a(`<div class="alert alert-error">`),h=a(`<div class=skeleton>Loading...`),g=a(`<div class=plugins-table-container><table class=table><thead><tr><th></th><th></th><th></th><th></th></tr></thead><tbody></tbody></table><!$><!/>`),_=a(`<tr class=plugin-row><td class=plugin-name><strong></strong><!$><!/><!$><!/></td><td></td><td><span></span></td><td>`),v=a(`<span class=plugin-description>`),y=a(`<span class=badge-enabled>`),b=a(`<span class=enabled-badge>`),x=a(`<span class=disabled-badge>`),S=a(`<div class=empty-state>`);function C(){let{t:a}=d(),[C,w]=t([]),[T,E]=t(!0),[D,O]=t(null);e(async()=>{await k()});async function k(){try{E(!0);let e=await f.getPlugins();w(e)}catch{O(a(`plugins.loadError`))}finally{E(!1)}}let A=e=>{switch(e){case`ACTIVE`:case`ACTIVATED`:return a(`plugins.status.active`);case`INSTALLED`:return a(`plugins.status.installed`);case`INACTIVE`:case`DEACTIVATED`:return a(`plugins.status.inactive`);case`QUARANTINED`:return a(`plugins.status.quarantined`);case`MISSING`:return a(`plugins.status.missing`);case`LOAD_FAILED`:return a(`plugins.status.loadFailed`);default:return e}},j=e=>{switch(e){case`ACTIVE`:case`ACTIVATED`:return`status-active`;case`INSTALLED`:return`status-installed`;case`INACTIVE`:case`DEACTIVATED`:return`status-inactive`;case`QUARANTINED`:return`status-quarantined`;case`MISSING`:return`status-missing`;case`LOAD_FAILED`:return`status-load-failed`;default:return``}};return(()=>{var e=c(p),t=e.firstChild,d=t.nextSibling,[f,w]=l(d.nextSibling),E=f.nextSibling,[O,k]=l(E.nextSibling),M=O.nextSibling,[N,P]=l(M.nextSibling);return N.nextSibling,s(t,()=>a(`plugins.directoryHint`)),s(e,(()=>{var e=u(()=>!!D());return()=>e()&&(()=>{var e=c(m);return s(e,D),e})()})(),f,w),s(e,(()=>{var e=u(()=>!!T());return()=>e()&&c(h)})(),O,k),s(e,(()=>{var e=u(()=>!(T()||D()));return()=>e()&&(()=>{var e=c(g),t=e.firstChild,d=t.firstChild,f=d.firstChild.firstChild,p=f.nextSibling,m=p.nextSibling,h=m.nextSibling,w=d.nextSibling,T=t.nextSibling,[E,D]=l(T.nextSibling);return s(f,()=>a(`plugins.columns.name`)),s(p,()=>a(`plugins.columns.version`)),s(m,()=>a(`plugins.columns.status`)),s(h,()=>a(`plugins.columns.enabled`)),s(w,n(i,{get each(){return C()},children:e=>(()=>{var t=c(_),n=t.firstChild,i=n.firstChild,d=i.nextSibling,[f,p]=l(d.nextSibling),m=f.nextSibling,[h,g]=l(m.nextSibling),S=n.nextSibling,C=S.nextSibling,w=C.firstChild,T=C.nextSibling;return s(i,()=>e.name),s(n,(()=>{var t=u(()=>!!e.manifest?.description);return()=>t()&&(()=>{var t=c(v);return s(t,()=>e.manifest.description),t})()})(),f,p),s(n,(()=>{var t=u(()=>!!e.enabled);return()=>t()&&(()=>{var e=c(y);return s(e,()=>a(`plugins.enabledForTenant`)),e})()})(),h,g),s(S,()=>e.version),s(w,()=>A(e.status)),s(T,(()=>{var t=u(()=>!!e.enabled);return()=>t()?(()=>{var e=c(b);return s(e,()=>a(`plugins.enabledYes`)),e})():(()=>{var e=c(x);return s(e,()=>a(`plugins.enabledNo`)),e})()})()),r(()=>o(w,`status-badge ${j(e.status)}`)),t})()})),s(e,(()=>{var e=u(()=>C().length===0);return()=>e()&&(()=>{var e=c(S);return s(e,()=>a(`plugins.empty`)),e})()})(),E,D),e})()})(),N,P),e})()}export{C as PluginManager};
@@ -1 +0,0 @@
1
- import{S as e,a as t,h as n,l as r}from"./solid.Ck4Vtfe4.js";import{_ as i,l as a,o,s}from"./web.DD6VKaIp.js";import"./src.CYKGYEyR.js";import{a as c,i as l,n as u,s as d,t as f}from"./store.DLCqLxBR.js";var p=i(`<div class=sidebar-plugins data-extensions=sidebar><!$><!/><!$><!/>`);function m(){let[i,c]=n(f());e(async()=>{c(await u())});let m=()=>!0;return r(t,{get when(){return i().menuPages.length>0||i().notices.length>0},get children(){var e=o(p),t=e.firstChild,[n,c]=s(t.nextSibling),u=n.nextSibling,[f,h]=s(u.nextSibling);return a(e,r(d,{get extensions(){return i()}}),n,c),a(e,r(l,{get extensions(){return i()},can:m}),f,h),e}})}function h(){let[i,a]=n(f());return e(async()=>{a(await u())}),r(t,{get when(){return i().dashboardWidgets.length>0},get children(){return r(c,{get extensions(){return i()}})}})}export{h as PluginDashboardWidgetsSlot,m as PluginExtensionsSlot,f as emptyExtensionsState};
@@ -1 +0,0 @@
1
- import{n as e}from"./rolldown-runtime.BpQH8Ho1.js";import{S as t,h as n}from"./solid.Ck4Vtfe4.js";import{t as r}from"./preload-helper.oCYlU9a4.js";import{n as i}from"./api.53l1ob4Z.js";var a=[`pt-BR`,`en`,`es-ES`,`ru`,`uk`,`tr`,`he`,`it`,`pl`,`zh-CN`,`ja`,`ar`,`sw`,`yo`,`zu`,`am`,`ha`,`ig`],ee={"pt-BR":`Português (Brasil)`,en:`English`,"es-ES":`Español`,ru:`Русский`,uk:`Українська`,tr:`Türkçe`,he:`עברית`,it:`Italiano`,pl:`Polski`,"zh-CN":`中文 (简体)`,ja:`日本語`,ar:`العربية`,sw:`Kiswahili`,yo:`Yorùbá`,zu:`isiZulu`,am:`አማርኛ`,ha:`Hausa`,ig:`Igbo`},te={"pt-BR":`🇧🇷`,en:`🇺🇸`,"es-ES":`🇪🇸`,ru:`🇷🇺`,uk:`🇺🇦`,tr:`🇹🇷`,he:`🇮🇱`,it:`🇮🇹`,pl:`🇵🇱`,"zh-CN":`🇨🇳`,ja:`🇯🇵`,ar:`🇸🇦`,sw:`🇹🇿`,yo:`🇳🇬`,zu:`🇿🇦`,am:`🇪🇹`,ha:`🇳🇬`,ig:`🇳🇬`};function ne(e){return a.includes(e)}var o=(e,t,n)=>{let r=t.lastIndexOf(`?`),i=e[r===-1||r<t.lastIndexOf(`/`)?t:t.slice(0,r)];return i?typeof i==`function`?i():Promise.resolve(i):new Promise((e,r)=>{(typeof queueMicrotask==`function`?queueMicrotask:setTimeout)(r.bind(null,Error(`Unknown variable dynamic import: `+t+(t.split(`/`).length===n?``:`. Note that variables only represent file names one level deep.`))))})},s=new Map;async function c(e){if(s.has(e))return s.get(e);try{let t=await o(Object.assign({"./locales/ar.json":()=>r(()=>import(`./ar.BCtMLfbL.js`),[]),"./locales/en.json":()=>r(()=>Promise.resolve().then(()=>h),void 0),"./locales/es-ES.json":()=>r(()=>import(`./es-ES.BfYd3kCv.js`),[]),"./locales/he.json":()=>r(()=>import(`./he.pQFPO6hc.js`),[]),"./locales/it.json":()=>r(()=>import(`./it.ZpeUogpB.js`),[]),"./locales/ja.json":()=>r(()=>import(`./ja.Ch5X4gaR.js`),[]),"./locales/pl.json":()=>r(()=>import(`./pl.DDgkAPXr.js`),[]),"./locales/pt-BR.json":()=>r(()=>import(`./pt-BR.zZcF2v3X.js`),[]),"./locales/ru.json":()=>r(()=>import(`./ru.CAjJz8Cj.js`),[]),"./locales/sw.json":()=>r(()=>import(`./sw.CehAEkRN.js`),[]),"./locales/tr.json":()=>r(()=>import(`./tr.Sf1XkPHa.js`),[]),"./locales/uk.json":()=>r(()=>import(`./uk.-2u2eOOq.js`),[]),"./locales/yo.json":()=>r(()=>import(`./yo.os9m69tq.js`),[]),"./locales/zh-CN.json":()=>r(()=>import(`./zh-CN.Bt1lpQQu.js`),[])}),`./locales/${e}.json`,3),n=t.default??t;return s.set(e,n),n}catch{return e===`en`?{}:c(`en`)}}var l=`admin_locale`;function re(){if(typeof document>`u`)return null;let e=document.cookie.match(RegExp(`(?:^|; )${l}=([^;]+)`));return e?.[1]&&a.includes(e[1])?e[1]:null}function u(e){typeof document<`u`&&(document.cookie=`${l}=${e}; path=/; max-age=31536000; SameSite=Lax`)}function d(){if(typeof navigator>`u`)return`en`;let e=navigator.language?.split(`-`)[0]?.toLowerCase(),t=navigator.language?.toLowerCase();for(let n of a)if(n.toLowerCase()===t||n.split(`-`)[0]===e)return n;return`en`}async function f(){try{let e=await i.getUserLocale();if(e&&a.includes(e))return e}catch{}return null}async function ie(e){await i.setUserLocale(e)}async function p(){return re()||await f()||d()||`en`}async function m(e){u(e);try{await ie(e)}catch{}}var h=e({access:()=>w,activity:()=>P,adminBar:()=>F,apiKeys:()=>D,comments:()=>B,common:()=>N,content:()=>v,customizer:()=>z,dashboard:()=>_,default:()=>V,footer:()=>I,helpTabs:()=>L,layout:()=>g,login:()=>M,logs:()=>T,media:()=>y,menus:()=>S,notFound:()=>A,plugins:()=>O,rateLimit:()=>j,resources:()=>C,screenOptions:()=>R,settings:()=>x,themes:()=>k,users:()=>b,webhooks:()=>E}),g={appName:`OkCMS`,admin:`Admin`,nav:{dashboard:`Dashboard`,content:`Content`,media:`Media`,users:`Users`,menus:`Menus`,settings:`Settings`,plugins:`Plugins`,themes:`Themes`,customize:`Customize`,comments:`Comments`,settings_reading:`Reading`},actions:{logout:`Logout`,newPost:`New Post`,uploadMedia:`Upload Media`,addUser:`Add User`,openSettings:`Settings`}},_={title:`Dashboard`,stats:{totalContent:`Total Content`,published:`Published`,drafts:`Drafts`,mediaFiles:`Media Files`,users:`Users`},recent:{title:`Recent Content`,viewAll:`View All`,empty:`No content yet — create your first!`,columns:{title:`Title`,type:`Type`,status:`Status`,updated:`Updated`}},widgets:{atGlance:`At a Glance`,posts:`Posts`,postsDesc:`Published / Drafts / Trash`,pages:`Pages`,pagesDesc:`Published / Drafts / Trash`,media:`Media`,mediaDesc:`Files in the library`,users:`Users`,usersDesc:`Total / Active / Inactive`,storage:`Storage`,quickDraft:{title:`Quick Draft`,heading:`Title`,headingPlaceholder:`Give your draft a title`,content:`Content`,contentPlaceholder:`What's on your mind?`,save:`Save Draft`,yourDrafts:`Your Drafts`,noDrafts:`No drafts yet.`},activity:{title:`Activity`,empty:`No activity yet.`}}},v={list:{title:`Content`,description:`Search, filter, edit and publish your content.`,typeNotFound:`This content type was not found.`,columns:{title:`Title`,type:`Type`,status:`Status`,updated:`Updated`},actions:{edit:`Edit`,publish:`Publish`,unpublish:`Unpublish`,delete:`Delete`},filters:{search:`Search content…`,allTypes:`All types`,allStatus:`All status`},buttons:{new:`+ New content`,addNew:`+ Add new`,search:`Search`},all:`All content`,empty:`No content found.`,statuses:{draft:`Draft`,published:`Published`,archived:`Archived`},confirmDelete:`Delete "{title}"?`,toasts:{published:`Content published ✓`,unpublished:`Content unpublished ✓`}},editor:{type:`Type`,adding:`Add new`,editing:`Edit`,backToList:`Back to list`,saving:`Saving…`,title:`Title`,titlePlaceholder:`Add title`,slug:`Slug`,slugPlaceholder:`auto-generated-from-title`,toolbar:`Editor toolbar`,bodyPlaceholder:`Start writing…`,linkPrompt:`Enter the URL:`,excerpt:`Excerpt`,featuredImage:`Featured Image (media ID)`,mediaIdPlaceholder:`Media ID`,featuredImageHint:`Choose a media item from the Media library.`,pageAttributes:`Page attributes`,publishPanel:`Publish`,status:`Status`,statusOptions:{draft:`Draft`,published:`Published`,archived:`Archived`},layout:`Layout`,layoutAuto:`Automatic (theme hierarchy)`,customFields:`Custom Fields`,inspectTypes:`Inspect available types`,save:`Save`,saved:`Content saved successfully.`,format:`Format`,formatParagraph:`Paragraph`,formatH1:`Heading 1`,formatH2:`Heading 2`,formatH3:`Heading 3`,formatH4:`Heading 4`,formatBlockquote:`Blockquote`,formatCode:`Code`,bold:`Bold`,italic:`Italic`,underline:`Underline`,bulletList:`Bullet List`,numberedList:`Numbered List`,link:`Link`},taxonomy:{title:`Taxonomy terms`,back:`← Back to content`,choose:`Choose a taxonomy from the content menu.`,notFound:`Taxonomy not found.`,addTerm:`Add new term`,editTerm:`Edit term`,name:`Name`,slug:`Slug`,description:`Description`,descriptionHint:`Manage the terms used by this content type.`,attachedTo:`Attached to`,add:`Add term`,delete:`Delete`,empty:`No terms yet.`,confirmDelete:`Delete "{name}"?`,termFields:`Term fields`}},y={title:`Media Library`,description:"Upload and manage images, videos and documents. Files are stored in `uploads/` and served publicly.",upload:{dropzone:`Drop files here or`,select:`Select files`,uploading:`Uploading…`,hint:`Images, videos, audio and documents · up to 25MB per file`},toolbar:{search:`Search by name or alt…`,allTypes:`All types`,searchBtn:`Search`},mimeTypes:{png:`PNG`,jpeg:`JPEG`,gif:`GIF`,webp:`WebP`,svg:`SVG`,pdf:`PDF`,mp4:`MP4`,mp3:`MP3`},empty:`No files yet. Upload the first one!`,details:{title:`Details`,titleField:`Title`,file:`File`,type:`Type`,size:`Size`,dimensions:`Dimensions`,uploaded:`Uploaded`,url:`URL`,copy:`Copy`,alt:`Alt text`,caption:`Caption`,description:`Description`,save:`Save details`,replace:`Replace file`,replacing:`Replacing…`,replaceHint:`Keeps this attachment and its metadata.`,delete:`Delete`,close:`Close`,confirmDelete:`Delete "{filename}"? The file will be removed from disk.`,saved:`Details saved ✓`,copied:`URL copied ✓`,copyError:`Could not copy URL`,replaced:`File replaced ✓`},toasts:{uploaded:`{count} file(s) uploaded ✓`}},b={title:`Users`,description:`Manage accounts, roles and project access.`,new:`New User`,toolbar:{search:`Search by name or email…`,allStatus:`All status`,active:`Active`,inactive:`Inactive`,newBtn:`+ New user`,searchBtn:`Search`},table:{name:`Name`,email:`Email`,role:`Role`,status:`Status`,lastAccess:`Last access`,actions:{manage:`Manage`,delete:`Delete`}},empty:`No users found.`,noRole:`No role`,detail:{title:`Manage user`,fields:{name:`Name`,email:`Email`,status:`Status`,role:`Role`,password:`Password`},statusOptions:{active:`Active`,inactive:`Inactive`},rolePlaceholder:`— no role —`,meta:`Created on {created} · last access {lastAccess}`,actions:{save:`Save`,resetPassword:`Reset password`,close:`Close`},passwordPrompt:`New password for {email} (minimum 8 chars):`,passwordError:`Password must be at least 8 characters`,toasts:{roleUpdated:`Role for {name} updated ✓`,passwordChanged:`Password for {name} changed ✓`,saved:`User {name} saved ✓`,deleted:`User {name} deleted ✓`},confirmDelete:`Delete user {email}?`}},x=JSON.parse(`{"general":{"title":"General","description":"Basic information displayed on the site.","back":"← All settings","fields":{"siteTitle":"Site Title","siteTitlePlaceholder":"My Site","siteDescription":"Description","siteDescriptionPlaceholder":"A new site built with OkCMS","language":"Language","timezone":"Timezone","timezonePlaceholder":"America/Sao_Paulo"},"saved":"Settings saved ✓","loading":"Loading…","save":"Save"},"postTypes":{"title":"Content Types","description":"Create custom content types (CPTs) beyond Posts and Pages.","form":{"title":"Create Content Type","slug":"Slug (singular, e.g.: portfolio)","slugHint":"Only lowercase letters, numbers and underscore","singular":"Singular name","plural":"Plural name","supports":"Supports","supportsOptions":{"title":"Title","editor":"Editor","thumbnail":"Featured Image","excerpt":"Excerpt","revisions":"Revisions"},"hasArchive":"Has public archive (/slug)","singleton":"Singleton (only one content entry)","icon":"Sidebar menu icon","iconHint":"Pick a Lucide icon — its name is what shows in the admin sidebar","iconSearchPlaceholder":"Search icons…","iconEmpty":"No icons found.","iconCount":"{count} icons available","editTitle":"Edit Content Type","update":"Update","cancel":"Cancel","create":"Create"},"table":{"slug":"Slug","singular":"Singular","plural":"Plural","source":"Source","supports":"Supports","archive":"Archive","mode":"Mode","singleton":"Singleton","collection":"Collection","icon":"Icon","actions":{"edit":"Edit","remove":"Remove"}},"sources":{"admin":"Admin","core":"Core"}},"taxonomies":{"title":"Taxonomies","description":"Create custom taxonomies and link them to content types.","form":{"title":"Create Taxonomy","name":"Name (e.g.: Genre)","slug":"Slug (optional, generated from name)","slugHint":"Only lowercase letters, numbers and underscore","hierarchical":"Hierarchical (allows parent/child terms)","attachTo":"Link to content types","create":"Create"},"table":{"taxonomy":"Taxonomy","hierarchical":"Hierarchical","attachedTypes":"Linked content types","actions":{"remove":"Remove"}}},"customFields":{"title":"Custom Fields","description":"Create field groups, arrange fields and choose which standard fields are visible for each content type.","contentType":"Content type","location":{"title":"Location rules","description":"Choose where this field group appears. Rules in the same group use AND; groups use OR.","parameter":"Location parameter","operator":"Operator","chooseValue":"Choose a value","valuePlaceholder":"Enter a value or slug","showIf":"Show if","removeRule":"Remove rule","required":"Add a value to every location rule.","addRule":"Add condition","addGroup":"Add OR group","remove":"Remove","and":"AND","or":"OR","params":{"content_type":"Post type","content_slug":"Post slug","taxonomy":"Taxonomy","term":"Term slug","user_role":"User role","page_template":"Page template","post_status":"Post status","block":"Block"},"operators":{"eq":"is","neq":"is not"}},"standard":{"title":"Standard fields","description":"Title and slug are required. The other standard fields can be enabled or disabled.","enabled":"Enabled","locked":"Required","fields":{"title":"Title","slug":"Slug","content":"Content","excerpt":"Excerpt","featured_image":"Featured image","seo_title":"SEO title","seo_description":"SEO description","status":"Status","author":"Author"}},"groups":{"title":"Field groups","new":"New field group","empty":"No custom field groups yet.","emptyHint":"Create your first group to start modelling your content.","search":"Search groups…","groupName":"Group","status":"Status","fields":"fields","appliesTo":"Applies to","allContentTypes":"All content types","edit":"Edit","active":"Active","inactive":"Inactive"},"form":{"createTitle":"Create field group","editTitle":"Edit field group","title":"Group name","titlePlaceholder":"Example: Product details","displayTitle":"Display title","active":"Active","backToGroups":"Back to groups","editorEyebrow":"Field builder","groupTitleHint":"This name identifies the field set inside the content editor.","fieldsTitle":"Fields","fieldsDescription":"Add, configure and order fields. Use the six-dot handle to drag without losing their position.","noFields":"This group has no fields yet.","settingsTitle":"Group settings","settingsDescription":"Presentation and panel visibility options for this panel.","description":"Description","labelPlacement":"Label placement","instructionPlacement":"Instruction placement","menuOrder":"Menu order","hideOnScreen":"Hide on edit screen","hide":{"permalink":"Permalink","content":"Content editor","excerpt":"Excerpt","featured_image":"Featured image","author":"Author","revisions":"Revisions","comments":"Comments"},"assignTitle":"Location","assignDescription":"Choose the content type where this field group will be available.","contentType":"Content type","position":"Position","positions":{"normal":"Normal","side":"Sidebar","after_title":"After title"},"displayStyle":"Display style","displayStyles":{"standard":"Standard","seamless":"Seamless","grouped":"Grouped"},"field":"Field","fieldName":"Name/key","fieldNamePlaceholder":"product_code","fieldLabel":"Label","fieldLabelPlaceholder":"Product code","fieldType":"Type","instructions":"Instructions","instructionsPlaceholder":"Optional help text for editors","required":"Required","options":"Options","optionsHint":"One option per line: value|Label","addField":"Add field","removeField":"Remove","dragHint":"Drag to reorder","editField":"Edit","duplicateField":"Duplicate","copySuffix":"(copy)","selectFieldType":"Select field type","searchFieldTypes":"Search field types…","popularFields":"Popular","noMatchingFieldTypes":"No field types found.","fieldTypeHint":"Choose the type that best represents the value editors will enter in this field.","selectField":"Select field","save":"Save group","cancel":"Cancel","newFieldDefault":"New field","saved":"Field group saved.","deleted":"Field group deleted."},"listEyebrow":"Content structure","validation":{"titleRequired":"Group name is required."},"tabs":{"locationRules":"Location rules","presentation":"Presentation","groupSettings":"Group settings"},"fieldSettings":{"general":"General","fieldLabel":"Field label","fieldName":"Field name","instructions":"Instructions","required":"Required","defaultValue":"Default value","placeholder":"Placeholder","presentation":"Presentation","wrapperWidth":"Wrapper width (%)","labelPlacement":"Label","instructionPlacement":"Instructions","top":"Above","left":"Left","above":"Before field","below":"After field","textSettings":"Text","prepend":"Prepend","append":"Append","minLength":"Minimum length","maxLength":"Maximum length","rows":"Rows","newLines":"New lines","wpautop":"Automatic paragraphs","none":"None","numberSettings":"Number","min":"Minimum","max":"Maximum","step":"Step","choiceSettings":"Choices","choices":"Choices","layout":"Layout","vertical":"Vertical","horizontal":"Horizontal","multiple":"Multiple choice","allowNull":"Allow empty","mediaSettings":"Media","returnFormat":"Return format","array":"Array","id":"ID","previewSize":"Preview size","library":"Library","all":"All","uploadedToPost":"Uploaded to this post","allowedTypes":"Allowed types","minWidth":"Minimum width","maxWidth":"Maximum width","minHeight":"Minimum height","maxHeight":"Maximum height","wysiwygSettings":"WYSIWYG","tabs":"Tabs","toolbar":"Toolbar","mediaUpload":"Allow media upload","dateSettings":"Date and time","displayFormat":"Display format","firstDay":"First day","colorSettings":"Color","enableOpacity":"Allow opacity","mapSettings":"Map","center":"Center","zoom":"Zoom","height":"Height","relationSettings":"Relationship","postType":"Post type","taxonomy":"Taxonomy","booleanSettings":"True/False","message":"Message","defaultChecked":"Checked by default","linkSettings":"Link","cloneSettings":"Clone","cloneFields":"Fields to clone","cloneHint":"One field name per line","containerSettings":"Structure","buttonLabel":"Button label","collapsed":"Collapsed row title field","subFields":"Subfields","layouts":"Layouts","addLayout":"Add layout","newLayout":"New layout","layoutName":"Layout name","layoutLabel":"Layout label","layoutDisplay":"Layout display","conditionalLogic":"Conditional logic","conditionalHint":"Show this field only when the rules match.","chooseField":"Choose a field","conditionValue":"Value","addCondition":"Add condition","addConditionGroup":"Add OR group","conditionsAnd":"Conditions in this group use AND.","choicesHint":"One choice per line in the format value|Label.","cloneSource":"Source group or field","cloneSourceHint":"Field group key or field name to copy fields from.","requiredOn":"Required","requiredOff":"Not required","pluginConfig":"Plugin Configuration","mermaid":{"diagramSettings":"Diagram Settings","theme":"Theme","selectTheme":"Select theme","editable":"Allow editing in content editor","defaultCode":"Default Mermaid Code","defaultCodeHint":"Initial code when field is added to content. User can edit later.","examples":"Examples","exampleFlowchart":"Flowchart","exampleSequence":"Sequence","exampleClass":"Class Diagram","diagram":"Mermaid Diagram","copyCode":"Copy code","rerender":"Re-render","showCode":"Show source code","renderError":"Render Error","rendering":"Rendering diagram..."},"libraryAll":"All","libraryUploaded":"Uploaded to this post","ui":"Enhanced UI","uiHint":"Use enhanced styling for the dropdown.","wrapperClass":"Wrapper class","wrapperWidthHint":"CSS width of the field wrapper, e.g. 50%.","collapsedHint":"Name of the sub-field used as the row title.","conditionalActive":"Active","showIf":"Show if","removeRule":"Remove rule","and":"AND","or":"OR","noLayouts":"No layouts yet.","validation":"Validation","advanced":"Advanced","fieldType":"Type","fieldNameHint":"Letters, numbers and underscores only.","ariaLabel":"Field settings","operators":{"eq":"equals","neq":"does not equal","gt":"is greater than","lt":"is less than","contains":"contains","hasAny":"has any value","hasNone":"is empty"}},"actions":{"delete":"Delete","confirmDelete":"Delete this field group?","edit":"Edit","duplicate":"Duplicate","activate":"Activate","deactivate":"Deactivate","export":"Export","import":"Import"},"import":{"description":"Import field groups from a JSON file. The file must contain a field group object or an array of field group objects. Existing groups with the same key will be updated; new groups will be created.","dropzone":"Click to select a .json file, or drag and drop here","hint":"File selected. Click Import to proceed."},"loading":"Loading custom fields…","loadError":"Could not load custom fields."},"reading":{"title":"Reading","description":"Configure how your homepage and posts page are displayed.","frontPageDisplays":"Your homepage displays","frontPageDisplaysOptions":{"latest":"Your latest posts","static":"A static page"},"frontPage":"Homepage","postsPage":"Posts page","selectPage":"— Select a page —","saved":"Reading settings saved ✓","save":"Save Changes","timezoneString":"Timezone","timezoneStringPlaceholder":"America/Sao_Paulo","gmtOffset":"GMT Offset","gmtOffsetPlaceholder":"-3","timezoneDescription":"A timezone string in IANA format (e.g. America/Sao_Paulo). GMT offset is an alternative in hours.","gmtOffsetDescription":"GMT offset in hours (e.g. -3 for UTC-3). Alternative to IANA timezone string.","loading":"Loading…"}}`),S={title:`Menus`,description:`Create and manage the navigation menus used by your site.`,hint:`Menus are independent from content types and can be rendered by your theme.`,new:`New menu`,create:`Create menu`,edit:`Edit menu`,name:`Name`,slug:`Slug`,items:`Items`,back:`Back to menus`,nameRequired:`Enter a menu name.`,editor:{eyebrow:`Navigation structure`,addItems:`Add menu items`,search:`Search…`,addSelected:`Add selected`,addToMenu:`Add to menu`,structure:`Menu structure`,structureHint:`Drag items to reorder. Use the arrows to create nested submenus.`,empty:`Add items from the panels on the left.`,emptyLevel:`No submenu items.`,drag:`Drag to reorder`,untitled:`Untitled item`,noUrl:`No URL`,up:`Move up`,down:`Move down`,indent:`Make submenu`,outdent:`Move to parent level`,itemSettings:`Item settings`,navigationLabel:`Navigation label`,url:`URL`,titleAttribute:`Title attribute`,cssClasses:`CSS classes`,target:`Open link in`,sameWindow:`Same window`,newWindow:`New window`,xfn:`Link relationship (XFN)`,description:`Description`,remove:`Remove`,settings:`Menu settings`,autoAddPages:`Automatically add new top-level pages to this menu`,autoAddPagesHint:`This setting is saved with the menu and can be used by the active theme.`},sources:{pages:`Pages`,posts:`Posts`,custom:`Custom Links`,customHint:`Add any internal or external URL.`,home:`Home`,contentTypes:`Content type items`,archives:`Content type archives`,taxonomies:`Taxonomy terms`},saved:`Menu saved.`,deleted:`Menu deleted.`,empty:`No menus yet.`,confirmDelete:`Delete menu "{name}"?`},C={title:`Content Resources`,description:`Description`,tabs:{category:`Categories`,tag:`Tags`,menu:`Menus`},new:`New resource`,name:`Name`,slug:`Slug`,items:`Menu items (JSON)`,saved:`Resource saved.`,confirmDelete:`Delete this resource?`,form:{new:`Create resource`,edit:`Edit resource`},terms:{title:`Taxonomy terms`,choose:`Choose a taxonomy`,new:`New term`}},w={title:`Access`,description:`Manage roles, permissions and tenants.`,roles:`Roles`,tenants:`Tenants`,permissions:`Permissions`,domain:`Domain`,permissionsPlaceholder:`No permissions selected`,permissionsSummary:`{resources} resources · {count} permissions`,permissionSearch:`Filter resources…`,permissionNoMatches:`No resource matches.`,customPermissions:`Custom permissions`,customPermission:`permission:resource`,permissionsSelected:`{count} selected`,newRole:`New role`,editRole:`Edit role`,newTenant:`New tenant`,editTenant:`Edit tenant`,resources:{content:`Content`,media:`Media`,category:`Categories`,tag:`Tags`,menu:`Menus`,user:`Users`,roles:`Roles`,theme:`Themes`,plugin:`Plugins`,setting:`Settings`,webhook:`Webhooks`,tenants:`Tenants`,audit:`Audit`,build:`Builds`,system:`System`}},T={title:`Logs`,description:`Complete audit history of actions performed in the CMS.`,retentionTitle:`Log retention`,retentionDescription:`Logs older than this period are removed automatically.`,retentionDays:`Keep logs for (days)`,retentionSaved:`Log retention updated.`,historyTitle:`Audit history`,actionFilter:`Filter by action`,resourceFilter:`Filter by resource`,loading:`Loading logs…`,empty:`No actions recorded yet.`,system:`System`,columns:{date:`Date`,action:`Action`,resource:`Resource`,user:`User`,status:`Status`,ip:`IP`}},E={title:`Webhooks`,description:`Send CMS events to external services with configurable authentication.`,listTitle:`Configured webhooks`,new:`New webhook`,create:`Create webhook`,edit:`Edit webhook`,url:`Endpoint URL`,events:`Events`,selectEvents:`Select one or more events`,searchEvents:`Search events…`,noEvents:`No events found.`,eventsRequired:`Select at least one event.`,authentication:`Authentication`,active:`Active`,token:`Bearer token`,username:`Username`,password:`Password`,headerName:`Header name`,apiKeyValue:`API key value`,secret:`HMAC secret`,signatureHeader:`Signature header`,keepExisting:`Leave blank to keep current value`,loading:`Loading webhooks…`,empty:`No webhooks configured.`,auth:{none:`None`,bearer:`Bearer token`,basic:`Basic authentication`,apiKey:`API key`,hmac_sha256:`HMAC SHA-256`}},D={title:`API keys`,description:`Issue one-time credentials so external apps can exchange an API key for access and refresh JWTs and consume the content API.`,howItWorks:`The key is used only once, at POST /api/v1/auth/api-key-login, to obtain JWTs. It never authorizes requests directly.`,listTitle:`Issued keys`,new:`New API key`,create:`Create API key`,createSubmit:`Create key`,prefix:`Prefix`,lastUsed:`Last used`,neverUsed:`Never used`,revoke:`Revoke`,revoked:`API key revoked.`,loading:`Loading API keys…`,empty:`No API keys issued.`,status:{active:`Active`,oneTime:`Single-use`,expired:`Expired`,revoked:`Revoked`},form:{name:`Name`,namePlaceholder:`e.g. Mobile app backend`,user:`Identity (user)`,currentUser:`Current user`,expiresAt:`Expires at (optional)`,oneTime:`Single-use (revoke automatically after the first login)`,oneTimeHint:`Recommended for integrations that can exchange the key for JWTs immediately.`},errors:{nameRequired:`Name is required.`},created:{title:`API key created`,warning:`Copy this value now — it will never be shown again. If you lose it, revoke the key and create a new one.`,value:`API key`,howToUse:`Use it once to obtain JWTs:`,copy:`Copy`,copied:`Copied!`}},O={title:`Plugins`,description:`View installed plugins.`,directoryHint:`Detected automatically from the project's plugins/ directory. To install, update or activate a plugin, place its files in plugins/ and restart the server (okcms start, pm2 or docker).`,columns:{name:`Name`,version:`Version`,status:`Status`,enabled:`Enabled for tenant`},status:{active:`Active`,installed:`Installed`,inactive:`Inactive`,quarantined:`Quarantined`,missing:`Missing`,loadFailed:`Load failed`},install:`Install plugin`,uninstall:`Uninstall`,confirmUninstall:`Uninstall {name}?`,name:`Plugin name`,version:`Version`,manifest:`Manifest (JSON)`,loadError:`Could not load plugins.`,installError:`Could not install the plugin.`,uninstallError:`Could not uninstall the plugin.`,empty:`No plugins installed.`,enabledForTenant:`Active for this tenant`,enabledYes:`Yes`,enabledNo:`No`},k={title:`Themes`,description:`Manage installed themes.`,directoryHint:`Detected automatically from the project's themes/ directory. Use the CLI or deploy files to add themes.`,version:`Version`,active:`Active`,status:{active:`Active`,installed:`Installed`,inactive:`Inactive`},activate:`Activate`,deactivate:`Deactivate`,customize:`Customize`,install:`Install theme`,name:`Theme name`,manifest:`Manifest (JSON)`,loadError:`Could not load themes.`,activateError:`Could not activate the theme.`,deactivateError:`Could not deactivate the theme.`,deactivateBlocked:`At least one theme must remain active.`,installError:`Could not install the theme.`,reload:`Reload`,empty:`No themes installed.`},A={title:`Page not found`,description:`The address may be out of date or the page may have moved. Check the URL or pick one of the sections below.`,requestedPath:`You tried to open`,suggestionsLabel:`Or visit one of these`,goHome:`Back to home`,goBack:`Go back`},j={notice:`Request limit reached — wait a few seconds and try again.`,noticeRetry:`Request limit reached — retrying automatically in {seconds}s.`},M={title:`Login`,subtitle:`Sign in to your account`,email:`Email`,password:`Password`,submit:`Sign In`,failed:`Invalid email or password`},N={save:`Save`,cancel:`Cancel`,delete:`Delete`,edit:`Edit`,close:`Close`,confirm:`Confirm`,loading:`Loading…`,yes:`Yes`,no:`No`,search:`Search`,filter:`Filter`,create:`Create`,update:`Update`,remove:`Remove`,viewAll:`View All`,back:`Back`,next:`Next`,previous:`Previous`,page:`Page`,of:`of`,items:`items`,item:`item`,empty:`No {items} found.`,toast:{success:`✓`,error:`Error: {message}`},status:{active:`Active`,inactive:`Inactive`,draft:`Draft`,published:`Published`,archived:`Archived`,locked:`Locked`},language:`Language`,refresh:`Refresh`,actions:`Actions`,add:`Add`},P={justNow:`just now`,minAgo:`minutes ago`,ago:`ago`,published:`Published`,updated:`Updated`,newUser:`New user: {name}`},F={mainMenu:`Main menu`,notifications:`Notifications`,notificationsEmpty:`No recent activity`,settings:`Settings`,toggleSidebar:`Toggle sidebar`,userMenu:`User menu`},I={copyright:`© 2026 OkCMS. All rights reserved.`,links:`Links`,website:`Website`,github:`GitHub`,docs:`Documentation`,community:`Community`,poweredBy:`Powered by Oktis Works`},L={title:`Help`,label:`Help`,tabs:`Help topics`,topics:{overview:{label:`Overview`,content:`<h4>Welcome to the OkCMS Dashboard</h4><p>This dashboard gives you an overview of your site's content and activity.</p><h4>Available Widgets</h4><ul><li><strong>At a Glance:</strong> overview of posts, pages, media, and users</li><li><strong>Quick Draft:</strong> save drafts quickly from the dashboard</li><li><strong>Activity:</strong> recent site activity and updates</li></ul>`},content:{label:`Content Management`,content:`<h4>Managing Content</h4><p>Create, edit, and publish content from the Content section.</p><h4>Quick Actions</h4><ul><li>Click "New Content" to create a new post or page</li><li>Use filters to find specific content</li><li>Bulk actions available for multiple items</li></ul>`},media:{label:`Media Library`,content:`<h4>Managing Media</h4><p>Upload and manage images, videos, and documents.</p><h4>Tips</h4><ul><li>Drag and drop files to upload</li><li>Add alt text for accessibility</li><li>Organize with folders (coming soon)</li></ul>`}}},R={title:`Screen Options`,label:`Screen Options`,showOnScreen:`Show on screen`},z={title:`Customizer`,description:`Adjust the active theme settings with a live preview. Changes apply to the preview instantly and only persist when you save.`,loadError:`Failed to load themes.`,saveError:`Failed to save the theme settings.`,noTheme:`No active theme to customize.`,goToThemes:`Go to Themes`,noSettings:`This theme declares no customizable settings (manifest.settings).`,save:`Save`,saving:`Saving...`,saved:`Saved.`,reset:`Reset`,refreshPreview:`Refresh preview`,previewHint:`The preview overlays your draft on top of the saved settings — it is request-only and never persists.`,previewPath:`Preview path`,previewTitle:`Theme preview`},B={title:`Comments`,description:`Moderate visitor comments: approve, mark as spam, trash or delete permanently.`,loading:`Loading comments...`,empty:`No comments in this queue.`,reload:`Reload`,author:`Author`,comment:`Comment`,inReplyTo:`Content`,submitted:`Submitted`,approve:`Approve`,spam:`Spam`,trash:`Trash`,delete:`Delete`,confirmDelete:`Delete this comment permanently? This cannot be undone.`,status:{pending:`Pending`,approved:`Approved`,spam:`Spam`,trashed:`Trash`}},V={layout:g,dashboard:_,content:v,media:y,users:b,settings:x,menus:S,resources:C,access:w,logs:T,webhooks:E,apiKeys:D,plugins:O,themes:k,notFound:A,rateLimit:j,login:M,common:N,activity:P,adminBar:F,footer:I,helpTabs:L,screenOptions:R,customizer:z,comments:B},H=new Map,U=V,[W,G]=n(0),K=null;function q(e){return(e.split(`.`).at(-1)??e).replace(/([a-z])([A-Z])/g,`$1 $2`).replace(/[-_]+/g,` `).replace(/\s+/g,` `).trim().replace(/^\w/,e=>e.toUpperCase())}function J(e,t){return function(n,r){let i=n.split(`.`),a=e;for(let e of i)if(a&&typeof a==`object`&&e in a)a=a[e];else{a=t;for(let e of i)if(a&&typeof a==`object`&&e in a)a=a[e];else return q(n);break}return typeof a==`string`?r?a.replace(/\{(\w+)\}/g,(e,t)=>String(r[t]??``)):a:q(n)}}async function Y(e){if(H.has(e))return H.get(e);let[t,n]=await Promise.all([c(e),c(`en`)]),r=J(t,n);return H.set(e,r),r}var X=J(U,U),Z=`en`,Q=!0,ae=`okcms:locale-changed`;function $(){typeof window<`u`&&window.dispatchEvent(new CustomEvent(ae,{detail:{locale:Z}}))}function oe(e){return t(async()=>{Q&&(K||=(async()=>{let t=e??await p();Z=t,X=await Y(t),Q=!1,G(e=>e+1),$()})(),await K)}),{t:(e,t)=>(W(),X(e,t)),locale:()=>(W(),Z),changeLocale:async e=>{Q=!0,Z=e,X=await Y(e),Q=!1,G(e=>e+1),$(),await m(e)},get loading(){return Q}}}export{ee as a,te as i,oe as n,a as o,u as r,ne as s,Y as t};
@@ -1 +0,0 @@
1
- var e=(function(){let e=typeof document<`u`&&document.createElement(`link`).relList;return e&&e.supports&&e.supports(`modulepreload`)?`modulepreload`:`preload`})(),t=function(e){return`/`+e},n={},r=function(e){return e.pathname.endsWith(`.css`)},i=function(i,a,o){let s=Promise.resolve();if(a&&a.length>0){let i,c=document.querySelector(`meta[property=csp-nonce]`),l=c?.nonce||c?.getAttribute(`nonce`);function u(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function d(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}s=u(a.map(a=>{a=t(a,o);let s=d(a);if(s.href in n)return;n[s.href]=!0;let c=r(s);if(i===void 0){i={all:new Set,styles:new Set};let e=document.getElementsByTagName(`link`);for(let t=e.length-1;t>=0;t--){let n=e[t];i.all.add(n.href),n.rel===`stylesheet`&&i.styles.add(n.href)}}if((c?i.styles:i.all).has(s.href))return;let u=document.createElement(`link`);if(u.rel=c?`stylesheet`:e,c||(u.as=`script`),u.crossOrigin=``,u.href=s.href,l&&u.setAttribute(`nonce`,l),document.head.appendChild(u),c)return new Promise((e,t)=>{u.addEventListener(`load`,e),u.addEventListener(`error`,()=>t(Error(`Unable to preload CSS for ${s}`)))})}).filter(e=>e!==void 0))}function c(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return s.then(e=>{for(let t of e||[])t.status===`rejected`&&c(t.reason);return i().catch(c)})};export{i as t};
@@ -1 +0,0 @@
1
- import{S as e,a as t,h as n,i as r,l as i,p as a,r as o,s,y as c}from"./solid.Ck4Vtfe4.js";import{_ as l,a as u,f as d,h as f,i as p,l as m,o as h,p as g,s as _,t as v,u as y}from"./web.DD6VKaIp.js";import{t as b}from"./preload-helper.oCYlU9a4.js";import{n as x}from"./api.53l1ob4Z.js";var S=l(`<span class=muted>…`),C=l(`<span class=muted>⚙ <!$><!/>`),w=l(`<div class=sidebar__submenu>`),T=l(`<div class=sidebar-plugins__group><a class=sidebar__link><!$><!/> <!$><!/></a><!$><!/>`),E=l(`<span aria-hidden=true>`),D=l(`<a class="sidebar__link sidebar__link--sub">`),O=l(`<div class=dashboard-widgets>`),k=l(`<div class="card widget"><h3 class=stat-label></h3><div>`),A=l(`<div class=notices role=status aria-live=polite>`),j=l(`<button type=button class=notice__close aria-label=Dispensar>×`),M=l(`<div><span></span><!$><!/>`),N=l(`<div class="metabox card"><h3 class=metabox__title></h3><div class=metabox__body>`),P=l(`<div class=action-links>`),F=l(`<a class=action-link>`);function I(e,t){if(e.startsWith(`@/`))return e;let n=e.indexOf(`:`);if(n===-1){let n=t??``,r=e.replace(/^\/+/,``);return n?`@/plugins/${n}/${r}`:e}let r=t??e.slice(0,n),i=e.slice(n+1);return i.startsWith(`@/`)?i:i.includes(`/`)?`@/plugins/${r}/${i.replace(/^\/+/,``)}`:`@/plugins/${r}/admin/components/${i}.tsx`}function L(t){let[o,l]=n(null),[u,d]=n(null),[f,p]=n(!0);return e(async()=>{try{let e=I(t.componentId,t.plugin),n=await b(()=>import(e),[]),r=n.default??Object.values(n).find(e=>typeof e==`function`);if(!r)throw Error(`componente default ausente no módulo`);l(()=>r)}catch(e){console.warn(`[PluginComponentHost] falha ao carregar ${t.componentId}:`,e),d(e instanceof Error?e.message:String(e))}finally{p(!1)}}),i(s,{get children(){return[i(r,{get when(){return f()},get children(){var e=h(S);return a(()=>g(e,`data-plugin-component-loading`,t.componentId)),e}}),i(r,{get when(){return u()||!o()},get children(){var e=h(C),n=e.firstChild.nextSibling,[r,i]=_(n.nextSibling);return m(e,()=>t.componentId,r,i),a(n=>{var r=t.componentId,i=u()??``;return r!==n.e&&g(e,`data-plugin-component-error`,n.e=r),i!==n.t&&g(e,`title`,n.t=i),n},{e:void 0,t:void 0}),e}}),i(r,{when:!0,get children(){return i(v,c({get component(){return o()}},()=>t.extraProps??{}))}})]}})}function R(e){let n=()=>e.extensions.menuPages.filter(t=>e.can(t.capability??`read`)),r=t=>e.extensions.submenuPages.filter(e=>e.parentSlug===t).filter(t=>e.can(t.capability??`read`)).sort((e,t)=>(e.position??0)-(t.position??0));return i(o,{get each(){return n()},children:e=>(()=>{var n=h(T),s=n.firstChild,c=s.firstChild,[l,u]=_(c.nextSibling),d=l.nextSibling.nextSibling,[f,p]=_(d.nextSibling),v=s.nextSibling,[b,x]=_(v.nextSibling);return m(s,(()=>{var t=y(()=>!!e.icon);return()=>t()?(()=>{var t=h(E);return m(t,()=>e.icon),t})():null})(),l,u),m(s,()=>e.label,f,p),m(n,i(t,{get when(){return r(e.slug).length>0},get children(){var t=h(w);return m(t,i(o,{get each(){return r(e.slug)},children:e=>(()=>{var t=h(D);return m(t,()=>e.label),a(()=>g(t,`href`,`/plugins/${e.slug}`)),t})()})),t}}),b,x),a(t=>{var r=e.slug,i=`/plugins/${e.slug}`;return r!==t.e&&g(n,`data-plugin-menu`,t.e=r),i!==t.t&&g(s,`href`,t.t=i),t},{e:void 0,t:void 0}),n})()})}function z(e){return i(t,{get when(){return e.extensions.dashboardWidgets.length>0},get children(){var t=h(O);return m(t,i(o,{get each(){return e.extensions.dashboardWidgets},children:e=>{let t=e.componentId.split(`:`)[0]??e.id.split(`:`)[0]??`unknown`;return(()=>{var n=h(k),r=n.firstChild,o=r.nextSibling;return g(n,`data-plugin`,t),m(r,()=>e.title),g(o,`data-plugin`,t),m(o,i(L,{get componentId(){return e.componentId},plugin:t})),a(t=>{var r=e.id,i=`span ${e.columnsSpan??1}`,a=e.componentId;return r!==t.e&&g(n,`data-widget-id`,t.e=r),i!==t.t&&f(n,`grid-column`,t.t=i),a!==t.a&&g(o,`data-plugin-component`,t.a=a),t},{e:void 0,t:void 0,a:void 0}),n})()}})),t}})}function B(e){return(()=>{var n=h(A);return m(n,i(o,{get each(){return e.extensions.notices},children:n=>{let r=n.id.split(`:`)[0]??`unknown`;return(()=>{var o=h(M),s=o.firstChild,c=s.nextSibling,[l,u]=_(c.nextSibling);return g(o,`data-plugin`,r),m(s,()=>n.message),m(o,i(t,{get when(){return y(()=>n.dismissible!==!1)()&&e.onDismiss},get children(){var t=h(j);return t.$$click=()=>e.onDismiss?.(n.id),d(),t}}),l,u),a(()=>p(o,`notice notice--${n.level}`)),o})()}})),n})()}function V(e){let t=()=>e.extensions.metaBoxes.filter(t=>t.screens.includes(e.screen)&&t.context===e.context).sort((e,t)=>{let n={high:0,default:1,low:2};return n[e.priority]-n[t.priority]});return i(o,{get each(){return t()},children:e=>{let t=e.componentId.split(`:`)[0]??e.id.split(`:`)[0]??`unknown`;return(()=>{var n=h(N),r=n.firstChild,o=r.nextSibling;return g(n,`data-plugin`,t),m(r,()=>e.title),g(o,`data-plugin`,t),m(o,i(L,{get componentId(){return e.componentId},plugin:t})),a(t=>{var r=e.id,i=e.componentId;return r!==t.e&&g(n,`data-metabox-id`,t.e=r),i!==t.t&&g(o,`data-plugin-component`,t.t=i),t},{e:void 0,t:void 0}),n})()}})}function H(e){return i(t,{get when(){return e.extensions.actionLinks.length>0},get children(){var t=h(P);return m(t,i(o,{get each(){return e.extensions.actionLinks},children:e=>(()=>{var t=h(F);return m(t,()=>e.label),a(()=>g(t,`href`,e.url)),t})()})),t}})}u([`click`]);function U(){return{menuPages:[],submenuPages:[],dashboardWidgets:[],metaBoxes:[],notices:[],columns:{},columnRenderers:{},actionLinks:[],editors:[]}}var[W,G]=n(U()),K=null,q=new Set;function J(e){let t=typeof window<`u`&&typeof window.requestIdleCallback==`function`?e=>window.requestIdleCallback(()=>e()):e=>setTimeout(e,1),n=[...e.dashboardWidgets.map(e=>e.componentId),...e.metaBoxes.map(e=>e.componentId),...e.editors.map(e=>e.componentId),...Object.values(e.columnRenderers).flatMap(e=>Object.values(e))];for(let e of n)e&&!q.has(e)&&(q.add(e),t(()=>{b(()=>import(I(e)),[]).catch(()=>{})}))}function Y(){return K||=x.getAdminExtensions().then(e=>{G(e),J(e)}).catch(()=>{}),K.then(()=>W())}export{z as a,L as c,R as i,Y as n,V as o,H as r,B as s,U as t};
@@ -1,34 +0,0 @@
1
- import { r as __exportAll } from "./rolldown-runtime_BMI-E3GI.mjs";
2
- import { S as createAstro, d as maybeRenderHead, i as renderComponent, p as addAttribute, u as renderTemplate } from "./server_B5N27szj.mjs";
3
- import { t as createComponent } from "./compiler_O7J1rlsi.mjs";
4
- import { t as $$DashboardLayout } from "./DashboardLayout_D6zphdT0.mjs";
5
- import { t as PageHeader } from "./PageHeader_CBOioOjo.mjs";
6
- //#region src/pages/plugins/[slug].astro
7
- var _slug__exports = /* @__PURE__ */ __exportAll({
8
- default: () => $$Slug,
9
- file: () => $$file,
10
- url: () => $$url
11
- });
12
- createAstro("https://astro.build");
13
- var $$Slug = createComponent(($$result, $$props, $$slots) => {
14
- const Astro = $$result.createAstro($$props, $$slots);
15
- Astro.self = $$Slug;
16
- const { slug } = Astro.props;
17
- const pluginSlug = String(slug ?? "").split("/")[0] ?? "";
18
- const pageTitle = String(slug ?? "Plugin");
19
- return renderTemplate`${renderComponent($$result, "DashboardLayout", $$DashboardLayout, {
20
- "title": pageTitle,
21
- "data-astro-cid-q2qjpybz": true
22
- }, { "default": ($$result) => renderTemplate`${renderComponent($$result, "PageHeader", PageHeader, {
23
- "title": pageTitle,
24
- "description": `Página de extensão do plugin ${pluginSlug}`,
25
- "data-astro-cid-q2qjpybz": true
26
- })}${maybeRenderHead($$result)}<div class="plugin-page"${addAttribute(pluginSlug, "data-plugin")}${addAttribute(slug, "data-plugin-page")} data-astro-cid-q2qjpybz><div class="card plugin-page__container" data-astro-cid-q2qjpybz><div class="plugin-page__mount"${addAttribute(`page:${slug}`, "data-plugin-component")}${addAttribute(pluginSlug, "data-plugin")} data-astro-cid-q2qjpybz><!-- Componente do plugin (declarativo, sem injeção de DOM direta — DECI-027) --></div></div></div>` })}`;
27
- }, "/home/runner/work/cms/cms/apps/admin/src/pages/plugins/[slug].astro", void 0);
28
- var $$file = "/home/runner/work/cms/cms/apps/admin/src/pages/plugins/[slug].astro";
29
- var $$url = "/plugins/[slug]";
30
- //#endregion
31
- //#region \0virtual:astro:page:src/pages/plugins/[slug]@_@astro
32
- var page = () => _slug__exports;
33
- //#endregion
34
- export { page };