@vitnode/blog 1.2.0-canary.75 → 1.2.0-canary.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/dist/src/api/modules/admin/admin.module.d.ts +180 -177
  2. package/dist/src/api/modules/admin/admin.module.d.ts.map +1 -1
  3. package/dist/src/api/modules/admin/admin.module.js +2 -1
  4. package/dist/src/api/modules/admin/admin.module.js.map +1 -0
  5. package/dist/src/api/modules/admin/categories/categories.admin.module.d.ts +80 -77
  6. package/dist/src/api/modules/admin/categories/categories.admin.module.d.ts.map +1 -1
  7. package/dist/src/api/modules/admin/categories/categories.admin.module.js +2 -1
  8. package/dist/src/api/modules/admin/categories/categories.admin.module.js.map +1 -0
  9. package/dist/src/api/modules/admin/categories/routes/create.route.d.ts +34 -31
  10. package/dist/src/api/modules/admin/categories/routes/create.route.d.ts.map +1 -1
  11. package/dist/src/api/modules/admin/categories/routes/create.route.js +2 -1
  12. package/dist/src/api/modules/admin/categories/routes/create.route.js.map +1 -0
  13. package/dist/src/api/modules/admin/categories/routes/delete.route.d.ts +18 -15
  14. package/dist/src/api/modules/admin/categories/routes/delete.route.d.ts.map +1 -1
  15. package/dist/src/api/modules/admin/categories/routes/delete.route.js +2 -1
  16. package/dist/src/api/modules/admin/categories/routes/delete.route.js.map +1 -0
  17. package/dist/src/api/modules/admin/categories/routes/edit.route.d.ts +38 -35
  18. package/dist/src/api/modules/admin/categories/routes/edit.route.d.ts.map +1 -1
  19. package/dist/src/api/modules/admin/categories/routes/edit.route.js +2 -1
  20. package/dist/src/api/modules/admin/categories/routes/edit.route.js.map +1 -0
  21. package/dist/src/api/modules/admin/posts/posts.admin.module.d.ts +93 -90
  22. package/dist/src/api/modules/admin/posts/posts.admin.module.d.ts.map +1 -1
  23. package/dist/src/api/modules/admin/posts/posts.admin.module.js +2 -1
  24. package/dist/src/api/modules/admin/posts/posts.admin.module.js.map +1 -0
  25. package/dist/src/api/modules/admin/posts/routes/create.route.d.ts +44 -41
  26. package/dist/src/api/modules/admin/posts/routes/create.route.d.ts.map +1 -1
  27. package/dist/src/api/modules/admin/posts/routes/create.route.js +2 -1
  28. package/dist/src/api/modules/admin/posts/routes/create.route.js.map +1 -0
  29. package/dist/src/api/modules/admin/posts/routes/delete.route.d.ts +18 -15
  30. package/dist/src/api/modules/admin/posts/routes/delete.route.d.ts.map +1 -1
  31. package/dist/src/api/modules/admin/posts/routes/delete.route.js +2 -1
  32. package/dist/src/api/modules/admin/posts/routes/delete.route.js.map +1 -0
  33. package/dist/src/api/modules/admin/posts/routes/edit.route.d.ts +43 -40
  34. package/dist/src/api/modules/admin/posts/routes/edit.route.d.ts.map +1 -1
  35. package/dist/src/api/modules/admin/posts/routes/edit.route.js +2 -1
  36. package/dist/src/api/modules/admin/posts/routes/edit.route.js.map +1 -0
  37. package/dist/src/api/modules/categories/categories.module.d.ts +64 -61
  38. package/dist/src/api/modules/categories/categories.module.d.ts.map +1 -1
  39. package/dist/src/api/modules/categories/categories.module.js +2 -1
  40. package/dist/src/api/modules/categories/categories.module.js.map +1 -0
  41. package/dist/src/api/modules/categories/routes/get.route.d.ts +45 -42
  42. package/dist/src/api/modules/categories/routes/get.route.d.ts.map +1 -1
  43. package/dist/src/api/modules/categories/routes/get.route.js +2 -1
  44. package/dist/src/api/modules/categories/routes/get.route.js.map +1 -0
  45. package/dist/src/api/modules/categories/test.route.d.ts +23 -20
  46. package/dist/src/api/modules/categories/test.route.d.ts.map +1 -1
  47. package/dist/src/api/modules/categories/test.route.js +2 -1
  48. package/dist/src/api/modules/categories/test.route.js.map +1 -0
  49. package/dist/src/api/modules/posts/posts.module.d.ts +54 -51
  50. package/dist/src/api/modules/posts/posts.module.d.ts.map +1 -1
  51. package/dist/src/api/modules/posts/posts.module.js +2 -1
  52. package/dist/src/api/modules/posts/posts.module.js.map +1 -0
  53. package/dist/src/api/modules/posts/routes/get.route.d.ts +64 -61
  54. package/dist/src/api/modules/posts/routes/get.route.d.ts.map +1 -1
  55. package/dist/src/api/modules/posts/routes/get.route.js +2 -1
  56. package/dist/src/api/modules/posts/routes/get.route.js.map +1 -0
  57. package/dist/src/config.api.d.ts +4 -1
  58. package/dist/src/config.api.d.ts.map +1 -1
  59. package/dist/src/config.api.js +2 -1
  60. package/dist/src/config.api.js.map +1 -0
  61. package/dist/src/config.d.ts +4 -1
  62. package/dist/src/config.d.ts.map +1 -1
  63. package/dist/src/config.js +2 -1
  64. package/dist/src/config.js.map +1 -0
  65. package/dist/src/const.d.ts +5 -2
  66. package/dist/src/const.d.ts.map +1 -1
  67. package/dist/src/const.js +2 -1
  68. package/dist/src/const.js.map +1 -0
  69. package/dist/src/database/categories.d.ts +98 -95
  70. package/dist/src/database/categories.d.ts.map +1 -1
  71. package/dist/src/database/categories.js +2 -1
  72. package/dist/src/database/categories.js.map +1 -0
  73. package/dist/src/database/index.d.ts +4 -4
  74. package/dist/src/database/index.js +1 -1
  75. package/dist/src/database/posts.d.ts +132 -129
  76. package/dist/src/database/posts.d.ts.map +1 -1
  77. package/dist/src/database/posts.js +2 -1
  78. package/dist/src/database/posts.js.map +1 -0
  79. package/dist/src/database/relations.d.ts +7 -4
  80. package/dist/src/database/relations.d.ts.map +1 -1
  81. package/dist/src/database/relations.js +2 -1
  82. package/dist/src/database/relations.js.map +1 -0
  83. package/dist/src/emails/test-template.d.ts +20 -18
  84. package/dist/src/emails/test-template.d.ts.map +1 -1
  85. package/dist/src/emails/test-template.js +2 -1
  86. package/dist/src/emails/test-template.js.map +1 -0
  87. package/dist/src/routes/admin/blog/categories/page.d.ts +7 -5
  88. package/dist/src/routes/admin/blog/categories/page.d.ts.map +1 -1
  89. package/dist/src/routes/admin/blog/categories/page.js +2 -1
  90. package/dist/src/routes/admin/blog/categories/page.js.map +1 -0
  91. package/dist/src/routes/admin/blog/posts/page.d.ts +7 -5
  92. package/dist/src/routes/admin/blog/posts/page.d.ts.map +1 -1
  93. package/dist/src/routes/admin/blog/posts/page.js +2 -1
  94. package/dist/src/routes/admin/blog/posts/page.js.map +1 -0
  95. package/dist/src/views/admin/categories/actions/actions.d.ts +4 -1
  96. package/dist/src/views/admin/categories/actions/actions.d.ts.map +1 -1
  97. package/dist/src/views/admin/categories/actions/actions.js +2 -1
  98. package/dist/src/views/admin/categories/actions/actions.js.map +1 -0
  99. package/dist/src/views/admin/categories/actions/create-edit/create-edit.d.ts +8 -5
  100. package/dist/src/views/admin/categories/actions/create-edit/create-edit.d.ts.map +1 -1
  101. package/dist/src/views/admin/categories/actions/create-edit/create-edit.js +2 -1
  102. package/dist/src/views/admin/categories/actions/create-edit/create-edit.js.map +1 -0
  103. package/dist/src/views/admin/categories/actions/create-edit/mutation-api.d.ts +10 -7
  104. package/dist/src/views/admin/categories/actions/create-edit/mutation-api.d.ts.map +1 -1
  105. package/dist/src/views/admin/categories/actions/create-edit/mutation-api.js +2 -1
  106. package/dist/src/views/admin/categories/actions/create-edit/mutation-api.js.map +1 -0
  107. package/dist/src/views/admin/categories/table/actions/delete/delete-action.d.ts +6 -3
  108. package/dist/src/views/admin/categories/table/actions/delete/delete-action.d.ts.map +1 -1
  109. package/dist/src/views/admin/categories/table/actions/delete/delete-action.js +2 -1
  110. package/dist/src/views/admin/categories/table/actions/delete/delete-action.js.map +1 -0
  111. package/dist/src/views/admin/categories/table/actions/delete/mutation-api.d.ts +5 -2
  112. package/dist/src/views/admin/categories/table/actions/delete/mutation-api.d.ts.map +1 -1
  113. package/dist/src/views/admin/categories/table/actions/delete/mutation-api.js +2 -1
  114. package/dist/src/views/admin/categories/table/actions/delete/mutation-api.js.map +1 -0
  115. package/dist/src/views/admin/categories/table/actions/edit-action.d.ts +8 -5
  116. package/dist/src/views/admin/categories/table/actions/edit-action.d.ts.map +1 -1
  117. package/dist/src/views/admin/categories/table/actions/edit-action.js +2 -1
  118. package/dist/src/views/admin/categories/table/actions/edit-action.js.map +1 -0
  119. package/dist/src/views/admin/categories/table/categories-admin-view.d.ts +5 -2
  120. package/dist/src/views/admin/categories/table/categories-admin-view.d.ts.map +1 -1
  121. package/dist/src/views/admin/categories/table/categories-admin-view.js +2 -1
  122. package/dist/src/views/admin/categories/table/categories-admin-view.js.map +1 -0
  123. package/dist/src/views/admin/posts/actions/actions.d.ts +4 -1
  124. package/dist/src/views/admin/posts/actions/actions.d.ts.map +1 -1
  125. package/dist/src/views/admin/posts/actions/actions.js +2 -1
  126. package/dist/src/views/admin/posts/actions/actions.js.map +1 -0
  127. package/dist/src/views/admin/posts/actions/create-edit/create-edit.d.ts +8 -5
  128. package/dist/src/views/admin/posts/actions/create-edit/create-edit.d.ts.map +1 -1
  129. package/dist/src/views/admin/posts/actions/create-edit/create-edit.js +2 -1
  130. package/dist/src/views/admin/posts/actions/create-edit/create-edit.js.map +1 -0
  131. package/dist/src/views/admin/posts/actions/create-edit/mutation-api.d.ts +10 -7
  132. package/dist/src/views/admin/posts/actions/create-edit/mutation-api.d.ts.map +1 -1
  133. package/dist/src/views/admin/posts/actions/create-edit/mutation-api.js +2 -1
  134. package/dist/src/views/admin/posts/actions/create-edit/mutation-api.js.map +1 -0
  135. package/dist/src/views/admin/posts/table/actions/delete/delete-action.d.ts +6 -3
  136. package/dist/src/views/admin/posts/table/actions/delete/delete-action.d.ts.map +1 -1
  137. package/dist/src/views/admin/posts/table/actions/delete/delete-action.js +2 -1
  138. package/dist/src/views/admin/posts/table/actions/delete/delete-action.js.map +1 -0
  139. package/dist/src/views/admin/posts/table/actions/delete/mutation-api.d.ts +5 -2
  140. package/dist/src/views/admin/posts/table/actions/delete/mutation-api.d.ts.map +1 -1
  141. package/dist/src/views/admin/posts/table/actions/delete/mutation-api.js +2 -1
  142. package/dist/src/views/admin/posts/table/actions/delete/mutation-api.js.map +1 -0
  143. package/dist/src/views/admin/posts/table/actions/edit-action.d.ts +8 -5
  144. package/dist/src/views/admin/posts/table/actions/edit-action.d.ts.map +1 -1
  145. package/dist/src/views/admin/posts/table/actions/edit-action.js +2 -1
  146. package/dist/src/views/admin/posts/table/actions/edit-action.js.map +1 -0
  147. package/dist/src/views/admin/posts/table/posts-admin-view.d.ts +5 -2
  148. package/dist/src/views/admin/posts/table/posts-admin-view.d.ts.map +1 -1
  149. package/dist/src/views/admin/posts/table/posts-admin-view.js +2 -1
  150. package/dist/src/views/admin/posts/table/posts-admin-view.js.map +1 -0
  151. package/package.json +6 -8
  152. package/tsconfig.build.json +5 -0
  153. package/dist/src/database/index.d.ts.map +0 -1
