Faris Armoush
c6b55cb28b
Sp 1594 device location api integration ( #216 )
...
<!--
Thanks for contributing!
Provide a description of your changes below and a general summary in the
title
Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->
## Jira Ticket
[SP-1594](https://syncrow.atlassian.net/browse/SP-1594 )
## Description
1. Implemented `Bloc` and `Services` to integrate the device location
into the side panel of the AQI Analytics module.
2. Fixed bugs in side panel caused by `Expanded` widgets.
## Type of Change
<!--- Put an `x` in all the boxes that apply: -->
- [x] ✨ New feature (non-breaking change which adds functionality)
- [x] 🛠️ Bug fix (non-breaking change which fixes an issue)
- [ ] ❌ Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] 🧹 Code refactor
- [ ] ✅ Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
[SP-1594]:
https://syncrow.atlassian.net/browse/SP-1594?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
2025-06-04 16:41:08 +03:00
Faris Armoush
bfd8e964f7
SP-1665-FE-Return-a-readable-error-when-a-connection-error-Exception-… ( #233 )
...
…occurs-on-the-charts.
<!--
Thanks for contributing!
Provide a description of your changes below and a general summary in the
title
Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->
## Jira Ticket
[SP-1665](https://syncrow.atlassian.net/browse/SP-1665 )
## Description
Returns a readable error when an analytics api fails.
## Type of Change
<!--- Put an `x` in all the boxes that apply: -->
- [x] ✨ New feature (non-breaking change which adds functionality)
- [ ] 🛠️ Bug fix (non-breaking change which fixes an issue)
- [ ] ❌ Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] 🧹 Code refactor
- [ ] ✅ Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
[SP-1665]:
https://syncrow.atlassian.net/browse/SP-1665?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
2025-06-04 16:40:25 +03:00
Faris Armoush
08725201d5
Dev ci/cd enhancements ( #234 )
...
<!--
Thanks for contributing!
Provide a description of your changes below and a general summary in the
title
Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->
## Description
Pulled CI/CD changes from `main` branch into `dev` branch.
## Type of Change
<!--- Put an `x` in all the boxes that apply: -->
- [ ] ✨ New feature (non-breaking change which adds functionality)
- [ ] 🛠️ Bug fix (non-breaking change which fixes an issue)
- [ ] ❌ Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] 🧹 Code refactor
- [ ] ✅ Build configuration change
- [ ] 📝 Documentation
- [x] 🗑️ Chore
2025-06-04 16:10:00 +03:00
Faris Armoush
7fe34c61b2
correctly fetch energy management data using spaceUuid. ( #235 )
...
<!--
Thanks for contributing!
Provide a description of your changes below and a general summary in the
title
Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->
## Jira Ticket
[SP-1495](https://syncrow.atlassian.net/browse/SP-1495 )
## Description
correctly fetch energy management data using `spaceUuid`.
## Type of Change
<!--- Put an `x` in all the boxes that apply: -->
- [x] 🛠️ Bug fix (non-breaking change which fixes an issue)
[SP-1495]:
https://syncrow.atlassian.net/browse/SP-1495?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
2025-06-04 16:09:10 +03:00
Faris Armoush
0c6e4fed80
correctly fetch energy management data using spaceUuid.
2025-06-04 15:09:40 +03:00
Faris Armoush
69c23525ba
Merge branch 'dev' of https://github.com/SyncrowIOT/web into SP-1665-FE-Return-a-readable-error-when-a-connection-error-Exception-occurs-on-the-charts
2025-06-04 14:49:48 +03:00
Faris Armoush
3e32968209
Update pull_request_template.md
2025-06-04 14:47:35 +03:00
Faris Armoush
beb5239c4f
enhanced ci/cd by not running the deply jobs on the PR itself, and now we only deploy when we merged a PR to dev or main, and created a separate GitHub action that only builds and install dependencies, which only runs on the PR itself.
2025-06-04 14:47:35 +03:00
Faris Armoush
3a98f71ff3
SP-1665-FE-Return-a-readable-error-when-a-connection-error-Exception-occurs-on-the-charts.
2025-06-04 14:42:41 +03:00
Faris Armoush
24a7f3ac2a
SP-1594-device-location-api-integration.
2025-06-04 13:06:27 +03:00
Faris Armoush
79b974ee6c
re-injected AirQualityDistributionBloc into AnalyticsPage.
2025-06-04 09:36:41 +03:00
Faris Armoush
651ac6785e
removed open weather api keys from .env files.
2025-06-04 09:32:56 +03:00
Faris Armoush
9fa59ce78b
Merge branch 'dev' of https://github.com/SyncrowIOT/web into SP-1594-device-location-api-integration
2025-06-04 09:29:49 +03:00
Faris Armoush
e2c44ba85f
injected the remote and reverse geocoder dependenies into DeviceLocationBloc.
2025-06-04 09:28:50 +03:00
Faris Armoush
1edeb664aa
Connected data coming from DeviceLocationBloc into the respective widgets.
2025-06-04 09:28:16 +03:00
Faris Armoush
25a55ad820
made GetDeviceLocationDataParam.toJson method have the correct keys for the API.
2025-06-04 09:27:46 +03:00
Faris Armoush
e48fc8b82c
loads and clears DeviceLocationBloc.
2025-06-04 09:27:21 +03:00
Faris Armoush
8d999f118c
Connected RemoteDeviceLocationService to the new BE API, instead of directly fetching the data from OpenWeather Api's.
2025-06-04 09:18:28 +03:00
Faris Armoush
bcb6e49a01
Deleted FakeDeviceLocationService class, since it is no longer needed.
2025-06-04 09:17:38 +03:00
Faris Armoush
8827f571f4
Merge pull request #229 from SyncrowIOT/SP-1658-The-Analytics-charts-padding-is-not-aligned-with-the-design
...
Sp 1658 the analytics charts padding is not aligned with the design
2025-06-03 16:51:05 +03:00
Faris Armoush
7472aff704
Merge pull request #228 from SyncrowIOT/SP-1671-energy-consumption-api-returns-a-sibling-space-data-instead-of-selected-space-on-analytics-page
...
SP-1671-energy-consumption-api-returns-a-sibling-space-data-instead-of-selected-space-on-analytics-page
2025-06-03 16:48:26 +03:00
Faris Armoush
575ba2aed2
Merge pull request #227 from SyncrowIOT/SP-1509-Attatch-SpaceUuid-To-Dropdown
...
SP-1509 attatch space uuid to analytics device dropdown on energy man…
2025-06-03 16:46:53 +03:00
Faris Armoush
eb708edc83
Merge pull request #226 from SyncrowIOT/SP-1510-show-date-on-bottom-titles-of-occupancy-chart
...
SP-1510-show date instead of index in occupancy chart.
2025-06-03 16:44:56 +03:00
Faris Armoush
e86c25c74a
includes min in all left titles charts.
2025-06-03 16:18:57 +03:00
Faris Armoush
c2c58e6a7a
SP-1658-the-analytics-chart-padding-is-not-aligned-with-the-design.
2025-06-03 16:17:14 +03:00
Faris Armoush
0135b6711e
removed getting energy management data using communityUuid.
2025-06-03 16:01:45 +03:00
Faris Armoush
46feb0ea28
SP-1509 attatch space uuid to analytics device dropdown on energy management tab.
2025-06-03 15:20:30 +03:00
Faris Armoush
710f316f8d
Merge pull request #223 from SyncrowIOT/SP-1600-FE-Single-Batch-Control-Migration
...
Sp 1600 fe single batch control migration
2025-06-03 12:27:10 +03:00
Faris Armoush
7cc46d464f
SP-1510-show date instead of index in occupancy chart.
2025-06-03 12:24:38 +03:00
Faris Armoush
0c82a19a1d
Merge pull request #218 from SyncrowIOT/SP-1593-FE-Create-Recommendation-Section-Based-on-AQI-Level-and-Ensure-Layout-Responsiveness
...
Sp 1593 fe create recommendation section based on aqi level and ensure layout responsiveness
2025-06-03 11:22:39 +03:00
Faris Armoush
d1df33b31e
Refactor WallSensorBloc to integrate new service dependencies and utilize a factory for instantiation. Enhanced event handling methods for improved error management and real-time status updates from Firebase, including optimized parsing logic for device status values.
2025-06-03 11:15:06 +03:00
Faris Armoush
6a36405530
Refactor TwoGangSwitchBloc to integrate new service dependencies and utilize a factory for instantiation. Enhanced event handling methods for improved error management and real-time status updates from Firebase, including parsing logic for device status values.
2025-06-03 10:48:01 +03:00
Faris Armoush
88a7607395
Refactor TwoGangGlassSwitchBloc to integrate new service dependencies and utilize a factory for instantiation. Enhanced event handling methods for improved error management and state updates, including real-time status listening from Firebase.
2025-06-03 10:33:33 +03:00
Faris Armoush
f58ddf76da
Refactor LivingRoomBloc to integrate new service dependencies and utilize a factory for instantiation. Enhanced event handling methods for improved error management and state updates, including real-time status listening from Firebase.
2025-06-03 10:19:10 +03:00
Faris Armoush
a71a66034c
Refactor ThreeGangGlassSwitchBloc to integrate new service dependencies and utilize a factory for instantiation. Enhanced event handling methods for improved error management and state updates.
2025-06-03 09:49:26 +03:00
Faris Armoush
b06a23cc60
Refactor WallLightSwitchBloc to integrate new service dependencies and utilize a factory for instantiation. Improved event handling methods for better error management and state updates.
2025-06-02 16:40:13 +03:00
Faris Armoush
5595bb7f25
Refactor OneGangGlassSwitchBloc to utilize new service dependencies and implement a factory for instantiation. Enhanced event handling methods for improved error management and state updates.
2025-06-02 16:35:55 +03:00
Faris Armoush
8e11749ed7
Prepared for aqi distribution API Integration.
2025-06-02 16:13:58 +03:00
Faris Armoush
7bc9079212
reverted a comment.
2025-06-02 14:30:07 +03:00
Faris Armoush
97801872e0
Implemented an initial remote implementation of RangeOfAqiService.
2025-06-02 14:29:04 +03:00
Faris Armoush
fa9210f387
added fromJson factory methods to RangeOfAqi, and to RangeOfAqiValue data models.
2025-06-02 14:28:50 +03:00
Faris Armoush
57b6f01177
SP-1593 Implemented the agreed upon api contract.
2025-06-02 14:26:47 +03:00
Faris Armoush
77d39bfc53
Refactor CurtainBloc to use new service dependencies and implement a factory for instantiation. Updated event handling methods for improved error management and state updates.
2025-06-02 11:26:30 +03:00
Faris Armoush
3bd2bd114b
migrate CeilingSensorBloc to use the new services.
2025-06-02 11:13:56 +03:00
Faris Armoush
f98636a2e5
Migrated AcBloc single/batch controls the new services.
2025-06-02 10:44:43 +03:00
Faris Armoush
19548e99ab
indentation and formatting of WaterHeaterBloc.
2025-06-02 10:20:05 +03:00
Faris Armoush
b60c674496
Created a factory for the WaterHeaterBloc, and injected the necessary dependenices.
2025-06-02 10:12:53 +03:00
Faris Armoush
6f3dfb607e
Extracted single/batch control services creation into a factory for ease of reusablility for the sake of this migration.
2025-06-02 10:11:23 +03:00
Faris Armoush
62dabf1ce2
Made values in DeviceControlDialog selectable for a better UX.
2025-06-02 10:10:50 +03:00
Faris Armoush
f07dbad1ea
Merge pull request #220 from SyncrowIOT/SP-1664-FE-Sider-bar-tree-behavior-issues-on-Analytics-page
...
Sp 1664 fe sider bar tree behavior issues on analytics page
2025-06-01 16:45:19 +03:00
Faris Armoush
15ea1b4c5a
Merge pull request #221 from SyncrowIOT/enable-hot-reload
...
enable hot reload on web.
2025-06-01 16:00:46 +03:00
Faris Armoush
17f6985dbf
enable hot reload on web.
2025-06-01 15:59:29 +03:00
Faris Armoush
393a5361f0
Apply correct business logic in AirQualityDataLoadingStrategy.
2025-06-01 15:40:12 +03:00
Faris Armoush
a56e93d0d7
removed the interface method onSelectChildSpace, because all the clients dont use it and instead pass the onSpaceSelected, which isn't a good design.
2025-06-01 15:38:14 +03:00
Faris Armoush
94847fa936
SP-1664-Fe-Sider-bar-tree-behavior-issues-on-Analytics-page.
2025-06-01 15:36:52 +03:00
Faris Armoush
b0ed844893
made events and state class finals, to better document that they shouldn't be extended.
2025-06-01 14:37:22 +03:00
Faris Armoush
066f967cd1
shows tooltip with data.
2025-06-01 14:28:40 +03:00
Faris Armoush
e28f3c3c03
reduced bar width size.
2025-06-01 14:28:40 +03:00
Faris Armoush
2be15e648a
added loading widget to AqiDistributionChartTitle.
2025-06-01 14:28:40 +03:00
Faris Armoush
2e12d73151
randomize generated fake data in FakeAirQualityDistributionService.
2025-06-01 14:28:40 +03:00
Faris Armoush
c50ed693ae
loads and clears aqi distribution in FetchAirQualityDataHelper.
2025-06-01 14:28:40 +03:00
Faris Armoush
8dc7d2b3d0
Connected AirQualityDistributionBloc into AqiDistributionChartBox.
2025-06-01 14:28:40 +03:00
Faris Armoush
accafb150e
.
2025-06-01 14:24:07 +03:00
Faris Armoush
736e0c3d9c
Injected AirQualityDistributionBloc into AnalyticsPage.
2025-06-01 14:23:14 +03:00
Faris Armoush
455d9c1f01
Created AirQualityDistributionBloc.
2025-06-01 14:22:25 +03:00
Faris Armoush
4479ed04b7
Created a AirQualityDistributionService along with its fake implementation.
2025-06-01 14:22:25 +03:00
Faris Armoush
286dea3f51
created a GetAirQualityDistributionParam.
2025-06-01 14:22:25 +03:00
Faris Armoush
44c4648941
made the first element of the bar rods to have only a top sides radius to match the design.
2025-06-01 14:22:25 +03:00
Faris Armoush
ca1feb9600
made charts based on states and not based on metrics.
2025-06-01 14:22:25 +03:00
Faris Armoush
7b31914e1c
made progress towards aqi distribution chart.
2025-06-01 14:22:25 +03:00
Faris Armoush
10f35d3747
added more mock data to AqiDistributionChart.
2025-06-01 14:22:25 +03:00
Faris Armoush
1998a629b6
added some opacity to metric colors.
2025-06-01 14:22:25 +03:00
Faris Armoush
5940e52826
Implemented an initial version of AqiDistributionChart.
2025-06-01 14:22:25 +03:00
Faris Armoush
7c55e8bbf9
Prepared widgets for the aqi distribution chart.
2025-06-01 14:22:25 +03:00
Faris Armoush
3d183528c5
Fixed thrown exceptions because of Expanded widgets.
2025-06-01 10:57:49 +03:00
Faris Armoush
2c4da63266
Injected DeviceLocationBloc into AnalyticsPage.
2025-06-01 10:50:51 +03:00
Faris Armoush
4ebe65f820
Merge branch 'dev' of https://github.com/SyncrowIOT/web into SP-1594-device-location-api-integration
2025-06-01 09:51:32 +03:00
Faris Armoush
5654d66b60
Created a remote implementation for DeviceLocationService.
2025-06-01 09:51:08 +03:00
Faris Armoush
b6879035f0
Implemented geocoding functionality to retrieve and manage device location data using the newly added geocoding package.
2025-05-29 15:47:34 +03:00
Faris Armoush
8ad048e18d
Added geocoding: ^4.0.0 package.
2025-05-29 15:47:24 +03:00
Faris Armoush
d92b699a2b
Created a bloc for loading and managing the state of device location data.
2025-05-29 15:40:44 +03:00
Faris Armoush
6ffb677c33
Created an interface and its fake implementation for loading device location data.
2025-05-29 15:40:15 +03:00
Faris Armoush
e7476a084d
Created a model class for loading device location data.
2025-05-29 15:39:51 +03:00
Faris Armoush
511acc186f
Created a param class for loading device location data.
2025-05-29 15:39:44 +03:00
Faris Armoush
cde79fc168
Merge pull request #212 from SyncrowIOT/SP-1594-FE-Implement-Real-Time-AQI-Data-Panel-for-Selected-Sensor
...
Sp 1594 fe implement real time aqi data panel for selected sensor
2025-05-29 15:27:08 +03:00
Faris Armoush
283a0dd536
Updated AqiSubValueWidget to use minimum value for range calculations, improving accuracy in AQI range display.
2025-05-29 14:59:03 +03:00
Faris Armoush
5636fbe6c9
sorted constructor dependencies.
2025-05-29 14:57:26 +03:00
Faris Armoush
3d4c17214c
Refactored AqiGauge to consolidate status text and color logic into a single method, improving code readability and maintainability.
2025-05-29 14:56:56 +03:00
Faris Armoush
b95f4063d9
removed unused widget.
2025-05-29 14:54:53 +03:00
Faris Armoush
bc289a0ddf
removed testing code.
2025-05-29 14:45:03 +03:00
Faris Armoush
d9448d9709
Merge pull request #209 from SyncrowIOT/SP-1546-FE-Garage-door-opener-Countdown-counter-is-throwing-Device-not-found-error
...
Refactor event handling in GarageDoorBloc to use local variable for d…
2025-05-29 14:39:40 +03:00
Faris Armoush
7bd0c061d4
enhanced design of AqiLocation.
2025-05-29 13:29:52 +03:00
Faris Armoush
36ddebb5ae
Implemented new gauge design.
2025-05-29 13:28:44 +03:00
Faris Armoush
43cb985e74
finished integrating realtime data.
2025-05-29 13:05:49 +03:00
Faris Armoush
94b4aa7c46
Extracted big widgets into smaller ones, and integrated aqi device info with RealtimeChangesBloc.
2025-05-29 11:26:21 +03:00
Faris Armoush
3d133581ff
Implemented and used a reusable widget for analytics sidebars headers.
2025-05-29 09:59:27 +03:00
Faris Armoush
a75e6a89a9
Enhanced responsiveness of AqiLocationInfoCell.
2025-05-29 09:24:29 +03:00
Faris Armoush
cc5f107ccb
Extracted AqiHumidityAndTemperature into its own widget and file.
2025-05-28 16:55:36 +03:00
Faris Armoush
79c5fe1651
add icons for side bar info (humidity and tempreture).
2025-05-28 16:13:23 +03:00
Faris Armoush
fd186a00fd
add shadow to pointer to match the design.
2025-05-28 15:41:18 +03:00