Skip to content

Commit

Permalink
feat: create beta release (#350)
Browse files Browse the repository at this point in the history
* Add our basic colors and change css generation to postcss (#2)

* Add our basic colors and change css generation to postcss

* Run prettier on save in vscode

* Add custoom fonts and extend theme

* Add tailwind forms plugin for some defaults

* Update favicon

* Add vscode extensions recommendations

* WIP Explore map + dynamic device routes + bottom bar (#4)

* add bottom bar

* add header component

---------

Co-authored-by: fbruc03 <[email protected]>
Co-authored-by: fab-scm <[email protected]>

* Add markers and clusters to map (#5)

* Init prisma models

* Add prisma generate on build

* Add connection between user and device

* Add new Map component based on react-map-gl

* Load devices as GeoJSON and display on map

* Add explore link to landing page

* Resolve typescript errors

* landing page (#7)

* landing page - NOT RESPONSIVE

* add dark theme and adjust colors

---------

Co-authored-by: fbruc03 <[email protected]>

* adjust styles with feedback from kim (#14)

* Integrate directus CMS for landing page content (#11)

* Integrate directus CMS for landing page content

* Add directus client

* Add CMS endpoint

* Extend seed script to load actual data (#17)

* Extend seed script to load actual data

* Fix cursorTo usage

* Fix hashing of password in seeds

* device and geo search (location) (#12)

* device and geo search (location)

* sidebar as route (#13)

* changes + heroincons to local use

* ESLint

* solve ESLint warnings and formatting

* make hotkeys work, switched to ctrl+k combination

* add keyboard navigation for search results

* keyboard handling information

---------

Co-authored-by: Matthias Pfeil <[email protected]>

* Feat/shadcn installation (#20)

* shadcn installation with calender example

* component installation seamless (tsconfig change)

* change to `./app/components/ui`

* search style

* move code from app.css to tailwind.css

* Introduce i18n package and translate search component (#19)

* Introduce i18n package and translate search component

* Detect and load content on landing page

* Remove values and add them to translation files

* fix issue by `Ctrl` + `number` selection (#25)

* add search icon in navbar (#28)

* Bottom bar feat line graph (#8)

* add first solution without query strings

* use query string for selecting sensors

* use `Search Params` to control selected sensors

* ignore type error on LineGraph options

* limit selected sensors + add toast on limit

* fix ESLint

* move device fetch to model and adjust schema

* Extend prisma types

* Adjust tsconfig to include new types

* adjust types for Device and seletedSensors

* try to apply umuts style to values

* fix ESLint warning again

* fetch new sensor data on change

* fetch sensor data on parent loader

* comments and small style changes

---------

Co-authored-by: fbruc03 <[email protected]>
Co-authored-by: Matthias Pfeil <[email protected]>

* Update chartjs deps to 4.3.0 to include @kurkle/color

* Switch from postgres to timescaledb docker image and activate tsdb on measurements

* Update chartjs deps to 4.3.0 to include @kurkle/color (#29)

* Replace maplibregl with mapboxgl (#31)

* Replace maplibregl with mapboxgl

* Use env token to display map

* Just one Mapbox token

* Conventions (#34)

* Rename files and folders

* Try to fix lowercase file names

* Fix exports

* Rename components to lowercase+

* Fix imports

* All fixed now

* Last renames

* Feat/graph loading (#32)

* update `@prisma/client@latest`

* undo prisma version change

* add loading spinner

* bring back prisma to 4.9.0 (dev branch version)

* cleanup and fix TS error on chartjs options

* add lost laoding spinner after dev merge

* add osem logo as loading spinner

* resolve ESLint warning

---------

Co-authored-by: fbruc03 <[email protected]>

* Add shadow db (#35)

* Add shadow db

* Try re-running step because on 2 attempt error should disapear

* DonΒ΄t use fly.io anymore (#36)

* No need to move cache

* Feat/date range picker (#30)

* add popover component from shadcn

* introduce new shadcn components

* introduce time-filter component

* Feat/dropdown menu (#33)

* add shadcn components

* add shadcn components input and label

* rename getSession to getUserSession

* change centration from margin to justify

* small change to time-filter translation variable

* introduce login check and dropdown menu

* add login and register routes relative to /explore

* add translations for all components

* add better user feedback to log out action

* again user feedback change

* user feedback toast

* colors/toasts/login_label

* workaround for toasting and remove console.logs

* eslint fix

* solve toast problem (better workaround)

* retain searchParams on login/logout/search

* navigateTo and selected state

* ignore ts errors to wait for bugfix

* Feat/MyBadges-integration (#21)

* display badges on `/explore/profile/$userId`

* handle revoked badges

* add novu notifications

* notification bell and menu bar next to each other

* Start updating landing page (#24)

- update landing page with some animations by `framer-motion`

* Feat/public profiles (#45)

- add new route `/expore/public/me` to redirect logged in user to his own profile page
- add `username` on `/explore/register` as optional input -> when username was provided a profile will also be created and the `public` attribute is set to `true` by default
- added new `Switch` to the menu on the`/explore` routes to manage the visibility of the profile of the logged in user

* Feat/user management (#41)

* Add comments in header page

* add login button and user menu

* center login

* add login/logout impl.

* ignore .vscode

* adding font style

* add apperance-auto

* update account settings page

* adding change-password page

* some updates

* retreive email from session

* validate userName

* update user model and server

* adding sign up impl.

* update user join impl.

* use current locale in join

* adding delete user impl.

* show toast msg

* remove toast msg from join

* show toast msg after deleting user account

* update user password

* some updates

* update user locale

* initial dashboard page impl.

* show user name on user profile menu

* show list of senseboxes

* add user id when creating initial user

* update change password impl.

* show map on device click

* adding ui components

* renaming components

* code refactoring

* adding migration data

* code refactoring

* some upadates -> after resolving conflicts

* update register impl.

* fix typecheck errors

* Merge menu bar

* Merge profile stuff

---------

Co-authored-by: Matthias Pfeil <[email protected]>

* Fix profile creation on signup

* Feat/style bottom bar components (#52)

* time-filter state from searchParams / file names

* make search language dependent

* form with first functionality

* fix issue #37: toast toggling on login and logout

* odds and ends

* upgrade `@shadcn/ui` and add new components

* style profile view with dummy boxes

* style sensor selection

* Revert "Merge branch 'feat/new-device' into feat/style-bottom-bar-components"

This reverts commit 855f9f672b8e27436d6ec5f6fb1b11c33105b31e, reversing
changes made to 5bcab7e64bc39a391cb3a511066b856145d9f945.

* fix lang for presentation

* fresolve warnings

* Move shadcn-ui dep to dev deps

* Wrap complete shadcn ui cli

---------

Co-authored-by: fab-scm <[email protected]>
Co-authored-by: fab-scm <[email protected]>
Co-authored-by: Matthias Pfeil <[email protected]>

* Add option to download sensor data Graph (#59)

* add option to download line chart
* add share dialog to graph

* Add donut chart cluster (#46)

* Extend device and user with status and role

* Add filters to style unclustered points

* First working donut chart cluster

* Set random device status in seeds

* Add marker status colors

* Update chart styles

* Use supercluster to build clusters

* Map and reduce status for clusterProperties

* Memoize cluster marker

* Add donut cluster, cleanup and reorder stuff

* Update cluster style

* renaming files

* Update map and reduce for supercluster

* Add types and sometimes any

* Init categories with default values

* Add icons for mobile and stationary devices

* Reorder imports

* Change DB name

* Increase sleep

* Increase sleep a bit more

* Dreaming and sleeping

* Change docker image

* Set default bbox bounds

* Mobile device presentation (#65)

* feat: show point and line for mobile box

* feat: simple color palette for mobile measurements

* feat: add legend for mobile measurements

* fix: merge `Map` folder into `map` folder

* chore: update package-lock.json

* fix: use ternaries

* chore: remove unused d3 dep

* Add dependabot configuration to scan for newer dependencies (#68)

* BoxMarker (#77)

* feat: move files and create BoxMarker

* chore: remove console.log

* feat: update box marker colors

* feat: expand box name on hover

* fix: remove ts-ignore

* Cluster performance (#80)

* fix: remove unnecessary viewstate from map

* feat: improve cluster performance by debouncing map events

* chore: remove unused imports

* feat: initial view state world

* Build docker image and remove all fly.io leftovers (#81)

Closes #76

* Profile and Settings pages (#56)

* Init new settings page for user

* Add auth to settings route and button to checkout profile

* Add navbar for logged in routes

* Boostrap profile pages

* Add icon to nav component

* Add device card component

* Add missing env variables closes #49

* Add basic error boundary to display

* Extend device data model and add public and description properties

* Add missing schema file

* Use smaller timescaledb docker image

* Update profile page and add live data

* Update NavBar if user is logged in or not

* Fix typescript error passing device around

* Return only public devices when viewing public profile

* Print path in nav bar

* Basic profile photo upload

* Add basic profile settings page

* Renaming user and username in db schema

* Remove old profile routes under explore

* Add link to profile to explore menu

* Add some more links to new pages

* Set new profile to private by default

* Show messages if devices are available or not

* Add back original handler to fix server issues (#85)

* add language selector to landing page (#61)

- add i18n cookie for language selection
- i18n checks preferred language from cookie first
- add theme cookie to persist user theme
- cleanup header component by outsourcing LanguageSelector and ThemeSelector to components
- cleanup data fetching in header component
- language flags were free and can be used without attribution
- add some translations for landing page

---------

Co-authored-by: Felix Erdmann <[email protected]>

* add new device detail view (#91)

* feat(app): new device detail view

* feat(BoxMarker): zIndex based on hover and status (#104)

* add sidebar on device explore route (#108)

* Bump prettier-plugin-tailwindcss from 0.2.4 to 0.4.1 (#98)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.2.4 to 0.4.1.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.2.4...v0.4.1)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump lucide-react from 0.179.0 to 0.263.1 (#109)

Bumps [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) from 0.179.0 to 0.263.1.
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/v0.263.1/packages/lucide-react)

---
updated-dependencies:
- dependency-name: lucide-react
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Timescale continues aggregates over 15min and 1day (#64)

* Init new settings page for user

* Add auth to settings route and button to checkout profile

* Add navbar for logged in routes

* Boostrap profile pages

* Add icon to nav component

* Add device card component

* Add missing env variables closes #49

* Add basic error boundary to display

* Extend device data model and add public and description properties

* Add missing schema file

* Use smaller timescaledb docker image

* Update profile page and add live data

* Update NavBar if user is logged in or not

* Fix typescript error passing device around

* Return only public devices when viewing public profile

* Print path in nav bar

* Basic profile photo upload

* Add basic profile settings page

* Renaming user and username in db schema

* Remove old profile routes under explore

* Add link to profile to explore menu

* Add some more links to new pages

* Set new profile to private by default

* Add first timescale continues aggregations

* Add retention policy to measurement table (#115)

* change all heroicons to lucide icons (#114)

* Add option to select predefined time range aggregates (#113)

* Add aggregation parameter

* Set aggregation parameter on search parameters

* Memoize chart data and options

* Extend seed script to create measurements if a csv file exists

* resolve ESLint warning

---------

Co-authored-by: freds-dev <[email protected]>

* Add workflow to remove untagged images (#117)

* Feat/user management - new edit style (#119)

* move settings and dashboard to explore page

* add name to register

* update user name impl.

* remove login impl. from header

* dashboard - general

* update general page

* edit sensor info - initial

* update sensors data - frontend impl.

* update sensors data - server impl.

* dashboard - edit device location

* some updates

* fly to sensebox location

* update dashboard view - ui data table

* update data table view

* adding update device security page

* adding script and security pages - dashboard

* adding mqtt page

* adding ttn & trasnfer pages

* adding sensors icons impl.

* some updates

* resorve an issue with action

* update mydevices data table

* username can be duplicate

* add upload data page

* some updates

* new style of edit page

* remove old edit style folder

* prisma - add sensor icon

* update icons -use lucide

* resolve Eslint issues

* resolve ts issue - remove model from dashboard

* Create profile for dummy user (#122)

* Feat/device overview page (#120)

* move settings and dashboard to explore page

* add name to register

* update user name impl.

* remove login impl. from header

* dashboard - general

* update general page

* edit sensor info - initial

* update sensors data - frontend impl.

* update sensors data - server impl.

* dashboard - edit device location

* some updates

* fly to sensebox location

* update dashboard view - ui data table

* update data table view

* adding update device security page

* adding script and security pages - dashboard

* adding mqtt page

* adding ttn & trasnfer pages

* adding sensors icons impl.

* some updates

* resorve an issue with action

* update mydevices data table

* username can be duplicate

* add upload data page

* some updates

* new style of edit page

* remove old edit style folder

* prisma - add sensor icon

* update icons -use lucide

* resolve Eslint issues

* resolve ts issue - remove model from dashboard

* add device overview page

---------

Co-authored-by: Matthias Pfeil <[email protected]>

* Fix/branch too small (#123)

* resolve issue #121

* set height to 35%

* Add link to archive of a device closes #124 (#126)

* Add status to sensor and stored procedures to set device and sensor status (#116)

* Add status to sensor

* Switch to tsdb ha image and enable pg_cron extension

* Add stored procedure and cron schedule to migration

* Change en example

* Add stored procedure to update device status

* Raise wait seconds

* Raise sleep to get timescaledb running

* Print docker logs

* Do not map volume

* Remove docker logs

* Add own docker compose file for ci without volume mapping (#127)

* (Mobile) Search bar (#66)

* feat: update search bar

* feat: close search after selecting result using context

* chore: remove unused overlay-search

* feat: mobile search bar

* chore: fix import

* fix: type errors

* feat: enhance state of search

* feat: add inital i18n

* fix: import duplicate

* feat: handle input focus

* fix issue #39: `Ctrl`+`Number` selection of result (#90)

* feat: collapse animate search bar

* chore: remove yarn.lock

* chore: remove unused files

---------

Co-authored-by: fab-scm <[email protected]>

* Update main dependencies (#92)

* Update main dependencies

* Use new vitest coverage provider v8

* Resolve liniting errors

* Update npm commands

* Simplify build ci workflow

* fix: linting errors

---------

Co-authored-by: Felix Erdmann <[email protected]>

* Feat/compare devices (#136)

* add compare view

* remove main html tag (#138)

* download csv option (#139)

* download csv option

* csv header and sensor limitation (#141)

* minor styles changes to device detail and compare view  (#142)

* fix issue on navigate (#143)

* feat compare mode (#145)

* init compare mode

* change icon

* Feat/date picker for graph (#149)

* add functional date picker and fix date formats

* add pricing plans to landing page (#140)

* add first layout

* add time period buttons to query measurements in graph

* keep search params for time and aggregation

* set spanGaps to false (#159)

* feat/better-mobile-view (#158)

* more mobile friendly device and graph view

* fix overlay issue

* fix modal size on mobile

* handle no measurements for graph

* add date functionality to compare graph view

* Feat/donation (#151)

* move settings page to account route

* donation initial impl.

* some updates

* resolve typecheck error

* adding donate-text to model

* Feat/filter options (#162)

* initial impl. of filter options

* add phenomenon filter

* add possibility to reset filters

* add filter context - automatic update of filter params

* code refactoring

* some updates

* enable filter data using url search params

* some updates

* update filter-options

* bug fix: access sensor measurement (#170)

* sign cookies and add refactored theme-provider (#176)

* add remix v2 convention (#171)

* bug fix: access sensor range (#178)

* dark mode styling (#177)

* search, device, map and graph component dark mode

* dark mode for compare view and dropdown menu

* adjust graph grid color to tailwind theme

* replace aggregation selector

* dark theme for novu notification popup

* set date to last measurements on graph

* Bump docker/build-push-action from 4 to 5 (#183)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4 to 5.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump docker/metadata-action from 4 to 5 (#182)

Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4 to 5.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md)
- [Commits](https://github.com/docker/metadata-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump docker/login-action from 2 to 3 (#181)

Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* replace tailwind class to silence warning (#185)

* replace tailwind class to silence warning

* remove `@variants` tag

* just drop necessary searchParams (#186)

* fix light theme search bar background

* Bump actions/checkout from 3 to 4 (#164)

Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Pfeil <[email protected]>

* Feat/remix v2 upgrade (#189)

* this gives me import errors after `npm run dev`

* Upgrade to remiv v2 and sync original stack source code

* Update dev dependencies to fix elint error with moduleResolution

* Update conform to support remix v2

* Remove deprecated options

---------

Co-authored-by: Matthias Pfeil <[email protected]>

* Bump docker/setup-buildx-action from 2 to 3 (#194)

Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2 to 3.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Filter options fix (#187)

* feat ErrorBoundaries (#195)

* go back on error message exit button (#196)

* Bump @types/compression from 1.7.2 to 1.7.3 (#191)

Bumps [@types/compression](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/compression) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/compression)

---
updated-dependencies:
- dependency-name: "@types/compression"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Pfeil <[email protected]>

* Fix mydevices issue with v2 (#197)

* Bump supercluster from 7.1.5 to 8.0.1 (#192)

* Bump supercluster from 7.1.5 to 8.0.1

Bumps [supercluster](https://github.com/mapbox/supercluster) from 7.1.5 to 8.0.1.
- [Release notes](https://github.com/mapbox/supercluster/releases)
- [Commits](https://github.com/mapbox/supercluster/compare/v7.1.5...v8.0.1)

---
updated-dependencies:
- dependency-name: supercluster
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* update remix config `serverDependenciesToBundle`

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: freds-dev <[email protected]>

* Refresh sensor values (#198)

* update mydevices-eidt route

* fix eslint issue

* initial commit

* move refresh button to sidebar

* update timer impl.

---------

Co-authored-by: Matthias Pfeil <[email protected]>

* Bump class-variance-authority from 0.5.3 to 0.7.0 (#131)

Bumps [class-variance-authority](https://github.com/joe-bell/cva) from 0.5.3 to 0.7.0.
- [Release notes](https://github.com/joe-bell/cva/releases)
- [Commits](https://github.com/joe-bell/cva/compare/v0.5.3...v0.7.0)

---
updated-dependencies:
- dependency-name: class-variance-authority
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump vitest from 0.32.4 to 0.34.6 (#202)

Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 0.32.4 to 0.34.6.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v0.34.6/packages/vitest)

---
updated-dependencies:
- dependency-name: vitest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump nick-fields/retry from 2.8.3 to 2.9.0 (#203)

Bumps [nick-fields/retry](https://github.com/nick-fields/retry) from 2.8.3 to 2.9.0.
- [Release notes](https://github.com/nick-fields/retry/releases)
- [Changelog](https://github.com/nick-fields/retry/blob/master/.releaserc.js)
- [Commits](https://github.com/nick-fields/retry/compare/v2.8.3...v2.9.0)

---
updated-dependencies:
- dependency-name: nick-fields/retry
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @radix-ui/react-navigation-menu from 1.1.2 to 1.1.4 (#193)

* Bump @radix-ui/react-navigation-menu from 1.1.2 to 1.1.4

Bumps [@radix-ui/react-navigation-menu](https://github.com/radix-ui/primitives) from 1.1.2 to 1.1.4.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-navigation-menu"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* update `package-lock.json`

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Pfeil <[email protected]>
Co-authored-by: freds-dev <[email protected]>

* Bump @radix-ui/react-dialog from 1.0.4 to 1.0.5 (#200)

* Bump @radix-ui/react-dialog from 1.0.4 to 1.0.5

Bumps [@radix-ui/react-dialog](https://github.com/radix-ui/primitives) from 1.0.4 to 1.0.5.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-dialog"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump @radix-ui/react-dialog from 1.0.4 to 1.0.5

Bumps [@radix-ui/react-dialog](https://github.com/radix-ui/primitives) from 1.0.4 to 1.0.5.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-dialog"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* remove use of `className`

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: freds-dev <[email protected]>

* Bump shadcn-ui from 0.2.2 to 0.4.0 (#201)

Bumps [shadcn-ui](https://github.com/shadcn/ui/tree/HEAD/packages/cli) from 0.2.2 to 0.4.0.
- [Release notes](https://github.com/shadcn/ui/releases)
- [Changelog](https://github.com/shadcn-ui/ui/blob/main/packages/cli/CHANGELOG.md)
- [Commits](https://github.com/shadcn/ui/commits/[email protected]/packages/cli)

---
updated-dependencies:
- dependency-name: shadcn-ui
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* update `package-lock.json`

* Feat/sensor wiki connection (#118)

* time-filter state from searchParams / file names

* make search language dependent

* draft/sensor-auswahl

* legend WIP

* add fields for sensor-wiki connection

* sensors matched with sensor wiki, seed update to load sensor wiki tile

* fix legend import

* fetch sensors from wiki and put phenomena in url

* fix legend import again

* add function to parse live data to postgres, pheno searchparams to explore

* values and colors as prop in legend

* functions for legend colors, values, positions

* legendValue as object type so that its arrays have the same length

* remove

* update deps

* update legend props

* form with first functionality

* fix issue #37: toast toggling on login and logout

* odds and ends

* add layers for pheno. TODO: default layer

* fix merge

* Feat/style bottom bar components (#54)

* Feat/MyBadges-integration (#21)

* display badges on `/explore/profile/$userId`

* handle revoked badges

* add novu notifications

* notification bell and menu bar next to each other

* Start updating landing page (#24)

- update landing page with some animations by `framer-motion`

* Feat/public profiles (#45)

- add new route `/expore/public/me` to redirect logged in user to his own profile page
- add `username` on `/explore/register` as optional input -> when username was provided a profile will also be created and the `public` attribute is set to `true` by default
- added new `Switch` to the menu on the`/explore` routes to manage the visibility of the profile of the logged in user

* Feat/user management (#41)

* Add comments in header page

* add login button and user menu

* center login

* add login/logout impl.

* ignore .vscode

* adding font style

* add apperance-auto

* update account settings page

* adding change-password page

* some updates

* retreive email from session

* validate userName

* update user model and server

* adding sign up impl.

* update user join impl.

* use current locale in join

* adding delete user impl.

* show toast msg

* remove toast msg from join

* show toast msg after deleting user account

* update user password

* some updates

* update user locale

* initial dashboard page impl.

* show user name on user profile menu

* show list of senseboxes

* add user id when creating initial user

* update change password impl.

* show map on device click

* adding ui components

* renaming components

* code refactoring

* adding migration data

* code refactoring

* some upadates -> after resolving conflicts

* update register impl.

* fix typecheck errors

* Merge menu bar

* Merge profile stuff

---------

Co-authored-by: Matthias Pfeil <[email protected]>

* Fix profile creation on signup

* upgrade `@shadcn/ui` and add new components

* style profile view with dummy boxes

* style sensor selection

* Revert "Merge branch 'feat/new-device' into feat/style-bottom-bar-components"

This reverts commit 855f9f672b8e27436d6ec5f6fb1b11c33105b31e, reversing
changes made to 5bcab7e64bc39a391cb3a511066b856145d9f945.

---------

Co-authored-by: Frederick Bruch <[email protected]>
Co-authored-by: fbruc03 <[email protected]>
Co-authored-by: Matthias Pfeil <[email protected]>
Co-authored-by: Yousef Qamaz <[email protected]>

* Revert "Feat/style bottom bar components (#54)"

This reverts commit b8da4a4426388e2fa7d11fd4e7e9df69f300bfcb.

* updated matched sensors, translations, use phenomon in explore

* upgrade shad-cn ui and add form component

* ressource route for form handling

* keep search params when clicking on dot, refractor live data script

* add-device feat. remix-validated-form

* add submit and toast

* rm console.logs / adjustments after merge

* add device route approach with sensorWiki integr.

* change route and retrieve devices from sensor.wiki

* merge branches for legend, update seed with live data for testing, remove cron

* group sensors by phenomenon

* remove console log

* mqtt/ttn to multistep form, components, stepper (#78)

* Feat/sensor wiki connection sensors (#82)

* make sensor selectable, add unit server

* hover state

---------

Co-authored-by: umut <[email protected]>

* new sensor wiki routes

* add device images

* remove accordion (#84)

* get sensor wiki label in right language

* type for sensor wiki

* sensor wiki type: sensor, sensorelement

* type phenomena

* first draft device new summary

* fix units

* requests for creating device

* sensor selection with hidden input (#107)

Co-authored-by: fab-scm <[email protected]>

* Feat/sensor wiki connection location (#106)

* create select location

* fix map styling issue and field validation

---------

Co-authored-by: fab-scm <[email protected]>

* select sensors for registration

* create device add sensor fixes, styles for summary and sensors

* add delete for sensors, add images, fix styling

* fix requests to osem and postgres db

* translations for new device

* Feat/sensor wiki connection height from location (#132)

* derive height from location and control buttons

* type warning

* add tooltip and geocoder component

* translations, links, tooltips, mqtt||ttn

* fix ts errors

* improve height derivation

* Feat/sensor wiki connection validation (#166)

* add remix-form-validation

* validate select-device

* validate general

* validate seΓΆect-location

* html conform

* go to previous without validation.

* validate advanced

* add locales

* validate onClick device card

* validate select-sensors

* add tags input for groupId

* change `undefined` to "" and disabled input

* Feat/sensor wiki connection fix sensor select (#167)

* remove list when no sensor selected

* add title (input field) to sensors

* add sensorwikimodel to device, add title to sensor for registration

* replace stepper

* translations, styles

* remove unused things

* fix ESlint

* @ts-ignore value error

* resize stepper

* deactivate unreachable pages

---------

Co-authored-by: Umut Tas <[email protected]>

* remove unused code

* change names for forms

* change ttn/mqtt names for summary

* error message deviceType

* remove unused code

* fix attribute names

* added boxes_full to seed for live data/measurements in seed

* fix explore and phenomenon select in header

* add link to add device

* fix loader data issue

* resolve ESLint

* remove some TS Errors

* fix shadcn component ts error

* fix phenomena ts error

* remove `yarn.lock`

* fix `docker-compose` database port

* change forEach to forof in seed

* add missing things to .env.example

* Feat/sensor wiki connection hover card (#199)

* add hover card

* add sensor-wiki-hover-card

* descriptions on hover card for pheno filter

* fix es lint error

* rm logs

* add info box for sensor select

* code fromat

* responsive grids for device/sensor selection

* add details for sensors and bg-color

* formatting

* remove language from request

* fix syntax

---------

Co-authored-by: umut <[email protected]>
Co-authored-by: umut0 <[email protected]>

* move legend to right, make draggable

* fix ESLint

* fix register bug, use sensorwiki props in device details if available

* add better loading spinner, remove errors, change translation

* change translation and update package-lock.json

* resolve ESLint

---------

Co-authored-by: fab-scm <[email protected]>
Co-authored-by: unknown <[email protected]>
Co-authored-by: umut <[email protected]>
Co-authored-by: fab-scm <[email protected]>
Co-authored-by: Frederick Bruch <[email protected]>
Co-authored-by: fbruc03 <[email protected]>
Co-authored-by: Matthias Pfeil <[email protected]>
Co-authored-by: Yousef Qamaz <[email protected]>

* Bump postcss from 8.4.30 to 8.4.31 (#204)

Bumps [postcss](https://github.com/postcss/postcss) from 8.4.30 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.30...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump prom-client from 14.2.0 to 15.0.0 (#205)

Bumps [prom-client](https://github.com/siimon/prom-client) from 14.2.0 to 15.0.0.
- [Release notes](https://github.com/siimon/prom-client/releases)
- [Changelog](https://github.com/siimon/prom-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/siimon/prom-client/compare/v14.2.0...v15.0.0)

---
updated-dependencies:
- dependency-name: prom-client
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump eslint-plugin-unicorn from 47.0.0 to 48.0.1 (#206)

Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 47.0.0 to 48.0.1.
- [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases)
- [Commits](https://github.com/sindresorhus/eslint-plugin-unicorn/compare/v47.0.0...v48.0.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-unicorn
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @radix-ui/react-toast from 1.1.3 to 1.1.5 (#208)

Bumps [@radix-ui/react-toast](https://github.com/radix-ui/primitives) from 1.1.3 to 1.1.5.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-toast"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cypress-io/github-action from 5 to 6 (#156)

Bumps [cypress-io/github-action](https://github.com/cypress-io/github-action) from 5 to 6.
- [Release notes](https://github.com/cypress-io/github-action/releases)
- [Changelog](https://github.com/cypress-io/github-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/github-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: cypress-io/github-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* remove lottie (#210)

* add missing qs package

* Bump esbuild from 0.19.3 to 0.19.4 (#213)

Bumps [esbuild](https://github.com/evanw/esbuild) from 0.19.3 to 0.19.4.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.19.3...v0.19.4)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/supercluster from 7.1.0 to 7.1.1 (#216)

Bumps [@types/supercluster](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/supercluster) from 7.1.0 to 7.1.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/supercluster)

---
updated-dependencies:
- dependency-name: "@types/supercluster"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump react-day-picker from 8.7.1 to 8.9.0 (#215)

Bumps [react-day-picker](https://github.com/gpbl/react-day-picker) from 8.7.1 to 8.9.0.
- [Release notes](https://github.com/gpbl/react-day-picker/releases)
- [Commits](https://github.com/gpbl/react-day-picker/commits)

---
updated-dependencies:
- dependency-name: react-day-picker
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @radix-ui/react-tooltip from 1.0.6 to 1.0.7 (#214)

Bumps [@radix-ui/react-tooltip](https://github.com/radix-ui/primitives) from 1.0.6 to 1.0.7.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-tooltip"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cypress from 12.17.3 to 13.3.1 (#217)

Bumps [cypress](https://github.com/cypress-io/cypress) from 12.17.3 to 13.3.1.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v12.17.3...v13.3.1)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* add new colors from scheme (#218)

* add new colors from scheme

* restore shadcn ui col

* Single device page v2 (#212)

* single device page - initial impl.

* some updates

* some updates

* update dark mode style

* some updates

* Bump actions/setup-node from 3 to 4 (#226)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump prettier from 3.0.2 to 3.0.3 (#222)

Bumps [prettier](https://github.com/prettier/prettier) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump framer-motion from 10.12.4 to 10.16.4 (#220)

Bumps [framer-motion](https://github.com/framer/motion) from 10.12.4 to 10.16.4.
- [Changelog](https://github.com/framer/motion/blob/main/CHANGELOG.md)
- [Commits](https://github.com/framer/motion/compare/v10.12.4...v10.16.4)

---
updated-dependencies:
- dependency-name: framer-motion
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Consolidate settings and dashboard pages (#211)

* remove old account/setting page

* bug fix: open nested pages within an outlet

* move 'my devices dashboard' to profile + update styles

* hide device id and update dashboard style

* add navbar to device overview and tranfer pages

* some updates

* make settings->profile as  a defualt page

* add header to navbar

* bug fix: selecting route that is already selected from sidebar

* separate sidebarNav from sidebarSettingsNav

* update dark mode style

* some updates

* update sidebar (dark mode)

* Bump @vitest/coverage-v8 from 0.34.5 to 0.34.6 (#224)

Bumps [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) from 0.34.5 to 0.34.6.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v0.34.6/packages/coverage-v8)

---
updated-dependencies:
- dependency-name: "@vitest/coverage-v8"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump i18next-http-backend from 2.2.0 to 2.3.1 (#229)

Bumps [i18next-http-backend](https://github.com/i18next/i18next-http-backend) from 2.2.0 to 2.3.1.
- [Changelog](https://github.com/i18next/i18next-http-backend/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next-http-backend/compare/v2.2.0...v2.3.1)

---
updated-dependencies:
- dependency-name: i18next-http-backend
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @testing-library/cypress from 9.0.0 to 10.0.1 (#230)

Bumps [@testing-library/cypress](https://github.com/kentcdodds/cypress-testing-library) from 9.0.0 to 10.0.1.
- [Release notes](https://github.com/kentcdodds/cypress-testing-library/releases)
- [Changelog](https://github.com/testing-library/cypress-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kentcdodds/cypress-testing-library/compare/v9.0.0...v10.0.1)

---
updated-dependencies:
- dependency-name: "@testing-library/cypress"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/geojson from 7946.0.10 to 7946.0.12 (#232)

Bumps [@types/geojson](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/geojson) from 7946.0.10 to 7946.0.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/geojson)

---
updated-dependencies:
- dependency-name: "@types/geojson"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump react-day-picker from 8.9.0 to 8.9.1 (#231)

Bumps [react-day-picker](https://github.com/gpbl/react-day-picker) from 8.9.0 to 8.9.1.
- [Release notes](https://github.com/gpbl/react-day-picker/releases)
- [Commits](https://github.com/gpbl/react-day-picker/compare/v8.9.0...v8.9.1)

---
updated-dependencies:
- dependency-name: react-day-picker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor filters (#227)

* start refactoring

* fix TypeScript error

* Bump @conform-to/react from 0.9.0 to 0.9.1 (#236)

Bumps [@conform-to/react](https://github.com/edmundhung/conform/tree/HEAD/packages/conform-react) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/edmundhung/conform/releases)
- [Commits](https://github.com/edmundhung/conform/commits/v0.9.1/packages/conform-react)

---
updated-dependencies:
- dependency-name: "@conform-to/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @radix-ui/react-alert-dialog from 1.0.4 to 1.0.5 (#233)

* Bump @radix-ui/react-alert-dialog from 1.0.4 to 1.0.5

Bumps [@radix-ui/react-alert-dialog](https://github.com/radix-ui/primitives) from 1.0.4 to 1.0.5.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-alert-dialog"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix TS error

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: freds-dev <[email protected]>

* Feat/mqtt check connection (#209)

* mqtt check url connection

* some updates

* show success msg after connection with mqtt url

* update getting mqtt url value

* update mqtt naming

* update check mqtt conn. to accept mqtt/mqtts

* rename dashboard page

* update `package-lock.json`

---------

Co-authored-by: freds-dev <[email protected]>

* Bump @hookform/resolvers from 3.3.1 to 3.3.2 (#241)

Bumps [@hookform/resolvers](https://github.com/react-hook-form/resolvers) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/react-hook-form/resolvers/releases)
- [Commits](https://github.com/react-hook-form/resolvers/compare/v3.3.1...v3.3.2)

---
updated-dependencies:
- dependency-name: "@hookform/resolvers"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump lucide-react from 0.263.1 to 0.293.0 (#240)

Bumps [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) from 0.263.1 to 0.293.0.
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.293.0/packages/lucide-react)

---
updated-dependencies:
- dependency-name: lucide-react
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cypress from 13.3.1 to 13.6.0 (#244)

Bumps [cypress](https://github.com/cypress-io/cypress) from 13.3.1 to 13.6.0.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.3.1...v13.6.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump clsx from 1.2.1 to 2.0.0 (#243)

Bumps [clsx](https://github.com/lukeed/clsx) from 1.2.1 to 2.0.0.
- [Release notes](https://github.com/lukeed/clsx/releases)
- [Commits](https://github.com/lukeed/clsx/compare/v1.2.1...v2.0.0)

---
updated-dependencies:
- dependency-name: clsx
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cookie from 0.5.0 to 0.6.0 (#246)

Bumps [cookie](https://github.com/jshttp/cookie) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Changelog](https://github.com/jshttp/cookie/blob/master/HISTORY.md)
- [Commits](https://github.com/jshttp/cookie/compare/v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: cookie
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cypress from 13.6.0 to 13.6.1 (#247)

Bumps [cypress](https://github.com/cypress-io/cypress) from 13.6.0 to 13.6.1.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.6.0...v13.6.1)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump prettier from 3.0.3 to 3.1.1 (#250)

Bumps [prettier](https://github.com/prettier/prettier) from 3.0.3 to 3.1.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.0.3...3.1.1)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump prettier-plugin-tailwindcss from 0.5.4 to 0.5.11 (#253)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.4 to 0.5.11.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.4...v0.5.11)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump ts-node from 10.9.1 to 10.9.2 (#254)

Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.9.1 to 10.9.2.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Changelog](https://github.com/TypeStrong/ts-node/blob/main/development-docs/release-template.md)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.9.1...v10.9.2)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump vlaurin/action-ghcr-prune from 0.5.0 to 0.6.0 (#260)

Bumps [vlaurin/action-ghcr-prune](https://github.com/vlaurin/action-ghcr-prune) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/vlaurin/action-ghcr-prune/releases)
- [Commits](https://github.com/vlaurin/action-ghcr-prune/compare/v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: vlaurin/action-ghcr-prune
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump nick-fields/retry from 2.9.0 to 3.0.0 (#264)

Bumps [nick-fields/retry](https://github.com/nick-fields/retry) from 2.9.0 to 3.0.0.
- [Release notes](https://github.com/nick-fields/retry/releases)
- [Changelog](https://github.com/nick-fields/retry/blob/master/.releaserc.js)
- [Commits](https://github.com/nick-fields/retry/compare/v2.9.0...v3.0.0)

---
updated-dependencies:
- dependency-name: nick-fields/retry
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build all PR images

* Bump @radix-ui/react-select from 1.2.2 to 2.0.0 (#274)

Bumps [@radix-ui/react-select](https://github.com/radix-ui/primitives) from 1.2.2 to 2.0.0.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-select"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump react-hook-form from 7.46.2 to 7.51.0 (#277)

Bumps [react-hook-form](https://github.com/react-hook-form/react-hook-form) from 7.46.2 to 7.51.0.
- [Release notes](https://github.com/react-hook-form/react-hook-form/releases)
- [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md)
- [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.46.2...v7.51.0)

---
updated-dependencies:
- dependency-name: react-hook-form
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* use drizzle instead of prisma (#228)

* use drizzle instead of prisma

* update workflow

* add custom migrations for extensions

* query only devices without sensors

* add materialized views

* update deviceInfo, deviceLocation, profile visibility

* getDevicesWithSensors

* fix donut-charts

* fix: filter exposure, status

* fix: undo getDevicesWithSensors, because too slow

* Feat/drizzle initial load workaround (#273)

* Consolidate settings and dashboard pages (#211)

* remove old account/setting page

* bug fix: open nested pages within an outlet

* move 'my devices dashboard' to profile + update styles

* hide device id and update dashboard style

* add navbar to device overview and tranfer pages

* some updates

* make settings->profile as  a defualt page

* add header to navbar

* bug fix: selecting route that is already selected from sidebar

* separate sidebarNav from sidebarSettingsNav

* update dark mode style

* some updates

* update sidebar (dark mode)

* Bump @vitest/coverage-v8 from 0.34.5 to 0.34.6 (#224)

Bumps [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) from 0.34.5 to 0.34.6.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v0.34.6/packages/coverage-v8)

---
updated-dependencies:
- dependency-name: "@vitest/coverage-v8"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump i18next-http-backend from 2.2.0 to 2.3.1 (#229)

Bumps [i18next-http-backend](https://github.com/i18next/i18next-http-backend) from 2.2.0 to 2.3.1.
- [Changelog](https://github.com/i18next/i18next-http-backend/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next-http-backend/compare/v2.2.0...v2.3.1)

---
updated-dependencies:
- dependency-name: i18next-http-backend
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @testing-library/cypress from 9.0.0 to 10.0.1 (#230)

Bumps [@testing-library/cypress](https://github.com/kentcdodds/cypress-testing-library) from 9.0.0 to 10.0.1.
- [Release notes](https://github.com/kentcdodds/cypress-testing-library/releases)
- [Changelog](https://github.com/testing-library/cypress-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kentcdodds/cypress-testing-library/compare/v9.0.0...v10.0.1)

---
updated-dependencies:
- dependency-name: "@testing-library/cypress"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/geojson from 7946.0.10 to 7946.0.12 (#232)

Bumps [@types/geojson](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/geojson) from 7946.0.10 to 7946.0.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/geojson)

---
updated-dependencies:
- dependency-name: "@types/geojson"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump react-day-picker from 8.9.0 to 8.9.1 (#231)

Bumps [react-day-picker](https://github.com/gpbl/react-day-picker) from 8.9.0 to 8.9.1.
- [Release notes](https://github.com/gpbl/react-day-picker/releases)
- [Commits](https://github.com/gpbl/react-day-picker/compare/v8.9.0...v8.9.1)

---
updated-dependencies:
- dependency-name: react-day-picker
  dependency-type: direct:production
  update-type: version-update:semver-patch
…
  • Loading branch information
13 people authored Aug 7, 2024
1 parent 8569c52 commit 78a95bb
Show file tree
Hide file tree
Showing 306 changed files with 178,379 additions and 25,154 deletions.
42 changes: 42 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,2 +1,44 @@
DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres"
# SHADOW_DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres"

PG_CLIENT_SSL="false"

SESSION_SECRET="super-duper-s3cret"

MAPBOX_ACCESS_TOKEN=""
MAPBOX_GEOCODING_API="https://api.mapbox.com/geocoding/v5/mapbox.places/"

OSEM_API_URL="https://api.opensensemap.org/"
DIRECTUS_URL="https://coelho.opensensemap.org"
SENSORWIKI_API_URL="https://api.sensors.wiki/"


MYBADGES_API_URL = "https://api.v2.mybadges.org/"
MYBADGES_URL = "https://mybadges.org/"
MYBADGES_SERVERADMIN_USERNAME = ""
MYBADGES_SERVERADMIN_PASSWORD = ""
MYBADGES_ISSUERID_OSEM = ""
MYBADGES_CLIENT_ID = ""
MYBADGES_CLIENT_SECRET = ""

NOVU_API_URL = ""
NOVU_WEBSOCKET_URL = ""
NOVU_APPLICATION_IDENTIFIER = ""

SENSORWIKI_API_URL="https://api.sensors.wiki/"

MYBADGES_API_URL = "https://api.v2.mybadges.org/"
MYBADGES_URL = "https://mybadges.org/"
MYBADGES_SERVERADMIN_USERNAME = ""
MYBADGES_SERVERADMIN_PASSWORD = ""
MYBADGES_ISSUERID_OSEM = ""
MYBADGES_CLIENT_ID = ""
MYBADGES_CLIENT_SECRET = ""

NOVU_API_URL = ""
NOVU_WEBSOCKET_URL = ""
NOVU_APPLICATION_IDENTIFIER = ""

# login to testing.opensensemap.org to register box in testing database (use your own account for now)
TESTING_ACCOUNT=""
TESTING_PW="test1234"
26 changes: 25 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ module.exports = {
env: {
"cypress/globals": true,
},
plugins: ["cypress"],
plugins: ["cypress", "unicorn"],
// We're using vitest which has a very similar API to jest
// (so the linting plugins work nicely), but we have to
// set the jest version explicitly.
Expand All @@ -18,4 +18,28 @@ module.exports = {
version: 28,
},
},
// Enable kebabCase filename convention for all files
rules: {
"unicorn/filename-case": [
"error",
{
case: "kebabCase",
},
],
},
// But disable kebabCase filename convention for all files
// in /app/routes because of remix.run filename conventions
overrides: [
{
files: [
"app/routes/**/*.ts",
"app/routes/**/*.js",
"app/routes/**/*.tsx",
"app/routes/**/*.jsx",
],
rules: {
"unicorn/filename-case": "off",
},
},
],
};
15 changes: 15 additions & 0 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
version: 2

updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
167 changes: 63 additions & 104 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,35 +1,37 @@
name: πŸš€ Deploy
name: πŸ—οΈ Build
on:
push:
branches:
- main
- dev
pull_request: {}

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
actions: write
contents: read
packages: write

jobs:
lint:
name: ⬣ ESLint
runs-on: ubuntu-latest
steps:
- name: πŸ›‘ Cancel Previous Runs
uses: styfle/[email protected]

- name: ⬇️ Checkout repo
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: βŽ” Setup node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
cache: npm
cache-dependency-path: ./package.json
node-version: 18

- name: πŸ“₯ Download deps
uses: bahmutov/npm-install@v1
with:
useLockFile: false
- name: πŸ“₯ Install deps
run: npm install

- name: πŸ”¬ Lint
run: npm run lint
Expand All @@ -38,21 +40,18 @@ jobs:
name: Κ¦ TypeScript
runs-on: ubuntu-latest
steps:
- name: πŸ›‘ Cancel Previous Runs
uses: styfle/[email protected]

- name: ⬇️ Checkout repo
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: βŽ” Setup node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
cache: npm
cache-dependency-path: ./package.json
node-version: 18

- name: πŸ“₯ Download deps
uses: bahmutov/npm-install@v1
with:
useLockFile: false
- name: πŸ“₯ Install deps
run: npm install

- name: πŸ”Ž Type check
run: npm run typecheck --if-present
Expand All @@ -61,21 +60,18 @@ jobs:
name: ⚑ Vitest
runs-on: ubuntu-latest
steps:
- name: πŸ›‘ Cancel Previous Runs
uses: styfle/[email protected]

- name: ⬇️ Checkout repo
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: βŽ” Setup node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
cache: npm
cache-dependency-path: ./package.json
node-version: 18

- name: πŸ“₯ Download deps
uses: bahmutov/npm-install@v1
with:
useLockFile: false
- name: πŸ“₯ Install deps
run: npm install

- name: ⚑ Run vitest
run: npm run test -- --coverage
Expand All @@ -84,91 +80,91 @@ jobs:
name: ⚫️ Cypress
runs-on: ubuntu-latest
steps:
- name: πŸ›‘ Cancel Previous Runs
uses: styfle/[email protected]

- name: ⬇️ Checkout repo
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: πŸ„ Copy test env vars
run: cp .env.example .env

- name: βŽ” Setup node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
cache: npm
cache-dependency-path: ./package.json
node-version: 18

- name: πŸ“₯ Download deps
uses: bahmutov/npm-install@v1
with:
useLockFile: false
- name: πŸ“₯ Install deps
run: npm install

- name: 🐳 Docker compose
# the sleep is just there to give time for postgres to get started
run: docker-compose up -d && sleep 3
run: docker compose -f docker-compose.ci.yml up -d && sleep 60
env:
DATABASE_URL: "postgresql://postgres:postgres@localhost:5432/postgres"

- name: πŸ›  Setup Database
run: npx prisma migrate reset --force
uses: nick-fields/[email protected]
with:
timeout_minutes: 10
max_attempts: 5
retry_wait_seconds: 45
retry_on: error
command: npm run drizzle:migrate

- name: βš™οΈ Build
run: npm run build

- name: 🌳 Cypress run
uses: cypress-io/github-action@v5
uses: cypress-io/github-action@v6
with:
start: npm run start:mocks
wait-on: "http://localhost:8811"
wait-on: http://localhost:8811
env:
PORT: "8811"
PORT: 8811

build:
name: 🐳 Build
# only build/deploy main branch on pushes
if: ${{ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') && github.event_name == 'push' }}
# if: ${{ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') && github.event_name == 'push' }}
runs-on: ubuntu-latest
steps:
- name: πŸ›‘ Cancel Previous Runs
uses: styfle/[email protected]

- name: ⬇️ Checkout repo
uses: actions/checkout@v3

- name: πŸ‘€ Read app name
uses: SebRollen/[email protected]
id: app_name
with:
file: "fly.toml"
field: "app"
uses: actions/checkout@v4

- name: 🐳 Set up Docker Buildx
uses: docker/setup-buildx-action@v2
uses: docker/setup-buildx-action@v3
with:
version: v0.9.1

# Setup cache
- name: ⚑️ Cache Docker layers
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ github.sha }}
restore-keys: |
${{ runner.os }}-buildx-
- name: πŸ”‘ Fly Registry Auth
uses: docker/login-action@v2
- name: πŸ“‹ Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/opensensemap/frontend

- name: πŸ”‘ GitHub Registry Auth
uses: docker/login-action@v3
with:
registry: registry.fly.io
username: x
password: ${{ secrets.FLY_API_TOKEN }}
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: 🐳 Docker build
uses: docker/build-push-action@v4
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: registry.fly.io/${{ steps.app_name.outputs.value }}:${{ github.ref_name }}-${{ github.sha }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
build-args: |
COMMIT_SHA=${{ github.sha }}
cache-from: type=local,src=/tmp/.buildx-cache
Expand All @@ -183,40 +179,3 @@ jobs:
run: |
rm -rf /tmp/.buildx-cache
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
deploy:
name: πŸš€ Deploy
runs-on: ubuntu-latest
needs: [lint, typecheck, vitest, cypress, build]
# only build/deploy main branch on pushes
if: ${{ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') && github.event_name == 'push' }}

steps:
- name: πŸ›‘ Cancel Previous Runs
uses: styfle/[email protected]

- name: ⬇️ Checkout repo
uses: actions/checkout@v3

- name: πŸ‘€ Read app name
uses: SebRollen/[email protected]
id: app_name
with:
file: "fly.toml"
field: "app"

- name: πŸš€ Deploy Staging
if: ${{ github.ref == 'refs/heads/dev' }}
uses: superfly/[email protected]
with:
args: "deploy --app ${{ steps.app_name.outputs.value }}-staging --image registry.fly.io/${{ steps.app_name.outputs.value }}:${{ github.ref_name }}-${{ github.sha }}"
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}

- name: πŸš€ Deploy Production
if: ${{ github.ref == 'refs/heads/main' }}
uses: superfly/[email protected]
with:
args: "deploy --image registry.fly.io/${{ steps.app_name.outputs.value }}:${{ github.ref_name }}-${{ github.sha }}"
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
19 changes: 19 additions & 0 deletions .github/workflows/purge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: πŸ—‘οΈ Purge untagged images
on:
schedule:
- cron: "0 0 * * *"

permissions:
packages: write

jobs:
purge_untagged_images:
runs-on: ubuntu-latest
steps:
- name: 🧹 Remove untagged images
uses: vlaurin/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
organization: ${{ github.repository_owner}}
container: ${{ github.event.repository.name }}
prune-untagged: true
Loading

0 comments on commit 78a95bb

Please sign in to comment.