Skip to content

[Customer Portal Micro App] Integrate Backend APIs and Refine UI - #403

Merged
v15a1 merged 126 commits into
wso2-open-operations:customer-portal-milestone-1from
lithika-damnod:feature/backend-integration
Apr 23, 2026
Merged

v15a1 merged 126 commits into
wso2-open-operations:customer-portal-milestone-1from
lithika-damnod:feature/backend-integration

Conversation

@lithika-damnod

@lithika-damnod lithika-damnod commented Mar 23, 2026

Copy link
Copy Markdown
Contributor

This PR integrates backend APIs across all major modules and introduces UI improvements including loading states, infinite scrolling, form validation, and enriched detail views.

Summary by CodeRabbit

  • New Features

    • Live backend data everywhere (replacing mocks)
    • AI-assisted case classification during case creation
    • Profile update page for phone/timezone
    • WebSocket-driven chat with streaming assistant and FAB for quick actions
    • Infinite scrolling for lists (cases, chats, changes, service requests)
  • Improvements

    • Better loading UX with skeletons and fallbacks
    • Safe-area & responsive layout support for notched devices
    • Global snackbar notifications and error boundaries
    • Enhanced form validation and submission feedback

…e flow

- add project features API and wire into ProjectContext/Provider
- enable feature-based UI rendering (tabs, stats, widgets, access control)
- implement case edit mutation with menu actions (resolve, waiting, create related)
- add "create related case" flow with prefilled and locked fields
- include projectTypeId in case classification requests

ui:
- add MoreOptionsButton and integrate into case detail header
- extend StickyCommentBar with bottomSlot support
- add disabled prop to TextField
- simplify ProjectCard layout
- normalize RichText spacing (remove default margins)

fix:
- enforce non-null status in case DTO/model and update mappings
- ensure stable keys and correct ordering in chat messages
- handle project features loading state in MeProvider

refactor:
- propagate projectTypeId through context and usage
- clean up unused constants and update constants file to tsx

chore:
- add PROJECT_FEATURES_ENDPOINT and update websocket version to v1.3
@lithika-damnod
lithika-damnod force-pushed the feature/backend-integration branch from 4c26c73 to 71512c1 Compare April 23, 2026 06:06
<Typography sx={(theme) => ({ fontSize: theme.typography.pxToRem(13) })} color="text.secondary">
{description}
<Typography variant="body1" color="text.primary" noWrap>
{(type === "case" ||

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Better to use a switch case here i assume. You can work on that later

@@ -0,0 +1,57 @@
import { Box } from "@wso2/oxygen-ui";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add the licence header in the next PR

@@ -0,0 +1,9 @@
import type { CasesFiltersDto } from "@root/src/types";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing Licence headers

@@ -0,0 +1,3 @@
export * from "./FiltersContext";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto

@v15a1 v15a1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks okay to me. Work on the comments later

@v15a1
v15a1 merged commit ddc2443 into wso2-open-operations:customer-portal-milestone-1 Apr 23, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants