@camp2gether/c2g-ui 0.0.11 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -349,12 +349,11 @@ const de = {
349
349
  },
350
350
  private: { title: 'Private Artikel' },
351
351
  empty: 'Keine Artikel vorhanden',
352
- category: { stats: '{{packed}}/{{total}} eingepackt' },
352
+ category: { stats: '{{packed}}/{{total}} eingepackt', label: 'Kategorie' },
353
353
  delete: { confirm: 'Artikel wirklich löschen?' },
354
354
  addItem: 'Artikel hinzufügen',
355
355
  createItem: 'Artikel erstellen',
356
356
  itemName: 'Bezeichnung',
357
- category_label: 'Kategorie',
358
357
  visibility: 'Sichtbarkeit',
359
358
  essential: 'Pflichtartikel',
360
359
  quantity: 'Menge',
@@ -366,7 +365,7 @@ const de = {
366
365
  categories: {
367
366
  shelter: 'Unterkunft',
368
367
  sleeping: 'Schlafen',
369
- cooking: 'Kochen',
368
+ cookingEating: 'Kochen & Essen',
370
369
  clothing: 'Kleidung',
371
370
  safety: 'Sicherheit',
372
371
  navigation: 'Navigation',
@@ -376,6 +375,12 @@ const de = {
376
375
  documents: 'Dokumente',
377
376
  entertainment: 'Unterhaltung',
378
377
  other: 'Sonstiges',
378
+ lighting: 'Beleuchtung',
379
+ furniture: 'Möbel & Ausstattung',
380
+ hydration: 'Getränke',
381
+ mobility: 'Transport',
382
+ tools: 'Werkzeug',
383
+ activity: 'Aktivitäten',
379
384
  },
380
385
  },
381
386
  };
@@ -439,12 +444,11 @@ const en = {
439
444
  },
440
445
  private: { title: 'Private Items' },
441
446
  empty: 'No items yet',
442
- category: { stats: '{{packed}}/{{total}} packed' },
447
+ category: { stats: '{{packed}}/{{total}} packed', label: 'Category' },
443
448
  delete: { confirm: 'Delete this item?' },
444
449
  addItem: 'Add item',
445
450
  createItem: 'Create item',
446
451
  itemName: 'Name',
447
- category_label: 'Category',
448
452
  visibility: 'Visibility',
449
453
  essential: 'Essential',
450
454
  quantity: 'Quantity',
@@ -456,7 +460,7 @@ const en = {
456
460
  categories: {
457
461
  shelter: 'Shelter',
458
462
  sleeping: 'Sleeping',
459
- cooking: 'Cooking',
463
+ cookingEating: 'Cooking & Eating',
460
464
  clothing: 'Clothing',
461
465
  safety: 'Safety',
462
466
  navigation: 'Navigation',
@@ -466,6 +470,12 @@ const en = {
466
470
  documents: 'Documents',
467
471
  entertainment: 'Entertainment',
468
472
  other: 'Other',
473
+ lighting: 'Lighting',
474
+ furniture: 'Furniture & Equipment',
475
+ hydration: 'Hydration',
476
+ mobility: 'Transport',
477
+ tools: 'Tools',
478
+ activity: 'Activities',
469
479
  },
470
480
  },
471
481
  };
