Skip to content

chore(frontend): add vite-plugin-checker devDependency#400

Merged
michaelkirk merged 13 commits intoheadwaymaps:mainfrom
3nprob:vite-plugin-checker
Dec 5, 2025
Merged

chore(frontend): add vite-plugin-checker devDependency#400
michaelkirk merged 13 commits intoheadwaymaps:mainfrom
3nprob:vite-plugin-checker

Conversation

@3nprob
Copy link
Contributor

@3nprob 3nprob commented Dec 4, 2025

Add missing devDependency.

https://github.com/headwaymaps/headway/actions/runs/19905547778/job/57060707239#step:4:2477

31  : ┆ [20.4s] | $ quasar build
31  : ┆ [20.6s] | 
31  : ┆ [20.6s] |  .d88888b.
31  : ┆ [20.6s] | d88P" "Y88b
31  : ┆ [20.6s] | 888     888
31  : ┆ [20.6s] | 888     888 888  888  8888b.  .d8888b   8888b.  888d888
31  : ┆ [20.6s] | 888     888 888  888     "88b 88K          "88b 888P"
31  : ┆ [20.6s] | 888 Y8b 888 888  888 .d888888 "Y8888b. .d888888 888
31  : ┆ [20.6s] | Y88b.Y8b88P Y88b 888 888  888      X88 888  888 888
31  : ┆ [20.6s] |  "Y888888"   "Y88888 "Y888888  88888P' "Y888888 888
31  : ┆ [20.6s] |        Y8b
31  : ┆ [20.6s] | 
31  : ┆ [20.8s] | 
31  : ┆ [20.8s] |  Build mode............. spa
31  : ┆ [20.8s] |  Pkg quasar............. v2.18.6
31  : ┆ [20.8s] |  Pkg @quasar/app-vite... v2.4.0
31  : ┆ [20.8s] |  Pkg vite............... v7.2.6
31  : ┆ [20.8s] |  Debugging.............. no
31  : ┆ [20.8s] |  Publishing............. no
31  : ┆ [20.8s] | 
31  : ┆ [21.0s] |  App • Using quasar.config.ts in "ts" format
31  : ┆ [21.0s] |  App • Running "@quasar/testing" Quasar App Extension...
31  : ┆ [21.1s] |  App • ⚠️  quasar.config file > invalid Vite plugin specified (cannot find it): vite-plugin-checker
31  : ┆ [21.1s] |  App •  WAIT  • Compiling of SPA UI with Vite in progress...

@3nprob
Copy link
Contributor Author

3nprob commented Dec 4, 2025

Errors surfacing

https://github.com/headwaymaps/headway/actions/runs/19915978051/job/57094652910#logs

 App •  WAIT  • Compiling of SPA UI with Vite in progress...
src/components/BaseMap.vue(63,58): error TS2532: Object is possibly 'undefined'.
src/components/BaseMap.vue(67,7): error TS2532: Object is possibly 'undefined'.
src/components/BaseMap.vue(68,7): error TS2532: Object is possibly 'undefined'.
src/components/BaseMap.vue(69,7): error TS2532: Object is possibly 'undefined'.
src/components/BaseMap.vue(70,7): error TS2532: Object is possibly 'undefined'.
src/components/BaseMap.vue(162,5): error TS2375: Type '{ flyToOptions: undefined; boundsToFit: undefined; markers: Map<any, any>; layers: never[]; loaded: false; touchHandlers: Map<any, any>; touchHandlerIdx: number; }' is not assignable to type '{ flyToOptions?: FlyToOptions; boundsToFit?: LngLatBoundsLike; markers: Map<string, SimpleMarker>; layers: string[]; loaded: boolean; touchHandlers: Map<...>; touchHandlerIdx: number; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Types of property 'flyToOptions' are incompatible.
    Type 'undefined' is not assignable to type 'FlyToOptions'.
      Type 'undefined' is not assignable to type 'AnimationOptions'.
