diff --git a/.vscode/settings.json b/.vscode/settings.json index 45748853..ae685813 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -10,5 +10,8 @@ ], "editor.tabSize": 2, "editor.detectIndentation": false, - "editor.formatOnSave": true + "editor.formatOnSave": true, + "[html]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + } } \ No newline at end of file diff --git a/apps/distortion/src/app/pages/map/feature-info-modal/asset/asset.component.html b/apps/distortion/src/app/pages/map/feature-info-modal/asset/asset.component.html index 81a28702..85c3f551 100644 --- a/apps/distortion/src/app/pages/map/feature-info-modal/asset/asset.component.html +++ b/apps/distortion/src/app/pages/map/feature-info-modal/asset/asset.component.html @@ -1,23 +1,19 @@ - - - - - {{ asset.properties.name }} - +@if (asset$ | async; as asset) { + + + {{ asset.properties.name }} + - - - - Directions - - - - - + + + + Directions + + + + {{ asset.properties.description }} - - - +} diff --git a/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.html b/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.html index 25e82b60..59ab8005 100644 --- a/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.html +++ b/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.html @@ -1,8 +1,13 @@ - - - - +@if (selectedFeature$ | async; as selectedFeature) { + @switch (selectedFeature.mapLayer) { + @case (mapLayer.Stage) { + + } + @case (mapLayer.Asset) { + + } + @case (mapLayer.AssetIcon) { + + } + } +} diff --git a/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.scss b/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.scss index e69de29b..cc4c13c4 100644 --- a/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.scss +++ b/apps/distortion/src/app/pages/map/feature-info-modal/feature-info-modal.component.scss @@ -0,0 +1,4 @@ +app-stage-timetable { + // Use the same height as the parent container to make scrolling work + height: 100%; +} \ No newline at end of file diff --git a/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.html b/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.html index b7ba7d6e..8de4717a 100644 --- a/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.html +++ b/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.html @@ -1,138 +1,153 @@ - - - {{ stageName$ | async }} +
+
+ + {{ stageName$ | async }} - - @if (tickets$ | async) { - - - - } @if (hasTimetable$ | async) { - - - - } @if (location$ | async; as location) { - - Directions - - } - - + + @if (tickets$ | async) { + + + + } + @if (hasTimetable$ | async) { + + + + } + @if (location$ | async; as location) { + + Directions + + } + + - @if (days$ | async; as days) { - - @for (day of days; track day.id) { - - {{ day.name }} - + @if (days$ | async; as days) { + + + @for (day of days; track day.id) { + + {{ day.name }} + + } + + } - - } - +
- -@if (timetable$ | async; as timetable) { @for (act of timetable; track -act.artist_id; let i = $index) { - - @if (act.start_time) { - - {{ act?.start_time | date : 'HH:mm' }} - - {{ act?.end_time | date : 'HH:mm' }} - - } @else { - N/A - } +
+ @if (timetable$ | async; as timetable) { + + @for (act of timetable; track act.artist_id; let i = $index) { + + @if (act.start_time) { + + {{ act?.start_time | date: 'HH:mm' }} - + {{ act?.end_time | date: 'HH:mm' }} + + } @else { + N/A + } - - {{ act?.name }} - - -} - -} @else { -
-
- @if (tags$ | async; as tags) { @for (tag of tags; track $index) { - - {{ tag }} - - } } -
+ + {{ act?.name }} + + + } + + + + } @else { +
+
+ @if (tags$ | async; as tags) { + @for (tag of tags; track $index) { + + {{ tag }} + + } + } +
- @if (stageDescription$ | async; as description) { -

{{ description }}

- } @else { -
- - No description or timetable available for this stage - -
- } @if (url$ | async; as url) { -
- - More info - -
- } + @if (stageDescription$ | async; as description) { +

{{ description }}

+ } @else { +
+ + No description or timetable available for this stage + +
+ } + @if (url$ | async; as url) { +
+ + More info + +
+ } +
+ } +
-} @if (hasTimetable$ | async) { - - - - - - - - - - Stage description - - - -

{{ stageName$ | async }}

-

{{ stageDescription$ | async }}

-
-
-
-} @if (tickets$ | async) { - - - - - - - - - - Tickets - - - - - - {{ ticket.name }} - - - - - + + + + + + + + + + Stage description + + + +

{{ stageName$ | async }}

+

{{ stageDescription$ | async }}

+
+
+
+} + +@if (tickets$ | async) { + + + + + + + + + + Tickets + + + + + + {{ ticket.name }} + + + + + } diff --git a/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.scss b/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.scss index 47ba5502..59c92ab1 100644 --- a/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.scss +++ b/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.scss @@ -1,15 +1,39 @@ -ion-item { - animation: popIn 0.2s calc(var(--animation-order) * 70ms) both ease-in; -} +.container { + height: 100%; + display: flex; + flex-direction: column; + + ion-toolbar { + --background: var(--ion-toolbar-background-shade); + } -.description { - padding: 0 15px; + main { + flex-grow: 1; + overflow-y: auto; - .no-timetable { - text-align: center; + ion-item { + animation: popIn 0.2s calc(var(--animation-order) * 70ms) both ease-in; - .tag { - margin: 5px; + .time-slot { + color: var(--ion-color-step-600); + } + } + + .description { + padding: 0 15px; + + .more-info { + position: sticky; + bottom: 12px; + } + + .no-timetable { + text-align: center; + + .tag { + margin: 5px; + } + } } } } @@ -29,3 +53,19 @@ ion-item { transform: none; } } + +/* width */ +::-webkit-scrollbar { + width: 10px; +} + +/* Track */ +::-webkit-scrollbar-track { + border-radius: 5px; +} + +/* Handle */ +::-webkit-scrollbar-thumb { + background: var(--ion-color-primary); + border-radius: 5px; +} \ No newline at end of file diff --git a/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.ts b/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.ts index fc31f15e..550b1437 100644 --- a/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.ts +++ b/apps/distortion/src/app/pages/map/feature-info-modal/stage-timetable/stage-timetable.component.ts @@ -86,13 +86,13 @@ export class StageTimetableComponent implements OnInit { const stage$: Observable> = this.mapStateService.selectedMapFeature$.pipe( filter((feature) => feature.mapLayer === MapLayer.Stage), - map((stage) => stage as MapClickedFeature) + map((stage) => stage as MapClickedFeature), ); this.stageName$ = stage$.pipe(map((stage) => stage.properties.name)); this.stageDescription$ = stage$.pipe( - map((stage) => stage.properties.description) + map((stage) => stage.properties.description), ); this.url$ = stage$.pipe(map((stage) => stage.properties.url)); @@ -104,10 +104,10 @@ export class StageTimetableComponent implements OnInit { stage.properties.timetables .map((t) => t.day) .sort( - (a, b) => new Date(a.date).getTime() - new Date(b.date).getTime() - ) + (a, b) => new Date(a.date).getTime() - new Date(b.date).getTime(), + ), ), - tap((days) => this._selectedDay$.next(days[0].id)) + tap((days) => this._selectedDay$.next(days[0].id)), ); this.timetable$ = combineLatest([stage$, this.selectedDay$]).pipe( @@ -115,14 +115,14 @@ export class StageTimetableComponent implements OnInit { map( ([stage, day]) => stage.properties.timetables.find( - (timetable) => timetable.day.id === day - ).timetable - ) + (timetable) => timetable.day.id === day, + ).timetable, + ), ); // If no timetables assigned to stage, backend returns [null] for timetables array this.hasTimetable$ = stage$.pipe( - map((stage) => stage.properties.timetables[0] !== null) + map((stage) => stage.properties.timetables[0] !== null), ); this.tickets$ = stage$.pipe(map((stage) => stage.properties.tickets)); @@ -130,13 +130,13 @@ export class StageTimetableComponent implements OnInit { this.tags$ = stage$.pipe(map((stage) => stage.properties.tags)); this.location$ = stage$.pipe( - map((stage) => stage.geometry.coordinates as [number, number]) + map((stage) => stage.geometry.coordinates as [number, number]), ); } onSelectDay(event: Event): void { this._selectedDay$.next( - (event as SegmentCustomEvent).detail.value.toString() + (event as SegmentCustomEvent).detail.value.toString(), ); } diff --git a/apps/distortion/src/app/pages/map/map.page.ts b/apps/distortion/src/app/pages/map/map.page.ts index e6b70da9..1d072bee 100644 --- a/apps/distortion/src/app/pages/map/map.page.ts +++ b/apps/distortion/src/app/pages/map/map.page.ts @@ -67,7 +67,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { mapLoaded$ = this.mapStateService.mapLoaded$; mapIdle$ = this.mapStateService.mapIdle$; hideHeader$ = this.mapStateService.mapInteraction$.pipe( - map((interaction) => !interaction) + map((interaction) => !interaction), ); private abandon$ = new Subject(); @@ -81,10 +81,10 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { .pipe( withLatestFrom( this.mapStateService.dayMaskBounds$, - this.filterEventsStateService.eventTypes$ + this.filterEventsStateService.eventTypes$, ), filter( - ([dayId, masks, eventTypes]) => !!dayId && !!masks && !!eventTypes + ([dayId, masks, eventTypes]) => !!dayId && !!masks && !!eventTypes, ), map(([dayId, masks, eventTypes]) => ({ eventTypes, @@ -94,7 +94,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { this.mapService.fitBounds( mask.bounds as LngLatBoundsLike, 80, - [0, 30] + [0, 30], ); this.mapService.removeFeatureHighlight(MapLayer.EventHighLight); this.mapService.highlightFeature(MapLayer.DayEventMask, mask.id); @@ -109,7 +109,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { catchError((err) => { console.log(err); return EMPTY; - }) + }), ) .subscribe(); @@ -118,11 +118,11 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { withLatestFrom( this.filterEventsStateService.selectedDayId$, this.mapStateService.dayMaskBounds$, - this.filterEventsStateService.events$ + this.filterEventsStateService.events$, ), filter( ([eventTypeId, dayId, masks, events]) => - !!eventTypeId && !!dayId && !!masks && !!events + !!eventTypeId && !!dayId && !!masks && !!events, ), map(([eventTypeId, dayId, masks, events]) => ({ events, @@ -132,7 +132,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { this.mapService.fitBounds( mask.bounds as LngLatBoundsLike, 80, - [0, 30] + [0, 30], ); this.mapService.highlightFeature(MapLayer.EventHighLight, mask.id); @@ -145,7 +145,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { catchError((err) => { console.log(err); return EMPTY; - }) + }), ) .subscribe(); @@ -156,7 +156,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { this.mapService.fitBounds( event.bounds as LngLatBoundsLike, 10, - [0, 30] + [0, 30], ); this.mapService.highlightFeature(MapLayer.EventHighLight, event.id); }), @@ -164,7 +164,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { catchError((err) => { console.log(err); return EMPTY; - }) + }), ) .subscribe(); @@ -172,14 +172,14 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { .pipe( switchMap((feature) => { if (feature.mapLayer === MapLayer.Stage) { - return this.openFeatureInfoModal(0.5, [0, 0.5, 0.75, 0.9]); + return this.openFeatureInfoModal(1, [0, 1]); } if ( feature.mapLayer === MapLayer.Asset || feature.mapLayer === MapLayer.AssetIcon ) { - return this.openFeatureInfoModal(0.3, [0, 0.3, 0.6]); + return this.openFeatureInfoModal(0.3, [0, 0.3, 1]); } return EMPTY; @@ -188,7 +188,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { catchError((err) => { console.log(err); return EMPTY; - }) + }), ) .subscribe(); @@ -197,7 +197,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { .pipe( filter((mapInteraction) => mapInteraction && !!this.modal), tap(() => this.modal.dismiss()), - takeUntil(this.abandon$) + takeUntil(this.abandon$), ) .subscribe(); @@ -205,14 +205,15 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { merge( this.tabStateService.currentTab$.pipe( distinctUntilChanged(), - filter((tab) => tab === Tab.Map) + filter((tab) => tab === Tab.Map), ), this.routeHistoryService.history$.pipe( map( - (history) => history.current === `/${RouteName.Tabs}/${RouteName.Map}` + (history) => + history.current === `/${RouteName.Tabs}/${RouteName.Map}`, ), - filter((isMapRoute) => isMapRoute) - ) + filter((isMapRoute) => isMapRoute), + ), ) .pipe( withLatestFrom(this.mapStateService.mapLoaded$), @@ -223,7 +224,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { this.mapService.resize(); }, 200); }), - takeUntil(this.abandon$) + takeUntil(this.abandon$), ) .subscribe(); } @@ -240,10 +241,7 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { this.abandon$.complete(); } - openFeatureInfoModal( - initialBreakpoint: number = 0.4, - breakpoints: number[] = [0.2, 0.4, 0.7, 0.9] - ) { + openFeatureInfoModal(initialBreakpoint: number, breakpoints: number[]) { return from( this.modalCtrl.create({ component: FeatureInfoModalComponent, @@ -252,12 +250,13 @@ export class MapPage implements OnInit, AfterViewInit, OnDestroy { backdropDismiss: false, showBackdrop: false, backdropBreakpoint: initialBreakpoint, - }) + cssClass: 'feature-info-modal', + }), ).pipe( tap((modal) => { this.modal = modal; modal.present(); - }) + }), ); } } diff --git a/apps/distortion/src/global.scss b/apps/distortion/src/global.scss index 9b6fbafc..5e07a7f8 100644 --- a/apps/distortion/src/global.scss +++ b/apps/distortion/src/global.scss @@ -49,10 +49,7 @@ h3 { 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12) !important; } -// Center map attribution control -// .maplibregl-ctrl-bottom-left { -// bottom: -6px; -// width: 100%; -// display: flex; -// justify-content: center; -// } +ion-modal.feature-info-modal { + --border-radius: 10px 10px 0 0; + --height: 50%; +} \ No newline at end of file diff --git a/apps/distortion/src/theme/variables.scss b/apps/distortion/src/theme/variables.scss index 2e316deb..02c1be66 100644 --- a/apps/distortion/src/theme/variables.scss +++ b/apps/distortion/src/theme/variables.scss @@ -97,6 +97,7 @@ --ion-item-background: #332940; --ion-toolbar-background: #332940; + --ion-toolbar-background-shade: #282032; --ion-tab-bar-background: #332940; } @@ -259,4 +260,4 @@ // --ion-card-background: #1e1e1e; // } -// } +// } \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 254c9495..5f25a5c1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -105,7 +105,7 @@ "karma-jasmine-html-reporter": "2.1.0", "nx": "18.2.0", "postcss": "^8.4.5", - "prettier": "^2.6.2", + "prettier": "3.2.5", "supabase": "1.151.1", "tailwindcss": "^3.0.2", "ts-jest": "^29.1.0", @@ -1002,6 +1002,7 @@ "version": "17.3.2", "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-17.3.2.tgz", "integrity": "sha512-+/l/FQpVsOPbxZzSKyqEra+yxoI/r8LlTRqshVACv10+DKMWJMHnDkVUrNxvWHutfn4RszpGMtbtHp3yM9rxcA==", + "dev": true, "dependencies": { "tslib": "^2.3.0" }, @@ -6684,6 +6685,7 @@ "version": "18.2.0", "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-18.2.0.tgz", "integrity": "sha512-4uLWTt1iywZ80cm+u4dASzoRilUiul2t5lvCeubLryGvN+iaNryNIYZcN4yXUY+MIAD5Capzimqe4fjUNWSpQQ==", + "dev": true, "dependencies": { "nx": "18.2.0", "tslib": "^2.3.0" @@ -7701,6 +7703,7 @@ "cpu": [ "arm64" ], + "dev": true, "optional": true, "os": [ "darwin" @@ -7716,6 +7719,7 @@ "cpu": [ "x64" ], + "dev": true, "optional": true, "os": [ "darwin" @@ -7731,6 +7735,7 @@ "cpu": [ "x64" ], + "dev": true, "optional": true, "os": [ "freebsd" @@ -7746,6 +7751,7 @@ "cpu": [ "arm" ], + "dev": true, "optional": true, "os": [ "linux" @@ -7761,6 +7767,7 @@ "cpu": [ "arm64" ], + "dev": true, "optional": true, "os": [ "linux" @@ -7776,6 +7783,7 @@ "cpu": [ "arm64" ], + "dev": true, "optional": true, "os": [ "linux" @@ -7791,6 +7799,7 @@ "cpu": [ "x64" ], + "dev": true, "optional": true, "os": [ "linux" @@ -7806,6 +7815,7 @@ "cpu": [ "x64" ], + "dev": true, "optional": true, "os": [ "linux" @@ -7821,6 +7831,7 @@ "cpu": [ "arm64" ], + "dev": true, "optional": true, "os": [ "win32" @@ -7836,6 +7847,7 @@ "cpu": [ "x64" ], + "dev": true, "optional": true, "os": [ "win32" @@ -8861,14 +8873,6 @@ "npm": ">=7.10.0" } }, - "node_modules/@supabase/auth-js": { - "version": "2.63.0", - "resolved": "https://registry.npmjs.org/@supabase/auth-js/-/auth-js-2.63.0.tgz", - "integrity": "sha512-yIgcHnlgv24GxHtVGUhwGqAFDyJkPIC/xjx7HostN08A8yCy8HIfl4JEkTKyBqD1v1L05jNEJOUke4Lf4O1+Qg==", - "dependencies": { - "@supabase/node-fetch": "^2.6.14" - } - }, "node_modules/@supabase/functions-js": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/@supabase/functions-js/-/functions-js-2.2.2.tgz", @@ -8948,11 +8952,19 @@ "@supabase/storage-js": "2.5.5" } }, + "node_modules/@supabase/supabase-js/node_modules/@supabase/auth-js": { + "version": "2.61.0", + "resolved": "https://registry.npmjs.org/@supabase/auth-js/-/auth-js-2.61.0.tgz", + "integrity": "sha512-ACHvg619Kunpxgx4bFq7qPyX1YEBl22Xxm6uucAVq5VS/UWC3ugq6H+J7m5Lv9XXLSpl+G9O9eNFX1sIyq3gRw==", + "dependencies": { + "@supabase/node-fetch": "^2.6.14" + } + }, "node_modules/@swc-node/core": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/@swc-node/core/-/core-1.12.0.tgz", "integrity": "sha512-AYrEmPL2BT46wbikHwSMR5IK98SelBEYH+ycjalUxJ5xYjEupjF8Fd+NkadKoZAzf5zDtysFKd5R1PY4QBHIiw==", - "devOptional": true, + "dev": true, "engines": { "node": ">= 10" }, @@ -8969,7 +8981,7 @@ "version": "1.8.0", "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.8.0.tgz", "integrity": "sha512-8K3589HoBSmVmrEVrtr4K5sWEithpGDzcFGic81OW0A9sZY38IV5EGRODQWCk0SBDyLhaF+pid120vJAtsHo1A==", - "devOptional": true, + "dev": true, "dependencies": { "@swc-node/core": "^1.12.0", "@swc-node/sourcemap-support": "^0.4.0", @@ -8991,7 +9003,7 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/@swc-node/sourcemap-support/-/sourcemap-support-0.4.0.tgz", "integrity": "sha512-weuRmYTO+4yOtHtPZHXlPdA1dJJJp3QOoZAFZ6uZidu992F2X5v1fQdnb26xs1o3Ex/e2sYhRyY5R6NGNuoATQ==", - "devOptional": true, + "dev": true, "dependencies": { "source-map-support": "^0.5.21", "tslib": "^2.6.2" @@ -9001,7 +9013,7 @@ "version": "1.3.100", "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.100.tgz", "integrity": "sha512-7dKgTyxJjlrMwFZYb1auj3Xq0D8ZBe+5oeIgfMlRU05doXZypYJe0LAk0yjj3WdbwYzpF+T1PLxwTWizI0pckw==", - "devOptional": true, + "dev": true, "hasInstallScript": true, "dependencies": { "@swc/counter": "^0.1.1", @@ -9182,7 +9194,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.2.tgz", "integrity": "sha512-9F4ys4C74eSTEUNndnER3VJ15oru2NumfQxS8geE+f3eB5xvfxpWyqE5XlVnxb/R14uoXi6SLbBwwiDSkv+XEw==", - "devOptional": true + "dev": true }, "node_modules/@swc/helpers": { "version": "0.5.7", @@ -9197,7 +9209,7 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.5.tgz", "integrity": "sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==", - "devOptional": true + "dev": true }, "node_modules/@tootallnate/quickjs-emscripten": { "version": "0.23.0", @@ -10171,21 +10183,6 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", "dev": true }, - "node_modules/@use-gesture/core": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.3.1.tgz", - "integrity": "sha512-WcINiDt8WjqBdUXye25anHiNxPc0VOrlT8F6LLkU6cycrOGUDyY/yyFmsg3k8i5OLvv25llc0QC45GhR/C8llw==", - "peer": true - }, - "node_modules/@use-gesture/vanilla": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/@use-gesture/vanilla/-/vanilla-10.3.1.tgz", - "integrity": "sha512-lT4scGLu59ovA3zmtUonukAGcA0AdOOh+iwNDS05Bsu7Lq9aZToDHhI6D8Q2qvsVraovtsLLYwPrWdG/noMAKw==", - "peer": true, - "dependencies": { - "@use-gesture/core": "10.3.1" - } - }, "node_modules/@vitejs/plugin-basic-ssl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz", @@ -11127,23 +11124,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/babel-plugin-macros": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", - "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - } - }, "node_modules/babel-plugin-polyfill-corejs2": { "version": "0.4.10", "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.10.tgz", @@ -11606,7 +11586,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "devOptional": true + "dev": true }, "node_modules/builtin-modules": { "version": "3.3.0", @@ -12057,7 +12037,7 @@ "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "devOptional": true + "dev": true }, "node_modules/colors": { "version": "1.4.0", @@ -12964,7 +12944,7 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "devOptional": true, + "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -20335,7 +20315,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "devOptional": true + "dev": true }, "node_modules/multicast-dns": { "version": "7.2.5", @@ -21267,6 +21247,7 @@ "version": "18.2.0", "resolved": "https://registry.npmjs.org/nx/-/nx-18.2.0.tgz", "integrity": "sha512-BagaAoBNupBB99qIQKNcE9o3ePSwFSw23Q2fxkvB3aDfr64fuvQGxMGip2DNaIVv8zOoDLixd6PGykL8unVVJg==", + "dev": true, "hasInstallScript": true, "dependencies": { "@nrwl/tao": "18.2.0", @@ -21337,6 +21318,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -21351,6 +21333,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -21359,6 +21342,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -21374,6 +21358,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -21384,12 +21369,14 @@ "node_modules/nx/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "node_modules/nx/node_modules/fs-extra": { "version": "11.2.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "dev": true, "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -21403,6 +21390,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { "node": ">=8" } @@ -21411,6 +21399,7 @@ "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -21425,6 +21414,7 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", + "dev": true, "dependencies": { "bl": "^4.0.3", "chalk": "^4.1.0", @@ -21446,6 +21436,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -21457,6 +21448,7 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", + "dev": true, "dependencies": { "json5": "^2.2.2", "minimist": "^1.2.6", @@ -22212,7 +22204,7 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "devOptional": true, + "dev": true, "engines": { "node": ">= 6" } @@ -23068,15 +23060,15 @@ } }, "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true, "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" @@ -24615,7 +24607,7 @@ "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "devOptional": true, + "dev": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -24625,7 +24617,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "devOptional": true, + "dev": true, "engines": { "node": ">=0.10.0" } @@ -26285,7 +26277,7 @@ "version": "5.4.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.3.tgz", "integrity": "sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==", - "devOptional": true, + "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" diff --git a/package.json b/package.json index 400bb583..c59125e7 100644 --- a/package.json +++ b/package.json @@ -110,13 +110,18 @@ "karma-jasmine-html-reporter": "2.1.0", "nx": "18.2.0", "postcss": "^8.4.5", - "prettier": "^2.6.2", + "prettier": "3.2.5", "supabase": "1.151.1", "tailwindcss": "^3.0.2", "ts-jest": "^29.1.0", "ts-node": "~10.9.1", "typescript": "5.4.3" }, + "overrides": { + "@supabase/supabase-js": { + "@supabase/auth-js": "2.61.0" + } + }, "description": "Distortion Festival App", "scarfSettings.enabled": false, "browserslist": [