@@ -1 +1,2 @@
1
- "use server";import{fetcher}from"@vitnode/core/lib/fetcher";import{revalidatePath}from"next/cache";import{categoriesAdminModule}from"../../../../../api/modules/admin/categories/categories.admin.module.js";export const createMutationApi=async body=>{const res=await fetcher(categoriesAdminModule,{prefixPath:"/admin",method:"post",module:"categories",path:"/",args:{body}});if(res.status!==201){return{error:await res.text()}}revalidatePath("/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories","page")};export const editMutationApi=async({id,...body})=>{const res=await fetcher(categoriesAdminModule,{prefixPath:"/admin",method:"put",module:"categories",path:"/{id}",args:{params:{id},body}});if(res.status!==200){return{error:await res.text()}}revalidatePath("/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories","page")};
1
+ "use server";import{categoriesAdminModule as e}from"../../../../../api/modules/admin/categories/categories.admin.module.js";import{fetcher as t}from"@vitnode/core/lib/fetcher";import{revalidatePath as n}from"next/cache";const r=async r=>{let i=await t(e,{prefixPath:`/admin`,method:`post`,module:`categories`,path:`/`,args:{body:r}});if(i.status!==201)return{error:await i.text()};n(`/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories`,`page`)},i=async({id:r,...i})=>{let a=await t(e,{prefixPath:`/admin`,method:`put`,module:`categories`,path:`/{id}`,args:{params:{id:r},body:i}});if(a.status!==200)return{error:await a.text()};n(`/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories`,`page`)};export{r as createMutationApi,i as editMutationApi};
2
+ //# sourceMappingURL=mutation-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-api.js","names":[],"sources":["../../../../../../../src/views/admin/categories/actions/create-edit/mutation-api.ts"],"sourcesContent":["\"use server\";\n\nimport type { z } from \"zod\";\n\nimport { fetcher } from \"@vitnode/core/lib/fetcher\";\nimport { revalidatePath } from \"next/cache\";\n\nimport type { zodCreateCategorySchema } from \"../../../../../api/modules/admin/categories/routes/create.route\";\n\nimport { categoriesAdminModule } from \"../../../../../api/modules/admin/categories/categories.admin.module\";\n\nexport const createMutationApi = async (\n body: z.infer<typeof zodCreateCategorySchema>,\n) => {\n const res = await fetcher(categoriesAdminModule, {\n prefixPath: \"/admin\",\n method: \"post\",\n module: \"categories\",\n path: \"/\",\n args: {\n body,\n },\n });\n\n if (res.status !== 201) {\n return { error: await res.text() };\n }\n\n revalidatePath(\n \"/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories\",\n \"page\",\n );\n};\n\nexport const editMutationApi = async ({\n id,\n ...body\n}: z.infer<typeof zodCreateCategorySchema> & { id: number }) => {\n const res = await fetcher(categoriesAdminModule, {\n prefixPath: \"/admin\",\n method: \"put\",\n module: \"categories\",\n path: \"/{id}\",\n args: {\n params: {\n id,\n },\n body,\n },\n });\n\n if (res.status !== 200) {\n return { error: await res.text() };\n }\n\n revalidatePath(\n \"/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories\",\n \"page\",\n );\n};\n"],"mappings":"4NAWA,MAAa,EAAoB,KAC/B,IACG,CACH,IAAM,EAAM,MAAM,EAAQ,EAAuB,CAC/C,WAAY,SACZ,OAAQ,OACR,OAAQ,aACR,KAAM,IACN,KAAM,CACJ,MACF,CACF,CAAC,EAED,GAAI,EAAI,SAAW,IACjB,MAAO,CAAE,MAAO,MAAM,EAAI,KAAK,CAAE,EAGnC,EACE,kEACA,MACF,CACF,EAEa,EAAkB,MAAO,CACpC,KACA,GAAG,KAC2D,CAC9D,IAAM,EAAM,MAAM,EAAQ,EAAuB,CAC/C,WAAY,SACZ,OAAQ,MACR,OAAQ,aACR,KAAM,QACN,KAAM,CACJ,OAAQ,CACN,IACF,EACA,MACF,CACF,CAAC,EAED,GAAI,EAAI,SAAW,IACjB,MAAO,CAAE,MAAO,MAAM,EAAI,KAAK,CAAE,EAGnC,EACE,kEACA,MACF,CACF"}
@@ -1,5 +1,8 @@
1
- export declare const DeleteAction: ({ title, id }: {
2
- id: number;
3
- title: string;
1
+ //#region src/views/admin/categories/table/actions/delete/delete-action.d.ts
2
+ declare const DeleteAction: ({ title, id }: {
3
+ id: number;
4
+ title: string;
4
5
  }) => import("react").JSX.Element | null;
6
+ //#endregion
7
+ export { DeleteAction };
5
8
  //# sourceMappingURL=delete-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete-action.d.ts","sourceRoot":"","sources":["../../../../../../../../src/views/admin/categories/table/actions/delete/delete-action.tsx"],"names":[],"mappings":"AAmBA,eAAO,MAAM,YAAY,GAAI,eAAe;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,uCAmDxE,CAAC"}
1
+ {"version":3,"file":"delete-action.d.ts","names":[],"sources":["../../../../../../../../src/views/admin/categories/table/actions/delete/delete-action.tsx"],"mappings":";cAmBa,iBAAgB,OAAA;EAAiB;EAAY;sBAAe,IAAA"}
@@ -1 +1,2 @@
1
- "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{ConfirmActionAlertDialog}from"@vitnode/core/components/confirm-action/confirm-action-alert-dialog";import{useAdminStaffPermission}from"@vitnode/core/components/staff-permission/provider";import{Button}from"@vitnode/core/components/ui/button";import{Tooltip,TooltipContent,TooltipProvider,TooltipTrigger}from"@vitnode/core/components/ui/tooltip";import{Trash2Icon}from"lucide-react";import{useTranslations}from"next-intl";import{toast}from"sonner";import{CONFIG_PLUGIN}from"../../../../../../const.js";import{mutationApi}from"./mutation-api.js";export const DeleteAction=({title,id})=>{const t=useTranslations("@vitnode/blog.admin.categories.delete");const tGlobal=useTranslations("core.global");const canDelete=useAdminStaffPermission({plugin:CONFIG_PLUGIN.pluginId,module:"categories",permission:"can_delete"});if(!canDelete)return null;return _jsx(TooltipProvider,{children:_jsxs(Tooltip,{children:[_jsx(ConfirmActionAlertDialog,{description:t.rich("desc",{title:()=>_jsx("span",{className:"text-foreground font-bold",children:title})}),onSubmit:async({onClose})=>{const mutation=await mutationApi(id);if(mutation?.error){toast.error(tGlobal("errors.title"),{description:tGlobal("errors.internal_server_error")});return}toast.success(t("success"),{description:title});onClose()},textSubmit:t("confirm"),title:t("title"),children:_jsx(TooltipTrigger,{render:_jsx(Button,{"aria-label":t("title"),size:"icon",variant:"destructive",children:_jsx(Trash2Icon,{className:"size-4"})})})}),_jsx(TooltipContent,{children:t("title")})]})})};
1
+ "use client";import{CONFIG_PLUGIN as e}from"../../../../../../const.js";import{mutationApi as t}from"./mutation-api.js";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{Trash2Icon as i}from"lucide-react";import{Button as a}from"@vitnode/core/components/ui/button";import{useTranslations as o}from"next-intl";import{ConfirmActionAlertDialog as s}from"@vitnode/core/components/confirm-action/confirm-action-alert-dialog";import{useAdminStaffPermission as c}from"@vitnode/core/components/staff-permission/provider";import{Tooltip as l,TooltipContent as u,TooltipProvider as d,TooltipTrigger as f}from"@vitnode/core/components/ui/tooltip";import{toast as p}from"sonner";const m=({title:m,id:h})=>{let g=o(`@vitnode/blog.admin.categories.delete`),_=o(`core.global`);return c({plugin:e.pluginId,module:`categories`,permission:`can_delete`})?n(d,{children:r(l,{children:[n(s,{description:g.rich(`desc`,{title:()=>n(`span`,{className:`text-foreground font-bold`,children:m})}),onSubmit:async({onClose:e})=>{if((await t(h))?.error){p.error(_(`errors.title`),{description:_(`errors.internal_server_error`)});return}p.success(g(`success`),{description:m}),e()},textSubmit:g(`confirm`),title:g(`title`),children:n(f,{render:n(a,{"aria-label":g(`title`),size:`icon`,variant:`destructive`,children:n(i,{className:`size-4`})})})}),n(u,{children:g(`title`)})]})}):null};export{m as DeleteAction};
2
+ //# sourceMappingURL=delete-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-action.js","names":[],"sources":["../../../../../../../../src/views/admin/categories/table/actions/delete/delete-action.tsx"],"sourcesContent":["\"use client\";\n\nimport { ConfirmActionAlertDialog } from \"@vitnode/core/components/confirm-action/confirm-action-alert-dialog\";\nimport { useAdminStaffPermission } from \"@vitnode/core/components/staff-permission/provider\";\nimport { Button } from \"@vitnode/core/components/ui/button\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@vitnode/core/components/ui/tooltip\";\nimport { Trash2Icon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport { toast } from \"sonner\";\n\nimport { CONFIG_PLUGIN } from \"@/const\";\n\nimport { mutationApi } from \"./mutation-api\";\n\nexport const DeleteAction = ({ title, id }: { id: number; title: string }) => {\n const t = useTranslations(\"@vitnode/blog.admin.categories.delete\");\n const tGlobal = useTranslations(\"core.global\");\n const canDelete = useAdminStaffPermission({\n plugin: CONFIG_PLUGIN.pluginId,\n module: \"categories\",\n permission: \"can_delete\",\n });\n\n if (!canDelete) return null;\n\n return (\n <TooltipProvider>\n <Tooltip>\n <ConfirmActionAlertDialog\n description={t.rich(\"desc\", {\n title: () => (\n <span className=\"text-foreground font-bold\">{title}</span>\n ),\n })}\n onSubmit={async ({ onClose }) => {\n const mutation = await mutationApi(id);\n if (mutation?.error) {\n toast.error(tGlobal(\"errors.title\"), {\n description: tGlobal(\"errors.internal_server_error\"),\n });\n\n return;\n }\n\n toast.success(t(\"success\"), {\n description: title,\n });\n onClose();\n }}\n textSubmit={t(\"confirm\")}\n title={t(\"title\")}\n >\n <TooltipTrigger\n render={\n <Button aria-label={t(\"title\")} size=\"icon\" variant=\"destructive\">\n <Trash2Icon className=\"size-4\" />\n </Button>\n }\n />\n </ConfirmActionAlertDialog>\n\n <TooltipContent>{t(\"title\")}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n};\n"],"mappings":"kqBAmBA,MAAa,GAAgB,CAAE,QAAO,QAAwC,CAC5E,IAAM,EAAI,EAAgB,uCAAuC,EAC3D,EAAU,EAAgB,aAAa,EAS7C,OARkB,EAAwB,CACxC,OAAQ,EAAc,SACtB,OAAQ,aACR,WAAY,YACd,CAEa,EAGX,EAAC,EAAD,CAAA,SACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CACE,YAAa,EAAE,KAAK,OAAQ,CAC1B,UACE,EAAC,OAAD,CAAM,UAAU,qCAA6B,CAAY,CAAA,CAE7D,CAAC,EACD,SAAU,MAAO,CAAE,aAAc,CAE/B,IAAI,MADmB,EAAY,CAAE,EAAA,EACvB,MAAO,CACnB,EAAM,MAAM,EAAQ,cAAc,EAAG,CACnC,YAAa,EAAQ,8BAA8B,CACrD,CAAC,EAED,MACF,CAEA,EAAM,QAAQ,EAAE,SAAS,EAAG,CAC1B,YAAa,CACf,CAAC,EACD,EAAQ,CACV,EACA,WAAY,EAAE,SAAS,EACvB,MAAO,EAAE,OAAO,WAEhB,EAAC,EAAD,CACE,OACE,EAAC,EAAD,CAAQ,aAAY,EAAE,OAAO,EAAG,KAAK,OAAO,QAAQ,uBAClD,EAAC,EAAD,CAAY,UAAU,QAAU,CAAA,CAC1B,CAAA,CAEX,CAAA,CACuB,CAAA,EAE1B,EAAC,EAAD,CAAA,SAAiB,EAAE,OAAO,CAAkB,CAAA,CACrC,CAAA,CAAA,CACM,CAAA,EAxCI,IA0CzB"}
@@ -1,4 +1,7 @@
1
- export declare const mutationApi: (id: number) => Promise<{
2
- error: string;
1
+ //#region src/views/admin/categories/table/actions/delete/mutation-api.d.ts
2
+ declare const mutationApi: (id: number) => Promise<{
3
+ error: string;
3
4
  } | undefined>;
5
+ //#endregion
6
+ export { mutationApi };
4
7
  //# sourceMappingURL=mutation-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-api.d.ts","sourceRoot":"","sources":["../../../../../../../../src/views/admin/categories/table/actions/delete/mutation-api.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW,GAAU,IAAI,MAAM;;cAqB3C,CAAC"}
1
+ {"version":3,"file":"mutation-api.d.ts","names":[],"sources":["../../../../../../../../src/views/admin/categories/table/actions/delete/mutation-api.ts"],"mappings":";cAOa,cAAqB,eAAU"}
@@ -1 +1,2 @@
1
- "use server";import{fetcher}from"@vitnode/core/lib/fetcher";import{revalidatePath}from"next/cache";import{categoriesAdminModule}from"../../../../../../api/modules/admin/categories/categories.admin.module.js";export const mutationApi=async id=>{const res=await fetcher(categoriesAdminModule,{prefixPath:"/admin",method:"delete",path:"/{id}",module:"categories",args:{params:{id}}});if(!res.ok){return{error:await res.text()}}revalidatePath("/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories","page")};
1
+ "use server";import{categoriesAdminModule as e}from"../../../../../../api/modules/admin/categories/categories.admin.module.js";import{fetcher as t}from"@vitnode/core/lib/fetcher";import{revalidatePath as n}from"next/cache";const r=async r=>{let i=await t(e,{prefixPath:`/admin`,method:`delete`,path:`/{id}`,module:`categories`,args:{params:{id:r}}});if(!i.ok)return{error:await i.text()};n(`/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories`,`page`)};export{r as mutationApi};
2
+ //# sourceMappingURL=mutation-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-api.js","names":[],"sources":["../../../../../../../../src/views/admin/categories/table/actions/delete/mutation-api.ts"],"sourcesContent":["\"use server\";\n\nimport { fetcher } from \"@vitnode/core/lib/fetcher\";\nimport { revalidatePath } from \"next/cache\";\n\nimport { categoriesAdminModule } from \"@/api/modules/admin/categories/categories.admin.module\";\n\nexport const mutationApi = async (id: number) => {\n const res = await fetcher(categoriesAdminModule, {\n prefixPath: \"/admin\",\n method: \"delete\",\n path: \"/{id}\",\n module: \"categories\",\n args: {\n params: {\n id,\n },\n },\n });\n\n if (!res.ok) {\n return { error: await res.text() };\n }\n\n revalidatePath(\n \"/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/categories\",\n \"page\",\n );\n};\n"],"mappings":"+NAOA,MAAa,EAAc,KAAO,IAAe,CAC/C,IAAM,EAAM,MAAM,EAAQ,EAAuB,CAC/C,WAAY,SACZ,OAAQ,SACR,KAAM,QACN,OAAQ,aACR,KAAM,CACJ,OAAQ,CACN,IACF,CACF,CACF,CAAC,EAED,GAAI,CAAC,EAAI,GACP,MAAO,CAAE,MAAO,MAAM,EAAI,KAAK,CAAE,EAGnC,EACE,kEACA,MACF,CACF"}
@@ -1,9 +1,12 @@
1
+ import { zodCreateCategorySchema } from "../../../../../api/modules/admin/categories/routes/create.route.js";
1
2
  import React from "react";
3
+ //#region src/views/admin/categories/table/actions/edit-action.d.ts
2
4
  declare const CreateEditActionCategoriesAdmin: React.ComponentType<{
3
- data?: import("zod").infer<typeof import("../../../../../api/modules/admin/categories/routes/create.route").zodCreateCategorySchema> & {
4
- id: number;
5
- };
5
+ data?: import("zod").infer<typeof zodCreateCategorySchema> & {
6
+ id: number;
7
+ };
6
8
  }>;
7
- export declare const EditAction: (props: Required<React.ComponentProps<typeof CreateEditActionCategoriesAdmin>>) => React.JSX.Element | null;
8
- export {};
9
+ declare const EditAction: (props: Required<React.ComponentProps<typeof CreateEditActionCategoriesAdmin>>) => React.JSX.Element | null;
10
+ //#endregion
11
+ export { EditAction };
9
12
  //# sourceMappingURL=edit-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"edit-action.d.ts","sourceRoot":"","sources":["../../../../../../../src/views/admin/categories/table/actions/edit-action.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,QAAA,MAAM,+BAA+B;;;;EAIpC,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,OAAO,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,+BAA+B,CAAC,CAAC,6BA0C9E,CAAC"}
1
+ {"version":3,"file":"edit-action.d.ts","names":[],"sources":["../../../../../../../src/views/admin/categories/table/actions/edit-action.tsx"],"mappings":";;;cA0BM,iCAA+B,MAAA;oCAA/B;;;;cAMO,aACX,OAAO,SAAS,MAAM,sBAAsB,sCAAiC,MAAA,IAAA"}
@@ -1 +1,2 @@
1
- "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useAdminStaffPermission}from"@vitnode/core/components/staff-permission/provider";import{Button}from"@vitnode/core/components/ui/button";import{Dialog,DialogContent,DialogDescription,DialogHeader,DialogTitle,DialogTrigger}from"@vitnode/core/components/ui/dialog";import{Loader}from"@vitnode/core/components/ui/loader";import{Tooltip,TooltipContent,TooltipProvider,TooltipTrigger}from"@vitnode/core/components/ui/tooltip";import{PencilIcon}from"lucide-react";import{useTranslations}from"next-intl";import dynamic from"next/dynamic";import React from"react";import{CONFIG_PLUGIN}from"../../../../../const.js";const CreateEditActionCategoriesAdmin=dynamic(async()=>import("../../actions/create-edit/create-edit.js").then(mod=>({default:mod.CreateEditActionCategoriesAdmin})));export const EditAction=props=>{const t=useTranslations("@vitnode/blog.admin.categories.edit");const canEdit=useAdminStaffPermission({plugin:CONFIG_PLUGIN.pluginId,module:"categories",permission:"can_edit"});if(!canEdit)return null;return _jsxs(Dialog,{children:[_jsx(TooltipProvider,{children:_jsxs(Tooltip,{children:[_jsx(TooltipTrigger,{render:_jsx(DialogTrigger,{render:_jsx(Button,{"aria-label":t("title"),size:"icon",variant:"ghost"}),children:_jsx(PencilIcon,{})})}),_jsx(TooltipContent,{children:t("title")})]})}),_jsxs(DialogContent,{children:[_jsxs(DialogHeader,{children:[_jsx(DialogTitle,{children:t("title")}),_jsx(DialogDescription,{children:props.data.title})]}),_jsx(React.Suspense,{fallback:_jsx(Loader,{}),children:_jsx(CreateEditActionCategoriesAdmin,{...props})})]})]})};
1
+ "use client";import{CONFIG_PLUGIN as e}from"../../../../../const.js";import{jsx as t,jsxs as n}from"react/jsx-runtime";import{PencilIcon as r}from"lucide-react";import i from"next/dynamic";import a from"react";import{Button as o}from"@vitnode/core/components/ui/button";import{Dialog as s,DialogContent as c,DialogDescription as l,DialogHeader as u,DialogTitle as d,DialogTrigger as f}from"@vitnode/core/components/ui/dialog";import{Loader as p}from"@vitnode/core/components/ui/loader";import{useTranslations as m}from"next-intl";import{useAdminStaffPermission as h}from"@vitnode/core/components/staff-permission/provider";import{Tooltip as g,TooltipContent as _,TooltipProvider as v,TooltipTrigger as y}from"@vitnode/core/components/ui/tooltip";const b=i(async()=>import(`../../actions/create-edit/create-edit.js`).then(e=>({default:e.CreateEditActionCategoriesAdmin}))),x=i=>{let x=m(`@vitnode/blog.admin.categories.edit`);return h({plugin:e.pluginId,module:`categories`,permission:`can_edit`})?n(s,{children:[t(v,{children:n(g,{children:[t(y,{render:t(f,{render:t(o,{"aria-label":x(`title`),size:`icon`,variant:`ghost`}),children:t(r,{})})}),t(_,{children:x(`title`)})]})}),n(c,{children:[n(u,{children:[t(d,{children:x(`title`)}),t(l,{children:i.data.title})]}),t(a.Suspense,{fallback:t(p,{}),children:t(b,{...i})})]})]}):null};export{x as EditAction};
2
+ //# sourceMappingURL=edit-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-action.js","names":[],"sources":["../../../../../../../src/views/admin/categories/table/actions/edit-action.tsx"],"sourcesContent":["\"use client\";\n\nimport { useAdminStaffPermission } from \"@vitnode/core/components/staff-permission/provider\";\nimport { Button } from \"@vitnode/core/components/ui/button\";\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@vitnode/core/components/ui/dialog\";\nimport { Loader } from \"@vitnode/core/components/ui/loader\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@vitnode/core/components/ui/tooltip\";\nimport { PencilIcon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport dynamic from \"next/dynamic\";\nimport React from \"react\";\n\nimport { CONFIG_PLUGIN } from \"@/const\";\n\nconst CreateEditActionCategoriesAdmin = dynamic(async () =>\n import(\"../..//actions/create-edit/create-edit\").then(mod => ({\n default: mod.CreateEditActionCategoriesAdmin,\n })),\n);\n\nexport const EditAction = (\n props: Required<React.ComponentProps<typeof CreateEditActionCategoriesAdmin>>,\n) => {\n const t = useTranslations(\"@vitnode/blog.admin.categories.edit\");\n const canEdit = useAdminStaffPermission({\n plugin: CONFIG_PLUGIN.pluginId,\n module: \"categories\",\n permission: \"can_edit\",\n });\n\n if (!canEdit) return null;\n\n return (\n <Dialog>\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger\n render={\n <DialogTrigger\n render={\n <Button aria-label={t(\"title\")} size=\"icon\" variant=\"ghost\" />\n }\n >\n <PencilIcon />\n </DialogTrigger>\n }\n />\n <TooltipContent>{t(\"title\")}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{t(\"title\")}</DialogTitle>\n <DialogDescription>{props.data.title}</DialogDescription>\n </DialogHeader>\n\n <React.Suspense fallback={<Loader />}>\n <CreateEditActionCategoriesAdmin {...props} />\n </React.Suspense>\n </DialogContent>\n </Dialog>\n );\n};\n"],"mappings":"0uBA0BA,MAAM,EAAkC,EAAQ,SAC9C,OAAO,2CAAyC,CAAC,KAAK,IAAQ,CAC5D,QAAS,EAAI,+BACf,EAAE,CACJ,EAEa,EACX,GACG,CACH,IAAM,EAAI,EAAgB,qCAAqC,EAS/D,OARgB,EAAwB,CACtC,OAAQ,EAAc,SACtB,OAAQ,aACR,WAAY,UACd,CAEW,EAGT,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CACE,OACE,EAAC,EAAD,CACE,OACE,EAAC,EAAD,CAAQ,aAAY,EAAE,OAAO,EAAG,KAAK,OAAO,QAAQ,OAAS,CAAA,WAG/D,EAAC,EAAD,CAAa,CAAA,CACA,CAAA,CAElB,CAAA,EACD,EAAC,EAAD,CAAA,SAAiB,EAAE,OAAO,CAAkB,CAAA,CACrC,CAAA,CAAA,CACM,CAAA,EAEjB,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SAAc,EAAE,OAAO,CAAe,CAAA,EACtC,EAAC,EAAD,CAAA,SAAoB,EAAM,KAAK,KAAyB,CAAA,CAC5C,CAAA,CAAA,EAEd,EAAC,EAAM,SAAP,CAAgB,SAAU,EAAC,EAAD,CAAS,CAAA,WACjC,EAAC,EAAD,CAAiC,GAAI,CAAQ,CAAA,CAC/B,CAAA,CACH,CAAA,CAAA,CACT,CAAA,CAAA,EA/BW,IAiCvB"}
@@ -1,4 +1,7 @@
1
- export declare const CategoriesAdminView: ({ searchParams, }: {
2
- searchParams: Promise<Record<string, string | string[] | undefined>>;
1
+ //#region src/views/admin/categories/table/categories-admin-view.d.ts
2
+ declare const CategoriesAdminView: ({ searchParams }: {
3
+ searchParams: Promise<Record<string, string | string[] | undefined>>;
3
4
  }) => Promise<import("react").JSX.Element>;
5
+ //#endregion
6
+ export { CategoriesAdminView };
4
7
  //# sourceMappingURL=categories-admin-view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"categories-admin-view.d.ts","sourceRoot":"","sources":["../../../../../../src/views/admin/categories/table/categories-admin-view.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,mBAAmB,GAAU,mBAEvC;IACD,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;CACtE,yCA2DA,CAAC"}
1
+ {"version":3,"file":"categories-admin-view.d.ts","names":[],"sources":["../../../../../../src/views/admin/categories/table/categories-admin-view.tsx"],"mappings":";cAUa,wBAA6B;EAGxC,cAAc,QAAQ;MACvB,wBAAA,IAAA"}
@@ -1 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{DateFormat}from"@vitnode/core/components/date-format";import{DataTable}from"@vitnode/core/components/table/data-table";import{fetcher}from"@vitnode/core/lib/fetcher";import{getTranslations}from"next-intl/server";import{categoriesModule}from"../../../../api/modules/categories/categories.module.js";import{DeleteAction}from"./actions/delete/delete-action.js";import{EditAction}from"./actions/edit-action.js";export const CategoriesAdminView=async({searchParams})=>{const t=await getTranslations("@vitnode/blog.admin.categories.table");const query=await searchParams;const res=await fetcher(categoriesModule,{path:"/",method:"get",module:"categories",args:{query},withPagination:true,options:{cache:"force-cache"}});const data=await res.json();return _jsx(DataTable,{columns:[{id:"id",label:"ID",className:"w-24"},{id:"title",label:t("title")},{id:"updatedAt",label:t("updated_at"),className:"w-48",cell:({row})=>_jsx(DateFormat,{date:row.updatedAt})},{id:"actions",label:"",className:"w-10",cell:({row})=>_jsxs(_Fragment,{children:[_jsx(EditAction,{data:row}),_jsx(DeleteAction,{...row})]})}],edges:data.edges.map(edge=>({...edge})),id:"categories-table",order:{columns:["createdAt","updatedAt"],defaultOrder:{column:"createdAt",order:"desc"}},pageInfo:data.pageInfo})};
1
+ import{categoriesModule as e}from"../../../../api/modules/categories/categories.module.js";import{DeleteAction as t}from"./actions/delete/delete-action.js";import{EditAction as n}from"./actions/edit-action.js";import{Fragment as r,jsx as i,jsxs as a}from"react/jsx-runtime";import{DataTable as o}from"@vitnode/core/components/table/data-table";import{getTranslations as s}from"next-intl/server";import{DateFormat as c}from"@vitnode/core/components/date-format";import{fetcher as l}from"@vitnode/core/lib/fetcher";const u=async({searchParams:u})=>{let d=await s(`@vitnode/blog.admin.categories.table`),f=await(await l(e,{path:`/`,method:`get`,module:`categories`,args:{query:await u},withPagination:!0,options:{cache:`force-cache`}})).json();return i(o,{columns:[{accessorKey:`id`,header:`ID`,className:`w-24`},{accessorKey:`title`,header:d(`title`)},{accessorKey:`updatedAt`,header:d(`updated_at`),className:`w-48`,cell:({row:e})=>i(c,{date:e.updatedAt})},{id:`actions`,header:``,align:`right`,className:`w-10`,cell:({row:e})=>a(r,{children:[i(n,{data:e}),i(t,{...e})]})}],edges:f.edges.map(e=>({...e})),id:`categories-table`,order:{columns:[`createdAt`,`updatedAt`],defaultOrder:{column:`createdAt`,order:`desc`}},pageInfo:f.pageInfo})};export{u as CategoriesAdminView};
2
+ //# sourceMappingURL=categories-admin-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"categories-admin-view.js","names":[],"sources":["../../../../../../src/views/admin/categories/table/categories-admin-view.tsx"],"sourcesContent":["import { DateFormat } from \"@vitnode/core/components/date-format\";\nimport { DataTable } from \"@vitnode/core/components/table/data-table\";\nimport { fetcher } from \"@vitnode/core/lib/fetcher\";\nimport { getTranslations } from \"next-intl/server\";\n\nimport { categoriesModule } from \"@/api/modules/categories/categories.module\";\n\nimport { DeleteAction } from \"./actions/delete/delete-action\";\nimport { EditAction } from \"./actions/edit-action\";\n\nexport const CategoriesAdminView = async ({\n searchParams,\n}: {\n searchParams: Promise<Record<string, string | string[] | undefined>>;\n}) => {\n const t = await getTranslations(\"@vitnode/blog.admin.categories.table\");\n const query = await searchParams;\n const res = await fetcher(categoriesModule, {\n path: \"/\",\n method: \"get\",\n module: \"categories\",\n args: {\n query,\n },\n withPagination: true,\n options: {\n cache: \"force-cache\",\n },\n });\n const data = await res.json();\n\n return (\n <DataTable\n columns={[\n {\n accessorKey: \"id\",\n header: \"ID\",\n className: \"w-24\",\n },\n {\n accessorKey: \"title\",\n header: t(\"title\"),\n },\n {\n accessorKey: \"updatedAt\",\n header: t(\"updated_at\"),\n className: \"w-48\",\n cell: ({ row }) => <DateFormat date={row.updatedAt} />,\n },\n {\n id: \"actions\",\n header: \"\",\n align: \"right\",\n className: \"w-10\",\n cell: ({ row }) => (\n <>\n <EditAction data={row} />\n <DeleteAction {...row} />\n </>\n ),\n },\n ]}\n edges={data.edges.map(edge => ({ ...edge }))}\n id=\"categories-table\"\n order={{\n columns: [\"createdAt\", \"updatedAt\"],\n defaultOrder: {\n column: \"createdAt\",\n order: \"desc\",\n },\n }}\n pageInfo={data.pageInfo}\n />\n );\n};\n"],"mappings":"igBAUA,MAAa,EAAsB,MAAO,CACxC,kBAGI,CACJ,IAAM,EAAI,MAAM,EAAgB,sCAAsC,EAchE,EAAO,MAAM,MAZD,EAAQ,EAAkB,CAC1C,KAAM,IACN,OAAQ,MACR,OAAQ,aACR,KAAM,CACJ,MAAA,MANgB,CAOlB,EACA,eAAgB,GAChB,QAAS,CACP,MAAO,aACT,CACF,CAAC,EAAA,CACsB,KAAK,EAE5B,OACE,EAAC,EAAD,CACE,QAAS,CACP,CACE,YAAa,KACb,OAAQ,KACR,UAAW,MACb,EACA,CACE,YAAa,QACb,OAAQ,EAAE,OAAO,CACnB,EACA,CACE,YAAa,YACb,OAAQ,EAAE,YAAY,EACtB,UAAW,OACX,MAAO,CAAE,SAAU,EAAC,EAAD,CAAY,KAAM,EAAI,SAAY,CAAA,CACvD,EACA,CACE,GAAI,UACJ,OAAQ,GACR,MAAO,QACP,UAAW,OACX,MAAO,CAAE,SACP,EAAA,EAAA,CAAA,SAAA,CACE,EAAC,EAAD,CAAY,KAAM,CAAM,CAAA,EACxB,EAAC,EAAD,CAAc,GAAI,CAAM,CAAA,CACxB,CAAA,CAAA,CAEN,CACF,EACA,MAAO,EAAK,MAAM,IAAI,IAAS,CAAE,GAAG,CAAK,EAAE,EAC3C,GAAG,mBACH,MAAO,CACL,QAAS,CAAC,YAAa,WAAW,EAClC,aAAc,CACZ,OAAQ,YACR,MAAO,MACT,CACF,EACA,SAAU,EAAK,QAChB,CAAA,CAEL"}
@@ -1,3 +1,6 @@
1
1
  import React from "react";
2
- export declare const ActionsPostsAdmin: () => React.JSX.Element;
2
+ //#region src/views/admin/posts/actions/actions.d.ts
3
+ declare const ActionsPostsAdmin: () => React.JSX.Element;
4
+ //#endregion
5
+ export { ActionsPostsAdmin };
3
6
  //# sourceMappingURL=actions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../../src/views/admin/posts/actions/actions.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,eAAO,MAAM,iBAAiB,yBAsB7B,CAAC"}
1
+ {"version":3,"file":"actions.d.ts","names":[],"sources":["../../../../../../src/views/admin/posts/actions/actions.tsx"],"mappings":";;cAuBa,yBAAiB,MAAA,IAAA"}
@@ -1 +1,2 @@
1
- "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Button}from"@vitnode/core/components/ui/button";import{Dialog,DialogContent,DialogDescription,DialogHeader,DialogTitle,DialogTrigger}from"@vitnode/core/components/ui/dialog";import{Loader}from"@vitnode/core/components/ui/loader";import{PlusIcon}from"lucide-react";import{useTranslations}from"next-intl";import dynamic from"next/dynamic";import React from"react";const CreateEditActionPostsAdmin=dynamic(async()=>import("./create-edit/create-edit.js").then(module=>({default:module.CreateEditActionPostsAdmin})));export const ActionsPostsAdmin=()=>{const t=useTranslations("@vitnode/blog.admin.posts.create");return _jsxs(Dialog,{children:[_jsxs(DialogTrigger,{render:_jsx(Button,{}),children:[_jsx(PlusIcon,{}),t("title")]}),_jsxs(DialogContent,{children:[_jsxs(DialogHeader,{children:[_jsx(DialogTitle,{children:t("title")}),_jsx(DialogDescription,{children:t("desc")})]}),_jsx(React.Suspense,{fallback:_jsx(Loader,{}),children:_jsx(CreateEditActionPostsAdmin,{})})]})]})};
1
+ "use client";import{jsx as e,jsxs as t}from"react/jsx-runtime";import{PlusIcon as n}from"lucide-react";import r from"next/dynamic";import i from"react";import{Button as a}from"@vitnode/core/components/ui/button";import{Dialog as o,DialogContent as s,DialogDescription as c,DialogHeader as l,DialogTitle as u,DialogTrigger as d}from"@vitnode/core/components/ui/dialog";import{Loader as f}from"@vitnode/core/components/ui/loader";import{useTranslations as p}from"next-intl";const m=r(async()=>import(`./create-edit/create-edit.js`).then(e=>({default:e.CreateEditActionPostsAdmin}))),h=()=>{let r=p(`@vitnode/blog.admin.posts.create`);return t(o,{children:[t(d,{render:e(a,{}),children:[e(n,{}),r(`title`)]}),t(s,{children:[t(l,{children:[e(u,{children:r(`title`)}),e(c,{children:r(`desc`)})]}),e(i.Suspense,{fallback:e(f,{}),children:e(m,{})})]})]})};export{h as ActionsPostsAdmin};
2
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","names":[],"sources":["../../../../../../src/views/admin/posts/actions/actions.tsx"],"sourcesContent":["\"use client\";\n\nimport { Button } from \"@vitnode/core/components/ui/button\";\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@vitnode/core/components/ui/dialog\";\nimport { Loader } from \"@vitnode/core/components/ui/loader\";\nimport { PlusIcon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport dynamic from \"next/dynamic\";\nimport React from \"react\";\n\nconst CreateEditActionPostsAdmin = dynamic(async () =>\n import(\"./create-edit/create-edit\").then(module => ({\n default: module.CreateEditActionPostsAdmin,\n })),\n);\n\nexport const ActionsPostsAdmin = () => {\n const t = useTranslations(\"@vitnode/blog.admin.posts.create\");\n\n return (\n <Dialog>\n <DialogTrigger render={<Button />}>\n <PlusIcon />\n {t(\"title\")}\n </DialogTrigger>\n\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{t(\"title\")}</DialogTitle>\n <DialogDescription>{t(\"desc\")}</DialogDescription>\n </DialogHeader>\n\n <React.Suspense fallback={<Loader />}>\n <CreateEditActionPostsAdmin />\n </React.Suspense>\n </DialogContent>\n </Dialog>\n );\n};\n"],"mappings":"wdAiBA,MAAM,EAA6B,EAAQ,SACzC,OAAO,+BAA4B,CAAC,KAAK,IAAW,CAClD,QAAS,EAAO,0BAClB,EAAE,CACJ,EAEa,MAA0B,CACrC,IAAM,EAAI,EAAgB,kCAAkC,EAE5D,OACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAe,OAAQ,EAAC,EAAD,CAAS,CAAA,WAAhC,CACE,EAAC,EAAD,CAAW,CAAA,EACV,EAAE,OAAO,CACG,IAEf,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SAAc,EAAE,OAAO,CAAe,CAAA,EACtC,EAAC,EAAD,CAAA,SAAoB,EAAE,MAAM,CAAqB,CAAA,CACrC,CAAA,CAAA,EAEd,EAAC,EAAM,SAAP,CAAgB,SAAU,EAAC,EAAD,CAAS,CAAA,WACjC,EAAC,EAAD,CAA6B,CAAA,CACf,CAAA,CACH,CAAA,CAAA,CACT,CAAA,CAAA,CAEZ"}
@@ -1,8 +1,11 @@
1
+ import { zodPostSchema } from "../../../../../api/modules/posts/routes/get.route.js";
1
2
  import { z } from "zod";
2
- import type { zodPostSchema } from "../../../../../api/modules/posts/routes/get.route";
3
- export declare const CreateEditActionPostsAdmin: ({ data, }: {
4
- data?: z.infer<typeof zodPostSchema> & {
5
- id?: number;
6
- };
3
+ //#region src/views/admin/posts/actions/create-edit/create-edit.d.ts
4
+ declare const CreateEditActionPostsAdmin: ({ data }: {
5
+ data?: z.infer<typeof zodPostSchema> & {
6
+ id?: number;
7
+ };
7
8
  }) => import("react").JSX.Element;
9
+ //#endregion
10
+ export { CreateEditActionPostsAdmin };
8
11
  //# sourceMappingURL=create-edit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-edit.d.ts","sourceRoot":"","sources":["../../../../../../../src/views/admin/posts/actions/create-edit/create-edit.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAM1E,eAAO,MAAM,0BAA0B,GAAI,WAExC;IACD,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD,gCAiIA,CAAC"}
1
+ {"version":3,"file":"create-edit.d.ts","names":[],"sources":["../../../../../../../src/views/admin/posts/actions/create-edit/create-edit.tsx"],"mappings":";;;cAoBa,+BAA8B;EAGzC,OAAO,EAAE,aAAa;IAAmB;;sBAC1C,IAAA"}
@@ -1 +1,2 @@
1
- import{jsx as _jsx}from"react/jsx-runtime";import{AutoForm}from"@vitnode/core/components/form/auto-form";import{AutoFormCombobox}from"@vitnode/core/components/form/fields/combobox";import{AutoFormInput}from"@vitnode/core/components/form/fields/input";import{AutoFormTextarea}from"@vitnode/core/components/form/fields/textarea";import{useDialog}from"@vitnode/core/components/ui/dialog";import{fetcherClient}from"@vitnode/core/lib/fetcher-client";import{usePathname,useRouter}from"@vitnode/core/lib/navigation";import{useTranslations}from"next-intl";import{toast}from"sonner";import{z}from"zod";import{categoriesModule}from"../../../../../api/modules/categories/categories.module.js";import{createMutationApi,editMutationApi}from"./mutation-api.js";export const CreateEditActionPostsAdmin=({data})=>{const t=useTranslations("@vitnode/blog.admin.posts");const tCore=useTranslations("core.global.errors");const{setOpen}=useDialog();const{push}=useRouter();const pathname=usePathname();const formSchema=z.object({title:z.string().min(3,{message:tCore("field_min_length",{min:3})}).default(data?.title??""),content:z.string().default(data?.content??""),categoryId:z.object({value:z.string(),label:z.string()}).refine(value=>value.value!=="",{message:tCore("field_required")}).default(data?.category?{value:data.category.id.toString(),label:data.category.title}:{value:"",label:""})});const onSubmit=async(values,form)=>{let error="";if(data?.id){const mutation=await editMutationApi({id:data.id,...values,categoryId:parseInt(values.categoryId.value,10)});if(mutation?.error){error=mutation.error}}else{const mutation=await createMutationApi({...values,categoryId:parseInt(values.categoryId.value,10)});if(mutation?.error){error=mutation.error}}if(error){if(error.includes("already exists")){form.setError("title",{type:"manual",message:t("create.form.title.already_exists")});return}toast.error(tCore("title"),{description:tCore("internal_server_error")});return}setOpen?.(false);push(pathname)};return _jsx(AutoForm,{fields:[{id:"title",component:props=>_jsx(AutoFormInput,{label:t("create.form.title.label"),...props})},{id:"categoryId",component:props=>_jsx(AutoFormCombobox,{fetchData:async({search})=>{const res=await fetcherClient(categoriesModule,{path:"/",method:"get",module:"categories",args:{query:{search}}});const data=await res.json();return data.edges.map(category=>({label:category.title,value:category.id.toString()}))},id:"categoryId",label:t("create.form.category"),...props})},{id:"content",component:props=>_jsx(AutoFormTextarea,{label:t("create.form.content"),rows:10,...props})}],formSchema:formSchema,onSubmit:onSubmit,submitButtonProps:{children:t(`${data?"edit":"create"}.submit`)}})};
1
+ import{categoriesModule as e}from"../../../../../api/modules/categories/categories.module.js";import{createMutationApi as t,editMutationApi as n}from"./mutation-api.js";import{z as r}from"zod";import{jsx as i}from"react/jsx-runtime";import{useDialog as a}from"@vitnode/core/components/ui/dialog";import{useTranslations as o}from"next-intl";import{toast as s}from"sonner";import{AutoForm as c}from"@vitnode/core/components/form/auto-form";import{AutoFormInput as l}from"@vitnode/core/components/form/fields/input";import{usePathname as u,useRouter as d}from"@vitnode/core/lib/navigation";import{AutoFormCombobox as f}from"@vitnode/core/components/form/fields/combobox";import{AutoFormTextarea as p}from"@vitnode/core/components/form/fields/textarea";import{fetcherClient as m}from"@vitnode/core/lib/fetcher-client";const h=({data:h})=>{let g=o(`@vitnode/blog.admin.posts`),_=o(`core.global.errors`),{setOpen:v}=a(),{push:y}=d(),b=u();return i(c,{fields:[{id:`title`,component:e=>i(l,{label:g(`create.form.title.label`),...e})},{id:`categoryId`,component:t=>i(f,{fetchData:async({search:t})=>(await(await m(e,{path:`/`,method:`get`,module:`categories`,args:{query:{search:t}}})).json()).edges.map(e=>({label:e.title,value:e.id.toString()})),id:`categoryId`,label:g(`create.form.category`),...t})},{id:`content`,component:e=>i(p,{label:g(`create.form.content`),rows:10,...e})}],formSchema:r.object({title:r.string().min(3,{message:_(`field_min_length`,{min:3})}).default(h?.title??``),content:r.string().default(h?.content??``),categoryId:r.object({value:r.string(),label:r.string()}).refine(e=>e.value!==``,{message:_(`field_required`)}).default(h?.category?{value:h.category.id.toString(),label:h.category.title}:{value:``,label:``})}),onSubmit:async(e,r)=>{let i=``;if(h?.id){let t=await n({id:h.id,...e,categoryId:parseInt(e.categoryId.value,10)});t?.error&&(i=t.error)}else{let n=await t({...e,categoryId:parseInt(e.categoryId.value,10)});n?.error&&(i=n.error)}if(i){if(i.includes(`already exists`)){r.setError(`title`,{type:`manual`,message:g(`create.form.title.already_exists`)});return}s.error(_(`title`),{description:_(`internal_server_error`)});return}v?.(!1),y(b)},submitButtonProps:{children:g(`${h?`edit`:`create`}.submit`)}})};export{h as CreateEditActionPostsAdmin};
2
+ //# sourceMappingURL=create-edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-edit.js","names":[],"sources":["../../../../../../../src/views/admin/posts/actions/create-edit/create-edit.tsx"],"sourcesContent":["import {\n AutoForm,\n type AutoFormOnSubmit,\n} from \"@vitnode/core/components/form/auto-form\";\nimport { AutoFormCombobox } from \"@vitnode/core/components/form/fields/combobox\";\nimport { AutoFormInput } from \"@vitnode/core/components/form/fields/input\";\nimport { AutoFormTextarea } from \"@vitnode/core/components/form/fields/textarea\";\nimport { useDialog } from \"@vitnode/core/components/ui/dialog\";\nimport { fetcherClient } from \"@vitnode/core/lib/fetcher-client\";\nimport { usePathname, useRouter } from \"@vitnode/core/lib/navigation\";\nimport { useTranslations } from \"next-intl\";\nimport { toast } from \"sonner\";\nimport { z } from \"zod\";\n\nimport type { zodPostSchema } from \"@/api/modules/posts/routes/get.route\";\n\nimport { categoriesModule } from \"@/api/modules/categories/categories.module\";\n\nimport { createMutationApi, editMutationApi } from \"./mutation-api\";\n\nexport const CreateEditActionPostsAdmin = ({\n data,\n}: {\n data?: z.infer<typeof zodPostSchema> & { id?: number };\n}) => {\n const t = useTranslations(\"@vitnode/blog.admin.posts\");\n const tCore = useTranslations(\"core.global.errors\");\n const { setOpen } = useDialog();\n const { push } = useRouter();\n const pathname = usePathname();\n const formSchema = z.object({\n title: z\n .string()\n .min(3, {\n message: tCore(\"field_min_length\", {\n min: 3,\n }),\n })\n .default(data?.title ?? \"\"),\n content: z.string().default(data?.content ?? \"\"),\n categoryId: z\n .object({ value: z.string(), label: z.string() })\n .refine(value => value.value !== \"\", {\n message: tCore(\"field_required\"),\n })\n .default(\n data?.category\n ? { value: data.category.id.toString(), label: data.category.title }\n : { value: \"\", label: \"\" },\n ),\n });\n\n const onSubmit: AutoFormOnSubmit<typeof formSchema> = async (\n values,\n form,\n ) => {\n let error = \"\";\n if (data?.id) {\n const mutation = await editMutationApi({\n id: data.id,\n ...values,\n categoryId: parseInt(values.categoryId.value, 10),\n });\n\n if (mutation?.error) {\n error = mutation.error;\n }\n } else {\n const mutation = await createMutationApi({\n ...values,\n categoryId: parseInt(values.categoryId.value, 10),\n });\n\n if (mutation?.error) {\n error = mutation.error;\n }\n }\n\n if (error) {\n if (error.includes(\"already exists\")) {\n form.setError(\"title\", {\n type: \"manual\",\n message: t(\"create.form.title.already_exists\"),\n });\n\n return;\n }\n\n toast.error(tCore(\"title\"), {\n description: tCore(\"internal_server_error\"),\n });\n\n return;\n }\n setOpen?.(false);\n push(pathname);\n };\n\n return (\n <AutoForm\n fields={[\n {\n id: \"title\",\n component: props => (\n <AutoFormInput label={t(\"create.form.title.label\")} {...props} />\n ),\n },\n {\n id: \"categoryId\",\n component: props => (\n <AutoFormCombobox\n fetchData={async ({ search }) => {\n const res = await fetcherClient(categoriesModule, {\n path: \"/\",\n method: \"get\",\n module: \"categories\",\n args: {\n query: {\n search,\n },\n },\n });\n const data = await res.json();\n\n return data.edges.map(category => ({\n label: category.title,\n value: category.id.toString(),\n }));\n }}\n id=\"categoryId\"\n label={t(\"create.form.category\")}\n {...props}\n />\n ),\n },\n {\n id: \"content\",\n component: props => (\n <AutoFormTextarea\n label={t(\"create.form.content\")}\n rows={10}\n {...props}\n />\n ),\n },\n ]}\n formSchema={formSchema}\n onSubmit={onSubmit}\n submitButtonProps={{\n children: t(`${data ? \"edit\" : \"create\"}.submit`),\n }}\n />\n );\n};\n"],"mappings":"8yBAoBA,MAAa,GAA8B,CACzC,UAGI,CACJ,IAAM,EAAI,EAAgB,2BAA2B,EAC/C,EAAQ,EAAgB,oBAAoB,EAC5C,CAAE,WAAY,EAAU,EACxB,CAAE,QAAS,EAAU,EACrB,EAAW,EAAY,EAqE7B,OACE,EAAC,EAAD,CACE,OAAQ,CACN,CACE,GAAI,QACJ,UAAW,GACT,EAAC,EAAD,CAAe,MAAO,EAAE,yBAAyB,EAAG,GAAI,CAAQ,CAAA,CAEpE,EACA,CACE,GAAI,aACJ,UAAW,GACT,EAAC,EAAD,CACE,UAAW,MAAO,CAAE,aAaX,MAFY,MAVD,EAAc,EAAkB,CAChD,KAAM,IACN,OAAQ,MACR,OAAQ,aACR,KAAM,CACJ,MAAO,CACL,QACF,CACF,CACF,CAAC,EAAA,CACsB,KAAK,EAAA,CAEhB,MAAM,IAAI,IAAa,CACjC,MAAO,EAAS,MAChB,MAAO,EAAS,GAAG,SAAS,CAC9B,EAAE,EAEJ,GAAG,aACH,MAAO,EAAE,sBAAsB,EAC/B,GAAI,CACL,CAAA,CAEL,EACA,CACE,GAAI,UACJ,UAAW,GACT,EAAC,EAAD,CACE,MAAO,EAAE,qBAAqB,EAC9B,KAAM,GACN,GAAI,CACL,CAAA,CAEL,CACF,EACY,WApHG,EAAE,OAAO,CAC1B,MAAO,EACJ,OAAO,CAAC,CACR,IAAI,EAAG,CACN,QAAS,EAAM,mBAAoB,CACjC,IAAK,CACP,CAAC,CACH,CAAC,CAAC,CACD,QAAQ,GAAM,OAAS,EAAE,EAC5B,QAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,GAAM,SAAW,EAAE,EAC/C,WAAY,EACT,OAAO,CAAE,MAAO,EAAE,OAAO,EAAG,MAAO,EAAE,OAAO,CAAE,CAAC,CAAC,CAChD,OAAO,GAAS,EAAM,QAAU,GAAI,CACnC,QAAS,EAAM,gBAAgB,CACjC,CAAC,CAAC,CACD,QACC,GAAM,SACF,CAAE,MAAO,EAAK,SAAS,GAAG,SAAS,EAAG,MAAO,EAAK,SAAS,KAAM,EACjE,CAAE,MAAO,GAAI,MAAO,EAAG,CAC7B,CACJ,CAgGgB,EACF,eA9FZ,EACA,IACG,CACH,IAAI,EAAQ,GACZ,GAAI,GAAM,GAAI,CACZ,IAAM,EAAW,MAAM,EAAgB,CACrC,GAAI,EAAK,GACT,GAAG,EACH,WAAY,SAAS,EAAO,WAAW,MAAO,EAAE,CAClD,CAAC,EAEG,GAAU,QACZ,EAAQ,EAAS,MAErB,KAAO,CACL,IAAM,EAAW,MAAM,EAAkB,CACvC,GAAG,EACH,WAAY,SAAS,EAAO,WAAW,MAAO,EAAE,CAClD,CAAC,EAEG,GAAU,QACZ,EAAQ,EAAS,MAErB,CAEA,GAAI,EAAO,CACT,GAAI,EAAM,SAAS,gBAAgB,EAAG,CACpC,EAAK,SAAS,QAAS,CACrB,KAAM,SACN,QAAS,EAAE,kCAAkC,CAC/C,CAAC,EAED,MACF,CAEA,EAAM,MAAM,EAAM,OAAO,EAAG,CAC1B,YAAa,EAAM,uBAAuB,CAC5C,CAAC,EAED,MACF,CACA,IAAU,EAAK,EACf,EAAK,CAAQ,CACf,EAoDI,kBAAmB,CACjB,SAAU,EAAE,GAAG,EAAO,OAAS,SAAS,QAAQ,CAClD,CACD,CAAA,CAEL"}
@@ -1,11 +1,14 @@
1
- import type { z } from "zod";
2
- import type { zodCreatePostSchema } from "../../../../../api/modules/admin/posts/routes/create.route";
3
- export declare const createMutationApi: (body: z.infer<typeof zodCreatePostSchema>) => Promise<{
4
- error: string;
1
+ import { zodCreatePostSchema } from "../../../../../api/modules/admin/posts/routes/create.route.js";
2
+ import { z } from "zod";
3
+ //#region src/views/admin/posts/actions/create-edit/mutation-api.d.ts
4
+ declare const createMutationApi: (body: z.infer<typeof zodCreatePostSchema>) => Promise<{
5
+ error: string;
5
6
  } | undefined>;
6
- export declare const editMutationApi: ({ id, ...body }: z.infer<typeof zodCreatePostSchema> & {
7
- id: number;
7
+ declare const editMutationApi: ({ id, ...body }: z.infer<typeof zodCreatePostSchema> & {
8
+ id: number;
8
9
  }) => Promise<{
9
- error: string;
10
+ error: string;
10
11
  } | undefined>;
12
+ //#endregion
13
+ export { createMutationApi, editMutationApi };
11
14
  //# sourceMappingURL=mutation-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-api.d.ts","sourceRoot":"","sources":["../../../../../../../src/views/admin/posts/actions/create-edit/mutation-api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAK7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAIzF,eAAO,MAAM,iBAAiB,GAC5B,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC;;cAoB1C,CAAC;AAEF,eAAO,MAAM,eAAe,GAAU,iBAGnC,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE;;cAsBtD,CAAC"}
1
+ {"version":3,"file":"mutation-api.d.ts","names":[],"sources":["../../../../../../../src/views/admin/posts/actions/create-edit/mutation-api.ts"],"mappings":";;;cAWa,oBACX,MAAM,EAAE,aAAa,yBAAoB;;;cAsB9B,oBAAyB,OAAA,QAGnC,EAAE,aAAa;EAAyB;MAAY"}
@@ -1 +1,2 @@
1
- "use server";import{fetcher}from"@vitnode/core/lib/fetcher";import{revalidatePath}from"next/cache";import{postsAdminModule}from"../../../../../api/modules/admin/posts/posts.admin.module.js";export const createMutationApi=async body=>{const res=await fetcher(postsAdminModule,{prefixPath:"/admin",method:"post",module:"posts",path:"/",args:{body}});if(res.status!==201){return{error:await res.text()}}revalidatePath("/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts","page")};export const editMutationApi=async({id,...body})=>{const res=await fetcher(postsAdminModule,{prefixPath:"/admin",method:"put",module:"posts",path:"/{id}",args:{params:{id},body}});if(res.status!==200){return{error:await res.text()}}revalidatePath("/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts","page")};
1
+ "use server";import{postsAdminModule as e}from"../../../../../api/modules/admin/posts/posts.admin.module.js";import{fetcher as t}from"@vitnode/core/lib/fetcher";import{revalidatePath as n}from"next/cache";const r=async r=>{let i=await t(e,{prefixPath:`/admin`,method:`post`,module:`posts`,path:`/`,args:{body:r}});if(i.status!==201)return{error:await i.text()};n(`/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts`,`page`)},i=async({id:r,...i})=>{let a=await t(e,{prefixPath:`/admin`,method:`put`,module:`posts`,path:`/{id}`,args:{params:{id:r},body:i}});if(a.status!==200)return{error:await a.text()};n(`/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts`,`page`)};export{r as createMutationApi,i as editMutationApi};
2
+ //# sourceMappingURL=mutation-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-api.js","names":[],"sources":["../../../../../../../src/views/admin/posts/actions/create-edit/mutation-api.ts"],"sourcesContent":["\"use server\";\n\nimport type { z } from \"zod\";\n\nimport { fetcher } from \"@vitnode/core/lib/fetcher\";\nimport { revalidatePath } from \"next/cache\";\n\nimport type { zodCreatePostSchema } from \"@/api/modules/admin/posts/routes/create.route\";\n\nimport { postsAdminModule } from \"@/api/modules/admin/posts/posts.admin.module\";\n\nexport const createMutationApi = async (\n body: z.infer<typeof zodCreatePostSchema>,\n) => {\n const res = await fetcher(postsAdminModule, {\n prefixPath: \"/admin\",\n method: \"post\",\n module: \"posts\",\n path: \"/\",\n args: {\n body,\n },\n });\n\n if (res.status !== 201) {\n return { error: await res.text() };\n }\n\n revalidatePath(\n \"/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts\",\n \"page\",\n );\n};\n\nexport const editMutationApi = async ({\n id,\n ...body\n}: z.infer<typeof zodCreatePostSchema> & { id: number }) => {\n const res = await fetcher(postsAdminModule, {\n prefixPath: \"/admin\",\n method: \"put\",\n module: \"posts\",\n path: \"/{id}\",\n args: {\n params: {\n id,\n },\n body,\n },\n });\n\n if (res.status !== 200) {\n return { error: await res.text() };\n }\n\n revalidatePath(\n \"/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts\",\n \"page\",\n );\n};\n"],"mappings":"6MAWA,MAAa,EAAoB,KAC/B,IACG,CACH,IAAM,EAAM,MAAM,EAAQ,EAAkB,CAC1C,WAAY,SACZ,OAAQ,OACR,OAAQ,QACR,KAAM,IACN,KAAM,CACJ,MACF,CACF,CAAC,EAED,GAAI,EAAI,SAAW,IACjB,MAAO,CAAE,MAAO,MAAM,EAAI,KAAK,CAAE,EAGnC,EACE,6DACA,MACF,CACF,EAEa,EAAkB,MAAO,CACpC,KACA,GAAG,KACuD,CAC1D,IAAM,EAAM,MAAM,EAAQ,EAAkB,CAC1C,WAAY,SACZ,OAAQ,MACR,OAAQ,QACR,KAAM,QACN,KAAM,CACJ,OAAQ,CACN,IACF,EACA,MACF,CACF,CAAC,EAED,GAAI,EAAI,SAAW,IACjB,MAAO,CAAE,MAAO,MAAM,EAAI,KAAK,CAAE,EAGnC,EACE,6DACA,MACF,CACF"}
@@ -1,5 +1,8 @@
1
- export declare const DeleteAction: ({ title, id }: {
2
- id: number;
3
- title: string;
1
+ //#region src/views/admin/posts/table/actions/delete/delete-action.d.ts
2
+ declare const DeleteAction: ({ title, id }: {
3
+ id: number;
4
+ title: string;
4
5
  }) => import("react").JSX.Element | null;
6
+ //#endregion
7
+ export { DeleteAction };
5
8
  //# sourceMappingURL=delete-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete-action.d.ts","sourceRoot":"","sources":["../../../../../../../../src/views/admin/posts/table/actions/delete/delete-action.tsx"],"names":[],"mappings":"AAmBA,eAAO,MAAM,YAAY,GAAI,eAAe;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,uCAmDxE,CAAC"}
1
+ {"version":3,"file":"delete-action.d.ts","names":[],"sources":["../../../../../../../../src/views/admin/posts/table/actions/delete/delete-action.tsx"],"mappings":";cAmBa,iBAAgB,OAAA;EAAiB;EAAY;sBAAe,IAAA"}
@@ -1 +1,2 @@
1
- "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{ConfirmActionAlertDialog}from"@vitnode/core/components/confirm-action/confirm-action-alert-dialog";import{useAdminStaffPermission}from"@vitnode/core/components/staff-permission/provider";import{Button}from"@vitnode/core/components/ui/button";import{Tooltip,TooltipContent,TooltipProvider,TooltipTrigger}from"@vitnode/core/components/ui/tooltip";import{Trash2Icon}from"lucide-react";import{useTranslations}from"next-intl";import{toast}from"sonner";import{CONFIG_PLUGIN}from"../../../../../../const.js";import{mutationApi}from"./mutation-api.js";export const DeleteAction=({title,id})=>{const t=useTranslations("@vitnode/blog.admin.posts.delete");const tGlobal=useTranslations("core.global");const canDelete=useAdminStaffPermission({plugin:CONFIG_PLUGIN.pluginId,module:"posts",permission:"can_delete"});if(!canDelete)return null;return _jsx(TooltipProvider,{children:_jsxs(Tooltip,{children:[_jsx(ConfirmActionAlertDialog,{description:t.rich("desc",{title:()=>_jsx("span",{className:"text-foreground font-bold",children:title})}),onSubmit:async({onClose})=>{const mutation=await mutationApi(id);if(mutation?.error){toast.error(tGlobal("errors.title"),{description:tGlobal("errors.internal_server_error")});return}toast.success(t("success"),{description:title});onClose()},textSubmit:t("confirm"),title:t("title"),children:_jsx(TooltipTrigger,{render:_jsx(Button,{"aria-label":t("title"),size:"icon",variant:"destructive",children:_jsx(Trash2Icon,{className:"size-4"})})})}),_jsx(TooltipContent,{children:t("title")})]})})};
1
+ "use client";import{CONFIG_PLUGIN as e}from"../../../../../../const.js";import{mutationApi as t}from"./mutation-api.js";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{Trash2Icon as i}from"lucide-react";import{Button as a}from"@vitnode/core/components/ui/button";import{useTranslations as o}from"next-intl";import{ConfirmActionAlertDialog as s}from"@vitnode/core/components/confirm-action/confirm-action-alert-dialog";import{useAdminStaffPermission as c}from"@vitnode/core/components/staff-permission/provider";import{Tooltip as l,TooltipContent as u,TooltipProvider as d,TooltipTrigger as f}from"@vitnode/core/components/ui/tooltip";import{toast as p}from"sonner";const m=({title:m,id:h})=>{let g=o(`@vitnode/blog.admin.posts.delete`),_=o(`core.global`);return c({plugin:e.pluginId,module:`posts`,permission:`can_delete`})?n(d,{children:r(l,{children:[n(s,{description:g.rich(`desc`,{title:()=>n(`span`,{className:`text-foreground font-bold`,children:m})}),onSubmit:async({onClose:e})=>{if((await t(h))?.error){p.error(_(`errors.title`),{description:_(`errors.internal_server_error`)});return}p.success(g(`success`),{description:m}),e()},textSubmit:g(`confirm`),title:g(`title`),children:n(f,{render:n(a,{"aria-label":g(`title`),size:`icon`,variant:`destructive`,children:n(i,{className:`size-4`})})})}),n(u,{children:g(`title`)})]})}):null};export{m as DeleteAction};
2
+ //# sourceMappingURL=delete-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-action.js","names":[],"sources":["../../../../../../../../src/views/admin/posts/table/actions/delete/delete-action.tsx"],"sourcesContent":["\"use client\";\n\nimport { ConfirmActionAlertDialog } from \"@vitnode/core/components/confirm-action/confirm-action-alert-dialog\";\nimport { useAdminStaffPermission } from \"@vitnode/core/components/staff-permission/provider\";\nimport { Button } from \"@vitnode/core/components/ui/button\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@vitnode/core/components/ui/tooltip\";\nimport { Trash2Icon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport { toast } from \"sonner\";\n\nimport { CONFIG_PLUGIN } from \"@/const\";\n\nimport { mutationApi } from \"./mutation-api\";\n\nexport const DeleteAction = ({ title, id }: { id: number; title: string }) => {\n const t = useTranslations(\"@vitnode/blog.admin.posts.delete\");\n const tGlobal = useTranslations(\"core.global\");\n const canDelete = useAdminStaffPermission({\n plugin: CONFIG_PLUGIN.pluginId,\n module: \"posts\",\n permission: \"can_delete\",\n });\n\n if (!canDelete) return null;\n\n return (\n <TooltipProvider>\n <Tooltip>\n <ConfirmActionAlertDialog\n description={t.rich(\"desc\", {\n title: () => (\n <span className=\"text-foreground font-bold\">{title}</span>\n ),\n })}\n onSubmit={async ({ onClose }) => {\n const mutation = await mutationApi(id);\n if (mutation?.error) {\n toast.error(tGlobal(\"errors.title\"), {\n description: tGlobal(\"errors.internal_server_error\"),\n });\n\n return;\n }\n\n toast.success(t(\"success\"), {\n description: title,\n });\n onClose();\n }}\n textSubmit={t(\"confirm\")}\n title={t(\"title\")}\n >\n <TooltipTrigger\n render={\n <Button aria-label={t(\"title\")} size=\"icon\" variant=\"destructive\">\n <Trash2Icon className=\"size-4\" />\n </Button>\n }\n />\n </ConfirmActionAlertDialog>\n\n <TooltipContent>{t(\"title\")}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n};\n"],"mappings":"kqBAmBA,MAAa,GAAgB,CAAE,QAAO,QAAwC,CAC5E,IAAM,EAAI,EAAgB,kCAAkC,EACtD,EAAU,EAAgB,aAAa,EAS7C,OARkB,EAAwB,CACxC,OAAQ,EAAc,SACtB,OAAQ,QACR,WAAY,YACd,CAEa,EAGX,EAAC,EAAD,CAAA,SACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CACE,YAAa,EAAE,KAAK,OAAQ,CAC1B,UACE,EAAC,OAAD,CAAM,UAAU,qCAA6B,CAAY,CAAA,CAE7D,CAAC,EACD,SAAU,MAAO,CAAE,aAAc,CAE/B,IAAI,MADmB,EAAY,CAAE,EAAA,EACvB,MAAO,CACnB,EAAM,MAAM,EAAQ,cAAc,EAAG,CACnC,YAAa,EAAQ,8BAA8B,CACrD,CAAC,EAED,MACF,CAEA,EAAM,QAAQ,EAAE,SAAS,EAAG,CAC1B,YAAa,CACf,CAAC,EACD,EAAQ,CACV,EACA,WAAY,EAAE,SAAS,EACvB,MAAO,EAAE,OAAO,WAEhB,EAAC,EAAD,CACE,OACE,EAAC,EAAD,CAAQ,aAAY,EAAE,OAAO,EAAG,KAAK,OAAO,QAAQ,uBAClD,EAAC,EAAD,CAAY,UAAU,QAAU,CAAA,CAC1B,CAAA,CAEX,CAAA,CACuB,CAAA,EAE1B,EAAC,EAAD,CAAA,SAAiB,EAAE,OAAO,CAAkB,CAAA,CACrC,CAAA,CAAA,CACM,CAAA,EAxCI,IA0CzB"}
@@ -1,4 +1,7 @@
1
- export declare const mutationApi: (id: number) => Promise<{
2
- error: string;
1
+ //#region src/views/admin/posts/table/actions/delete/mutation-api.d.ts
2
+ declare const mutationApi: (id: number) => Promise<{
3
+ error: string;
3
4
  } | undefined>;
5
+ //#endregion
6
+ export { mutationApi };
4
7
  //# sourceMappingURL=mutation-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-api.d.ts","sourceRoot":"","sources":["../../../../../../../../src/views/admin/posts/table/actions/delete/mutation-api.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW,GAAU,IAAI,MAAM;;cAqB3C,CAAC"}
1
+ {"version":3,"file":"mutation-api.d.ts","names":[],"sources":["../../../../../../../../src/views/admin/posts/table/actions/delete/mutation-api.ts"],"mappings":";cAOa,cAAqB,eAAU"}
@@ -1 +1,2 @@
1
- "use server";import{fetcher}from"@vitnode/core/lib/fetcher";import{revalidatePath}from"next/cache";import{postsAdminModule}from"../../../../../../api/modules/admin/posts/posts.admin.module.js";export const mutationApi=async id=>{const res=await fetcher(postsAdminModule,{prefixPath:"/admin",method:"delete",path:"/{id}",module:"posts",args:{params:{id}}});if(!res.ok){return{error:await res.text()}}revalidatePath("/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts","page")};
1
+ "use server";import{postsAdminModule as e}from"../../../../../../api/modules/admin/posts/posts.admin.module.js";import{fetcher as t}from"@vitnode/core/lib/fetcher";import{revalidatePath as n}from"next/cache";const r=async r=>{let i=await t(e,{prefixPath:`/admin`,method:`delete`,path:`/{id}`,module:`posts`,args:{params:{id:r}}});if(!i.ok)return{error:await i.text()};n(`/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts`,`page`)};export{r as mutationApi};
2
+ //# sourceMappingURL=mutation-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-api.js","names":[],"sources":["../../../../../../../../src/views/admin/posts/table/actions/delete/mutation-api.ts"],"sourcesContent":["\"use server\";\n\nimport { fetcher } from \"@vitnode/core/lib/fetcher\";\nimport { revalidatePath } from \"next/cache\";\n\nimport { postsAdminModule } from \"@/api/modules/admin/posts/posts.admin.module\";\n\nexport const mutationApi = async (id: number) => {\n const res = await fetcher(postsAdminModule, {\n prefixPath: \"/admin\",\n method: \"delete\",\n path: \"/{id}\",\n module: \"posts\",\n args: {\n params: {\n id,\n },\n },\n });\n\n if (!res.ok) {\n return { error: await res.text() };\n }\n\n revalidatePath(\n \"/[locale]/admin/(auth)/(plugins)/(vitnode-blog)/blog/posts\",\n \"page\",\n );\n};\n"],"mappings":"gNAOA,MAAa,EAAc,KAAO,IAAe,CAC/C,IAAM,EAAM,MAAM,EAAQ,EAAkB,CAC1C,WAAY,SACZ,OAAQ,SACR,KAAM,QACN,OAAQ,QACR,KAAM,CACJ,OAAQ,CACN,IACF,CACF,CACF,CAAC,EAED,GAAI,CAAC,EAAI,GACP,MAAO,CAAE,MAAO,MAAM,EAAI,KAAK,CAAE,EAGnC,EACE,6DACA,MACF,CACF"}
@@ -1,9 +1,12 @@
1
+ import { zodPostSchema } from "../../../../../api/modules/posts/routes/get.route.js";
1
2
  import React from "react";
3
+ //#region src/views/admin/posts/table/actions/edit-action.d.ts
2
4
  declare const CreateEditActionPostsAdmin: React.ComponentType<{
3
- data?: import("zod").infer<typeof import("../../../../../api/modules/posts/routes/get.route").zodPostSchema> & {
4
- id?: number;
5
- };
5
+ data?: import("zod").infer<typeof zodPostSchema> & {
6
+ id?: number;
7
+ };
6
8
  }>;
7
- export declare const EditAction: (props: Required<React.ComponentProps<typeof CreateEditActionPostsAdmin>>) => React.JSX.Element | null;
8
- export {};
9
+ declare const EditAction: (props: Required<React.ComponentProps<typeof CreateEditActionPostsAdmin>>) => React.JSX.Element | null;
10
+ //#endregion
11
+ export { EditAction };
9
12
  //# sourceMappingURL=edit-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"edit-action.d.ts","sourceRoot":"","sources":["../../../../../../../src/views/admin/posts/table/actions/edit-action.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,QAAA,MAAM,0BAA0B;;UAOqC,CAAC;;EAHrE,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,OAAO,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,0BAA0B,CAAC,CAAC,6BA0CzE,CAAC"}
1
+ {"version":3,"file":"edit-action.d.ts","names":[],"sources":["../../../../../../../src/views/admin/posts/table/actions/edit-action.tsx"],"mappings":";;;cA0BM,4BAA0B,MAAA;oCAA1B;;;;cAMO,aACX,OAAO,SAAS,MAAM,sBAAsB,iCAA4B,MAAA,IAAA"}
@@ -1 +1,2 @@
1
- "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useAdminStaffPermission}from"@vitnode/core/components/staff-permission/provider";import{Button}from"@vitnode/core/components/ui/button";import{Dialog,DialogContent,DialogDescription,DialogHeader,DialogTitle,DialogTrigger}from"@vitnode/core/components/ui/dialog";import{Loader}from"@vitnode/core/components/ui/loader";import{Tooltip,TooltipContent,TooltipProvider,TooltipTrigger}from"@vitnode/core/components/ui/tooltip";import{PencilIcon}from"lucide-react";import{useTranslations}from"next-intl";import dynamic from"next/dynamic";import React from"react";import{CONFIG_PLUGIN}from"../../../../../const.js";const CreateEditActionPostsAdmin=dynamic(async()=>import("../../actions/create-edit/create-edit.js").then(mod=>({default:mod.CreateEditActionPostsAdmin})));export const EditAction=props=>{const t=useTranslations("@vitnode/blog.admin.posts.edit");const canEdit=useAdminStaffPermission({plugin:CONFIG_PLUGIN.pluginId,module:"posts",permission:"can_edit"});if(!canEdit)return null;return _jsxs(Dialog,{children:[_jsx(TooltipProvider,{children:_jsxs(Tooltip,{children:[_jsx(TooltipTrigger,{render:_jsx(DialogTrigger,{render:_jsx(Button,{"aria-label":t("title"),size:"icon",variant:"ghost"}),children:_jsx(PencilIcon,{})})}),_jsx(TooltipContent,{children:t("title")})]})}),_jsxs(DialogContent,{children:[_jsxs(DialogHeader,{children:[_jsx(DialogTitle,{children:t("title")}),_jsx(DialogDescription,{children:props.data.title})]}),_jsx(React.Suspense,{fallback:_jsx(Loader,{}),children:_jsx(CreateEditActionPostsAdmin,{...props})})]})]})};
1
+ "use client";import{CONFIG_PLUGIN as e}from"../../../../../const.js";import{jsx as t,jsxs as n}from"react/jsx-runtime";import{PencilIcon as r}from"lucide-react";import i from"next/dynamic";import a from"react";import{Button as o}from"@vitnode/core/components/ui/button";import{Dialog as s,DialogContent as c,DialogDescription as l,DialogHeader as u,DialogTitle as d,DialogTrigger as f}from"@vitnode/core/components/ui/dialog";import{Loader as p}from"@vitnode/core/components/ui/loader";import{useTranslations as m}from"next-intl";import{useAdminStaffPermission as h}from"@vitnode/core/components/staff-permission/provider";import{Tooltip as g,TooltipContent as _,TooltipProvider as v,TooltipTrigger as y}from"@vitnode/core/components/ui/tooltip";const b=i(async()=>import(`../../actions/create-edit/create-edit.js`).then(e=>({default:e.CreateEditActionPostsAdmin}))),x=i=>{let x=m(`@vitnode/blog.admin.posts.edit`);return h({plugin:e.pluginId,module:`posts`,permission:`can_edit`})?n(s,{children:[t(v,{children:n(g,{children:[t(y,{render:t(f,{render:t(o,{"aria-label":x(`title`),size:`icon`,variant:`ghost`}),children:t(r,{})})}),t(_,{children:x(`title`)})]})}),n(c,{children:[n(u,{children:[t(d,{children:x(`title`)}),t(l,{children:i.data.title})]}),t(a.Suspense,{fallback:t(p,{}),children:t(b,{...i})})]})]}):null};export{x as EditAction};
2
+ //# sourceMappingURL=edit-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-action.js","names":[],"sources":["../../../../../../../src/views/admin/posts/table/actions/edit-action.tsx"],"sourcesContent":["\"use client\";\n\nimport { useAdminStaffPermission } from \"@vitnode/core/components/staff-permission/provider\";\nimport { Button } from \"@vitnode/core/components/ui/button\";\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@vitnode/core/components/ui/dialog\";\nimport { Loader } from \"@vitnode/core/components/ui/loader\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@vitnode/core/components/ui/tooltip\";\nimport { PencilIcon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport dynamic from \"next/dynamic\";\nimport React from \"react\";\n\nimport { CONFIG_PLUGIN } from \"@/const\";\n\nconst CreateEditActionPostsAdmin = dynamic(async () =>\n import(\"../../actions/create-edit/create-edit\").then(mod => ({\n default: mod.CreateEditActionPostsAdmin,\n })),\n);\n\nexport const EditAction = (\n props: Required<React.ComponentProps<typeof CreateEditActionPostsAdmin>>,\n) => {\n const t = useTranslations(\"@vitnode/blog.admin.posts.edit\");\n const canEdit = useAdminStaffPermission({\n plugin: CONFIG_PLUGIN.pluginId,\n module: \"posts\",\n permission: \"can_edit\",\n });\n\n if (!canEdit) return null;\n\n return (\n <Dialog>\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger\n render={\n <DialogTrigger\n render={\n <Button aria-label={t(\"title\")} size=\"icon\" variant=\"ghost\" />\n }\n >\n <PencilIcon />\n </DialogTrigger>\n }\n />\n <TooltipContent>{t(\"title\")}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{t(\"title\")}</DialogTitle>\n <DialogDescription>{props.data.title}</DialogDescription>\n </DialogHeader>\n\n <React.Suspense fallback={<Loader />}>\n <CreateEditActionPostsAdmin {...props} />\n </React.Suspense>\n </DialogContent>\n </Dialog>\n );\n};\n"],"mappings":"0uBA0BA,MAAM,EAA6B,EAAQ,SACzC,OAAO,2CAAwC,CAAC,KAAK,IAAQ,CAC3D,QAAS,EAAI,0BACf,EAAE,CACJ,EAEa,EACX,GACG,CACH,IAAM,EAAI,EAAgB,gCAAgC,EAS1D,OARgB,EAAwB,CACtC,OAAQ,EAAc,SACtB,OAAQ,QACR,WAAY,UACd,CAEW,EAGT,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CACE,OACE,EAAC,EAAD,CACE,OACE,EAAC,EAAD,CAAQ,aAAY,EAAE,OAAO,EAAG,KAAK,OAAO,QAAQ,OAAS,CAAA,WAG/D,EAAC,EAAD,CAAa,CAAA,CACA,CAAA,CAElB,CAAA,EACD,EAAC,EAAD,CAAA,SAAiB,EAAE,OAAO,CAAkB,CAAA,CACrC,CAAA,CAAA,CACM,CAAA,EAEjB,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAA,SAAc,EAAE,OAAO,CAAe,CAAA,EACtC,EAAC,EAAD,CAAA,SAAoB,EAAM,KAAK,KAAyB,CAAA,CAC5C,CAAA,CAAA,EAEd,EAAC,EAAM,SAAP,CAAgB,SAAU,EAAC,EAAD,CAAS,CAAA,WACjC,EAAC,EAAD,CAA4B,GAAI,CAAQ,CAAA,CAC1B,CAAA,CACH,CAAA,CAAA,CACT,CAAA,CAAA,EA/BW,IAiCvB"}
@@ -1,4 +1,7 @@
1
- export declare const PostsAdminView: ({ searchParams, }: {
2
- searchParams: Promise<Record<string, string | string[] | undefined>>;
1
+ //#region src/views/admin/posts/table/posts-admin-view.d.ts
2
+ declare const PostsAdminView: ({ searchParams }: {
3
+ searchParams: Promise<Record<string, string | string[] | undefined>>;
3
4
  }) => Promise<import("react").JSX.Element>;
5
+ //#endregion
6
+ export { PostsAdminView };
4
7
  //# sourceMappingURL=posts-admin-view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"posts-admin-view.d.ts","sourceRoot":"","sources":["../../../../../../src/views/admin/posts/table/posts-admin-view.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,GAAU,mBAElC;IACD,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;CACtE,yCAiEA,CAAC"}
1
+ {"version":3,"file":"posts-admin-view.d.ts","names":[],"sources":["../../../../../../src/views/admin/posts/table/posts-admin-view.tsx"],"mappings":";cAUa,mBAAwB;EAGnC,cAAc,QAAQ;MACvB,wBAAA,IAAA"}
@@ -1 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{DateFormat}from"@vitnode/core/components/date-format";import{DataTable}from"@vitnode/core/components/table/data-table";import{fetcher}from"@vitnode/core/lib/fetcher";import{getTranslations}from"next-intl/server";import{postsModule}from"../../../../api/modules/posts/posts.module.js";import{DeleteAction}from"./actions/delete/delete-action.js";import{EditAction}from"./actions/edit-action.js";export const PostsAdminView=async({searchParams})=>{const t=await getTranslations("@vitnode/blog.admin.posts.table");const query=await searchParams;const res=await fetcher(postsModule,{path:"/",method:"get",module:"posts",args:{query},withPagination:true,options:{cache:"force-cache"}});const data=await res.json();return _jsx(DataTable,{columns:[{id:"id",label:"ID",className:"w-24"},{id:"title",label:t("title")},{id:"category",label:t("category"),className:"w-48",cell:({row})=>row.category.title},{id:"updatedAt",label:t("updated_at"),className:"w-48",cell:({row})=>_jsx(DateFormat,{date:row.updatedAt})},{id:"actions",label:"",className:"w-10",cell:({row})=>_jsxs(_Fragment,{children:[_jsx(EditAction,{data:row}),_jsx(DeleteAction,{...row})]})}],edges:data.edges.map(edge=>({...edge})),id:"posts-table",order:{columns:["createdAt","updatedAt"],defaultOrder:{column:"createdAt",order:"desc"}},pageInfo:data.pageInfo})};
1
+ import{postsModule as e}from"../../../../api/modules/posts/posts.module.js";import{DeleteAction as t}from"./actions/delete/delete-action.js";import{EditAction as n}from"./actions/edit-action.js";import{Fragment as r,jsx as i,jsxs as a}from"react/jsx-runtime";import{DataTable as o}from"@vitnode/core/components/table/data-table";import{getTranslations as s}from"next-intl/server";import{DateFormat as c}from"@vitnode/core/components/date-format";import{fetcher as l}from"@vitnode/core/lib/fetcher";const u=async({searchParams:u})=>{let d=await s(`@vitnode/blog.admin.posts.table`),f=await(await l(e,{path:`/`,method:`get`,module:`posts`,args:{query:await u},withPagination:!0,options:{cache:`force-cache`}})).json();return i(o,{columns:[{accessorKey:`id`,header:`ID`,className:`w-24`},{accessorKey:`title`,header:d(`title`)},{accessorKey:`category`,header:d(`category`),className:`w-48`,cell:({row:e})=>e.category.title},{accessorKey:`updatedAt`,header:d(`updated_at`),className:`w-48`,cell:({row:e})=>i(c,{date:e.updatedAt})},{id:`actions`,header:``,align:`right`,className:`w-10`,cell:({row:e})=>a(r,{children:[i(n,{data:e}),i(t,{...e})]})}],edges:f.edges.map(e=>({...e})),id:`posts-table`,order:{columns:[`createdAt`,`updatedAt`],defaultOrder:{column:`createdAt`,order:`desc`}},pageInfo:f.pageInfo})};export{u as PostsAdminView};
2
+ //# sourceMappingURL=posts-admin-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"posts-admin-view.js","names":[],"sources":["../../../../../../src/views/admin/posts/table/posts-admin-view.tsx"],"sourcesContent":["import { DateFormat } from \"@vitnode/core/components/date-format\";\nimport { DataTable } from \"@vitnode/core/components/table/data-table\";\nimport { fetcher } from \"@vitnode/core/lib/fetcher\";\nimport { getTranslations } from \"next-intl/server\";\n\nimport { postsModule } from \"@/api/modules/posts/posts.module\";\n\nimport { DeleteAction } from \"./actions/delete/delete-action\";\nimport { EditAction } from \"./actions/edit-action\";\n\nexport const PostsAdminView = async ({\n searchParams,\n}: {\n searchParams: Promise<Record<string, string | string[] | undefined>>;\n}) => {\n const t = await getTranslations(\"@vitnode/blog.admin.posts.table\");\n const query = await searchParams;\n const res = await fetcher(postsModule, {\n path: \"/\",\n method: \"get\",\n module: \"posts\",\n args: {\n query,\n },\n withPagination: true,\n options: {\n cache: \"force-cache\",\n },\n });\n const data = await res.json();\n\n return (\n <DataTable\n columns={[\n {\n accessorKey: \"id\",\n header: \"ID\",\n className: \"w-24\",\n },\n {\n accessorKey: \"title\",\n header: t(\"title\"),\n },\n {\n accessorKey: \"category\",\n header: t(\"category\"),\n className: \"w-48\",\n cell: ({ row }) => row.category.title,\n },\n {\n accessorKey: \"updatedAt\",\n header: t(\"updated_at\"),\n className: \"w-48\",\n cell: ({ row }) => <DateFormat date={row.updatedAt} />,\n },\n {\n id: \"actions\",\n header: \"\",\n align: \"right\",\n className: \"w-10\",\n cell: ({ row }) => (\n <>\n <EditAction data={row} />\n <DeleteAction {...row} />\n </>\n ),\n },\n ]}\n edges={data.edges.map(edge => ({ ...edge }))}\n id=\"posts-table\"\n order={{\n columns: [\"createdAt\", \"updatedAt\"],\n defaultOrder: {\n column: \"createdAt\",\n order: \"desc\",\n },\n }}\n pageInfo={data.pageInfo}\n />\n );\n};\n"],"mappings":"kfAUA,MAAa,EAAiB,MAAO,CACnC,kBAGI,CACJ,IAAM,EAAI,MAAM,EAAgB,iCAAiC,EAc3D,EAAO,MAAM,MAZD,EAAQ,EAAa,CACrC,KAAM,IACN,OAAQ,MACR,OAAQ,QACR,KAAM,CACJ,MAAA,MANgB,CAOlB,EACA,eAAgB,GAChB,QAAS,CACP,MAAO,aACT,CACF,CAAC,EAAA,CACsB,KAAK,EAE5B,OACE,EAAC,EAAD,CACE,QAAS,CACP,CACE,YAAa,KACb,OAAQ,KACR,UAAW,MACb,EACA,CACE,YAAa,QACb,OAAQ,EAAE,OAAO,CACnB,EACA,CACE,YAAa,WACb,OAAQ,EAAE,UAAU,EACpB,UAAW,OACX,MAAO,CAAE,SAAU,EAAI,SAAS,KAClC,EACA,CACE,YAAa,YACb,OAAQ,EAAE,YAAY,EACtB,UAAW,OACX,MAAO,CAAE,SAAU,EAAC,EAAD,CAAY,KAAM,EAAI,SAAY,CAAA,CACvD,EACA,CACE,GAAI,UACJ,OAAQ,GACR,MAAO,QACP,UAAW,OACX,MAAO,CAAE,SACP,EAAA,EAAA,CAAA,SAAA,CACE,EAAC,EAAD,CAAY,KAAM,CAAM,CAAA,EACxB,EAAC,EAAD,CAAc,GAAI,CAAM,CAAA,CACxB,CAAA,CAAA,CAEN,CACF,EACA,MAAO,EAAK,MAAM,IAAI,IAAS,CAAE,GAAG,CAAK,EAAE,EAC3C,GAAG,cACH,MAAO,CACL,QAAS,CAAC,YAAa,WAAW,EAClC,aAAc,CACZ,OAAQ,YACR,MAAO,MACT,CACF,EACA,SAAU,EAAK,QAChB,CAAA,CAEL"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitnode/blog",
3
- "version": "1.2.0-canary.75",
3
+ "version": "1.2.0-canary.76",
4
4
  "description": "Blog plugin for VitNode, providing a blogging platform with Next.js and Hono.js.",
5
5
  "author": "VitNode Team",
6
6
  "license": "MIT",
@@ -40,23 +40,21 @@
40
40
  "react-hook-form": "^7.80.0",
41
41
  "sonner": "^2.0.7",
42
42
  "zod": "^4.4.3",
43
- "@vitnode/core": "1.2.0-canary.75"
43
+ "@vitnode/core": "1.2.0-canary.76"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@react-email/ui": "^6.6.6",
47
- "@swc/cli": "^0.8.1",
48
- "@swc/core": "^1.15.43",
49
47
  "@types/react": "^19.2.17",
50
48
  "@types/react-dom": "^19.2.3",
51
49
  "concurrently": "^10.0.3",
52
50
  "eslint": "^10.5.0",
53
- "tsc-alias": "^1.8.17",
51
+ "tsdown": "^0.22.4",
54
52
  "typescript": "^6.0.3",
55
- "@vitnode/config": "1.2.0-canary.75"
53
+ "@vitnode/config": "1.2.0-canary.76"
56
54
  },
57
55
  "scripts": {
58
- "build:plugins": "tsc && swc src -d dist --config-file .swcrc && tsc-alias -p tsconfig.json",
59
- "dev": "concurrently \"tsc -w --preserveWatchOutput\" \"swc src -d dist --config-file .swcrc -w\" \"tsc-alias -w\" \"vitnode plugin --w\"",
56
+ "build:plugins": "tsdown",
57
+ "dev": "concurrently \"tsdown --watch\" \"vitnode plugin --w\"",
60
58
  "dev:email": "email dev --dir src/emails",
61
59
  "lint": "eslint .",
62
60
  "lint:fix": "eslint . --fix"
@@ -0,0 +1,5 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/tsconfig",
3
+ "extends": "./tsconfig.json",
4
+ "exclude": ["node_modules", "**/*.test.ts", "**/*.test.tsx"]
5
+ }