src/components/BaseMap.vue(227,9): error TS2412: Type 'undefined' is not assignable to type '{ duration?: number; easing?: (_: number) => number; offset?: [number, number] | { x: number; y: number; clone: () => Point; add: (p: Point) => Point; _add: (p: Point) => Point; ... 27 more ...; angleWithSep: (x: number, y: number) => number; }; ... 13 more ...; padding?: number | ... 3 more ... | { ...; }; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/components/BaseMap.vue(231,9): error TS2412: Type 'undefined' is not assignable to type '[number, number, number, number] | { _ne: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; }; ... 17 more ...; adjustAntiMeridian: () => LngLatBounds; } | [...]' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/components/BaseMap.vue(293,45): error TS2345: Argument of type 'Feature<Geometry, GeoJsonProperties> | undefined' is not assignable to parameter of type 'Feature<Geometry, GeoJsonProperties>'.
  Type 'undefined' is not assignable to type 'Feature<Geometry, GeoJsonProperties>'.
src/components/BaseMap.vue(497,9): error TS2379: Argument of type '{ id: string; type: "line"; source: string; layout: { 'line-join': "round"; 'line-cap': "round"; }; paint: { "line-opacity"?: maplibregl.DataDrivenPropertyValueSpecification<number>; ... 9 more ...; "line-gradient"?: maplibregl.ExpressionSpecification; } | undefined; }' is not assignable to parameter of type 'LayerSpecification' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Type '{ id: string; type: "line"; source: string; layout: { 'line-join': "round"; 'line-cap': "round"; }; paint: { "line-opacity"?: maplibregl.DataDrivenPropertyValueSpecification<number>; ... 9 more ...; "line-gradient"?: maplibregl.ExpressionSpecification; } | undefined; }' is not assignable to type 'LineLayerSpecification' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
    Types of property '"paint"' are incompatible.
      Type '{ "line-opacity"?: DataDrivenPropertyValueSpecification<number>; "line-color"?: DataDrivenPropertyValueSpecification<string>; ... 8 more ...; "line-gradient"?: ExpressionSpecification; } | undefined' is not assignable to type '{ "line-opacity"?: DataDrivenPropertyValueSpecification<number>; "line-color"?: DataDrivenPropertyValueSpecification<string>; ... 8 more ...; "line-gradient"?: ExpressionSpecification; }'.
        Type 'undefined' is not assignable to type '{ "line-opacity"?: DataDrivenPropertyValueSpecification<number>; "line-color"?: DataDrivenPropertyValueSpecification<string>; ... 8 more ...; "line-gradient"?: ExpressionSpecification; }'.
src/components/BaseMap.vue(540,17): error TS18048: 'layer' is possibly 'undefined'.
src/components/BaseMap.vue(541,31): error TS18048: 'layer' is possibly 'undefined'.
src/components/MultiModalSteps.vue(132,9): error TS2345: Argument of type 'ItineraryLeg | undefined' is not assignable to parameter of type 'ItineraryLeg'.
  Type 'undefined' is not assignable to type 'ItineraryLeg'.
src/components/MultiModalSteps.vue(137,28): error TS18048: 'firstLeg' is possibly 'undefined'.
src/components/MultiModalSteps.vue(140,18): error TS18048: 'firstLeg' is possibly 'undefined'.
src/components/MultiModalSteps.vue(143,15): error TS18048: 'firstLeg' is possibly 'undefined'.
src/components/MultiModalSteps.vue(144,15): error TS18048: 'firstLeg' is possibly 'undefined'.
src/components/TripSearch.vue(163,5): error TS2375: Type '{ searchTime: string | undefined; searchDate: string | undefined; arriveBy: boolean | undefined; transitWithBicycle: boolean; }' is not assignable to type '{ searchTime?: string; searchDate?: string; arriveBy?: boolean; transitWithBicycle: boolean; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Types of property 'searchTime' are incompatible.
    Type 'string | undefined' is not assignable to type 'string'.
      Type 'undefined' is not assignable to type 'string'.
