kempo 4.6.2 → 4.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -1
- package/app-public/account/index.page.html +2 -0
- package/app-public/nav.fragment.html +2 -1
- package/app-templates/emails/email.template.html +14 -0
- package/app-templates/emails/reset-password.page.html +19 -0
- package/app-templates/emails/test.page.html +21 -0
- package/app-templates/emails/verify-email.page.html +18 -0
- package/bin/cli.js +18 -33
- package/dist/admin/components/Dashboard.js +2 -2
- package/dist/admin/components/Dashboard.js.map +1 -1
- package/dist/admin/components/EmailTemplates.js +25 -0
- package/dist/admin/components/EmailTemplates.js.map +1 -0
- package/dist/admin/components/Emails.js +49 -0
- package/dist/admin/components/Emails.js.map +1 -0
- package/dist/admin/components/Menus.js +103 -0
- package/dist/admin/components/Menus.js.map +1 -0
- package/dist/admin/components/settings/AdminSettings.js +7 -0
- package/dist/admin/components/settings/AdminSettings.js.map +1 -0
- package/dist/admin/components/settings/BooleanSetting.js +2 -0
- package/dist/admin/components/settings/BooleanSetting.js.map +1 -0
- package/dist/admin/components/settings/JsonSetting.js +2 -0
- package/dist/admin/components/settings/JsonSetting.js.map +1 -0
- package/dist/admin/components/settings/NumberSetting.js +2 -0
- package/dist/admin/components/settings/NumberSetting.js.map +1 -0
- package/dist/admin/components/settings/SecretSetting.js +2 -0
- package/dist/admin/components/settings/SecretSetting.js.map +1 -0
- package/dist/admin/components/settings/Setting.js +2 -0
- package/dist/admin/components/settings/Setting.js.map +1 -0
- package/dist/admin/components/settings/SettingEditor.js +2 -0
- package/dist/admin/components/settings/SettingEditor.js.map +1 -0
- package/dist/admin/components/settings/SettingsPanel.js +24 -0
- package/dist/admin/components/settings/SettingsPanel.js.map +1 -0
- package/dist/admin/components/settings/StringSetting.js +2 -0
- package/dist/admin/components/settings/StringSetting.js.map +1 -0
- package/dist/admin/components/settings/humanize.js +2 -0
- package/dist/admin/components/settings/humanize.js.map +1 -0
- package/dist/admin/content/menus/index.page.html +11 -0
- package/dist/admin/emails/index.page.html +14 -0
- package/dist/admin/icons/mail.svg +1 -0
- package/dist/admin/nav.fragment.html +12 -0
- package/dist/admin/settings/[owner]/[name]/index.page.html +1 -1
- package/dist/admin/settings/index.page.html +6 -289
- package/dist/kempo/api/email-templates/GET.js +2 -0
- package/dist/kempo/api/email-templates/GET.js.map +1 -0
- package/dist/kempo/api/email-templates/file/DELETE.js +2 -0
- package/dist/kempo/api/email-templates/file/DELETE.js.map +1 -0
- package/dist/kempo/api/email-templates/file/GET.js +2 -0
- package/dist/kempo/api/email-templates/file/GET.js.map +1 -0
- package/dist/kempo/api/email-templates/file/PUT.js +2 -0
- package/dist/kempo/api/email-templates/file/PUT.js.map +1 -0
- package/dist/kempo/api/email-templates/preview/GET.js +2 -0
- package/dist/kempo/api/email-templates/preview/GET.js.map +1 -0
- package/dist/kempo/api/emails/GET.js +2 -0
- package/dist/kempo/api/emails/GET.js.map +1 -0
- package/dist/kempo/api/emails/[id]/GET.js +2 -0
- package/dist/kempo/api/emails/[id]/GET.js.map +1 -0
- package/dist/kempo/api/emails/[id]/retry/POST.js +2 -0
- package/dist/kempo/api/emails/[id]/retry/POST.js.map +1 -0
- package/dist/kempo/api/emails/test/POST.js +2 -0
- package/dist/kempo/api/emails/test/POST.js.map +1 -0
- package/dist/kempo/api/fragments/DELETE.js +1 -1
- package/dist/kempo/api/fragments/DELETE.js.map +1 -1
- package/dist/kempo/api/fragments/GET.js +1 -1
- package/dist/kempo/api/fragments/GET.js.map +1 -1
- package/dist/kempo/api/fragments/POST.js +1 -1
- package/dist/kempo/api/fragments/POST.js.map +1 -1
- package/dist/kempo/api/fragments/disable/PUT.js +1 -1
- package/dist/kempo/api/fragments/disable/PUT.js.map +1 -1
- package/dist/kempo/api/fragments/enable/PUT.js +1 -1
- package/dist/kempo/api/fragments/enable/PUT.js.map +1 -1
- package/dist/kempo/api/fragments/file/GET.js +1 -1
- package/dist/kempo/api/fragments/file/GET.js.map +1 -1
- package/dist/kempo/api/fragments/file/PATCH.js +1 -1
- package/dist/kempo/api/fragments/file/PATCH.js.map +1 -1
- package/dist/kempo/api/fragments/file/PUT.js +1 -1
- package/dist/kempo/api/fragments/file/PUT.js.map +1 -1
- package/dist/kempo/api/fragments/lock/PUT.js +1 -1
- package/dist/kempo/api/fragments/lock/PUT.js.map +1 -1
- package/dist/kempo/api/globals/DELETE.js +1 -1
- package/dist/kempo/api/globals/DELETE.js.map +1 -1
- package/dist/kempo/api/globals/GET.js +1 -1
- package/dist/kempo/api/globals/GET.js.map +1 -1
- package/dist/kempo/api/globals/POST.js +1 -1
- package/dist/kempo/api/globals/POST.js.map +1 -1
- package/dist/kempo/api/globals/disable/PUT.js +1 -1
- package/dist/kempo/api/globals/disable/PUT.js.map +1 -1
- package/dist/kempo/api/globals/enable/PUT.js +1 -1
- package/dist/kempo/api/globals/enable/PUT.js.map +1 -1
- package/dist/kempo/api/globals/entry/GET.js +1 -1
- package/dist/kempo/api/globals/entry/GET.js.map +1 -1
- package/dist/kempo/api/globals/entry/PUT.js +1 -1
- package/dist/kempo/api/globals/entry/PUT.js.map +1 -1
- package/dist/kempo/api/globals/lock/PUT.js +1 -1
- package/dist/kempo/api/globals/lock/PUT.js.map +1 -1
- package/dist/kempo/api/menus/DELETE.js +2 -0
- package/dist/kempo/api/menus/DELETE.js.map +1 -0
- package/dist/kempo/api/menus/GET.js +2 -0
- package/dist/kempo/api/menus/GET.js.map +1 -0
- package/dist/kempo/api/menus/POST.js +2 -0
- package/dist/kempo/api/menus/POST.js.map +1 -0
- package/dist/kempo/api/menus/adopt/PUT.js +2 -0
- package/dist/kempo/api/menus/adopt/PUT.js.map +1 -0
- package/dist/kempo/api/menus/items/DELETE.js +2 -0
- package/dist/kempo/api/menus/items/DELETE.js.map +1 -0
- package/dist/kempo/api/menus/items/POST.js +2 -0
- package/dist/kempo/api/menus/items/POST.js.map +1 -0
- package/dist/kempo/api/menus/items/enabled/PUT.js +2 -0
- package/dist/kempo/api/menus/items/enabled/PUT.js.map +1 -0
- package/dist/kempo/api/menus/items/order/PUT.js +2 -0
- package/dist/kempo/api/menus/items/order/PUT.js.map +1 -0
- package/dist/kempo/api/menus/location/PUT.js +2 -0
- package/dist/kempo/api/menus/location/PUT.js.map +1 -0
- package/dist/kempo/api/pages/DELETE.js +1 -1
- package/dist/kempo/api/pages/DELETE.js.map +1 -1
- package/dist/kempo/api/pages/GET.js +1 -1
- package/dist/kempo/api/pages/GET.js.map +1 -1
- package/dist/kempo/api/pages/POST.js +1 -1
- package/dist/kempo/api/pages/POST.js.map +1 -1
- package/dist/kempo/api/pages/directories/GET.js +1 -1
- package/dist/kempo/api/pages/directories/GET.js.map +1 -1
- package/dist/kempo/api/pages/disable/PUT.js +1 -1
- package/dist/kempo/api/pages/disable/PUT.js.map +1 -1
- package/dist/kempo/api/pages/enable/PUT.js +1 -1
- package/dist/kempo/api/pages/enable/PUT.js.map +1 -1
- package/dist/kempo/api/pages/file/GET.js +1 -1
- package/dist/kempo/api/pages/file/GET.js.map +1 -1
- package/dist/kempo/api/pages/file/PATCH.js +1 -1
- package/dist/kempo/api/pages/file/PATCH.js.map +1 -1
- package/dist/kempo/api/pages/file/PUT.js +1 -1
- package/dist/kempo/api/pages/file/PUT.js.map +1 -1
- package/dist/kempo/api/pages/lock/PUT.js +1 -1
- package/dist/kempo/api/pages/lock/PUT.js.map +1 -1
- package/dist/kempo/api/pages/rescan/POST.js +1 -1
- package/dist/kempo/api/pages/rescan/POST.js.map +1 -1
- package/dist/kempo/api/pages/search/GET.js +1 -1
- package/dist/kempo/api/pages/search/GET.js.map +1 -1
- package/dist/kempo/api/pages/templates/GET.js +1 -1
- package/dist/kempo/api/pages/templates/GET.js.map +1 -1
- package/dist/kempo/api/settings/[owner]/[name]/POST.js +1 -1
- package/dist/kempo/api/settings/[owner]/[name]/POST.js.map +1 -1
- package/dist/kempo/api/templates/DELETE.js +1 -1
- package/dist/kempo/api/templates/DELETE.js.map +1 -1
- package/dist/kempo/api/templates/GET.js +1 -1
- package/dist/kempo/api/templates/GET.js.map +1 -1
- package/dist/kempo/api/templates/POST.js +1 -1
- package/dist/kempo/api/templates/POST.js.map +1 -1
- package/dist/kempo/api/templates/disable/PUT.js +1 -1
- package/dist/kempo/api/templates/disable/PUT.js.map +1 -1
- package/dist/kempo/api/templates/enable/PUT.js +1 -1
- package/dist/kempo/api/templates/enable/PUT.js.map +1 -1
- package/dist/kempo/api/templates/file/GET.js +1 -1
- package/dist/kempo/api/templates/file/GET.js.map +1 -1
- package/dist/kempo/api/templates/file/PATCH.js +1 -1
- package/dist/kempo/api/templates/file/PATCH.js.map +1 -1
- package/dist/kempo/api/templates/file/PUT.js +1 -1
- package/dist/kempo/api/templates/file/PUT.js.map +1 -1
- package/dist/kempo/api/templates/lock/PUT.js +1 -1
- package/dist/kempo/api/templates/lock/PUT.js.map +1 -1
- package/dist/kempo/components/DashboardWidget.js +4 -4
- package/dist/kempo/components/DashboardWidget.js.map +1 -1
- package/dist/kempo/icons/campaign.svg +1 -0
- package/dist/kempo/icons/fields.svg +1 -0
- package/dist/kempo/icons/open_in_new.svg +1 -0
- package/dist/kempo/sdk.js +1 -1
- package/dist/kempo/sdk.js.map +1 -1
- package/middleware/kempo.js +69 -12
- package/package.json +3 -4
- package/server/db/schema.js +56 -0
- package/server/sdk.js +26 -0
- package/server/utils/auth/requestPasswordReset.js +9 -3
- package/server/utils/auth/verifyEmail.js +10 -1
- package/server/utils/dashboard/coreWidgets.js +1 -0
- package/server/utils/dashboard/helpers.js +6 -0
- package/server/utils/email/defaultSender.js +2 -0
- package/server/utils/email/dispatchEmail.js +56 -0
- package/server/utils/email/emailSettings.js +21 -0
- package/server/utils/email/emailTemplatePaths.js +36 -0
- package/server/utils/email/getEmail.js +14 -0
- package/server/utils/email/getSenderEmail.js +11 -0
- package/server/utils/email/getSenderFrom.js +18 -0
- package/server/utils/email/isValidSender.js +4 -0
- package/server/utils/email/listEmailTemplates.js +23 -0
- package/server/utils/email/listEmails.js +35 -0
- package/server/utils/email/maintainEmails.js +46 -0
- package/server/utils/email/pruneEmails.js +29 -0
- package/server/utils/email/readEmailTemplate.js +28 -0
- package/server/utils/email/renderEmailTemplate.js +63 -0
- package/server/utils/email/resetEmailTemplate.js +15 -0
- package/server/utils/email/retryEmail.js +21 -0
- package/server/utils/email/saveEmailTemplate.js +38 -0
- package/server/utils/email/sendEmail.js +22 -32
- package/server/utils/email/sendEmailFromTemplate.js +9 -27
- package/server/utils/extensions/aliases.js +71 -0
- package/server/utils/extensions/checkClaims.js +32 -0
- package/server/utils/extensions/claims.js +54 -0
- package/server/utils/extensions/createTablesFromSchema.js +13 -20
- package/server/utils/extensions/enableExtensionTree.js +8 -0
- package/server/utils/extensions/installExtension.js +32 -0
- package/server/utils/extensions/readKempoConfig.js +2 -2
- package/server/utils/extensions/scopeCache.js +14 -1
- package/server/utils/extensions/scopes.js +72 -0
- package/server/utils/extensions/uninstallExtensionTree.js +2 -1
- package/server/utils/extensions/updateExtension.js +35 -0
- package/server/utils/global-content/createGlobalContent.js +8 -18
- package/server/utils/global-content/deleteGlobalContent.js +1 -16
- package/server/utils/global-content/disableGlobalContent.js +1 -16
- package/server/utils/global-content/enableGlobalContent.js +1 -16
- package/server/utils/global-content/helpers.js +40 -6
- package/server/utils/global-content/listGlobalContent.js +2 -2
- package/server/utils/global-content/setGlobalContentLocked.js +1 -16
- package/server/utils/global-content/updateGlobalContent.js +1 -16
- package/server/utils/hooks/triggerHook.js +17 -4
- package/server/utils/menus/adoptMenuItem.js +58 -0
- package/server/utils/menus/assignMenuLocation.js +47 -0
- package/server/utils/menus/deleteMenu.js +27 -0
- package/server/utils/menus/deleteMenuItems.js +27 -0
- package/server/utils/menus/findMenuLocations.js +41 -0
- package/server/utils/menus/findNavItems.js +74 -0
- package/server/utils/menus/findPages.js +73 -0
- package/server/utils/menus/listMenus.js +103 -0
- package/server/utils/menus/markup.js +55 -0
- package/server/utils/menus/reorderMenuItems.js +36 -0
- package/server/utils/menus/saveMenu.js +54 -0
- package/server/utils/menus/saveMenuItem.js +122 -0
- package/server/utils/menus/setMenuItemEnabled.js +31 -0
- package/server/utils/menus/store.js +90 -0
- package/server/utils/scheduler/helpers.js +36 -0
- package/server/utils/scheduler/listJobs.js +11 -0
- package/server/utils/scheduler/registerJobs.js +37 -0
- package/server/utils/scheduler/runJobs.js +90 -0
- package/server/utils/scheduler/scheduler.js +37 -0
- package/server/utils/scheduler/unregisterJobs.js +16 -0
- package/server/utils/settings/ensureEncryptionKey.js +132 -0
- package/server/utils/settings/listSettings.js +10 -5
- package/server/utils/settings/secretCrypto.js +5 -1
- package/server/utils/settings/setSetting.js +4 -0
- package/server/utils/settings/settingRules.js +21 -0
- package/server/utils/settings/systemSettings.js +40 -0
- package/server/utils/setup/seedDatabase.js +5 -60
- package/server/utils/setup/systemPermissions.js +75 -0
- package/dist/kempo/icons/create_new_folder.svg +0 -1
- package/dist/kempo/icons/credit_card.svg +0 -1
- package/dist/kempo/icons/login.svg +0 -1
- package/dist/kempo/icons/payments.svg +0 -1
- package/dist/kempo/icons/toll.svg +0 -1
- package/dist/kempo/icons/wallet.svg +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\fragments\\file\\PATCH.js","names":["resolve","join","currentUserHasPermission","moveFragment","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\fragments\\file\\PATCH.js","names":["existsSync","resolve","join","currentUserHasPermission","moveFragment","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","file","newFile","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport moveFragment from '../../../../../server/utils/fragments/moveFragment.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:pages:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { file, newFile } = request.body;\r\n\r\n\tif(!file){\r\n\t\treturn response.status(400).json({ error: 'File path is required' });\r\n\t}\r\n\r\n\tif(!newFile){\r\n\t\treturn response.status(400).json({ error: 'New file path is required' });\r\n\t}\r\n\r\n\tconst [error, data] = await moveFragment({ rootDir, file, newFile });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAkB,wDAEzB,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,uBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,KAAEA,EAAIC,QAAEA,GAAYb,EAAQc,KAElC,IAAIF,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,0BAG3C,IAAIG,EACH,OAAOZ,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,8BAG3C,MAAOA,EAAOK,SAAcrB,EAAa,CAAEC,UAASiB,OAAMC,YAE1D,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKM","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as r}from"fs";import{resolve as s,join as t}from"path";import e from"../../../../../server/utils/permissions/currentUserHasPermission.js";import o from"../../../../../server/utils/fragments/getFragmentMetadata.js";import i from"../../../../../server/utils/fragments/updateFragment.js";const a=r(t(process.cwd(),"public"))?t(process.cwd(),"public"):s(import.meta.dirname,"../../../../../app-public");export default async(r,s)=>{const t=r.cookies.session_token,[n,m]=await e(t,"system:fragments:update");if(n)return s.status(n.code).json({error:n.msg});if(!m)return s.status(403).json({error:"Insufficient permissions"});const{file:u,name:p,author:c,markup:f}=r.body;if(!u)return s.status(400).json({error:"File path is required"});const[d,l]=await o({rootDir:a,file:u});if(!d&&l.locked)return s.status(403).json({error:"This fragment is locked and cannot be edited"});const[g,j]=await i({rootDir:a,file:u,name:p,author:c,markup:f});if(g)return s.status(g.code).json({error:g.msg});s.json(j)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\fragments\file\PUT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\fragments\\file\\PUT.js","names":["resolve","join","currentUserHasPermission","getFragmentMetadata","updateFragment","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\fragments\\file\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","getFragmentMetadata","updateFragment","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","file","name","author","markup","body","metaError","metadata","locked","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getFragmentMetadata from '../../../../../server/utils/fragments/getFragmentMetadata.js';\r\nimport updateFragment from '../../../../../server/utils/fragments/updateFragment.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:fragments:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { file, name, author, markup } = request.body;\r\n\r\n\tif(!file){\r\n\t\treturn response.status(400).json({ error: 'File path is required' });\r\n\t}\r\n\r\n\tconst [metaError, metadata] = await getFragmentMetadata({ rootDir, file });\r\n\tif(!metaError && metadata.locked){\r\n\t\treturn response.status(403).json({ error: 'This fragment is locked and cannot be edited' });\r\n\t}\r\n\r\n\tconst [error, data] = await updateFragment({ rootDir, file, name, author, markup });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAyB,sEACzBC,MAAoB,0DAE3B,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBd,EAAyBU,EAAO,2BAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,KAAEA,EAAIC,KAAEA,EAAIC,OAAEA,EAAMC,OAAEA,GAAWf,EAAQgB,KAE/C,IAAIJ,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,0BAG3C,MAAOO,EAAWC,SAAkBzB,EAAoB,CAAEE,UAASiB,SACnE,IAAIK,GAAaC,EAASC,OACzB,OAAOlB,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,iDAG3C,MAAOA,EAAOU,SAAc1B,EAAe,CAAEC,UAASiB,OAAMC,OAAMC,SAAQC,WAE1E,GAAGL,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKW","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../server/utils/fragments/setFragmentLocked.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,a]=await o(e,"system:fragments:update");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const{file:c,locked:m}=s.body;if(!c)return r.status(400).json({error:"File path is required"});if("boolean"!=typeof m)return r.status(400).json({error:"locked must be a boolean"});const[u,p]=await t({rootDir:i,file:c,locked:m});if(u)return r.status(u.code).json({error:u.msg});r.json(p)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\fragments\lock\PUT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\fragments\\lock\\PUT.js","names":["resolve","join","currentUserHasPermission","setFragmentLocked","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\fragments\\lock\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","setFragmentLocked","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","file","locked","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport setFragmentLocked from '../../../../../server/utils/fragments/setFragmentLocked.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:fragments:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { file, locked } = request.body;\r\n\r\n\tif(!file){\r\n\t\treturn response.status(400).json({ error: 'File path is required' });\r\n\t}\r\n\r\n\tif(typeof locked !== 'boolean'){\r\n\t\treturn response.status(400).json({ error: 'locked must be a boolean' });\r\n\t}\r\n\r\n\tconst [error, data] = await setFragmentLocked({ rootDir, file, locked });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAuB,6DAE9B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,2BAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,KAAEA,EAAIC,OAAEA,GAAWb,EAAQc,KAEjC,IAAIF,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,0BAG3C,GAAqB,kBAAXG,EACT,OAAOZ,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAOA,EAAOK,SAAcrB,EAAkB,CAAEC,UAASiB,OAAMC,WAE/D,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKM","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as o}from"fs";import{resolve as s,join as t}from"path";import r from"../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../server/utils/global-content/getGlobalContentMetadata.js";import n from"../../../../server/utils/global-content/deleteGlobalContent.js";const i=o(t(process.cwd(),"public"))?t(process.cwd(),"public"):s(import.meta.dirname,"../../../../app-public");export default async(o,s)=>{const t=o.cookies.session_token,[a,c]=await r(t,"system:globals:delete");if(a)return s.status(a.code).json({error:a.msg});if(!c)return s.status(403).json({error:"Insufficient permissions"});const{ids:l}=o.body||{};if(!l?.length)return s.status(400).json({error:"No IDs specified"});for(const o of l){const[t,r]=await e({rootDir:i,id:o});if(!t&&r.locked)return s.status(403).json({error:`Cannot delete locked global content: ${r.name}`})}const[m,u]=await n({rootDir:i,ids:l});if(m)return s.status(m.code).json({error:m.msg});s.json(u)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\DELETE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\DELETE.js","names":["resolve","join","currentUserHasPermission","getGlobalContentMetadata","deleteGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\DELETE.js","names":["existsSync","resolve","join","currentUserHasPermission","getGlobalContentMetadata","deleteGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","ids","body","length","id","metaError","metadata","locked","name","result"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getGlobalContentMetadata from '../../../../server/utils/global-content/getGlobalContentMetadata.js';\r\nimport deleteGlobalContent from '../../../../server/utils/global-content/deleteGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:delete');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { ids } = request.body || {};\r\n\r\n\tif(!ids?.length){\r\n\t\treturn response.status(400).json({ error: 'No IDs specified' });\r\n\t}\r\n\r\n\tfor(const id of ids){\r\n\t\tconst [metaError, metadata] = await getGlobalContentMetadata({ rootDir, id });\r\n\t\tif(!metaError && metadata.locked){\r\n\t\t\treturn response.status(403).json({ error: `Cannot delete locked global content: ${metadata.name}` });\r\n\t\t}\r\n\t}\r\n\r\n\tconst [error, result] = await deleteGlobalContent({ rootDir, ids });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(result);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAA8B,6EAC9BC,MAAyB,iEAEhC,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBd,EAAyBU,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,IAAEA,GAAQZ,EAAQa,MAAQ,CAAC,EAEjC,IAAID,GAAKE,OACR,OAAOb,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,qBAG3C,IAAI,MAAMK,KAAMH,EAAI,CACnB,MAAOI,EAAWC,SAAkBxB,EAAyB,CAAEE,UAASoB,OACxE,IAAIC,GAAaC,EAASC,OACzB,OAAOjB,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,wCAAwCO,EAASE,QAE7F,CAEA,MAAOT,EAAOU,SAAgB1B,EAAoB,CAAEC,UAASiB,QAE7D,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKW","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as o}from"path";import t from"../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../server/utils/global-content/listGlobalContent.js";const i=s(o(process.cwd(),"public"))?o(process.cwd(),"public"):r(import.meta.dirname,"../../../../app-public");export default async(s,r)=>{const o=s.cookies.session_token,[n,a]=await t(o,"system:globals:read");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const[c,m]=await e({rootDir:i,includeMenu:!1});if(c)return r.status(c.code).json({error:c.msg});r.json(m)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\GET.js","names":["resolve","join","currentUserHasPermission","listGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\GET.js","names":["existsSync","resolve","join","currentUserHasPermission","listGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","data","includeMenu"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport listGlobalContent from '../../../../server/utils/global-content/listGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:read');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst [error, data] = await listGlobalContent({ rootDir, includeMenu: false });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAuB,+DAE9B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,uBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAOA,EAAOE,SAAclB,EAAkB,CAAEC,UAASkB,aAAa,IAEtE,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKG","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as r}from"fs";import{resolve as s,join as o}from"path";import t from"../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../server/utils/auth/getSession.js";import i from"../../../../server/utils/global-content/createGlobalContent.js";const n=r(o(process.cwd(),"public"))?o(process.cwd(),"public"):s(import.meta.dirname,"../../../../app-public");export default async(r,s)=>{const o=r.cookies.session_token,[a,u]=await t(o,"system:globals:create");if(a)return s.status(a.code).json({error:a.msg});if(!u)return s.status(403).json({error:"Insufficient permissions"});const{name:c,location:m,priority:p}=r.body;if(!c)return s.status(400).json({error:"Name is required"});if(!m)return s.status(400).json({error:"Location is required"});const[,l]=await e({token:o}),f=l?.user?.name||"",[d,j]=await i({rootDir:n,name:c,location:m,priority:p,author:f});if(d)return s.status(d.code).json({error:d.msg});s.status(201).json(j)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\POST.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\POST.js","names":["resolve","join","currentUserHasPermission","getSession","createGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\POST.js","names":["existsSync","resolve","join","currentUserHasPermission","getSession","createGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","name","location","priority","body","sessionData","author","user","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getSession from '../../../../server/utils/auth/getSession.js';\r\nimport createGlobalContent from '../../../../server/utils/global-content/createGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:create');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { name, location, priority } = request.body;\r\n\r\n\tif(!name){\r\n\t\treturn response.status(400).json({ error: 'Name is required' });\r\n\t}\r\n\r\n\tif(!location){\r\n\t\treturn response.status(400).json({ error: 'Location is required' });\r\n\t}\r\n\r\n\tconst [, sessionData] = await getSession({ token });\r\n\tconst author = sessionData?.user?.name || '';\r\n\r\n\tconst [error, data] = await createGlobalContent({ rootDir, name, location, priority, author });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.status(201).json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAgB,qDAChBC,MAAyB,iEAEhC,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBd,EAAyBU,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,KAAEA,EAAIC,SAAEA,EAAQC,SAAEA,GAAad,EAAQe,KAE7C,IAAIH,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,qBAG3C,IAAIG,EACH,OAAOZ,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,yBAG3C,MAAO,CAAEM,SAAqBvB,EAAW,CAAES,UACrCe,EAASD,GAAaE,MAAMN,MAAQ,IAEnCF,EAAOS,SAAczB,EAAoB,CAAEC,UAASiB,OAAMC,WAAUC,WAAUG,WAErF,GAAGP,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASM,OAAO,KAAKE,KAAKU","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as o}from"path";import t from"../../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../../server/utils/global-content/disableGlobalContent.js";const i=s(o(process.cwd(),"public"))?o(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const o=s.cookies.session_token,[n,a]=await t(o,"system:globals:update");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const{id:c}=s.body||{};if(!c)return r.status(400).json({error:"Global content ID is required"});const[u,m]=await e({rootDir:i,id:c});if(u)return r.status(u.code).json({error:u.msg});r.json(m)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\disable\PUT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\disable\\PUT.js","names":["resolve","join","currentUserHasPermission","disableGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\disable\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","disableGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","body","result"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport disableGlobalContent from '../../../../../server/utils/global-content/disableGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { id } = request.body || {};\r\n\r\n\tif(!id){\r\n\t\treturn response.status(400).json({ error: 'Global content ID is required' });\r\n\t}\r\n\r\n\tconst [error, result] = await disableGlobalContent({ rootDir, id });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(result);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAA0B,qEAEjC,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,GAAOZ,EAAQa,MAAQ,CAAC,EAEhC,IAAID,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,kCAG3C,MAAOA,EAAOI,SAAgBpB,EAAqB,CAAEC,UAASiB,OAE9D,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKK","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as o}from"path";import t from"../../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../../server/utils/global-content/enableGlobalContent.js";const i=s(o(process.cwd(),"public"))?o(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const o=s.cookies.session_token,[n,a]=await t(o,"system:globals:update");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const{id:c}=s.body||{};if(!c)return r.status(400).json({error:"Global content ID is required"});const[u,m]=await e({rootDir:i,id:c});if(u)return r.status(u.code).json({error:u.msg});r.json(m)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\enable\PUT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\enable\\PUT.js","names":["resolve","join","currentUserHasPermission","enableGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\enable\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","enableGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","body","result"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport enableGlobalContent from '../../../../../server/utils/global-content/enableGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { id } = request.body || {};\r\n\r\n\tif(!id){\r\n\t\treturn response.status(400).json({ error: 'Global content ID is required' });\r\n\t}\r\n\r\n\tconst [error, result] = await enableGlobalContent({ rootDir, id });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(result);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAyB,oEAEhC,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,GAAOZ,EAAQa,MAAQ,CAAC,EAEhC,IAAID,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,kCAG3C,MAAOA,EAAOI,SAAgBpB,EAAoB,CAAEC,UAASiB,OAE7D,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKK","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as o}from"path";import t from"../../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../../server/utils/global-content/getGlobalContent.js";const i=s(o(process.cwd(),"public"))?o(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const o=s.cookies.session_token,[n,a]=await t(o,"system:globals:read");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const{id:c}=s.query;if(!c)return r.status(400).json({error:"Global content ID is required"});const[u,m]=await e({rootDir:i,id:c});if(u)return r.status(u.code).json({error:u.msg});r.json(m)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\entry\GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\entry\\GET.js","names":["resolve","join","currentUserHasPermission","getGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\entry\\GET.js","names":["existsSync","resolve","join","currentUserHasPermission","getGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","query","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getGlobalContent from '../../../../../server/utils/global-content/getGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:read');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { id } = request.query;\r\n\r\n\tif(!id){\r\n\t\treturn response.status(400).json({ error: 'Global content ID is required' });\r\n\t}\r\n\r\n\tconst [error, data] = await getGlobalContent({ rootDir, id });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAsB,iEAE7B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,uBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,GAAOZ,EAAQa,MAEvB,IAAID,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,kCAG3C,MAAOA,EAAOI,SAAcpB,EAAiB,CAAEC,UAASiB,OAExD,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKK","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as o}from"fs";import{resolve as t,join as r}from"path";import s from"../../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../../server/utils/global-content/getGlobalContentMetadata.js";import i from"../../../../../server/utils/global-content/updateGlobalContent.js";const n=o(r(process.cwd(),"public"))?r(process.cwd(),"public"):t(import.meta.dirname,"../../../../../app-public");export default async(o,t)=>{const r=o.cookies.session_token,[a,c]=await s(r,"system:globals:update");if(a)return t.status(a.code).json({error:a.msg});if(!c)return t.status(403).json({error:"Insufficient permissions"});const{id:l,name:u,location:m,priority:p,markup:d}=o.body;if(!l)return t.status(400).json({error:"Global content ID is required"});const[f,b]=await e({rootDir:n,id:l});if(!f&&b.locked)return t.status(403).json({error:"This global content is locked and cannot be edited"});const[j,g]=await i({rootDir:n,id:l,name:u,location:m,priority:p,markup:d});if(j)return t.status(j.code).json({error:j.msg});t.json(g)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\entry\PUT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\entry\\PUT.js","names":["resolve","join","currentUserHasPermission","getGlobalContentMetadata","updateGlobalContent","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\entry\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","getGlobalContentMetadata","updateGlobalContent","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","name","location","priority","markup","body","metaError","metadata","locked","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getGlobalContentMetadata from '../../../../../server/utils/global-content/getGlobalContentMetadata.js';\r\nimport updateGlobalContent from '../../../../../server/utils/global-content/updateGlobalContent.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { id, name, location, priority, markup } = request.body;\r\n\r\n\tif(!id){\r\n\t\treturn response.status(400).json({ error: 'Global content ID is required' });\r\n\t}\r\n\r\n\tconst [metaError, metadata] = await getGlobalContentMetadata({ rootDir, id });\r\n\tif(!metaError && metadata.locked){\r\n\t\treturn response.status(403).json({ error: 'This global content is locked and cannot be edited' });\r\n\t}\r\n\r\n\tconst [error, data] = await updateGlobalContent({ rootDir, id, name, location, priority, markup });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAA8B,gFAC9BC,MAAyB,oEAEhC,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBd,EAAyBU,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,EAAEC,KAAEA,EAAIC,SAAEA,EAAQC,SAAEA,EAAQC,OAAEA,GAAWhB,EAAQiB,KAEzD,IAAIL,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,kCAG3C,MAAOQ,EAAWC,SAAkB1B,EAAyB,CAAEE,UAASiB,OACxE,IAAIM,GAAaC,EAASC,OACzB,OAAOnB,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,uDAG3C,MAAOA,EAAOW,SAAc3B,EAAoB,CAAEC,UAASiB,KAAIC,OAAMC,WAAUC,WAAUC,WAEzF,GAAGN,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKY","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as o}from"fs";import{resolve as s,join as r}from"path";import e from"../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../server/utils/global-content/setGlobalContentLocked.js";const i=o(r(process.cwd(),"public"))?r(process.cwd(),"public"):s(import.meta.dirname,"../../../../../app-public");export default async(o,s)=>{const r=o.cookies.session_token,[n,a]=await e(r,"system:globals:update");if(n)return s.status(n.code).json({error:n.msg});if(!a)return s.status(403).json({error:"Insufficient permissions"});const{id:c,locked:u}=o.body;if(!c)return s.status(400).json({error:"Global content ID is required"});if("boolean"!=typeof u)return s.status(400).json({error:"locked must be a boolean"});const[l,m]=await t({rootDir:i,id:c,locked:u});if(l)return s.status(l.code).json({error:l.msg});s.json(m)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\globals\lock\PUT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\globals\\lock\\PUT.js","names":["resolve","join","currentUserHasPermission","setGlobalContentLocked","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\globals\\lock\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","setGlobalContentLocked","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","locked","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport setGlobalContentLocked from '../../../../../server/utils/global-content/setGlobalContentLocked.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { id, locked } = request.body;\r\n\r\n\tif(!id){\r\n\t\treturn response.status(400).json({ error: 'Global content ID is required' });\r\n\t}\r\n\r\n\tif(typeof locked !== 'boolean'){\r\n\t\treturn response.status(400).json({ error: 'locked must be a boolean' });\r\n\t}\r\n\r\n\tconst [error, data] = await setGlobalContentLocked({ rootDir, id, locked });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAA4B,uEAEnC,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,EAAEC,OAAEA,GAAWb,EAAQc,KAE/B,IAAIF,EACH,OAAOX,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,kCAG3C,GAAqB,kBAAXG,EACT,OAAOZ,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAOA,EAAOK,SAAcrB,EAAuB,CAAEC,UAASiB,KAAIC,WAElE,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKM","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../server/utils/menus/deleteMenu.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,m]=await o(e,"system:globals:delete");if(n)return r.status(n.code).json({error:n.msg});if(!m)return r.status(403).json({error:"Insufficient permissions"});const{id:c}=s.body||{},[p,u]=await t({rootDir:i,id:c});if(p)return r.status(p.code).json({error:p.msg});r.json(u)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\DELETE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\DELETE.js","names":["existsSync","resolve","join","currentUserHasPermission","deleteMenu","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\nimport deleteMenu from '../../../../server/utils/menus/deleteMenu.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:delete');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst { id } = request.body || {};\n\n\tconst [error, data] = await deleteMenu({ rootDir, id });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAgB,+CAEvB,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,GAAOZ,EAAQa,MAAQ,CAAC,GAEzBH,EAAOI,SAAcpB,EAAW,CAAEC,UAASiB,OAElD,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKK","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as o}from"path";import e from"../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../server/utils/menus/listMenus.js";const i=s(o(process.cwd(),"public"))?o(process.cwd(),"public"):r(import.meta.dirname,"../../../../app-public");export default async(s,r)=>{const o=s.cookies.session_token,[n,m]=await e(o,"system:globals:read");if(n)return r.status(n.code).json({error:n.msg});if(!m)return r.status(403).json({error:"Insufficient permissions"});const[a,c]=await t({rootDir:i});if(a)return r.status(a.code).json({error:a.msg});r.json(c)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\GET.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\GET.js","names":["existsSync","resolve","join","currentUserHasPermission","listMenus","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\nimport listMenus from '../../../../server/utils/menus/listMenus.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:read');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst [error, data] = await listMenus({ rootDir });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAe,8CAEtB,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,uBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAOA,EAAOE,SAAclB,EAAU,CAAEC,YAExC,GAAGe,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKG","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import t from"../../../../server/utils/permissions/currentUserHasPermission.js";import o from"../../../../server/utils/auth/getSession.js";import i from"../../../../server/utils/menus/saveMenu.js";const a=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,{id:n,name:m}=s.body||{},[u,p]=await t(e,n?"system:globals:update":"system:globals:create");if(u)return r.status(u.code).json({error:u.msg});if(!p)return r.status(403).json({error:"Insufficient permissions"});const[,c]=await o({token:e}),f=c?.user?.name||"",[l,d]=await i({rootDir:a,id:n,name:m,author:f});if(l)return r.status(l.code).json({error:l.msg});r.status(n?200:201).json(d)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\POST.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\POST.js","names":["existsSync","resolve","join","currentUserHasPermission","getSession","saveMenu","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","id","name","body","permError","hasPermission","status","code","json","error","msg","sessionData","author","user","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\nimport getSession from '../../../../server/utils/auth/getSession.js';\nimport saveMenu from '../../../../server/utils/menus/saveMenu.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst { id, name } = request.body || {};\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, id ? 'system:globals:update' : 'system:globals:create');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst [, sessionData] = await getSession({ token });\n\tconst author = sessionData?.user?.name || '';\n\n\tconst [error, data] = await saveMenu({ rootDir, id, name, author });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.status(id ? 200 : 201).json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAgB,qDAChBC,MAAc,6CAErB,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACxBC,GAAEA,EAAEC,KAAEA,GAASN,EAAQO,MAAQ,CAAC,GAC/BC,EAAWC,SAAuBjB,EAAyBU,EAAOG,EAAK,wBAA0B,yBAExG,GAAGG,EACF,OAAOP,EAASS,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOR,EAASS,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAO,CAAEE,SAAqBtB,EAAW,CAAES,UACrCc,EAASD,GAAaE,MAAMX,MAAQ,IAEnCO,EAAOK,SAAcxB,EAAS,CAAEC,UAASU,KAAIC,OAAMU,WAE1D,GAAGH,EACF,OAAOZ,EAASS,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDb,EAASS,OAAOL,EAAK,IAAM,KAAKO,KAAKM","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../server/utils/menus/adoptMenuItem.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,m]=await o(e,"system:globals:update");if(n)return r.status(n.code).json({error:n.msg});if(!m)return r.status(403).json({error:"Insufficient permissions"});const{id:u,menuId:a,menuName:p}=s.body||{},[c,d]=await t({rootDir:i,id:u,menuId:a,menuName:p});if(c)return r.status(c.code).json({error:c.msg});r.json(d)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\adopt\PUT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\adopt\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","adoptMenuItem","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","menuId","menuName","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\nimport adoptMenuItem from '../../../../../server/utils/menus/adoptMenuItem.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst { id, menuId, menuName } = request.body || {};\n\n\tconst [error, data] = await adoptMenuItem({ rootDir, id, menuId, menuName });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAmB,qDAE1B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,EAAEC,OAAEA,EAAMC,SAAEA,GAAad,EAAQe,MAAQ,CAAC,GAE3CL,EAAOM,SAActB,EAAc,CAAEC,UAASiB,KAAIC,SAAQC,aAEjE,GAAGJ,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKO","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../server/utils/menus/deleteMenuItems.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,m]=await o(e,"system:globals:delete");if(n)return r.status(n.code).json({error:n.msg});if(!m)return r.status(403).json({error:"Insufficient permissions"});const{ids:c}=s.body||{},[p,u]=await t({rootDir:i,ids:c});if(p)return r.status(p.code).json({error:p.msg});r.json(u)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\items\DELETE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\items\\DELETE.js","names":["existsSync","resolve","join","currentUserHasPermission","deleteMenuItems","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","ids","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\nimport deleteMenuItems from '../../../../../server/utils/menus/deleteMenuItems.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:delete');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst { ids } = request.body || {};\n\n\tconst [error, data] = await deleteMenuItems({ rootDir, ids });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAqB,uDAE5B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,IAAEA,GAAQZ,EAAQa,MAAQ,CAAC,GAE1BH,EAAOI,SAAcpB,EAAgB,CAAEC,UAASiB,QAEvD,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKK","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as e,join as r}from"path";import o from"../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../server/utils/auth/getSession.js";import i from"../../../../../server/utils/menus/saveMenuItem.js";const n=s(r(process.cwd(),"public"))?r(process.cwd(),"public"):e(import.meta.dirname,"../../../../../app-public");export default async(s,e)=>{const r=s.cookies.session_token,{id:a,menuId:m,location:u,navItem:c,label:p,href:l,icon:f,newTab:d}=s.body||{},[b,j]=await o(r,a?"system:globals:update":"system:globals:create");if(b)return e.status(b.code).json({error:b.msg});if(!j)return e.status(403).json({error:"Insufficient permissions"});const[,w]=await t({token:r}),v=w?.user?.name||"",[I,g]=await i({rootDir:n,id:a,menuId:m,location:u,navItem:c,label:p,href:l,icon:f,newTab:!0===d,author:v});if(I)return e.status(I.code).json({error:I.msg});e.status(a?200:201).json(g)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\items\POST.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\items\\POST.js","names":["existsSync","resolve","join","currentUserHasPermission","getSession","saveMenuItem","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","id","menuId","location","navItem","label","href","icon","newTab","body","permError","hasPermission","status","code","json","error","msg","sessionData","author","user","name","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\nimport getSession from '../../../../../server/utils/auth/getSession.js';\nimport saveMenuItem from '../../../../../server/utils/menus/saveMenuItem.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst { id, menuId, location, navItem, label, href, icon, newTab } = request.body || {};\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, id ? 'system:globals:update' : 'system:globals:create');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst [, sessionData] = await getSession({ token });\n\tconst author = sessionData?.user?.name || '';\n\n\tconst [error, data] = await saveMenuItem({ rootDir, id, menuId, location, navItem, label, href, icon, newTab: newTab === true, author });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.status(id ? 200 : 201).json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAgB,wDAChBC,MAAkB,oDAEzB,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACxBC,GAAEA,EAAEC,OAAEA,EAAMC,SAAEA,EAAQC,QAAEA,EAAOC,MAAEA,EAAKC,KAAEA,EAAIC,KAAEA,EAAIC,OAAEA,GAAWZ,EAAQa,MAAQ,CAAC,GAC/EC,EAAWC,SAAuBvB,EAAyBU,EAAOG,EAAK,wBAA0B,yBAExG,GAAGS,EACF,OAAOb,EAASe,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOd,EAASe,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAO,CAAEE,SAAqB5B,EAAW,CAAES,UACrCoB,EAASD,GAAaE,MAAMC,MAAQ,IAEnCL,EAAOM,SAAc/B,EAAa,CAAEC,UAASU,KAAIC,SAAQC,WAAUC,UAASC,QAAOC,OAAMC,OAAMC,QAAmB,IAAXA,EAAiBU,WAE/H,GAAGH,EACF,OAAOlB,EAASe,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDnB,EAASe,OAAOX,EAAK,IAAM,KAAKa,KAAKO","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../../server/utils/menus/setMenuItemEnabled.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,a]=await o(e,"system:globals:update");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const{id:m,enabled:p}=s.body||{},[u,c]=await t({rootDir:i,id:m,enabled:p});if(u)return r.status(u.code).json({error:u.msg});r.json(c)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\items\enabled\PUT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\items\\enabled\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","setMenuItemEnabled","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","id","enabled","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../../../server/utils/permissions/currentUserHasPermission.js';\nimport setMenuItemEnabled from '../../../../../../server/utils/menus/setMenuItemEnabled.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst { id, enabled } = request.body || {};\n\n\tconst [error, data] = await setMenuItemEnabled({ rootDir, id, enabled });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,gFAC9BC,MAAwB,6DAE/B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,+CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,GAAEA,EAAEC,QAAEA,GAAYb,EAAQc,MAAQ,CAAC,GAElCJ,EAAOK,SAAcrB,EAAmB,CAAEC,UAASiB,KAAIC,YAE9D,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKM","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../../server/utils/menus/reorderMenuItems.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,m]=await o(e,"system:globals:update");if(n)return r.status(n.code).json({error:n.msg});if(!m)return r.status(403).json({error:"Insufficient permissions"});const{menuId:u,ids:p}=s.body||{},[a,c]=await t({rootDir:i,menuId:u,ids:p});if(a)return r.status(a.code).json({error:a.msg});r.json(c)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\items\order\PUT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\items\\order\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","reorderMenuItems","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","menuId","ids","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../../../server/utils/permissions/currentUserHasPermission.js';\nimport reorderMenuItems from '../../../../../../server/utils/menus/reorderMenuItems.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst { menuId, ids } = request.body || {};\n\n\tconst [error, data] = await reorderMenuItems({ rootDir, menuId, ids });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,gFAC9BC,MAAsB,2DAE7B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,+CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,OAAEA,EAAMC,IAAEA,GAAQb,EAAQc,MAAQ,CAAC,GAElCJ,EAAOK,SAAcrB,EAAiB,CAAEC,UAASiB,SAAQC,QAEhE,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKM","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as o,join as r}from"path";import t from"../../../../../server/utils/permissions/currentUserHasPermission.js";import e from"../../../../../server/utils/menus/assignMenuLocation.js";const i=s(r(process.cwd(),"public"))?r(process.cwd(),"public"):o(import.meta.dirname,"../../../../../app-public");export default async(s,o)=>{const r=s.cookies.session_token,[n,a]=await t(r,"system:globals:update");if(n)return o.status(n.code).json({error:n.msg});if(!a)return o.status(403).json({error:"Insufficient permissions"});const{location:m,menuId:c}=s.body||{},[u,p]=await e({rootDir:i,location:m,menuId:c});if(u)return o.status(u.code).json({error:u.msg});o.json(p)};
|
|
2
|
+
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\menus\location\PUT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\menus\\location\\PUT.js","names":["existsSync","resolve","join","currentUserHasPermission","assignMenuLocation","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","location","menuId","body","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\nimport { resolve, join } from 'path';\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\nimport assignMenuLocation from '../../../../../server/utils/menus/assignMenuLocation.js';\n\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\n\nexport default async (request, response) => {\n\tconst token = request.cookies.session_token;\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:globals:update');\n\n\tif(permError){\n\t\treturn response.status(permError.code).json({ error: permError.msg });\n\t}\n\n\tif(!hasPermission){\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\n\t}\n\n\tconst { location, menuId } = request.body || {};\n\n\tconst [error, data] = await assignMenuLocation({ rootDir, location, menuId });\n\n\tif(error){\n\t\treturn response.status(error.code).json({ error: error.msg });\n\t}\n\n\tresponse.json(data);\n};\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAwB,0DAE/B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,yBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,SAAEA,EAAQC,OAAEA,GAAWb,EAAQc,MAAQ,CAAC,GAEvCJ,EAAOK,SAAcrB,EAAmB,CAAEC,UAASiB,WAAUC,WAEpE,GAAGH,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKM","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as e}from"fs";import{resolve as s,join as r}from"path";import o from"../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../server/utils/pages/getPageMetadata.js";import i from"../../../../server/utils/pages/deletePage.js";const n=e(r(process.cwd(),"public"))?r(process.cwd(),"public"):s(import.meta.dirname,"../../../../app-public");export default async(e,s)=>{const r=e.cookies.session_token,[a,c]=await o(r,"system:pages:delete");if(a)return s.status(a.code).json({error:a.msg});if(!c)return s.status(403).json({error:"Insufficient permissions"});const{files:f}=e.body||{};if(!f?.length)return s.status(400).json({error:"No files specified"});for(const e of f){const[r,o]=await t({rootDir:n,file:e});if(!r){if(o.locked)return s.status(403).json({error:`Cannot delete locked page: ${e}`});if(o.owner&&"custom"!==o.owner)return s.status(403).json({error:`Cannot delete system-owned page: ${e}`})}}const[p,u]=await i({rootDir:n,files:f});if(p)return s.status(p.code).json({error:p.msg});s.json(u)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\pages\DELETE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\pages\\DELETE.js","names":["resolve","join","currentUserHasPermission","getPageMetadata","deletePage","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\pages\\DELETE.js","names":["existsSync","resolve","join","currentUserHasPermission","getPageMetadata","deletePage","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","files","body","length","file","metaError","metadata","locked","owner","result"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getPageMetadata from '../../../../server/utils/pages/getPageMetadata.js';\r\nimport deletePage from '../../../../server/utils/pages/deletePage.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:pages:delete');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { files } = request.body || {};\r\n\r\n\tif(!files?.length){\r\n\t\treturn response.status(400).json({ error: 'No files specified' });\r\n\t}\r\n\r\n\tfor(const file of files){\r\n\t\tconst [metaError, metadata] = await getPageMetadata({ rootDir, file });\r\n\t\tif(!metaError){\r\n\t\t\tif(metadata.locked){\r\n\t\t\t\treturn response.status(403).json({ error: `Cannot delete locked page: ${file}` });\r\n\t\t\t}\r\n\t\t\tif(metadata.owner && metadata.owner !== 'custom'){\r\n\t\t\t\treturn response.status(403).json({ error: `Cannot delete system-owned page: ${file}` });\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tconst [error, result] = await deletePage({ rootDir, files });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(result);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAqB,2DACrBC,MAAgB,+CAEvB,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBd,EAAyBU,EAAO,uBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,MAAEA,GAAUZ,EAAQa,MAAQ,CAAC,EAEnC,IAAID,GAAOE,OACV,OAAOb,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,uBAG3C,IAAI,MAAMK,KAAQH,EAAM,CACvB,MAAOI,EAAWC,SAAkBxB,EAAgB,CAAEE,UAASoB,SAC/D,IAAIC,EAAU,CACb,GAAGC,EAASC,OACX,OAAOjB,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,8BAA8BK,MAEzE,GAAGE,EAASE,OAA4B,WAAnBF,EAASE,MAC7B,OAAOlB,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,oCAAoCK,KAEhF,CACD,CAEA,MAAOL,EAAOU,SAAgB1B,EAAW,CAAEC,UAASiB,UAEpD,GAAGF,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKW","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as e}from"path";import o from"../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../server/utils/pages/listPages.js";const i=s(e(process.cwd(),"public"))?e(process.cwd(),"public"):r(import.meta.dirname,"../../../../app-public");export default async(s,r)=>{const e=s.cookies.session_token,[n,a]=await o(e,"system:pages:read");if(n)return r.status(n.code).json({error:n.msg});if(!a)return r.status(403).json({error:"Insufficient permissions"});const{owner:p,showHidden:m,offset:c,limit:f}=s.query,[u,d]=await t({rootDir:i,owner:p||void 0,showHidden:"false"!==m,offset:c?parseInt(c,10):0,limit:f?parseInt(f,10):0});if(u)return r.status(u.code).json({error:u.msg});r.json(d)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\pages\GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\pages\\GET.js","names":["resolve","join","currentUserHasPermission","listPages","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\pages\\GET.js","names":["existsSync","resolve","join","currentUserHasPermission","listPages","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","owner","showHidden","offset","limit","query","data","undefined","parseInt"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport listPages from '../../../../server/utils/pages/listPages.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:pages:read');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { owner, showHidden, offset, limit } = request.query;\r\n\tconst [error, data] = await listPages({\r\n\t\trootDir,\r\n\t\towner: owner || undefined,\r\n\t\tshowHidden: showHidden !== 'false',\r\n\t\toffset: offset ? parseInt(offset, 10) : 0,\r\n\t\tlimit: limit ? parseInt(limit, 10) : 0\r\n\t});\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAe,8CAEtB,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,qBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,MAAEA,EAAKC,WAAEA,EAAUC,OAAEA,EAAMC,MAAEA,GAAUf,EAAQgB,OAC9CN,EAAOO,SAAcvB,EAAU,CACrCC,UACAiB,MAAOA,QAASM,EAChBL,WAA2B,UAAfA,EACZC,OAAQA,EAASK,SAASL,EAAQ,IAAM,EACxCC,MAAOA,EAAQI,SAASJ,EAAO,IAAM,IAGtC,GAAGL,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKQ","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as e}from"fs";import{resolve as r,join as s}from"path";import t from"../../../../server/utils/permissions/currentUserHasPermission.js";import o from"../../../../server/utils/auth/getSession.js";import a from"../../../../server/utils/pages/createPage.js";const i=e(s(process.cwd(),"public"))?s(process.cwd(),"public"):r(import.meta.dirname,"../../../../app-public");export default async(e,r)=>{const s=e.cookies.session_token,[n,m]=await t(s,"system:pages:create");if(n)return r.status(n.code).json({error:n.msg});if(!m)return r.status(403).json({error:"Insufficient permissions"});const{directory:c,name:u,template:p,extraMetadata:d,locked:f}=e.body;if(!u)return r.status(400).json({error:"Page name is required"});const[,l]=await o({token:s}),j=l?.user?.name||"",[g,k]=await a({rootDir:i,directory:c,name:u,template:p,author:j,extraMetadata:d,locked:f});if(g)return r.status(g.code).json({error:g.msg});r.status(201).json(k)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\pages\POST.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\pages\\POST.js","names":["resolve","join","currentUserHasPermission","getSession","createPage","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\pages\\POST.js","names":["existsSync","resolve","join","currentUserHasPermission","getSession","createPage","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","directory","name","template","extraMetadata","locked","body","sessionData","author","user","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport getSession from '../../../../server/utils/auth/getSession.js';\r\nimport createPage from '../../../../server/utils/pages/createPage.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:pages:create');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst { directory, name, template, extraMetadata, locked } = request.body;\r\n\r\n\tif(!name){\r\n\t\treturn response.status(400).json({ error: 'Page name is required' });\r\n\t}\r\n\r\n\tconst [, sessionData] = await getSession({ token });\r\n\tconst author = sessionData?.user?.name || '';\r\n\r\n\tconst [error, data] = await createPage({ rootDir, directory, name, template, author, extraMetadata, locked });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.status(201).json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,0EAC9BC,MAAgB,qDAChBC,MAAgB,+CAEvB,MAAMC,EAAUN,EAAWE,EAAKK,QAAQC,MAAO,WAAaN,EAAKK,QAAQC,MAAO,UAAYP,cAAoBQ,QAAS,yCAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBd,EAAyBU,EAAO,uBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAME,UAAEA,EAASC,KAAEA,EAAIC,SAAEA,EAAQC,cAAEA,EAAaC,OAAEA,GAAWhB,EAAQiB,KAErE,IAAIJ,EACH,OAAOZ,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,0BAG3C,MAAO,CAAEQ,SAAqBzB,EAAW,CAAES,UACrCiB,EAASD,GAAaE,MAAMP,MAAQ,IAEnCH,EAAOW,SAAc3B,EAAW,CAAEC,UAASiB,YAAWC,OAAMC,WAAUK,SAAQJ,gBAAeC,WAEpG,GAAGN,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASM,OAAO,KAAKE,KAAKY","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolve as
|
|
1
|
+
import{existsSync as s}from"fs";import{resolve as r,join as o}from"path";import e from"../../../../../server/utils/permissions/currentUserHasPermission.js";import t from"../../../../../server/utils/pages/listDirectories.js";const i=s(o(process.cwd(),"public"))?o(process.cwd(),"public"):r(import.meta.dirname,"../../../../../app-public");export default async(s,r)=>{const o=s.cookies.session_token,[n,p]=await e(o,"system:pages:read");if(n)return r.status(n.code).json({error:n.msg});if(!p)return r.status(403).json({error:"Insufficient permissions"});const[a,c]=await t({rootDir:i});if(a)return r.status(a.code).json({error:a.msg});r.json(c)};
|
|
2
2
|
//# sourceMappingURL=C:\Users\dusti\dev\kempo\dist\kempo\api\pages\directories\GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"src\\kempo\\api\\pages\\directories\\GET.js","names":["resolve","join","currentUserHasPermission","listDirectories","rootDir","
|
|
1
|
+
{"version":3,"file":"src\\kempo\\api\\pages\\directories\\GET.js","names":["existsSync","resolve","join","currentUserHasPermission","listDirectories","rootDir","process","cwd","dirname","async","request","response","token","cookies","session_token","permError","hasPermission","status","code","json","error","msg","data"],"sources":["0"],"sourcesContent":["import { existsSync } from 'fs';\r\nimport { resolve, join } from 'path';\r\nimport currentUserHasPermission from '../../../../../server/utils/permissions/currentUserHasPermission.js';\r\nimport listDirectories from '../../../../../server/utils/pages/listDirectories.js';\r\n\r\nconst rootDir = existsSync(join(process.cwd(), 'public')) ? join(process.cwd(), 'public') : resolve(import.meta.dirname, '../../../../../app-public');\r\n\r\nexport default async (request, response) => {\r\n\tconst token = request.cookies.session_token;\r\n\tconst [permError, hasPermission] = await currentUserHasPermission(token, 'system:pages:read');\r\n\r\n\tif(permError){\r\n\t\treturn response.status(permError.code).json({ error: permError.msg });\r\n\t}\r\n\r\n\tif(!hasPermission){\r\n\t\treturn response.status(403).json({ error: 'Insufficient permissions' });\r\n\t}\r\n\r\n\tconst [error, data] = await listDirectories({ rootDir });\r\n\r\n\tif(error){\r\n\t\treturn response.status(error.code).json({ error: error.msg });\r\n\t}\r\n\r\n\tresponse.json(data);\r\n};\r\n"],"mappings":"qBAASA,MAAkB,uBAClBC,UAASC,MAAY,cACvBC,MAA8B,6EAC9BC,MAAqB,uDAE5B,MAAMC,EAAUL,EAAWE,EAAKI,QAAQC,MAAO,WAAaL,EAAKI,QAAQC,MAAO,UAAYN,cAAoBO,QAAS,4CAE1GC,MAAOC,EAASC,KAC9B,MAAMC,EAAQF,EAAQG,QAAQC,eACvBC,EAAWC,SAAuBb,EAAyBS,EAAO,qBAEzE,GAAGG,EACF,OAAOJ,EAASM,OAAOF,EAAUG,MAAMC,KAAK,CAAEC,MAAOL,EAAUM,MAGhE,IAAIL,EACH,OAAOL,EAASM,OAAO,KAAKE,KAAK,CAAEC,MAAO,6BAG3C,MAAOA,EAAOE,SAAclB,EAAgB,CAAEC,YAE9C,GAAGe,EACF,OAAOT,EAASM,OAAOG,EAAMF,MAAMC,KAAK,CAAEC,MAAOA,EAAMC,MAGxDV,EAASQ,KAAKG","ignoreList":[]}
|