-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue b/ui/console-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue
index b1c18a569..f469af09d 100644
--- a/ui/console-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue
+++ b/ui/console-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue
@@ -265,7 +265,7 @@ const viewType = useLocalStorage("attachment-selector-view-type", "grid");
-
+
{{ $t("core.common.buttons.upload") }}
@@ -286,7 +286,7 @@ const viewType = useLocalStorage("attachment-selector-view-type", "grid");
-
+
{{ $t("core.attachment.empty.actions.upload") }}
diff --git a/ui/console-src/modules/contents/comments/components/CommentListItem.vue b/ui/console-src/modules/contents/comments/components/CommentListItem.vue
index 212f99498..02cdad0d0 100644
--- a/ui/console-src/modules/contents/comments/components/CommentListItem.vue
+++ b/ui/console-src/modules/contents/comments/components/CommentListItem.vue
@@ -382,7 +382,7 @@ const { operationItems } = useOperationItemExtensionPoint(
-
+
{{ $t("core.comment.reply_empty.new") }}
diff --git a/ui/console-src/modules/contents/pages/DeletedSinglePageList.vue b/ui/console-src/modules/contents/pages/DeletedSinglePageList.vue
index 85ce24d89..6df64f7bc 100644
--- a/ui/console-src/modules/contents/pages/DeletedSinglePageList.vue
+++ b/ui/console-src/modules/contents/pages/DeletedSinglePageList.vue
@@ -217,7 +217,7 @@ watch(
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/contents/pages/SinglePageEditor.vue b/ui/console-src/modules/contents/pages/SinglePageEditor.vue
index 5615d6102..ef902d790 100644
--- a/ui/console-src/modules/contents/pages/SinglePageEditor.vue
+++ b/ui/console-src/modules/contents/pages/SinglePageEditor.vue
@@ -486,7 +486,7 @@ async function handleUploadImage(file: File, options?: AxiosRequestConfig) {
"
>
-
+
{{ $t("core.page_editor.actions.snapshots") }}
@@ -497,13 +497,13 @@ async function handleUploadImage(file: File, options?: AxiosRequestConfig) {
@click="handlePreview"
>
-
+
{{ $t("core.common.buttons.preview") }}
-
+
{{ $t("core.common.buttons.save") }}
@@ -514,7 +514,7 @@ async function handleUploadImage(file: File, options?: AxiosRequestConfig) {
@click="handleOpenSettingModal"
>
-
+
{{ $t("core.common.buttons.setting") }}
@@ -524,7 +524,7 @@ async function handleUploadImage(file: File, options?: AxiosRequestConfig) {
@click="handlePublishClick"
>
-
+
{{ $t("core.common.buttons.publish") }}
diff --git a/ui/console-src/modules/contents/pages/SinglePageList.vue b/ui/console-src/modules/contents/pages/SinglePageList.vue
index b3fcb262f..429fb53c6 100644
--- a/ui/console-src/modules/contents/pages/SinglePageList.vue
+++ b/ui/console-src/modules/contents/pages/SinglePageList.vue
@@ -298,7 +298,7 @@ watch(selectedPageNames, (newValue) => {
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
@@ -436,7 +436,7 @@ watch(selectedPageNames, (newValue) => {
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/contents/pages/components/SinglePageSettingModal.vue b/ui/console-src/modules/contents/pages/components/SinglePageSettingModal.vue
index f30ff8654..a5099485b 100644
--- a/ui/console-src/modules/contents/pages/components/SinglePageSettingModal.vue
+++ b/ui/console-src/modules/contents/pages/components/SinglePageSettingModal.vue
@@ -468,6 +468,7 @@ const { handleGenerateSlug } = useSlugify(
"
:loading="publishCanceling"
type="danger"
+ ghost
@click="handleUnpublish()"
>
{{ $t("core.common.buttons.cancel_publish") }}
diff --git a/ui/console-src/modules/contents/posts/DeletedPostList.vue b/ui/console-src/modules/contents/posts/DeletedPostList.vue
index 16fe12509..49d71c642 100644
--- a/ui/console-src/modules/contents/posts/DeletedPostList.vue
+++ b/ui/console-src/modules/contents/posts/DeletedPostList.vue
@@ -227,7 +227,7 @@ watch(
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/contents/posts/PostEditor.vue b/ui/console-src/modules/contents/posts/PostEditor.vue
index cd783c497..c41d6936d 100644
--- a/ui/console-src/modules/contents/posts/PostEditor.vue
+++ b/ui/console-src/modules/contents/posts/PostEditor.vue
@@ -522,7 +522,7 @@ useSlugify(
"
>
-
+
{{ $t("core.post_editor.actions.snapshots") }}
@@ -533,13 +533,13 @@ useSlugify(
@click="handlePreview"
>
-
+
{{ $t("core.common.buttons.preview") }}
-
+
{{ $t("core.common.buttons.save") }}
@@ -550,7 +550,7 @@ useSlugify(
@click="handleOpenSettingModal"
>
-
+
{{ $t("core.common.buttons.setting") }}
@@ -560,7 +560,7 @@ useSlugify(
@click="handlePublishClick"
>
-
+
{{ $t("core.common.buttons.publish") }}
diff --git a/ui/console-src/modules/contents/posts/PostList.vue b/ui/console-src/modules/contents/posts/PostList.vue
index 9967231d9..2f2b6c110 100644
--- a/ui/console-src/modules/contents/posts/PostList.vue
+++ b/ui/console-src/modules/contents/posts/PostList.vue
@@ -404,7 +404,7 @@ watch(
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
@@ -583,7 +583,7 @@ watch(
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/contents/posts/categories/CategoryList.vue b/ui/console-src/modules/contents/posts/categories/CategoryList.vue
index fd2110821..772f1a625 100644
--- a/ui/console-src/modules/contents/posts/categories/CategoryList.vue
+++ b/ui/console-src/modules/contents/posts/categories/CategoryList.vue
@@ -74,7 +74,7 @@ async function handleUpdateInBatch() {
@click="creationModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
@@ -116,7 +116,7 @@ async function handleUpdateInBatch() {
@click="creationModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/contents/posts/components/PostSettingModal.vue b/ui/console-src/modules/contents/posts/components/PostSettingModal.vue
index 9606ee4f2..2f3ee64bf 100644
--- a/ui/console-src/modules/contents/posts/components/PostSettingModal.vue
+++ b/ui/console-src/modules/contents/posts/components/PostSettingModal.vue
@@ -498,6 +498,7 @@ const showCancelPublishButton = computed(() => {
v-if="showCancelPublishButton"
:loading="publishCanceling"
type="danger"
+ ghost
@click="handleUnpublish()"
>
{{ $t("core.common.buttons.cancel_publish") }}
diff --git a/ui/console-src/modules/contents/posts/tags/TagList.vue b/ui/console-src/modules/contents/posts/tags/TagList.vue
index f3cdd4e9e..6c28d52aa 100644
--- a/ui/console-src/modules/contents/posts/tags/TagList.vue
+++ b/ui/console-src/modules/contents/posts/tags/TagList.vue
@@ -173,7 +173,7 @@ watch(selectedTagNames, (newVal) => {
@click="editingModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
@@ -274,7 +274,7 @@ watch(selectedTagNames, (newVal) => {
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/dashboard/Dashboard.vue b/ui/console-src/modules/dashboard/Dashboard.vue
index 0dc5ba34f..fd6087b91 100644
--- a/ui/console-src/modules/dashboard/Dashboard.vue
+++ b/ui/console-src/modules/dashboard/Dashboard.vue
@@ -43,7 +43,7 @@ provide>(
@click="$router.push({ name: 'DashboardDesigner' })"
>
-
+
{{ $t("core.dashboard.actions.setting") }}
diff --git a/ui/console-src/modules/dashboard/DashboardDesigner.vue b/ui/console-src/modules/dashboard/DashboardDesigner.vue
index 4cb6e788e..929f428a0 100644
--- a/ui/console-src/modules/dashboard/DashboardDesigner.vue
+++ b/ui/console-src/modules/dashboard/DashboardDesigner.vue
@@ -37,7 +37,6 @@ import {
import type { GridLayout } from "vue-grid-layout";
import { useI18n } from "vue-i18n";
import { onBeforeRouteLeave, useRouter } from "vue-router";
-import RiArrowGoBackLine from "~icons/ri/arrow-go-back-line";
import RiBox3Line from "~icons/ri/box-3-line";
import RiFileCopyLine from "~icons/ri/file-copy-line";
import WidgetEditableItem from "./components/WidgetEditableItem.vue";
@@ -339,16 +338,13 @@ function handleCopyFromLayout(breakpoint: string) {
>
-
-
-
-
+
{{ $t("core.common.buttons.back") }}
-
+
{{ $t("core.dashboard_designer.actions.add_widget") }}
@@ -396,7 +392,7 @@ function handleCopyFromLayout(breakpoint: string) {
@click="handleSave"
>
-
+
{{ $t("core.common.buttons.save") }}
diff --git a/ui/console-src/modules/interface/menus/Menus.vue b/ui/console-src/modules/interface/menus/Menus.vue
index b810ff2be..89eaa51df 100644
--- a/ui/console-src/modules/interface/menus/Menus.vue
+++ b/ui/console-src/modules/interface/menus/Menus.vue
@@ -298,7 +298,7 @@ function getMenuItemRefDisplayName(menuItem: MenuTreeItem) {
@click="menuItemEditingModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/interface/themes/components/list-tabs/InstalledThemes.vue b/ui/console-src/modules/interface/themes/components/list-tabs/InstalledThemes.vue
index d2524316a..e5ddced85 100644
--- a/ui/console-src/modules/interface/themes/components/list-tabs/InstalledThemes.vue
+++ b/ui/console-src/modules/interface/themes/components/list-tabs/InstalledThemes.vue
@@ -85,7 +85,7 @@ const handleOpenPreview = (theme: Theme) => {
@click="activeTabId = 'local-upload'"
>
-
+
{{ $t("core.theme.common.buttons.install") }}
diff --git a/ui/console-src/modules/interface/themes/layouts/ThemeLayout.vue b/ui/console-src/modules/interface/themes/layouts/ThemeLayout.vue
index 99ee219d6..45155ba41 100644
--- a/ui/console-src/modules/interface/themes/layouts/ThemeLayout.vue
+++ b/ui/console-src/modules/interface/themes/layouts/ThemeLayout.vue
@@ -210,13 +210,13 @@ onMounted(() => {
-
+
{{ $t("core.common.buttons.preview") }}
-
+
{{ $t("core.theme.actions.management") }}
@@ -237,7 +237,7 @@ onMounted(() => {
-
+
{{ $t("core.theme.empty.actions.switch") }}
diff --git a/ui/console-src/modules/system/backup/Backups.vue b/ui/console-src/modules/system/backup/Backups.vue
index b04fda794..0eb609bb8 100644
--- a/ui/console-src/modules/system/backup/Backups.vue
+++ b/ui/console-src/modules/system/backup/Backups.vue
@@ -68,7 +68,7 @@ onMounted(async () => {
-
+
{{ $t("core.backup.operations.create.button") }}
diff --git a/ui/console-src/modules/system/overview/Overview.vue b/ui/console-src/modules/system/overview/Overview.vue
index 928939153..d8d0166af 100644
--- a/ui/console-src/modules/system/overview/Overview.vue
+++ b/ui/console-src/modules/system/overview/Overview.vue
@@ -200,7 +200,7 @@ const handleDownloadLogfile = () => {
-
+
{{ $t("core.common.buttons.copy") }}
diff --git a/ui/console-src/modules/system/plugins/PluginList.vue b/ui/console-src/modules/system/plugins/PluginList.vue
index 136e5eaa9..ebbbc5255 100644
--- a/ui/console-src/modules/system/plugins/PluginList.vue
+++ b/ui/console-src/modules/system/plugins/PluginList.vue
@@ -169,7 +169,7 @@ onMounted(() => {
@click="$router.push({ name: 'PluginExtensionPointSettings' })"
>
-
+
{{ $t("core.plugin.actions.extension-point-settings") }}
@@ -181,7 +181,7 @@ onMounted(() => {
@click="pluginInstallationModalVisible = true"
>
-
+
{{ $t("core.common.buttons.install") }}
@@ -314,7 +314,7 @@ onMounted(() => {
@click="pluginInstallationModalVisible = true"
>
-
+
{{ $t("core.plugin.empty.actions.install") }}
diff --git a/ui/console-src/modules/system/plugins/components/entity-fields/ReloadField.vue b/ui/console-src/modules/system/plugins/components/entity-fields/ReloadField.vue
index f6ea8c031..946c45c24 100644
--- a/ui/console-src/modules/system/plugins/components/entity-fields/ReloadField.vue
+++ b/ui/console-src/modules/system/plugins/components/entity-fields/ReloadField.vue
@@ -38,7 +38,7 @@ function handleReloadWindow() {
-
+
{{ $t("core.plugin.operations.reload_window.button") }}
diff --git a/ui/console-src/modules/system/roles/RoleList.vue b/ui/console-src/modules/system/roles/RoleList.vue
index 899f0a6a4..5ed8edf73 100644
--- a/ui/console-src/modules/system/roles/RoleList.vue
+++ b/ui/console-src/modules/system/roles/RoleList.vue
@@ -216,7 +216,7 @@ const handleDelete = async (role: Role) => {
@click="editingModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/console-src/modules/system/users/UserList.vue b/ui/console-src/modules/system/users/UserList.vue
index 290d86cea..b4efac478 100644
--- a/ui/console-src/modules/system/users/UserList.vue
+++ b/ui/console-src/modules/system/users/UserList.vue
@@ -198,14 +198,14 @@ function onCreationModalClose() {
type="default"
>
-
+
{{ $t("core.user.actions.roles") }}
-
+
{{ $t("core.user.actions.identity_authentication") }}
@@ -216,7 +216,7 @@ function onCreationModalClose() {
@click="creationModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
@@ -326,7 +326,7 @@ function onCreationModalClose() {
@click="creationModal = true"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/packages/components/src/components/button/Button.vue b/ui/packages/components/src/components/button/Button.vue
index cddaba0f3..9a8a144cf 100644
--- a/ui/packages/components/src/components/button/Button.vue
+++ b/ui/packages/components/src/components/button/Button.vue
@@ -35,6 +35,7 @@
+
+
diff --git a/ui/src/formkit/inputs/list/AddButton.vue b/ui/src/formkit/inputs/list/AddButton.vue
index f75139154..f0d73b3e0 100644
--- a/ui/src/formkit/inputs/list/AddButton.vue
+++ b/ui/src/formkit/inputs/list/AddButton.vue
@@ -29,7 +29,7 @@ const handleAppendClick = () => {
-
+
{{ context.addLabel || $t("core.common.buttons.add") }}
diff --git a/ui/src/formkit/inputs/repeater/AddButton.vue b/ui/src/formkit/inputs/repeater/AddButton.vue
index f75139154..f0d73b3e0 100644
--- a/ui/src/formkit/inputs/repeater/AddButton.vue
+++ b/ui/src/formkit/inputs/repeater/AddButton.vue
@@ -29,7 +29,7 @@ const handleAppendClick = () => {
-
+
{{ context.addLabel || $t("core.common.buttons.add") }}
diff --git a/ui/tailwind.config.cjs b/ui/tailwind.config.cjs
index 5cc14280c..c8ccf58f3 100644
--- a/ui/tailwind.config.cjs
+++ b/ui/tailwind.config.cjs
@@ -31,6 +31,7 @@ module.exports = {
colors: {
primary: "#4CCBA0",
secondary: "#0E1731",
+ danger: "#D71D1D",
},
borderRadius: {
base: "4px",
diff --git a/ui/uc-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue b/ui/uc-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue
index b22ef1a34..12cae057b 100644
--- a/ui/uc-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue
+++ b/ui/uc-src/modules/contents/attachments/components/selector-providers/CoreSelectorProvider.vue
@@ -307,7 +307,7 @@ const handleSelectNext = async () => {
-
+
{{ $t("core.common.buttons.upload") }}
@@ -327,7 +327,7 @@ const handleSelectNext = async () => {
-
+
{{ $t("core.uc_attachment.empty.actions.upload") }}
diff --git a/ui/uc-src/modules/contents/posts/PostEditor.vue b/ui/uc-src/modules/contents/posts/PostEditor.vue
index 48a4bc40e..c8253c617 100644
--- a/ui/uc-src/modules/contents/posts/PostEditor.vue
+++ b/ui/uc-src/modules/contents/posts/PostEditor.vue
@@ -484,7 +484,7 @@ useSlugify(
@click="handleSaveClick"
>
-
+
{{ $t("core.common.buttons.save") }}
@@ -495,7 +495,7 @@ useSlugify(
@click="handleOpenPostSettingEditModal"
>
-
+
{{ $t("core.common.buttons.setting") }}
@@ -506,7 +506,7 @@ useSlugify(
@click="handlePublishClick"
>
-
+
{{ $t("core.common.buttons.publish") }}
diff --git a/ui/uc-src/modules/contents/posts/PostList.vue b/ui/uc-src/modules/contents/posts/PostList.vue
index e791182d8..c23c74062 100644
--- a/ui/uc-src/modules/contents/posts/PostList.vue
+++ b/ui/uc-src/modules/contents/posts/PostList.vue
@@ -109,7 +109,7 @@ const {
-
+
{{ $t("core.common.buttons.new") }}
@@ -179,7 +179,7 @@ const {
type="secondary"
>
-
+
{{ $t("core.common.buttons.new") }}
diff --git a/ui/uc-src/modules/profile/tabs/PersonalAccessTokens.vue b/ui/uc-src/modules/profile/tabs/PersonalAccessTokens.vue
index cb5b90d10..86a8b1ed4 100644
--- a/ui/uc-src/modules/profile/tabs/PersonalAccessTokens.vue
+++ b/ui/uc-src/modules/profile/tabs/PersonalAccessTokens.vue
@@ -39,7 +39,7 @@ const creationModal = ref(false);
-
+
{{ $t("core.common.buttons.new") }}
@@ -59,7 +59,7 @@ const creationModal = ref(false);
-
+
{{ $t("core.common.buttons.new") }}