src/components/TripSearch.vue(193,7): error TS2412: Type 'undefined' is not assignable to type 'string' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/components/TripSearch.vue(194,7): error TS2412: Type 'undefined' is not assignable to type 'string' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/AlternatesPage.vue(3,6): error TS2379: Argument of type '{ fromPlace: Place | undefined; toPlace: Place | undefined; currentMode: TravelMode; initialSearch: TransitQueryParams; didSelectFromPlace: (place?: Place) => void; didSelectToPlace: (place?: Place) => void; didSwapPlaces: (newFromValue?: Place, newToValue?: Place) => void; searchDidChange: (newValue: TransitQueryPa...' is not assignable to parameter of type 'Partial<{ fromPlace: Place; toPlace: Place; }> & Omit<{ readonly currentMode: TravelMode; readonly didSelectFromPlace: (newValue?: Place | undefined) => void; ... 5 more ...; readonly toPlace?: Place; } & VNodeProps & AllowedComponentProps & ComponentCustomProps, DefaultKeys<...>> & Record<...>' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Type '{ fromPlace: Place | undefined; toPlace: Place | undefined; currentMode: TravelMode; initialSearch: TransitQueryParams; didSelectFromPlace: (place?: Place) => void; didSelectToPlace: (place?: Place) => void; didSwapPlaces: (newFromValue?: Place, newToValue?: Place) => void; searchDidChange: (newValue: TransitQueryPa...' is not assignable to type 'Partial<{ fromPlace: Place; toPlace: Place; }>' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
    Types of property 'fromPlace' are incompatible.
      Type 'Place | undefined' is not assignable to type 'Place'.
        Type 'undefined' is not assignable to type 'Place'.
src/pages/AlternatesPage.vue(120,5): error TS2375: Type '{ trips: never[]; tripMarkers: never[]; error: undefined; activeTrip: undefined; isLoading: false; TravelMode: typeof TravelMode; }' is not assignable to type '{ trips: Trip[]; tripMarkers: string[]; error?: TripFetchError; activeTrip?: Trip; isLoading: boolean; TravelMode: typeof TravelMode; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Types of property 'error' are incompatible.
    Type 'undefined' is not assignable to type 'TripFetchError'.