@@ -1 +1 @@
1
- {"version":3,"file":"camp2gether-c2g-ui-theme.mjs","sources":["../../../projects/c2g-ui/theme/theme/theme.service.ts","../../../projects/c2g-ui/theme/theme/theme-switcher.component.ts","../../../projects/c2g-ui/theme/theme/theme.providers.ts","../../../projects/c2g-ui/theme/i18n/translations.ts","../../../projects/c2g-ui/theme/camp2gether-c2g-ui-theme.ts"],"sourcesContent":["import { Injectable, PLATFORM_ID, inject, signal, computed, effect, DestroyRef } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\n\nexport type ThemeMode = 'light' | 'dark' | 'auto' | 'high-contrast';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThemeService {\n private readonly platformId = inject(PLATFORM_ID);\n private readonly destroyRef = inject(DestroyRef);\n \n // Initialize signals in the injection context\n private readonly _currentTheme = signal<ThemeMode>(this.getInitialTheme());\n private readonly _isSystemDark = signal<boolean>(this.getInitialSystemPreference());\n \n // Media query listener cleanup\n private mediaQueryCleanup?: () => void;\n\n // Public signals\n readonly currentTheme = this._currentTheme.asReadonly();\n readonly isSystemDark = this._isSystemDark.asReadonly();\n\n // Computed signal for effective theme\n readonly effectiveTheme = computed<ThemeMode>(() => {\n const current = this._currentTheme();\n if (current === 'auto') {\n return this._isSystemDark() ? 'dark' : 'light';\n }\n return current;\n });\n\n // Computed signals for theme checks\n readonly isLightTheme = computed(() => this.effectiveTheme() === 'light');\n readonly isDarkTheme = computed(() => this.effectiveTheme() === 'dark');\n readonly isHighContrastTheme = computed(() => this._currentTheme() === 'high-contrast');\n\n constructor() {\n // Set up effects and watchers only in browser environment\n if (isPlatformBrowser(this.platformId)) {\n this.initializeBrowserFeatures();\n }\n \n // Register cleanup on destroy\n this.destroyRef.onDestroy(() => {\n this.cleanup();\n });\n }\n\n private initializeBrowserFeatures(): void {\n // Effect to apply theme changes to DOM\n effect(() => {\n const theme = this._currentTheme();\n this.applyThemeToDOM(theme);\n });\n\n // Effect to persist theme changes to localStorage\n effect(() => {\n const theme = this._currentTheme();\n localStorage.setItem('c2g-theme', theme);\n });\n\n // Watch for system preference changes\n this.watchSystemPreference();\n }\n\n private getInitialTheme(): ThemeMode {\n if (!isPlatformBrowser(this.platformId)) {\n return 'light';\n }\n \n try {\n const stored = localStorage.getItem('c2g-theme') as ThemeMode;\n return ['light', 'dark', 'auto', 'high-contrast'].includes(stored) ? stored : 'light';\n } catch {\n return 'light';\n }\n }\n\n private getInitialSystemPreference(): boolean {\n if (!isPlatformBrowser(this.platformId)) {\n return false;\n }\n \n try {\n return window.matchMedia('(prefers-color-scheme: dark)').matches;\n } catch {\n return false;\n }\n }\n\n private watchSystemPreference(): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n try {\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n \n const handler = (event: MediaQueryListEvent) => {\n this._isSystemDark.set(event.matches);\n };\n\n // Set initial value\n this._isSystemDark.set(mediaQuery.matches);\n \n // Listen for changes\n mediaQuery.addEventListener('change', handler);\n \n // Store cleanup function\n this.mediaQueryCleanup = () => {\n mediaQuery.removeEventListener('change', handler);\n };\n } catch (error) {\n console.warn('Failed to watch system preference changes:', error);\n }\n }\n\n private applyThemeToDOM(theme: ThemeMode): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n try {\n const body = document.body;\n \n // Remove all theme classes\n body.classList.remove('theme-light', 'theme-dark', 'theme-auto', 'theme-high-contrast');\n \n // Add the new theme class\n body.classList.add(`theme-${theme}`);\n } catch (error) {\n console.warn('Failed to apply theme to DOM:', error);\n }\n }\n\n // Public methods\n setTheme(theme: ThemeMode): void {\n this._currentTheme.set(theme);\n }\n\n toggleTheme(): void {\n const current = this._currentTheme();\n const next = current === 'light' ? 'dark' : 'light';\n this.setTheme(next);\n }\n\n resetToSystemPreference(): void {\n this.setTheme('auto');\n }\n\n // Legacy method compatibility (if needed)\n getCurrentTheme(): ThemeMode {\n return this._currentTheme();\n }\n\n getEffectiveTheme(): ThemeMode {\n return this.effectiveTheme();\n }\n\n private cleanup(): void {\n // Clean up media query listeners\n if (this.mediaQueryCleanup) {\n this.mediaQueryCleanup();\n this.mediaQueryCleanup = undefined;\n }\n }\n}","import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ThemeService, ThemeMode } from './theme.service';\n\n@Component({\n selector: 'c2g-theme-switcher',\n standalone: true,\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n MatTooltipModule,\n TranslateModule\n ],\n template: `\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"themeMenu\"\n [matTooltip]=\"'theme.switcher.tooltip' | translate\"\n class=\"theme-switcher-button\"\n aria-label=\"Choose theme\">\n <mat-icon>{{ themeIcon() }}</mat-icon>\n </button>\n\n <mat-menu #themeMenu=\"matMenu\" class=\"theme-menu\">\n @for (option of themeOptions; track option.value) {\n <button\n mat-menu-item\n (click)=\"selectTheme(option.value)\"\n [class.active]=\"currentTheme() === option.value\">\n <mat-icon>{{ option.icon }}</mat-icon>\n <span>{{ option.label | translate }}</span>\n @if (currentTheme() === option.value) {\n <mat-icon class=\"selected-indicator\">\n check\n </mat-icon>\n }\n </button>\n }\n </mat-menu>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [`\n .theme-switcher-button {\n color: var(--c2g-color-text-primary);\n transition: color var(--c2g-transition-fast);\n }\n\n .theme-switcher-button:hover {\n color: var(--c2g-color-primary);\n }\n\n .theme-menu {\n .mat-mdc-menu-item {\n display: flex;\n align-items: center;\n gap: var(--c2g-space-2);\n color: var(--c2g-color-text-primary);\n \n &.active {\n background-color: var(--c2g-color-primary-container);\n color: var(--c2g-color-on-primary-container);\n }\n\n &:hover {\n background-color: var(--c2g-color-surface-container-high);\n }\n\n .selected-indicator {\n margin-left: auto;\n color: var(--c2g-color-primary);\n }\n }\n }\n `]\n})\nexport class ThemeSwitcherComponent {\n protected readonly themeService = inject(ThemeService);\n\n // Use signals for reactive updates\n protected readonly currentTheme = this.themeService.currentTheme;\n \n // Computed signal for theme icon\n protected readonly themeIcon = computed(() => {\n const current = this.currentTheme();\n const option = this.themeOptions.find(opt => opt.value === current);\n return option?.icon || 'brightness_auto';\n });\n\n protected readonly themeOptions = [\n { \n value: 'light' as ThemeMode, \n label: 'theme.options.light', \n icon: 'light_mode' \n },\n { \n value: 'dark' as ThemeMode, \n label: 'theme.options.dark', \n icon: 'dark_mode' \n },\n { \n value: 'auto' as ThemeMode, \n label: 'theme.options.auto', \n icon: 'brightness_auto' \n },\n { \n value: 'high-contrast' as ThemeMode, \n label: 'theme.options.highContrast', \n icon: 'contrast' \n }\n ];\n\n protected selectTheme(theme: ThemeMode): void {\n this.themeService.setTheme(theme);\n }\n}","import { Provider } from '@angular/core';\nimport { HighContrastModeDetector } from '@angular/cdk/a11y';\n\n/**\n * Providers for the C2G Theme system that includes all necessary CDK dependencies\n */\nexport const C2G_THEME_PROVIDERS: Provider[] = [\n HighContrastModeDetector,\n];\n\n/**\n * Mock providers for testing or SSR environments where CDK might not be needed\n */\nexport const C2G_THEME_MOCK_PROVIDERS: Provider[] = [\n {\n provide: HighContrastModeDetector,\n useValue: {\n _platform: { isBrowser: false },\n isHighContrast: () => false\n }\n }\n];\n\n/**\n * Smart provider factory that chooses appropriate providers based on environment\n */\nexport function getC2GThemeProviders(): Provider[] {\n try {\n // Try to create HighContrastModeDetector - if it fails, use mock\n return C2G_THEME_PROVIDERS;\n } catch {\n return C2G_THEME_MOCK_PROVIDERS;\n }\n}","const de = {\n c2g: {\n loader: { label: 'Laden...' },\n skeleton: { loading: 'Inhalt wird geladen...' },\n alert: {\n close: 'Schliessen',\n demo: {\n info_title: 'Reisehinweis',\n info_message: 'Deine Packliste wurde mit den aktuellen Wetterdaten synchronisiert.',\n success_title: 'Liste gespeichert',\n success_message: 'Deine Packliste wurde erfolgreich gespeichert.',\n warning_title: 'Reisepass erforderlich',\n warning_message: 'Denke daran, deine Reisedokumente einzupacken.',\n danger_title: 'Artikel fehlt',\n danger_message: 'Drei erforderliche Artikel sind noch nicht eingepackt.',\n },\n },\n progress: { label: 'Fortschritt' },\n lottie: { label: 'Ladeanimation' },\n button: {\n submit: 'Absenden',\n cancel: 'Abbrechen',\n save: 'Speichern',\n add_item: 'Artikel hinzufügen',\n invite: 'Mitglied einladen',\n },\n danger_zone: {\n default: { heading: 'Gefahrenzone' },\n group: {\n transfer_ownership: { title: 'Eigentümerschaft übertragen', description: 'Gruppe an ein anderes Mitglied übergeben', action: 'Übertragen', aria_label: 'Eigentümerschaft übertragen' },\n delete_group: { title: 'Gruppe löschen', description: 'Löscht die Gruppe dauerhaft. Diese Aktion kann nicht rückgängig gemacht werden.', action: 'Löschen', aria_label: 'Gruppe löschen' },\n leave_group: { title: 'Gruppe verlassen', description: 'Du verlässt diese Gruppe. Du kannst später wieder beitreten.', action: 'Verlassen', aria_label: 'Gruppe verlassen' },\n },\n },\n input: {\n destination: { label: 'Reiseziel', placeholder: 'z.B. Barcelona', hint: 'Gib die Stadt oder Region deiner Reise ein' },\n email: { label: 'E-Mail-Adresse', placeholder: 'du@beispiel.com', hint: 'Wir senden deine Reisebestätigung hierher' },\n },\n textarea: {\n notes: { label: 'Packnotizen', placeholder: 'Notizen zur Packliste hinzufügen...', hint: 'Wird mit allen Gruppenmitgliedern geteilt' },\n },\n badge: { new: 'Neu', required: 'Pflichtangabe', optional: 'Optional', packed: 'Eingepackt', missing: 'Fehlt' },\n chip: { remove_label: 'Entfernen' },\n tag: { clothing: 'Kleidung', documents: 'Dokumente', electronics: 'Elektronik', toiletries: 'Pflegeartikel' },\n switch: { label: 'Aktiv', notifications: 'Reise-Benachrichtigungen', shared: 'Geteilte Liste' },\n checkbox: { packed: 'Als eingepackt markieren', agree: 'Ich stimme den Bedingungen zu', required: 'Pflichtartikel' },\n radio: {\n legend: 'Optionen',\n trip_type: { legend: 'Reiseart', beach: 'Strand', city: 'Städtereise', hiking: 'Wandern', business: 'Geschäftsreise' },\n },\n segmented_toggle: { view_list: 'Liste', view_grid: 'Raster', view_map: 'Karte' },\n },\n packingList: {\n search: { placeholder: 'Artikel suchen...' },\n filters: {\n essentialsOnly: 'Nur Pflichtartikel',\n visibility: { all: 'Alle', shared: 'Geteilt', personal: 'Persönlich', private: 'Privat' },\n },\n private: { title: 'Private Artikel' },\n empty: 'Keine Artikel vorhanden',\n category: { stats: '{{packed}}/{{total}} eingepackt' },\n delete: { confirm: 'Artikel wirklich löschen?' },\n addItem: 'Artikel hinzufügen',\n createItem: 'Artikel erstellen',\n itemName: 'Bezeichnung',\n category_label: 'Kategorie',\n visibility: 'Sichtbarkeit',\n essential: 'Pflichtartikel',\n quantity: 'Menge',\n weight: 'Gewicht (kg)',\n volume: 'Volumen (L)',\n hint: 'Hinweis',\n cancel: 'Abbrechen',\n create: 'Erstellen',\n categories: {\n shelter: 'Unterkunft',\n sleeping: 'Schlafen',\n cooking: 'Kochen',\n clothing: 'Kleidung',\n safety: 'Sicherheit',\n navigation: 'Navigation',\n hygiene: 'Hygiene',\n medical: 'Medizin',\n electronics: 'Elektronik',\n documents: 'Dokumente',\n entertainment: 'Unterhaltung',\n other: 'Sonstiges',\n },\n },\n};\n\nconst en = {\n c2g: {\n loader: { label: 'Loading...' },\n skeleton: { loading: 'Content loading...' },\n alert: {\n close: 'Dismiss',\n demo: {\n info_title: 'Trip Update',\n info_message: 'Your packing list has been synced with the latest weather data.',\n success_title: 'List Saved',\n success_message: 'Your packing list was saved successfully.',\n warning_title: 'Passport Required',\n warning_message: 'Remember to pack your travel documents.',\n danger_title: 'Item Missing',\n danger_message: 'Three required items are still unpacked.',\n },\n },\n progress: { label: 'Progress' },\n lottie: { label: 'Loading animation' },\n button: {\n submit: 'Submit',\n cancel: 'Cancel',\n save: 'Save',\n add_item: 'Add Item',\n invite: 'Invite Member',\n },\n danger_zone: {\n default: { heading: 'Danger Zone' },\n group: {\n transfer_ownership: { title: 'Transfer ownership', description: 'Hand the group over to another member.', action: 'Transfer', aria_label: 'Transfer ownership' },\n delete_group: { title: 'Delete group', description: 'Deletes the group permanently. This action cannot be undone.', action: 'Delete', aria_label: 'Delete group' },\n leave_group: { title: 'Leave group', description: 'You leave this group. You can join again later.', action: 'Leave', aria_label: 'Leave group' },\n },\n },\n input: {\n destination: { label: 'Destination', placeholder: 'e.g. Barcelona', hint: 'Enter the city or region of your trip' },\n email: { label: 'Email address', placeholder: 'you@example.com', hint: 'We will send your trip confirmation here' },\n },\n textarea: {\n notes: { label: 'Packing notes', placeholder: 'Add notes about your packing list...', hint: 'Shared with all group members' },\n },\n badge: { new: 'New', required: 'Required', optional: 'Optional', packed: 'Packed', missing: 'Missing' },\n chip: { remove_label: 'Remove' },\n tag: { clothing: 'Clothing', documents: 'Documents', electronics: 'Electronics', toiletries: 'Toiletries' },\n switch: { label: 'Active', notifications: 'Trip notifications', shared: 'Shared list' },\n checkbox: { packed: 'Marked as packed', agree: 'I agree to the terms', required: 'Required item' },\n radio: {\n legend: 'Options',\n trip_type: { legend: 'Trip type', beach: 'Beach', city: 'City trip', hiking: 'Hiking', business: 'Business' },\n },\n segmented_toggle: { view_list: 'List', view_grid: 'Grid', view_map: 'Map' },\n },\n packingList: {\n search: { placeholder: 'Search items...' },\n filters: {\n essentialsOnly: 'Essentials only',\n visibility: { all: 'All', shared: 'Shared', personal: 'Personal', private: 'Private' },\n },\n private: { title: 'Private Items' },\n empty: 'No items yet',\n category: { stats: '{{packed}}/{{total}} packed' },\n delete: { confirm: 'Delete this item?' },\n addItem: 'Add item',\n createItem: 'Create item',\n itemName: 'Name',\n category_label: 'Category',\n visibility: 'Visibility',\n essential: 'Essential',\n quantity: 'Quantity',\n weight: 'Weight (kg)',\n volume: 'Volume (L)',\n hint: 'Hint',\n cancel: 'Cancel',\n create: 'Create',\n categories: {\n shelter: 'Shelter',\n sleeping: 'Sleeping',\n cooking: 'Cooking',\n clothing: 'Clothing',\n safety: 'Safety',\n navigation: 'Navigation',\n hygiene: 'Hygiene',\n medical: 'Medical',\n electronics: 'Electronics',\n documents: 'Documents',\n entertainment: 'Entertainment',\n other: 'Other',\n },\n },\n};\n\nexport const C2G_TRANSLATIONS: Record<string, Record<string, unknown>> = { de, en };\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"camp2gether-c2g-ui-theme.mjs","sources":["../../../projects/c2g-ui/theme/theme/theme.service.ts","../../../projects/c2g-ui/theme/theme/theme-switcher.component.ts","../../../projects/c2g-ui/theme/theme/theme.providers.ts","../../../projects/c2g-ui/theme/i18n/translations.ts","../../../projects/c2g-ui/theme/camp2gether-c2g-ui-theme.ts"],"sourcesContent":["import { Injectable, PLATFORM_ID, inject, signal, computed, effect, DestroyRef } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\n\nexport type ThemeMode = 'light' | 'dark' | 'auto' | 'high-contrast';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThemeService {\n private readonly platformId = inject(PLATFORM_ID);\n private readonly destroyRef = inject(DestroyRef);\n \n // Initialize signals in the injection context\n private readonly _currentTheme = signal<ThemeMode>(this.getInitialTheme());\n private readonly _isSystemDark = signal<boolean>(this.getInitialSystemPreference());\n \n // Media query listener cleanup\n private mediaQueryCleanup?: () => void;\n\n // Public signals\n readonly currentTheme = this._currentTheme.asReadonly();\n readonly isSystemDark = this._isSystemDark.asReadonly();\n\n // Computed signal for effective theme\n readonly effectiveTheme = computed<ThemeMode>(() => {\n const current = this._currentTheme();\n if (current === 'auto') {\n return this._isSystemDark() ? 'dark' : 'light';\n }\n return current;\n });\n\n // Computed signals for theme checks\n readonly isLightTheme = computed(() => this.effectiveTheme() === 'light');\n readonly isDarkTheme = computed(() => this.effectiveTheme() === 'dark');\n readonly isHighContrastTheme = computed(() => this._currentTheme() === 'high-contrast');\n\n constructor() {\n // Set up effects and watchers only in browser environment\n if (isPlatformBrowser(this.platformId)) {\n this.initializeBrowserFeatures();\n }\n \n // Register cleanup on destroy\n this.destroyRef.onDestroy(() => {\n this.cleanup();\n });\n }\n\n private initializeBrowserFeatures(): void {\n // Effect to apply theme changes to DOM\n effect(() => {\n const theme = this._currentTheme();\n this.applyThemeToDOM(theme);\n });\n\n // Effect to persist theme changes to localStorage\n effect(() => {\n const theme = this._currentTheme();\n localStorage.setItem('c2g-theme', theme);\n });\n\n // Watch for system preference changes\n this.watchSystemPreference();\n }\n\n private getInitialTheme(): ThemeMode {\n if (!isPlatformBrowser(this.platformId)) {\n return 'light';\n }\n \n try {\n const stored = localStorage.getItem('c2g-theme') as ThemeMode;\n return ['light', 'dark', 'auto', 'high-contrast'].includes(stored) ? stored : 'light';\n } catch {\n return 'light';\n }\n }\n\n private getInitialSystemPreference(): boolean {\n if (!isPlatformBrowser(this.platformId)) {\n return false;\n }\n \n try {\n return window.matchMedia('(prefers-color-scheme: dark)').matches;\n } catch {\n return false;\n }\n }\n\n private watchSystemPreference(): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n try {\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n \n const handler = (event: MediaQueryListEvent) => {\n this._isSystemDark.set(event.matches);\n };\n\n // Set initial value\n this._isSystemDark.set(mediaQuery.matches);\n \n // Listen for changes\n mediaQuery.addEventListener('change', handler);\n \n // Store cleanup function\n this.mediaQueryCleanup = () => {\n mediaQuery.removeEventListener('change', handler);\n };\n } catch (error) {\n console.warn('Failed to watch system preference changes:', error);\n }\n }\n\n private applyThemeToDOM(theme: ThemeMode): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n try {\n const body = document.body;\n \n // Remove all theme classes\n body.classList.remove('theme-light', 'theme-dark', 'theme-auto', 'theme-high-contrast');\n \n // Add the new theme class\n body.classList.add(`theme-${theme}`);\n } catch (error) {\n console.warn('Failed to apply theme to DOM:', error);\n }\n }\n\n // Public methods\n setTheme(theme: ThemeMode): void {\n this._currentTheme.set(theme);\n }\n\n toggleTheme(): void {\n const current = this._currentTheme();\n const next = current === 'light' ? 'dark' : 'light';\n this.setTheme(next);\n }\n\n resetToSystemPreference(): void {\n this.setTheme('auto');\n }\n\n // Legacy method compatibility (if needed)\n getCurrentTheme(): ThemeMode {\n return this._currentTheme();\n }\n\n getEffectiveTheme(): ThemeMode {\n return this.effectiveTheme();\n }\n\n private cleanup(): void {\n // Clean up media query listeners\n if (this.mediaQueryCleanup) {\n this.mediaQueryCleanup();\n this.mediaQueryCleanup = undefined;\n }\n }\n}","import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ThemeService, ThemeMode } from './theme.service';\n\n@Component({\n selector: 'c2g-theme-switcher',\n standalone: true,\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n MatTooltipModule,\n TranslateModule\n ],\n template: `\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"themeMenu\"\n [matTooltip]=\"'theme.switcher.tooltip' | translate\"\n class=\"theme-switcher-button\"\n aria-label=\"Choose theme\">\n <mat-icon>{{ themeIcon() }}</mat-icon>\n </button>\n\n <mat-menu #themeMenu=\"matMenu\" class=\"theme-menu\">\n @for (option of themeOptions; track option.value) {\n <button\n mat-menu-item\n (click)=\"selectTheme(option.value)\"\n [class.active]=\"currentTheme() === option.value\">\n <mat-icon>{{ option.icon }}</mat-icon>\n <span>{{ option.label | translate }}</span>\n @if (currentTheme() === option.value) {\n <mat-icon class=\"selected-indicator\">\n check\n </mat-icon>\n }\n </button>\n }\n </mat-menu>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [`\n .theme-switcher-button {\n color: var(--c2g-color-text-primary);\n transition: color var(--c2g-transition-fast);\n }\n\n .theme-switcher-button:hover {\n color: var(--c2g-color-primary);\n }\n\n .theme-menu {\n .mat-mdc-menu-item {\n display: flex;\n align-items: center;\n gap: var(--c2g-space-2);\n color: var(--c2g-color-text-primary);\n \n &.active {\n background-color: var(--c2g-color-primary-container);\n color: var(--c2g-color-on-primary-container);\n }\n\n &:hover {\n background-color: var(--c2g-color-surface-container-high);\n }\n\n .selected-indicator {\n margin-left: auto;\n color: var(--c2g-color-primary);\n }\n }\n }\n `]\n})\nexport class ThemeSwitcherComponent {\n protected readonly themeService = inject(ThemeService);\n\n // Use signals for reactive updates\n protected readonly currentTheme = this.themeService.currentTheme;\n \n // Computed signal for theme icon\n protected readonly themeIcon = computed(() => {\n const current = this.currentTheme();\n const option = this.themeOptions.find(opt => opt.value === current);\n return option?.icon || 'brightness_auto';\n });\n\n protected readonly themeOptions = [\n { \n value: 'light' as ThemeMode, \n label: 'theme.options.light', \n icon: 'light_mode' \n },\n { \n value: 'dark' as ThemeMode, \n label: 'theme.options.dark', \n icon: 'dark_mode' \n },\n { \n value: 'auto' as ThemeMode, \n label: 'theme.options.auto', \n icon: 'brightness_auto' \n },\n { \n value: 'high-contrast' as ThemeMode, \n label: 'theme.options.highContrast', \n icon: 'contrast' \n }\n ];\n\n protected selectTheme(theme: ThemeMode): void {\n this.themeService.setTheme(theme);\n }\n}","import { Provider } from '@angular/core';\nimport { HighContrastModeDetector } from '@angular/cdk/a11y';\n\n/**\n * Providers for the C2G Theme system that includes all necessary CDK dependencies\n */\nexport const C2G_THEME_PROVIDERS: Provider[] = [\n HighContrastModeDetector,\n];\n\n/**\n * Mock providers for testing or SSR environments where CDK might not be needed\n */\nexport const C2G_THEME_MOCK_PROVIDERS: Provider[] = [\n {\n provide: HighContrastModeDetector,\n useValue: {\n _platform: { isBrowser: false },\n isHighContrast: () => false\n }\n }\n];\n\n/**\n * Smart provider factory that chooses appropriate providers based on environment\n */\nexport function getC2GThemeProviders(): Provider[] {\n try {\n // Try to create HighContrastModeDetector - if it fails, use mock\n return C2G_THEME_PROVIDERS;\n } catch {\n return C2G_THEME_MOCK_PROVIDERS;\n }\n}","const de = {\n c2g: {\n loader: { label: 'Laden...' },\n skeleton: { loading: 'Inhalt wird geladen...' },\n alert: {\n close: 'Schliessen',\n demo: {\n info_title: 'Reisehinweis',\n info_message: 'Deine Packliste wurde mit den aktuellen Wetterdaten synchronisiert.',\n success_title: 'Liste gespeichert',\n success_message: 'Deine Packliste wurde erfolgreich gespeichert.',\n warning_title: 'Reisepass erforderlich',\n warning_message: 'Denke daran, deine Reisedokumente einzupacken.',\n danger_title: 'Artikel fehlt',\n danger_message: 'Drei erforderliche Artikel sind noch nicht eingepackt.',\n },\n },\n progress: { label: 'Fortschritt' },\n lottie: { label: 'Ladeanimation' },\n button: {\n submit: 'Absenden',\n cancel: 'Abbrechen',\n save: 'Speichern',\n add_item: 'Artikel hinzufügen',\n invite: 'Mitglied einladen',\n },\n danger_zone: {\n default: { heading: 'Gefahrenzone' },\n group: {\n transfer_ownership: { title: 'Eigentümerschaft übertragen', description: 'Gruppe an ein anderes Mitglied übergeben', action: 'Übertragen', aria_label: 'Eigentümerschaft übertragen' },\n delete_group: { title: 'Gruppe löschen', description: 'Löscht die Gruppe dauerhaft. Diese Aktion kann nicht rückgängig gemacht werden.', action: 'Löschen', aria_label: 'Gruppe löschen' },\n leave_group: { title: 'Gruppe verlassen', description: 'Du verlässt diese Gruppe. Du kannst später wieder beitreten.', action: 'Verlassen', aria_label: 'Gruppe verlassen' },\n },\n },\n input: {\n destination: { label: 'Reiseziel', placeholder: 'z.B. Barcelona', hint: 'Gib die Stadt oder Region deiner Reise ein' },\n email: { label: 'E-Mail-Adresse', placeholder: 'du@beispiel.com', hint: 'Wir senden deine Reisebestätigung hierher' },\n },\n textarea: {\n notes: { label: 'Packnotizen', placeholder: 'Notizen zur Packliste hinzufügen...', hint: 'Wird mit allen Gruppenmitgliedern geteilt' },\n },\n badge: { new: 'Neu', required: 'Pflichtangabe', optional: 'Optional', packed: 'Eingepackt', missing: 'Fehlt' },\n chip: { remove_label: 'Entfernen' },\n tag: { clothing: 'Kleidung', documents: 'Dokumente', electronics: 'Elektronik', toiletries: 'Pflegeartikel' },\n switch: { label: 'Aktiv', notifications: 'Reise-Benachrichtigungen', shared: 'Geteilte Liste' },\n checkbox: { packed: 'Als eingepackt markieren', agree: 'Ich stimme den Bedingungen zu', required: 'Pflichtartikel' },\n radio: {\n legend: 'Optionen',\n trip_type: { legend: 'Reiseart', beach: 'Strand', city: 'Städtereise', hiking: 'Wandern', business: 'Geschäftsreise' },\n },\n segmented_toggle: { view_list: 'Liste', view_grid: 'Raster', view_map: 'Karte' },\n },\n packingList: {\n search: { placeholder: 'Artikel suchen...' },\n filters: {\n essentialsOnly: 'Nur Pflichtartikel',\n visibility: { all: 'Alle', shared: 'Geteilt', personal: 'Persönlich', private: 'Privat' },\n },\n private: { title: 'Private Artikel' },\n empty: 'Keine Artikel vorhanden',\n category: { stats: '{{packed}}/{{total}} eingepackt', label: 'Kategorie' },\n delete: { confirm: 'Artikel wirklich löschen?' },\n addItem: 'Artikel hinzufügen',\n createItem: 'Artikel erstellen',\n itemName: 'Bezeichnung',\n visibility: 'Sichtbarkeit',\n essential: 'Pflichtartikel',\n quantity: 'Menge',\n weight: 'Gewicht (kg)',\n volume: 'Volumen (L)',\n hint: 'Hinweis',\n cancel: 'Abbrechen',\n create: 'Erstellen',\n categories: {\n shelter: 'Unterkunft',\n sleeping: 'Schlafen',\n cookingEating: 'Kochen & Essen',\n clothing: 'Kleidung',\n safety: 'Sicherheit',\n navigation: 'Navigation',\n hygiene: 'Hygiene',\n medical: 'Medizin',\n electronics: 'Elektronik',\n documents: 'Dokumente',\n entertainment: 'Unterhaltung',\n other: 'Sonstiges',\n lighting: 'Beleuchtung',\n furniture: 'Möbel & Ausstattung',\n hydration: 'Getränke',\n mobility: 'Transport',\n tools: 'Werkzeug',\n activity: 'Aktivitäten',\n },\n },\n};\n\nconst en = {\n c2g: {\n loader: { label: 'Loading...' },\n skeleton: { loading: 'Content loading...' },\n alert: {\n close: 'Dismiss',\n demo: {\n info_title: 'Trip Update',\n info_message: 'Your packing list has been synced with the latest weather data.',\n success_title: 'List Saved',\n success_message: 'Your packing list was saved successfully.',\n warning_title: 'Passport Required',\n warning_message: 'Remember to pack your travel documents.',\n danger_title: 'Item Missing',\n danger_message: 'Three required items are still unpacked.',\n },\n },\n progress: { label: 'Progress' },\n lottie: { label: 'Loading animation' },\n button: {\n submit: 'Submit',\n cancel: 'Cancel',\n save: 'Save',\n add_item: 'Add Item',\n invite: 'Invite Member',\n },\n danger_zone: {\n default: { heading: 'Danger Zone' },\n group: {\n transfer_ownership: { title: 'Transfer ownership', description: 'Hand the group over to another member.', action: 'Transfer', aria_label: 'Transfer ownership' },\n delete_group: { title: 'Delete group', description: 'Deletes the group permanently. This action cannot be undone.', action: 'Delete', aria_label: 'Delete group' },\n leave_group: { title: 'Leave group', description: 'You leave this group. You can join again later.', action: 'Leave', aria_label: 'Leave group' },\n },\n },\n input: {\n destination: { label: 'Destination', placeholder: 'e.g. Barcelona', hint: 'Enter the city or region of your trip' },\n email: { label: 'Email address', placeholder: 'you@example.com', hint: 'We will send your trip confirmation here' },\n },\n textarea: {\n notes: { label: 'Packing notes', placeholder: 'Add notes about your packing list...', hint: 'Shared with all group members' },\n },\n badge: { new: 'New', required: 'Required', optional: 'Optional', packed: 'Packed', missing: 'Missing' },\n chip: { remove_label: 'Remove' },\n tag: { clothing: 'Clothing', documents: 'Documents', electronics: 'Electronics', toiletries: 'Toiletries' },\n switch: { label: 'Active', notifications: 'Trip notifications', shared: 'Shared list' },\n checkbox: { packed: 'Marked as packed', agree: 'I agree to the terms', required: 'Required item' },\n radio: {\n legend: 'Options',\n trip_type: { legend: 'Trip type', beach: 'Beach', city: 'City trip', hiking: 'Hiking', business: 'Business' },\n },\n segmented_toggle: { view_list: 'List', view_grid: 'Grid', view_map: 'Map' },\n },\n packingList: {\n search: { placeholder: 'Search items...' },\n filters: {\n essentialsOnly: 'Essentials only',\n visibility: { all: 'All', shared: 'Shared', personal: 'Personal', private: 'Private' },\n },\n private: { title: 'Private Items' },\n empty: 'No items yet',\n category: { stats: '{{packed}}/{{total}} packed', label: 'Category' },\n delete: { confirm: 'Delete this item?' },\n addItem: 'Add item',\n createItem: 'Create item',\n itemName: 'Name',\n visibility: 'Visibility',\n essential: 'Essential',\n quantity: 'Quantity',\n weight: 'Weight (kg)',\n volume: 'Volume (L)',\n hint: 'Hint',\n cancel: 'Cancel',\n create: 'Create',\n categories: {\n shelter: 'Shelter',\n sleeping: 'Sleeping',\n cookingEating: 'Cooking & Eating',\n clothing: 'Clothing',\n safety: 'Safety',\n navigation: 'Navigation',\n hygiene: 'Hygiene',\n medical: 'Medical',\n electronics: 'Electronics',\n documents: 'Documents',\n entertainment: 'Entertainment',\n other: 'Other',\n lighting: 'Lighting',\n furniture: 'Furniture & Equipment',\n hydration: 'Hydration',\n mobility: 'Transport',\n tools: 'Tools',\n activity: 'Activities',\n },\n },\n};\n\nexport const C2G_TRANSLATIONS: Record<string, Record<string, unknown>> = { de, en };\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camp2gether/c2g-ui",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org/",
6
6
  "access": "public"