chore(frontend): introduce prettier + eslint and prune unused code
- Add Prettier 3 with prettier-plugin-organize-imports (sorts/removes unused imports) - Add ESLint 10 flat config with typescript-eslint + eslint-plugin-vue + eslint-config-prettier - Add root scripts: format, format:check, lint, lint:fix - Reformat 257 files across admin-web, ops-web, desktop-client, packages - Remove unused locals/exports flagged by --noUnusedLocals/--noUnusedParameters - Fix duplicate localTabLabel key, surrogate-pair regex u-flag, NBSP literal in regex - Skip server/ (Go) and apps/browser-extension/ (deprecated per ADR) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -5,62 +5,65 @@ import {
|
||||
EditOutlined,
|
||||
EyeOutlined,
|
||||
SendOutlined,
|
||||
} from "@ant-design/icons-vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
} from '@ant-design/icons-vue'
|
||||
import { useI18n } from 'vue-i18n'
|
||||
|
||||
const props = withDefaults(defineProps<{
|
||||
showPublish?: boolean;
|
||||
canPublish?: boolean;
|
||||
publishDisabledTitle?: string;
|
||||
showEdit?: boolean;
|
||||
canEdit?: boolean;
|
||||
editDisabledTitle?: string;
|
||||
showPreview?: boolean;
|
||||
canPreview?: boolean;
|
||||
previewDisabledTitle?: string;
|
||||
showCopy?: boolean;
|
||||
canCopy?: boolean;
|
||||
copyDisabledTitle?: string;
|
||||
showDelete?: boolean;
|
||||
canDelete?: boolean;
|
||||
deleteDisabledTitle?: string;
|
||||
deleteConfirmTitle?: string;
|
||||
deleteLoading?: boolean;
|
||||
}>(), {
|
||||
showPublish: false,
|
||||
canPublish: true,
|
||||
publishDisabledTitle: "",
|
||||
showEdit: false,
|
||||
canEdit: true,
|
||||
editDisabledTitle: "",
|
||||
showPreview: false,
|
||||
canPreview: true,
|
||||
previewDisabledTitle: "",
|
||||
showCopy: false,
|
||||
canCopy: true,
|
||||
copyDisabledTitle: "",
|
||||
showDelete: true,
|
||||
canDelete: true,
|
||||
deleteDisabledTitle: "",
|
||||
deleteConfirmTitle: "",
|
||||
deleteLoading: false,
|
||||
});
|
||||
withDefaults(
|
||||
defineProps<{
|
||||
showPublish?: boolean
|
||||
canPublish?: boolean
|
||||
publishDisabledTitle?: string
|
||||
showEdit?: boolean
|
||||
canEdit?: boolean
|
||||
editDisabledTitle?: string
|
||||
showPreview?: boolean
|
||||
canPreview?: boolean
|
||||
previewDisabledTitle?: string
|
||||
showCopy?: boolean
|
||||
canCopy?: boolean
|
||||
copyDisabledTitle?: string
|
||||
showDelete?: boolean
|
||||
canDelete?: boolean
|
||||
deleteDisabledTitle?: string
|
||||
deleteConfirmTitle?: string
|
||||
deleteLoading?: boolean
|
||||
}>(),
|
||||
{
|
||||
showPublish: false,
|
||||
canPublish: true,
|
||||
publishDisabledTitle: '',
|
||||
showEdit: false,
|
||||
canEdit: true,
|
||||
editDisabledTitle: '',
|
||||
showPreview: false,
|
||||
canPreview: true,
|
||||
previewDisabledTitle: '',
|
||||
showCopy: false,
|
||||
canCopy: true,
|
||||
copyDisabledTitle: '',
|
||||
showDelete: true,
|
||||
canDelete: true,
|
||||
deleteDisabledTitle: '',
|
||||
deleteConfirmTitle: '',
|
||||
deleteLoading: false,
|
||||
},
|
||||
)
|
||||
|
||||
const emit = defineEmits<{
|
||||
publish: [];
|
||||
edit: [];
|
||||
preview: [];
|
||||
copy: [];
|
||||
delete: [];
|
||||
}>();
|
||||
publish: []
|
||||
edit: []
|
||||
preview: []
|
||||
copy: []
|
||||
delete: []
|
||||
}>()
|
||||
|
||||
const { t } = useI18n();
|
||||
const { t } = useI18n()
|
||||
|
||||
function resolveTitle(enabled: boolean, enabledTitle: string, disabledTitle?: string): string {
|
||||
if (enabled) {
|
||||
return enabledTitle;
|
||||
return enabledTitle
|
||||
}
|
||||
return disabledTitle || enabledTitle;
|
||||
return disabledTitle || enabledTitle
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -84,10 +87,7 @@ function resolveTitle(enabled: boolean, enabledTitle: string, disabledTitle?: st
|
||||
</span>
|
||||
</a-tooltip>
|
||||
|
||||
<a-tooltip
|
||||
v-if="showEdit"
|
||||
:title="resolveTitle(canEdit, t('common.edit'), editDisabledTitle)"
|
||||
>
|
||||
<a-tooltip v-if="showEdit" :title="resolveTitle(canEdit, t('common.edit'), editDisabledTitle)">
|
||||
<span>
|
||||
<a-button
|
||||
type="text"
|
||||
@@ -120,10 +120,7 @@ function resolveTitle(enabled: boolean, enabledTitle: string, disabledTitle?: st
|
||||
</span>
|
||||
</a-tooltip>
|
||||
|
||||
<a-tooltip
|
||||
v-if="showCopy"
|
||||
:title="resolveTitle(canCopy, t('common.copy'), copyDisabledTitle)"
|
||||
>
|
||||
<a-tooltip v-if="showCopy" :title="resolveTitle(canCopy, t('common.copy'), copyDisabledTitle)">
|
||||
<span>
|
||||
<a-button
|
||||
type="text"
|
||||
|
||||
Reference in New Issue
Block a user