src/pages/AlternatesPage.vue(239,9): error TS2412: Type 'undefined' is not assignable to type '{ errorCode: TripFetchErrorCode; message: string; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/AlternatesPage.vue(240,9): error TS2412: Type 'undefined' is not assignable to type '{ raw: { mode: TravelmuxMode; duration: number; distance: number; distanceUnits: DistanceUnits; bounds: { min: [number, number]; max: [number, number]; }; legs: { ...; }[]; }; ... 9 more ...; transitItinerary: () => Itinerary | undefined; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/AlternatesPage.vue(259,11): error TS2412: Type 'undefined' is not assignable to type '{ errorCode: TripFetchErrorCode; message: string; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/AlternatesPage.vue(266,9): error TS2412: Type 'undefined' is not assignable to type '{ errorCode: TripFetchErrorCode; message: string; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/AlternatesPage.vue(293,7): error TS2412: Type 'Trip | undefined' is not assignable to type '{ raw: { mode: TravelmuxMode; duration: number; distance: number; distanceUnits: DistanceUnits; bounds: { min: [number, number]; max: [number, number]; }; legs: { ...; }[]; }; ... 9 more ...; transitItinerary: () => Itinerary | undefined; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
  Type 'undefined' is not assignable to type '{ raw: { mode: TravelmuxMode; duration: number; distance: number; distanceUnits: DistanceUnits; bounds: { min: [number, number]; max: [number, number]; }; legs: { ...; }[]; }; ... 9 more ...; transitItinerary: () => Itinerary | undefined; }'.
src/pages/AlternatesPage.vue(297,39): error TS18048: 'trip' is possibly 'undefined'.
src/pages/AlternatesPage.vue(298,23): error TS18048: 'trip' is possibly 'undefined'.
src/pages/AlternatesPage.vue(315,38): error TS18048: 'leg' is possibly 'undefined'.
src/pages/AlternatesPage.vue(315,52): error TS18048: 'leg' is possibly 'undefined'.
src/pages/AlternatesPage.vue(320,44): error TS18048: 'leg' is possibly 'undefined'.
src/pages/AlternatesPage.vue(330,28): error TS2345: Argument of type 'Trip | undefined' is not assignable to parameter of type 'Trip'.
  Type 'undefined' is not assignable to type 'Trip'.
src/pages/AlternatesPage.vue(337,37): error TS18048: 'selectedTrip' is possibly 'undefined'.
src/pages/AlternatesPage.vue(338,21): error TS18048: 'selectedTrip' is possibly 'undefined'.
src/pages/AlternatesPage.vue(342,13): error TS18048: 'leg' is possibly 'undefined'.
src/pages/AlternatesPage.vue(343,13): error TS18048: 'leg' is possibly 'undefined'.
src/pages/AlternatesPage.vue(347,31): error TS18048: 'selectedTrip' is possibly 'undefined'.
src/pages/PlacePage.vue(3,6): error TS2379: Argument of type '{ initialPlace: { id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => Distanc...' is not assignable to parameter of type 'Partial<{ readonly: boolean; tabindex: number; initialInputText: string; initialPlace: Place; hint: string; }> & Omit<{ readonly readonly: boolean; readonly tabindex: number; ... 4 more ...; readonly onDidSubmitSearch?: (...args: any[]) => any; } & VNodeProps & AllowedComponentProps & ComponentCustomProps, DefaultKe...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Type '{ initialPlace: { id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => Distanc...' is not assignable to type 'Partial<{ readonly: boolean; tabindex: number; initialInputText: string; initialPlace: Place; hint: string; }>' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
    Types of property 'initialPlace' are incompatible.
      Type '{ id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits | undefin...' is not assignable to type 'Place'.
        Type 'undefined' is not assignable to type 'Place'.
src/pages/PlacePage.vue(67,5): error TS2375: Type '{ place: undefined; }' is not assignable to type '{ place?: Place; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Types of property 'place' are incompatible.
    Type 'undefined' is not assignable to type 'Place'.
src/pages/SearchPage.vue(17,13): error TS2412: Type 'undefined' is not assignable to type '{ id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits | undefin...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/SearchPage.vue(89,5): error TS2375: Type '{ searchResults: undefined; selectedPlace: undefined; hoveredPlace: undefined; isLoading: false; }' is not assignable to type '{ searchResults?: SearchResults; selectedPlace?: Place; hoveredPlace?: Place; isLoading: boolean; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Types of property 'searchResults' are incompatible.
    Type 'undefined' is not assignable to type 'SearchResults'.
src/pages/SearchPage.vue(101,5): error TS2412: Type 'undefined' is not assignable to type '{ places: { id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/SearchPage.vue(158,7): error TS2412: Type 'Place | undefined' is not assignable to type '{ id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits | undefin...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
  Type 'undefined' is not assignable to type '{ id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits | undefin...'.
src/pages/SearchPage.vue(182,9): error TS2412: Type 'undefined' is not assignable to type '{ places: { id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/SearchPage.vue(204,9): error TS2412: Type 'undefined' is not assignable to type '{ places: { id: { readonly location?: { lng: number; lat: number; wrap: () => LngLat; toArray: () => [number, number]; toString: () => string; distanceTo: (lngLat: LngLat) => number; } | undefined; ... 5 more ...; editOSMVenueUrl: () => URL | undefined; }; ... 10 more ...; preferredDistanceUnits: () => DistanceUnits...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
src/pages/StepsPage.vue(8,10): error TS2379: Argument of type '{ initialPlace: Place | undefined; readonly: true; style: { flex: number; }; hint: string; }' is not assignable to parameter of type 'Partial<{ readonly: boolean; tabindex: number; initialInputText: string; initialPlace: Place; hint: string; }> & Omit<{ readonly readonly: boolean; readonly tabindex: number; ... 4 more ...; readonly onDidSubmitSearch?: (...args: any[]) => any; } & VNodeProps & AllowedComponentProps & ComponentCustomProps, DefaultKe...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Type '{ initialPlace: Place | undefined; readonly: true; style: { flex: number; }; hint: string; }' is not assignable to type 'Partial<{ readonly: boolean; tabindex: number; initialInputText: string; initialPlace: Place; hint: string; }>' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
    Types of property 'initialPlace' are incompatible.
      Type 'Place | undefined' is not assignable to type 'Place'.
        Type 'undefined' is not assignable to type 'Place'.
src/pages/StepsPage.vue(14,10): error TS2379: Argument of type '{ initialPlace: Place | undefined; readonly: true; style: { flex: number; }; hint: string; }' is not assignable to parameter of type 'Partial<{ readonly: boolean; tabindex: number; initialInputText: string; initialPlace: Place; hint: string; }> & Omit<{ readonly readonly: boolean; readonly tabindex: number; ... 4 more ...; readonly onDidSubmitSearch?: (...args: any[]) => any; } & VNodeProps & AllowedComponentProps & ComponentCustomProps, DefaultKe...' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Type '{ initialPlace: Place | undefined; readonly: true; style: { flex: number; }; hint: string; }' is not assignable to type 'Partial<{ readonly: boolean; tabindex: number; initialInputText: string; initialPlace: Place; hint: string; }>' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
    Types of property 'initialPlace' are incompatible.
      Type 'Place | undefined' is not assignable to type 'Place'.
        Type 'undefined' is not assignable to type 'Place'.
src/pages/StepsPage.vue(82,5): error TS2375: Type '{ trip: undefined; tripMarkers: never[]; }' is not assignable to type '{ trip?: Trip; tripMarkers: string[]; }' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
  Types of property 'trip' are incompatible.
    Type 'undefined' is not assignable to type 'Trip'.
src/pages/StepsPage.vue(184,9): error TS2412: Type 'Trip | undefined' is not assignable to type 'Trip' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target.
  Type 'undefined' is not assignable to type 'Trip'.
src/pages/StepsPage.vue(211,38): error TS18048: 'leg' is possibly 'undefined'.
src/pages/StepsPage.vue(211,52): error TS18048: 'leg' is possibly 'undefined'.
src/pages/StepsPage.vue(223,44): error TS18048: 'leg' is possibly 'undefined'.
error Command failed with exit code 2.

Aside: Should these checks also run as part of Frontend checks CI job? Looks like they are currently only invoked by Build service images.

@michaelkirk
Copy link
Member

Aside: Should these checks also run as part of Frontend checks CI job? Looks like they are currently only invoked by Build service images.

There are some typescript checks already, but vue is pretty complicated. I wasn't aware of vite-plugin-checker, but it seems like enabling it has done a more thorough job of checking.

I'd prefer fixing them over #401. As I understand it, the only downside in the meanwhile is some warning output on server startup.

I've pushed up a couple of type fixes to this branch, but many more to go.

@3nprob 3nprob force-pushed the vite-plugin-checker branch from ca3aec9 to c9e3195 Compare December 4, 2025 22:38
@3nprob
Copy link
Contributor Author

3nprob commented Dec 4, 2025

I'd prefer fixing them over #401. As I understand it, the only downside in the meanwhile is some warning output on server startup.

If there's a way in config to actually change it to warnings as opposed to errors I guess that would be preferred but if there's a knob for that somewhere I haven't found it.

I've pushed up a couple of type fixes to this branch, but many more to go.

Thanks, I just did the same. Noting that 792ecaf is not strictly correct (and looks like using iterators/for const of for some of the loops could make it so) but seems safe to me.

Disabling exactOptionalPropertyTypes allows sidestepping the hairier ones for now.

@3nprob 3nprob marked this pull request as ready for review December 4, 2025 22:56
@michaelkirk
Copy link
Member

I've applied some of my own proclivities and will merge shortly. Thank you!

@michaelkirk michaelkirk added this pull request to the merge queue Dec 5, 2025
Merged via the queue into headwaymaps:main with commit a748cf9 Dec 5, 2025
6 checks passed
@3nprob 3nprob deleted the vite-plugin-checker branch December 8, 2025 05:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants