diff --git a/.eslintrc.cjs b/.eslintrc.cjs index e509d3a..b8991ef 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -24,6 +24,10 @@ module.exports = { ].filter(Boolean), rules: { 'unicorn/prefer-node-protocol': 'error', + '@typescript-eslint/consistent-type-imports': [ + 'error', + {fixStyle: 'inline-type-imports', disallowTypeAnnotations: false}, + ], }, overrides: [ { diff --git a/.prettierrc.cjs b/.prettierrc.cjs index dcfddd5..47e1b14 100644 --- a/.prettierrc.cjs +++ b/.prettierrc.cjs @@ -6,6 +6,7 @@ module.exports = { ], singleQuote: true, htmlWhitespaceSensitivity: 'ignore', + endOfLine: "auto", overrides: [ { files: '*.astro', diff --git a/packages/actions-new-meetup/src/index.ts b/packages/actions-new-meetup/src/index.ts index 3fbce1f..b88cff4 100644 --- a/packages/actions-new-meetup/src/index.ts +++ b/packages/actions-new-meetup/src/index.ts @@ -2,7 +2,7 @@ import * as core from '@actions/core'; import { context, getOctokit } from '@actions/github'; import format from 'date-fns/format'; import { - Steps, + type Steps, getMeetupIssueCommentStatus, getMeetupMarkdownFileContent, getMeetupPullRequestContent, diff --git a/packages/api/src/workerCreateIssue.ts b/packages/api/src/workerCreateIssue.ts index 21bc00b..547827a 100644 --- a/packages/api/src/workerCreateIssue.ts +++ b/packages/api/src/workerCreateIssue.ts @@ -1,7 +1,7 @@ -import { getMeetupIssueBody, meetupSchema, Meetup } from 'meetup-shared'; +import { getMeetupIssueBody, meetupSchema, type Meetup } from 'meetup-shared'; import { App } from 'octokit'; import { safeParseAsync } from 'valibot'; -import { Env } from './workerEnv'; +import { type Env } from './workerEnv'; export async function parseCreateIssueReqBody( req: Request, diff --git a/packages/api/src/workerHandler.ts b/packages/api/src/workerHandler.ts index 3ede8a6..f60cde0 100644 --- a/packages/api/src/workerHandler.ts +++ b/packages/api/src/workerHandler.ts @@ -1,5 +1,5 @@ import { createIssue, parseCreateIssueReqBody } from './workerCreateIssue'; -import { Env } from './workerEnv'; +import { type Env } from './workerEnv'; export async function handleRequest(req: Request, env: Env): Promise { const meetupParseResult = await parseCreateIssueReqBody(req); diff --git a/packages/meetup-shared/src/formatValidationErrors.ts b/packages/meetup-shared/src/formatValidationErrors.ts index 2c9f0a8..ff8d6ae 100644 --- a/packages/meetup-shared/src/formatValidationErrors.ts +++ b/packages/meetup-shared/src/formatValidationErrors.ts @@ -1,4 +1,4 @@ -import { Issues } from 'valibot'; +import { type Issues } from 'valibot'; export function formatValidationErrors(issues: Issues) { return issues.map((issue) => ({ diff --git a/packages/meetup-shared/src/meetupForm.ts b/packages/meetup-shared/src/meetupForm.ts index 45573cc..3ee19d7 100644 --- a/packages/meetup-shared/src/meetupForm.ts +++ b/packages/meetup-shared/src/meetupForm.ts @@ -1,6 +1,6 @@ import { isValid, parse } from 'date-fns'; import { - Output, + type Output, ValiError, minLength, object, diff --git a/packages/meetup-shared/src/meetupIssueCommentStatus.ts b/packages/meetup-shared/src/meetupIssueCommentStatus.ts index 7623b77..83b787f 100644 --- a/packages/meetup-shared/src/meetupIssueCommentStatus.ts +++ b/packages/meetup-shared/src/meetupIssueCommentStatus.ts @@ -1,4 +1,4 @@ -import { Issues } from 'valibot'; +import { type Issues } from 'valibot'; export type Step = | { status: 'idle' | 'loading' | 'success' } diff --git a/packages/meetup-shared/src/meetupType.ts b/packages/meetup-shared/src/meetupType.ts index 65f3eda..2c83de4 100644 --- a/packages/meetup-shared/src/meetupType.ts +++ b/packages/meetup-shared/src/meetupType.ts @@ -6,7 +6,7 @@ import { transform, isoTimestamp, } from 'valibot'; -import { MeetupFormField } from './meetupForm'; +import { type MeetupFormField } from './meetupForm'; type MeetupField = Exclude & { date: Date }; diff --git a/packages/site/src/components/MeetupCard.astro b/packages/site/src/components/MeetupCard.astro index cc36763..4bc2e6d 100644 --- a/packages/site/src/components/MeetupCard.astro +++ b/packages/site/src/components/MeetupCard.astro @@ -1,5 +1,5 @@ --- -import { FrontMeetup } from '../get-meetups'; +import { type FrontMeetup } from '../get-meetups'; type Props = { meetup: FrontMeetup }; const { diff --git a/packages/site/src/components/MeetupListItem.astro b/packages/site/src/components/MeetupListItem.astro index 503992d..f581ab8 100644 --- a/packages/site/src/components/MeetupListItem.astro +++ b/packages/site/src/components/MeetupListItem.astro @@ -1,5 +1,5 @@ --- -import { FrontMeetup } from '../get-meetups'; +import { type FrontMeetup } from '../get-meetups'; import { getRandomLogonumber } from '../utils'; type Props = { meetup: FrontMeetup }; diff --git a/packages/site/src/components/MeetupPageCard.astro b/packages/site/src/components/MeetupPageCard.astro index 3283fe3..2d0e515 100644 --- a/packages/site/src/components/MeetupPageCard.astro +++ b/packages/site/src/components/MeetupPageCard.astro @@ -1,5 +1,5 @@ --- -import { FrontMeetup } from '../get-meetups'; +import { type FrontMeetup } from '../get-meetups'; type Props = { meetup: FrontMeetup }; const { diff --git a/packages/site/src/layouts/Meetup.astro b/packages/site/src/layouts/Meetup.astro index 9d9e20f..78c8719 100644 --- a/packages/site/src/layouts/Meetup.astro +++ b/packages/site/src/layouts/Meetup.astro @@ -1,7 +1,7 @@ --- import PageLayout from './PageLayout.astro'; import MeetupPageCard from '../components/MeetupPageCard.astro'; -import { FrontMeetup } from '../get-meetups'; +import { type FrontMeetup } from '../get-meetups'; type Props = { meetup: FrontMeetup }; const { meetup } = Astro.props; diff --git a/packages/site/src/pages/meetups/[...slug].astro b/packages/site/src/pages/meetups/[...slug].astro index fbf0224..b29b760 100644 --- a/packages/site/src/pages/meetups/[...slug].astro +++ b/packages/site/src/pages/meetups/[...slug].astro @@ -1,5 +1,5 @@ --- -import { FrontMeetup, getMeetups } from '../../get-meetups'; +import { type FrontMeetup, getMeetups } from '../../get-meetups'; import Meetup from '../../layouts/Meetup.astro'; export async function getStaticPaths() { diff --git a/packages/site/src/pages/rss.xml.ts b/packages/site/src/pages/rss.xml.ts index bcdc1c5..be35c72 100644 --- a/packages/site/src/pages/rss.xml.ts +++ b/packages/site/src/pages/rss.xml.ts @@ -1,4 +1,4 @@ -import rss, { RSSOptions } from '@astrojs/rss'; +import rss, { type RSSOptions } from '@astrojs/rss'; import { SITE_TITLE, SITE_DESCRIPTION } from '../consts'; import { getMeetups } from '../get-meetups'; diff --git a/packages/site/src/utils.ts b/packages/site/src/utils.ts index 19150ee..d27dfe1 100644 --- a/packages/site/src/utils.ts +++ b/packages/site/src/utils.ts @@ -1,5 +1,5 @@ -import { MeetupFormValues } from 'meetup-shared'; -import { FrontMeetups } from './get-meetups'; +import { type MeetupFormValues } from 'meetup-shared'; +import { type FrontMeetups } from './get-meetups'; export const formatMeetupData = (meetup: MeetupFormValues) => { const formattedMeetup = structuredClone(meetup); diff --git a/packages/site/test/index.test.ts b/packages/site/test/index.test.ts index 4ae62b6..c2d10e8 100644 --- a/packages/site/test/index.test.ts +++ b/packages/site/test/index.test.ts @@ -1,4 +1,4 @@ -import { Browser, chromium } from 'playwright'; +import { type Browser, chromium } from 'playwright'; import { afterAll, beforeAll, expect, test } from 'vitest'; let browser: Browser; diff --git a/packages/site/test/submit.test.ts b/packages/site/test/submit.test.ts index 7c7e0e7..312472d 100644 --- a/packages/site/test/submit.test.ts +++ b/packages/site/test/submit.test.ts @@ -1,4 +1,4 @@ -import { Browser, chromium } from 'playwright'; +import { type Browser, chromium } from 'playwright'; import { afterAll, beforeAll, expect, test } from 'vitest'; let browser: Browser; diff --git a/packages/site/test/utils.test.ts b/packages/site/test/utils.test.ts index f7d3a4d..d8f33a5 100644 --- a/packages/site/test/utils.test.ts +++ b/packages/site/test/utils.test.ts @@ -1,4 +1,4 @@ -import { MeetupFormValues } from 'meetup-shared'; +import { type MeetupFormValues } from 'meetup-shared'; import { formatMeetupData, createShortDescription, @@ -6,7 +6,7 @@ import { getRandomLogonumber, } from '../src/utils'; import { expect, test, beforeEach, afterEach, vi } from 'vitest'; -import { FrontMeetups } from '../src/get-meetups'; +import { type FrontMeetups } from '../src/get-meetups'; beforeEach(() => { vi.useFakeTimers();