orderly_case_management_operator_inbox 1.0.1+20260731.18
orderly_case_management_operator_inbox: ^1.0.1+20260731.18 copied to clipboard
Flutter overlay and GenUI components for Orderly Case Management operator inbox workflows.
Orderly Case Management Operator Inbox #
Flutter package for embedding the Case Management operator inbox as an overlay in operational apps such as Warehouse. The package also bundles the shared operator GenUI components and their backend catalog manifest.
CaseManagementOperatorInboxOverlay(
endpoint: Uri.parse('https://case-management.example.com'),
authTokenReader: () => warehouseAuth.currentToken(),
child: const WarehouseApp(),
)
The floating inbox button opens the inbox through a normal MaterialPageRoute.
If the overlay wraps a MaterialApp, give that app a navigatorKey so the
route can be pushed on the app navigator:
final navigatorKey = GlobalKey<NavigatorState>();
CaseManagementOperatorInboxOverlay(
endpoint: Uri.parse('https://case-management.example.com'),
authTokenReader: () => warehouseAuth.currentToken(),
child: MaterialApp(
navigatorKey: navigatorKey,
home: const WarehouseApp(),
),
)
Widgets under the overlay can reuse that connection configuration. For example, custom customer-contact buttons only need the case-specific entity data:
await OrderlyCustomerContactCaseButton.createCase(
context,
entity: currentObject.object,
accountId: currentObject.objectId.accountId,
);
For the common warehouse case where an object cannot be found, use the dedicated helper. It opens the same case dialog with a neutral lost-item context and leaves the next action to the customer service agent:
await OrderlyCustomerContactCaseButton.objectIsLost(
context,
deliveryObject: currentObject,
);
Explicit endpoint, authTokenReader, or backend arguments still override
the overlay configuration when a caller needs a separate connection.
The package sends the bearer token to Case Management over gRPC. Case filtering and role access are resolved server-side from the authenticated user id and Case Management role assignments.
The overlay renders shared operator GenUI components from this package by default. Case Management exposes the same package manifest to the agent, so ask_operator may emit those components as ClientComponent nodes without runtime component registration from the inbox.
Test app #
See ../orderly_operator_inbox_test_app for a standalone Flutter iOS app that logs in through Orderly Core AuthService with username/password and passes the returned token to this overlay.