Add progressive web app companion for cross-platform access

Vite + TypeScript PWA that mirrors the Android app's core features:
- Pre-processed shelter data (build-time UTM33N→WGS84 conversion)
- Leaflet map with shelter markers, user location, and offline tiles
- Canvas compass arrow (ported from DirectionArrowView.kt)
- IndexedDB shelter cache with 7-day staleness check
- Service worker with CacheFirst tiles and precached app shell
- i18n for en, nb, nn (ported from Android strings.xml)
- iOS/Android compass handling with low-pass filter
- Respects user map interaction (no auto-snap on pan/zoom)
- Build revision cache-breaker for reliable SW updates

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Ole-Morten Duesund 2026-03-08 17:41:38 +01:00
commit e8428de775
12051 changed files with 1799735 additions and 0 deletions

69
pwa/node_modules/postcss/lib/postcss.d.mts generated vendored Normal file
View file

@ -0,0 +1,69 @@
export {
// Type-only exports
AcceptedPlugin,
AnyNode,
atRule,
AtRule,
AtRuleProps,
Builder,
ChildNode,
ChildProps,
comment,
Comment,
CommentProps,
Container,
ContainerProps,
CssSyntaxError,
decl,
Declaration,
DeclarationProps,
// postcss function / namespace
default,
document,
Document,
DocumentProps,
FilePosition,
fromJSON,
Helpers,
Input,
JSONHydrator,
// This is a class, but its not re-exported. Thats why its exported as type-only here.
type LazyResult,
list,
Message,
Node,
NodeErrorOptions,
NodeProps,
OldPlugin,
parse,
Parser,
// @ts-expect-error This value exists, but its untyped.
plugin,
Plugin,
PluginCreator,
Position,
Postcss,
ProcessOptions,
Processor,
Result,
root,
Root,
RootProps,
rule,
Rule,
RuleProps,
Source,
SourceMap,
SourceMapOptions,
Stringifier,
// Value exports from postcss.mjs
stringify,
Syntax,
TransformCallback,
Transformer,
Warning,
WarningOptions
} from './postcss.js'