Skip to content

Commit 656d32e

Browse files
committed
* fix moment/luxon#1650 @ <PotBadgeTimeView> & registerRelative() @ stores/relativeTime
* switch to flat config as `@tanstack/eslint-plugin-query`: TanStack/query#7663, `eslint-plugin-pinia`: lisilinhart/eslint-plugin-pinia#35 & `eslint-plugin-import-x`: un-ts/eslint-plugin-import-x#122 now supports it @ eslint.config.js @ fe
1 parent 915350f commit 656d32e

File tree

3 files changed

+12
-10
lines changed

3 files changed

+12
-10
lines changed

fe/eslint.config.js

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -525,10 +525,10 @@ import * as vueESLintParser from 'vue-eslint-parser';
525525
// eslint-disable-next-line import-x/extensions
526526
import vueESLintConfigTypescriptRecommendedExtends from '@vue/eslint-config-typescript/recommended.js';
527527
import pluginVue from 'eslint-plugin-vue';
528-
import { fixupConfigRules } from '@eslint/compat';
529528
import { FlatCompat } from '@eslint/eslintrc';
530529
import eslintJs from '@eslint/js';
531530
import pluginStylistic from '@stylistic/eslint-plugin';
531+
import pluginTanstackQuery from '@tanstack/eslint-plugin-query';
532532
import * as typescriptESLintParser from '@typescript-eslint/parser';
533533
import pluginImportX from 'eslint-plugin-import-x';
534534
import pluginPinia from 'eslint-plugin-pinia';
@@ -543,18 +543,16 @@ const compat = new FlatCompat();
543543
export default withNuxt(
544544
eslintJs.configs.recommended,
545545
...pluginVue.configs['flat/recommended'],
546-
...compat.config(vueESLintConfigTypescriptRecommendedExtends), // https://github.com/vuejs/eslint-config-typescript/issues/76#issuecomment-2051234597
546+
...compat.config(vueESLintConfigTypescriptRecommendedExtends), // https://github.com/vuejs/eslint-config-typescript/issues/76#issuecomment-2148720004
547547
...compat.extends( // https://github.com/ota-meshi/typescript-eslint-parser-for-extra-files/issues/95#issuecomment-2148604881
548548
'plugin:@typescript-eslint/strict-type-checked',
549549
'plugin:@typescript-eslint/stylistic-type-checked',
550550
),
551-
...compat.config(pluginImportX.configs.recommended), // https://github.com/un-ts/eslint-plugin-import-x/pull/85
552-
pluginImportX.configs.typescript, // https://github.com/import-js/eslint-plugin-import/issues/2556#issuecomment-2119520339
553-
...fixupConfigRules(...compat.extends(
554-
'plugin:@tanstack/eslint-plugin-query/recommended', // https://github.com/TanStack/query/pull/7253
555-
)),
551+
pluginImportX.flatConfigs.recommended,
552+
pluginImportX.flatConfigs.typescript,
553+
...pluginTanstackQuery.configs['flat/recommended'],
556554
pluginUnicorn.configs['flat/recommended'],
557-
...compat.config(pluginPinia.configs.all),
555+
pluginPinia.configs['all-flat'],
558556
{ languageOptions: { ecmaVersion: 'latest' } },
559557
{ ignores: ['node_modules/', '.nuxt/', '.yarn/', '.pnp.*'] },
560558
{ linterOptions: { reportUnusedDisableDirectives: 'error' } },

fe/src/components/post/badge/TimeView.vue

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ const tippyCotentRelativeTo = computed(() => (props.relativeTo === undefined ||
3737
? ''
3838
: `${props.relativeToText}:<br>
3939
${props.relativeTo.toLocaleString(DateTime.DATETIME_FULL_WITH_SECONDS)}<br>
40-
相差 ${props.current.diff(props.relativeTo).rescale().toHuman()}`));
40+
相差 ${props.current
41+
.diff(props.relativeTo, undefined, { conversionAccuracy: 'longterm' })
42+
.rescale().toHuman()}`));
4143
const tippyContent = computed(() => `本${props.postType}${props.timestampType}:<br>
4244
${hydrationStore.isHydratingOrSSR
4345
? currentInChina.value.toLocaleString(DateTime.DATETIME_FULL_WITH_SECONDS)

fe/src/stores/relativeTime.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ export const useRelativeTimeStore = defineStore('relativeTime', () => {
1313
});
1414
}
1515
const registerRelative = (dateTime: DateTime, options?: ToRelativeOptions) => computed(() => {
16-
const relativeDuration = dateTime.diff(DateTime.now()).shiftTo(...units);
16+
const relativeDuration = dateTime
17+
.diff(DateTime.now(), undefined, { conversionAccuracy: 'longterm' })
18+
.shiftTo(...units);
1719
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1820
const { unit } = units
1921
.map(unit => ({ unit, value: relativeDuration.get(unit) }))

0 commit comments

Comments
 (0)